diff --git a/bdk-ffi/src/bdk.udl b/bdk-ffi/src/bdk.udl index 3dc9ec10..9c224e3e 100644 --- a/bdk-ffi/src/bdk.udl +++ b/bdk-ffi/src/bdk.udl @@ -390,6 +390,8 @@ interface Wallet { sequence reveal_addresses_to(KeychainKind keychain, u32 index); + sequence list_unused_addresses(KeychainKind keychain); + Network network(); Balance balance(); diff --git a/bdk-ffi/src/wallet.rs b/bdk-ffi/src/wallet.rs index c02c2254..e667c39c 100644 --- a/bdk-ffi/src/wallet.rs +++ b/bdk-ffi/src/wallet.rs @@ -99,6 +99,13 @@ impl Wallet { .collect() } + pub fn list_unused_addresses(&self, keychain: KeychainKind) -> Vec { + self.get_wallet() + .list_unused_addresses(keychain) + .map(|address_info| address_info.into()) + .collect() + } + pub fn apply_update(&self, update: Arc) -> Result<(), CannotConnectError> { self.get_wallet() .apply_update(update.0.clone())