@@ -1749,16 +1749,55 @@ pub struct DecodePsbtResultInput {
1749
1749
pub sha256_preimages : Option < HashMap < String , String > > ,
1750
1750
pub hash160_preimages : Option < HashMap < String , String > > ,
1751
1751
pub hash256_preimages : Option < HashMap < String , String > > ,
1752
+ pub taproot_key_path_sig : Option < Vec < u8 > > ,
1753
+ pub taproot_script_path_sigs : Option < Vec < DecodePsbtResultTaprootScriptPathSig > > ,
1754
+ pub taproot_scripts : Option < Vec < DecodePsbtResultTaprootScript > > ,
1755
+ pub taproot_bip32_derivs : Option < DecodePsbtResultTaprootBip32Derivs > ,
1756
+ pub taproot_internal_key : Option < String > ,
1757
+ pub taproot_merkle_root : Option < String > ,
1752
1758
pub unknown : Option < HashMap < String , Vec < u8 > > > ,
1753
1759
#[ serde( default ) ]
1754
1760
pub proprietary : Vec < DecodePsbtResultProprietary > ,
1755
1761
}
1756
1762
1763
+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1764
+ pub struct DecodePsbtResultTaprootScriptPathSig {
1765
+ pub pubkey : String ,
1766
+ pub leaf_hash : String ,
1767
+ pub sig : String ,
1768
+ }
1769
+
1770
+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1771
+ pub struct DecodePsbtResultTaprootScript {
1772
+ #[ serde( with = "crate::serde_hex" ) ]
1773
+ pub script : Vec < u8 > ,
1774
+ pub leaf_ver : u32 ,
1775
+ pub control_blocks : Vec < Vec < u8 > > ,
1776
+ }
1777
+
1778
+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1779
+ pub struct DecodePsbtResultTaprootTree {
1780
+ pub depth : u32 ,
1781
+ pub leaf_ver : u32 ,
1782
+ pub script : String ,
1783
+ }
1784
+
1785
+ #[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1786
+ pub struct DecodePsbtResultTaprootBip32Derivs {
1787
+ pub pubkey : String ,
1788
+ pub master_fingerprint : String ,
1789
+ pub path : String ,
1790
+ pub leaf_hashes : Vec < String > ,
1791
+ }
1792
+
1757
1793
#[ derive( Clone , PartialEq , Eq , Debug , Deserialize , Serialize ) ]
1758
1794
pub struct DecodePsbtResultOutput {
1759
1795
pub redeem_script : Option < DecodePsbtResultScript > ,
1760
1796
pub witness_script : Option < DecodePsbtResultScript > ,
1761
1797
pub bip32_derivs : Option < Vec < DecodePsbtResultBip32Derivs > > ,
1798
+ pub taproot_internal_key : Option < Vec < u8 > > ,
1799
+ pub taproot_tree : Option < Vec < DecodePsbtResultTaprootTree > > ,
1800
+ pub taproot_bip32_derivs : Option < DecodePsbtResultTaprootBip32Derivs > ,
1762
1801
pub unknown : Option < HashMap < String , Vec < u8 > > > ,
1763
1802
#[ serde( default ) ]
1764
1803
pub proprietary : Vec < DecodePsbtResultProprietary > ,
0 commit comments