@@ -1783,16 +1783,55 @@ pub struct DecodePsbtResultInput {
17831783 pub sha256_preimages : Option < HashMap < String , String > > ,
17841784 pub hash160_preimages : Option < HashMap < String , String > > ,
17851785 pub hash256_preimages : Option < HashMap < String , String > > ,
1786+ pub taproot_key_path_sig : Option < Vec < u8 > > ,
1787+ pub taproot_script_path_sigs : Option < Vec < DecodePsbtResultTaprootScriptPathSig > > ,
1788+ pub taproot_scripts : Option < Vec < DecodePsbtResultTaprootScript > > ,
1789+ pub taproot_bip32_derivs : Option < DecodePsbtResultTaprootBip32Derivs > ,
1790+ pub taproot_internal_key : Option < String > ,
1791+ pub taproot_merkle_root : Option < String > ,
17861792 pub unknown : Option < HashMap < String , Vec < u8 > > > ,
17871793 #[ serde( default ) ]
17881794 pub proprietary : Vec < DecodePsbtResultProprietary > ,
17891795}
17901796
1797+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1798+ pub struct DecodePsbtResultTaprootScriptPathSig {
1799+ pub pubkey : String ,
1800+ pub leaf_hash : String ,
1801+ pub sig : String ,
1802+ }
1803+
1804+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1805+ pub struct DecodePsbtResultTaprootScript {
1806+ #[ serde( with = "crate::serde_hex" ) ]
1807+ pub script : Vec < u8 > ,
1808+ pub leaf_ver : u32 ,
1809+ pub control_blocks : Vec < Vec < u8 > > ,
1810+ }
1811+
1812+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1813+ pub struct DecodePsbtResultTaprootTree {
1814+ pub depth : u32 ,
1815+ pub leaf_ver : u32 ,
1816+ pub script : String ,
1817+ }
1818+
1819+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1820+ pub struct DecodePsbtResultTaprootBip32Derivs {
1821+ pub pubkey : String ,
1822+ pub master_fingerprint : String ,
1823+ pub path : String ,
1824+ pub leaf_hashes : Vec < String > ,
1825+ }
1826+
17911827#[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
17921828pub struct DecodePsbtResultOutput {
17931829 pub redeem_script : Option < DecodePsbtResultScript > ,
17941830 pub witness_script : Option < DecodePsbtResultScript > ,
17951831 pub bip32_derivs : Option < Vec < DecodePsbtResultBip32Derivs > > ,
1832+ pub taproot_internal_key : Option < Vec < u8 > > ,
1833+ pub taproot_tree : Option < Vec < DecodePsbtResultTaprootTree > > ,
1834+ pub taproot_bip32_derivs : Option < DecodePsbtResultTaprootBip32Derivs > ,
17961835 pub unknown : Option < HashMap < String , Vec < u8 > > > ,
17971836 #[ serde( default ) ]
17981837 pub proprietary : Vec < DecodePsbtResultProprietary > ,
0 commit comments