diff --git a/bdk-ffi/src/bdk.udl b/bdk-ffi/src/bdk.udl index e10d911..6a31dea 100644 --- a/bdk-ffi/src/bdk.udl +++ b/bdk-ffi/src/bdk.udl @@ -221,28 +221,31 @@ interface Wallet { [Throws=BdkError] constructor(Descriptor descriptor, Descriptor? change_descriptor, Network network, DatabaseConfig database_config); + Network network(); + [Throws=BdkError] AddressInfo get_address(AddressIndex address_index); [Throws=BdkError] AddressInfo get_internal_address(AddressIndex address_index); + [Throws=BdkError] + boolean is_mine(Script script); + + [Throws=BdkError] + sequence list_unspent(); + + [Throws=BdkError] + sequence list_transactions(boolean include_raw); + [Throws=BdkError] Balance get_balance(); [Throws=BdkError] boolean sign([ByRef] PartiallySignedTransaction psbt, SignOptions? sign_options); - [Throws=BdkError] - sequence list_transactions(boolean include_raw); - - Network network(); - [Throws=BdkError] void sync([ByRef] Blockchain blockchain, Progress? progress); - - [Throws=BdkError] - sequence list_unspent(); }; interface FeeRate { diff --git a/bdk-ffi/src/wallet.rs b/bdk-ffi/src/wallet.rs index a973b71..21bbe5f 100644 --- a/bdk-ffi/src/wallet.rs +++ b/bdk-ffi/src/wallet.rs @@ -65,6 +65,11 @@ impl Wallet { self.get_wallet().network() } + /// Return whether or not a script is part of this wallet (either internal or external). + pub(crate) fn is_mine(&self, script: Arc