From: github-actions Date: Tue, 15 Dec 2020 13:36:12 +0000 (+0000) Subject: Publish autogenerated nightly docs X-Git-Url: http://internal-gitweb-vhost/script/%22https:/struct.DecoderReader.html?a=commitdiff_plain;h=c3dd95feb42e1f3c9c4f6ee024d502f87f4add58;p=bitcoindevkit.org Publish autogenerated nightly docs --- diff --git a/static/docs-rs/bdk/nightly/latest/bdk/all.html b/static/docs-rs/bdk/nightly/latest/bdk/all.html index 876d6c3588..d6f372a430 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/all.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/all.html @@ -3,4 +3,4 @@

[] - List of all items

Structs

Enums

Traits

Macros

Functions

Typedefs

Constants

\ No newline at end of file + List of all items

Structs

Enums

Traits

Macros

Functions

Typedefs

Constants

\ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html b/static/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html index 38dd5e9e21..44893b7cf7 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/blockchain/compact_filters/enum.CompactFiltersError.html @@ -1,7 +1,7 @@ bdk::blockchain::compact_filters::CompactFiltersError - Rust

[][src]Enum bdk::blockchain::compact_filters::CompactFiltersError

pub enum CompactFiltersError {
+                Change settings

[][src]Enum bdk::blockchain::compact_filters::CompactFiltersError

pub enum CompactFiltersError {
     InvalidResponse,
     InvalidHeaders,
     InvalidFilterHeader,
@@ -33,18 +33,18 @@
 
BIP158(Error)

Invalid BIP158 filter

Internal system time error

Global(Box<Error>)

Wrapper for crate::error::Error

-

Trait Implementations

impl Debug for CompactFiltersError[src]

impl Display for CompactFiltersError[src]

impl Error for CompactFiltersError[src]

Trait Implementations

impl Debug for CompactFiltersError[src]

impl Display for CompactFiltersError[src]

impl Error for CompactFiltersError[src]

impl From<CompactFiltersError> for Error[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<SystemTimeError> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<Error> for CompactFiltersError[src]

impl From<SystemTimeError> for CompactFiltersError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

Loading content...

Implementors

impl ConfigurableBlockchain for AnyBlockchain[src]

type Config = AnyBlockchainConfig

impl ConfigurableBlockchain for CompactFiltersBlockchain[src]

This is supported on crate feature compact_filters only.

impl ConfigurableBlockchain for ElectrumBlockchain[src]

This is supported on crate feature electrum only.

type Config = ElectrumBlockchainConfig

impl ConfigurableBlockchain for EsploraBlockchain[src]

This is supported on crate feature esplora only.

type Config = EsploraBlockchainConfig

Loading content...
\ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/bdk/database/any/enum.AnyBatch.html b/static/docs-rs/bdk/nightly/latest/bdk/database/any/enum.AnyBatch.html index 653ade645e..ad3bf5b608 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/database/any/enum.AnyBatch.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/database/any/enum.AnyBatch.html @@ -7,18 +7,18 @@ }

Type that contains any of the BatchDatabase::Batch types defined by the library

Variants

-
Sled(<Tree as BatchDatabase>::Batch)
This is supported on crate feature key-value-db only.

Trait Implementations

impl BatchOperations for AnyBatch[src]

\ No newline at end of file +Loading content...

Implementations on Foreign Types

impl ConfigurableDatabase for Tree[src]

type Config = SledDbConfiguration

Loading content...

Implementors

impl ConfigurableDatabase for AnyDatabase[src]

type Config = AnyDatabaseConfig

impl ConfigurableDatabase for MemoryDatabase[src]

type Config = ()

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/bdk/database/trait.Database.html b/static/docs-rs/bdk/nightly/latest/bdk/database/trait.Database.html index 6fabd84436..de580e1217 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/database/trait.Database.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/database/trait.Database.html @@ -2,34 +2,34 @@

[][src]Trait bdk::database::Database

pub trait Database: BatchOperations {
-    pub fn check_descriptor_checksum<B: AsRef<[u8]>>(
        &mut self,
        script_type: ScriptType,
        bytes: B
    ) -> Result<(), Error>; -
pub fn iter_script_pubkeys(
        &self,
        script_type: Option<ScriptType>
    ) -> Result<Vec<Script>, Error>; + pub fn check_descriptor_checksum<B: AsRef<[u8]>>(
        &mut self,
        keychain: KeychainKind,
        bytes: B
    ) -> Result<(), Error>; +
pub fn iter_script_pubkeys(
        &self,
        keychain: Option<KeychainKind>
    ) -> Result<Vec<Script>, Error>;
pub fn iter_utxos(&self) -> Result<Vec<UTXO>, Error>;
pub fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>;
pub fn iter_txs(
        &self,
        include_raw: bool
    ) -> Result<Vec<TransactionDetails>, Error>; -
pub fn get_script_pubkey_from_path(
        &self,
        script_type: ScriptType,
        child: u32
    ) -> Result<Option<Script>, Error>; -
pub fn get_path_from_script_pubkey(
        &self,
        script: &Script
    ) -> Result<Option<(ScriptType, u32)>, Error>; +
pub fn get_script_pubkey_from_path(
        &self,
        keychain: KeychainKind,
        child: u32
    ) -> Result<Option<Script>, Error>; +
pub fn get_path_from_script_pubkey(
        &self,
        script: &Script
    ) -> Result<Option<(KeychainKind, u32)>, Error>;
pub fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>;
pub fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>;
pub fn get_tx(
        &self,
        txid: &Txid,
        include_raw: bool
    ) -> Result<Option<TransactionDetails>, Error>; -
pub fn get_last_index(
        &self,
        script_type: ScriptType
    ) -> Result<Option<u32>, Error>; -
pub fn increment_last_index(
        &mut self,
        script_type: ScriptType
    ) -> Result<u32, Error>; +
pub fn get_last_index(
        &self,
        keychain: KeychainKind
    ) -> Result<Option<u32>, Error>; +
pub fn increment_last_index(
        &mut self,
        keychain: KeychainKind
    ) -> Result<u32, Error>; }

Trait for reading data from a database

This traits defines the operations that can be used to read data out of a database

-

Required methods

pub fn check_descriptor_checksum<B: AsRef<[u8]>>(
    &mut self,
    script_type: ScriptType,
    bytes: B
) -> Result<(), Error>
[src]

Read and checks the descriptor checksum for a given script type

+

Required methods

pub fn check_descriptor_checksum<B: AsRef<[u8]>>(
    &mut self,
    keychain: KeychainKind,
    bytes: B
) -> Result<(), Error>
[src]

Read and checks the descriptor checksum for a given keychain.

Should return Error::ChecksumMismatch if the checksum doesn't match. If there's no checksum in the database, simply store it for the next time.

-

pub fn iter_script_pubkeys(
    &self,
    script_type: Option<ScriptType>
) -> Result<Vec<Script>, Error>
[src]

Return the list of script_pubkeys

+

pub fn iter_script_pubkeys(
    &self,
    keychain: Option<KeychainKind>
) -> Result<Vec<Script>, Error>
[src]

Return the list of script_pubkeys

pub fn iter_utxos(&self) -> Result<Vec<UTXO>, Error>[src]

Return the list of UTXOs

pub fn iter_raw_txs(&self) -> Result<Vec<Transaction>, Error>[src]

Return the list of raw transactions

pub fn iter_txs(
    &self,
    include_raw: bool
) -> Result<Vec<TransactionDetails>, Error>
[src]

Return the list of transactions metadata

-

pub fn get_script_pubkey_from_path(
    &self,
    script_type: ScriptType,
    child: u32
) -> Result<Option<Script>, Error>
[src]

Fetch a script_pubkey given the script type and child number

-

pub fn get_path_from_script_pubkey(
    &self,
    script: &Script
) -> Result<Option<(ScriptType, u32)>, Error>
[src]

Fetch the script type and child number of a given script_pubkey

+

pub fn get_script_pubkey_from_path(
    &self,
    keychain: KeychainKind,
    child: u32
) -> Result<Option<Script>, Error>
[src]

Fetch a script_pubkey given the child number of a keychain.

+

pub fn get_path_from_script_pubkey(
    &self,
    script: &Script
) -> Result<Option<(KeychainKind, u32)>, Error>
[src]

Fetch the keychain and child number of a given script_pubkey

pub fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>[src]

Fetch a UTXO given its [OutPoint]

pub fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>[src]

Fetch a raw transaction given its [Txid]

pub fn get_tx(
    &self,
    txid: &Txid,
    include_raw: bool
) -> Result<Option<TransactionDetails>, Error>
[src]

Fetch the transaction metadata and optionally also the raw transaction

-

pub fn get_last_index(
    &self,
    script_type: ScriptType
) -> Result<Option<u32>, Error>
[src]

Return the last defivation index for a script type

-

pub fn increment_last_index(
    &mut self,
    script_type: ScriptType
) -> Result<u32, Error>
[src]

Increment the last derivation index for a script type and returns it

+

pub fn get_last_index(
    &self,
    keychain: KeychainKind
) -> Result<Option<u32>, Error>
[src]

Return the last defivation index for a keychain.

+

pub fn increment_last_index(
    &mut self,
    keychain: KeychainKind
) -> Result<u32, Error>
[src]

Increment the last derivation index for a keychain and return it

It should insert and return 0 if not present in the database

-
Loading content...

Implementations on Foreign Types

impl Database for Tree[src]

Loading content...

Implementors

impl Database for AnyDatabase[src]

impl Database for MemoryDatabase[src]

Loading content...
\ No newline at end of file +Loading content...

Implementations on Foreign Types

impl Database for Tree[src]

Loading content...

Implementors

impl Database for AnyDatabase[src]

impl Database for MemoryDatabase[src]

Loading content... \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/bdk/descriptor/template/struct.BIP44.html b/static/docs-rs/bdk/nightly/latest/bdk/descriptor/template/struct.BIP44.html index 64c68c0b78..47e5b202f9 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/descriptor/template/struct.BIP44.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/descriptor/template/struct.BIP44.html @@ -1,7 +1,7 @@ bdk::descriptor::template::BIP44 - Rust

[][src]Struct bdk::descriptor::template::BIP44

pub struct BIP44<K: DerivableKey<Legacy>>(pub K, pub ScriptType);

BIP44 template. Expands to pkh(key/44'/0'/0'/{0,1}/*)

+ Change settings

[][src]Struct bdk::descriptor::template::BIP44

pub struct BIP44<K: DerivableKey<Legacy>>(pub K, pub KeychainKind);

BIP44 template. Expands to pkh(key/44'/0'/0'/{0,1}/*)

Since there are hardened derivation steps, this template requires a private derivable key (generally a xprv/tprv).

See BIP44Public for a template that can work with a xpub/tpub.

Example

@@ -10,14 +10,14 @@ let key = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPeZRHk4rTG6orPS2CRNFX3njhUXx5vj9qGog5ZMH4uGReDWN5kCkY3jmWEtWause41CDvBRXD1shKknAMKxT99o9qUTRVC6m")?; let wallet: OfflineWallet<_> = Wallet::new_offline( - BIP44(key.clone(), ScriptType::External), - Some(BIP44(key, ScriptType::Internal)), + BIP44(key.clone(), KeychainKind::External), + Some(BIP44(key, KeychainKind::Internal)), Network::Testnet, MemoryDatabase::default() )?; assert_eq!(wallet.get_new_address()?.to_string(), "miNG7dJTzJqNbFS19svRdTCisC65dsubtR"); -assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "pkh([c55b303f/44'/0'/0']tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU/0/*)");
+assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "pkh([c55b303f/44'/0'/0']tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU/0/*)");

Trait Implementations

impl<K: DerivableKey<Legacy>> DescriptorTemplate for BIP44<K>[src]

Auto Trait Implementations

impl<K> RefUnwindSafe for BIP44<K> where
    K: RefUnwindSafe
[src]

impl<K> Send for BIP44<K> where
    K: Send
[src]

impl<K> Sync for BIP44<K> where
    K: Sync
[src]

impl<K> Unpin for BIP44<K> where
    K: Unpin
[src]

impl<K> UnwindSafe for BIP44<K> where
    K: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

Trait Implementations

impl<K: DerivableKey<Legacy>> DescriptorTemplate for BIP44Public<K>[src]

Auto Trait Implementations

impl<K> RefUnwindSafe for BIP44Public<K> where
    K: RefUnwindSafe
[src]

impl<K> Send for BIP44Public<K> where
    K: Send
[src]

impl<K> Sync for BIP44Public<K> where
    K: Sync
[src]

impl<K> Unpin for BIP44Public<K> where
    K: Unpin
[src]

impl<K> UnwindSafe for BIP44Public<K> where
    K: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

Trait Implementations

impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP49<K>[src]

Auto Trait Implementations

impl<K> RefUnwindSafe for BIP49<K> where
    K: RefUnwindSafe
[src]

impl<K> Send for BIP49<K> where
    K: Send
[src]

impl<K> Sync for BIP49<K> where
    K: Sync
[src]

impl<K> Unpin for BIP49<K> where
    K: Unpin
[src]

impl<K> UnwindSafe for BIP49<K> where
    K: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

Trait Implementations

impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP49Public<K>[src]

Auto Trait Implementations

impl<K> RefUnwindSafe for BIP49Public<K> where
    K: RefUnwindSafe
[src]

impl<K> Send for BIP49Public<K> where
    K: Send
[src]

impl<K> Sync for BIP49Public<K> where
    K: Sync
[src]

impl<K> Unpin for BIP49Public<K> where
    K: Unpin
[src]

impl<K> UnwindSafe for BIP49Public<K> where
    K: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

Trait Implementations

impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP84<K>[src]

Auto Trait Implementations

impl<K> RefUnwindSafe for BIP84<K> where
    K: RefUnwindSafe
[src]

impl<K> Send for BIP84<K> where
    K: Send
[src]

impl<K> Sync for BIP84<K> where
    K: Sync
[src]

impl<K> Unpin for BIP84<K> where
    K: Unpin
[src]

impl<K> UnwindSafe for BIP84<K> where
    K: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

Trait Implementations

impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP84Public<K>[src]

Auto Trait Implementations

impl<K> RefUnwindSafe for BIP84Public<K> where
    K: RefUnwindSafe
[src]

impl<K> Send for BIP84Public<K> where
    K: Send
[src]

impl<K> Sync for BIP84Public<K> where
    K: Sync
[src]

impl<K> Unpin for BIP84Public<K> where
    K: Unpin
[src]

impl<K> UnwindSafe for BIP84Public<K> where
    K: UnwindSafe
[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

ChecksumMismatch

Descriptor checksum mismatch

-
SpendingPolicyRequired(ScriptType)

Spending policy is not compatible with this ScriptType

+
SpendingPolicyRequired(KeychainKind)

Spending policy is not compatible with this KeychainKind

InvalidPolicyPathError(PolicyError)
Signer(SignerError)
OfflineClient

Thrown when trying to call a method that requires a network connection, Wallet::sync and Wallet::broadcast This error is thrown when creating the Client for the first time, while recovery attempts are tried during the sync

@@ -91,7 +91,7 @@ during the sync

impl From<CompactFiltersError> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for CompactFiltersError[src]

This is supported on crate feature compact_filters only.

impl From<Error> for CompactFiltersError[src]

This is supported on crate feature compact_filters only.

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

\ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/bdk/sidebar-items.js b/static/docs-rs/bdk/nightly/latest/bdk/sidebar-items.js index ef9cc466f0..87c2ce000a 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/sidebar-items.js +++ b/static/docs-rs/bdk/nightly/latest/bdk/sidebar-items.js @@ -1 +1 @@ -initSidebarItems({"enum":[["Error","Errors that can be thrown by the `Wallet`"],["ScriptType","Types of script"]],"macro":[["descriptor","Macro to write full descriptors with code"],["fragment","Macro to write descriptor fragments with code"]],"mod":[["blockchain","Blockchain backends"],["database","Database types"],["descriptor","Descriptors"],["keys","Key formats"],["wallet","Wallet"]],"struct":[["FeeRate","Fee rate"],["TransactionDetails","A wallet transaction"],["UTXO","A wallet unspent output"]]}); \ No newline at end of file +initSidebarItems({"enum":[["Error","Errors that can be thrown by the `Wallet`"],["KeychainKind","Types of script"]],"macro":[["descriptor","Macro to write full descriptors with code"],["fragment","Macro to write descriptor fragments with code"]],"mod":[["blockchain","Blockchain backends"],["database","Database types"],["descriptor","Descriptors"],["keys","Key formats"],["wallet","Wallet"]],"struct":[["FeeRate","Fee rate"],["TransactionDetails","A wallet transaction"],["UTXO","A wallet unspent output"]]}); \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/bdk/struct.UTXO.html b/static/docs-rs/bdk/nightly/latest/bdk/struct.UTXO.html index 6461166993..ca2095efc3 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/struct.UTXO.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/struct.UTXO.html @@ -1,13 +1,13 @@ bdk::UTXO - Rust -

[][src]Module bdk::wallet

Wallet

This module defines the Wallet structure.

Modules

address_validator

Address validation callbacks

diff --git a/static/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html b/static/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html index ba8b8d65cc..748dd6681c 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/wallet/signer/index.html @@ -40,7 +40,7 @@ through the < let descriptor = "wpkh(tpubD6NzVbkrYhZ4Xferm7Pz4VnjdcDPFyjVu5K4iZXQ4pVN8Cks4pHVowTBXBKRhX64pkRyJZJN5xAKj4UDNnLPb5p2sSKXhewoYx5GbTdUFWq/*)"; let mut wallet: OfflineWallet<_> = Wallet::new_offline(descriptor, None, Network::Testnet, MemoryDatabase::default())?; wallet.add_signer( - ScriptType::External, + KeychainKind::External, Fingerprint::from_str("e30f11b8").unwrap().into(), SignerOrdering(200), Arc::new(custom_signer) diff --git a/static/docs-rs/bdk/nightly/latest/bdk/wallet/struct.Wallet.html b/static/docs-rs/bdk/nightly/latest/bdk/wallet/struct.Wallet.html index f96733fe1e..2a1716c42c 100644 --- a/static/docs-rs/bdk/nightly/latest/bdk/wallet/struct.Wallet.html +++ b/static/docs-rs/bdk/nightly/latest/bdk/wallet/struct.Wallet.html @@ -9,7 +9,7 @@ needs to operate, like blockchain type provided implements Blockchain, or "offline" OfflineBlockchain is used. Offline wallets only expose methods that don't need any interaction with the blockchain to work.

-

Implementations

impl<B, D> Wallet<B, D> where
    B: BlockchainMarker,
    D: BatchDatabase
[src]

pub fn new_offline<E: ToWalletDescriptor>(
    descriptor: E,
    change_descriptor: Option<E>,
    network: Network,
    database: D
) -> Result<Self, Error>
[src]

Create a new "offline" wallet

+

Implementations

impl<B, D> Wallet<B, D> where
    B: BlockchainMarker,
    D: BatchDatabase
[src]

pub fn new_offline<E: ToWalletDescriptor>(
    descriptor: E,
    change_descriptor: Option<E>,
    network: Network,
    database: D
) -> Result<Self, Error>
[src]

Create a new "offline" wallet

pub fn get_new_address(&self) -> Result<Address, Error>[src]

Return a newly generated address using the external descriptor

pub fn is_mine(&self, script: &Script) -> Result<bool, Error>[src]

Return whether or not a script is part of this wallet (either internal or external)

pub fn list_unspent(&self) -> Result<Vec<UTXO>, Error>[src]

Return the list of unspent outputs of this wallet

@@ -23,7 +23,7 @@ methods that don't need any interaction with the blockchain to work.

pub fn get_balance(&self) -> Result<u64, Error>[src]

Return the balance, meaning the sum of this wallet's unspent outputs' values

Note that this methods only operate on the internal database, which first needs to be Wallet::sync manually.

-

pub fn add_signer(
    &mut self,
    script_type: ScriptType,
    id: SignerId,
    ordering: SignerOrdering,
    signer: Arc<dyn Signer>
)
[src]

Add an external signer

+

pub fn add_signer(
    &mut self,
    keychain: KeychainKind,
    id: SignerId,
    ordering: SignerOrdering,
    signer: Arc<dyn Signer>
)
[src]

Add an external signer

See the signer module for an example.

pub fn add_address_validator(&mut self, validator: Arc<dyn AddressValidator>)[src]

Add an address validator

See the address_validator module for an example.

@@ -34,7 +34,7 @@ methods that don't need any interaction with the blockchain to work.

TxBuilder::with_recipients(vec![(to_address.script_pubkey(), 50_000)]) )?; // sign and broadcast ...
-

pub fn bump_fee<Cs: CoinSelectionAlgorithm<D>>(
    &self,
    txid: &Txid,
    builder: TxBuilder<D, Cs, BumpFee>
) -> Result<(PSBT, TransactionDetails), Error>
[src]

Bump the fee of a transaction following the options specified in the builder

+

pub fn bump_fee<Cs: CoinSelectionAlgorithm<D>>(
    &self,
    txid: &Txid,
    builder: TxBuilder<D, Cs, BumpFee>
) -> Result<(PSBT, TransactionDetails), Error>
[src]

Bump the fee of a transaction following the options specified in the builder

Return an error if the transaction is already confirmed or doesn't explicitly signal RBF.

NOTE: if the original transaction was made with TxBuilder::set_single_recipient, the TxBuilder::maintain_single_recipient flag should be enabled to correctly reduce the @@ -49,21 +49,21 @@ transaction regardless of whether they are necessary or not to cover additional TxBuilder::new().fee_rate(FeeRate::from_sat_per_vb(5.0)), )?; // sign and broadcast ...

-

pub fn sign(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Sign a transaction with all the wallet's signers, in the order specified by every signer's +

pub fn sign(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Sign a transaction with all the wallet's signers, in the order specified by every signer's SignerOrdering

Example

 let (signed_psbt, finalized) = wallet.sign(psbt, None)?;
-

pub fn policies(&self, script_type: ScriptType) -> Result<Option<Policy>, Error>[src]

Return the spending policies for the wallet's descriptor

-

pub fn public_descriptor(
    &self,
    script_type: ScriptType
) -> Result<Option<ExtendedDescriptor>, Error>
[src]

Return the "public" version of the wallet's descriptor, meaning a new descriptor that has +

pub fn policies(&self, keychain: KeychainKind) -> Result<Option<Policy>, Error>[src]

Return the spending policies for the wallet's descriptor

+

pub fn public_descriptor(
    &self,
    keychain: KeychainKind
) -> Result<Option<ExtendedDescriptor>, Error>
[src]

Return the "public" version of the wallet's descriptor, meaning a new descriptor that has the same structure but with every secret key removed

This can be used to build a watch-only version of a wallet

-

pub fn finalize_psbt(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Try to finalize a PSBT

-

pub fn secp_ctx(&self) -> &Secp256k1<All>[src]

impl<B, D> Wallet<B, D> where
    B: Blockchain,
    D: BatchDatabase
[src]

pub fn new<E: ToWalletDescriptor>(
    descriptor: E,
    change_descriptor: Option<E>,
    network: Network,
    database: D,
    client: B
) -> Result<Self, Error>
[src]

Create a new "online" wallet

-

pub fn sync<P: 'static + Progress>(
    &self,
    progress_update: P,
    max_address_param: Option<u32>
) -> Result<(), Error>
[src]

Sync the internal database with the blockchain

-

pub fn client(&self) -> Option<&B>[src]

Return a reference to the internal blockchain client

-

pub fn network(&self) -> Network[src]

Get the Bitcoin network the wallet is using.

-

pub fn broadcast(&self, tx: Transaction) -> Result<Txid, Error>[src]

Broadcast a transaction to the network

+

pub fn finalize_psbt(
    &self,
    psbt: PSBT,
    assume_height: Option<u32>
) -> Result<(PSBT, bool), Error>
[src]

Try to finalize a PSBT

+

pub fn secp_ctx(&self) -> &Secp256k1<All>[src]

impl<B, D> Wallet<B, D> where
    B: Blockchain,
    D: BatchDatabase
[src]

pub fn new<E: ToWalletDescriptor>(
    descriptor: E,
    change_descriptor: Option<E>,
    network: Network,
    database: D,
    client: B
) -> Result<Self, Error>
[src]

Create a new "online" wallet

+

pub fn sync<P: 'static + Progress>(
    &self,
    progress_update: P,
    max_address_param: Option<u32>
) -> Result<(), Error>
[src]

Sync the internal database with the blockchain

+

pub fn client(&self) -> Option<&B>[src]

Return a reference to the internal blockchain client

+

pub fn network(&self) -> Network[src]

Get the Bitcoin network the wallet is using.

+

pub fn broadcast(&self, tx: Transaction) -> Result<Txid, Error>[src]

Broadcast a transaction to the network

Auto Trait Implementations

impl<B, D> !RefUnwindSafe for Wallet<B, D>[src]

impl<B, D> Send for Wallet<B, D> where
    B: Send,
    D: Send
[src]

impl<B, D> !Sync for Wallet<B, D>[src]

impl<B, D> Unpin for Wallet<B, D> where
    B: Unpin,
    D: Unpin
[src]

impl<B, D> !UnwindSafe for Wallet<B, D>[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

Implementations

impl<D: Database, Ctx: TxBuilderContext> TxBuilder<D, DefaultCoinSelectionAlgorithm, Ctx>[src]

pub fn new() -> Self[src]

Create an empty builder

impl<D: Database, Cs: CoinSelectionAlgorithm<D>, Ctx: TxBuilderContext> TxBuilder<D, Cs, Ctx>[src]

pub fn fee_rate(self, fee_rate: FeeRate) -> Self[src]

Set a custom fee rate

pub fn fee_absolute(self, fee_amount: u64) -> Self[src]

Set an absolute fee

-

pub fn policy_path(
    self,
    policy_path: BTreeMap<String, Vec<usize>>,
    script_type: ScriptType
) -> Self
[src]

Set the policy path to use while creating the transaction for a given script type

+

pub fn policy_path(
    self,
    policy_path: BTreeMap<String, Vec<usize>>,
    keychain: KeychainKind
) -> Self
[src]

Set the policy path to use while creating the transaction for a given keychain.

This method accepts a map where the key is the policy node id (see Policy::id) and the value is the list of the indexes of the items that are intended to be satisfied from the policy node (see @@ -48,7 +48,7 @@ multiple entries can be added to the map, one for each node that requires an exp path.insert("aabbccdd".to_string(), vec![0, 1]); let builder = TxBuilder::with_recipients(vec![(to_address.script_pubkey(), 50_000)]) - .policy_path(path, ScriptType::External);

+ .policy_path(path, KeychainKind::External);

pub fn utxos(self, utxos: Vec<OutPoint>) -> Self[src]

Replace the internal list of utxos that must be spent with a new list

These have priority over the "unspendable" utxos, meaning that if a utxo is present both in the "utxos" and the "unspendable" list, it will be spent.

diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/clone/trait.Clone.js b/static/docs-rs/bdk/nightly/latest/implementors/core/clone/trait.Clone.js index 6327c1df64..a7ef0cbabd 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/clone/trait.Clone.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/clone/trait.Clone.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Clone for Capability","synthetic":false,"types":[]},{"text":"impl Clone for NoopProgress","synthetic":false,"types":[]},{"text":"impl Clone for LogProgress","synthetic":false,"types":[]},{"text":"impl Clone for PKOrF","synthetic":false,"types":[]},{"text":"impl Clone for SatisfiableItem","synthetic":false,"types":[]},{"text":"impl Clone for Satisfaction","synthetic":false,"types":[]},{"text":"impl Clone for Policy","synthetic":false,"types":[]},{"text":"impl Clone for Condition","synthetic":false,"types":[]},{"text":"impl Clone for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Clone for PrivateKeyGenerateOptions","synthetic":false,"types":[]},{"text":"impl Clone for ScriptType","synthetic":false,"types":[]},{"text":"impl Clone for FeeRate","synthetic":false,"types":[]},{"text":"impl Clone for UTXO","synthetic":false,"types":[]},{"text":"impl Clone for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Clone for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl Clone for SignerId","synthetic":false,"types":[]},{"text":"impl Clone for SignerError","synthetic":false,"types":[]},{"text":"impl Clone for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Clone for SignersContainer","synthetic":false,"types":[]},{"text":"impl Clone for CreateTx","synthetic":false,"types":[]},{"text":"impl Clone for BumpFee","synthetic":false,"types":[]},{"text":"impl Clone for TxOrdering","synthetic":false,"types":[]},{"text":"impl Clone for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl Clone for Capability","synthetic":false,"types":[]},{"text":"impl Clone for NoopProgress","synthetic":false,"types":[]},{"text":"impl Clone for LogProgress","synthetic":false,"types":[]},{"text":"impl Clone for PKOrF","synthetic":false,"types":[]},{"text":"impl Clone for SatisfiableItem","synthetic":false,"types":[]},{"text":"impl Clone for Satisfaction","synthetic":false,"types":[]},{"text":"impl Clone for Policy","synthetic":false,"types":[]},{"text":"impl Clone for Condition","synthetic":false,"types":[]},{"text":"impl Clone for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Clone for PrivateKeyGenerateOptions","synthetic":false,"types":[]},{"text":"impl Clone for KeychainKind","synthetic":false,"types":[]},{"text":"impl Clone for FeeRate","synthetic":false,"types":[]},{"text":"impl Clone for UTXO","synthetic":false,"types":[]},{"text":"impl Clone for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Clone for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl Clone for SignerId","synthetic":false,"types":[]},{"text":"impl Clone for SignerError","synthetic":false,"types":[]},{"text":"impl Clone for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Clone for SignersContainer","synthetic":false,"types":[]},{"text":"impl Clone for CreateTx","synthetic":false,"types":[]},{"text":"impl Clone for BumpFee","synthetic":false,"types":[]},{"text":"impl Clone for TxOrdering","synthetic":false,"types":[]},{"text":"impl Clone for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.Eq.js b/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.Eq.js index c63caf1ed3..7e8d7dc356 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.Eq.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.Eq.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Eq for Capability","synthetic":false,"types":[]},{"text":"impl Eq for Condition","synthetic":false,"types":[]},{"text":"impl Eq for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Eq for ScriptType","synthetic":false,"types":[]},{"text":"impl Eq for UTXO","synthetic":false,"types":[]},{"text":"impl Eq for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Eq for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl Eq for SignerId","synthetic":false,"types":[]},{"text":"impl Eq for SignerError","synthetic":false,"types":[]},{"text":"impl Eq for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Eq for TxOrdering","synthetic":false,"types":[]},{"text":"impl Eq for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl Eq for Capability","synthetic":false,"types":[]},{"text":"impl Eq for Condition","synthetic":false,"types":[]},{"text":"impl Eq for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Eq for KeychainKind","synthetic":false,"types":[]},{"text":"impl Eq for UTXO","synthetic":false,"types":[]},{"text":"impl Eq for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Eq for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl Eq for SignerId","synthetic":false,"types":[]},{"text":"impl Eq for SignerError","synthetic":false,"types":[]},{"text":"impl Eq for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Eq for TxOrdering","synthetic":false,"types":[]},{"text":"impl Eq for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.PartialEq.js b/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.PartialEq.js index d7bd34a6cd..31a908a5b9 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.PartialEq.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/cmp/trait.PartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl PartialEq<Capability> for Capability","synthetic":false,"types":[]},{"text":"impl PartialEq<Condition> for Condition","synthetic":false,"types":[]},{"text":"impl PartialEq<ScriptContextEnum> for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl PartialEq<ScriptType> for ScriptType","synthetic":false,"types":[]},{"text":"impl PartialEq<FeeRate> for FeeRate","synthetic":false,"types":[]},{"text":"impl PartialEq<UTXO> for UTXO","synthetic":false,"types":[]},{"text":"impl PartialEq<TransactionDetails> for TransactionDetails","synthetic":false,"types":[]},{"text":"impl PartialEq<AddressValidatorError> for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl PartialEq<SignerId> for SignerId","synthetic":false,"types":[]},{"text":"impl PartialEq<SignerError> for SignerError","synthetic":false,"types":[]},{"text":"impl PartialEq<SignerOrdering> for SignerOrdering","synthetic":false,"types":[]},{"text":"impl PartialEq<TxOrdering> for TxOrdering","synthetic":false,"types":[]},{"text":"impl PartialEq<ChangeSpendPolicy> for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl PartialEq<Capability> for Capability","synthetic":false,"types":[]},{"text":"impl PartialEq<Condition> for Condition","synthetic":false,"types":[]},{"text":"impl PartialEq<ScriptContextEnum> for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl PartialEq<KeychainKind> for KeychainKind","synthetic":false,"types":[]},{"text":"impl PartialEq<FeeRate> for FeeRate","synthetic":false,"types":[]},{"text":"impl PartialEq<UTXO> for UTXO","synthetic":false,"types":[]},{"text":"impl PartialEq<TransactionDetails> for TransactionDetails","synthetic":false,"types":[]},{"text":"impl PartialEq<AddressValidatorError> for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl PartialEq<SignerId> for SignerId","synthetic":false,"types":[]},{"text":"impl PartialEq<SignerError> for SignerError","synthetic":false,"types":[]},{"text":"impl PartialEq<SignerOrdering> for SignerOrdering","synthetic":false,"types":[]},{"text":"impl PartialEq<TxOrdering> for TxOrdering","synthetic":false,"types":[]},{"text":"impl PartialEq<ChangeSpendPolicy> for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/convert/trait.AsRef.js b/static/docs-rs/bdk/nightly/latest/implementors/core/convert/trait.AsRef.js index b6170a1a73..5b2db4abf7 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/convert/trait.AsRef.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/convert/trait.AsRef.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl AsRef<[u8]> for ScriptType","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl AsRef<[u8]> for KeychainKind","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/fmt/trait.Debug.js b/static/docs-rs/bdk/nightly/latest/implementors/core/fmt/trait.Debug.js index d60b4220cb..b3638c12d9 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/fmt/trait.Debug.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/fmt/trait.Debug.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Debug for Error","synthetic":false,"types":[]},{"text":"impl Debug for AnyBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for ElectrumBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for EsploraBlockchain","synthetic":false,"types":[]},{"text":"impl Debug for EsploraBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for EsploraError","synthetic":false,"types":[]},{"text":"impl Debug for Mempool","synthetic":false,"types":[]},{"text":"impl Debug for Peer","synthetic":false,"types":[]},{"text":"impl Debug for CompactFiltersBlockchain","synthetic":false,"types":[]},{"text":"impl Debug for BitcoinPeerConfig","synthetic":false,"types":[]},{"text":"impl Debug for CompactFiltersBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for CompactFiltersError","synthetic":false,"types":[]},{"text":"impl Debug for Capability","synthetic":false,"types":[]},{"text":"impl Debug for AnyDatabase","synthetic":false,"types":[]},{"text":"impl Debug for SledDbConfiguration","synthetic":false,"types":[]},{"text":"impl Debug for AnyDatabaseConfig","synthetic":false,"types":[]},{"text":"impl Debug for MemoryDatabase","synthetic":false,"types":[]},{"text":"impl Debug for Error","synthetic":false,"types":[]},{"text":"impl Debug for PKOrF","synthetic":false,"types":[]},{"text":"impl Debug for SatisfiableItem","synthetic":false,"types":[]},{"text":"impl Debug for Satisfaction","synthetic":false,"types":[]},{"text":"impl Debug for Policy","synthetic":false,"types":[]},{"text":"impl Debug for Condition","synthetic":false,"types":[]},{"text":"impl Debug for PolicyError","synthetic":false,"types":[]},{"text":"impl<Ctx: Debug + ScriptContext> Debug for DescriptorKey<Ctx>","synthetic":false,"types":[]},{"text":"impl Debug for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Debug for PrivateKeyGenerateOptions","synthetic":false,"types":[]},{"text":"impl Debug for KeyError","synthetic":false,"types":[]},{"text":"impl Debug for ScriptType","synthetic":false,"types":[]},{"text":"impl Debug for FeeRate","synthetic":false,"types":[]},{"text":"impl Debug for UTXO","synthetic":false,"types":[]},{"text":"impl Debug for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Debug for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl Debug for CoinSelectionResult","synthetic":false,"types":[]},{"text":"impl Debug for LargestFirstCoinSelection","synthetic":false,"types":[]},{"text":"impl Debug for BranchAndBoundCoinSelection","synthetic":false,"types":[]},{"text":"impl Debug for WalletExport","synthetic":false,"types":[]},{"text":"impl Debug for SignerId","synthetic":false,"types":[]},{"text":"impl Debug for SignerError","synthetic":false,"types":[]},{"text":"impl Debug for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Debug for SignersContainer","synthetic":false,"types":[]},{"text":"impl Debug for CreateTx","synthetic":false,"types":[]},{"text":"impl Debug for BumpFee","synthetic":false,"types":[]},{"text":"impl<D: Debug + Database, Cs: Debug + CoinSelectionAlgorithm<D>, Ctx: Debug + TxBuilderContext> Debug for TxBuilder<D, Cs, Ctx>","synthetic":false,"types":[]},{"text":"impl Debug for TxOrdering","synthetic":false,"types":[]},{"text":"impl Debug for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl Debug for Error","synthetic":false,"types":[]},{"text":"impl Debug for AnyBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for ElectrumBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for EsploraBlockchain","synthetic":false,"types":[]},{"text":"impl Debug for EsploraBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for EsploraError","synthetic":false,"types":[]},{"text":"impl Debug for Mempool","synthetic":false,"types":[]},{"text":"impl Debug for Peer","synthetic":false,"types":[]},{"text":"impl Debug for CompactFiltersBlockchain","synthetic":false,"types":[]},{"text":"impl Debug for BitcoinPeerConfig","synthetic":false,"types":[]},{"text":"impl Debug for CompactFiltersBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Debug for CompactFiltersError","synthetic":false,"types":[]},{"text":"impl Debug for Capability","synthetic":false,"types":[]},{"text":"impl Debug for AnyDatabase","synthetic":false,"types":[]},{"text":"impl Debug for SledDbConfiguration","synthetic":false,"types":[]},{"text":"impl Debug for AnyDatabaseConfig","synthetic":false,"types":[]},{"text":"impl Debug for MemoryDatabase","synthetic":false,"types":[]},{"text":"impl Debug for Error","synthetic":false,"types":[]},{"text":"impl Debug for PKOrF","synthetic":false,"types":[]},{"text":"impl Debug for SatisfiableItem","synthetic":false,"types":[]},{"text":"impl Debug for Satisfaction","synthetic":false,"types":[]},{"text":"impl Debug for Policy","synthetic":false,"types":[]},{"text":"impl Debug for Condition","synthetic":false,"types":[]},{"text":"impl Debug for PolicyError","synthetic":false,"types":[]},{"text":"impl<Ctx: Debug + ScriptContext> Debug for DescriptorKey<Ctx>","synthetic":false,"types":[]},{"text":"impl Debug for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Debug for PrivateKeyGenerateOptions","synthetic":false,"types":[]},{"text":"impl Debug for KeyError","synthetic":false,"types":[]},{"text":"impl Debug for KeychainKind","synthetic":false,"types":[]},{"text":"impl Debug for FeeRate","synthetic":false,"types":[]},{"text":"impl Debug for UTXO","synthetic":false,"types":[]},{"text":"impl Debug for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Debug for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl Debug for CoinSelectionResult","synthetic":false,"types":[]},{"text":"impl Debug for LargestFirstCoinSelection","synthetic":false,"types":[]},{"text":"impl Debug for BranchAndBoundCoinSelection","synthetic":false,"types":[]},{"text":"impl Debug for WalletExport","synthetic":false,"types":[]},{"text":"impl Debug for SignerId","synthetic":false,"types":[]},{"text":"impl Debug for SignerError","synthetic":false,"types":[]},{"text":"impl Debug for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Debug for SignersContainer","synthetic":false,"types":[]},{"text":"impl Debug for CreateTx","synthetic":false,"types":[]},{"text":"impl Debug for BumpFee","synthetic":false,"types":[]},{"text":"impl<D: Debug + Database, Cs: Debug + CoinSelectionAlgorithm<D>, Ctx: Debug + TxBuilderContext> Debug for TxBuilder<D, Cs, Ctx>","synthetic":false,"types":[]},{"text":"impl Debug for TxOrdering","synthetic":false,"types":[]},{"text":"impl Debug for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/hash/trait.Hash.js b/static/docs-rs/bdk/nightly/latest/implementors/core/hash/trait.Hash.js index 89138f035a..ada3453a61 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/hash/trait.Hash.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/hash/trait.Hash.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Hash for Capability","synthetic":false,"types":[]},{"text":"impl Hash for Condition","synthetic":false,"types":[]},{"text":"impl Hash for ScriptType","synthetic":false,"types":[]},{"text":"impl Hash for SignerId","synthetic":false,"types":[]},{"text":"impl Hash for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Hash for TxOrdering","synthetic":false,"types":[]},{"text":"impl Hash for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl Hash for Capability","synthetic":false,"types":[]},{"text":"impl Hash for Condition","synthetic":false,"types":[]},{"text":"impl Hash for KeychainKind","synthetic":false,"types":[]},{"text":"impl Hash for SignerId","synthetic":false,"types":[]},{"text":"impl Hash for SignerOrdering","synthetic":false,"types":[]},{"text":"impl Hash for TxOrdering","synthetic":false,"types":[]},{"text":"impl Hash for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Copy.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Copy.js index d8fa8fed7c..243d52c881 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Copy.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Copy.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Copy for Capability","synthetic":false,"types":[]},{"text":"impl Copy for Condition","synthetic":false,"types":[]},{"text":"impl Copy for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Copy for PrivateKeyGenerateOptions","synthetic":false,"types":[]},{"text":"impl Copy for ScriptType","synthetic":false,"types":[]},{"text":"impl Copy for FeeRate","synthetic":false,"types":[]},{"text":"impl Copy for TxOrdering","synthetic":false,"types":[]},{"text":"impl Copy for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl Copy for Capability","synthetic":false,"types":[]},{"text":"impl Copy for Condition","synthetic":false,"types":[]},{"text":"impl Copy for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl Copy for PrivateKeyGenerateOptions","synthetic":false,"types":[]},{"text":"impl Copy for KeychainKind","synthetic":false,"types":[]},{"text":"impl Copy for FeeRate","synthetic":false,"types":[]},{"text":"impl Copy for TxOrdering","synthetic":false,"types":[]},{"text":"impl Copy for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Freeze.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Freeze.js index af91b56099..d8ca791082 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Freeze.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Freeze.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Freeze for Error","synthetic":true,"types":[]},{"text":"impl !Freeze for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !Freeze for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Freeze for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Freeze for EsploraError","synthetic":true,"types":[]},{"text":"impl !Freeze for Mempool","synthetic":true,"types":[]},{"text":"impl Freeze for Peer","synthetic":true,"types":[]},{"text":"impl Freeze for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Freeze for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Freeze for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Freeze for Capability","synthetic":true,"types":[]},{"text":"impl Freeze for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for NoopProgress","synthetic":true,"types":[]},{"text":"impl Freeze for LogProgress","synthetic":true,"types":[]},{"text":"impl Freeze for AnyDatabase","synthetic":true,"types":[]},{"text":"impl Freeze for AnyBatch","synthetic":true,"types":[]},{"text":"impl Freeze for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Freeze for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl Freeze for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Freeze for Error","synthetic":true,"types":[]},{"text":"impl Freeze for PKOrF","synthetic":true,"types":[]},{"text":"impl Freeze for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Freeze for Satisfaction","synthetic":true,"types":[]},{"text":"impl Freeze for Policy","synthetic":true,"types":[]},{"text":"impl Freeze for Condition","synthetic":true,"types":[]},{"text":"impl Freeze for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Freeze for P2PKH<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for P2WPKH_P2SH<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for P2WPKH<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP44<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP44Public<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP49<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP49Public<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP84<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP84Public<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Freeze for DescriptorKey<Ctx>","synthetic":true,"types":[]},{"text":"impl Freeze for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Freeze for GeneratedKey<K, Ctx> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl Freeze for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Freeze for KeyError","synthetic":true,"types":[]},{"text":"impl Freeze for ScriptType","synthetic":true,"types":[]},{"text":"impl Freeze for FeeRate","synthetic":true,"types":[]},{"text":"impl Freeze for UTXO","synthetic":true,"types":[]},{"text":"impl Freeze for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Freeze for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Freeze for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Freeze for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Freeze for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Freeze for WalletExport","synthetic":true,"types":[]},{"text":"impl Freeze for SignerId","synthetic":true,"types":[]},{"text":"impl Freeze for SignerError","synthetic":true,"types":[]},{"text":"impl Freeze for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Freeze for SignersContainer","synthetic":true,"types":[]},{"text":"impl Freeze for CreateTx","synthetic":true,"types":[]},{"text":"impl Freeze for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Freeze for TxBuilder<D, Cs, Ctx> where
    Cs: Freeze, 
","synthetic":true,"types":[]},{"text":"impl Freeze for TxOrdering","synthetic":true,"types":[]},{"text":"impl Freeze for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !Freeze for Wallet<B, D>","synthetic":true,"types":[]}]; +implementors["bdk"] = [{"text":"impl Freeze for Error","synthetic":true,"types":[]},{"text":"impl !Freeze for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !Freeze for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Freeze for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Freeze for EsploraError","synthetic":true,"types":[]},{"text":"impl !Freeze for Mempool","synthetic":true,"types":[]},{"text":"impl Freeze for Peer","synthetic":true,"types":[]},{"text":"impl Freeze for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Freeze for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Freeze for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Freeze for Capability","synthetic":true,"types":[]},{"text":"impl Freeze for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Freeze for NoopProgress","synthetic":true,"types":[]},{"text":"impl Freeze for LogProgress","synthetic":true,"types":[]},{"text":"impl Freeze for AnyDatabase","synthetic":true,"types":[]},{"text":"impl Freeze for AnyBatch","synthetic":true,"types":[]},{"text":"impl Freeze for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Freeze for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl Freeze for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Freeze for Error","synthetic":true,"types":[]},{"text":"impl Freeze for PKOrF","synthetic":true,"types":[]},{"text":"impl Freeze for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Freeze for Satisfaction","synthetic":true,"types":[]},{"text":"impl Freeze for Policy","synthetic":true,"types":[]},{"text":"impl Freeze for Condition","synthetic":true,"types":[]},{"text":"impl Freeze for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Freeze for P2PKH<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for P2WPKH_P2SH<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for P2WPKH<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP44<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP44Public<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP49<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP49Public<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP84<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<K> Freeze for BIP84Public<K> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Freeze for DescriptorKey<Ctx>","synthetic":true,"types":[]},{"text":"impl Freeze for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Freeze for GeneratedKey<K, Ctx> where
    K: Freeze, 
","synthetic":true,"types":[]},{"text":"impl Freeze for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Freeze for KeyError","synthetic":true,"types":[]},{"text":"impl Freeze for KeychainKind","synthetic":true,"types":[]},{"text":"impl Freeze for FeeRate","synthetic":true,"types":[]},{"text":"impl Freeze for UTXO","synthetic":true,"types":[]},{"text":"impl Freeze for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Freeze for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Freeze for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Freeze for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Freeze for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Freeze for WalletExport","synthetic":true,"types":[]},{"text":"impl Freeze for SignerId","synthetic":true,"types":[]},{"text":"impl Freeze for SignerError","synthetic":true,"types":[]},{"text":"impl Freeze for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Freeze for SignersContainer","synthetic":true,"types":[]},{"text":"impl Freeze for CreateTx","synthetic":true,"types":[]},{"text":"impl Freeze for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Freeze for TxBuilder<D, Cs, Ctx> where
    Cs: Freeze, 
","synthetic":true,"types":[]},{"text":"impl Freeze for TxOrdering","synthetic":true,"types":[]},{"text":"impl Freeze for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !Freeze for Wallet<B, D>","synthetic":true,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Send.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Send.js index ce04026aac..b500695f51 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Send.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Send.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Send for Error","synthetic":true,"types":[]},{"text":"impl Send for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Send for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Send for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Send for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for EsploraError","synthetic":true,"types":[]},{"text":"impl Send for Mempool","synthetic":true,"types":[]},{"text":"impl Send for Peer","synthetic":true,"types":[]},{"text":"impl Send for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Send for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Send for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Send for Capability","synthetic":true,"types":[]},{"text":"impl Send for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Send for NoopProgress","synthetic":true,"types":[]},{"text":"impl Send for LogProgress","synthetic":true,"types":[]},{"text":"impl !Send for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !Send for AnyBatch","synthetic":true,"types":[]},{"text":"impl Send for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Send for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !Send for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Send for Error","synthetic":true,"types":[]},{"text":"impl Send for PKOrF","synthetic":true,"types":[]},{"text":"impl Send for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Send for Satisfaction","synthetic":true,"types":[]},{"text":"impl Send for Policy","synthetic":true,"types":[]},{"text":"impl Send for Condition","synthetic":true,"types":[]},{"text":"impl Send for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Send for P2PKH<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for P2WPKH_P2SH<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for P2WPKH<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP44<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP44Public<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP49<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP49Public<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP84<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP84Public<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Send for DescriptorKey<Ctx> where
    Ctx: Send, 
","synthetic":true,"types":[]},{"text":"impl Send for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Send for GeneratedKey<K, Ctx> where
    Ctx: Send,
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl Send for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Send for KeyError","synthetic":true,"types":[]},{"text":"impl Send for ScriptType","synthetic":true,"types":[]},{"text":"impl Send for FeeRate","synthetic":true,"types":[]},{"text":"impl Send for UTXO","synthetic":true,"types":[]},{"text":"impl Send for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Send for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Send for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Send for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Send for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Send for WalletExport","synthetic":true,"types":[]},{"text":"impl Send for SignerId","synthetic":true,"types":[]},{"text":"impl Send for SignerError","synthetic":true,"types":[]},{"text":"impl Send for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Send for SignersContainer","synthetic":true,"types":[]},{"text":"impl Send for CreateTx","synthetic":true,"types":[]},{"text":"impl Send for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Send for TxBuilder<D, Cs, Ctx> where
    Cs: Send,
    Ctx: Send,
    D: Send, 
","synthetic":true,"types":[]},{"text":"impl Send for TxOrdering","synthetic":true,"types":[]},{"text":"impl Send for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> Send for Wallet<B, D> where
    B: Send,
    D: Send, 
","synthetic":true,"types":[]}]; +implementors["bdk"] = [{"text":"impl Send for Error","synthetic":true,"types":[]},{"text":"impl Send for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Send for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Send for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Send for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for EsploraError","synthetic":true,"types":[]},{"text":"impl Send for Mempool","synthetic":true,"types":[]},{"text":"impl Send for Peer","synthetic":true,"types":[]},{"text":"impl Send for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Send for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Send for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Send for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Send for Capability","synthetic":true,"types":[]},{"text":"impl Send for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Send for NoopProgress","synthetic":true,"types":[]},{"text":"impl Send for LogProgress","synthetic":true,"types":[]},{"text":"impl !Send for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !Send for AnyBatch","synthetic":true,"types":[]},{"text":"impl Send for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Send for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !Send for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Send for Error","synthetic":true,"types":[]},{"text":"impl Send for PKOrF","synthetic":true,"types":[]},{"text":"impl Send for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Send for Satisfaction","synthetic":true,"types":[]},{"text":"impl Send for Policy","synthetic":true,"types":[]},{"text":"impl Send for Condition","synthetic":true,"types":[]},{"text":"impl Send for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Send for P2PKH<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for P2WPKH_P2SH<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for P2WPKH<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP44<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP44Public<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP49<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP49Public<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP84<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<K> Send for BIP84Public<K> where
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Send for DescriptorKey<Ctx> where
    Ctx: Send, 
","synthetic":true,"types":[]},{"text":"impl Send for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Send for GeneratedKey<K, Ctx> where
    Ctx: Send,
    K: Send, 
","synthetic":true,"types":[]},{"text":"impl Send for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Send for KeyError","synthetic":true,"types":[]},{"text":"impl Send for KeychainKind","synthetic":true,"types":[]},{"text":"impl Send for FeeRate","synthetic":true,"types":[]},{"text":"impl Send for UTXO","synthetic":true,"types":[]},{"text":"impl Send for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Send for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Send for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Send for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Send for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Send for WalletExport","synthetic":true,"types":[]},{"text":"impl Send for SignerId","synthetic":true,"types":[]},{"text":"impl Send for SignerError","synthetic":true,"types":[]},{"text":"impl Send for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Send for SignersContainer","synthetic":true,"types":[]},{"text":"impl Send for CreateTx","synthetic":true,"types":[]},{"text":"impl Send for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Send for TxBuilder<D, Cs, Ctx> where
    Cs: Send,
    Ctx: Send,
    D: Send, 
","synthetic":true,"types":[]},{"text":"impl Send for TxOrdering","synthetic":true,"types":[]},{"text":"impl Send for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> Send for Wallet<B, D> where
    B: Send,
    D: Send, 
","synthetic":true,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralEq.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralEq.js index 7059456b7c..f127d77e7c 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralEq.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralEq.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl StructuralEq for Capability","synthetic":false,"types":[]},{"text":"impl StructuralEq for Condition","synthetic":false,"types":[]},{"text":"impl StructuralEq for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl StructuralEq for ScriptType","synthetic":false,"types":[]},{"text":"impl StructuralEq for UTXO","synthetic":false,"types":[]},{"text":"impl StructuralEq for TransactionDetails","synthetic":false,"types":[]},{"text":"impl StructuralEq for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl StructuralEq for SignerId","synthetic":false,"types":[]},{"text":"impl StructuralEq for SignerError","synthetic":false,"types":[]},{"text":"impl StructuralEq for SignerOrdering","synthetic":false,"types":[]},{"text":"impl StructuralEq for TxOrdering","synthetic":false,"types":[]},{"text":"impl StructuralEq for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl StructuralEq for Capability","synthetic":false,"types":[]},{"text":"impl StructuralEq for Condition","synthetic":false,"types":[]},{"text":"impl StructuralEq for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl StructuralEq for KeychainKind","synthetic":false,"types":[]},{"text":"impl StructuralEq for UTXO","synthetic":false,"types":[]},{"text":"impl StructuralEq for TransactionDetails","synthetic":false,"types":[]},{"text":"impl StructuralEq for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl StructuralEq for SignerId","synthetic":false,"types":[]},{"text":"impl StructuralEq for SignerError","synthetic":false,"types":[]},{"text":"impl StructuralEq for SignerOrdering","synthetic":false,"types":[]},{"text":"impl StructuralEq for TxOrdering","synthetic":false,"types":[]},{"text":"impl StructuralEq for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralPartialEq.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralPartialEq.js index 859231d2c6..76d66b9984 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralPartialEq.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.StructuralPartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl StructuralPartialEq for Capability","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for Condition","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for ScriptType","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for FeeRate","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for UTXO","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for TransactionDetails","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for SignerId","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for SignerError","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for SignerOrdering","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for TxOrdering","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for ChangeSpendPolicy","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl StructuralPartialEq for Capability","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for Condition","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for ScriptContextEnum","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for KeychainKind","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for FeeRate","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for UTXO","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for TransactionDetails","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for AddressValidatorError","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for SignerId","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for SignerError","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for SignerOrdering","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for TxOrdering","synthetic":false,"types":[]},{"text":"impl StructuralPartialEq for ChangeSpendPolicy","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Sync.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Sync.js index 366ad18c24..a66b5513b1 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Sync.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Sync.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Sync for Error","synthetic":true,"types":[]},{"text":"impl Sync for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for EsploraError","synthetic":true,"types":[]},{"text":"impl Sync for Mempool","synthetic":true,"types":[]},{"text":"impl Sync for Peer","synthetic":true,"types":[]},{"text":"impl Sync for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Sync for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Sync for Capability","synthetic":true,"types":[]},{"text":"impl Sync for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for NoopProgress","synthetic":true,"types":[]},{"text":"impl Sync for LogProgress","synthetic":true,"types":[]},{"text":"impl !Sync for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !Sync for AnyBatch","synthetic":true,"types":[]},{"text":"impl Sync for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Sync for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !Sync for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Sync for Error","synthetic":true,"types":[]},{"text":"impl Sync for PKOrF","synthetic":true,"types":[]},{"text":"impl Sync for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Sync for Satisfaction","synthetic":true,"types":[]},{"text":"impl Sync for Policy","synthetic":true,"types":[]},{"text":"impl Sync for Condition","synthetic":true,"types":[]},{"text":"impl Sync for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Sync for P2PKH<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for P2WPKH_P2SH<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for P2WPKH<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP44<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP44Public<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP49<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP49Public<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP84<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP84Public<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Sync for DescriptorKey<Ctx> where
    Ctx: Sync, 
","synthetic":true,"types":[]},{"text":"impl Sync for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Sync for GeneratedKey<K, Ctx> where
    Ctx: Sync,
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl Sync for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Sync for KeyError","synthetic":true,"types":[]},{"text":"impl Sync for ScriptType","synthetic":true,"types":[]},{"text":"impl Sync for FeeRate","synthetic":true,"types":[]},{"text":"impl Sync for UTXO","synthetic":true,"types":[]},{"text":"impl Sync for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Sync for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Sync for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Sync for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Sync for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Sync for WalletExport","synthetic":true,"types":[]},{"text":"impl Sync for SignerId","synthetic":true,"types":[]},{"text":"impl Sync for SignerError","synthetic":true,"types":[]},{"text":"impl Sync for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Sync for SignersContainer","synthetic":true,"types":[]},{"text":"impl Sync for CreateTx","synthetic":true,"types":[]},{"text":"impl Sync for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Sync for TxBuilder<D, Cs, Ctx> where
    Cs: Sync,
    Ctx: Sync,
    D: Sync, 
","synthetic":true,"types":[]},{"text":"impl Sync for TxOrdering","synthetic":true,"types":[]},{"text":"impl Sync for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !Sync for Wallet<B, D>","synthetic":true,"types":[]}]; +implementors["bdk"] = [{"text":"impl Sync for Error","synthetic":true,"types":[]},{"text":"impl Sync for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for EsploraError","synthetic":true,"types":[]},{"text":"impl Sync for Mempool","synthetic":true,"types":[]},{"text":"impl Sync for Peer","synthetic":true,"types":[]},{"text":"impl Sync for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Sync for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Sync for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Sync for Capability","synthetic":true,"types":[]},{"text":"impl Sync for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Sync for NoopProgress","synthetic":true,"types":[]},{"text":"impl Sync for LogProgress","synthetic":true,"types":[]},{"text":"impl !Sync for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !Sync for AnyBatch","synthetic":true,"types":[]},{"text":"impl Sync for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Sync for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !Sync for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Sync for Error","synthetic":true,"types":[]},{"text":"impl Sync for PKOrF","synthetic":true,"types":[]},{"text":"impl Sync for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Sync for Satisfaction","synthetic":true,"types":[]},{"text":"impl Sync for Policy","synthetic":true,"types":[]},{"text":"impl Sync for Condition","synthetic":true,"types":[]},{"text":"impl Sync for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Sync for P2PKH<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for P2WPKH_P2SH<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for P2WPKH<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP44<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP44Public<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP49<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP49Public<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP84<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<K> Sync for BIP84Public<K> where
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Sync for DescriptorKey<Ctx> where
    Ctx: Sync, 
","synthetic":true,"types":[]},{"text":"impl Sync for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Sync for GeneratedKey<K, Ctx> where
    Ctx: Sync,
    K: Sync, 
","synthetic":true,"types":[]},{"text":"impl Sync for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Sync for KeyError","synthetic":true,"types":[]},{"text":"impl Sync for KeychainKind","synthetic":true,"types":[]},{"text":"impl Sync for FeeRate","synthetic":true,"types":[]},{"text":"impl Sync for UTXO","synthetic":true,"types":[]},{"text":"impl Sync for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Sync for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Sync for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Sync for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Sync for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Sync for WalletExport","synthetic":true,"types":[]},{"text":"impl Sync for SignerId","synthetic":true,"types":[]},{"text":"impl Sync for SignerError","synthetic":true,"types":[]},{"text":"impl Sync for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Sync for SignersContainer","synthetic":true,"types":[]},{"text":"impl Sync for CreateTx","synthetic":true,"types":[]},{"text":"impl Sync for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Sync for TxBuilder<D, Cs, Ctx> where
    Cs: Sync,
    Ctx: Sync,
    D: Sync, 
","synthetic":true,"types":[]},{"text":"impl Sync for TxOrdering","synthetic":true,"types":[]},{"text":"impl Sync for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !Sync for Wallet<B, D>","synthetic":true,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Unpin.js b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Unpin.js index 2cbc57d793..4897f83303 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Unpin.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/core/marker/trait.Unpin.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Unpin for Error","synthetic":true,"types":[]},{"text":"impl Unpin for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for EsploraError","synthetic":true,"types":[]},{"text":"impl Unpin for Mempool","synthetic":true,"types":[]},{"text":"impl Unpin for Peer","synthetic":true,"types":[]},{"text":"impl Unpin for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Unpin for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Unpin for Capability","synthetic":true,"types":[]},{"text":"impl Unpin for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for NoopProgress","synthetic":true,"types":[]},{"text":"impl Unpin for LogProgress","synthetic":true,"types":[]},{"text":"impl Unpin for AnyDatabase","synthetic":true,"types":[]},{"text":"impl Unpin for AnyBatch","synthetic":true,"types":[]},{"text":"impl Unpin for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Unpin for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl Unpin for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Unpin for Error","synthetic":true,"types":[]},{"text":"impl Unpin for PKOrF","synthetic":true,"types":[]},{"text":"impl Unpin for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Unpin for Satisfaction","synthetic":true,"types":[]},{"text":"impl Unpin for Policy","synthetic":true,"types":[]},{"text":"impl Unpin for Condition","synthetic":true,"types":[]},{"text":"impl Unpin for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Unpin for P2PKH<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for P2WPKH_P2SH<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for P2WPKH<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP44<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP44Public<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP49<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP49Public<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP84<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP84Public<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Unpin for DescriptorKey<Ctx> where
    Ctx: Unpin, 
","synthetic":true,"types":[]},{"text":"impl Unpin for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Unpin for GeneratedKey<K, Ctx> where
    Ctx: Unpin,
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl Unpin for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Unpin for KeyError","synthetic":true,"types":[]},{"text":"impl Unpin for ScriptType","synthetic":true,"types":[]},{"text":"impl Unpin for FeeRate","synthetic":true,"types":[]},{"text":"impl Unpin for UTXO","synthetic":true,"types":[]},{"text":"impl Unpin for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Unpin for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Unpin for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Unpin for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Unpin for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Unpin for WalletExport","synthetic":true,"types":[]},{"text":"impl Unpin for SignerId","synthetic":true,"types":[]},{"text":"impl Unpin for SignerError","synthetic":true,"types":[]},{"text":"impl Unpin for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Unpin for SignersContainer","synthetic":true,"types":[]},{"text":"impl Unpin for CreateTx","synthetic":true,"types":[]},{"text":"impl Unpin for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Unpin for TxBuilder<D, Cs, Ctx> where
    Cs: Unpin,
    Ctx: Unpin,
    D: Unpin, 
","synthetic":true,"types":[]},{"text":"impl Unpin for TxOrdering","synthetic":true,"types":[]},{"text":"impl Unpin for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> Unpin for Wallet<B, D> where
    B: Unpin,
    D: Unpin, 
","synthetic":true,"types":[]}]; +implementors["bdk"] = [{"text":"impl Unpin for Error","synthetic":true,"types":[]},{"text":"impl Unpin for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for EsploraError","synthetic":true,"types":[]},{"text":"impl Unpin for Mempool","synthetic":true,"types":[]},{"text":"impl Unpin for Peer","synthetic":true,"types":[]},{"text":"impl Unpin for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl Unpin for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl Unpin for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl Unpin for Capability","synthetic":true,"types":[]},{"text":"impl Unpin for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl Unpin for NoopProgress","synthetic":true,"types":[]},{"text":"impl Unpin for LogProgress","synthetic":true,"types":[]},{"text":"impl Unpin for AnyDatabase","synthetic":true,"types":[]},{"text":"impl Unpin for AnyBatch","synthetic":true,"types":[]},{"text":"impl Unpin for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl Unpin for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl Unpin for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl Unpin for Error","synthetic":true,"types":[]},{"text":"impl Unpin for PKOrF","synthetic":true,"types":[]},{"text":"impl Unpin for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl Unpin for Satisfaction","synthetic":true,"types":[]},{"text":"impl Unpin for Policy","synthetic":true,"types":[]},{"text":"impl Unpin for Condition","synthetic":true,"types":[]},{"text":"impl Unpin for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> Unpin for P2PKH<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for P2WPKH_P2SH<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for P2WPKH<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP44<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP44Public<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP49<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP49Public<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP84<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<K> Unpin for BIP84Public<K> where
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> Unpin for DescriptorKey<Ctx> where
    Ctx: Unpin, 
","synthetic":true,"types":[]},{"text":"impl Unpin for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> Unpin for GeneratedKey<K, Ctx> where
    Ctx: Unpin,
    K: Unpin, 
","synthetic":true,"types":[]},{"text":"impl Unpin for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl Unpin for KeyError","synthetic":true,"types":[]},{"text":"impl Unpin for KeychainKind","synthetic":true,"types":[]},{"text":"impl Unpin for FeeRate","synthetic":true,"types":[]},{"text":"impl Unpin for UTXO","synthetic":true,"types":[]},{"text":"impl Unpin for TransactionDetails","synthetic":true,"types":[]},{"text":"impl Unpin for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl Unpin for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl Unpin for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl Unpin for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl Unpin for WalletExport","synthetic":true,"types":[]},{"text":"impl Unpin for SignerId","synthetic":true,"types":[]},{"text":"impl Unpin for SignerError","synthetic":true,"types":[]},{"text":"impl Unpin for SignerOrdering","synthetic":true,"types":[]},{"text":"impl Unpin for SignersContainer","synthetic":true,"types":[]},{"text":"impl Unpin for CreateTx","synthetic":true,"types":[]},{"text":"impl Unpin for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> Unpin for TxBuilder<D, Cs, Ctx> where
    Cs: Unpin,
    Ctx: Unpin,
    D: Unpin, 
","synthetic":true,"types":[]},{"text":"impl Unpin for TxOrdering","synthetic":true,"types":[]},{"text":"impl Unpin for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> Unpin for Wallet<B, D> where
    B: Unpin,
    D: Unpin, 
","synthetic":true,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/serde/de/trait.Deserialize.js b/static/docs-rs/bdk/nightly/latest/implementors/serde/de/trait.Deserialize.js index f0562e16aa..209a5d4358 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/serde/de/trait.Deserialize.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/serde/de/trait.Deserialize.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl<'de> Deserialize<'de> for AnyBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for ElectrumBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for EsploraBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for BitcoinPeerConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for CompactFiltersBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for SledDbConfiguration","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for AnyDatabaseConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for ScriptType","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for UTXO","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for TransactionDetails","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for WalletExport","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl<'de> Deserialize<'de> for AnyBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for ElectrumBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for EsploraBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for BitcoinPeerConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for CompactFiltersBlockchainConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for SledDbConfiguration","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for AnyDatabaseConfig","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for KeychainKind","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for UTXO","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for TransactionDetails","synthetic":false,"types":[]},{"text":"impl<'de> Deserialize<'de> for WalletExport","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/serde/ser/trait.Serialize.js b/static/docs-rs/bdk/nightly/latest/implementors/serde/ser/trait.Serialize.js index c9cb2c66fb..9429b901e9 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/serde/ser/trait.Serialize.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/serde/ser/trait.Serialize.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl Serialize for AnyBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for ElectrumBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for EsploraBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for BitcoinPeerConfig","synthetic":false,"types":[]},{"text":"impl Serialize for CompactFiltersBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for SledDbConfiguration","synthetic":false,"types":[]},{"text":"impl Serialize for AnyDatabaseConfig","synthetic":false,"types":[]},{"text":"impl Serialize for PKOrF","synthetic":false,"types":[]},{"text":"impl Serialize for SatisfiableItem","synthetic":false,"types":[]},{"text":"impl Serialize for Satisfaction","synthetic":false,"types":[]},{"text":"impl Serialize for Policy","synthetic":false,"types":[]},{"text":"impl Serialize for Condition","synthetic":false,"types":[]},{"text":"impl Serialize for ScriptType","synthetic":false,"types":[]},{"text":"impl Serialize for UTXO","synthetic":false,"types":[]},{"text":"impl Serialize for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Serialize for WalletExport","synthetic":false,"types":[]}]; +implementors["bdk"] = [{"text":"impl Serialize for AnyBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for ElectrumBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for EsploraBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for BitcoinPeerConfig","synthetic":false,"types":[]},{"text":"impl Serialize for CompactFiltersBlockchainConfig","synthetic":false,"types":[]},{"text":"impl Serialize for SledDbConfiguration","synthetic":false,"types":[]},{"text":"impl Serialize for AnyDatabaseConfig","synthetic":false,"types":[]},{"text":"impl Serialize for PKOrF","synthetic":false,"types":[]},{"text":"impl Serialize for SatisfiableItem","synthetic":false,"types":[]},{"text":"impl Serialize for Satisfaction","synthetic":false,"types":[]},{"text":"impl Serialize for Policy","synthetic":false,"types":[]},{"text":"impl Serialize for Condition","synthetic":false,"types":[]},{"text":"impl Serialize for KeychainKind","synthetic":false,"types":[]},{"text":"impl Serialize for UTXO","synthetic":false,"types":[]},{"text":"impl Serialize for TransactionDetails","synthetic":false,"types":[]},{"text":"impl Serialize for WalletExport","synthetic":false,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.RefUnwindSafe.js b/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.RefUnwindSafe.js index b34f182f3c..c48e9d7209 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.RefUnwindSafe.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.RefUnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl !RefUnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for EsploraError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Mempool","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for Peer","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Capability","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for NoopProgress","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for LogProgress","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for AnyBatch","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for PKOrF","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Satisfaction","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Policy","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Condition","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for P2PKH<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for P2WPKH_P2SH<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for P2WPKH<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP44<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP44Public<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP49<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP49Public<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP84<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP84Public<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> RefUnwindSafe for DescriptorKey<Ctx> where
    Ctx: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> RefUnwindSafe for GeneratedKey<K, Ctx> where
    Ctx: RefUnwindSafe,
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for KeyError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ScriptType","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for FeeRate","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for UTXO","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for TransactionDetails","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for WalletExport","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SignerId","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SignerError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SignerOrdering","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for SignersContainer","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for CreateTx","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> RefUnwindSafe for TxBuilder<D, Cs, Ctx> where
    Cs: RefUnwindSafe,
    Ctx: RefUnwindSafe,
    D: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for TxOrdering","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !RefUnwindSafe for Wallet<B, D>","synthetic":true,"types":[]}]; +implementors["bdk"] = [{"text":"impl !RefUnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for EsploraError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Mempool","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for Peer","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Capability","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for NoopProgress","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for LogProgress","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for AnyBatch","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for PKOrF","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Satisfaction","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Policy","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for Condition","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for P2PKH<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for P2WPKH_P2SH<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for P2WPKH<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP44<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP44Public<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP49<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP49Public<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP84<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> RefUnwindSafe for BIP84Public<K> where
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> RefUnwindSafe for DescriptorKey<Ctx> where
    Ctx: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> RefUnwindSafe for GeneratedKey<K, Ctx> where
    Ctx: RefUnwindSafe,
    K: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for KeyError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for KeychainKind","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for FeeRate","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for UTXO","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for TransactionDetails","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for WalletExport","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SignerId","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SignerError","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for SignerOrdering","synthetic":true,"types":[]},{"text":"impl !RefUnwindSafe for SignersContainer","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for CreateTx","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> RefUnwindSafe for TxBuilder<D, Cs, Ctx> where
    Cs: RefUnwindSafe,
    Ctx: RefUnwindSafe,
    D: RefUnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for TxOrdering","synthetic":true,"types":[]},{"text":"impl RefUnwindSafe for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !RefUnwindSafe for Wallet<B, D>","synthetic":true,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.UnwindSafe.js b/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.UnwindSafe.js index 4223c8af15..a18b454332 100644 --- a/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.UnwindSafe.js +++ b/static/docs-rs/bdk/nightly/latest/implementors/std/panic/trait.UnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["bdk"] = [{"text":"impl !UnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for EsploraError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Mempool","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for Peer","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl UnwindSafe for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Capability","synthetic":true,"types":[]},{"text":"impl UnwindSafe for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for NoopProgress","synthetic":true,"types":[]},{"text":"impl UnwindSafe for LogProgress","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for AnyBatch","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl UnwindSafe for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl UnwindSafe for PKOrF","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Satisfaction","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Policy","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Condition","synthetic":true,"types":[]},{"text":"impl UnwindSafe for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for P2PKH<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for P2WPKH_P2SH<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for P2WPKH<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP44<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP44Public<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP49<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP49Public<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP84<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP84Public<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> UnwindSafe for DescriptorKey<Ctx> where
    Ctx: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> UnwindSafe for GeneratedKey<K, Ctx> where
    Ctx: UnwindSafe,
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl UnwindSafe for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl UnwindSafe for KeyError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ScriptType","synthetic":true,"types":[]},{"text":"impl UnwindSafe for FeeRate","synthetic":true,"types":[]},{"text":"impl UnwindSafe for UTXO","synthetic":true,"types":[]},{"text":"impl UnwindSafe for TransactionDetails","synthetic":true,"types":[]},{"text":"impl UnwindSafe for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl UnwindSafe for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl UnwindSafe for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl UnwindSafe for WalletExport","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SignerId","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SignerError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SignerOrdering","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for SignersContainer","synthetic":true,"types":[]},{"text":"impl UnwindSafe for CreateTx","synthetic":true,"types":[]},{"text":"impl UnwindSafe for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> UnwindSafe for TxBuilder<D, Cs, Ctx> where
    Cs: UnwindSafe,
    Ctx: UnwindSafe,
    D: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl UnwindSafe for TxOrdering","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !UnwindSafe for Wallet<B, D>","synthetic":true,"types":[]}]; +implementors["bdk"] = [{"text":"impl !UnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for AnyBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for AnyBlockchainConfig","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ElectrumBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ElectrumBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for EsploraBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for EsploraBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for EsploraError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Mempool","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for Peer","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for CompactFiltersBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for BitcoinPeerConfig","synthetic":true,"types":[]},{"text":"impl UnwindSafe for CompactFiltersBlockchainConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for CompactFiltersError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Capability","synthetic":true,"types":[]},{"text":"impl UnwindSafe for OfflineBlockchain","synthetic":true,"types":[]},{"text":"impl UnwindSafe for NoopProgress","synthetic":true,"types":[]},{"text":"impl UnwindSafe for LogProgress","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for AnyDatabase","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for AnyBatch","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SledDbConfiguration","synthetic":true,"types":[]},{"text":"impl UnwindSafe for AnyDatabaseConfig","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for MemoryDatabase","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Error","synthetic":true,"types":[]},{"text":"impl UnwindSafe for PKOrF","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SatisfiableItem","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Satisfaction","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Policy","synthetic":true,"types":[]},{"text":"impl UnwindSafe for Condition","synthetic":true,"types":[]},{"text":"impl UnwindSafe for PolicyError","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for P2PKH<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for P2WPKH_P2SH<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for P2WPKH<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP44<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP44Public<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP49<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP49Public<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP84<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<K> UnwindSafe for BIP84Public<K> where
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl<Ctx> UnwindSafe for DescriptorKey<Ctx> where
    Ctx: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ScriptContextEnum","synthetic":true,"types":[]},{"text":"impl<K, Ctx> UnwindSafe for GeneratedKey<K, Ctx> where
    Ctx: UnwindSafe,
    K: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl UnwindSafe for PrivateKeyGenerateOptions","synthetic":true,"types":[]},{"text":"impl UnwindSafe for KeyError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for KeychainKind","synthetic":true,"types":[]},{"text":"impl UnwindSafe for FeeRate","synthetic":true,"types":[]},{"text":"impl UnwindSafe for UTXO","synthetic":true,"types":[]},{"text":"impl UnwindSafe for TransactionDetails","synthetic":true,"types":[]},{"text":"impl UnwindSafe for AddressValidatorError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for CoinSelectionResult","synthetic":true,"types":[]},{"text":"impl UnwindSafe for LargestFirstCoinSelection","synthetic":true,"types":[]},{"text":"impl UnwindSafe for BranchAndBoundCoinSelection","synthetic":true,"types":[]},{"text":"impl UnwindSafe for WalletExport","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SignerId","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SignerError","synthetic":true,"types":[]},{"text":"impl UnwindSafe for SignerOrdering","synthetic":true,"types":[]},{"text":"impl !UnwindSafe for SignersContainer","synthetic":true,"types":[]},{"text":"impl UnwindSafe for CreateTx","synthetic":true,"types":[]},{"text":"impl UnwindSafe for BumpFee","synthetic":true,"types":[]},{"text":"impl<D, Cs, Ctx> UnwindSafe for TxBuilder<D, Cs, Ctx> where
    Cs: UnwindSafe,
    Ctx: UnwindSafe,
    D: UnwindSafe, 
","synthetic":true,"types":[]},{"text":"impl UnwindSafe for TxOrdering","synthetic":true,"types":[]},{"text":"impl UnwindSafe for ChangeSpendPolicy","synthetic":true,"types":[]},{"text":"impl<B, D> !UnwindSafe for Wallet<B, D>","synthetic":true,"types":[]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/search-index.js b/static/docs-rs/bdk/nightly/latest/search-index.js index 617779bc8c..69bfd914aa 100644 --- a/static/docs-rs/bdk/nightly/latest/search-index.js +++ b/static/docs-rs/bdk/nightly/latest/search-index.js @@ -1,4 +1,4 @@ var searchIndex = JSON.parse('{\ -"bdk":{"doc":"A modern, lightweight, descriptor-based wallet library …","i":[[0,"blockchain","bdk","Blockchain backends",null,null],[0,"any","bdk::blockchain","Runtime-checked blockchain types",null,null],[4,"AnyBlockchain","bdk::blockchain::any","Type that can contain any of the [Blockchain] types …",null,null],[13,"Electrum","","",0,null],[13,"Esplora","","",0,null],[13,"CompactFilters","","",0,null],[4,"AnyBlockchainConfig","","Type that can contain any of the blockchain …",null,null],[13,"Electrum","","",1,null],[13,"Esplora","","",1,null],[13,"CompactFilters","","",1,null],[0,"electrum","bdk::blockchain","Electrum",null,null],[3,"ElectrumBlockchain","bdk::blockchain::electrum","Wrapper over an Electrum Client that implements the …",null,null],[3,"ElectrumBlockchainConfig","","Configuration for an [ElectrumBlockchain]",null,null],[12,"url","","URL of the Electrum server (such as ElectrumX, Esplora, …",2,null],[12,"socks5","","URL of the socks5 proxy server or a Tor service",2,null],[12,"retry","","Request retry count",2,null],[12,"timeout","","Request timeout (seconds)",2,null],[0,"esplora","bdk::blockchain","Esplora",null,null],[3,"EsploraBlockchain","bdk::blockchain::esplora","Structure that implements the logic to sync with Esplora",null,null],[11,"new","","Create a new instance of the client from a base URL",3,[[["option",4]]]],[3,"EsploraBlockchainConfig","","Configuration for an [EsploraBlockchain]",null,null],[12,"base_url","","Base URL of the esplora service",4,null],[12,"concurrency","","Number of parallel requests sent to the esplora service …",4,null],[4,"EsploraError","","Errors that can happen during a sync with […",null,null],[13,"Reqwest","","Error with the HTTP call",5,null],[13,"Parsing","","Invalid number returned",5,null],[13,"BitcoinEncoding","","Invalid Bitcoin data returned",5,null],[13,"Hex","","Invalid Hex data returned",5,null],[13,"TransactionNotFound","","Transaction not found",5,null],[13,"HeaderHeightNotFound","","Header height not found",5,null],[13,"HeaderHashNotFound","","Header hash not found",5,null],[0,"compact_filters","bdk::blockchain","Compact Filters",null,null],[3,"Mempool","bdk::blockchain::compact_filters","Container for unconfirmed, but valid Bitcoin transactions",null,null],[3,"Peer","","A Bitcoin peer",null,null],[3,"CompactFiltersBlockchain","","Structure implementing the required blockchain traits",null,null],[11,"new","","Construct a new instance given a list of peers, a path to …",6,[[["asref",8],["option",4],["peer",3],["vec",3],["path",3]],[["result",4],["compactfilterserror",4]]]],[3,"BitcoinPeerConfig","","Data to connect to a Bitcoin P2P peer",null,null],[12,"address","","Peer address such as 127.0.0.1:18333",7,null],[12,"socks5","","Optional socks5 proxy",7,null],[12,"socks5_credentials","","Optional socks5 proxy credentials",7,null],[3,"CompactFiltersBlockchainConfig","","Configuration for a [CompactFiltersBlockchain]",null,null],[12,"peers","","List of peers to try to connect to for asking headers and …",8,null],[12,"network","","Network used",8,null],[12,"storage_dir","","Storage dir to save partially downloaded headers and full …",8,null],[12,"skip_blocks","","Optionally skip initial skip_blocks blocks (default: 0)",8,null],[4,"CompactFiltersError","","An error that can occur during sync with a […",null,null],[13,"InvalidResponse","","A peer sent an invalid or unexpected response",9,null],[13,"InvalidHeaders","","The headers returned are invalid",9,null],[13,"InvalidFilterHeader","","The compact filter headers returned are invalid",9,null],[13,"InvalidFilter","","The compact filter returned is invalid",9,null],[13,"MissingBlock","","The peer is missing a block in the valid chain",9,null],[13,"DataCorruption","","The data stored in the block filters storage are corrupted",9,null],[13,"NotConnected","","A peer is not connected",9,null],[13,"Timeout","","A peer took too long to reply to one of our messages",9,null],[13,"NoPeers","","No peers have been specified",9,null],[13,"DB","","Internal database error",9,null],[13,"IO","","Internal I/O error",9,null],[13,"BIP158","","Invalid BIP158 filter",9,null],[13,"Time","","Internal system time error",9,null],[13,"Global","","Wrapper for [crate::error::Error]",9,null],[4,"Capability","bdk::blockchain","Capabilities that can be supported by a [Blockchain] …",null,null],[13,"FullHistory","","Can recover the full history of a wallet and not only the …",10,null],[13,"GetAnyTx","","Can fetch any historical transaction given its txid",10,null],[13,"AccurateFees","","Can compute accurate fees for the transactions found …",10,null],[8,"BlockchainMarker","","Marker trait for a blockchain backend",null,null],[3,"OfflineBlockchain","","Type that only implements [BlockchainMarker] and is …",null,null],[8,"Blockchain","","Trait that defines the actions that must be supported by …",null,null],[10,"get_capabilities","","Return the set of [Capability] supported by this backend",11,[[],[["hashset",3],["capability",4]]]],[10,"setup","","Setup the backend and populate the internal database for …",11,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"sync","","Populate the internal database with transactions and UTXOs",11,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[10,"get_tx","","Fetch a transaction from the blockchain given its txid",11,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"broadcast","","Broadcast a transaction",11,[[["transaction",3]],[["result",4],["error",4]]]],[10,"get_height","","Return the current height",11,[[],[["error",4],["result",4]]]],[10,"estimate_fee","","Estimate the fee rate required to confirm a transaction …",11,[[],[["error",4],["result",4],["feerate",3]]]],[8,"ConfigurableBlockchain","","Trait for [Blockchain] types that can be created given a …",null,null],[16,"Config","","Type that contains the configuration",12,null],[10,"from_config","","Create a new instance given a configuration",12,[[],[["result",4],["error",4]]]],[6,"ProgressData","","Data sent with a progress update over a [channel]",null,null],[8,"Progress","","Trait for types that can receive and process progress …",null,null],[10,"update","","Send a new progress update",13,[[["option",4],["string",3]],[["result",4],["error",4]]]],[5,"progress","","Shortcut to create a [channel] (pair of [Sender] and […",null,[[]]],[3,"NoopProgress","","Type that implements [Progress] and drops every update …",null,null],[5,"noop_progress","","Create a new instance of [NoopProgress]",null,[[],["noopprogress",3]]],[3,"LogProgress","","Type that implements [Progress] and logs at level INFO …",null,null],[5,"log_progress","","Create a nwe instance of [LogProgress]",null,[[],["logprogress",3]]],[0,"database","bdk","Database types",null,null],[0,"any","bdk::database","Runtime-checked database types",null,null],[4,"AnyDatabase","bdk::database::any","Type that can contain any of the [Database] types defined …",null,null],[13,"Memory","","",14,null],[13,"Sled","","",14,null],[4,"AnyBatch","","Type that contains any of the [BatchDatabase::Batch] …",null,null],[13,"Memory","","",15,null],[13,"Sled","","",15,null],[3,"SledDbConfiguration","","Configuration type for a [sled::Tree] database",null,null],[12,"path","","Main directory of the db",16,null],[12,"tree_name","","Name of the database tree, a separated namespace for the …",16,null],[4,"AnyDatabaseConfig","","Type that can contain any of the database configurations …",null,null],[13,"Memory","","Memory database has no config",17,null],[13,"Sled","","",17,null],[0,"memory","bdk::database","In-memory ephemeral database",null,null],[3,"MemoryDatabase","bdk::database::memory","In-memory ephemeral database",null,null],[11,"new","","Create a new empty database",18,[[]]],[8,"BatchOperations","bdk::database","Trait for operations that can be batched",null,null],[10,"set_script_pubkey","","Store a script_pubkey along with its script type and …",19,[[["script",3],["scripttype",4]],[["result",4],["error",4]]]],[10,"set_utxo","","Store a [UTXO]",19,[[["utxo",3]],[["result",4],["error",4]]]],[10,"set_raw_tx","","Store a raw transaction",19,[[["transaction",3]],[["result",4],["error",4]]]],[10,"set_tx","","Store the metadata of a transaction",19,[[["transactiondetails",3]],[["result",4],["error",4]]]],[10,"set_last_index","","Store the last derivation index for a given script type",19,[[["scripttype",4]],[["result",4],["error",4]]]],[10,"del_script_pubkey_from_path","","Delete a script_pubkey given the script type and its …",19,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[10,"del_path_from_script_pubkey","","Delete the data related to a specific script_pubkey, …",19,[[["script",3]],[["result",4],["error",4],["option",4]]]],[10,"del_utxo","","Delete a [UTXO] given its [OutPoint]",19,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"del_raw_tx","","Delete a raw transaction given its [Txid]",19,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"del_tx","","Delete the metadata of a transaction and optionally the …",19,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"del_last_index","","Delete the last derivation index for a script type",19,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[8,"Database","","Trait for reading data from a database",null,null],[10,"check_descriptor_checksum","","Read and checks the descriptor checksum for a given …",20,[[["scripttype",4],["asref",8]],[["result",4],["error",4]]]],[10,"iter_script_pubkeys","","Return the list of script_pubkeys",20,[[["option",4],["scripttype",4]],[["vec",3],["error",4],["result",4]]]],[10,"iter_utxos","","Return the list of [UTXO]s",20,[[],[["error",4],["result",4],["vec",3]]]],[10,"iter_raw_txs","","Return the list of raw transactions",20,[[],[["error",4],["vec",3],["result",4]]]],[10,"iter_txs","","Return the list of transactions metadata",20,[[],[["result",4],["vec",3],["error",4]]]],[10,"get_script_pubkey_from_path","","Fetch a script_pubkey given the script type and child …",20,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[10,"get_path_from_script_pubkey","","Fetch the script type and child number of a given …",20,[[["script",3]],[["result",4],["error",4],["option",4]]]],[10,"get_utxo","","Fetch a [UTXO] given its [OutPoint]",20,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"get_raw_tx","","Fetch a raw transaction given its [Txid]",20,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"get_tx","","Fetch the transaction metadata and optionally also the …",20,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"get_last_index","","Return the last defivation index for a script type",20,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[10,"increment_last_index","","Increment the last derivation index for a script type and …",20,[[["scripttype",4]],[["error",4],["result",4]]]],[8,"BatchDatabase","","Trait for a database that supports batch operations",null,null],[16,"Batch","","Container for the operations",21,null],[10,"begin_batch","","Create a new batch container",21,[[]]],[10,"commit_batch","","Consume and apply a batch of operations",21,[[],[["result",4],["error",4]]]],[8,"ConfigurableDatabase","","Trait for [Database] types that can be created given a …",null,null],[16,"Config","","Type that contains the configuration",22,null],[10,"from_config","","Create a new instance given a configuration",22,[[],[["result",4],["error",4]]]],[0,"descriptor","bdk","Descriptors",null,null],[6,"KeyMap","bdk::descriptor","Alias type for a map of public key to secret key",null,null],[4,"Descriptor","","Script descriptor",null,null],[13,"Bare","","A raw scriptpubkey (including pay-to-pubkey) under Legacy …",23,null],[13,"Pk","","Pay-to-Pubkey",23,null],[13,"Pkh","","Pay-to-PubKey-Hash",23,null],[13,"Wpkh","","Pay-to-Witness-PubKey-Hash",23,null],[13,"ShWpkh","","Pay-to-Witness-PubKey-Hash inside P2SH",23,null],[13,"Sh","","Pay-to-ScriptHash with Legacy context",23,null],[13,"Wsh","","Pay-to-Witness-ScriptHash with Segwitv0 context",23,null],[13,"ShWsh","","P2SH-P2WSH with Segwitv0 context",23,null],[13,"ShSortedMulti","","Sortedmulti under P2SH",23,null],[13,"WshSortedMulti","","Sortedmulti under P2WSH",23,null],[13,"ShWshSortedMulti","","Sortedmulti under P2SH-P2WSH",23,null],[4,"Legacy","","Legacy ScriptContext To be used as P2SH scripts For …",null,null],[3,"Miniscript","","Top-level script AST type",null,null],[12,"node","","A node in the Abstract Syntax Tree(",24,null],[12,"ty","","The correctness and malleability type information for the …",24,null],[12,"ext","","Additional information helpful for extra analysis.",24,null],[8,"MiniscriptKey","","Public key trait which can be converted to Hash type",null,null],[11,"is_uncompressed","","Check if the publicKey is uncompressed. The default …",25,[[]]],[16,"Hash","","The associated Hash type with the publicKey",25,null],[10,"to_pubkeyhash","","Converts an object to PublicHash",25,[[]]],[8,"ScriptContext","","The ScriptContext for Miniscript. Additional type …",null,null],[10,"check_terminal_non_malleable","","Depending on ScriptContext, fragments can be malleable. …",26,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","Check whether the given satisfaction is valid under the …",26,[[],[["result",4],["scriptcontexterror",4]]]],[10,"max_satisfaction_size","","Depending on script context, the size of a satifaction …",26,[[["miniscript",3]],["option",4]]],[11,"check_global_consensus_validity","","Depending on script Context, some of the Terminals might …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_policy_validity","","Depending on script Context, some of the script resource …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","Consensus rules at the Miniscript satisfaction time. It …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","Policy rules at the Miniscript satisfaction time. It is …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_validity","","Check the consensus + policy(if not disabled) rules that …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_validity","","Check the consensus + policy(if not disabled) rules …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"top_level_type_check","","Check whether the top-level is type B",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"other_top_level_checks","","Other top level checks that are context specific",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"top_level_checks","","Check top level consensus rules.",26,[[["miniscript",3]],[["result",4],["error",4]]]],[4,"Segwitv0","","Segwitv0 ScriptContext",null,null],[4,"Terminal","","All AST elements",null,null],[13,"True","","1",27,null],[13,"False","","0",27,null],[13,"PkK","","",27,null],[13,"PkH","","DUP HASH160 EQUALVERIFY",27,null],[13,"After","","n CHECKLOCKTIMEVERIFY",27,null],[13,"Older","","n CHECKSEQUENCEVERIFY",27,null],[13,"Sha256","","SIZE 32 EQUALVERIFY SHA256 EQUAL",27,null],[13,"Hash256","","SIZE 32 EQUALVERIFY HASH256 EQUAL",27,null],[13,"Ripemd160","","SIZE 32 EQUALVERIFY RIPEMD160 EQUAL",27,null],[13,"Hash160","","SIZE 32 EQUALVERIFY HASH160 EQUAL",27,null],[13,"Alt","","TOALTSTACK [E] FROMALTSTACK",27,null],[13,"Swap","","SWAP [E1]",27,null],[13,"Check","","[Kt]/[Ke] CHECKSIG",27,null],[13,"DupIf","","DUP IF [V] ENDIF",27,null],[13,"Verify","","[T] VERIFY",27,null],[13,"NonZero","","SIZE 0NOTEQUAL IF [Fn] ENDIF",27,null],[13,"ZeroNotEqual","","[X] 0NOTEQUAL",27,null],[13,"AndV","","[V] [T]/[V]/[F]/[Kt]",27,null],[13,"AndB","","[E] [W] BOOLAND",27,null],[13,"AndOr","","[various] NOTIF [various] ELSE [various] ENDIF",27,null],[13,"OrB","","[E] [W] BOOLOR",27,null],[13,"OrD","","[E] IFDUP NOTIF [T]/[E] ENDIF",27,null],[13,"OrC","","[E] NOTIF [V] ENDIF",27,null],[13,"OrI","","IF [various] ELSE [various] ENDIF",27,null],[13,"Thresh","","[E] ([W] ADD)* k EQUAL",27,null],[13,"Multi","","k ()* n CHECKMULTISIG",27,null],[8,"ToPublicKey","","Trait describing public key types which can be converted …",null,null],[10,"to_public_key","","Converts an object to a public key C represents …",28,[[],["publickey",3]]],[11,"serialized_len","","Computes the size of a public key when serialized in a …",28,[[]]],[10,"hash_to_hash160","","Converts a hashed version of the public key to a hash160 …",28,[[],["hash",3]]],[0,"checksum","","Descriptor checksum",null,null],[5,"get_checksum","bdk::descriptor::checksum","Compute the checksum of a descriptor",null,[[],[["string",3],["result",4],["error",4]]]],[0,"error","bdk::descriptor","Descriptor errors",null,null],[4,"Error","bdk::descriptor::error","Errors related to the parsing and usage of descriptors",null,null],[13,"InvalidHDKeyPath","","Invalid HD Key path, such as having a wildcard but a …",29,null],[13,"Key","","Error thrown while working with keys",29,null],[13,"Policy","","Error while extracting and manipulating policies",29,null],[13,"InvalidDescriptorCharacter","","Invalid character found in the descriptor checksum",29,null],[13,"BIP32","","BIP32 error",29,null],[13,"Base58","","Error during base58 decoding",29,null],[13,"PK","","Key-related error",29,null],[13,"Miniscript","","Miniscript error",29,null],[13,"Hex","","Hex decoding error",29,null],[0,"policy","bdk::descriptor","Descriptor policy",null,null],[3,"PKOrF","bdk::descriptor::policy","Raw public key or extended key fingerprint",null,null],[4,"SatisfiableItem","","An item that needs to be satisfied",null,null],[13,"Signature","","Signature for a raw public key",30,null],[13,"SignatureKey","","Signature for an extended key fingerprint",30,null],[13,"SHA256Preimage","","SHA256 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",31,null],[13,"HASH256Preimage","bdk::descriptor::policy","Double SHA256 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",32,null],[13,"RIPEMD160Preimage","bdk::descriptor::policy","RIPEMD160 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",33,null],[13,"HASH160Preimage","bdk::descriptor::policy","SHA256 then RIPEMD160 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",34,null],[13,"AbsoluteTimelock","bdk::descriptor::policy","Absolute timeclock timestamp",30,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","The timestamp value",35,null],[13,"RelativeTimelock","bdk::descriptor::policy","Relative timelock locktime",30,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","The locktime value",36,null],[13,"Multisig","bdk::descriptor::policy","Multi-signature public keys with threshold count",30,null],[12,"keys","bdk::descriptor::policy::SatisfiableItem","The raw public key or extended key fingerprint",37,null],[12,"threshold","","The required threshold count",37,null],[13,"Thresh","bdk::descriptor::policy","Threshold items with threshold count",30,null],[12,"items","bdk::descriptor::policy::SatisfiableItem","The policy items",38,null],[12,"threshold","","The required threshold count",38,null],[11,"is_leaf","bdk::descriptor::policy","Returns whether the [SatisfiableItem] is a leaf item",30,[[]]],[11,"id","","Returns a unique id for the [SatisfiableItem]",30,[[],["string",3]]],[6,"ConditionMap","","Type for a map of sets of [Condition] items keyed by each …",null,null],[6,"FoldedConditionMap","","Type for a map of folded sets of [Condition] items keyed …",null,null],[4,"Satisfaction","","Represent if and how much a policy item is satisfied by …",null,null],[13,"Partial","","Only a partial satisfaction of some kind of threshold …",39,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",40,null],[12,"m","","Threshold",40,null],[12,"items","","The items that can be satisfied by the descriptor",40,null],[12,"sorted","","Whether the items are sorted in lexicographic order (used …",40,null],[12,"conditions","","Extra conditions that also need to be satisfied",40,null],[13,"PartialComplete","bdk::descriptor::policy","Can reach the threshold of some kind of threshold policy",39,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",41,null],[12,"m","","Threshold",41,null],[12,"items","","The items that can be satisfied by the descriptor",41,null],[12,"sorted","","Whether the items are sorted in lexicographic order (used …",41,null],[12,"conditions","","Extra conditions that also need to be satisfied",41,null],[13,"Complete","bdk::descriptor::policy","Can satisfy the policy item",39,null],[12,"condition","bdk::descriptor::policy::Satisfaction","Extra conditions that also need to be satisfied",42,null],[13,"None","bdk::descriptor::policy","Cannot satisfy or contribute to the policy item",39,null],[11,"is_leaf","","Returns whether the [Satisfaction] is a leaf item",39,[[]]],[3,"Policy","","Descriptor spending policy",null,null],[12,"id","","Identifier for this policy node",43,null],[12,"item","","Type of this policy node",43,null],[12,"satisfaction","","How a much given PSBT already satisfies this polcy node …",43,null],[12,"contribution","","How the wallet\'s descriptor can satisfy this policy node",43,null],[3,"Condition","","An extra condition that must be satisfied but that is out …",null,null],[12,"csv","","Optional CheckSequenceVerify condition",44,null],[12,"timelock","","Optional timelock condition",44,null],[11,"is_null","","Returns true if there are no extra conditions to verify",44,[[]]],[4,"PolicyError","","Errors that can happen while extracting and manipulating …",null,null],[13,"NotEnoughItemsSelected","","Not enough items are selected to satisfy a […",45,null],[13,"TooManyItemsSelected","","Too many items are selected to satisfy a […",45,null],[13,"IndexOutOfRange","","Index out of range for an item to satisfy a […",45,null],[13,"AddOnLeaf","","Can not add to an item that is [Satisfaction::None] or […",45,null],[13,"AddOnPartialComplete","","Can not add to an item that is […",45,null],[13,"MixedTimelockUnits","","Can not merge CSV or timelock values unless both are less …",45,null],[13,"IncompatibleConditions","","Incompatible conditions (not currently used)",45,null],[11,"requires_path","","Return whether or not a specific path in the policy tree …",43,[[]]],[11,"get_condition","","Return the conditions that are set by the spending policy …",43,[[["btreemap",3]],[["condition",3],["policyerror",4],["result",4]]]],[0,"template","bdk::descriptor","Descriptor templates",null,null],[6,"DescriptorTemplateOut","bdk::descriptor::template","Type alias for the return type of [DescriptorTemplate], …",null,null],[8,"DescriptorTemplate","","Trait for descriptor templates that can be built into a …",null,null],[10,"build","","Build the complete descriptor",46,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[3,"P2PKH","","P2PKH template. Expands to a descriptor pkh(key)",null,null],[12,"0","","",47,null],[3,"P2WPKH_P2SH","","P2WPKH-P2SH template. Expands to a descriptor …",null,null],[12,"0","","",48,null],[3,"P2WPKH","","P2WPKH template. Expands to a descriptor wpkh(key)",null,null],[12,"0","","",49,null],[3,"BIP44","","BIP44 template. Expands to pkh(key/44\'/0\'/0\'/{0,1}/*)",null,null],[12,"0","","",50,null],[12,"1","","",50,null],[3,"BIP44Public","","BIP44 public template. Expands to pkh(key/{0,1}/*)",null,null],[12,"0","","",51,null],[12,"1","","",51,null],[12,"2","","",51,null],[3,"BIP49","","BIP49 template. Expands to sh(wpkh(key/49\'/0\'/0\'/{0,1}/*))",null,null],[12,"0","","",52,null],[12,"1","","",52,null],[3,"BIP49Public","","BIP49 public template. Expands to sh(wpkh(key/{0,1}/*))",null,null],[12,"0","","",53,null],[12,"1","","",53,null],[12,"2","","",53,null],[3,"BIP84","","BIP84 template. Expands to wpkh(key/84\'/0\'/0\'/{0,1}/*)",null,null],[12,"0","","",54,null],[12,"1","","",54,null],[3,"BIP84Public","","BIP84 public template. Expands to wpkh(key/{0,1}/*)",null,null],[12,"0","","",55,null],[12,"1","","",55,null],[12,"2","","",55,null],[6,"ExtendedDescriptor","bdk::descriptor","Alias for a [Descriptor] that can contain extended keys …",null,null],[6,"HDKeyPaths","","Alias for the type of maps that represent derivation …",null,null],[8,"ToWalletDescriptor","","Trait for types which can be converted into an […",null,null],[10,"to_wallet_descriptor","","Convert to wallet descriptor",56,[[["network",4]],[["result",4],["keyerror",4]]]],[8,"ExtractPolicy","","Trait implemented on [Descriptor]s to add a method to …",null,null],[10,"extract_policy","","Extract the spending [policy]",57,[[["signerscontainer",3],["secp256k1",3]],[["option",4],["error",4],["result",4]]]],[0,"keys","bdk","Key formats",null,null],[4,"DescriptorPublicKey","bdk::keys","The MiniscriptKey corresponding to Descriptors. This can …",null,null],[13,"SinglePub","","Single Public Key",58,null],[13,"XPub","","Xpub",58,null],[4,"DescriptorSecretKey","","A Secret Key that can be either a single key or an Xprv",null,null],[13,"SinglePriv","","Single Secret Key",59,null],[13,"XPrv","","Xprv",59,null],[3,"DescriptorSinglePriv","","A Single Descriptor Secret Key with optional origin …",null,null],[12,"origin","","Origin information",60,null],[12,"key","","The key",60,null],[3,"DescriptorSinglePub","","A Single Descriptor Key with optional origin information",null,null],[12,"origin","","Origin information",61,null],[12,"key","","The key",61,null],[3,"SortedMultiVec","","Contents of a \\\"sortedmulti\\\" descriptor",null,null],[12,"k","","signatures required",62,null],[12,"pks","","public keys inside sorted Multi",62,null],[8,"ScriptContext","","The ScriptContext for Miniscript. Additional type …",null,null],[10,"check_terminal_non_malleable","","Depending on ScriptContext, fragments can be malleable. …",26,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","Check whether the given satisfaction is valid under the …",26,[[],[["result",4],["scriptcontexterror",4]]]],[10,"max_satisfaction_size","","Depending on script context, the size of a satifaction …",26,[[["miniscript",3]],["option",4]]],[11,"check_global_consensus_validity","","Depending on script Context, some of the Terminals might …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_policy_validity","","Depending on script Context, some of the script resource …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","Consensus rules at the Miniscript satisfaction time. It …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","Policy rules at the Miniscript satisfaction time. It is …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_validity","","Check the consensus + policy(if not disabled) rules that …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_validity","","Check the consensus + policy(if not disabled) rules …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"top_level_type_check","","Check whether the top-level is type B",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"other_top_level_checks","","Other top level checks that are context specific",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"top_level_checks","","Check top level consensus rules.",26,[[["miniscript",3]],[["result",4],["error",4]]]],[0,"bip39","","BIP-0039",null,null],[6,"MnemonicWithPassphrase","bdk::keys::bip39","Type for a BIP39 mnemonic with an optional passphrase",null,null],[6,"ValidNetworks","bdk::keys","Set of valid networks for a key",null,null],[5,"any_network","","Create a set containing mainnet, testnet and regtest",null,[[],["validnetworks",6]]],[5,"mainnet_network","","Create a set only containing mainnet",null,[[],["validnetworks",6]]],[5,"test_networks","","Create a set containing testnet and regtest",null,[[],["validnetworks",6]]],[5,"merge_networks","","Compute the intersection of two sets",null,[[["validnetworks",6]],["validnetworks",6]]],[4,"DescriptorKey","","Container for public or secret keys",null,null],[11,"from_public","","Create an instance given a public key and a set of valid …",63,[[["descriptorpublickey",4],["validnetworks",6]]]],[11,"from_secret","","Create an instance given a secret key and a set of valid …",63,[[["descriptorsecretkey",4],["validnetworks",6]]]],[11,"override_valid_networks","","Override the computed set of valid networks",63,[[["validnetworks",6]]]],[4,"ScriptContextEnum","","Enum representation of the known valid [ScriptContext]s",null,null],[13,"Legacy","","Legacy scripts",64,null],[13,"Segwitv0","","Segwitv0 scripts",64,null],[11,"is_legacy","","Returns whether the script context is […",64,[[]]],[11,"is_segwit_v0","","Returns whether the script context is […",64,[[]]],[8,"ExtScriptContext","","Trait that adds extra useful methods to [ScriptContext]s",null,null],[10,"as_enum","","Returns the [ScriptContext] as a [ScriptContextEnum]",65,[[],["scriptcontextenum",4]]],[11,"is_legacy","","Returns whether the script context is Legacy",65,[[]]],[11,"is_segwit_v0","","Returns whether the script context is Segwitv0",65,[[]]],[8,"ToDescriptorKey","","Trait for objects that can be turned into a public or …",null,null],[10,"to_descriptor_key","","Turn the key into a [DescriptorKey] within the requested […",66,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[8,"DerivableKey","","Trait for keys that can be derived.",null,null],[10,"add_metadata","","Add a extra metadata, consume self and turn it into a […",67,[[["option",4],["keysource",6],["derivationpath",3]],[["result",4],["descriptorkey",4],["keyerror",4]]]],[3,"GeneratedKey","","Output of a [GeneratableKey] key generation",null,null],[11,"into_key","","Consumes self and returns the key",68,[[]]],[8,"GeneratableKey","","Trait for keys that can be generated",null,null],[16,"Entropy","","Type specifying the amount of entropy required e.g. [u8;32…",69,null],[16,"Options","","Extra options required by the generate_with_entropy",69,null],[16,"Error","","Returned error in case of failure",69,null],[10,"generate_with_entropy","","Generate a key given the extra options and the entropy",69,[[],[["result",4],["generatedkey",3]]]],[11,"generate","","Generate a key given the options with a random entropy",69,[[],[["result",4],["generatedkey",3]]]],[8,"GeneratableDefaultOptions","","Trait that allows generating a key with the default …",null,null],[11,"generate_with_entropy_default","","Generate a key with the default options and a given …",70,[[],[["result",4],["generatedkey",3]]]],[11,"generate_default","","Generate a key with the default options and a random …",70,[[],[["result",4],["generatedkey",3]]]],[3,"PrivateKeyGenerateOptions","","Options for generating a [PrivateKey]",null,null],[12,"compressed","","Whether the generated key should be \\\"compressed\\\" or not",71,null],[4,"KeyError","","Errors thrown while working with keys",null,null],[13,"InvalidScriptContext","","The key cannot exist in the given script context",72,null],[13,"InvalidNetwork","","The key is not valid for the given network",72,null],[13,"InvalidChecksum","","The key has an invalid checksum",72,null],[13,"Message","","Custom error message",72,null],[13,"BIP32","","",72,null],[13,"Miniscript","","",72,null],[0,"wallet","bdk","Wallet",null,null],[0,"address_validator","bdk::wallet","Address validation callbacks",null,null],[4,"AddressValidatorError","bdk::wallet::address_validator","Errors that can be returned to fail the validation of an …",null,null],[13,"UserRejected","","",73,null],[13,"ConnectionError","","",73,null],[13,"TimeoutError","","",73,null],[13,"InvalidScript","","",73,null],[13,"Message","","",73,null],[8,"AddressValidator","","Trait to build address validators",null,null],[10,"validate","","Validate or inspect an address",74,[[["scripttype",4],["hdkeypaths",6],["script",3]],[["result",4],["addressvalidatorerror",4]]]],[0,"coin_selection","bdk::wallet","Coin selection",null,null],[6,"DefaultCoinSelectionAlgorithm","bdk::wallet::coin_selection","Default coin selection algorithm used by TxBuilder if not …",null,null],[17,"TXIN_BASE_WEIGHT","","",null,null],[3,"CoinSelectionResult","","Result of a successful coin selection",null,null],[12,"selected","","List of outputs selected for use as inputs",75,null],[12,"selected_amount","","Sum of the selected inputs\' value",75,null],[12,"fee_amount","","Total fee amount in satoshi",75,null],[8,"CoinSelectionAlgorithm","","Trait for generalized coin selection algorithms",null,null],[10,"coin_select","","Perform the coin selection",76,[[["vec",3],["feerate",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[3,"LargestFirstCoinSelection","","Simple and dumb coin selection",null,null],[3,"BranchAndBoundCoinSelection","","Branch and bound coin selection",null,null],[11,"new","","",77,[[]]],[0,"export","bdk::wallet","Wallet export",null,null],[3,"WalletExport","bdk::wallet::export","Structure that contains the export of a wallet",null,null],[12,"blockheight","","Earliest block to rescan when looking for the wallet\'s …",78,null],[12,"label","","Arbitrary label for the wallet",78,null],[11,"export_wallet","","Export a wallet",78,[[["wallet",3]],["result",4]]],[11,"descriptor","","Return the external descriptor",78,[[],["string",3]]],[11,"change_descriptor","","Return the internal descriptor, if present",78,[[],[["option",4],["string",3]]]],[0,"signer","bdk::wallet","Generalized signers",null,null],[4,"SignerId","bdk::wallet::signer","Identifier of a signer in the SignersContainers. Used as …",null,null],[13,"PkHash","","",79,null],[13,"Fingerprint","","",79,null],[4,"SignerError","","Signing error",null,null],[13,"MissingKey","","The private key is missing for the required public key",80,null],[13,"InvalidKey","","The private key in use has the right fingerprint but …",80,null],[13,"UserCanceled","","The user canceled the operation",80,null],[13,"InputIndexOutOfRange","","Input index is out of range",80,null],[13,"MissingNonWitnessUtxo","","The non_witness_utxo field of the transaction is required …",80,null],[13,"InvalidNonWitnessUtxo","","The non_witness_utxo specified is invalid",80,null],[13,"MissingWitnessUtxo","","The witness_utxo field of the transaction is required to …",80,null],[13,"MissingWitnessScript","","The witness_script field of the transaction is requied to …",80,null],[13,"MissingHDKeypath","","The fingerprint and derivation path are missing from the …",80,null],[8,"Signer","","Trait for signers",null,null],[10,"sign","","Sign a PSBT",81,[[["partiallysignedtransaction",3],["option",4],["secp256k1",3]],[["result",4],["signererror",4]]]],[10,"sign_whole_tx","","Return whether or not the signer signs the whole …",81,[[]]],[11,"descriptor_secret_key","","Return the secret key for the signer",81,[[],[["descriptorsecretkey",4],["option",4]]]],[3,"SignerOrdering","","Defines the order in which signers are called",null,null],[12,"0","","",82,null],[3,"SignersContainer","","Container for multiple signers",null,null],[11,"as_key_map","","",83,[[["secp256k1",3]],["keymap",6]]],[11,"new","","Default constructor",83,[[]]],[11,"add_external","","Adds an external signer to the container for the …",83,[[["signerordering",3],["arc",3],["signer",8],["signerid",4]],[["option",4],["arc",3]]]],[11,"remove","","Removes a signer from the container and returns it",83,[[["signerid",4],["signerordering",3]],[["option",4],["arc",3]]]],[11,"ids","","Returns the list of identifiers of all the signers in the …",83,[[],[["vec",3],["signerid",4]]]],[11,"signers","","Returns the list of signers in the container, sorted by …",83,[[],[["vec",3],["arc",3]]]],[11,"find","","Finds the signer with lowest ordering for a given id in …",83,[[["signerid",4]],[["option",4],["arc",3]]]],[0,"time","bdk::wallet","Cross-platform time",null,null],[5,"get_timestamp","bdk::wallet::time","Return the current timestamp in seconds",null,[[]]],[0,"tx_builder","bdk::wallet","Transaction builder",null,null],[8,"TxBuilderContext","bdk::wallet::tx_builder","Context in which the [TxBuilder] is valid",null,null],[3,"CreateTx","","Wallet::create_tx context",null,null],[3,"BumpFee","","Wallet::bump_fee context",null,null],[3,"TxBuilder","","A transaction builder",null,null],[11,"new","","Create an empty builder",84,[[]]],[11,"fee_rate","","Set a custom fee rate",84,[[["feerate",3]]]],[11,"fee_absolute","","Set an absolute fee",84,[[]]],[11,"policy_path","","Set the policy path to use while creating the transaction …",84,[[["string",3],["btreemap",3],["vec",3],["scripttype",4]]]],[11,"utxos","","Replace the internal list of utxos that must be spent …",84,[[["vec",3],["outpoint",3]]]],[11,"add_utxo","","Add a utxo to the internal list of utxos that must be …",84,[[["outpoint",3]]]],[11,"manually_selected_only","","Only spend utxos added by add_utxo and utxos.",84,[[]]],[11,"unspendable","","Replace the internal list of unspendable utxos with a new …",84,[[["vec",3],["outpoint",3]]]],[11,"add_unspendable","","Add a utxo to the internal list of unspendable utxos",84,[[["outpoint",3]]]],[11,"sighash","","Sign with a specific sig hash",84,[[["sighashtype",4]]]],[11,"ordering","","Choose the ordering for inputs and outputs of the …",84,[[["txordering",4]]]],[11,"nlocktime","","Use a specific nLockTime while creating the transaction",84,[[]]],[11,"version","","Build a transaction with a specific version",84,[[]]],[11,"do_not_spend_change","","Do not spend change outputs",84,[[]]],[11,"only_spend_change","","Only spend change outputs",84,[[]]],[11,"change_policy","","Set a specific [ChangeSpendPolicy]. See […",84,[[["changespendpolicy",4]]]],[11,"force_non_witness_utxo","","Fill-in the psbt::Input::non_witness_utxo field even if …",84,[[]]],[11,"include_output_redeem_witness_script","","Fill-in the psbt::Output::redeem_script and …",84,[[]]],[11,"add_global_xpubs","","Fill-in the PSBT_GLOBAL_XPUB field with the extended keys …",84,[[]]],[11,"drain_wallet","","Spend all the available inputs. This respects filters …",84,[[]]],[11,"coin_selection","","Choose the coin selection algorithm",84,[[["coinselectionalgorithm",8]],[["coinselectionalgorithm",8],["txbuilder",3]]]],[11,"with_recipients","","Create a builder starting from a list of recipients",84,[[["vec",3]]]],[11,"set_recipients","","Replace the recipients already added with a new list",84,[[["vec",3]]]],[11,"add_recipient","","Add a recipient to the internal list",84,[[["script",3]]]],[11,"set_single_recipient","","Set a single recipient that will get all the selected …",84,[[["script",3]]]],[11,"enable_rbf","","Enable signaling RBF",84,[[]]],[11,"enable_rbf_with_sequence","","Enable signaling RBF with a specific nSequence value",84,[[]]],[11,"maintain_single_recipient","","Bump the fees of a transaction made with …",84,[[]]],[4,"TxOrdering","","Ordering of the transaction\'s inputs and outputs",null,null],[13,"Shuffle","","Randomized (default)",85,null],[13,"Untouched","","Unchanged",85,null],[13,"BIP69Lexicographic","","BIP69 / Lexicographic",85,null],[11,"sort_tx","","",85,[[["transaction",3]]]],[4,"ChangeSpendPolicy","","Policy regarding the use of change outputs when creating …",null,null],[13,"ChangeAllowed","","Use both change and non-change outputs (default)",86,null],[13,"OnlyChange","","Only use change outputs (see [TxBuilder::only_spend_change…",86,null],[13,"ChangeForbidden","","Only use non-change outputs (see […",86,null],[8,"IsDust","bdk::wallet","Trait to check if a value is below the dust limit",null,null],[10,"is_dust","","Check whether or not a value is below dust limit",87,[[]]],[6,"OfflineWallet","","Type alias for a [Wallet] that uses [OfflineBlockchain]",null,null],[3,"Wallet","","A Bitcoin wallet",null,null],[11,"new_offline","","Create a new \\\"offline\\\" wallet",88,[[["option",4],["network",4],["towalletdescriptor",8]],[["result",4],["error",4]]]],[11,"get_new_address","","Return a newly generated address using the external …",88,[[],[["address",3],["error",4],["result",4]]]],[11,"is_mine","","Return whether or not a script is part of this wallet …",88,[[["script",3]],[["error",4],["result",4]]]],[11,"list_unspent","","Return the list of unspent outputs of this wallet",88,[[],[["error",4],["result",4],["vec",3]]]],[11,"list_transactions","","Return the list of transactions made and received by the …",88,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_balance","","Return the balance, meaning the sum of this wallet\'s …",88,[[],[["result",4],["error",4]]]],[11,"add_signer","","Add an external signer",88,[[["signer",8],["arc",3],["scripttype",4],["signerid",4],["signerordering",3]]]],[11,"add_address_validator","","Add an address validator",88,[[["arc",3],["addressvalidator",8]]]],[11,"create_tx","","Create a new transaction following the options specified …",88,[[["coinselectionalgorithm",8],["createtx",3],["txbuilder",3]],[["error",4],["result",4]]]],[11,"bump_fee","","Bump the fee of a transaction following the options …",88,[[["txid",3],["coinselectionalgorithm",8],["txbuilder",3],["bumpfee",3]],[["error",4],["result",4]]]],[11,"sign","","Sign a transaction with all the wallet\'s signers, in the …",88,[[["psbt",3],["option",4]],[["error",4],["result",4]]]],[11,"policies","","Return the spending policies for the wallet\'s descriptor",88,[[["scripttype",4]],[["option",4],["error",4],["result",4]]]],[11,"public_descriptor","","Return the \\\"public\\\" version of the wallet\'s descriptor, …",88,[[["scripttype",4]],[["result",4],["option",4],["error",4]]]],[11,"finalize_psbt","","Try to finalize a PSBT",88,[[["psbt",3],["option",4]],[["error",4],["result",4]]]],[11,"secp_ctx","","",88,[[],["secp256k1",3]]],[11,"new","","Create a new \\\"online\\\" wallet",88,[[["option",4],["network",4],["towalletdescriptor",8]],[["result",4],["error",4]]]],[11,"sync","","Sync the internal database with the blockchain",88,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"client","","Return a reference to the internal blockchain client",88,[[],["option",4]]],[11,"network","","Get the Bitcoin network the wallet is using.",88,[[],["network",4]]],[11,"broadcast","","Broadcast a transaction to the network",88,[[["transaction",3]],[["error",4],["result",4],["txid",3]]]],[4,"Error","bdk","Errors that can be thrown by the Wallet",null,null],[13,"InvalidU32Bytes","","Wrong number of bytes found when trying to convert to u32",89,null],[13,"Generic","","Generic error",89,null],[13,"ScriptDoesntHaveAddressForm","","This error is thrown when trying to convert Bare and …",89,null],[13,"SingleRecipientMultipleOutputs","","Found multiple outputs when single_recipient option has …",89,null],[13,"SingleRecipientNoInputs","","single_recipient option is selected but neither …",89,null],[13,"NoRecipients","","Cannot build a tx without recipients",89,null],[13,"NoUtxosSelected","","manually_selected_only option is selected but no utxo has …",89,null],[13,"OutputBelowDustLimit","","Output created is under the dust limit, 546 satoshis",89,null],[13,"InsufficientFunds","","Wallet\'s UTXO set is not enough to cover recipient\'s …",89,null],[13,"BnBTotalTriesExceeded","","Branch and bound coin selection possible attempts with …",89,null],[13,"BnBNoExactMatch","","Branch and bound coin selection tries to avoid needing a …",89,null],[13,"UnknownUTXO","","Happens when trying to spend an UTXO that is not in the …",89,null],[13,"TransactionNotFound","","Thrown when a tx is not found in the internal database",89,null],[13,"TransactionConfirmed","","Happens when trying to bump a transaction that is already …",89,null],[13,"IrreplaceableTransaction","","Trying to replace a tx that has a sequence >= 0xFFFFFFFE",89,null],[13,"FeeRateTooLow","","When bumping a tx the fee rate requested is lower than …",89,null],[12,"required","bdk::Error","Required fee rate (satoshi/vbyte)",90,null],[13,"FeeTooLow","bdk","When bumping a tx the absolute fee requested is lower …",89,null],[12,"required","bdk::Error","Required fee absolute value (satoshi)",91,null],[13,"MissingKeyOrigin","bdk","In order to use the TxBuilder::add_global_xpubs option …",89,null],[13,"Key","","",89,null],[13,"ChecksumMismatch","","Descriptor checksum mismatch",89,null],[13,"SpendingPolicyRequired","","Spending policy is not compatible with this ScriptType",89,null],[13,"InvalidPolicyPathError","","",89,null],[13,"Signer","","",89,null],[13,"OfflineClient","","Thrown when trying to call a method that requires a …",89,null],[13,"InvalidProgressValue","","Progress value must be between 0.0 (included) and 100.0 …",89,null],[13,"ProgressUpdateError","","Progress update error (maybe the channel has been closed)",89,null],[13,"InvalidOutpoint","","Requested outpoint doesn\'t exist in the tx (vout greater …",89,null],[13,"Descriptor","","",89,null],[13,"AddressValidator","","",89,null],[13,"Encode","","",89,null],[13,"Miniscript","","",89,null],[13,"BIP32","","",89,null],[13,"Secp256k1","","",89,null],[13,"JSON","","",89,null],[13,"Hex","","",89,null],[13,"PSBT","","",89,null],[13,"Electrum","","",89,null],[13,"Esplora","","",89,null],[13,"CompactFilters","","",89,null],[13,"Sled","","",89,null],[4,"ScriptType","","Types of script",null,null],[13,"External","","External",92,null],[13,"Internal","","Internal, usually used for change outputs",92,null],[3,"FeeRate","","Fee rate",null,null],[3,"UTXO","","A wallet unspent output",null,null],[12,"outpoint","","",93,null],[12,"txout","","",93,null],[12,"script_type","","",93,null],[3,"TransactionDetails","","A wallet transaction",null,null],[12,"transaction","","",94,null],[12,"txid","","",94,null],[12,"timestamp","","",94,null],[12,"received","","",94,null],[12,"sent","","",94,null],[12,"fees","","",94,null],[12,"height","","",94,null],[14,"descriptor","","Macro to write full descriptors with code",null,null],[14,"fragment","","Macro to write descriptor fragments with code",null,null],[11,"from","","",89,[[]]],[11,"into","","",89,[[]]],[11,"to_string","","",89,[[],["string",3]]],[11,"borrow","","",89,[[]]],[11,"borrow_mut","","",89,[[]]],[11,"try_from","","",89,[[],["result",4]]],[11,"try_into","","",89,[[],["result",4]]],[11,"type_id","","",89,[[],["typeid",3]]],[11,"vzip","","",89,[[]]],[11,"init","","",89,[[]]],[11,"deref","","",89,[[]]],[11,"deref_mut","","",89,[[]]],[11,"drop","","",89,[[]]],[11,"from","bdk::blockchain::any","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"init","","",0,[[]]],[11,"deref","","",0,[[]]],[11,"deref_mut","","",0,[[]]],[11,"drop","","",0,[[]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"init","","",1,[[]]],[11,"deref","","",1,[[]]],[11,"deref_mut","","",1,[[]]],[11,"drop","","",1,[[]]],[11,"from","bdk::blockchain::electrum","",95,[[]]],[11,"into","","",95,[[]]],[11,"borrow","","",95,[[]]],[11,"borrow_mut","","",95,[[]]],[11,"try_from","","",95,[[],["result",4]]],[11,"try_into","","",95,[[],["result",4]]],[11,"type_id","","",95,[[],["typeid",3]]],[11,"vzip","","",95,[[]]],[11,"init","","",95,[[]]],[11,"deref","","",95,[[]]],[11,"deref_mut","","",95,[[]]],[11,"drop","","",95,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"init","","",2,[[]]],[11,"deref","","",2,[[]]],[11,"deref_mut","","",2,[[]]],[11,"drop","","",2,[[]]],[11,"from","bdk::blockchain::esplora","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"init","","",3,[[]]],[11,"deref","","",3,[[]]],[11,"deref_mut","","",3,[[]]],[11,"drop","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"init","","",4,[[]]],[11,"deref","","",4,[[]]],[11,"deref_mut","","",4,[[]]],[11,"drop","","",4,[[]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"to_string","","",5,[[],["string",3]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"init","","",5,[[]]],[11,"deref","","",5,[[]]],[11,"deref_mut","","",5,[[]]],[11,"drop","","",5,[[]]],[11,"from","bdk::blockchain::compact_filters","",96,[[]]],[11,"into","","",96,[[]]],[11,"borrow","","",96,[[]]],[11,"borrow_mut","","",96,[[]]],[11,"try_from","","",96,[[],["result",4]]],[11,"try_into","","",96,[[],["result",4]]],[11,"type_id","","",96,[[],["typeid",3]]],[11,"vzip","","",96,[[]]],[11,"init","","",96,[[]]],[11,"deref","","",96,[[]]],[11,"deref_mut","","",96,[[]]],[11,"drop","","",96,[[]]],[11,"from","","",97,[[]]],[11,"into","","",97,[[]]],[11,"borrow","","",97,[[]]],[11,"borrow_mut","","",97,[[]]],[11,"try_from","","",97,[[],["result",4]]],[11,"try_into","","",97,[[],["result",4]]],[11,"type_id","","",97,[[],["typeid",3]]],[11,"vzip","","",97,[[]]],[11,"init","","",97,[[]]],[11,"deref","","",97,[[]]],[11,"deref_mut","","",97,[[]]],[11,"drop","","",97,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"init","","",6,[[]]],[11,"deref","","",6,[[]]],[11,"deref_mut","","",6,[[]]],[11,"drop","","",6,[[]]],[11,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"init","","",7,[[]]],[11,"deref","","",7,[[]]],[11,"deref_mut","","",7,[[]]],[11,"drop","","",7,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"init","","",8,[[]]],[11,"deref","","",8,[[]]],[11,"deref_mut","","",8,[[]]],[11,"drop","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_string","","",9,[[],["string",3]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"init","","",9,[[]]],[11,"deref","","",9,[[]]],[11,"deref_mut","","",9,[[]]],[11,"drop","","",9,[[]]],[11,"from","bdk::blockchain","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"equivalent","","",10,[[]]],[11,"init","","",10,[[]]],[11,"deref","","",10,[[]]],[11,"deref_mut","","",10,[[]]],[11,"drop","","",10,[[]]],[11,"from","","",98,[[]]],[11,"into","","",98,[[]]],[11,"borrow","","",98,[[]]],[11,"borrow_mut","","",98,[[]]],[11,"try_from","","",98,[[],["result",4]]],[11,"try_into","","",98,[[],["result",4]]],[11,"type_id","","",98,[[],["typeid",3]]],[11,"vzip","","",98,[[]]],[11,"init","","",98,[[]]],[11,"deref","","",98,[[]]],[11,"deref_mut","","",98,[[]]],[11,"drop","","",98,[[]]],[11,"from","","",99,[[]]],[11,"into","","",99,[[]]],[11,"to_owned","","",99,[[]]],[11,"clone_into","","",99,[[]]],[11,"borrow","","",99,[[]]],[11,"borrow_mut","","",99,[[]]],[11,"try_from","","",99,[[],["result",4]]],[11,"try_into","","",99,[[],["result",4]]],[11,"type_id","","",99,[[],["typeid",3]]],[11,"vzip","","",99,[[]]],[11,"init","","",99,[[]]],[11,"deref","","",99,[[]]],[11,"deref_mut","","",99,[[]]],[11,"drop","","",99,[[]]],[11,"from","","",100,[[]]],[11,"into","","",100,[[]]],[11,"to_owned","","",100,[[]]],[11,"clone_into","","",100,[[]]],[11,"borrow","","",100,[[]]],[11,"borrow_mut","","",100,[[]]],[11,"try_from","","",100,[[],["result",4]]],[11,"try_into","","",100,[[],["result",4]]],[11,"type_id","","",100,[[],["typeid",3]]],[11,"vzip","","",100,[[]]],[11,"init","","",100,[[]]],[11,"deref","","",100,[[]]],[11,"deref_mut","","",100,[[]]],[11,"drop","","",100,[[]]],[11,"from","bdk::database::any","",14,[[]]],[11,"into","","",14,[[]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"vzip","","",14,[[]]],[11,"init","","",14,[[]]],[11,"deref","","",14,[[]]],[11,"deref_mut","","",14,[[]]],[11,"drop","","",14,[[]]],[11,"from","","",15,[[]]],[11,"into","","",15,[[]]],[11,"borrow","","",15,[[]]],[11,"borrow_mut","","",15,[[]]],[11,"try_from","","",15,[[],["result",4]]],[11,"try_into","","",15,[[],["result",4]]],[11,"type_id","","",15,[[],["typeid",3]]],[11,"vzip","","",15,[[]]],[11,"init","","",15,[[]]],[11,"deref","","",15,[[]]],[11,"deref_mut","","",15,[[]]],[11,"drop","","",15,[[]]],[11,"from","","",16,[[]]],[11,"into","","",16,[[]]],[11,"borrow","","",16,[[]]],[11,"borrow_mut","","",16,[[]]],[11,"try_from","","",16,[[],["result",4]]],[11,"try_into","","",16,[[],["result",4]]],[11,"type_id","","",16,[[],["typeid",3]]],[11,"vzip","","",16,[[]]],[11,"init","","",16,[[]]],[11,"deref","","",16,[[]]],[11,"deref_mut","","",16,[[]]],[11,"drop","","",16,[[]]],[11,"from","","",17,[[]]],[11,"into","","",17,[[]]],[11,"borrow","","",17,[[]]],[11,"borrow_mut","","",17,[[]]],[11,"try_from","","",17,[[],["result",4]]],[11,"try_into","","",17,[[],["result",4]]],[11,"type_id","","",17,[[],["typeid",3]]],[11,"vzip","","",17,[[]]],[11,"init","","",17,[[]]],[11,"deref","","",17,[[]]],[11,"deref_mut","","",17,[[]]],[11,"drop","","",17,[[]]],[11,"from","bdk::database::memory","",18,[[]]],[11,"into","","",18,[[]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"vzip","","",18,[[]]],[11,"init","","",18,[[]]],[11,"deref","","",18,[[]]],[11,"deref_mut","","",18,[[]]],[11,"drop","","",18,[[]]],[11,"from","bdk::descriptor","",23,[[]]],[11,"into","","",23,[[]]],[11,"to_owned","","",23,[[]]],[11,"clone_into","","",23,[[]]],[11,"to_string","","",23,[[],["string",3]]],[11,"borrow","","",23,[[]]],[11,"borrow_mut","","",23,[[]]],[11,"try_from","","",23,[[],["result",4]]],[11,"try_into","","",23,[[],["result",4]]],[11,"type_id","","",23,[[],["typeid",3]]],[11,"vzip","","",23,[[]]],[11,"equivalent","","",23,[[]]],[11,"init","","",23,[[]]],[11,"deref","","",23,[[]]],[11,"deref_mut","","",23,[[]]],[11,"drop","","",23,[[]]],[11,"as_enum","","",101,[[],["scriptcontextenum",4]]],[11,"from","","",101,[[]]],[11,"into","","",101,[[]]],[11,"to_owned","","",101,[[]]],[11,"clone_into","","",101,[[]]],[11,"borrow","","",101,[[]]],[11,"borrow_mut","","",101,[[]]],[11,"try_from","","",101,[[],["result",4]]],[11,"try_into","","",101,[[],["result",4]]],[11,"type_id","","",101,[[],["typeid",3]]],[11,"vzip","","",101,[[]]],[11,"equivalent","","",101,[[]]],[11,"init","","",101,[[]]],[11,"deref","","",101,[[]]],[11,"deref_mut","","",101,[[]]],[11,"drop","","",101,[[]]],[11,"from","","",24,[[]]],[11,"into","","",24,[[]]],[11,"to_owned","","",24,[[]]],[11,"clone_into","","",24,[[]]],[11,"to_string","","",24,[[],["string",3]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"equivalent","","",24,[[]]],[11,"init","","",24,[[]]],[11,"deref","","",24,[[]]],[11,"deref_mut","","",24,[[]]],[11,"drop","","",24,[[]]],[11,"as_enum","","",102,[[],["scriptcontextenum",4]]],[11,"from","","",102,[[]]],[11,"into","","",102,[[]]],[11,"to_owned","","",102,[[]]],[11,"clone_into","","",102,[[]]],[11,"borrow","","",102,[[]]],[11,"borrow_mut","","",102,[[]]],[11,"try_from","","",102,[[],["result",4]]],[11,"try_into","","",102,[[],["result",4]]],[11,"type_id","","",102,[[],["typeid",3]]],[11,"vzip","","",102,[[]]],[11,"equivalent","","",102,[[]]],[11,"init","","",102,[[]]],[11,"deref","","",102,[[]]],[11,"deref_mut","","",102,[[]]],[11,"drop","","",102,[[]]],[11,"from","","",27,[[]]],[11,"into","","",27,[[]]],[11,"to_owned","","",27,[[]]],[11,"clone_into","","",27,[[]]],[11,"to_string","","",27,[[],["string",3]]],[11,"borrow","","",27,[[]]],[11,"borrow_mut","","",27,[[]]],[11,"try_from","","",27,[[],["result",4]]],[11,"try_into","","",27,[[],["result",4]]],[11,"type_id","","",27,[[],["typeid",3]]],[11,"vzip","","",27,[[]]],[11,"equivalent","","",27,[[]]],[11,"init","","",27,[[]]],[11,"deref","","",27,[[]]],[11,"deref_mut","","",27,[[]]],[11,"drop","","",27,[[]]],[11,"from","bdk::descriptor::error","",29,[[]]],[11,"into","","",29,[[]]],[11,"to_string","","",29,[[],["string",3]]],[11,"borrow","","",29,[[]]],[11,"borrow_mut","","",29,[[]]],[11,"try_from","","",29,[[],["result",4]]],[11,"try_into","","",29,[[],["result",4]]],[11,"type_id","","",29,[[],["typeid",3]]],[11,"vzip","","",29,[[]]],[11,"init","","",29,[[]]],[11,"deref","","",29,[[]]],[11,"deref_mut","","",29,[[]]],[11,"drop","","",29,[[]]],[11,"from","bdk::descriptor::policy","",103,[[]]],[11,"into","","",103,[[]]],[11,"to_owned","","",103,[[]]],[11,"clone_into","","",103,[[]]],[11,"borrow","","",103,[[]]],[11,"borrow_mut","","",103,[[]]],[11,"try_from","","",103,[[],["result",4]]],[11,"try_into","","",103,[[],["result",4]]],[11,"type_id","","",103,[[],["typeid",3]]],[11,"vzip","","",103,[[]]],[11,"init","","",103,[[]]],[11,"deref","","",103,[[]]],[11,"deref_mut","","",103,[[]]],[11,"drop","","",103,[[]]],[11,"from","","",30,[[]]],[11,"into","","",30,[[]]],[11,"to_owned","","",30,[[]]],[11,"clone_into","","",30,[[]]],[11,"borrow","","",30,[[]]],[11,"borrow_mut","","",30,[[]]],[11,"try_from","","",30,[[],["result",4]]],[11,"try_into","","",30,[[],["result",4]]],[11,"type_id","","",30,[[],["typeid",3]]],[11,"vzip","","",30,[[]]],[11,"init","","",30,[[]]],[11,"deref","","",30,[[]]],[11,"deref_mut","","",30,[[]]],[11,"drop","","",30,[[]]],[11,"from","","",39,[[]]],[11,"into","","",39,[[]]],[11,"to_owned","","",39,[[]]],[11,"clone_into","","",39,[[]]],[11,"borrow","","",39,[[]]],[11,"borrow_mut","","",39,[[]]],[11,"try_from","","",39,[[],["result",4]]],[11,"try_into","","",39,[[],["result",4]]],[11,"type_id","","",39,[[],["typeid",3]]],[11,"vzip","","",39,[[]]],[11,"init","","",39,[[]]],[11,"deref","","",39,[[]]],[11,"deref_mut","","",39,[[]]],[11,"drop","","",39,[[]]],[11,"from","","",43,[[]]],[11,"into","","",43,[[]]],[11,"to_owned","","",43,[[]]],[11,"clone_into","","",43,[[]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"vzip","","",43,[[]]],[11,"init","","",43,[[]]],[11,"deref","","",43,[[]]],[11,"deref_mut","","",43,[[]]],[11,"drop","","",43,[[]]],[11,"from","","",44,[[]]],[11,"into","","",44,[[]]],[11,"to_owned","","",44,[[]]],[11,"clone_into","","",44,[[]]],[11,"borrow","","",44,[[]]],[11,"borrow_mut","","",44,[[]]],[11,"try_from","","",44,[[],["result",4]]],[11,"try_into","","",44,[[],["result",4]]],[11,"type_id","","",44,[[],["typeid",3]]],[11,"vzip","","",44,[[]]],[11,"equivalent","","",44,[[]]],[11,"init","","",44,[[]]],[11,"deref","","",44,[[]]],[11,"deref_mut","","",44,[[]]],[11,"drop","","",44,[[]]],[11,"from","","",45,[[]]],[11,"into","","",45,[[]]],[11,"to_string","","",45,[[],["string",3]]],[11,"borrow","","",45,[[]]],[11,"borrow_mut","","",45,[[]]],[11,"try_from","","",45,[[],["result",4]]],[11,"try_into","","",45,[[],["result",4]]],[11,"type_id","","",45,[[],["typeid",3]]],[11,"vzip","","",45,[[]]],[11,"init","","",45,[[]]],[11,"deref","","",45,[[]]],[11,"deref_mut","","",45,[[]]],[11,"drop","","",45,[[]]],[11,"to_wallet_descriptor","bdk::descriptor::template","",47,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",47,[[]]],[11,"into","","",47,[[]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"vzip","","",47,[[]]],[11,"init","","",47,[[]]],[11,"deref","","",47,[[]]],[11,"deref_mut","","",47,[[]]],[11,"drop","","",47,[[]]],[11,"to_wallet_descriptor","","",48,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",48,[[]]],[11,"into","","",48,[[]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"vzip","","",48,[[]]],[11,"init","","",48,[[]]],[11,"deref","","",48,[[]]],[11,"deref_mut","","",48,[[]]],[11,"drop","","",48,[[]]],[11,"to_wallet_descriptor","","",49,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",49,[[]]],[11,"into","","",49,[[]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"vzip","","",49,[[]]],[11,"init","","",49,[[]]],[11,"deref","","",49,[[]]],[11,"deref_mut","","",49,[[]]],[11,"drop","","",49,[[]]],[11,"to_wallet_descriptor","","",50,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",50,[[]]],[11,"into","","",50,[[]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"vzip","","",50,[[]]],[11,"init","","",50,[[]]],[11,"deref","","",50,[[]]],[11,"deref_mut","","",50,[[]]],[11,"drop","","",50,[[]]],[11,"to_wallet_descriptor","","",51,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",51,[[]]],[11,"into","","",51,[[]]],[11,"borrow","","",51,[[]]],[11,"borrow_mut","","",51,[[]]],[11,"try_from","","",51,[[],["result",4]]],[11,"try_into","","",51,[[],["result",4]]],[11,"type_id","","",51,[[],["typeid",3]]],[11,"vzip","","",51,[[]]],[11,"init","","",51,[[]]],[11,"deref","","",51,[[]]],[11,"deref_mut","","",51,[[]]],[11,"drop","","",51,[[]]],[11,"to_wallet_descriptor","","",52,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"init","","",52,[[]]],[11,"deref","","",52,[[]]],[11,"deref_mut","","",52,[[]]],[11,"drop","","",52,[[]]],[11,"to_wallet_descriptor","","",53,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",53,[[]]],[11,"into","","",53,[[]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"vzip","","",53,[[]]],[11,"init","","",53,[[]]],[11,"deref","","",53,[[]]],[11,"deref_mut","","",53,[[]]],[11,"drop","","",53,[[]]],[11,"to_wallet_descriptor","","",54,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",54,[[]]],[11,"into","","",54,[[]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"vzip","","",54,[[]]],[11,"init","","",54,[[]]],[11,"deref","","",54,[[]]],[11,"deref_mut","","",54,[[]]],[11,"drop","","",54,[[]]],[11,"to_wallet_descriptor","","",55,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",55,[[]]],[11,"into","","",55,[[]]],[11,"borrow","","",55,[[]]],[11,"borrow_mut","","",55,[[]]],[11,"try_from","","",55,[[],["result",4]]],[11,"try_into","","",55,[[],["result",4]]],[11,"type_id","","",55,[[],["typeid",3]]],[11,"vzip","","",55,[[]]],[11,"init","","",55,[[]]],[11,"deref","","",55,[[]]],[11,"deref_mut","","",55,[[]]],[11,"drop","","",55,[[]]],[11,"from","bdk::keys","",58,[[]]],[11,"into","","",58,[[]]],[11,"to_owned","","",58,[[]]],[11,"clone_into","","",58,[[]]],[11,"to_string","","",58,[[],["string",3]]],[11,"borrow","","",58,[[]]],[11,"borrow_mut","","",58,[[]]],[11,"try_from","","",58,[[],["result",4]]],[11,"try_into","","",58,[[],["result",4]]],[11,"type_id","","",58,[[],["typeid",3]]],[11,"vzip","","",58,[[]]],[11,"equivalent","","",58,[[]]],[11,"init","","",58,[[]]],[11,"deref","","",58,[[]]],[11,"deref_mut","","",58,[[]]],[11,"drop","","",58,[[]]],[11,"from","","",59,[[]]],[11,"into","","",59,[[]]],[11,"to_string","","",59,[[],["string",3]]],[11,"borrow","","",59,[[]]],[11,"borrow_mut","","",59,[[]]],[11,"try_from","","",59,[[],["result",4]]],[11,"try_into","","",59,[[],["result",4]]],[11,"type_id","","",59,[[],["typeid",3]]],[11,"vzip","","",59,[[]]],[11,"init","","",59,[[]]],[11,"deref","","",59,[[]]],[11,"deref_mut","","",59,[[]]],[11,"drop","","",59,[[]]],[11,"from","","",60,[[]]],[11,"into","","",60,[[]]],[11,"borrow","","",60,[[]]],[11,"borrow_mut","","",60,[[]]],[11,"try_from","","",60,[[],["result",4]]],[11,"try_into","","",60,[[],["result",4]]],[11,"type_id","","",60,[[],["typeid",3]]],[11,"vzip","","",60,[[]]],[11,"init","","",60,[[]]],[11,"deref","","",60,[[]]],[11,"deref_mut","","",60,[[]]],[11,"drop","","",60,[[]]],[11,"from","","",61,[[]]],[11,"into","","",61,[[]]],[11,"to_owned","","",61,[[]]],[11,"clone_into","","",61,[[]]],[11,"borrow","","",61,[[]]],[11,"borrow_mut","","",61,[[]]],[11,"try_from","","",61,[[],["result",4]]],[11,"try_into","","",61,[[],["result",4]]],[11,"type_id","","",61,[[],["typeid",3]]],[11,"vzip","","",61,[[]]],[11,"equivalent","","",61,[[]]],[11,"init","","",61,[[]]],[11,"deref","","",61,[[]]],[11,"deref_mut","","",61,[[]]],[11,"drop","","",61,[[]]],[11,"from","","",62,[[]]],[11,"into","","",62,[[]]],[11,"to_owned","","",62,[[]]],[11,"clone_into","","",62,[[]]],[11,"to_string","","",62,[[],["string",3]]],[11,"borrow","","",62,[[]]],[11,"borrow_mut","","",62,[[]]],[11,"try_from","","",62,[[],["result",4]]],[11,"try_into","","",62,[[],["result",4]]],[11,"type_id","","",62,[[],["typeid",3]]],[11,"vzip","","",62,[[]]],[11,"equivalent","","",62,[[]]],[11,"init","","",62,[[]]],[11,"deref","","",62,[[]]],[11,"deref_mut","","",62,[[]]],[11,"drop","","",62,[[]]],[11,"from","","",63,[[]]],[11,"into","","",63,[[]]],[11,"borrow","","",63,[[]]],[11,"borrow_mut","","",63,[[]]],[11,"try_from","","",63,[[],["result",4]]],[11,"try_into","","",63,[[],["result",4]]],[11,"type_id","","",63,[[],["typeid",3]]],[11,"vzip","","",63,[[]]],[11,"init","","",63,[[]]],[11,"deref","","",63,[[]]],[11,"deref_mut","","",63,[[]]],[11,"drop","","",63,[[]]],[11,"from","","",64,[[]]],[11,"into","","",64,[[]]],[11,"to_owned","","",64,[[]]],[11,"clone_into","","",64,[[]]],[11,"borrow","","",64,[[]]],[11,"borrow_mut","","",64,[[]]],[11,"try_from","","",64,[[],["result",4]]],[11,"try_into","","",64,[[],["result",4]]],[11,"type_id","","",64,[[],["typeid",3]]],[11,"vzip","","",64,[[]]],[11,"equivalent","","",64,[[]]],[11,"init","","",64,[[]]],[11,"deref","","",64,[[]]],[11,"deref_mut","","",64,[[]]],[11,"drop","","",64,[[]]],[11,"from","","",68,[[]]],[11,"into","","",68,[[]]],[11,"borrow","","",68,[[]]],[11,"borrow_mut","","",68,[[]]],[11,"try_from","","",68,[[],["result",4]]],[11,"try_into","","",68,[[],["result",4]]],[11,"type_id","","",68,[[],["typeid",3]]],[11,"vzip","","",68,[[]]],[11,"init","","",68,[[]]],[11,"deref","","",68,[[]]],[11,"deref_mut","","",68,[[]]],[11,"drop","","",68,[[]]],[11,"from","","",71,[[]]],[11,"into","","",71,[[]]],[11,"to_owned","","",71,[[]]],[11,"clone_into","","",71,[[]]],[11,"borrow","","",71,[[]]],[11,"borrow_mut","","",71,[[]]],[11,"try_from","","",71,[[],["result",4]]],[11,"try_into","","",71,[[],["result",4]]],[11,"type_id","","",71,[[],["typeid",3]]],[11,"vzip","","",71,[[]]],[11,"init","","",71,[[]]],[11,"deref","","",71,[[]]],[11,"deref_mut","","",71,[[]]],[11,"drop","","",71,[[]]],[11,"from","","",72,[[]]],[11,"into","","",72,[[]]],[11,"to_string","","",72,[[],["string",3]]],[11,"borrow","","",72,[[]]],[11,"borrow_mut","","",72,[[]]],[11,"try_from","","",72,[[],["result",4]]],[11,"try_into","","",72,[[],["result",4]]],[11,"type_id","","",72,[[],["typeid",3]]],[11,"vzip","","",72,[[]]],[11,"init","","",72,[[]]],[11,"deref","","",72,[[]]],[11,"deref_mut","","",72,[[]]],[11,"drop","","",72,[[]]],[11,"from","bdk","",92,[[]]],[11,"into","","",92,[[]]],[11,"to_owned","","",92,[[]]],[11,"clone_into","","",92,[[]]],[11,"borrow","","",92,[[]]],[11,"borrow_mut","","",92,[[]]],[11,"try_from","","",92,[[],["result",4]]],[11,"try_into","","",92,[[],["result",4]]],[11,"type_id","","",92,[[],["typeid",3]]],[11,"write_base32","","",92,[[],["result",4]]],[11,"base32_len","","",92,[[]]],[11,"check_base32","","",92,[[],[["vec",3],["result",4]]]],[11,"vzip","","",92,[[]]],[11,"equivalent","","",92,[[]]],[11,"init","","",92,[[]]],[11,"deref","","",92,[[]]],[11,"deref_mut","","",92,[[]]],[11,"drop","","",92,[[]]],[11,"from","","",104,[[]]],[11,"into","","",104,[[]]],[11,"to_owned","","",104,[[]]],[11,"clone_into","","",104,[[]]],[11,"borrow","","",104,[[]]],[11,"borrow_mut","","",104,[[]]],[11,"try_from","","",104,[[],["result",4]]],[11,"try_into","","",104,[[],["result",4]]],[11,"type_id","","",104,[[],["typeid",3]]],[11,"vzip","","",104,[[]]],[11,"init","","",104,[[]]],[11,"deref","","",104,[[]]],[11,"deref_mut","","",104,[[]]],[11,"drop","","",104,[[]]],[11,"from","","",93,[[]]],[11,"into","","",93,[[]]],[11,"to_owned","","",93,[[]]],[11,"clone_into","","",93,[[]]],[11,"borrow","","",93,[[]]],[11,"borrow_mut","","",93,[[]]],[11,"try_from","","",93,[[],["result",4]]],[11,"try_into","","",93,[[],["result",4]]],[11,"type_id","","",93,[[],["typeid",3]]],[11,"vzip","","",93,[[]]],[11,"equivalent","","",93,[[]]],[11,"init","","",93,[[]]],[11,"deref","","",93,[[]]],[11,"deref_mut","","",93,[[]]],[11,"drop","","",93,[[]]],[11,"from","","",94,[[]]],[11,"into","","",94,[[]]],[11,"to_owned","","",94,[[]]],[11,"clone_into","","",94,[[]]],[11,"borrow","","",94,[[]]],[11,"borrow_mut","","",94,[[]]],[11,"try_from","","",94,[[],["result",4]]],[11,"try_into","","",94,[[],["result",4]]],[11,"type_id","","",94,[[],["typeid",3]]],[11,"vzip","","",94,[[]]],[11,"equivalent","","",94,[[]]],[11,"init","","",94,[[]]],[11,"deref","","",94,[[]]],[11,"deref_mut","","",94,[[]]],[11,"drop","","",94,[[]]],[11,"from","bdk::wallet::address_validator","",73,[[]]],[11,"into","","",73,[[]]],[11,"to_owned","","",73,[[]]],[11,"clone_into","","",73,[[]]],[11,"to_string","","",73,[[],["string",3]]],[11,"borrow","","",73,[[]]],[11,"borrow_mut","","",73,[[]]],[11,"try_from","","",73,[[],["result",4]]],[11,"try_into","","",73,[[],["result",4]]],[11,"type_id","","",73,[[],["typeid",3]]],[11,"vzip","","",73,[[]]],[11,"equivalent","","",73,[[]]],[11,"init","","",73,[[]]],[11,"deref","","",73,[[]]],[11,"deref_mut","","",73,[[]]],[11,"drop","","",73,[[]]],[11,"from","bdk::wallet::coin_selection","",75,[[]]],[11,"into","","",75,[[]]],[11,"borrow","","",75,[[]]],[11,"borrow_mut","","",75,[[]]],[11,"try_from","","",75,[[],["result",4]]],[11,"try_into","","",75,[[],["result",4]]],[11,"type_id","","",75,[[],["typeid",3]]],[11,"vzip","","",75,[[]]],[11,"init","","",75,[[]]],[11,"deref","","",75,[[]]],[11,"deref_mut","","",75,[[]]],[11,"drop","","",75,[[]]],[11,"from","","",105,[[]]],[11,"into","","",105,[[]]],[11,"borrow","","",105,[[]]],[11,"borrow_mut","","",105,[[]]],[11,"try_from","","",105,[[],["result",4]]],[11,"try_into","","",105,[[],["result",4]]],[11,"type_id","","",105,[[],["typeid",3]]],[11,"vzip","","",105,[[]]],[11,"init","","",105,[[]]],[11,"deref","","",105,[[]]],[11,"deref_mut","","",105,[[]]],[11,"drop","","",105,[[]]],[11,"from","","",77,[[]]],[11,"into","","",77,[[]]],[11,"borrow","","",77,[[]]],[11,"borrow_mut","","",77,[[]]],[11,"try_from","","",77,[[],["result",4]]],[11,"try_into","","",77,[[],["result",4]]],[11,"type_id","","",77,[[],["typeid",3]]],[11,"vzip","","",77,[[]]],[11,"init","","",77,[[]]],[11,"deref","","",77,[[]]],[11,"deref_mut","","",77,[[]]],[11,"drop","","",77,[[]]],[11,"from","bdk::wallet::export","",78,[[]]],[11,"into","","",78,[[]]],[11,"borrow","","",78,[[]]],[11,"borrow_mut","","",78,[[]]],[11,"try_from","","",78,[[],["result",4]]],[11,"try_into","","",78,[[],["result",4]]],[11,"type_id","","",78,[[],["typeid",3]]],[11,"vzip","","",78,[[]]],[11,"init","","",78,[[]]],[11,"deref","","",78,[[]]],[11,"deref_mut","","",78,[[]]],[11,"drop","","",78,[[]]],[11,"from","bdk::wallet::signer","",79,[[]]],[11,"into","","",79,[[]]],[11,"to_owned","","",79,[[]]],[11,"clone_into","","",79,[[]]],[11,"borrow","","",79,[[]]],[11,"borrow_mut","","",79,[[]]],[11,"try_from","","",79,[[],["result",4]]],[11,"try_into","","",79,[[],["result",4]]],[11,"type_id","","",79,[[],["typeid",3]]],[11,"vzip","","",79,[[]]],[11,"equivalent","","",79,[[]]],[11,"init","","",79,[[]]],[11,"deref","","",79,[[]]],[11,"deref_mut","","",79,[[]]],[11,"drop","","",79,[[]]],[11,"from","","",80,[[]]],[11,"into","","",80,[[]]],[11,"to_owned","","",80,[[]]],[11,"clone_into","","",80,[[]]],[11,"to_string","","",80,[[],["string",3]]],[11,"borrow","","",80,[[]]],[11,"borrow_mut","","",80,[[]]],[11,"try_from","","",80,[[],["result",4]]],[11,"try_into","","",80,[[],["result",4]]],[11,"type_id","","",80,[[],["typeid",3]]],[11,"vzip","","",80,[[]]],[11,"equivalent","","",80,[[]]],[11,"init","","",80,[[]]],[11,"deref","","",80,[[]]],[11,"deref_mut","","",80,[[]]],[11,"drop","","",80,[[]]],[11,"from","","",82,[[]]],[11,"into","","",82,[[]]],[11,"to_owned","","",82,[[]]],[11,"clone_into","","",82,[[]]],[11,"borrow","","",82,[[]]],[11,"borrow_mut","","",82,[[]]],[11,"try_from","","",82,[[],["result",4]]],[11,"try_into","","",82,[[],["result",4]]],[11,"type_id","","",82,[[],["typeid",3]]],[11,"vzip","","",82,[[]]],[11,"equivalent","","",82,[[]]],[11,"init","","",82,[[]]],[11,"deref","","",82,[[]]],[11,"deref_mut","","",82,[[]]],[11,"drop","","",82,[[]]],[11,"from","","",83,[[]]],[11,"into","","",83,[[]]],[11,"to_owned","","",83,[[]]],[11,"clone_into","","",83,[[]]],[11,"borrow","","",83,[[]]],[11,"borrow_mut","","",83,[[]]],[11,"try_from","","",83,[[],["result",4]]],[11,"try_into","","",83,[[],["result",4]]],[11,"type_id","","",83,[[],["typeid",3]]],[11,"vzip","","",83,[[]]],[11,"init","","",83,[[]]],[11,"deref","","",83,[[]]],[11,"deref_mut","","",83,[[]]],[11,"drop","","",83,[[]]],[11,"from","bdk::wallet::tx_builder","",106,[[]]],[11,"into","","",106,[[]]],[11,"to_owned","","",106,[[]]],[11,"clone_into","","",106,[[]]],[11,"borrow","","",106,[[]]],[11,"borrow_mut","","",106,[[]]],[11,"try_from","","",106,[[],["result",4]]],[11,"try_into","","",106,[[],["result",4]]],[11,"type_id","","",106,[[],["typeid",3]]],[11,"vzip","","",106,[[]]],[11,"init","","",106,[[]]],[11,"deref","","",106,[[]]],[11,"deref_mut","","",106,[[]]],[11,"drop","","",106,[[]]],[11,"from","","",107,[[]]],[11,"into","","",107,[[]]],[11,"to_owned","","",107,[[]]],[11,"clone_into","","",107,[[]]],[11,"borrow","","",107,[[]]],[11,"borrow_mut","","",107,[[]]],[11,"try_from","","",107,[[],["result",4]]],[11,"try_into","","",107,[[],["result",4]]],[11,"type_id","","",107,[[],["typeid",3]]],[11,"vzip","","",107,[[]]],[11,"init","","",107,[[]]],[11,"deref","","",107,[[]]],[11,"deref_mut","","",107,[[]]],[11,"drop","","",107,[[]]],[11,"from","","",84,[[]]],[11,"into","","",84,[[]]],[11,"borrow","","",84,[[]]],[11,"borrow_mut","","",84,[[]]],[11,"try_from","","",84,[[],["result",4]]],[11,"try_into","","",84,[[],["result",4]]],[11,"type_id","","",84,[[],["typeid",3]]],[11,"vzip","","",84,[[]]],[11,"init","","",84,[[]]],[11,"deref","","",84,[[]]],[11,"deref_mut","","",84,[[]]],[11,"drop","","",84,[[]]],[11,"from","","",85,[[]]],[11,"into","","",85,[[]]],[11,"to_owned","","",85,[[]]],[11,"clone_into","","",85,[[]]],[11,"borrow","","",85,[[]]],[11,"borrow_mut","","",85,[[]]],[11,"try_from","","",85,[[],["result",4]]],[11,"try_into","","",85,[[],["result",4]]],[11,"type_id","","",85,[[],["typeid",3]]],[11,"vzip","","",85,[[]]],[11,"equivalent","","",85,[[]]],[11,"init","","",85,[[]]],[11,"deref","","",85,[[]]],[11,"deref_mut","","",85,[[]]],[11,"drop","","",85,[[]]],[11,"from","","",86,[[]]],[11,"into","","",86,[[]]],[11,"to_owned","","",86,[[]]],[11,"clone_into","","",86,[[]]],[11,"borrow","","",86,[[]]],[11,"borrow_mut","","",86,[[]]],[11,"try_from","","",86,[[],["result",4]]],[11,"try_into","","",86,[[],["result",4]]],[11,"type_id","","",86,[[],["typeid",3]]],[11,"vzip","","",86,[[]]],[11,"equivalent","","",86,[[]]],[11,"init","","",86,[[]]],[11,"deref","","",86,[[]]],[11,"deref_mut","","",86,[[]]],[11,"drop","","",86,[[]]],[11,"from","bdk::wallet","",88,[[]]],[11,"into","","",88,[[]]],[11,"borrow","","",88,[[]]],[11,"borrow_mut","","",88,[[]]],[11,"try_from","","",88,[[],["result",4]]],[11,"try_into","","",88,[[],["result",4]]],[11,"type_id","","",88,[[],["typeid",3]]],[11,"vzip","","",88,[[]]],[11,"init","","",88,[[]]],[11,"deref","","",88,[[]]],[11,"deref_mut","","",88,[[]]],[11,"drop","","",88,[[]]],[11,"check_terminal_non_malleable","bdk::descriptor","",101,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","",101,[[],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_consensus_validity","","",101,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","",101,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","",101,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"max_satisfaction_size","","",101,[[["miniscript",3]],["option",4]]],[11,"check_terminal_non_malleable","","",102,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","",102,[[],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_consensus_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_policy_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"max_satisfaction_size","","",102,[[["miniscript",3]],["option",4]]],[11,"fmt","","",27,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",60,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",102,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",58,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",62,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",23,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",59,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",24,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",101,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",61,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",24,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",23,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",62,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",27,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",59,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",58,[[["formatter",3]],[["result",4],["error",3]]]],[11,"hash","","",58,[[]]],[11,"hash","","",61,[[]]],[11,"hash","bdk::descriptor","",27,[[]]],[11,"hash","","",24,[[]]],[11,"partial_cmp","bdk::keys","",58,[[["descriptorpublickey",4]],[["option",4],["ordering",4]]]],[11,"lt","","",58,[[["descriptorpublickey",4]]]],[11,"le","","",58,[[["descriptorpublickey",4]]]],[11,"gt","","",58,[[["descriptorpublickey",4]]]],[11,"ge","","",58,[[["descriptorpublickey",4]]]],[11,"partial_cmp","","",62,[[["sortedmultivec",3]],[["option",4],["ordering",4]]]],[11,"lt","","",62,[[["sortedmultivec",3]]]],[11,"le","","",62,[[["sortedmultivec",3]]]],[11,"gt","","",62,[[["sortedmultivec",3]]]],[11,"ge","","",62,[[["sortedmultivec",3]]]],[11,"partial_cmp","bdk::descriptor","",102,[[["segwitv0",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",24,[[["miniscript",3]],[["option",4],["ordering",4]]]],[11,"partial_cmp","bdk::keys","",61,[[["descriptorsinglepub",3]],[["option",4],["ordering",4]]]],[11,"lt","","",61,[[["descriptorsinglepub",3]]]],[11,"le","","",61,[[["descriptorsinglepub",3]]]],[11,"gt","","",61,[[["descriptorsinglepub",3]]]],[11,"ge","","",61,[[["descriptorsinglepub",3]]]],[11,"partial_cmp","bdk::descriptor","",101,[[["legacy",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",23,[[["descriptor",4]],[["option",4],["ordering",4]]]],[11,"lt","","",23,[[["descriptor",4]]]],[11,"le","","",23,[[["descriptor",4]]]],[11,"gt","","",23,[[["descriptor",4]]]],[11,"ge","","",23,[[["descriptor",4]]]],[11,"partial_cmp","","",27,[[["terminal",4]],[["option",4],["ordering",4]]]],[11,"lt","","",27,[[["terminal",4]]]],[11,"le","","",27,[[["terminal",4]]]],[11,"gt","","",27,[[["terminal",4]]]],[11,"ge","","",27,[[["terminal",4]]]],[11,"to_pubkeyhash","bdk::keys","",58,[[],["descriptorpublickey",4]]],[11,"lift","","",62,[[],[["result",4],["policy",4],["error",4]]]],[11,"lift","bdk::descriptor","",24,[[],[["result",4],["policy",4],["error",4]]]],[11,"lift","","",23,[[],[["result",4],["policy",4],["error",4]]]],[11,"lift","","",27,[[],[["result",4],["policy",4],["error",4]]]],[11,"clone","","",102,[[],["segwitv0",4]]],[11,"clone","","",24,[[],["miniscript",3]]],[11,"clone","bdk::keys","",62,[[],["sortedmultivec",3]]],[11,"clone","bdk::descriptor","",27,[[],["terminal",4]]],[11,"clone","bdk::keys","",61,[[],["descriptorsinglepub",3]]],[11,"clone","bdk::descriptor","",23,[[],["descriptor",4]]],[11,"clone","","",101,[[],["legacy",4]]],[11,"clone","bdk::keys","",58,[[],["descriptorpublickey",4]]],[11,"from_str","bdk::descriptor","",23,[[],[["result",4],["descriptor",4],["error",4]]]],[11,"from_str","bdk::keys","",59,[[],[["result",4],["descriptorsecretkey",4]]]],[11,"from_str","","",58,[[],[["result",4],["descriptorpublickey",4]]]],[11,"from_str","bdk::descriptor","Parse a Miniscript from string and perform sanity checks …",24,[[],[["miniscript",3],["error",4],["result",4]]]],[11,"eq","","",27,[[["terminal",4]]]],[11,"ne","","",27,[[["terminal",4]]]],[11,"eq","bdk::keys","",58,[[["descriptorpublickey",4]]]],[11,"ne","","",58,[[["descriptorpublickey",4]]]],[11,"eq","bdk::descriptor","",101,[[["legacy",4]]]],[11,"eq","","",24,[[["miniscript",3]]]],[11,"eq","","",23,[[["descriptor",4]]]],[11,"ne","","",23,[[["descriptor",4]]]],[11,"eq","bdk::keys","",61,[[["descriptorsinglepub",3]]]],[11,"ne","","",61,[[["descriptorsinglepub",3]]]],[11,"eq","bdk::descriptor","",102,[[["segwitv0",4]]]],[11,"eq","bdk::keys","",62,[[["sortedmultivec",3]]]],[11,"ne","","",62,[[["sortedmultivec",3]]]],[11,"cmp","bdk::descriptor","",101,[[["legacy",4]],["ordering",4]]],[11,"cmp","bdk::keys","",61,[[["descriptorsinglepub",3]],["ordering",4]]],[11,"cmp","","",62,[[["sortedmultivec",3]],["ordering",4]]],[11,"cmp","bdk::descriptor","",24,[[["miniscript",3]],["ordering",4]]],[11,"cmp","","",102,[[["segwitv0",4]],["ordering",4]]],[11,"cmp","","",23,[[["descriptor",4]],["ordering",4]]],[11,"cmp","bdk::keys","",58,[[["descriptorpublickey",4]],["ordering",4]]],[11,"cmp","bdk::descriptor","",27,[[["terminal",4]],["ordering",4]]],[11,"to_public_key","bdk::keys","",58,[[["descriptorpublickeyctx",3]],["publickey",3]]],[11,"hash_to_hash160","","",58,[[["descriptorpublickeyctx",3]],["hash",3]]],[11,"from_tree","bdk::descriptor","",27,[[["tree",3]],[["result",4],["terminal",4],["error",4]]]],[11,"from_tree","","Parse an expression tree into a Miniscript. As a general …",24,[[["tree",3]],[["miniscript",3],["error",4],["result",4]]]],[11,"from_tree","","Parse an expression tree into a descriptor",23,[[["tree",3]],[["result",4],["descriptor",4],["error",4]]]],[11,"from_config","bdk::blockchain::any","",0,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::blockchain::electrum","",95,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::blockchain::esplora","",3,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::blockchain::compact_filters","",6,[[],[["result",4],["error",4]]]],[11,"update","bdk::blockchain","",99,[[["option",4],["string",3]],[["result",4],["error",4]]]],[11,"update","","",100,[[["option",4],["string",3]],[["result",4],["error",4]]]],[11,"set_script_pubkey","bdk::database::any","",14,[[["script",3],["scripttype",4]],[["result",4],["error",4]]]],[11,"set_utxo","","",14,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",14,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",14,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",14,[[["scripttype",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",14,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"del_path_from_script_pubkey","","",14,[[["script",3]],[["result",4],["error",4],["option",4]]]],[11,"del_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",14,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"set_script_pubkey","","",15,[[["script",3],["scripttype",4]],[["result",4],["error",4]]]],[11,"set_utxo","","",15,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",15,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",15,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",15,[[["scripttype",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",15,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"del_path_from_script_pubkey","","",15,[[["script",3]],[["result",4],["error",4],["option",4]]]],[11,"del_utxo","","",15,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",15,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_tx","","",15,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",15,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"set_script_pubkey","bdk::database::memory","",18,[[["script",3],["scripttype",4]],[["result",4],["error",4]]]],[11,"set_utxo","","",18,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",18,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",18,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",18,[[["scripttype",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",18,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"del_path_from_script_pubkey","","",18,[[["script",3]],[["result",4],["error",4],["option",4]]]],[11,"del_utxo","","",18,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",18,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"check_descriptor_checksum","bdk::database::any","",14,[[["scripttype",4],["asref",8]],[["result",4],["error",4]]]],[11,"iter_script_pubkeys","","",14,[[["option",4],["scripttype",4]],[["vec",3],["error",4],["result",4]]]],[11,"iter_utxos","","",14,[[],[["error",4],["result",4],["vec",3]]]],[11,"iter_raw_txs","","",14,[[],[["error",4],["vec",3],["result",4]]]],[11,"iter_txs","","",14,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_script_pubkey_from_path","","",14,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"get_path_from_script_pubkey","","",14,[[["script",3]],[["result",4],["error",4],["option",4]]]],[11,"get_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"get_raw_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_last_index","","",14,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"increment_last_index","","",14,[[["scripttype",4]],[["error",4],["result",4]]]],[11,"check_descriptor_checksum","bdk::database::memory","",18,[[["scripttype",4],["asref",8]],[["result",4],["error",4]]]],[11,"iter_script_pubkeys","","",18,[[["option",4],["scripttype",4]],[["vec",3],["error",4],["result",4]]]],[11,"iter_utxos","","",18,[[],[["error",4],["result",4],["vec",3]]]],[11,"iter_raw_txs","","",18,[[],[["error",4],["vec",3],["result",4]]]],[11,"iter_txs","","",18,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_script_pubkey_from_path","","",18,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"get_path_from_script_pubkey","","",18,[[["script",3]],[["result",4],["error",4],["option",4]]]],[11,"get_utxo","","",18,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"get_raw_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_last_index","","",18,[[["scripttype",4]],[["error",4],["result",4],["option",4]]]],[11,"increment_last_index","","",18,[[["scripttype",4]],[["error",4],["result",4]]]],[11,"begin_batch","bdk::database::any","",14,[[]]],[11,"commit_batch","","",14,[[],[["result",4],["error",4]]]],[11,"begin_batch","bdk::database::memory","",18,[[]]],[11,"commit_batch","","",18,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::database::any","",14,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::database::memory","",18,[[],[["result",4],["error",4]]]],[11,"build","bdk::descriptor::template","",47,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",48,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",49,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",50,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",51,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",52,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",53,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",54,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",55,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"to_wallet_descriptor","bdk","",108,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"to_wallet_descriptor","","",109,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"extract_policy","bdk::descriptor","",24,[[["signerscontainer",3],["secp256k1",3]],[["option",4],["error",4],["result",4]]]],[11,"extract_policy","","",23,[[["signerscontainer",3],["secp256k1",3]],[["option",4],["error",4],["result",4]]]],[11,"to_descriptor_key","bdk::keys","",68,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"to_descriptor_key","","",63,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"to_descriptor_key","","",58,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"to_descriptor_key","","",59,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"add_metadata","bdk","",110,[[["option",4],["keysource",6],["derivationpath",3]],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"add_metadata","bdk::keys","",68,[[["option",4],["keysource",6],["derivationpath",3]],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"coin_select","bdk::wallet::coin_selection","",105,[[["vec",3],["feerate",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[11,"coin_select","","",77,[[["vec",3],["feerate",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[11,"get_capabilities","bdk::blockchain::any","",0,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",0,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"sync","","",0,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",0,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",0,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",0,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",0,[[],[["error",4],["result",4],["feerate",3]]]],[11,"get_capabilities","bdk::blockchain::electrum","",95,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",95,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",95,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",95,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",95,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",95,[[],[["error",4],["result",4],["feerate",3]]]],[11,"get_capabilities","bdk::blockchain::esplora","",3,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",3,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",3,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",3,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",3,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",3,[[],[["error",4],["result",4],["feerate",3]]]],[11,"get_capabilities","bdk::blockchain::compact_filters","",6,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",6,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",6,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",6,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",6,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",6,[[],[["error",4],["result",4],["feerate",3]]]],[11,"as_ref","bdk","",92,[[]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["addressvalidatorerror",4]]]],[11,"from","","",89,[[["policyerror",4]]]],[11,"from","","",89,[[["signererror",4]]]],[11,"from","","",89,[[["keyerror",4]],["error",4]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",3]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["esploraerror",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["compactfilterserror",4]]]],[11,"from","bdk::blockchain::any","",0,[[["electrumblockchain",3]]]],[11,"from","","",0,[[["esplorablockchain",3]]]],[11,"from","","",0,[[["compactfiltersblockchain",3]]]],[11,"from","","",1,[[["electrumblockchainconfig",3]]]],[11,"from","","",1,[[["esplorablockchainconfig",3]]]],[11,"from","","",1,[[["compactfiltersblockchainconfig",3]]]],[11,"from","bdk::blockchain::electrum","",95,[[["client",3]]]],[11,"from","bdk::blockchain::esplora","",5,[[["error",3]]]],[11,"from","","",5,[[["parseinterror",3]]]],[11,"from","","",5,[[["error",4]]]],[11,"from","","",5,[[["error",4]]]],[11,"from","bdk::blockchain::compact_filters","",9,[[["error",3]]]],[11,"from","","",9,[[["error",3]]]],[11,"from","","",9,[[["error",4]]]],[11,"from","","",9,[[["systemtimeerror",3]]]],[11,"from","","",9,[[["error",4]]]],[11,"from","bdk::database::any","",14,[[["memorydatabase",3]]]],[11,"from","","",14,[[["tree",3]]]],[11,"from","","",15,[[]]],[11,"from","","",15,[[]]],[11,"from","","",17,[[]]],[11,"from","","",17,[[["sleddbconfiguration",3]]]],[11,"from","bdk::descriptor::error","",29,[[["keyerror",4]],["error",4]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["policyerror",4]]]],[11,"from","bdk::descriptor::policy","",39,[[]]],[11,"from","","",43,[[["satisfiableitem",4]]]],[11,"from","bdk::keys","",72,[[["error",4]]]],[11,"from","","",72,[[["error",4]]]],[11,"from","bdk::wallet::signer","",79,[[["hash",3]],["signerid",4]]],[11,"from","","",79,[[["fingerprint",3]],["signerid",4]]],[11,"from","","",83,[[["keymap",6]],["signerscontainer",3]]],[11,"clone","bdk::blockchain","",10,[[],["capability",4]]],[11,"clone","","",99,[[],["noopprogress",3]]],[11,"clone","","",100,[[],["logprogress",3]]],[11,"clone","bdk::descriptor::policy","",103,[[],["pkorf",3]]],[11,"clone","","",30,[[],["satisfiableitem",4]]],[11,"clone","","",39,[[],["satisfaction",4]]],[11,"clone","","",43,[[],["policy",3]]],[11,"clone","","",44,[[],["condition",3]]],[11,"clone","bdk::keys","",64,[[],["scriptcontextenum",4]]],[11,"clone","","",71,[[],["privatekeygenerateoptions",3]]],[11,"clone","bdk","",92,[[],["scripttype",4]]],[11,"clone","","",104,[[],["feerate",3]]],[11,"clone","","",93,[[],["utxo",3]]],[11,"clone","","",94,[[],["transactiondetails",3]]],[11,"clone","bdk::wallet::address_validator","",73,[[],["addressvalidatorerror",4]]],[11,"clone","bdk::wallet::signer","",79,[[],["signerid",4]]],[11,"clone","","",80,[[],["signererror",4]]],[11,"clone","","",82,[[],["signerordering",3]]],[11,"clone","","",83,[[],["signerscontainer",3]]],[11,"clone","bdk::wallet::tx_builder","",106,[[],["createtx",3]]],[11,"clone","","",107,[[],["bumpfee",3]]],[11,"clone","","",85,[[],["txordering",4]]],[11,"clone","","",86,[[],["changespendpolicy",4]]],[11,"default","bdk::blockchain::compact_filters","",96,[[],["mempool",3]]],[11,"default","bdk::database::memory","",18,[[],["memorydatabase",3]]],[11,"default","bdk::descriptor::policy","",103,[[],["pkorf",3]]],[11,"default","","",44,[[],["condition",3]]],[11,"default","bdk::keys","",71,[[]]],[11,"default","bdk","",104,[[]]],[11,"default","","",94,[[],["transactiondetails",3]]],[11,"default","bdk::wallet::coin_selection","",105,[[],["largestfirstcoinselection",3]]],[11,"default","","",77,[[]]],[11,"default","bdk::wallet::signer","",82,[[]]],[11,"default","","",83,[[],["signerscontainer",3]]],[11,"default","bdk::wallet::tx_builder","",106,[[],["createtx",3]]],[11,"default","","",107,[[],["bumpfee",3]]],[11,"default","","",84,[[]]],[11,"default","","",85,[[]]],[11,"default","","",86,[[]]],[11,"cmp","bdk::descriptor::policy","",44,[[["condition",3]],["ordering",4]]],[11,"cmp","bdk::wallet::signer","",82,[[["signerordering",3]],["ordering",4]]],[11,"cmp","bdk::wallet::tx_builder","",85,[[["txordering",4]],["ordering",4]]],[11,"cmp","","",86,[[["changespendpolicy",4]],["ordering",4]]],[11,"eq","bdk::blockchain","",10,[[["capability",4]]]],[11,"eq","bdk::descriptor::policy","",44,[[["condition",3]]]],[11,"ne","","",44,[[["condition",3]]]],[11,"eq","bdk::keys","",64,[[["scriptcontextenum",4]]]],[11,"eq","bdk","",92,[[["scripttype",4]]]],[11,"eq","","",104,[[["feerate",3]]]],[11,"ne","","",104,[[["feerate",3]]]],[11,"eq","","",93,[[["utxo",3]]]],[11,"ne","","",93,[[["utxo",3]]]],[11,"eq","","",94,[[["transactiondetails",3]]]],[11,"ne","","",94,[[["transactiondetails",3]]]],[11,"eq","bdk::wallet::address_validator","",73,[[["addressvalidatorerror",4]]]],[11,"ne","","",73,[[["addressvalidatorerror",4]]]],[11,"eq","bdk::wallet::signer","",79,[[["signerid",4]]]],[11,"ne","","",79,[[["signerid",4]]]],[11,"eq","","",80,[[["signererror",4]]]],[11,"eq","","",82,[[["signerordering",3]]]],[11,"ne","","",82,[[["signerordering",3]]]],[11,"eq","bdk::wallet::tx_builder","",85,[[["txordering",4]]]],[11,"eq","","",86,[[["changespendpolicy",4]]]],[11,"partial_cmp","bdk::descriptor::policy","",44,[[["condition",3]],[["ordering",4],["option",4]]]],[11,"lt","","",44,[[["condition",3]]]],[11,"le","","",44,[[["condition",3]]]],[11,"gt","","",44,[[["condition",3]]]],[11,"ge","","",44,[[["condition",3]]]],[11,"partial_cmp","bdk","",104,[[["feerate",3]],[["ordering",4],["option",4]]]],[11,"lt","","",104,[[["feerate",3]]]],[11,"le","","",104,[[["feerate",3]]]],[11,"gt","","",104,[[["feerate",3]]]],[11,"ge","","",104,[[["feerate",3]]]],[11,"partial_cmp","bdk::wallet::signer","",82,[[["signerordering",3]],[["ordering",4],["option",4]]]],[11,"lt","","",82,[[["signerordering",3]]]],[11,"le","","",82,[[["signerordering",3]]]],[11,"gt","","",82,[[["signerordering",3]]]],[11,"ge","","",82,[[["signerordering",3]]]],[11,"partial_cmp","bdk::wallet::tx_builder","",85,[[["txordering",4]],[["ordering",4],["option",4]]]],[11,"partial_cmp","","",86,[[["changespendpolicy",4]],[["ordering",4],["option",4]]]],[11,"to_string","bdk::wallet::export","",78,[[],["string",3]]],[11,"deref","bdk::keys","",68,[[]]],[11,"fmt","bdk","",89,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::any","",1,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::electrum","",2,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",3,[[["formatter",3]],["result",6]]],[11,"fmt","","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",96,[[["formatter",3]],["result",6]]],[11,"fmt","","",97,[[["formatter",3]],["result",6]]],[11,"fmt","","",6,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain","",10,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::database::any","",14,[[["formatter",3]],["result",6]]],[11,"fmt","","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",17,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::database::memory","",18,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",29,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",103,[[["formatter",3]],["result",6]]],[11,"fmt","","",30,[[["formatter",3]],["result",6]]],[11,"fmt","","",39,[[["formatter",3]],["result",6]]],[11,"fmt","","",43,[[["formatter",3]],["result",6]]],[11,"fmt","","",44,[[["formatter",3]],["result",6]]],[11,"fmt","","",45,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::keys","",63,[[["formatter",3]],["result",6]]],[11,"fmt","","",64,[[["formatter",3]],["result",6]]],[11,"fmt","","",71,[[["formatter",3]],["result",6]]],[11,"fmt","","",72,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",92,[[["formatter",3]],["result",6]]],[11,"fmt","","",104,[[["formatter",3]],["result",6]]],[11,"fmt","","",93,[[["formatter",3]],["result",6]]],[11,"fmt","","",94,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",73,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::coin_selection","",75,[[["formatter",3]],["result",6]]],[11,"fmt","","",105,[[["formatter",3]],["result",6]]],[11,"fmt","","",77,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::export","",78,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",79,[[["formatter",3]],["result",6]]],[11,"fmt","","",80,[[["formatter",3]],["result",6]]],[11,"fmt","","",82,[[["formatter",3]],["result",6]]],[11,"fmt","","",83,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::tx_builder","",106,[[["formatter",3]],["result",6]]],[11,"fmt","","",107,[[["formatter",3]],["result",6]]],[11,"fmt","","",84,[[["formatter",3]],["result",6]]],[11,"fmt","","",85,[[["formatter",3]],["result",6]]],[11,"fmt","","",86,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",89,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",5,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",9,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",29,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",45,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::keys","",72,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",73,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",80,[[["formatter",3]],["result",6]]],[11,"hash","bdk::blockchain","",10,[[]]],[11,"hash","bdk::descriptor::policy","",44,[[]]],[11,"hash","bdk","",92,[[]]],[11,"hash","bdk::wallet::signer","",79,[[]]],[11,"hash","","",82,[[]]],[11,"hash","bdk::wallet::tx_builder","",85,[[]]],[11,"hash","","",86,[[]]],[11,"from_str","bdk::wallet::export","",78,[[],["result",4]]],[11,"serialize","bdk::blockchain::any","",1,[[],["result",4]]],[11,"serialize","bdk::blockchain::electrum","",2,[[],["result",4]]],[11,"serialize","bdk::blockchain::esplora","",4,[[],["result",4]]],[11,"serialize","bdk::blockchain::compact_filters","",7,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","bdk::database::any","",16,[[],["result",4]]],[11,"serialize","","",17,[[],["result",4]]],[11,"serialize","bdk::descriptor::policy","",103,[[],["result",4]]],[11,"serialize","","",30,[[],["result",4]]],[11,"serialize","","",39,[[],["result",4]]],[11,"serialize","","",43,[[],["result",4]]],[11,"serialize","","",44,[[],["result",4]]],[11,"serialize","bdk","",92,[[],["result",4]]],[11,"serialize","","",93,[[],["result",4]]],[11,"serialize","","",94,[[],["result",4]]],[11,"serialize","bdk::wallet::export","",78,[[],["result",4]]],[11,"deserialize","bdk::blockchain::any","",1,[[],["result",4]]],[11,"deserialize","bdk::blockchain::electrum","",2,[[],["result",4]]],[11,"deserialize","bdk::blockchain::esplora","",4,[[],["result",4]]],[11,"deserialize","bdk::blockchain::compact_filters","",7,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","bdk::database::any","",16,[[],["result",4]]],[11,"deserialize","","",17,[[],["result",4]]],[11,"deserialize","bdk","",92,[[],["result",4]]],[11,"deserialize","","",93,[[],["result",4]]],[11,"deserialize","","",94,[[],["result",4]]],[11,"deserialize","bdk::wallet::export","",78,[[],["result",4]]],[11,"add_tx","bdk::blockchain::compact_filters","Add a transaction to the mempool",96,[[["transaction",3]]]],[11,"get_tx","","Look-up a transaction in the mempool given an [Inventory] …",96,[[["inventory",4]],[["option",4],["transaction",3]]]],[11,"has_tx","","Return whether or not the mempool contains a transaction …",96,[[["txid",3]]]],[11,"iter_txs","","Return the list of transactions contained in the mempool",96,[[],[["vec",3],["transaction",3]]]],[11,"connect","","Connect to a peer over a plaintext TCP connection",97,[[["tosocketaddrs",8],["mempool",3],["network",4],["arc",3]],[["result",4],["compactfilterserror",4]]]],[11,"connect_proxy","","Connect to a peer through a SOCKS5 proxy, optionally by …",97,[[["tosocketaddrs",8],["totargetaddr",8],["mempool",3],["network",4],["option",4],["arc",3]],[["result",4],["compactfilterserror",4]]]],[11,"get_version","","Return the [VersionMessage] sent by the peer",97,[[],["versionmessage",3]]],[11,"get_network","","Return the Bitcoin [Network] in use",97,[[],["network",4]]],[11,"get_mempool","","Return the mempool used by this peer",97,[[],[["mempool",3],["arc",3]]]],[11,"is_connected","","Return whether or not the peer is still connected",97,[[]]],[11,"send","","Send a raw Bitcoin message to the peer",97,[[["networkmessage",4]],[["compactfilterserror",4],["result",4]]]],[11,"recv","","Waits for a specific incoming Bitcoin message, optionally …",97,[[["duration",3],["option",4]],[["result",4],["option",4],["compactfilterserror",4]]]],[11,"translate_pk","bdk::descriptor","Convert a descriptor using abstract keys to one using …",23,[[],[["result",4],["descriptor",4]]]],[11,"sanity_check","","Whether the descriptor is safe Checks whether all the …",23,[[],[["result",4],["error",4]]]],[11,"address","","Computes the Bitcoin address of the descriptor, if one …",23,[[["network",4]],[["address",3],["option",4]]]],[11,"script_pubkey","","Computes the scriptpubkey of the descriptor to_pk_ctx …",23,[[],["script",3]]],[11,"unsigned_script_sig","","Computes the scriptSig that will be in place for an …",23,[[],["script",3]]],[11,"witness_script","","Computes the \\\"witness script\\\" of the descriptor, i.e. the …",23,[[],["script",3]]],[11,"get_satisfication","","Returns satisfying witness and scriptSig to spend an …",23,[[],[["error",4],["result",4]]]],[11,"satisfy","","Attempts to produce a satisfying witness and scriptSig to …",23,[[["txin",3]],[["result",4],["error",4]]]],[11,"max_satisfaction_weight","","Computes an upper bound on the weight of a satisfying …",23,[[],["option",4]]],[11,"script_code","","Get the scriptCode of a transaction output.",23,[[],["script",3]]],[11,"derive","","Derives all wildcard keys in the descriptor using the …",23,[[["childnumber",4]],[["descriptorpublickey",4],["descriptor",4]]]],[11,"parse_descriptor","","Parse a descriptor that may contain secret keys",23,[[],[["result",4],["error",4]]]],[11,"to_string_with_secret","","Serialize a descriptor to string with its secret keys",23,[[["hashmap",3]],["string",3]]],[11,"requires_sig","","Whether all spend paths of miniscript require a signature",24,[[]]],[11,"is_non_malleable","","Whether the miniscript is malleable",24,[[]]],[11,"within_resource_limits","","Whether the miniscript can exceed the resource …",24,[[]]],[11,"has_mixed_timelocks","","Whether the miniscript contains a combination of timelocks",24,[[]]],[11,"has_repeated_keys","","Whether the miniscript has repeated Pk or Pkh",24,[[]]],[11,"sanity_check","","Check whether the underlying Miniscript is safe under the …",24,[[],[["analysiserror",4],["result",4]]]],[11,"iter","","Creates a new [Iter] iterator that will iterate over all […",24,[[],["iter",3]]],[11,"iter_pk","","Creates a new [PkIter] iterator that will iterate over …",24,[[],["pkiter",3]]],[11,"iter_pkh","","Creates a new [PkhIter] iterator that will iterate over …",24,[[],["pkhiter",3]]],[11,"iter_pk_pkh","","Creates a new [PkPkhIter] iterator that will iterate over …",24,[[],["pkpkhiter",3]]],[11,"branches","","Enumerates all child nodes of the current AST node (self) …",24,[[],[["miniscript",3],["global",3],["vec",3]]]],[11,"get_nth_child","","Returns child node with given index, if any",24,[[],[["miniscript",3],["option",4]]]],[11,"get_leaf_pk","","Returns Vec with cloned version of all public keys from …",24,[[],[["global",3],["vec",3]]]],[11,"get_leaf_pkh","","Returns Vec with hashes of all public keys from the …",24,[[],[["global",3],["vec",3]]]],[11,"get_leaf_pk_pkh","","Returns Vec of [PkPkh] entries, representing either …",24,[[],[["global",3],["vec",3],["pkpkh",4]]]],[11,"get_nth_pk","","Returns Option::Some with cloned n\'th public key from the …",24,[[],["option",4]]],[11,"get_nth_pkh","","Returns Option::Some with hash of n\'th public key from …",24,[[],["option",4]]],[11,"get_nth_pk_pkh","","Returns Option::Some with hash of n\'th public key or hash …",24,[[],[["option",4],["pkpkh",4]]]],[11,"from_ast","","Add type information(Type and Extdata) to Miniscript …",24,[[["terminal",4]],[["miniscript",3],["error",4],["result",4]]]],[11,"into_inner","","Extracts the AstElem representing the root of the …",24,[[],["terminal",4]]],[11,"as_inner","","Get a reference to the inner AstElem representing the …",24,[[],["terminal",4]]],[11,"parse_insane","","Attempt to parse an insane(scripts don\'t clear sanity …",24,[[["script",3]],[["result",4],["miniscript",3],["error",4]]]],[11,"parse","","Attempt to parse a Script into Miniscript representation. …",24,[[["script",3]],[["result",4],["miniscript",3],["error",4]]]],[11,"encode","","Encode as a Bitcoin script",24,[[],["script",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript …",24,[[]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the …",24,[[],["option",4]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For …",24,[[],["option",4]]],[11,"translate_pk","","This will panic if translatefpk returns an uncompressed …",24,[[],[["miniscript",3],["result",4]]]],[11,"from_str_insane","","Attempt to parse an insane(scripts don\'t clear sanity …",24,[[],[["miniscript",3],["error",4],["result",4]]]],[11,"satisfy","","Attempt to produce non-malleable satisfying witness for …",24,[[],[["error",4],["vec",3],["result",4]]]],[11,"satisfy_malleable","","Attempt to produce a malleable satisfying witness for the …",24,[[],[["error",4],["vec",3],["result",4]]]],[11,"lift_check","","Lifting corresponds conversion of miniscript into Policy […",24,[[],[["lifterror",4],["result",4]]]],[11,"translate_pk","","Convert an AST element with one public key type to one of …",27,[[],[["result",4],["terminal",4]]]],[11,"encode","","Encode the element as a fragment of Bitcoin Script. The …",27,[[["builder",3]],["builder",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript …",27,[[]]],[11,"derive","bdk::keys","Derives the specified child key if self is a wildcard …",58,[[["childnumber",4]],["descriptorpublickey",4]]],[11,"as_public","","Return the public version of this key, by applying either …",59,[[["secp256k1",3]],[["descriptorpublickey",4],["result",4],["descriptorkeyparseerror",3]]]],[11,"new","","Create a new instance of SortedMultiVec given a list of …",62,[[["global",3],["vec",3]],[["result",4],["sortedmultivec",3],["error",4]]]],[11,"translate_pk","","This will panic if translatefpk returns an uncompressed …",62,[[],[["sortedmultivec",3],["result",4]]]],[11,"sorted_node","","Create Terminal::Multi containing sorted pubkeys",62,[[],["terminal",4]]],[11,"encode","","Encode as a Bitcoin script",62,[[],["script",3]]],[11,"satisfy","","Attempt to produce a satisfying witness for the witness …",62,[[],[["error",4],["vec",3],["result",4]]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript …",62,[[]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the …",62,[[]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For …",62,[[]]],[11,"as_byte","bdk","",92,[[]]],[11,"from_btc_per_kvb","","Create a new instance of [FeeRate] given a float fee rate …",104,[[]]],[11,"from_sat_per_vb","","Create a new instance of [FeeRate] given a float fee rate …",104,[[]]],[11,"default_min_relay_fee","","Create a new [FeeRate] with the default min relay fee …",104,[[]]],[11,"as_sat_vb","","Return the value as satoshi/vbyte",104,[[]]]],"p":[[4,"AnyBlockchain"],[4,"AnyBlockchainConfig"],[3,"ElectrumBlockchainConfig"],[3,"EsploraBlockchain"],[3,"EsploraBlockchainConfig"],[4,"EsploraError"],[3,"CompactFiltersBlockchain"],[3,"BitcoinPeerConfig"],[3,"CompactFiltersBlockchainConfig"],[4,"CompactFiltersError"],[4,"Capability"],[8,"Blockchain"],[8,"ConfigurableBlockchain"],[8,"Progress"],[4,"AnyDatabase"],[4,"AnyBatch"],[3,"SledDbConfiguration"],[4,"AnyDatabaseConfig"],[3,"MemoryDatabase"],[8,"BatchOperations"],[8,"Database"],[8,"BatchDatabase"],[8,"ConfigurableDatabase"],[4,"Descriptor"],[3,"Miniscript"],[8,"MiniscriptKey"],[8,"ScriptContext"],[4,"Terminal"],[8,"ToPublicKey"],[4,"Error"],[4,"SatisfiableItem"],[13,"SHA256Preimage"],[13,"HASH256Preimage"],[13,"RIPEMD160Preimage"],[13,"HASH160Preimage"],[13,"AbsoluteTimelock"],[13,"RelativeTimelock"],[13,"Multisig"],[13,"Thresh"],[4,"Satisfaction"],[13,"Partial"],[13,"PartialComplete"],[13,"Complete"],[3,"Policy"],[3,"Condition"],[4,"PolicyError"],[8,"DescriptorTemplate"],[3,"P2PKH"],[3,"P2WPKH_P2SH"],[3,"P2WPKH"],[3,"BIP44"],[3,"BIP44Public"],[3,"BIP49"],[3,"BIP49Public"],[3,"BIP84"],[3,"BIP84Public"],[8,"ToWalletDescriptor"],[8,"ExtractPolicy"],[4,"DescriptorPublicKey"],[4,"DescriptorSecretKey"],[3,"DescriptorSinglePriv"],[3,"DescriptorSinglePub"],[3,"SortedMultiVec"],[4,"DescriptorKey"],[4,"ScriptContextEnum"],[8,"ExtScriptContext"],[8,"ToDescriptorKey"],[8,"DerivableKey"],[3,"GeneratedKey"],[8,"GeneratableKey"],[8,"GeneratableDefaultOptions"],[3,"PrivateKeyGenerateOptions"],[4,"KeyError"],[4,"AddressValidatorError"],[8,"AddressValidator"],[3,"CoinSelectionResult"],[8,"CoinSelectionAlgorithm"],[3,"BranchAndBoundCoinSelection"],[3,"WalletExport"],[4,"SignerId"],[4,"SignerError"],[8,"Signer"],[3,"SignerOrdering"],[3,"SignersContainer"],[3,"TxBuilder"],[4,"TxOrdering"],[4,"ChangeSpendPolicy"],[8,"IsDust"],[3,"Wallet"],[4,"Error"],[13,"FeeRateTooLow"],[13,"FeeTooLow"],[4,"ScriptType"],[3,"UTXO"],[3,"TransactionDetails"],[3,"ElectrumBlockchain"],[3,"Mempool"],[3,"Peer"],[3,"OfflineBlockchain"],[3,"NoopProgress"],[3,"LogProgress"],[4,"Legacy"],[4,"Segwitv0"],[3,"PKOrF"],[3,"FeeRate"],[3,"LargestFirstCoinSelection"],[3,"CreateTx"],[3,"BumpFee"],[6,"ExtendedDescriptor"],[6,"DescriptorTemplateOut"],[6,"MnemonicWithPassphrase"]]}\ +"bdk":{"doc":"A modern, lightweight, descriptor-based wallet library …","i":[[0,"blockchain","bdk","Blockchain backends",null,null],[0,"any","bdk::blockchain","Runtime-checked blockchain types",null,null],[4,"AnyBlockchain","bdk::blockchain::any","Type that can contain any of the [Blockchain] types …",null,null],[13,"Electrum","","",0,null],[13,"Esplora","","",0,null],[13,"CompactFilters","","",0,null],[4,"AnyBlockchainConfig","","Type that can contain any of the blockchain …",null,null],[13,"Electrum","","",1,null],[13,"Esplora","","",1,null],[13,"CompactFilters","","",1,null],[0,"electrum","bdk::blockchain","Electrum",null,null],[3,"ElectrumBlockchain","bdk::blockchain::electrum","Wrapper over an Electrum Client that implements the …",null,null],[3,"ElectrumBlockchainConfig","","Configuration for an [ElectrumBlockchain]",null,null],[12,"url","","URL of the Electrum server (such as ElectrumX, Esplora, …",2,null],[12,"socks5","","URL of the socks5 proxy server or a Tor service",2,null],[12,"retry","","Request retry count",2,null],[12,"timeout","","Request timeout (seconds)",2,null],[0,"esplora","bdk::blockchain","Esplora",null,null],[3,"EsploraBlockchain","bdk::blockchain::esplora","Structure that implements the logic to sync with Esplora",null,null],[11,"new","","Create a new instance of the client from a base URL",3,[[["option",4]]]],[3,"EsploraBlockchainConfig","","Configuration for an [EsploraBlockchain]",null,null],[12,"base_url","","Base URL of the esplora service",4,null],[12,"concurrency","","Number of parallel requests sent to the esplora service …",4,null],[4,"EsploraError","","Errors that can happen during a sync with […",null,null],[13,"Reqwest","","Error with the HTTP call",5,null],[13,"Parsing","","Invalid number returned",5,null],[13,"BitcoinEncoding","","Invalid Bitcoin data returned",5,null],[13,"Hex","","Invalid Hex data returned",5,null],[13,"TransactionNotFound","","Transaction not found",5,null],[13,"HeaderHeightNotFound","","Header height not found",5,null],[13,"HeaderHashNotFound","","Header hash not found",5,null],[0,"compact_filters","bdk::blockchain","Compact Filters",null,null],[3,"Mempool","bdk::blockchain::compact_filters","Container for unconfirmed, but valid Bitcoin transactions",null,null],[3,"Peer","","A Bitcoin peer",null,null],[3,"CompactFiltersBlockchain","","Structure implementing the required blockchain traits",null,null],[11,"new","","Construct a new instance given a list of peers, a path to …",6,[[["asref",8],["option",4],["peer",3],["vec",3],["path",3]],[["result",4],["compactfilterserror",4]]]],[3,"BitcoinPeerConfig","","Data to connect to a Bitcoin P2P peer",null,null],[12,"address","","Peer address such as 127.0.0.1:18333",7,null],[12,"socks5","","Optional socks5 proxy",7,null],[12,"socks5_credentials","","Optional socks5 proxy credentials",7,null],[3,"CompactFiltersBlockchainConfig","","Configuration for a [CompactFiltersBlockchain]",null,null],[12,"peers","","List of peers to try to connect to for asking headers and …",8,null],[12,"network","","Network used",8,null],[12,"storage_dir","","Storage dir to save partially downloaded headers and full …",8,null],[12,"skip_blocks","","Optionally skip initial skip_blocks blocks (default: 0)",8,null],[4,"CompactFiltersError","","An error that can occur during sync with a […",null,null],[13,"InvalidResponse","","A peer sent an invalid or unexpected response",9,null],[13,"InvalidHeaders","","The headers returned are invalid",9,null],[13,"InvalidFilterHeader","","The compact filter headers returned are invalid",9,null],[13,"InvalidFilter","","The compact filter returned is invalid",9,null],[13,"MissingBlock","","The peer is missing a block in the valid chain",9,null],[13,"DataCorruption","","The data stored in the block filters storage are corrupted",9,null],[13,"NotConnected","","A peer is not connected",9,null],[13,"Timeout","","A peer took too long to reply to one of our messages",9,null],[13,"NoPeers","","No peers have been specified",9,null],[13,"DB","","Internal database error",9,null],[13,"IO","","Internal I/O error",9,null],[13,"BIP158","","Invalid BIP158 filter",9,null],[13,"Time","","Internal system time error",9,null],[13,"Global","","Wrapper for [crate::error::Error]",9,null],[4,"Capability","bdk::blockchain","Capabilities that can be supported by a [Blockchain] …",null,null],[13,"FullHistory","","Can recover the full history of a wallet and not only the …",10,null],[13,"GetAnyTx","","Can fetch any historical transaction given its txid",10,null],[13,"AccurateFees","","Can compute accurate fees for the transactions found …",10,null],[8,"BlockchainMarker","","Marker trait for a blockchain backend",null,null],[3,"OfflineBlockchain","","Type that only implements [BlockchainMarker] and is …",null,null],[8,"Blockchain","","Trait that defines the actions that must be supported by …",null,null],[10,"get_capabilities","","Return the set of [Capability] supported by this backend",11,[[],[["hashset",3],["capability",4]]]],[10,"setup","","Setup the backend and populate the internal database for …",11,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"sync","","Populate the internal database with transactions and UTXOs",11,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[10,"get_tx","","Fetch a transaction from the blockchain given its txid",11,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"broadcast","","Broadcast a transaction",11,[[["transaction",3]],[["result",4],["error",4]]]],[10,"get_height","","Return the current height",11,[[],[["error",4],["result",4]]]],[10,"estimate_fee","","Estimate the fee rate required to confirm a transaction …",11,[[],[["error",4],["result",4],["feerate",3]]]],[8,"ConfigurableBlockchain","","Trait for [Blockchain] types that can be created given a …",null,null],[16,"Config","","Type that contains the configuration",12,null],[10,"from_config","","Create a new instance given a configuration",12,[[],[["result",4],["error",4]]]],[6,"ProgressData","","Data sent with a progress update over a [channel]",null,null],[8,"Progress","","Trait for types that can receive and process progress …",null,null],[10,"update","","Send a new progress update",13,[[["option",4],["string",3]],[["result",4],["error",4]]]],[5,"progress","","Shortcut to create a [channel] (pair of [Sender] and […",null,[[]]],[3,"NoopProgress","","Type that implements [Progress] and drops every update …",null,null],[5,"noop_progress","","Create a new instance of [NoopProgress]",null,[[],["noopprogress",3]]],[3,"LogProgress","","Type that implements [Progress] and logs at level INFO …",null,null],[5,"log_progress","","Create a nwe instance of [LogProgress]",null,[[],["logprogress",3]]],[0,"database","bdk","Database types",null,null],[0,"any","bdk::database","Runtime-checked database types",null,null],[4,"AnyDatabase","bdk::database::any","Type that can contain any of the [Database] types defined …",null,null],[13,"Memory","","",14,null],[13,"Sled","","",14,null],[4,"AnyBatch","","Type that contains any of the [BatchDatabase::Batch] …",null,null],[13,"Memory","","",15,null],[13,"Sled","","",15,null],[3,"SledDbConfiguration","","Configuration type for a [sled::Tree] database",null,null],[12,"path","","Main directory of the db",16,null],[12,"tree_name","","Name of the database tree, a separated namespace for the …",16,null],[4,"AnyDatabaseConfig","","Type that can contain any of the database configurations …",null,null],[13,"Memory","","Memory database has no config",17,null],[13,"Sled","","",17,null],[0,"memory","bdk::database","In-memory ephemeral database",null,null],[3,"MemoryDatabase","bdk::database::memory","In-memory ephemeral database",null,null],[11,"new","","Create a new empty database",18,[[]]],[8,"BatchOperations","bdk::database","Trait for operations that can be batched",null,null],[10,"set_script_pubkey","","Store a script_pubkey along with its keychain and child …",19,[[["script",3],["keychainkind",4]],[["result",4],["error",4]]]],[10,"set_utxo","","Store a [UTXO]",19,[[["utxo",3]],[["result",4],["error",4]]]],[10,"set_raw_tx","","Store a raw transaction",19,[[["transaction",3]],[["result",4],["error",4]]]],[10,"set_tx","","Store the metadata of a transaction",19,[[["transactiondetails",3]],[["result",4],["error",4]]]],[10,"set_last_index","","Store the last derivation index for a given keychain.",19,[[["keychainkind",4]],[["result",4],["error",4]]]],[10,"del_script_pubkey_from_path","","Delete a script_pubkey given the keychain and its child …",19,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[10,"del_path_from_script_pubkey","","Delete the data related to a specific script_pubkey, …",19,[[["script",3]],[["option",4],["error",4],["result",4]]]],[10,"del_utxo","","Delete a [UTXO] given its [OutPoint]",19,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"del_raw_tx","","Delete a raw transaction given its [Txid]",19,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"del_tx","","Delete the metadata of a transaction and optionally the …",19,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"del_last_index","","Delete the last derivation index for a keychain.",19,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[8,"Database","","Trait for reading data from a database",null,null],[10,"check_descriptor_checksum","","Read and checks the descriptor checksum for a given …",20,[[["keychainkind",4],["asref",8]],[["result",4],["error",4]]]],[10,"iter_script_pubkeys","","Return the list of script_pubkeys",20,[[["option",4],["keychainkind",4]],[["vec",3],["error",4],["result",4]]]],[10,"iter_utxos","","Return the list of [UTXO]s",20,[[],[["error",4],["result",4],["vec",3]]]],[10,"iter_raw_txs","","Return the list of raw transactions",20,[[],[["error",4],["vec",3],["result",4]]]],[10,"iter_txs","","Return the list of transactions metadata",20,[[],[["result",4],["vec",3],["error",4]]]],[10,"get_script_pubkey_from_path","","Fetch a script_pubkey given the child number of a …",20,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[10,"get_path_from_script_pubkey","","Fetch the keychain and child number of a given …",20,[[["script",3]],[["option",4],["error",4],["result",4]]]],[10,"get_utxo","","Fetch a [UTXO] given its [OutPoint]",20,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[10,"get_raw_tx","","Fetch a raw transaction given its [Txid]",20,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"get_tx","","Fetch the transaction metadata and optionally also the …",20,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[10,"get_last_index","","Return the last defivation index for a keychain.",20,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[10,"increment_last_index","","Increment the last derivation index for a keychain and …",20,[[["keychainkind",4]],[["error",4],["result",4]]]],[8,"BatchDatabase","","Trait for a database that supports batch operations",null,null],[16,"Batch","","Container for the operations",21,null],[10,"begin_batch","","Create a new batch container",21,[[]]],[10,"commit_batch","","Consume and apply a batch of operations",21,[[],[["result",4],["error",4]]]],[8,"ConfigurableDatabase","","Trait for [Database] types that can be created given a …",null,null],[16,"Config","","Type that contains the configuration",22,null],[10,"from_config","","Create a new instance given a configuration",22,[[],[["result",4],["error",4]]]],[0,"descriptor","bdk","Descriptors",null,null],[6,"KeyMap","bdk::descriptor","Alias type for a map of public key to secret key",null,null],[4,"Descriptor","","Script descriptor",null,null],[13,"Bare","","A raw scriptpubkey (including pay-to-pubkey) under Legacy …",23,null],[13,"Pk","","Pay-to-Pubkey",23,null],[13,"Pkh","","Pay-to-PubKey-Hash",23,null],[13,"Wpkh","","Pay-to-Witness-PubKey-Hash",23,null],[13,"ShWpkh","","Pay-to-Witness-PubKey-Hash inside P2SH",23,null],[13,"Sh","","Pay-to-ScriptHash with Legacy context",23,null],[13,"Wsh","","Pay-to-Witness-ScriptHash with Segwitv0 context",23,null],[13,"ShWsh","","P2SH-P2WSH with Segwitv0 context",23,null],[13,"ShSortedMulti","","Sortedmulti under P2SH",23,null],[13,"WshSortedMulti","","Sortedmulti under P2WSH",23,null],[13,"ShWshSortedMulti","","Sortedmulti under P2SH-P2WSH",23,null],[4,"Legacy","","Legacy ScriptContext To be used as P2SH scripts For …",null,null],[3,"Miniscript","","Top-level script AST type",null,null],[12,"node","","A node in the Abstract Syntax Tree(",24,null],[12,"ty","","The correctness and malleability type information for the …",24,null],[12,"ext","","Additional information helpful for extra analysis.",24,null],[8,"MiniscriptKey","","Public key trait which can be converted to Hash type",null,null],[11,"is_uncompressed","","Check if the publicKey is uncompressed. The default …",25,[[]]],[16,"Hash","","The associated Hash type with the publicKey",25,null],[10,"to_pubkeyhash","","Converts an object to PublicHash",25,[[]]],[8,"ScriptContext","","The ScriptContext for Miniscript. Additional type …",null,null],[10,"check_terminal_non_malleable","","Depending on ScriptContext, fragments can be malleable. …",26,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","Check whether the given satisfaction is valid under the …",26,[[],[["result",4],["scriptcontexterror",4]]]],[10,"max_satisfaction_size","","Depending on script context, the size of a satifaction …",26,[[["miniscript",3]],["option",4]]],[11,"check_global_consensus_validity","","Depending on script Context, some of the Terminals might …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_policy_validity","","Depending on script Context, some of the script resource …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","Consensus rules at the Miniscript satisfaction time. It …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","Policy rules at the Miniscript satisfaction time. It is …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_validity","","Check the consensus + policy(if not disabled) rules that …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_validity","","Check the consensus + policy(if not disabled) rules …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"top_level_type_check","","Check whether the top-level is type B",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"other_top_level_checks","","Other top level checks that are context specific",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"top_level_checks","","Check top level consensus rules.",26,[[["miniscript",3]],[["result",4],["error",4]]]],[4,"Segwitv0","","Segwitv0 ScriptContext",null,null],[4,"Terminal","","All AST elements",null,null],[13,"True","","1",27,null],[13,"False","","0",27,null],[13,"PkK","","",27,null],[13,"PkH","","DUP HASH160 EQUALVERIFY",27,null],[13,"After","","n CHECKLOCKTIMEVERIFY",27,null],[13,"Older","","n CHECKSEQUENCEVERIFY",27,null],[13,"Sha256","","SIZE 32 EQUALVERIFY SHA256 EQUAL",27,null],[13,"Hash256","","SIZE 32 EQUALVERIFY HASH256 EQUAL",27,null],[13,"Ripemd160","","SIZE 32 EQUALVERIFY RIPEMD160 EQUAL",27,null],[13,"Hash160","","SIZE 32 EQUALVERIFY HASH160 EQUAL",27,null],[13,"Alt","","TOALTSTACK [E] FROMALTSTACK",27,null],[13,"Swap","","SWAP [E1]",27,null],[13,"Check","","[Kt]/[Ke] CHECKSIG",27,null],[13,"DupIf","","DUP IF [V] ENDIF",27,null],[13,"Verify","","[T] VERIFY",27,null],[13,"NonZero","","SIZE 0NOTEQUAL IF [Fn] ENDIF",27,null],[13,"ZeroNotEqual","","[X] 0NOTEQUAL",27,null],[13,"AndV","","[V] [T]/[V]/[F]/[Kt]",27,null],[13,"AndB","","[E] [W] BOOLAND",27,null],[13,"AndOr","","[various] NOTIF [various] ELSE [various] ENDIF",27,null],[13,"OrB","","[E] [W] BOOLOR",27,null],[13,"OrD","","[E] IFDUP NOTIF [T]/[E] ENDIF",27,null],[13,"OrC","","[E] NOTIF [V] ENDIF",27,null],[13,"OrI","","IF [various] ELSE [various] ENDIF",27,null],[13,"Thresh","","[E] ([W] ADD)* k EQUAL",27,null],[13,"Multi","","k ()* n CHECKMULTISIG",27,null],[8,"ToPublicKey","","Trait describing public key types which can be converted …",null,null],[10,"to_public_key","","Converts an object to a public key C represents …",28,[[],["publickey",3]]],[11,"serialized_len","","Computes the size of a public key when serialized in a …",28,[[]]],[10,"hash_to_hash160","","Converts a hashed version of the public key to a hash160 …",28,[[],["hash",3]]],[0,"checksum","","Descriptor checksum",null,null],[5,"get_checksum","bdk::descriptor::checksum","Compute the checksum of a descriptor",null,[[],[["string",3],["result",4],["error",4]]]],[0,"error","bdk::descriptor","Descriptor errors",null,null],[4,"Error","bdk::descriptor::error","Errors related to the parsing and usage of descriptors",null,null],[13,"InvalidHDKeyPath","","Invalid HD Key path, such as having a wildcard but a …",29,null],[13,"Key","","Error thrown while working with keys",29,null],[13,"Policy","","Error while extracting and manipulating policies",29,null],[13,"InvalidDescriptorCharacter","","Invalid character found in the descriptor checksum",29,null],[13,"BIP32","","BIP32 error",29,null],[13,"Base58","","Error during base58 decoding",29,null],[13,"PK","","Key-related error",29,null],[13,"Miniscript","","Miniscript error",29,null],[13,"Hex","","Hex decoding error",29,null],[0,"policy","bdk::descriptor","Descriptor policy",null,null],[3,"PKOrF","bdk::descriptor::policy","Raw public key or extended key fingerprint",null,null],[4,"SatisfiableItem","","An item that needs to be satisfied",null,null],[13,"Signature","","Signature for a raw public key",30,null],[13,"SignatureKey","","Signature for an extended key fingerprint",30,null],[13,"SHA256Preimage","","SHA256 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",31,null],[13,"HASH256Preimage","bdk::descriptor::policy","Double SHA256 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",32,null],[13,"RIPEMD160Preimage","bdk::descriptor::policy","RIPEMD160 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",33,null],[13,"HASH160Preimage","bdk::descriptor::policy","SHA256 then RIPEMD160 preimage hash",30,null],[12,"hash","bdk::descriptor::policy::SatisfiableItem","The digest value",34,null],[13,"AbsoluteTimelock","bdk::descriptor::policy","Absolute timeclock timestamp",30,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","The timestamp value",35,null],[13,"RelativeTimelock","bdk::descriptor::policy","Relative timelock locktime",30,null],[12,"value","bdk::descriptor::policy::SatisfiableItem","The locktime value",36,null],[13,"Multisig","bdk::descriptor::policy","Multi-signature public keys with threshold count",30,null],[12,"keys","bdk::descriptor::policy::SatisfiableItem","The raw public key or extended key fingerprint",37,null],[12,"threshold","","The required threshold count",37,null],[13,"Thresh","bdk::descriptor::policy","Threshold items with threshold count",30,null],[12,"items","bdk::descriptor::policy::SatisfiableItem","The policy items",38,null],[12,"threshold","","The required threshold count",38,null],[11,"is_leaf","bdk::descriptor::policy","Returns whether the [SatisfiableItem] is a leaf item",30,[[]]],[11,"id","","Returns a unique id for the [SatisfiableItem]",30,[[],["string",3]]],[6,"ConditionMap","","Type for a map of sets of [Condition] items keyed by each …",null,null],[6,"FoldedConditionMap","","Type for a map of folded sets of [Condition] items keyed …",null,null],[4,"Satisfaction","","Represent if and how much a policy item is satisfied by …",null,null],[13,"Partial","","Only a partial satisfaction of some kind of threshold …",39,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",40,null],[12,"m","","Threshold",40,null],[12,"items","","The items that can be satisfied by the descriptor",40,null],[12,"sorted","","Whether the items are sorted in lexicographic order (used …",40,null],[12,"conditions","","Extra conditions that also need to be satisfied",40,null],[13,"PartialComplete","bdk::descriptor::policy","Can reach the threshold of some kind of threshold policy",39,null],[12,"n","bdk::descriptor::policy::Satisfaction","Total number of items",41,null],[12,"m","","Threshold",41,null],[12,"items","","The items that can be satisfied by the descriptor",41,null],[12,"sorted","","Whether the items are sorted in lexicographic order (used …",41,null],[12,"conditions","","Extra conditions that also need to be satisfied",41,null],[13,"Complete","bdk::descriptor::policy","Can satisfy the policy item",39,null],[12,"condition","bdk::descriptor::policy::Satisfaction","Extra conditions that also need to be satisfied",42,null],[13,"None","bdk::descriptor::policy","Cannot satisfy or contribute to the policy item",39,null],[11,"is_leaf","","Returns whether the [Satisfaction] is a leaf item",39,[[]]],[3,"Policy","","Descriptor spending policy",null,null],[12,"id","","Identifier for this policy node",43,null],[12,"item","","Type of this policy node",43,null],[12,"satisfaction","","How a much given PSBT already satisfies this polcy node …",43,null],[12,"contribution","","How the wallet\'s descriptor can satisfy this policy node",43,null],[3,"Condition","","An extra condition that must be satisfied but that is out …",null,null],[12,"csv","","Optional CheckSequenceVerify condition",44,null],[12,"timelock","","Optional timelock condition",44,null],[11,"is_null","","Returns true if there are no extra conditions to verify",44,[[]]],[4,"PolicyError","","Errors that can happen while extracting and manipulating …",null,null],[13,"NotEnoughItemsSelected","","Not enough items are selected to satisfy a […",45,null],[13,"TooManyItemsSelected","","Too many items are selected to satisfy a […",45,null],[13,"IndexOutOfRange","","Index out of range for an item to satisfy a […",45,null],[13,"AddOnLeaf","","Can not add to an item that is [Satisfaction::None] or […",45,null],[13,"AddOnPartialComplete","","Can not add to an item that is […",45,null],[13,"MixedTimelockUnits","","Can not merge CSV or timelock values unless both are less …",45,null],[13,"IncompatibleConditions","","Incompatible conditions (not currently used)",45,null],[11,"requires_path","","Return whether or not a specific path in the policy tree …",43,[[]]],[11,"get_condition","","Return the conditions that are set by the spending policy …",43,[[["btreemap",3]],[["condition",3],["policyerror",4],["result",4]]]],[0,"template","bdk::descriptor","Descriptor templates",null,null],[6,"DescriptorTemplateOut","bdk::descriptor::template","Type alias for the return type of [DescriptorTemplate], …",null,null],[8,"DescriptorTemplate","","Trait for descriptor templates that can be built into a …",null,null],[10,"build","","Build the complete descriptor",46,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[3,"P2PKH","","P2PKH template. Expands to a descriptor pkh(key)",null,null],[12,"0","","",47,null],[3,"P2WPKH_P2SH","","P2WPKH-P2SH template. Expands to a descriptor …",null,null],[12,"0","","",48,null],[3,"P2WPKH","","P2WPKH template. Expands to a descriptor wpkh(key)",null,null],[12,"0","","",49,null],[3,"BIP44","","BIP44 template. Expands to pkh(key/44\'/0\'/0\'/{0,1}/*)",null,null],[12,"0","","",50,null],[12,"1","","",50,null],[3,"BIP44Public","","BIP44 public template. Expands to pkh(key/{0,1}/*)",null,null],[12,"0","","",51,null],[12,"1","","",51,null],[12,"2","","",51,null],[3,"BIP49","","BIP49 template. Expands to sh(wpkh(key/49\'/0\'/0\'/{0,1}/*))",null,null],[12,"0","","",52,null],[12,"1","","",52,null],[3,"BIP49Public","","BIP49 public template. Expands to sh(wpkh(key/{0,1}/*))",null,null],[12,"0","","",53,null],[12,"1","","",53,null],[12,"2","","",53,null],[3,"BIP84","","BIP84 template. Expands to wpkh(key/84\'/0\'/0\'/{0,1}/*)",null,null],[12,"0","","",54,null],[12,"1","","",54,null],[3,"BIP84Public","","BIP84 public template. Expands to wpkh(key/{0,1}/*)",null,null],[12,"0","","",55,null],[12,"1","","",55,null],[12,"2","","",55,null],[6,"ExtendedDescriptor","bdk::descriptor","Alias for a [Descriptor] that can contain extended keys …",null,null],[6,"HDKeyPaths","","Alias for the type of maps that represent derivation …",null,null],[8,"ToWalletDescriptor","","Trait for types which can be converted into an […",null,null],[10,"to_wallet_descriptor","","Convert to wallet descriptor",56,[[["network",4]],[["result",4],["keyerror",4]]]],[8,"ExtractPolicy","","Trait implemented on [Descriptor]s to add a method to …",null,null],[10,"extract_policy","","Extract the spending [policy]",57,[[["signerscontainer",3],["secp256k1",3]],[["option",4],["error",4],["result",4]]]],[0,"keys","bdk","Key formats",null,null],[4,"DescriptorPublicKey","bdk::keys","The MiniscriptKey corresponding to Descriptors. This can …",null,null],[13,"SinglePub","","Single Public Key",58,null],[13,"XPub","","Xpub",58,null],[4,"DescriptorSecretKey","","A Secret Key that can be either a single key or an Xprv",null,null],[13,"SinglePriv","","Single Secret Key",59,null],[13,"XPrv","","Xprv",59,null],[3,"DescriptorSinglePriv","","A Single Descriptor Secret Key with optional origin …",null,null],[12,"origin","","Origin information",60,null],[12,"key","","The key",60,null],[3,"DescriptorSinglePub","","A Single Descriptor Key with optional origin information",null,null],[12,"origin","","Origin information",61,null],[12,"key","","The key",61,null],[3,"SortedMultiVec","","Contents of a \\\"sortedmulti\\\" descriptor",null,null],[12,"k","","signatures required",62,null],[12,"pks","","public keys inside sorted Multi",62,null],[8,"ScriptContext","","The ScriptContext for Miniscript. Additional type …",null,null],[10,"check_terminal_non_malleable","","Depending on ScriptContext, fragments can be malleable. …",26,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","Check whether the given satisfaction is valid under the …",26,[[],[["result",4],["scriptcontexterror",4]]]],[10,"max_satisfaction_size","","Depending on script context, the size of a satifaction …",26,[[["miniscript",3]],["option",4]]],[11,"check_global_consensus_validity","","Depending on script Context, some of the Terminals might …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_policy_validity","","Depending on script Context, some of the script resource …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","Consensus rules at the Miniscript satisfaction time. It …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","Policy rules at the Miniscript satisfaction time. It is …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_validity","","Check the consensus + policy(if not disabled) rules that …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_validity","","Check the consensus + policy(if not disabled) rules …",26,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"top_level_type_check","","Check whether the top-level is type B",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"other_top_level_checks","","Other top level checks that are context specific",26,[[["miniscript",3]],[["result",4],["error",4]]]],[11,"top_level_checks","","Check top level consensus rules.",26,[[["miniscript",3]],[["result",4],["error",4]]]],[0,"bip39","","BIP-0039",null,null],[6,"MnemonicWithPassphrase","bdk::keys::bip39","Type for a BIP39 mnemonic with an optional passphrase",null,null],[6,"ValidNetworks","bdk::keys","Set of valid networks for a key",null,null],[5,"any_network","","Create a set containing mainnet, testnet and regtest",null,[[],["validnetworks",6]]],[5,"mainnet_network","","Create a set only containing mainnet",null,[[],["validnetworks",6]]],[5,"test_networks","","Create a set containing testnet and regtest",null,[[],["validnetworks",6]]],[5,"merge_networks","","Compute the intersection of two sets",null,[[["validnetworks",6]],["validnetworks",6]]],[4,"DescriptorKey","","Container for public or secret keys",null,null],[11,"from_public","","Create an instance given a public key and a set of valid …",63,[[["descriptorpublickey",4],["validnetworks",6]]]],[11,"from_secret","","Create an instance given a secret key and a set of valid …",63,[[["descriptorsecretkey",4],["validnetworks",6]]]],[11,"override_valid_networks","","Override the computed set of valid networks",63,[[["validnetworks",6]]]],[4,"ScriptContextEnum","","Enum representation of the known valid [ScriptContext]s",null,null],[13,"Legacy","","Legacy scripts",64,null],[13,"Segwitv0","","Segwitv0 scripts",64,null],[11,"is_legacy","","Returns whether the script context is […",64,[[]]],[11,"is_segwit_v0","","Returns whether the script context is […",64,[[]]],[8,"ExtScriptContext","","Trait that adds extra useful methods to [ScriptContext]s",null,null],[10,"as_enum","","Returns the [ScriptContext] as a [ScriptContextEnum]",65,[[],["scriptcontextenum",4]]],[11,"is_legacy","","Returns whether the script context is Legacy",65,[[]]],[11,"is_segwit_v0","","Returns whether the script context is Segwitv0",65,[[]]],[8,"ToDescriptorKey","","Trait for objects that can be turned into a public or …",null,null],[10,"to_descriptor_key","","Turn the key into a [DescriptorKey] within the requested […",66,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[8,"DerivableKey","","Trait for keys that can be derived.",null,null],[10,"add_metadata","","Add a extra metadata, consume self and turn it into a […",67,[[["option",4],["keysource",6],["derivationpath",3]],[["result",4],["descriptorkey",4],["keyerror",4]]]],[3,"GeneratedKey","","Output of a [GeneratableKey] key generation",null,null],[11,"into_key","","Consumes self and returns the key",68,[[]]],[8,"GeneratableKey","","Trait for keys that can be generated",null,null],[16,"Entropy","","Type specifying the amount of entropy required e.g. [u8;32…",69,null],[16,"Options","","Extra options required by the generate_with_entropy",69,null],[16,"Error","","Returned error in case of failure",69,null],[10,"generate_with_entropy","","Generate a key given the extra options and the entropy",69,[[],[["result",4],["generatedkey",3]]]],[11,"generate","","Generate a key given the options with a random entropy",69,[[],[["result",4],["generatedkey",3]]]],[8,"GeneratableDefaultOptions","","Trait that allows generating a key with the default …",null,null],[11,"generate_with_entropy_default","","Generate a key with the default options and a given …",70,[[],[["result",4],["generatedkey",3]]]],[11,"generate_default","","Generate a key with the default options and a random …",70,[[],[["result",4],["generatedkey",3]]]],[3,"PrivateKeyGenerateOptions","","Options for generating a [PrivateKey]",null,null],[12,"compressed","","Whether the generated key should be \\\"compressed\\\" or not",71,null],[4,"KeyError","","Errors thrown while working with keys",null,null],[13,"InvalidScriptContext","","The key cannot exist in the given script context",72,null],[13,"InvalidNetwork","","The key is not valid for the given network",72,null],[13,"InvalidChecksum","","The key has an invalid checksum",72,null],[13,"Message","","Custom error message",72,null],[13,"BIP32","","",72,null],[13,"Miniscript","","",72,null],[0,"wallet","bdk","Wallet",null,null],[0,"address_validator","bdk::wallet","Address validation callbacks",null,null],[4,"AddressValidatorError","bdk::wallet::address_validator","Errors that can be returned to fail the validation of an …",null,null],[13,"UserRejected","","",73,null],[13,"ConnectionError","","",73,null],[13,"TimeoutError","","",73,null],[13,"InvalidScript","","",73,null],[13,"Message","","",73,null],[8,"AddressValidator","","Trait to build address validators",null,null],[10,"validate","","Validate or inspect an address",74,[[["script",3],["keychainkind",4],["hdkeypaths",6]],[["result",4],["addressvalidatorerror",4]]]],[0,"coin_selection","bdk::wallet","Coin selection",null,null],[6,"DefaultCoinSelectionAlgorithm","bdk::wallet::coin_selection","Default coin selection algorithm used by TxBuilder if not …",null,null],[17,"TXIN_BASE_WEIGHT","","",null,null],[3,"CoinSelectionResult","","Result of a successful coin selection",null,null],[12,"selected","","List of outputs selected for use as inputs",75,null],[12,"selected_amount","","Sum of the selected inputs\' value",75,null],[12,"fee_amount","","Total fee amount in satoshi",75,null],[8,"CoinSelectionAlgorithm","","Trait for generalized coin selection algorithms",null,null],[10,"coin_select","","Perform the coin selection",76,[[["vec",3],["feerate",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[3,"LargestFirstCoinSelection","","Simple and dumb coin selection",null,null],[3,"BranchAndBoundCoinSelection","","Branch and bound coin selection",null,null],[11,"new","","",77,[[]]],[0,"export","bdk::wallet","Wallet export",null,null],[3,"WalletExport","bdk::wallet::export","Structure that contains the export of a wallet",null,null],[12,"blockheight","","Earliest block to rescan when looking for the wallet\'s …",78,null],[12,"label","","Arbitrary label for the wallet",78,null],[11,"export_wallet","","Export a wallet",78,[[["wallet",3]],["result",4]]],[11,"descriptor","","Return the external descriptor",78,[[],["string",3]]],[11,"change_descriptor","","Return the internal descriptor, if present",78,[[],[["option",4],["string",3]]]],[0,"signer","bdk::wallet","Generalized signers",null,null],[4,"SignerId","bdk::wallet::signer","Identifier of a signer in the SignersContainers. Used as …",null,null],[13,"PkHash","","",79,null],[13,"Fingerprint","","",79,null],[4,"SignerError","","Signing error",null,null],[13,"MissingKey","","The private key is missing for the required public key",80,null],[13,"InvalidKey","","The private key in use has the right fingerprint but …",80,null],[13,"UserCanceled","","The user canceled the operation",80,null],[13,"InputIndexOutOfRange","","Input index is out of range",80,null],[13,"MissingNonWitnessUtxo","","The non_witness_utxo field of the transaction is required …",80,null],[13,"InvalidNonWitnessUtxo","","The non_witness_utxo specified is invalid",80,null],[13,"MissingWitnessUtxo","","The witness_utxo field of the transaction is required to …",80,null],[13,"MissingWitnessScript","","The witness_script field of the transaction is requied to …",80,null],[13,"MissingHDKeypath","","The fingerprint and derivation path are missing from the …",80,null],[8,"Signer","","Trait for signers",null,null],[10,"sign","","Sign a PSBT",81,[[["partiallysignedtransaction",3],["option",4],["secp256k1",3]],[["result",4],["signererror",4]]]],[10,"sign_whole_tx","","Return whether or not the signer signs the whole …",81,[[]]],[11,"descriptor_secret_key","","Return the secret key for the signer",81,[[],[["descriptorsecretkey",4],["option",4]]]],[3,"SignerOrdering","","Defines the order in which signers are called",null,null],[12,"0","","",82,null],[3,"SignersContainer","","Container for multiple signers",null,null],[11,"as_key_map","","",83,[[["secp256k1",3]],["keymap",6]]],[11,"new","","Default constructor",83,[[]]],[11,"add_external","","Adds an external signer to the container for the …",83,[[["signerordering",3],["arc",3],["signer",8],["signerid",4]],[["option",4],["arc",3]]]],[11,"remove","","Removes a signer from the container and returns it",83,[[["signerid",4],["signerordering",3]],[["option",4],["arc",3]]]],[11,"ids","","Returns the list of identifiers of all the signers in the …",83,[[],[["vec",3],["signerid",4]]]],[11,"signers","","Returns the list of signers in the container, sorted by …",83,[[],[["vec",3],["arc",3]]]],[11,"find","","Finds the signer with lowest ordering for a given id in …",83,[[["signerid",4]],[["option",4],["arc",3]]]],[0,"time","bdk::wallet","Cross-platform time",null,null],[5,"get_timestamp","bdk::wallet::time","Return the current timestamp in seconds",null,[[]]],[0,"tx_builder","bdk::wallet","Transaction builder",null,null],[8,"TxBuilderContext","bdk::wallet::tx_builder","Context in which the [TxBuilder] is valid",null,null],[3,"CreateTx","","Wallet::create_tx context",null,null],[3,"BumpFee","","Wallet::bump_fee context",null,null],[3,"TxBuilder","","A transaction builder",null,null],[11,"new","","Create an empty builder",84,[[]]],[11,"fee_rate","","Set a custom fee rate",84,[[["feerate",3]]]],[11,"fee_absolute","","Set an absolute fee",84,[[]]],[11,"policy_path","","Set the policy path to use while creating the transaction …",84,[[["string",3],["keychainkind",4],["btreemap",3],["vec",3]]]],[11,"utxos","","Replace the internal list of utxos that must be spent …",84,[[["vec",3],["outpoint",3]]]],[11,"add_utxo","","Add a utxo to the internal list of utxos that must be …",84,[[["outpoint",3]]]],[11,"manually_selected_only","","Only spend utxos added by add_utxo and utxos.",84,[[]]],[11,"unspendable","","Replace the internal list of unspendable utxos with a new …",84,[[["vec",3],["outpoint",3]]]],[11,"add_unspendable","","Add a utxo to the internal list of unspendable utxos",84,[[["outpoint",3]]]],[11,"sighash","","Sign with a specific sig hash",84,[[["sighashtype",4]]]],[11,"ordering","","Choose the ordering for inputs and outputs of the …",84,[[["txordering",4]]]],[11,"nlocktime","","Use a specific nLockTime while creating the transaction",84,[[]]],[11,"version","","Build a transaction with a specific version",84,[[]]],[11,"do_not_spend_change","","Do not spend change outputs",84,[[]]],[11,"only_spend_change","","Only spend change outputs",84,[[]]],[11,"change_policy","","Set a specific [ChangeSpendPolicy]. See […",84,[[["changespendpolicy",4]]]],[11,"force_non_witness_utxo","","Fill-in the psbt::Input::non_witness_utxo field even if …",84,[[]]],[11,"include_output_redeem_witness_script","","Fill-in the psbt::Output::redeem_script and …",84,[[]]],[11,"add_global_xpubs","","Fill-in the PSBT_GLOBAL_XPUB field with the extended keys …",84,[[]]],[11,"drain_wallet","","Spend all the available inputs. This respects filters …",84,[[]]],[11,"coin_selection","","Choose the coin selection algorithm",84,[[["coinselectionalgorithm",8]],[["coinselectionalgorithm",8],["txbuilder",3]]]],[11,"with_recipients","","Create a builder starting from a list of recipients",84,[[["vec",3]]]],[11,"set_recipients","","Replace the recipients already added with a new list",84,[[["vec",3]]]],[11,"add_recipient","","Add a recipient to the internal list",84,[[["script",3]]]],[11,"set_single_recipient","","Set a single recipient that will get all the selected …",84,[[["script",3]]]],[11,"enable_rbf","","Enable signaling RBF",84,[[]]],[11,"enable_rbf_with_sequence","","Enable signaling RBF with a specific nSequence value",84,[[]]],[11,"maintain_single_recipient","","Bump the fees of a transaction made with …",84,[[]]],[4,"TxOrdering","","Ordering of the transaction\'s inputs and outputs",null,null],[13,"Shuffle","","Randomized (default)",85,null],[13,"Untouched","","Unchanged",85,null],[13,"BIP69Lexicographic","","BIP69 / Lexicographic",85,null],[11,"sort_tx","","",85,[[["transaction",3]]]],[4,"ChangeSpendPolicy","","Policy regarding the use of change outputs when creating …",null,null],[13,"ChangeAllowed","","Use both change and non-change outputs (default)",86,null],[13,"OnlyChange","","Only use change outputs (see [TxBuilder::only_spend_change…",86,null],[13,"ChangeForbidden","","Only use non-change outputs (see […",86,null],[8,"IsDust","bdk::wallet","Trait to check if a value is below the dust limit",null,null],[10,"is_dust","","Check whether or not a value is below dust limit",87,[[]]],[6,"OfflineWallet","","Type alias for a [Wallet] that uses [OfflineBlockchain]",null,null],[3,"Wallet","","A Bitcoin wallet",null,null],[11,"new_offline","","Create a new \\\"offline\\\" wallet",88,[[["option",4],["network",4],["towalletdescriptor",8]],[["result",4],["error",4]]]],[11,"get_new_address","","Return a newly generated address using the external …",88,[[],[["address",3],["error",4],["result",4]]]],[11,"is_mine","","Return whether or not a script is part of this wallet …",88,[[["script",3]],[["error",4],["result",4]]]],[11,"list_unspent","","Return the list of unspent outputs of this wallet",88,[[],[["error",4],["result",4],["vec",3]]]],[11,"list_transactions","","Return the list of transactions made and received by the …",88,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_balance","","Return the balance, meaning the sum of this wallet\'s …",88,[[],[["result",4],["error",4]]]],[11,"add_signer","","Add an external signer",88,[[["signer",8],["arc",3],["keychainkind",4],["signerordering",3],["signerid",4]]]],[11,"add_address_validator","","Add an address validator",88,[[["arc",3],["addressvalidator",8]]]],[11,"create_tx","","Create a new transaction following the options specified …",88,[[["coinselectionalgorithm",8],["createtx",3],["txbuilder",3]],[["error",4],["result",4]]]],[11,"bump_fee","","Bump the fee of a transaction following the options …",88,[[["txid",3],["coinselectionalgorithm",8],["txbuilder",3],["bumpfee",3]],[["error",4],["result",4]]]],[11,"sign","","Sign a transaction with all the wallet\'s signers, in the …",88,[[["psbt",3],["option",4]],[["error",4],["result",4]]]],[11,"policies","","Return the spending policies for the wallet\'s descriptor",88,[[["keychainkind",4]],[["option",4],["error",4],["result",4]]]],[11,"public_descriptor","","Return the \\\"public\\\" version of the wallet\'s descriptor, …",88,[[["keychainkind",4]],[["result",4],["option",4],["error",4]]]],[11,"finalize_psbt","","Try to finalize a PSBT",88,[[["psbt",3],["option",4]],[["error",4],["result",4]]]],[11,"secp_ctx","","",88,[[],["secp256k1",3]]],[11,"new","","Create a new \\\"online\\\" wallet",88,[[["option",4],["network",4],["towalletdescriptor",8]],[["result",4],["error",4]]]],[11,"sync","","Sync the internal database with the blockchain",88,[[["progress",8],["option",4]],[["result",4],["error",4]]]],[11,"client","","Return a reference to the internal blockchain client",88,[[],["option",4]]],[11,"network","","Get the Bitcoin network the wallet is using.",88,[[],["network",4]]],[11,"broadcast","","Broadcast a transaction to the network",88,[[["transaction",3]],[["error",4],["result",4],["txid",3]]]],[4,"Error","bdk","Errors that can be thrown by the Wallet",null,null],[13,"InvalidU32Bytes","","Wrong number of bytes found when trying to convert to u32",89,null],[13,"Generic","","Generic error",89,null],[13,"ScriptDoesntHaveAddressForm","","This error is thrown when trying to convert Bare and …",89,null],[13,"SingleRecipientMultipleOutputs","","Found multiple outputs when single_recipient option has …",89,null],[13,"SingleRecipientNoInputs","","single_recipient option is selected but neither …",89,null],[13,"NoRecipients","","Cannot build a tx without recipients",89,null],[13,"NoUtxosSelected","","manually_selected_only option is selected but no utxo has …",89,null],[13,"OutputBelowDustLimit","","Output created is under the dust limit, 546 satoshis",89,null],[13,"InsufficientFunds","","Wallet\'s UTXO set is not enough to cover recipient\'s …",89,null],[13,"BnBTotalTriesExceeded","","Branch and bound coin selection possible attempts with …",89,null],[13,"BnBNoExactMatch","","Branch and bound coin selection tries to avoid needing a …",89,null],[13,"UnknownUTXO","","Happens when trying to spend an UTXO that is not in the …",89,null],[13,"TransactionNotFound","","Thrown when a tx is not found in the internal database",89,null],[13,"TransactionConfirmed","","Happens when trying to bump a transaction that is already …",89,null],[13,"IrreplaceableTransaction","","Trying to replace a tx that has a sequence >= 0xFFFFFFFE",89,null],[13,"FeeRateTooLow","","When bumping a tx the fee rate requested is lower than …",89,null],[12,"required","bdk::Error","Required fee rate (satoshi/vbyte)",90,null],[13,"FeeTooLow","bdk","When bumping a tx the absolute fee requested is lower …",89,null],[12,"required","bdk::Error","Required fee absolute value (satoshi)",91,null],[13,"MissingKeyOrigin","bdk","In order to use the TxBuilder::add_global_xpubs option …",89,null],[13,"Key","","",89,null],[13,"ChecksumMismatch","","Descriptor checksum mismatch",89,null],[13,"SpendingPolicyRequired","","Spending policy is not compatible with this KeychainKind",89,null],[13,"InvalidPolicyPathError","","",89,null],[13,"Signer","","",89,null],[13,"OfflineClient","","Thrown when trying to call a method that requires a …",89,null],[13,"InvalidProgressValue","","Progress value must be between 0.0 (included) and 100.0 …",89,null],[13,"ProgressUpdateError","","Progress update error (maybe the channel has been closed)",89,null],[13,"InvalidOutpoint","","Requested outpoint doesn\'t exist in the tx (vout greater …",89,null],[13,"Descriptor","","",89,null],[13,"AddressValidator","","",89,null],[13,"Encode","","",89,null],[13,"Miniscript","","",89,null],[13,"BIP32","","",89,null],[13,"Secp256k1","","",89,null],[13,"JSON","","",89,null],[13,"Hex","","",89,null],[13,"PSBT","","",89,null],[13,"Electrum","","",89,null],[13,"Esplora","","",89,null],[13,"CompactFilters","","",89,null],[13,"Sled","","",89,null],[4,"KeychainKind","","Types of script",null,null],[13,"External","","External",92,null],[13,"Internal","","Internal, usually used for change outputs",92,null],[3,"FeeRate","","Fee rate",null,null],[3,"UTXO","","A wallet unspent output",null,null],[12,"outpoint","","",93,null],[12,"txout","","",93,null],[12,"keychain","","",93,null],[3,"TransactionDetails","","A wallet transaction",null,null],[12,"transaction","","",94,null],[12,"txid","","",94,null],[12,"timestamp","","",94,null],[12,"received","","",94,null],[12,"sent","","",94,null],[12,"fees","","",94,null],[12,"height","","",94,null],[14,"descriptor","","Macro to write full descriptors with code",null,null],[14,"fragment","","Macro to write descriptor fragments with code",null,null],[11,"from","","",89,[[]]],[11,"into","","",89,[[]]],[11,"to_string","","",89,[[],["string",3]]],[11,"borrow","","",89,[[]]],[11,"borrow_mut","","",89,[[]]],[11,"try_from","","",89,[[],["result",4]]],[11,"try_into","","",89,[[],["result",4]]],[11,"type_id","","",89,[[],["typeid",3]]],[11,"vzip","","",89,[[]]],[11,"init","","",89,[[]]],[11,"deref","","",89,[[]]],[11,"deref_mut","","",89,[[]]],[11,"drop","","",89,[[]]],[11,"from","bdk::blockchain::any","",0,[[]]],[11,"into","","",0,[[]]],[11,"borrow","","",0,[[]]],[11,"borrow_mut","","",0,[[]]],[11,"try_from","","",0,[[],["result",4]]],[11,"try_into","","",0,[[],["result",4]]],[11,"type_id","","",0,[[],["typeid",3]]],[11,"vzip","","",0,[[]]],[11,"init","","",0,[[]]],[11,"deref","","",0,[[]]],[11,"deref_mut","","",0,[[]]],[11,"drop","","",0,[[]]],[11,"from","","",1,[[]]],[11,"into","","",1,[[]]],[11,"borrow","","",1,[[]]],[11,"borrow_mut","","",1,[[]]],[11,"try_from","","",1,[[],["result",4]]],[11,"try_into","","",1,[[],["result",4]]],[11,"type_id","","",1,[[],["typeid",3]]],[11,"vzip","","",1,[[]]],[11,"init","","",1,[[]]],[11,"deref","","",1,[[]]],[11,"deref_mut","","",1,[[]]],[11,"drop","","",1,[[]]],[11,"from","bdk::blockchain::electrum","",95,[[]]],[11,"into","","",95,[[]]],[11,"borrow","","",95,[[]]],[11,"borrow_mut","","",95,[[]]],[11,"try_from","","",95,[[],["result",4]]],[11,"try_into","","",95,[[],["result",4]]],[11,"type_id","","",95,[[],["typeid",3]]],[11,"vzip","","",95,[[]]],[11,"init","","",95,[[]]],[11,"deref","","",95,[[]]],[11,"deref_mut","","",95,[[]]],[11,"drop","","",95,[[]]],[11,"from","","",2,[[]]],[11,"into","","",2,[[]]],[11,"borrow","","",2,[[]]],[11,"borrow_mut","","",2,[[]]],[11,"try_from","","",2,[[],["result",4]]],[11,"try_into","","",2,[[],["result",4]]],[11,"type_id","","",2,[[],["typeid",3]]],[11,"vzip","","",2,[[]]],[11,"init","","",2,[[]]],[11,"deref","","",2,[[]]],[11,"deref_mut","","",2,[[]]],[11,"drop","","",2,[[]]],[11,"from","bdk::blockchain::esplora","",3,[[]]],[11,"into","","",3,[[]]],[11,"borrow","","",3,[[]]],[11,"borrow_mut","","",3,[[]]],[11,"try_from","","",3,[[],["result",4]]],[11,"try_into","","",3,[[],["result",4]]],[11,"type_id","","",3,[[],["typeid",3]]],[11,"vzip","","",3,[[]]],[11,"init","","",3,[[]]],[11,"deref","","",3,[[]]],[11,"deref_mut","","",3,[[]]],[11,"drop","","",3,[[]]],[11,"from","","",4,[[]]],[11,"into","","",4,[[]]],[11,"borrow","","",4,[[]]],[11,"borrow_mut","","",4,[[]]],[11,"try_from","","",4,[[],["result",4]]],[11,"try_into","","",4,[[],["result",4]]],[11,"type_id","","",4,[[],["typeid",3]]],[11,"vzip","","",4,[[]]],[11,"init","","",4,[[]]],[11,"deref","","",4,[[]]],[11,"deref_mut","","",4,[[]]],[11,"drop","","",4,[[]]],[11,"from","","",5,[[]]],[11,"into","","",5,[[]]],[11,"to_string","","",5,[[],["string",3]]],[11,"borrow","","",5,[[]]],[11,"borrow_mut","","",5,[[]]],[11,"try_from","","",5,[[],["result",4]]],[11,"try_into","","",5,[[],["result",4]]],[11,"type_id","","",5,[[],["typeid",3]]],[11,"vzip","","",5,[[]]],[11,"init","","",5,[[]]],[11,"deref","","",5,[[]]],[11,"deref_mut","","",5,[[]]],[11,"drop","","",5,[[]]],[11,"from","bdk::blockchain::compact_filters","",96,[[]]],[11,"into","","",96,[[]]],[11,"borrow","","",96,[[]]],[11,"borrow_mut","","",96,[[]]],[11,"try_from","","",96,[[],["result",4]]],[11,"try_into","","",96,[[],["result",4]]],[11,"type_id","","",96,[[],["typeid",3]]],[11,"vzip","","",96,[[]]],[11,"init","","",96,[[]]],[11,"deref","","",96,[[]]],[11,"deref_mut","","",96,[[]]],[11,"drop","","",96,[[]]],[11,"from","","",97,[[]]],[11,"into","","",97,[[]]],[11,"borrow","","",97,[[]]],[11,"borrow_mut","","",97,[[]]],[11,"try_from","","",97,[[],["result",4]]],[11,"try_into","","",97,[[],["result",4]]],[11,"type_id","","",97,[[],["typeid",3]]],[11,"vzip","","",97,[[]]],[11,"init","","",97,[[]]],[11,"deref","","",97,[[]]],[11,"deref_mut","","",97,[[]]],[11,"drop","","",97,[[]]],[11,"from","","",6,[[]]],[11,"into","","",6,[[]]],[11,"borrow","","",6,[[]]],[11,"borrow_mut","","",6,[[]]],[11,"try_from","","",6,[[],["result",4]]],[11,"try_into","","",6,[[],["result",4]]],[11,"type_id","","",6,[[],["typeid",3]]],[11,"vzip","","",6,[[]]],[11,"init","","",6,[[]]],[11,"deref","","",6,[[]]],[11,"deref_mut","","",6,[[]]],[11,"drop","","",6,[[]]],[11,"from","","",7,[[]]],[11,"into","","",7,[[]]],[11,"borrow","","",7,[[]]],[11,"borrow_mut","","",7,[[]]],[11,"try_from","","",7,[[],["result",4]]],[11,"try_into","","",7,[[],["result",4]]],[11,"type_id","","",7,[[],["typeid",3]]],[11,"vzip","","",7,[[]]],[11,"init","","",7,[[]]],[11,"deref","","",7,[[]]],[11,"deref_mut","","",7,[[]]],[11,"drop","","",7,[[]]],[11,"from","","",8,[[]]],[11,"into","","",8,[[]]],[11,"borrow","","",8,[[]]],[11,"borrow_mut","","",8,[[]]],[11,"try_from","","",8,[[],["result",4]]],[11,"try_into","","",8,[[],["result",4]]],[11,"type_id","","",8,[[],["typeid",3]]],[11,"vzip","","",8,[[]]],[11,"init","","",8,[[]]],[11,"deref","","",8,[[]]],[11,"deref_mut","","",8,[[]]],[11,"drop","","",8,[[]]],[11,"from","","",9,[[]]],[11,"into","","",9,[[]]],[11,"to_string","","",9,[[],["string",3]]],[11,"borrow","","",9,[[]]],[11,"borrow_mut","","",9,[[]]],[11,"try_from","","",9,[[],["result",4]]],[11,"try_into","","",9,[[],["result",4]]],[11,"type_id","","",9,[[],["typeid",3]]],[11,"vzip","","",9,[[]]],[11,"init","","",9,[[]]],[11,"deref","","",9,[[]]],[11,"deref_mut","","",9,[[]]],[11,"drop","","",9,[[]]],[11,"from","bdk::blockchain","",10,[[]]],[11,"into","","",10,[[]]],[11,"to_owned","","",10,[[]]],[11,"clone_into","","",10,[[]]],[11,"borrow","","",10,[[]]],[11,"borrow_mut","","",10,[[]]],[11,"try_from","","",10,[[],["result",4]]],[11,"try_into","","",10,[[],["result",4]]],[11,"type_id","","",10,[[],["typeid",3]]],[11,"vzip","","",10,[[]]],[11,"equivalent","","",10,[[]]],[11,"init","","",10,[[]]],[11,"deref","","",10,[[]]],[11,"deref_mut","","",10,[[]]],[11,"drop","","",10,[[]]],[11,"from","","",98,[[]]],[11,"into","","",98,[[]]],[11,"borrow","","",98,[[]]],[11,"borrow_mut","","",98,[[]]],[11,"try_from","","",98,[[],["result",4]]],[11,"try_into","","",98,[[],["result",4]]],[11,"type_id","","",98,[[],["typeid",3]]],[11,"vzip","","",98,[[]]],[11,"init","","",98,[[]]],[11,"deref","","",98,[[]]],[11,"deref_mut","","",98,[[]]],[11,"drop","","",98,[[]]],[11,"from","","",99,[[]]],[11,"into","","",99,[[]]],[11,"to_owned","","",99,[[]]],[11,"clone_into","","",99,[[]]],[11,"borrow","","",99,[[]]],[11,"borrow_mut","","",99,[[]]],[11,"try_from","","",99,[[],["result",4]]],[11,"try_into","","",99,[[],["result",4]]],[11,"type_id","","",99,[[],["typeid",3]]],[11,"vzip","","",99,[[]]],[11,"init","","",99,[[]]],[11,"deref","","",99,[[]]],[11,"deref_mut","","",99,[[]]],[11,"drop","","",99,[[]]],[11,"from","","",100,[[]]],[11,"into","","",100,[[]]],[11,"to_owned","","",100,[[]]],[11,"clone_into","","",100,[[]]],[11,"borrow","","",100,[[]]],[11,"borrow_mut","","",100,[[]]],[11,"try_from","","",100,[[],["result",4]]],[11,"try_into","","",100,[[],["result",4]]],[11,"type_id","","",100,[[],["typeid",3]]],[11,"vzip","","",100,[[]]],[11,"init","","",100,[[]]],[11,"deref","","",100,[[]]],[11,"deref_mut","","",100,[[]]],[11,"drop","","",100,[[]]],[11,"from","bdk::database::any","",14,[[]]],[11,"into","","",14,[[]]],[11,"borrow","","",14,[[]]],[11,"borrow_mut","","",14,[[]]],[11,"try_from","","",14,[[],["result",4]]],[11,"try_into","","",14,[[],["result",4]]],[11,"type_id","","",14,[[],["typeid",3]]],[11,"vzip","","",14,[[]]],[11,"init","","",14,[[]]],[11,"deref","","",14,[[]]],[11,"deref_mut","","",14,[[]]],[11,"drop","","",14,[[]]],[11,"from","","",15,[[]]],[11,"into","","",15,[[]]],[11,"borrow","","",15,[[]]],[11,"borrow_mut","","",15,[[]]],[11,"try_from","","",15,[[],["result",4]]],[11,"try_into","","",15,[[],["result",4]]],[11,"type_id","","",15,[[],["typeid",3]]],[11,"vzip","","",15,[[]]],[11,"init","","",15,[[]]],[11,"deref","","",15,[[]]],[11,"deref_mut","","",15,[[]]],[11,"drop","","",15,[[]]],[11,"from","","",16,[[]]],[11,"into","","",16,[[]]],[11,"borrow","","",16,[[]]],[11,"borrow_mut","","",16,[[]]],[11,"try_from","","",16,[[],["result",4]]],[11,"try_into","","",16,[[],["result",4]]],[11,"type_id","","",16,[[],["typeid",3]]],[11,"vzip","","",16,[[]]],[11,"init","","",16,[[]]],[11,"deref","","",16,[[]]],[11,"deref_mut","","",16,[[]]],[11,"drop","","",16,[[]]],[11,"from","","",17,[[]]],[11,"into","","",17,[[]]],[11,"borrow","","",17,[[]]],[11,"borrow_mut","","",17,[[]]],[11,"try_from","","",17,[[],["result",4]]],[11,"try_into","","",17,[[],["result",4]]],[11,"type_id","","",17,[[],["typeid",3]]],[11,"vzip","","",17,[[]]],[11,"init","","",17,[[]]],[11,"deref","","",17,[[]]],[11,"deref_mut","","",17,[[]]],[11,"drop","","",17,[[]]],[11,"from","bdk::database::memory","",18,[[]]],[11,"into","","",18,[[]]],[11,"borrow","","",18,[[]]],[11,"borrow_mut","","",18,[[]]],[11,"try_from","","",18,[[],["result",4]]],[11,"try_into","","",18,[[],["result",4]]],[11,"type_id","","",18,[[],["typeid",3]]],[11,"vzip","","",18,[[]]],[11,"init","","",18,[[]]],[11,"deref","","",18,[[]]],[11,"deref_mut","","",18,[[]]],[11,"drop","","",18,[[]]],[11,"from","bdk::descriptor","",23,[[]]],[11,"into","","",23,[[]]],[11,"to_owned","","",23,[[]]],[11,"clone_into","","",23,[[]]],[11,"to_string","","",23,[[],["string",3]]],[11,"borrow","","",23,[[]]],[11,"borrow_mut","","",23,[[]]],[11,"try_from","","",23,[[],["result",4]]],[11,"try_into","","",23,[[],["result",4]]],[11,"type_id","","",23,[[],["typeid",3]]],[11,"vzip","","",23,[[]]],[11,"equivalent","","",23,[[]]],[11,"init","","",23,[[]]],[11,"deref","","",23,[[]]],[11,"deref_mut","","",23,[[]]],[11,"drop","","",23,[[]]],[11,"as_enum","","",101,[[],["scriptcontextenum",4]]],[11,"from","","",101,[[]]],[11,"into","","",101,[[]]],[11,"to_owned","","",101,[[]]],[11,"clone_into","","",101,[[]]],[11,"borrow","","",101,[[]]],[11,"borrow_mut","","",101,[[]]],[11,"try_from","","",101,[[],["result",4]]],[11,"try_into","","",101,[[],["result",4]]],[11,"type_id","","",101,[[],["typeid",3]]],[11,"vzip","","",101,[[]]],[11,"equivalent","","",101,[[]]],[11,"init","","",101,[[]]],[11,"deref","","",101,[[]]],[11,"deref_mut","","",101,[[]]],[11,"drop","","",101,[[]]],[11,"from","","",24,[[]]],[11,"into","","",24,[[]]],[11,"to_owned","","",24,[[]]],[11,"clone_into","","",24,[[]]],[11,"to_string","","",24,[[],["string",3]]],[11,"borrow","","",24,[[]]],[11,"borrow_mut","","",24,[[]]],[11,"try_from","","",24,[[],["result",4]]],[11,"try_into","","",24,[[],["result",4]]],[11,"type_id","","",24,[[],["typeid",3]]],[11,"vzip","","",24,[[]]],[11,"equivalent","","",24,[[]]],[11,"init","","",24,[[]]],[11,"deref","","",24,[[]]],[11,"deref_mut","","",24,[[]]],[11,"drop","","",24,[[]]],[11,"as_enum","","",102,[[],["scriptcontextenum",4]]],[11,"from","","",102,[[]]],[11,"into","","",102,[[]]],[11,"to_owned","","",102,[[]]],[11,"clone_into","","",102,[[]]],[11,"borrow","","",102,[[]]],[11,"borrow_mut","","",102,[[]]],[11,"try_from","","",102,[[],["result",4]]],[11,"try_into","","",102,[[],["result",4]]],[11,"type_id","","",102,[[],["typeid",3]]],[11,"vzip","","",102,[[]]],[11,"equivalent","","",102,[[]]],[11,"init","","",102,[[]]],[11,"deref","","",102,[[]]],[11,"deref_mut","","",102,[[]]],[11,"drop","","",102,[[]]],[11,"from","","",27,[[]]],[11,"into","","",27,[[]]],[11,"to_owned","","",27,[[]]],[11,"clone_into","","",27,[[]]],[11,"to_string","","",27,[[],["string",3]]],[11,"borrow","","",27,[[]]],[11,"borrow_mut","","",27,[[]]],[11,"try_from","","",27,[[],["result",4]]],[11,"try_into","","",27,[[],["result",4]]],[11,"type_id","","",27,[[],["typeid",3]]],[11,"vzip","","",27,[[]]],[11,"equivalent","","",27,[[]]],[11,"init","","",27,[[]]],[11,"deref","","",27,[[]]],[11,"deref_mut","","",27,[[]]],[11,"drop","","",27,[[]]],[11,"from","bdk::descriptor::error","",29,[[]]],[11,"into","","",29,[[]]],[11,"to_string","","",29,[[],["string",3]]],[11,"borrow","","",29,[[]]],[11,"borrow_mut","","",29,[[]]],[11,"try_from","","",29,[[],["result",4]]],[11,"try_into","","",29,[[],["result",4]]],[11,"type_id","","",29,[[],["typeid",3]]],[11,"vzip","","",29,[[]]],[11,"init","","",29,[[]]],[11,"deref","","",29,[[]]],[11,"deref_mut","","",29,[[]]],[11,"drop","","",29,[[]]],[11,"from","bdk::descriptor::policy","",103,[[]]],[11,"into","","",103,[[]]],[11,"to_owned","","",103,[[]]],[11,"clone_into","","",103,[[]]],[11,"borrow","","",103,[[]]],[11,"borrow_mut","","",103,[[]]],[11,"try_from","","",103,[[],["result",4]]],[11,"try_into","","",103,[[],["result",4]]],[11,"type_id","","",103,[[],["typeid",3]]],[11,"vzip","","",103,[[]]],[11,"init","","",103,[[]]],[11,"deref","","",103,[[]]],[11,"deref_mut","","",103,[[]]],[11,"drop","","",103,[[]]],[11,"from","","",30,[[]]],[11,"into","","",30,[[]]],[11,"to_owned","","",30,[[]]],[11,"clone_into","","",30,[[]]],[11,"borrow","","",30,[[]]],[11,"borrow_mut","","",30,[[]]],[11,"try_from","","",30,[[],["result",4]]],[11,"try_into","","",30,[[],["result",4]]],[11,"type_id","","",30,[[],["typeid",3]]],[11,"vzip","","",30,[[]]],[11,"init","","",30,[[]]],[11,"deref","","",30,[[]]],[11,"deref_mut","","",30,[[]]],[11,"drop","","",30,[[]]],[11,"from","","",39,[[]]],[11,"into","","",39,[[]]],[11,"to_owned","","",39,[[]]],[11,"clone_into","","",39,[[]]],[11,"borrow","","",39,[[]]],[11,"borrow_mut","","",39,[[]]],[11,"try_from","","",39,[[],["result",4]]],[11,"try_into","","",39,[[],["result",4]]],[11,"type_id","","",39,[[],["typeid",3]]],[11,"vzip","","",39,[[]]],[11,"init","","",39,[[]]],[11,"deref","","",39,[[]]],[11,"deref_mut","","",39,[[]]],[11,"drop","","",39,[[]]],[11,"from","","",43,[[]]],[11,"into","","",43,[[]]],[11,"to_owned","","",43,[[]]],[11,"clone_into","","",43,[[]]],[11,"borrow","","",43,[[]]],[11,"borrow_mut","","",43,[[]]],[11,"try_from","","",43,[[],["result",4]]],[11,"try_into","","",43,[[],["result",4]]],[11,"type_id","","",43,[[],["typeid",3]]],[11,"vzip","","",43,[[]]],[11,"init","","",43,[[]]],[11,"deref","","",43,[[]]],[11,"deref_mut","","",43,[[]]],[11,"drop","","",43,[[]]],[11,"from","","",44,[[]]],[11,"into","","",44,[[]]],[11,"to_owned","","",44,[[]]],[11,"clone_into","","",44,[[]]],[11,"borrow","","",44,[[]]],[11,"borrow_mut","","",44,[[]]],[11,"try_from","","",44,[[],["result",4]]],[11,"try_into","","",44,[[],["result",4]]],[11,"type_id","","",44,[[],["typeid",3]]],[11,"vzip","","",44,[[]]],[11,"equivalent","","",44,[[]]],[11,"init","","",44,[[]]],[11,"deref","","",44,[[]]],[11,"deref_mut","","",44,[[]]],[11,"drop","","",44,[[]]],[11,"from","","",45,[[]]],[11,"into","","",45,[[]]],[11,"to_string","","",45,[[],["string",3]]],[11,"borrow","","",45,[[]]],[11,"borrow_mut","","",45,[[]]],[11,"try_from","","",45,[[],["result",4]]],[11,"try_into","","",45,[[],["result",4]]],[11,"type_id","","",45,[[],["typeid",3]]],[11,"vzip","","",45,[[]]],[11,"init","","",45,[[]]],[11,"deref","","",45,[[]]],[11,"deref_mut","","",45,[[]]],[11,"drop","","",45,[[]]],[11,"to_wallet_descriptor","bdk::descriptor::template","",47,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",47,[[]]],[11,"into","","",47,[[]]],[11,"borrow","","",47,[[]]],[11,"borrow_mut","","",47,[[]]],[11,"try_from","","",47,[[],["result",4]]],[11,"try_into","","",47,[[],["result",4]]],[11,"type_id","","",47,[[],["typeid",3]]],[11,"vzip","","",47,[[]]],[11,"init","","",47,[[]]],[11,"deref","","",47,[[]]],[11,"deref_mut","","",47,[[]]],[11,"drop","","",47,[[]]],[11,"to_wallet_descriptor","","",48,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",48,[[]]],[11,"into","","",48,[[]]],[11,"borrow","","",48,[[]]],[11,"borrow_mut","","",48,[[]]],[11,"try_from","","",48,[[],["result",4]]],[11,"try_into","","",48,[[],["result",4]]],[11,"type_id","","",48,[[],["typeid",3]]],[11,"vzip","","",48,[[]]],[11,"init","","",48,[[]]],[11,"deref","","",48,[[]]],[11,"deref_mut","","",48,[[]]],[11,"drop","","",48,[[]]],[11,"to_wallet_descriptor","","",49,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",49,[[]]],[11,"into","","",49,[[]]],[11,"borrow","","",49,[[]]],[11,"borrow_mut","","",49,[[]]],[11,"try_from","","",49,[[],["result",4]]],[11,"try_into","","",49,[[],["result",4]]],[11,"type_id","","",49,[[],["typeid",3]]],[11,"vzip","","",49,[[]]],[11,"init","","",49,[[]]],[11,"deref","","",49,[[]]],[11,"deref_mut","","",49,[[]]],[11,"drop","","",49,[[]]],[11,"to_wallet_descriptor","","",50,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",50,[[]]],[11,"into","","",50,[[]]],[11,"borrow","","",50,[[]]],[11,"borrow_mut","","",50,[[]]],[11,"try_from","","",50,[[],["result",4]]],[11,"try_into","","",50,[[],["result",4]]],[11,"type_id","","",50,[[],["typeid",3]]],[11,"vzip","","",50,[[]]],[11,"init","","",50,[[]]],[11,"deref","","",50,[[]]],[11,"deref_mut","","",50,[[]]],[11,"drop","","",50,[[]]],[11,"to_wallet_descriptor","","",51,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",51,[[]]],[11,"into","","",51,[[]]],[11,"borrow","","",51,[[]]],[11,"borrow_mut","","",51,[[]]],[11,"try_from","","",51,[[],["result",4]]],[11,"try_into","","",51,[[],["result",4]]],[11,"type_id","","",51,[[],["typeid",3]]],[11,"vzip","","",51,[[]]],[11,"init","","",51,[[]]],[11,"deref","","",51,[[]]],[11,"deref_mut","","",51,[[]]],[11,"drop","","",51,[[]]],[11,"to_wallet_descriptor","","",52,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",52,[[]]],[11,"into","","",52,[[]]],[11,"borrow","","",52,[[]]],[11,"borrow_mut","","",52,[[]]],[11,"try_from","","",52,[[],["result",4]]],[11,"try_into","","",52,[[],["result",4]]],[11,"type_id","","",52,[[],["typeid",3]]],[11,"vzip","","",52,[[]]],[11,"init","","",52,[[]]],[11,"deref","","",52,[[]]],[11,"deref_mut","","",52,[[]]],[11,"drop","","",52,[[]]],[11,"to_wallet_descriptor","","",53,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",53,[[]]],[11,"into","","",53,[[]]],[11,"borrow","","",53,[[]]],[11,"borrow_mut","","",53,[[]]],[11,"try_from","","",53,[[],["result",4]]],[11,"try_into","","",53,[[],["result",4]]],[11,"type_id","","",53,[[],["typeid",3]]],[11,"vzip","","",53,[[]]],[11,"init","","",53,[[]]],[11,"deref","","",53,[[]]],[11,"deref_mut","","",53,[[]]],[11,"drop","","",53,[[]]],[11,"to_wallet_descriptor","","",54,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",54,[[]]],[11,"into","","",54,[[]]],[11,"borrow","","",54,[[]]],[11,"borrow_mut","","",54,[[]]],[11,"try_from","","",54,[[],["result",4]]],[11,"try_into","","",54,[[],["result",4]]],[11,"type_id","","",54,[[],["typeid",3]]],[11,"vzip","","",54,[[]]],[11,"init","","",54,[[]]],[11,"deref","","",54,[[]]],[11,"deref_mut","","",54,[[]]],[11,"drop","","",54,[[]]],[11,"to_wallet_descriptor","","",55,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"from","","",55,[[]]],[11,"into","","",55,[[]]],[11,"borrow","","",55,[[]]],[11,"borrow_mut","","",55,[[]]],[11,"try_from","","",55,[[],["result",4]]],[11,"try_into","","",55,[[],["result",4]]],[11,"type_id","","",55,[[],["typeid",3]]],[11,"vzip","","",55,[[]]],[11,"init","","",55,[[]]],[11,"deref","","",55,[[]]],[11,"deref_mut","","",55,[[]]],[11,"drop","","",55,[[]]],[11,"from","bdk::keys","",58,[[]]],[11,"into","","",58,[[]]],[11,"to_owned","","",58,[[]]],[11,"clone_into","","",58,[[]]],[11,"to_string","","",58,[[],["string",3]]],[11,"borrow","","",58,[[]]],[11,"borrow_mut","","",58,[[]]],[11,"try_from","","",58,[[],["result",4]]],[11,"try_into","","",58,[[],["result",4]]],[11,"type_id","","",58,[[],["typeid",3]]],[11,"vzip","","",58,[[]]],[11,"equivalent","","",58,[[]]],[11,"init","","",58,[[]]],[11,"deref","","",58,[[]]],[11,"deref_mut","","",58,[[]]],[11,"drop","","",58,[[]]],[11,"from","","",59,[[]]],[11,"into","","",59,[[]]],[11,"to_string","","",59,[[],["string",3]]],[11,"borrow","","",59,[[]]],[11,"borrow_mut","","",59,[[]]],[11,"try_from","","",59,[[],["result",4]]],[11,"try_into","","",59,[[],["result",4]]],[11,"type_id","","",59,[[],["typeid",3]]],[11,"vzip","","",59,[[]]],[11,"init","","",59,[[]]],[11,"deref","","",59,[[]]],[11,"deref_mut","","",59,[[]]],[11,"drop","","",59,[[]]],[11,"from","","",60,[[]]],[11,"into","","",60,[[]]],[11,"borrow","","",60,[[]]],[11,"borrow_mut","","",60,[[]]],[11,"try_from","","",60,[[],["result",4]]],[11,"try_into","","",60,[[],["result",4]]],[11,"type_id","","",60,[[],["typeid",3]]],[11,"vzip","","",60,[[]]],[11,"init","","",60,[[]]],[11,"deref","","",60,[[]]],[11,"deref_mut","","",60,[[]]],[11,"drop","","",60,[[]]],[11,"from","","",61,[[]]],[11,"into","","",61,[[]]],[11,"to_owned","","",61,[[]]],[11,"clone_into","","",61,[[]]],[11,"borrow","","",61,[[]]],[11,"borrow_mut","","",61,[[]]],[11,"try_from","","",61,[[],["result",4]]],[11,"try_into","","",61,[[],["result",4]]],[11,"type_id","","",61,[[],["typeid",3]]],[11,"vzip","","",61,[[]]],[11,"equivalent","","",61,[[]]],[11,"init","","",61,[[]]],[11,"deref","","",61,[[]]],[11,"deref_mut","","",61,[[]]],[11,"drop","","",61,[[]]],[11,"from","","",62,[[]]],[11,"into","","",62,[[]]],[11,"to_owned","","",62,[[]]],[11,"clone_into","","",62,[[]]],[11,"to_string","","",62,[[],["string",3]]],[11,"borrow","","",62,[[]]],[11,"borrow_mut","","",62,[[]]],[11,"try_from","","",62,[[],["result",4]]],[11,"try_into","","",62,[[],["result",4]]],[11,"type_id","","",62,[[],["typeid",3]]],[11,"vzip","","",62,[[]]],[11,"equivalent","","",62,[[]]],[11,"init","","",62,[[]]],[11,"deref","","",62,[[]]],[11,"deref_mut","","",62,[[]]],[11,"drop","","",62,[[]]],[11,"from","","",63,[[]]],[11,"into","","",63,[[]]],[11,"borrow","","",63,[[]]],[11,"borrow_mut","","",63,[[]]],[11,"try_from","","",63,[[],["result",4]]],[11,"try_into","","",63,[[],["result",4]]],[11,"type_id","","",63,[[],["typeid",3]]],[11,"vzip","","",63,[[]]],[11,"init","","",63,[[]]],[11,"deref","","",63,[[]]],[11,"deref_mut","","",63,[[]]],[11,"drop","","",63,[[]]],[11,"from","","",64,[[]]],[11,"into","","",64,[[]]],[11,"to_owned","","",64,[[]]],[11,"clone_into","","",64,[[]]],[11,"borrow","","",64,[[]]],[11,"borrow_mut","","",64,[[]]],[11,"try_from","","",64,[[],["result",4]]],[11,"try_into","","",64,[[],["result",4]]],[11,"type_id","","",64,[[],["typeid",3]]],[11,"vzip","","",64,[[]]],[11,"equivalent","","",64,[[]]],[11,"init","","",64,[[]]],[11,"deref","","",64,[[]]],[11,"deref_mut","","",64,[[]]],[11,"drop","","",64,[[]]],[11,"from","","",68,[[]]],[11,"into","","",68,[[]]],[11,"borrow","","",68,[[]]],[11,"borrow_mut","","",68,[[]]],[11,"try_from","","",68,[[],["result",4]]],[11,"try_into","","",68,[[],["result",4]]],[11,"type_id","","",68,[[],["typeid",3]]],[11,"vzip","","",68,[[]]],[11,"init","","",68,[[]]],[11,"deref","","",68,[[]]],[11,"deref_mut","","",68,[[]]],[11,"drop","","",68,[[]]],[11,"from","","",71,[[]]],[11,"into","","",71,[[]]],[11,"to_owned","","",71,[[]]],[11,"clone_into","","",71,[[]]],[11,"borrow","","",71,[[]]],[11,"borrow_mut","","",71,[[]]],[11,"try_from","","",71,[[],["result",4]]],[11,"try_into","","",71,[[],["result",4]]],[11,"type_id","","",71,[[],["typeid",3]]],[11,"vzip","","",71,[[]]],[11,"init","","",71,[[]]],[11,"deref","","",71,[[]]],[11,"deref_mut","","",71,[[]]],[11,"drop","","",71,[[]]],[11,"from","","",72,[[]]],[11,"into","","",72,[[]]],[11,"to_string","","",72,[[],["string",3]]],[11,"borrow","","",72,[[]]],[11,"borrow_mut","","",72,[[]]],[11,"try_from","","",72,[[],["result",4]]],[11,"try_into","","",72,[[],["result",4]]],[11,"type_id","","",72,[[],["typeid",3]]],[11,"vzip","","",72,[[]]],[11,"init","","",72,[[]]],[11,"deref","","",72,[[]]],[11,"deref_mut","","",72,[[]]],[11,"drop","","",72,[[]]],[11,"from","bdk","",92,[[]]],[11,"into","","",92,[[]]],[11,"to_owned","","",92,[[]]],[11,"clone_into","","",92,[[]]],[11,"borrow","","",92,[[]]],[11,"borrow_mut","","",92,[[]]],[11,"try_from","","",92,[[],["result",4]]],[11,"try_into","","",92,[[],["result",4]]],[11,"type_id","","",92,[[],["typeid",3]]],[11,"write_base32","","",92,[[],["result",4]]],[11,"base32_len","","",92,[[]]],[11,"check_base32","","",92,[[],[["vec",3],["result",4]]]],[11,"vzip","","",92,[[]]],[11,"equivalent","","",92,[[]]],[11,"init","","",92,[[]]],[11,"deref","","",92,[[]]],[11,"deref_mut","","",92,[[]]],[11,"drop","","",92,[[]]],[11,"from","","",104,[[]]],[11,"into","","",104,[[]]],[11,"to_owned","","",104,[[]]],[11,"clone_into","","",104,[[]]],[11,"borrow","","",104,[[]]],[11,"borrow_mut","","",104,[[]]],[11,"try_from","","",104,[[],["result",4]]],[11,"try_into","","",104,[[],["result",4]]],[11,"type_id","","",104,[[],["typeid",3]]],[11,"vzip","","",104,[[]]],[11,"init","","",104,[[]]],[11,"deref","","",104,[[]]],[11,"deref_mut","","",104,[[]]],[11,"drop","","",104,[[]]],[11,"from","","",93,[[]]],[11,"into","","",93,[[]]],[11,"to_owned","","",93,[[]]],[11,"clone_into","","",93,[[]]],[11,"borrow","","",93,[[]]],[11,"borrow_mut","","",93,[[]]],[11,"try_from","","",93,[[],["result",4]]],[11,"try_into","","",93,[[],["result",4]]],[11,"type_id","","",93,[[],["typeid",3]]],[11,"vzip","","",93,[[]]],[11,"equivalent","","",93,[[]]],[11,"init","","",93,[[]]],[11,"deref","","",93,[[]]],[11,"deref_mut","","",93,[[]]],[11,"drop","","",93,[[]]],[11,"from","","",94,[[]]],[11,"into","","",94,[[]]],[11,"to_owned","","",94,[[]]],[11,"clone_into","","",94,[[]]],[11,"borrow","","",94,[[]]],[11,"borrow_mut","","",94,[[]]],[11,"try_from","","",94,[[],["result",4]]],[11,"try_into","","",94,[[],["result",4]]],[11,"type_id","","",94,[[],["typeid",3]]],[11,"vzip","","",94,[[]]],[11,"equivalent","","",94,[[]]],[11,"init","","",94,[[]]],[11,"deref","","",94,[[]]],[11,"deref_mut","","",94,[[]]],[11,"drop","","",94,[[]]],[11,"from","bdk::wallet::address_validator","",73,[[]]],[11,"into","","",73,[[]]],[11,"to_owned","","",73,[[]]],[11,"clone_into","","",73,[[]]],[11,"to_string","","",73,[[],["string",3]]],[11,"borrow","","",73,[[]]],[11,"borrow_mut","","",73,[[]]],[11,"try_from","","",73,[[],["result",4]]],[11,"try_into","","",73,[[],["result",4]]],[11,"type_id","","",73,[[],["typeid",3]]],[11,"vzip","","",73,[[]]],[11,"equivalent","","",73,[[]]],[11,"init","","",73,[[]]],[11,"deref","","",73,[[]]],[11,"deref_mut","","",73,[[]]],[11,"drop","","",73,[[]]],[11,"from","bdk::wallet::coin_selection","",75,[[]]],[11,"into","","",75,[[]]],[11,"borrow","","",75,[[]]],[11,"borrow_mut","","",75,[[]]],[11,"try_from","","",75,[[],["result",4]]],[11,"try_into","","",75,[[],["result",4]]],[11,"type_id","","",75,[[],["typeid",3]]],[11,"vzip","","",75,[[]]],[11,"init","","",75,[[]]],[11,"deref","","",75,[[]]],[11,"deref_mut","","",75,[[]]],[11,"drop","","",75,[[]]],[11,"from","","",105,[[]]],[11,"into","","",105,[[]]],[11,"borrow","","",105,[[]]],[11,"borrow_mut","","",105,[[]]],[11,"try_from","","",105,[[],["result",4]]],[11,"try_into","","",105,[[],["result",4]]],[11,"type_id","","",105,[[],["typeid",3]]],[11,"vzip","","",105,[[]]],[11,"init","","",105,[[]]],[11,"deref","","",105,[[]]],[11,"deref_mut","","",105,[[]]],[11,"drop","","",105,[[]]],[11,"from","","",77,[[]]],[11,"into","","",77,[[]]],[11,"borrow","","",77,[[]]],[11,"borrow_mut","","",77,[[]]],[11,"try_from","","",77,[[],["result",4]]],[11,"try_into","","",77,[[],["result",4]]],[11,"type_id","","",77,[[],["typeid",3]]],[11,"vzip","","",77,[[]]],[11,"init","","",77,[[]]],[11,"deref","","",77,[[]]],[11,"deref_mut","","",77,[[]]],[11,"drop","","",77,[[]]],[11,"from","bdk::wallet::export","",78,[[]]],[11,"into","","",78,[[]]],[11,"borrow","","",78,[[]]],[11,"borrow_mut","","",78,[[]]],[11,"try_from","","",78,[[],["result",4]]],[11,"try_into","","",78,[[],["result",4]]],[11,"type_id","","",78,[[],["typeid",3]]],[11,"vzip","","",78,[[]]],[11,"init","","",78,[[]]],[11,"deref","","",78,[[]]],[11,"deref_mut","","",78,[[]]],[11,"drop","","",78,[[]]],[11,"from","bdk::wallet::signer","",79,[[]]],[11,"into","","",79,[[]]],[11,"to_owned","","",79,[[]]],[11,"clone_into","","",79,[[]]],[11,"borrow","","",79,[[]]],[11,"borrow_mut","","",79,[[]]],[11,"try_from","","",79,[[],["result",4]]],[11,"try_into","","",79,[[],["result",4]]],[11,"type_id","","",79,[[],["typeid",3]]],[11,"vzip","","",79,[[]]],[11,"equivalent","","",79,[[]]],[11,"init","","",79,[[]]],[11,"deref","","",79,[[]]],[11,"deref_mut","","",79,[[]]],[11,"drop","","",79,[[]]],[11,"from","","",80,[[]]],[11,"into","","",80,[[]]],[11,"to_owned","","",80,[[]]],[11,"clone_into","","",80,[[]]],[11,"to_string","","",80,[[],["string",3]]],[11,"borrow","","",80,[[]]],[11,"borrow_mut","","",80,[[]]],[11,"try_from","","",80,[[],["result",4]]],[11,"try_into","","",80,[[],["result",4]]],[11,"type_id","","",80,[[],["typeid",3]]],[11,"vzip","","",80,[[]]],[11,"equivalent","","",80,[[]]],[11,"init","","",80,[[]]],[11,"deref","","",80,[[]]],[11,"deref_mut","","",80,[[]]],[11,"drop","","",80,[[]]],[11,"from","","",82,[[]]],[11,"into","","",82,[[]]],[11,"to_owned","","",82,[[]]],[11,"clone_into","","",82,[[]]],[11,"borrow","","",82,[[]]],[11,"borrow_mut","","",82,[[]]],[11,"try_from","","",82,[[],["result",4]]],[11,"try_into","","",82,[[],["result",4]]],[11,"type_id","","",82,[[],["typeid",3]]],[11,"vzip","","",82,[[]]],[11,"equivalent","","",82,[[]]],[11,"init","","",82,[[]]],[11,"deref","","",82,[[]]],[11,"deref_mut","","",82,[[]]],[11,"drop","","",82,[[]]],[11,"from","","",83,[[]]],[11,"into","","",83,[[]]],[11,"to_owned","","",83,[[]]],[11,"clone_into","","",83,[[]]],[11,"borrow","","",83,[[]]],[11,"borrow_mut","","",83,[[]]],[11,"try_from","","",83,[[],["result",4]]],[11,"try_into","","",83,[[],["result",4]]],[11,"type_id","","",83,[[],["typeid",3]]],[11,"vzip","","",83,[[]]],[11,"init","","",83,[[]]],[11,"deref","","",83,[[]]],[11,"deref_mut","","",83,[[]]],[11,"drop","","",83,[[]]],[11,"from","bdk::wallet::tx_builder","",106,[[]]],[11,"into","","",106,[[]]],[11,"to_owned","","",106,[[]]],[11,"clone_into","","",106,[[]]],[11,"borrow","","",106,[[]]],[11,"borrow_mut","","",106,[[]]],[11,"try_from","","",106,[[],["result",4]]],[11,"try_into","","",106,[[],["result",4]]],[11,"type_id","","",106,[[],["typeid",3]]],[11,"vzip","","",106,[[]]],[11,"init","","",106,[[]]],[11,"deref","","",106,[[]]],[11,"deref_mut","","",106,[[]]],[11,"drop","","",106,[[]]],[11,"from","","",107,[[]]],[11,"into","","",107,[[]]],[11,"to_owned","","",107,[[]]],[11,"clone_into","","",107,[[]]],[11,"borrow","","",107,[[]]],[11,"borrow_mut","","",107,[[]]],[11,"try_from","","",107,[[],["result",4]]],[11,"try_into","","",107,[[],["result",4]]],[11,"type_id","","",107,[[],["typeid",3]]],[11,"vzip","","",107,[[]]],[11,"init","","",107,[[]]],[11,"deref","","",107,[[]]],[11,"deref_mut","","",107,[[]]],[11,"drop","","",107,[[]]],[11,"from","","",84,[[]]],[11,"into","","",84,[[]]],[11,"borrow","","",84,[[]]],[11,"borrow_mut","","",84,[[]]],[11,"try_from","","",84,[[],["result",4]]],[11,"try_into","","",84,[[],["result",4]]],[11,"type_id","","",84,[[],["typeid",3]]],[11,"vzip","","",84,[[]]],[11,"init","","",84,[[]]],[11,"deref","","",84,[[]]],[11,"deref_mut","","",84,[[]]],[11,"drop","","",84,[[]]],[11,"from","","",85,[[]]],[11,"into","","",85,[[]]],[11,"to_owned","","",85,[[]]],[11,"clone_into","","",85,[[]]],[11,"borrow","","",85,[[]]],[11,"borrow_mut","","",85,[[]]],[11,"try_from","","",85,[[],["result",4]]],[11,"try_into","","",85,[[],["result",4]]],[11,"type_id","","",85,[[],["typeid",3]]],[11,"vzip","","",85,[[]]],[11,"equivalent","","",85,[[]]],[11,"init","","",85,[[]]],[11,"deref","","",85,[[]]],[11,"deref_mut","","",85,[[]]],[11,"drop","","",85,[[]]],[11,"from","","",86,[[]]],[11,"into","","",86,[[]]],[11,"to_owned","","",86,[[]]],[11,"clone_into","","",86,[[]]],[11,"borrow","","",86,[[]]],[11,"borrow_mut","","",86,[[]]],[11,"try_from","","",86,[[],["result",4]]],[11,"try_into","","",86,[[],["result",4]]],[11,"type_id","","",86,[[],["typeid",3]]],[11,"vzip","","",86,[[]]],[11,"equivalent","","",86,[[]]],[11,"init","","",86,[[]]],[11,"deref","","",86,[[]]],[11,"deref_mut","","",86,[[]]],[11,"drop","","",86,[[]]],[11,"from","bdk::wallet","",88,[[]]],[11,"into","","",88,[[]]],[11,"borrow","","",88,[[]]],[11,"borrow_mut","","",88,[[]]],[11,"try_from","","",88,[[],["result",4]]],[11,"try_into","","",88,[[],["result",4]]],[11,"type_id","","",88,[[],["typeid",3]]],[11,"vzip","","",88,[[]]],[11,"init","","",88,[[]]],[11,"deref","","",88,[[]]],[11,"deref_mut","","",88,[[]]],[11,"drop","","",88,[[]]],[11,"check_terminal_non_malleable","bdk::descriptor","",101,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","",101,[[],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_consensus_validity","","",101,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","",101,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","",101,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"max_satisfaction_size","","",101,[[["miniscript",3]],["option",4]]],[11,"check_terminal_non_malleable","","",102,[[["terminal",4]],[["result",4],["scriptcontexterror",4]]]],[11,"check_witness","","",102,[[],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_consensus_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_consensus_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_global_policy_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"check_local_policy_validity","","",102,[[["miniscript",3]],[["result",4],["scriptcontexterror",4]]]],[11,"max_satisfaction_size","","",102,[[["miniscript",3]],["option",4]]],[11,"fmt","","",27,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",60,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",102,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",58,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",62,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",23,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",59,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",24,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",101,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",61,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",24,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",23,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",62,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::descriptor","",27,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","bdk::keys","",59,[[["formatter",3]],[["result",4],["error",3]]]],[11,"fmt","","",58,[[["formatter",3]],[["result",4],["error",3]]]],[11,"hash","","",58,[[]]],[11,"hash","","",61,[[]]],[11,"hash","bdk::descriptor","",27,[[]]],[11,"hash","","",24,[[]]],[11,"partial_cmp","bdk::keys","",58,[[["descriptorpublickey",4]],[["option",4],["ordering",4]]]],[11,"lt","","",58,[[["descriptorpublickey",4]]]],[11,"le","","",58,[[["descriptorpublickey",4]]]],[11,"gt","","",58,[[["descriptorpublickey",4]]]],[11,"ge","","",58,[[["descriptorpublickey",4]]]],[11,"partial_cmp","","",62,[[["sortedmultivec",3]],[["option",4],["ordering",4]]]],[11,"lt","","",62,[[["sortedmultivec",3]]]],[11,"le","","",62,[[["sortedmultivec",3]]]],[11,"gt","","",62,[[["sortedmultivec",3]]]],[11,"ge","","",62,[[["sortedmultivec",3]]]],[11,"partial_cmp","bdk::descriptor","",102,[[["segwitv0",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",24,[[["miniscript",3]],[["option",4],["ordering",4]]]],[11,"partial_cmp","bdk::keys","",61,[[["descriptorsinglepub",3]],[["option",4],["ordering",4]]]],[11,"lt","","",61,[[["descriptorsinglepub",3]]]],[11,"le","","",61,[[["descriptorsinglepub",3]]]],[11,"gt","","",61,[[["descriptorsinglepub",3]]]],[11,"ge","","",61,[[["descriptorsinglepub",3]]]],[11,"partial_cmp","bdk::descriptor","",101,[[["legacy",4]],[["option",4],["ordering",4]]]],[11,"partial_cmp","","",23,[[["descriptor",4]],[["option",4],["ordering",4]]]],[11,"lt","","",23,[[["descriptor",4]]]],[11,"le","","",23,[[["descriptor",4]]]],[11,"gt","","",23,[[["descriptor",4]]]],[11,"ge","","",23,[[["descriptor",4]]]],[11,"partial_cmp","","",27,[[["terminal",4]],[["option",4],["ordering",4]]]],[11,"lt","","",27,[[["terminal",4]]]],[11,"le","","",27,[[["terminal",4]]]],[11,"gt","","",27,[[["terminal",4]]]],[11,"ge","","",27,[[["terminal",4]]]],[11,"to_pubkeyhash","bdk::keys","",58,[[],["descriptorpublickey",4]]],[11,"lift","","",62,[[],[["result",4],["policy",4],["error",4]]]],[11,"lift","bdk::descriptor","",24,[[],[["result",4],["policy",4],["error",4]]]],[11,"lift","","",23,[[],[["result",4],["policy",4],["error",4]]]],[11,"lift","","",27,[[],[["result",4],["policy",4],["error",4]]]],[11,"clone","","",102,[[],["segwitv0",4]]],[11,"clone","","",24,[[],["miniscript",3]]],[11,"clone","bdk::keys","",62,[[],["sortedmultivec",3]]],[11,"clone","bdk::descriptor","",27,[[],["terminal",4]]],[11,"clone","bdk::keys","",61,[[],["descriptorsinglepub",3]]],[11,"clone","bdk::descriptor","",23,[[],["descriptor",4]]],[11,"clone","","",101,[[],["legacy",4]]],[11,"clone","bdk::keys","",58,[[],["descriptorpublickey",4]]],[11,"from_str","bdk::descriptor","",23,[[],[["result",4],["descriptor",4],["error",4]]]],[11,"from_str","bdk::keys","",59,[[],[["result",4],["descriptorsecretkey",4]]]],[11,"from_str","","",58,[[],[["result",4],["descriptorpublickey",4]]]],[11,"from_str","bdk::descriptor","Parse a Miniscript from string and perform sanity checks …",24,[[],[["miniscript",3],["error",4],["result",4]]]],[11,"eq","","",27,[[["terminal",4]]]],[11,"ne","","",27,[[["terminal",4]]]],[11,"eq","bdk::keys","",58,[[["descriptorpublickey",4]]]],[11,"ne","","",58,[[["descriptorpublickey",4]]]],[11,"eq","bdk::descriptor","",101,[[["legacy",4]]]],[11,"eq","","",24,[[["miniscript",3]]]],[11,"eq","","",23,[[["descriptor",4]]]],[11,"ne","","",23,[[["descriptor",4]]]],[11,"eq","bdk::keys","",61,[[["descriptorsinglepub",3]]]],[11,"ne","","",61,[[["descriptorsinglepub",3]]]],[11,"eq","bdk::descriptor","",102,[[["segwitv0",4]]]],[11,"eq","bdk::keys","",62,[[["sortedmultivec",3]]]],[11,"ne","","",62,[[["sortedmultivec",3]]]],[11,"cmp","bdk::descriptor","",101,[[["legacy",4]],["ordering",4]]],[11,"cmp","bdk::keys","",61,[[["descriptorsinglepub",3]],["ordering",4]]],[11,"cmp","","",62,[[["sortedmultivec",3]],["ordering",4]]],[11,"cmp","bdk::descriptor","",24,[[["miniscript",3]],["ordering",4]]],[11,"cmp","","",102,[[["segwitv0",4]],["ordering",4]]],[11,"cmp","","",23,[[["descriptor",4]],["ordering",4]]],[11,"cmp","bdk::keys","",58,[[["descriptorpublickey",4]],["ordering",4]]],[11,"cmp","bdk::descriptor","",27,[[["terminal",4]],["ordering",4]]],[11,"to_public_key","bdk::keys","",58,[[["descriptorpublickeyctx",3]],["publickey",3]]],[11,"hash_to_hash160","","",58,[[["descriptorpublickeyctx",3]],["hash",3]]],[11,"from_tree","bdk::descriptor","",27,[[["tree",3]],[["result",4],["terminal",4],["error",4]]]],[11,"from_tree","","Parse an expression tree into a Miniscript. As a general …",24,[[["tree",3]],[["miniscript",3],["error",4],["result",4]]]],[11,"from_tree","","Parse an expression tree into a descriptor",23,[[["tree",3]],[["result",4],["descriptor",4],["error",4]]]],[11,"from_config","bdk::blockchain::any","",0,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::blockchain::electrum","",95,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::blockchain::esplora","",3,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::blockchain::compact_filters","",6,[[],[["result",4],["error",4]]]],[11,"update","bdk::blockchain","",99,[[["option",4],["string",3]],[["result",4],["error",4]]]],[11,"update","","",100,[[["option",4],["string",3]],[["result",4],["error",4]]]],[11,"set_script_pubkey","bdk::database::any","",14,[[["script",3],["keychainkind",4]],[["result",4],["error",4]]]],[11,"set_utxo","","",14,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",14,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",14,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",14,[[["keychainkind",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",14,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"del_path_from_script_pubkey","","",14,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"del_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",14,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"set_script_pubkey","","",15,[[["script",3],["keychainkind",4]],[["result",4],["error",4]]]],[11,"set_utxo","","",15,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",15,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",15,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",15,[[["keychainkind",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",15,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"del_path_from_script_pubkey","","",15,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"del_utxo","","",15,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",15,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_tx","","",15,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",15,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"set_script_pubkey","bdk::database::memory","",18,[[["script",3],["keychainkind",4]],[["result",4],["error",4]]]],[11,"set_utxo","","",18,[[["utxo",3]],[["result",4],["error",4]]]],[11,"set_raw_tx","","",18,[[["transaction",3]],[["result",4],["error",4]]]],[11,"set_tx","","",18,[[["transactiondetails",3]],[["result",4],["error",4]]]],[11,"set_last_index","","",18,[[["keychainkind",4]],[["result",4],["error",4]]]],[11,"del_script_pubkey_from_path","","",18,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"del_path_from_script_pubkey","","",18,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"del_utxo","","",18,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"del_raw_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"del_last_index","","",18,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"check_descriptor_checksum","bdk::database::any","",14,[[["keychainkind",4],["asref",8]],[["result",4],["error",4]]]],[11,"iter_script_pubkeys","","",14,[[["option",4],["keychainkind",4]],[["vec",3],["error",4],["result",4]]]],[11,"iter_utxos","","",14,[[],[["error",4],["result",4],["vec",3]]]],[11,"iter_raw_txs","","",14,[[],[["error",4],["vec",3],["result",4]]]],[11,"iter_txs","","",14,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_script_pubkey_from_path","","",14,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"get_path_from_script_pubkey","","",14,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"get_utxo","","",14,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"get_raw_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_tx","","",14,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_last_index","","",14,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"increment_last_index","","",14,[[["keychainkind",4]],[["error",4],["result",4]]]],[11,"check_descriptor_checksum","bdk::database::memory","",18,[[["keychainkind",4],["asref",8]],[["result",4],["error",4]]]],[11,"iter_script_pubkeys","","",18,[[["option",4],["keychainkind",4]],[["vec",3],["error",4],["result",4]]]],[11,"iter_utxos","","",18,[[],[["error",4],["result",4],["vec",3]]]],[11,"iter_raw_txs","","",18,[[],[["error",4],["vec",3],["result",4]]]],[11,"iter_txs","","",18,[[],[["result",4],["vec",3],["error",4]]]],[11,"get_script_pubkey_from_path","","",18,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"get_path_from_script_pubkey","","",18,[[["script",3]],[["option",4],["error",4],["result",4]]]],[11,"get_utxo","","",18,[[["outpoint",3]],[["result",4],["error",4],["option",4]]]],[11,"get_raw_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_tx","","",18,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"get_last_index","","",18,[[["keychainkind",4]],[["error",4],["result",4],["option",4]]]],[11,"increment_last_index","","",18,[[["keychainkind",4]],[["error",4],["result",4]]]],[11,"begin_batch","bdk::database::any","",14,[[]]],[11,"commit_batch","","",14,[[],[["result",4],["error",4]]]],[11,"begin_batch","bdk::database::memory","",18,[[]]],[11,"commit_batch","","",18,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::database::any","",14,[[],[["result",4],["error",4]]]],[11,"from_config","bdk::database::memory","",18,[[],[["result",4],["error",4]]]],[11,"build","bdk::descriptor::template","",47,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",48,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",49,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",50,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",51,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",52,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",53,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",54,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"build","","",55,[[],[["descriptortemplateout",6],["result",4],["keyerror",4]]]],[11,"to_wallet_descriptor","bdk","",108,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"to_wallet_descriptor","","",109,[[["network",4]],[["result",4],["keyerror",4]]]],[11,"extract_policy","bdk::descriptor","",24,[[["signerscontainer",3],["secp256k1",3]],[["option",4],["error",4],["result",4]]]],[11,"extract_policy","","",23,[[["signerscontainer",3],["secp256k1",3]],[["option",4],["error",4],["result",4]]]],[11,"to_descriptor_key","bdk::keys","",68,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"to_descriptor_key","","",63,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"to_descriptor_key","","",58,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"to_descriptor_key","","",59,[[],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"add_metadata","bdk","",110,[[["option",4],["keysource",6],["derivationpath",3]],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"add_metadata","bdk::keys","",68,[[["option",4],["keysource",6],["derivationpath",3]],[["result",4],["descriptorkey",4],["keyerror",4]]]],[11,"coin_select","bdk::wallet::coin_selection","",105,[[["vec",3],["feerate",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[11,"coin_select","","",77,[[["vec",3],["feerate",3]],[["error",4],["result",4],["coinselectionresult",3]]]],[11,"get_capabilities","bdk::blockchain::any","",0,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",0,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"sync","","",0,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",0,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",0,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",0,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",0,[[],[["error",4],["result",4],["feerate",3]]]],[11,"get_capabilities","bdk::blockchain::electrum","",95,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",95,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",95,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",95,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",95,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",95,[[],[["error",4],["result",4],["feerate",3]]]],[11,"get_capabilities","bdk::blockchain::esplora","",3,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",3,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",3,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",3,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",3,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",3,[[],[["error",4],["result",4],["feerate",3]]]],[11,"get_capabilities","bdk::blockchain::compact_filters","",6,[[],[["hashset",3],["capability",4]]]],[11,"setup","","",6,[[["option",4],["progress",8]],[["result",4],["error",4]]]],[11,"get_tx","","",6,[[["txid",3]],[["result",4],["option",4],["error",4]]]],[11,"broadcast","","",6,[[["transaction",3]],[["result",4],["error",4]]]],[11,"get_height","","",6,[[],[["error",4],["result",4]]]],[11,"estimate_fee","","",6,[[],[["error",4],["result",4],["feerate",3]]]],[11,"as_ref","bdk","",92,[[]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["addressvalidatorerror",4]]]],[11,"from","","",89,[[["policyerror",4]]]],[11,"from","","",89,[[["signererror",4]]]],[11,"from","","",89,[[["keyerror",4]],["error",4]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",3]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["esploraerror",4]]]],[11,"from","","",89,[[["error",4]]]],[11,"from","","",89,[[["compactfilterserror",4]]]],[11,"from","bdk::blockchain::any","",0,[[["electrumblockchain",3]]]],[11,"from","","",0,[[["esplorablockchain",3]]]],[11,"from","","",0,[[["compactfiltersblockchain",3]]]],[11,"from","","",1,[[["electrumblockchainconfig",3]]]],[11,"from","","",1,[[["esplorablockchainconfig",3]]]],[11,"from","","",1,[[["compactfiltersblockchainconfig",3]]]],[11,"from","bdk::blockchain::electrum","",95,[[["client",3]]]],[11,"from","bdk::blockchain::esplora","",5,[[["error",3]]]],[11,"from","","",5,[[["parseinterror",3]]]],[11,"from","","",5,[[["error",4]]]],[11,"from","","",5,[[["error",4]]]],[11,"from","bdk::blockchain::compact_filters","",9,[[["error",3]]]],[11,"from","","",9,[[["error",3]]]],[11,"from","","",9,[[["error",4]]]],[11,"from","","",9,[[["systemtimeerror",3]]]],[11,"from","","",9,[[["error",4]]]],[11,"from","bdk::database::any","",14,[[["memorydatabase",3]]]],[11,"from","","",14,[[["tree",3]]]],[11,"from","","",15,[[]]],[11,"from","","",15,[[]]],[11,"from","","",17,[[]]],[11,"from","","",17,[[["sleddbconfiguration",3]]]],[11,"from","bdk::descriptor::error","",29,[[["keyerror",4]],["error",4]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["error",4]]]],[11,"from","","",29,[[["policyerror",4]]]],[11,"from","bdk::descriptor::policy","",39,[[]]],[11,"from","","",43,[[["satisfiableitem",4]]]],[11,"from","bdk::keys","",72,[[["error",4]]]],[11,"from","","",72,[[["error",4]]]],[11,"from","bdk::wallet::signer","",79,[[["hash",3]],["signerid",4]]],[11,"from","","",79,[[["fingerprint",3]],["signerid",4]]],[11,"from","","",83,[[["keymap",6]],["signerscontainer",3]]],[11,"clone","bdk::blockchain","",10,[[],["capability",4]]],[11,"clone","","",99,[[],["noopprogress",3]]],[11,"clone","","",100,[[],["logprogress",3]]],[11,"clone","bdk::descriptor::policy","",103,[[],["pkorf",3]]],[11,"clone","","",30,[[],["satisfiableitem",4]]],[11,"clone","","",39,[[],["satisfaction",4]]],[11,"clone","","",43,[[],["policy",3]]],[11,"clone","","",44,[[],["condition",3]]],[11,"clone","bdk::keys","",64,[[],["scriptcontextenum",4]]],[11,"clone","","",71,[[],["privatekeygenerateoptions",3]]],[11,"clone","bdk","",92,[[],["keychainkind",4]]],[11,"clone","","",104,[[],["feerate",3]]],[11,"clone","","",93,[[],["utxo",3]]],[11,"clone","","",94,[[],["transactiondetails",3]]],[11,"clone","bdk::wallet::address_validator","",73,[[],["addressvalidatorerror",4]]],[11,"clone","bdk::wallet::signer","",79,[[],["signerid",4]]],[11,"clone","","",80,[[],["signererror",4]]],[11,"clone","","",82,[[],["signerordering",3]]],[11,"clone","","",83,[[],["signerscontainer",3]]],[11,"clone","bdk::wallet::tx_builder","",106,[[],["createtx",3]]],[11,"clone","","",107,[[],["bumpfee",3]]],[11,"clone","","",85,[[],["txordering",4]]],[11,"clone","","",86,[[],["changespendpolicy",4]]],[11,"default","bdk::blockchain::compact_filters","",96,[[],["mempool",3]]],[11,"default","bdk::database::memory","",18,[[],["memorydatabase",3]]],[11,"default","bdk::descriptor::policy","",103,[[],["pkorf",3]]],[11,"default","","",44,[[],["condition",3]]],[11,"default","bdk::keys","",71,[[]]],[11,"default","bdk","",104,[[]]],[11,"default","","",94,[[],["transactiondetails",3]]],[11,"default","bdk::wallet::coin_selection","",105,[[],["largestfirstcoinselection",3]]],[11,"default","","",77,[[]]],[11,"default","bdk::wallet::signer","",82,[[]]],[11,"default","","",83,[[],["signerscontainer",3]]],[11,"default","bdk::wallet::tx_builder","",106,[[],["createtx",3]]],[11,"default","","",107,[[],["bumpfee",3]]],[11,"default","","",84,[[]]],[11,"default","","",85,[[]]],[11,"default","","",86,[[]]],[11,"cmp","bdk::descriptor::policy","",44,[[["condition",3]],["ordering",4]]],[11,"cmp","bdk::wallet::signer","",82,[[["signerordering",3]],["ordering",4]]],[11,"cmp","bdk::wallet::tx_builder","",85,[[["txordering",4]],["ordering",4]]],[11,"cmp","","",86,[[["changespendpolicy",4]],["ordering",4]]],[11,"eq","bdk::blockchain","",10,[[["capability",4]]]],[11,"eq","bdk::descriptor::policy","",44,[[["condition",3]]]],[11,"ne","","",44,[[["condition",3]]]],[11,"eq","bdk::keys","",64,[[["scriptcontextenum",4]]]],[11,"eq","bdk","",92,[[["keychainkind",4]]]],[11,"eq","","",104,[[["feerate",3]]]],[11,"ne","","",104,[[["feerate",3]]]],[11,"eq","","",93,[[["utxo",3]]]],[11,"ne","","",93,[[["utxo",3]]]],[11,"eq","","",94,[[["transactiondetails",3]]]],[11,"ne","","",94,[[["transactiondetails",3]]]],[11,"eq","bdk::wallet::address_validator","",73,[[["addressvalidatorerror",4]]]],[11,"ne","","",73,[[["addressvalidatorerror",4]]]],[11,"eq","bdk::wallet::signer","",79,[[["signerid",4]]]],[11,"ne","","",79,[[["signerid",4]]]],[11,"eq","","",80,[[["signererror",4]]]],[11,"eq","","",82,[[["signerordering",3]]]],[11,"ne","","",82,[[["signerordering",3]]]],[11,"eq","bdk::wallet::tx_builder","",85,[[["txordering",4]]]],[11,"eq","","",86,[[["changespendpolicy",4]]]],[11,"partial_cmp","bdk::descriptor::policy","",44,[[["condition",3]],[["ordering",4],["option",4]]]],[11,"lt","","",44,[[["condition",3]]]],[11,"le","","",44,[[["condition",3]]]],[11,"gt","","",44,[[["condition",3]]]],[11,"ge","","",44,[[["condition",3]]]],[11,"partial_cmp","bdk","",104,[[["feerate",3]],[["ordering",4],["option",4]]]],[11,"lt","","",104,[[["feerate",3]]]],[11,"le","","",104,[[["feerate",3]]]],[11,"gt","","",104,[[["feerate",3]]]],[11,"ge","","",104,[[["feerate",3]]]],[11,"partial_cmp","bdk::wallet::signer","",82,[[["signerordering",3]],[["ordering",4],["option",4]]]],[11,"lt","","",82,[[["signerordering",3]]]],[11,"le","","",82,[[["signerordering",3]]]],[11,"gt","","",82,[[["signerordering",3]]]],[11,"ge","","",82,[[["signerordering",3]]]],[11,"partial_cmp","bdk::wallet::tx_builder","",85,[[["txordering",4]],[["ordering",4],["option",4]]]],[11,"partial_cmp","","",86,[[["changespendpolicy",4]],[["ordering",4],["option",4]]]],[11,"to_string","bdk::wallet::export","",78,[[],["string",3]]],[11,"deref","bdk::keys","",68,[[]]],[11,"fmt","bdk","",89,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::any","",1,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::electrum","",2,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",3,[[["formatter",3]],["result",6]]],[11,"fmt","","",4,[[["formatter",3]],["result",6]]],[11,"fmt","","",5,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",96,[[["formatter",3]],["result",6]]],[11,"fmt","","",97,[[["formatter",3]],["result",6]]],[11,"fmt","","",6,[[["formatter",3]],["result",6]]],[11,"fmt","","",7,[[["formatter",3]],["result",6]]],[11,"fmt","","",8,[[["formatter",3]],["result",6]]],[11,"fmt","","",9,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain","",10,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::database::any","",14,[[["formatter",3]],["result",6]]],[11,"fmt","","",16,[[["formatter",3]],["result",6]]],[11,"fmt","","",17,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::database::memory","",18,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",29,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",103,[[["formatter",3]],["result",6]]],[11,"fmt","","",30,[[["formatter",3]],["result",6]]],[11,"fmt","","",39,[[["formatter",3]],["result",6]]],[11,"fmt","","",43,[[["formatter",3]],["result",6]]],[11,"fmt","","",44,[[["formatter",3]],["result",6]]],[11,"fmt","","",45,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::keys","",63,[[["formatter",3]],["result",6]]],[11,"fmt","","",64,[[["formatter",3]],["result",6]]],[11,"fmt","","",71,[[["formatter",3]],["result",6]]],[11,"fmt","","",72,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",92,[[["formatter",3]],["result",6]]],[11,"fmt","","",104,[[["formatter",3]],["result",6]]],[11,"fmt","","",93,[[["formatter",3]],["result",6]]],[11,"fmt","","",94,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",73,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::coin_selection","",75,[[["formatter",3]],["result",6]]],[11,"fmt","","",105,[[["formatter",3]],["result",6]]],[11,"fmt","","",77,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::export","",78,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",79,[[["formatter",3]],["result",6]]],[11,"fmt","","",80,[[["formatter",3]],["result",6]]],[11,"fmt","","",82,[[["formatter",3]],["result",6]]],[11,"fmt","","",83,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::tx_builder","",106,[[["formatter",3]],["result",6]]],[11,"fmt","","",107,[[["formatter",3]],["result",6]]],[11,"fmt","","",84,[[["formatter",3]],["result",6]]],[11,"fmt","","",85,[[["formatter",3]],["result",6]]],[11,"fmt","","",86,[[["formatter",3]],["result",6]]],[11,"fmt","bdk","",89,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::esplora","",5,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::blockchain::compact_filters","",9,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::error","",29,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::descriptor::policy","",45,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::keys","",72,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::address_validator","",73,[[["formatter",3]],["result",6]]],[11,"fmt","bdk::wallet::signer","",80,[[["formatter",3]],["result",6]]],[11,"hash","bdk::blockchain","",10,[[]]],[11,"hash","bdk::descriptor::policy","",44,[[]]],[11,"hash","bdk","",92,[[]]],[11,"hash","bdk::wallet::signer","",79,[[]]],[11,"hash","","",82,[[]]],[11,"hash","bdk::wallet::tx_builder","",85,[[]]],[11,"hash","","",86,[[]]],[11,"from_str","bdk::wallet::export","",78,[[],["result",4]]],[11,"serialize","bdk::blockchain::any","",1,[[],["result",4]]],[11,"serialize","bdk::blockchain::electrum","",2,[[],["result",4]]],[11,"serialize","bdk::blockchain::esplora","",4,[[],["result",4]]],[11,"serialize","bdk::blockchain::compact_filters","",7,[[],["result",4]]],[11,"serialize","","",8,[[],["result",4]]],[11,"serialize","bdk::database::any","",16,[[],["result",4]]],[11,"serialize","","",17,[[],["result",4]]],[11,"serialize","bdk::descriptor::policy","",103,[[],["result",4]]],[11,"serialize","","",30,[[],["result",4]]],[11,"serialize","","",39,[[],["result",4]]],[11,"serialize","","",43,[[],["result",4]]],[11,"serialize","","",44,[[],["result",4]]],[11,"serialize","bdk","",92,[[],["result",4]]],[11,"serialize","","",93,[[],["result",4]]],[11,"serialize","","",94,[[],["result",4]]],[11,"serialize","bdk::wallet::export","",78,[[],["result",4]]],[11,"deserialize","bdk::blockchain::any","",1,[[],["result",4]]],[11,"deserialize","bdk::blockchain::electrum","",2,[[],["result",4]]],[11,"deserialize","bdk::blockchain::esplora","",4,[[],["result",4]]],[11,"deserialize","bdk::blockchain::compact_filters","",7,[[],["result",4]]],[11,"deserialize","","",8,[[],["result",4]]],[11,"deserialize","bdk::database::any","",16,[[],["result",4]]],[11,"deserialize","","",17,[[],["result",4]]],[11,"deserialize","bdk","",92,[[],["result",4]]],[11,"deserialize","","",93,[[],["result",4]]],[11,"deserialize","","",94,[[],["result",4]]],[11,"deserialize","bdk::wallet::export","",78,[[],["result",4]]],[11,"add_tx","bdk::blockchain::compact_filters","Add a transaction to the mempool",96,[[["transaction",3]]]],[11,"get_tx","","Look-up a transaction in the mempool given an [Inventory] …",96,[[["inventory",4]],[["option",4],["transaction",3]]]],[11,"has_tx","","Return whether or not the mempool contains a transaction …",96,[[["txid",3]]]],[11,"iter_txs","","Return the list of transactions contained in the mempool",96,[[],[["vec",3],["transaction",3]]]],[11,"connect","","Connect to a peer over a plaintext TCP connection",97,[[["tosocketaddrs",8],["mempool",3],["network",4],["arc",3]],[["result",4],["compactfilterserror",4]]]],[11,"connect_proxy","","Connect to a peer through a SOCKS5 proxy, optionally by …",97,[[["tosocketaddrs",8],["totargetaddr",8],["mempool",3],["network",4],["option",4],["arc",3]],[["result",4],["compactfilterserror",4]]]],[11,"get_version","","Return the [VersionMessage] sent by the peer",97,[[],["versionmessage",3]]],[11,"get_network","","Return the Bitcoin [Network] in use",97,[[],["network",4]]],[11,"get_mempool","","Return the mempool used by this peer",97,[[],[["mempool",3],["arc",3]]]],[11,"is_connected","","Return whether or not the peer is still connected",97,[[]]],[11,"send","","Send a raw Bitcoin message to the peer",97,[[["networkmessage",4]],[["compactfilterserror",4],["result",4]]]],[11,"recv","","Waits for a specific incoming Bitcoin message, optionally …",97,[[["duration",3],["option",4]],[["result",4],["option",4],["compactfilterserror",4]]]],[11,"translate_pk","bdk::descriptor","Convert a descriptor using abstract keys to one using …",23,[[],[["result",4],["descriptor",4]]]],[11,"sanity_check","","Whether the descriptor is safe Checks whether all the …",23,[[],[["result",4],["error",4]]]],[11,"address","","Computes the Bitcoin address of the descriptor, if one …",23,[[["network",4]],[["address",3],["option",4]]]],[11,"script_pubkey","","Computes the scriptpubkey of the descriptor to_pk_ctx …",23,[[],["script",3]]],[11,"unsigned_script_sig","","Computes the scriptSig that will be in place for an …",23,[[],["script",3]]],[11,"witness_script","","Computes the \\\"witness script\\\" of the descriptor, i.e. the …",23,[[],["script",3]]],[11,"get_satisfication","","Returns satisfying witness and scriptSig to spend an …",23,[[],[["error",4],["result",4]]]],[11,"satisfy","","Attempts to produce a satisfying witness and scriptSig to …",23,[[["txin",3]],[["result",4],["error",4]]]],[11,"max_satisfaction_weight","","Computes an upper bound on the weight of a satisfying …",23,[[],["option",4]]],[11,"script_code","","Get the scriptCode of a transaction output.",23,[[],["script",3]]],[11,"derive","","Derives all wildcard keys in the descriptor using the …",23,[[["childnumber",4]],[["descriptorpublickey",4],["descriptor",4]]]],[11,"parse_descriptor","","Parse a descriptor that may contain secret keys",23,[[],[["result",4],["error",4]]]],[11,"to_string_with_secret","","Serialize a descriptor to string with its secret keys",23,[[["hashmap",3]],["string",3]]],[11,"requires_sig","","Whether all spend paths of miniscript require a signature",24,[[]]],[11,"is_non_malleable","","Whether the miniscript is malleable",24,[[]]],[11,"within_resource_limits","","Whether the miniscript can exceed the resource …",24,[[]]],[11,"has_mixed_timelocks","","Whether the miniscript contains a combination of timelocks",24,[[]]],[11,"has_repeated_keys","","Whether the miniscript has repeated Pk or Pkh",24,[[]]],[11,"sanity_check","","Check whether the underlying Miniscript is safe under the …",24,[[],[["analysiserror",4],["result",4]]]],[11,"iter","","Creates a new [Iter] iterator that will iterate over all […",24,[[],["iter",3]]],[11,"iter_pk","","Creates a new [PkIter] iterator that will iterate over …",24,[[],["pkiter",3]]],[11,"iter_pkh","","Creates a new [PkhIter] iterator that will iterate over …",24,[[],["pkhiter",3]]],[11,"iter_pk_pkh","","Creates a new [PkPkhIter] iterator that will iterate over …",24,[[],["pkpkhiter",3]]],[11,"branches","","Enumerates all child nodes of the current AST node (self) …",24,[[],[["miniscript",3],["global",3],["vec",3]]]],[11,"get_nth_child","","Returns child node with given index, if any",24,[[],[["miniscript",3],["option",4]]]],[11,"get_leaf_pk","","Returns Vec with cloned version of all public keys from …",24,[[],[["global",3],["vec",3]]]],[11,"get_leaf_pkh","","Returns Vec with hashes of all public keys from the …",24,[[],[["global",3],["vec",3]]]],[11,"get_leaf_pk_pkh","","Returns Vec of [PkPkh] entries, representing either …",24,[[],[["global",3],["vec",3],["pkpkh",4]]]],[11,"get_nth_pk","","Returns Option::Some with cloned n\'th public key from the …",24,[[],["option",4]]],[11,"get_nth_pkh","","Returns Option::Some with hash of n\'th public key from …",24,[[],["option",4]]],[11,"get_nth_pk_pkh","","Returns Option::Some with hash of n\'th public key or hash …",24,[[],[["option",4],["pkpkh",4]]]],[11,"from_ast","","Add type information(Type and Extdata) to Miniscript …",24,[[["terminal",4]],[["miniscript",3],["error",4],["result",4]]]],[11,"into_inner","","Extracts the AstElem representing the root of the …",24,[[],["terminal",4]]],[11,"as_inner","","Get a reference to the inner AstElem representing the …",24,[[],["terminal",4]]],[11,"parse_insane","","Attempt to parse an insane(scripts don\'t clear sanity …",24,[[["script",3]],[["result",4],["miniscript",3],["error",4]]]],[11,"parse","","Attempt to parse a Script into Miniscript representation. …",24,[[["script",3]],[["result",4],["miniscript",3],["error",4]]]],[11,"encode","","Encode as a Bitcoin script",24,[[],["script",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript …",24,[[]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the …",24,[[],["option",4]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For …",24,[[],["option",4]]],[11,"translate_pk","","This will panic if translatefpk returns an uncompressed …",24,[[],[["miniscript",3],["result",4]]]],[11,"from_str_insane","","Attempt to parse an insane(scripts don\'t clear sanity …",24,[[],[["miniscript",3],["error",4],["result",4]]]],[11,"satisfy","","Attempt to produce non-malleable satisfying witness for …",24,[[],[["error",4],["vec",3],["result",4]]]],[11,"satisfy_malleable","","Attempt to produce a malleable satisfying witness for the …",24,[[],[["error",4],["vec",3],["result",4]]]],[11,"lift_check","","Lifting corresponds conversion of miniscript into Policy […",24,[[],[["lifterror",4],["result",4]]]],[11,"translate_pk","","Convert an AST element with one public key type to one of …",27,[[],[["result",4],["terminal",4]]]],[11,"encode","","Encode the element as a fragment of Bitcoin Script. The …",27,[[["builder",3]],["builder",3]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript …",27,[[]]],[11,"derive","bdk::keys","Derives the specified child key if self is a wildcard …",58,[[["childnumber",4]],["descriptorpublickey",4]]],[11,"as_public","","Return the public version of this key, by applying either …",59,[[["secp256k1",3]],[["descriptorpublickey",4],["result",4],["descriptorkeyparseerror",3]]]],[11,"new","","Create a new instance of SortedMultiVec given a list of …",62,[[["global",3],["vec",3]],[["result",4],["sortedmultivec",3],["error",4]]]],[11,"translate_pk","","This will panic if translatefpk returns an uncompressed …",62,[[],[["sortedmultivec",3],["result",4]]]],[11,"sorted_node","","Create Terminal::Multi containing sorted pubkeys",62,[[],["terminal",4]]],[11,"encode","","Encode as a Bitcoin script",62,[[],["script",3]]],[11,"satisfy","","Attempt to produce a satisfying witness for the witness …",62,[[],[["error",4],["vec",3],["result",4]]]],[11,"script_size","","Size, in bytes of the script-pubkey. If this Miniscript …",62,[[]]],[11,"max_satisfaction_witness_elements","","Maximum number of witness elements used to satisfy the …",62,[[]]],[11,"max_satisfaction_size","","Maximum size, in bytes, of a satisfying witness. For …",62,[[]]],[11,"as_byte","bdk","",92,[[]]],[11,"from_btc_per_kvb","","Create a new instance of [FeeRate] given a float fee rate …",104,[[]]],[11,"from_sat_per_vb","","Create a new instance of [FeeRate] given a float fee rate …",104,[[]]],[11,"default_min_relay_fee","","Create a new [FeeRate] with the default min relay fee …",104,[[]]],[11,"as_sat_vb","","Return the value as satoshi/vbyte",104,[[]]]],"p":[[4,"AnyBlockchain"],[4,"AnyBlockchainConfig"],[3,"ElectrumBlockchainConfig"],[3,"EsploraBlockchain"],[3,"EsploraBlockchainConfig"],[4,"EsploraError"],[3,"CompactFiltersBlockchain"],[3,"BitcoinPeerConfig"],[3,"CompactFiltersBlockchainConfig"],[4,"CompactFiltersError"],[4,"Capability"],[8,"Blockchain"],[8,"ConfigurableBlockchain"],[8,"Progress"],[4,"AnyDatabase"],[4,"AnyBatch"],[3,"SledDbConfiguration"],[4,"AnyDatabaseConfig"],[3,"MemoryDatabase"],[8,"BatchOperations"],[8,"Database"],[8,"BatchDatabase"],[8,"ConfigurableDatabase"],[4,"Descriptor"],[3,"Miniscript"],[8,"MiniscriptKey"],[8,"ScriptContext"],[4,"Terminal"],[8,"ToPublicKey"],[4,"Error"],[4,"SatisfiableItem"],[13,"SHA256Preimage"],[13,"HASH256Preimage"],[13,"RIPEMD160Preimage"],[13,"HASH160Preimage"],[13,"AbsoluteTimelock"],[13,"RelativeTimelock"],[13,"Multisig"],[13,"Thresh"],[4,"Satisfaction"],[13,"Partial"],[13,"PartialComplete"],[13,"Complete"],[3,"Policy"],[3,"Condition"],[4,"PolicyError"],[8,"DescriptorTemplate"],[3,"P2PKH"],[3,"P2WPKH_P2SH"],[3,"P2WPKH"],[3,"BIP44"],[3,"BIP44Public"],[3,"BIP49"],[3,"BIP49Public"],[3,"BIP84"],[3,"BIP84Public"],[8,"ToWalletDescriptor"],[8,"ExtractPolicy"],[4,"DescriptorPublicKey"],[4,"DescriptorSecretKey"],[3,"DescriptorSinglePriv"],[3,"DescriptorSinglePub"],[3,"SortedMultiVec"],[4,"DescriptorKey"],[4,"ScriptContextEnum"],[8,"ExtScriptContext"],[8,"ToDescriptorKey"],[8,"DerivableKey"],[3,"GeneratedKey"],[8,"GeneratableKey"],[8,"GeneratableDefaultOptions"],[3,"PrivateKeyGenerateOptions"],[4,"KeyError"],[4,"AddressValidatorError"],[8,"AddressValidator"],[3,"CoinSelectionResult"],[8,"CoinSelectionAlgorithm"],[3,"BranchAndBoundCoinSelection"],[3,"WalletExport"],[4,"SignerId"],[4,"SignerError"],[8,"Signer"],[3,"SignerOrdering"],[3,"SignersContainer"],[3,"TxBuilder"],[4,"TxOrdering"],[4,"ChangeSpendPolicy"],[8,"IsDust"],[3,"Wallet"],[4,"Error"],[13,"FeeRateTooLow"],[13,"FeeTooLow"],[4,"KeychainKind"],[3,"UTXO"],[3,"TransactionDetails"],[3,"ElectrumBlockchain"],[3,"Mempool"],[3,"Peer"],[3,"OfflineBlockchain"],[3,"NoopProgress"],[3,"LogProgress"],[4,"Legacy"],[4,"Segwitv0"],[3,"PKOrF"],[3,"FeeRate"],[3,"LargestFirstCoinSelection"],[3,"CreateTx"],[3,"BumpFee"],[6,"ExtendedDescriptor"],[6,"DescriptorTemplateOut"],[6,"MnemonicWithPassphrase"]]}\ }'); addSearchOptions(searchIndex);initSearch(searchIndex); \ No newline at end of file diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html index 9dedc60a9c..651f709f67 100644 --- a/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html +++ b/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/compact_filters/mod.rs.html @@ -575,6 +575,10 @@ 572 573 574 +575 +576 +577 +578
 // Magical Bitcoin Library
 // Written in 2020 by
@@ -659,7 +663,7 @@
 use super::{Blockchain, Capability, ConfigurableBlockchain, Progress};
 use crate::database::{BatchDatabase, BatchOperations, DatabaseUtils};
 use crate::error::Error;
-use crate::types::{ScriptType, TransactionDetails, UTXO};
+use crate::types::{KeychainKind, TransactionDetails, UTXO};
 use crate::FeeRate;
 
 use peer::*;
@@ -766,22 +770,22 @@
             outputs_sum += output.value;
 
             // this output is ours, we have a path to derive it
-            if let Some((script_type, child)) =
+            if let Some((keychain, child)) =
                 database.get_path_from_script_pubkey(&output.script_pubkey)?
             {
                 debug!("{} output #{} is mine, adding utxo", tx.txid(), i);
                 updates.set_utxo(&UTXO {
                     outpoint: OutPoint::new(tx.txid(), i as u32),
                     txout: output.clone(),
-                    script_type,
+                    keychain,
                 })?;
                 incoming += output.value;
 
-                if script_type == ScriptType::Internal
+                if keychain == KeychainKind::Internal
                     && (internal_max_deriv.is_none() || child > internal_max_deriv.unwrap_or(0))
                 {
                     *internal_max_deriv = Some(child);
-                } else if script_type == ScriptType::External
+                } else if keychain == KeychainKind::External
                     && (external_max_deriv.is_none() || child > external_max_deriv.unwrap_or(0))
                 {
                     *external_max_deriv = Some(child);
@@ -993,18 +997,22 @@
             )?;
         }
 
-        let current_ext = database.get_last_index(ScriptType::External)?.unwrap_or(0);
+        let current_ext = database
+            .get_last_index(KeychainKind::External)?
+            .unwrap_or(0);
         let first_ext_new = external_max_deriv.map(|x| x + 1).unwrap_or(0);
         if first_ext_new > current_ext {
             info!("Setting external index to {}", first_ext_new);
-            database.set_last_index(ScriptType::External, first_ext_new)?;
+            database.set_last_index(KeychainKind::External, first_ext_new)?;
         }
 
-        let current_int = database.get_last_index(ScriptType::Internal)?.unwrap_or(0);
+        let current_int = database
+            .get_last_index(KeychainKind::Internal)?
+            .unwrap_or(0);
         let first_int_new = internal_max_deriv.map(|x| x + 1).unwrap_or(0);
         if first_int_new > current_int {
             info!("Setting internal index to {}", first_int_new);
-            database.set_last_index(ScriptType::Internal, first_int_new)?;
+            database.set_last_index(KeychainKind::Internal, first_int_new)?;
         }
 
         info!("Dropping blocks until {}", buried_height);
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/utils.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/utils.rs.html
index 026fbc4e50..61f15b1a72 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/utils.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/blockchain/utils.rs.html
@@ -398,8 +398,6 @@
 395
 396
 397
-398
-399
 
 // Magical Bitcoin Library
 // Written in 2020 by
@@ -437,7 +435,7 @@
 use super::*;
 use crate::database::{BatchDatabase, BatchOperations, DatabaseUtils};
 use crate::error::Error;
-use crate::types::{ScriptType, TransactionDetails, UTXO};
+use crate::types::{KeychainKind, TransactionDetails, UTXO};
 use crate::wallet::time::Instant;
 use crate::wallet::utils::ChunksIterator;
 
@@ -484,12 +482,12 @@
         let mut txid_height = HashMap::new();
         let mut max_indexes = HashMap::new();
 
-        let mut wallet_chains = vec![ScriptType::Internal, ScriptType::External];
+        let mut wallet_chains = vec![KeychainKind::Internal, KeychainKind::External];
         // shuffling improve privacy, the server doesn't know my first request is from my internal or external addresses
         wallet_chains.shuffle(&mut thread_rng());
         // download history of our internal and external script_pubkeys
-        for script_type in wallet_chains.iter() {
-            let script_iter = db.iter_script_pubkeys(Some(*script_type))?.into_iter();
+        for keychain in wallet_chains.iter() {
+            let script_iter = db.iter_script_pubkeys(Some(*keychain))?.into_iter();
 
             for (i, chunk) in ChunksIterator::new(script_iter, stop_gap).enumerate() {
                 // TODO if i == last, should create another chunk of addresses in db
@@ -501,10 +499,10 @@
                     .filter_map(|(i, v)| v.first().map(|_| i as u32))
                     .max();
                 if let Some(max) = max_index {
-                    max_indexes.insert(script_type, max + (i * chunk_size) as u32);
+                    max_indexes.insert(keychain, max + (i * chunk_size) as u32);
                 }
                 let flattened: Vec<ELSGetHistoryRes> = call_result.into_iter().flatten().collect();
-                debug!("#{} of {:?} results:{}", i, script_type, flattened.len());
+                debug!("#{} of {:?} results:{}", i, keychain, flattened.len());
                 if flattened.is_empty() {
                     // Didn't find anything in the last `stop_gap` script_pubkeys, breaking
                     break;
@@ -526,9 +524,9 @@
 
         // saving max indexes
         info!("max indexes are: {:?}", max_indexes);
-        for script_type in wallet_chains.iter() {
-            if let Some(index) = max_indexes.get(script_type) {
-                db.set_last_index(*script_type, *index)?;
+        for keychain in wallet_chains.iter() {
+            if let Some(index) = max_indexes.get(keychain) {
+                db.set_last_index(*keychain, *index)?;
             }
         }
 
@@ -754,14 +752,12 @@
         outputs_sum += output.value;
 
         // this output is ours, we have a path to derive it
-        if let Some((script_type, _child)) =
-            db.get_path_from_script_pubkey(&output.script_pubkey)?
-        {
+        if let Some((keychain, _child)) = db.get_path_from_script_pubkey(&output.script_pubkey)? {
             debug!("{} output #{} is mine, adding utxo", txid, i);
             updates.set_utxo(&UTXO {
                 outpoint: OutPoint::new(tx.txid(), i as u32),
                 txout: output.clone(),
-                script_type,
+                keychain,
             })?;
 
             incoming += output.value;
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/database/any.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/database/any.rs.html
index bf8a2a5ab6..a37a3e9640 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/database/any.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/database/any.rs.html
@@ -387,19 +387,6 @@
 384
 385
 386
-387
-388
-389
-390
-391
-392
-393
-394
-395
-396
-397
-398
-399
 
 // Magical Bitcoin Library
 // Written in 2020 by
@@ -524,7 +511,7 @@
     fn set_script_pubkey(
         &mut self,
         script: &Script,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<(), Error> {
         impl_inner_method!(
@@ -532,7 +519,7 @@
             self,
             set_script_pubkey,
             script,
-            script_type,
+            keychain,
             child
         )
     }
@@ -545,27 +532,27 @@
     fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error> {
         impl_inner_method!(AnyDatabase, self, set_tx, transaction)
     }
-    fn set_last_index(&mut self, script_type: ScriptType, value: u32) -> Result<(), Error> {
-        impl_inner_method!(AnyDatabase, self, set_last_index, script_type, value)
+    fn set_last_index(&mut self, keychain: KeychainKind, value: u32) -> Result<(), Error> {
+        impl_inner_method!(AnyDatabase, self, set_last_index, keychain, value)
     }
 
     fn del_script_pubkey_from_path(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<Option<Script>, Error> {
         impl_inner_method!(
             AnyDatabase,
             self,
             del_script_pubkey_from_path,
-            script_type,
+            keychain,
             child
         )
     }
     fn del_path_from_script_pubkey(
         &mut self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error> {
+    ) -> Result<Option<(KeychainKind, u32)>, Error> {
         impl_inner_method!(AnyDatabase, self, del_path_from_script_pubkey, script)
     }
     fn del_utxo(&mut self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error> {
@@ -581,28 +568,28 @@
     ) -> Result<Option<TransactionDetails>, Error> {
         impl_inner_method!(AnyDatabase, self, del_tx, txid, include_raw)
     }
-    fn del_last_index(&mut self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-        impl_inner_method!(AnyDatabase, self, del_last_index, script_type)
+    fn del_last_index(&mut self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+        impl_inner_method!(AnyDatabase, self, del_last_index, keychain)
     }
 }
 
 impl Database for AnyDatabase {
     fn check_descriptor_checksum<B: AsRef<[u8]>>(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         bytes: B,
     ) -> Result<(), Error> {
         impl_inner_method!(
             AnyDatabase,
             self,
             check_descriptor_checksum,
-            script_type,
+            keychain,
             bytes
         )
     }
 
-    fn iter_script_pubkeys(&self, script_type: Option<ScriptType>) -> Result<Vec<Script>, Error> {
-        impl_inner_method!(AnyDatabase, self, iter_script_pubkeys, script_type)
+    fn iter_script_pubkeys(&self, keychain: Option<KeychainKind>) -> Result<Vec<Script>, Error> {
+        impl_inner_method!(AnyDatabase, self, iter_script_pubkeys, keychain)
     }
     fn iter_utxos(&self) -> Result<Vec<UTXO>, Error> {
         impl_inner_method!(AnyDatabase, self, iter_utxos)
@@ -616,21 +603,21 @@
 
     fn get_script_pubkey_from_path(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<Option<Script>, Error> {
         impl_inner_method!(
             AnyDatabase,
             self,
             get_script_pubkey_from_path,
-            script_type,
+            keychain,
             child
         )
     }
     fn get_path_from_script_pubkey(
         &self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error> {
+    ) -> Result<Option<(KeychainKind, u32)>, Error> {
         impl_inner_method!(AnyDatabase, self, get_path_from_script_pubkey, script)
     }
     fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error> {
@@ -642,12 +629,12 @@
     fn get_tx(&self, txid: &Txid, include_raw: bool) -> Result<Option<TransactionDetails>, Error> {
         impl_inner_method!(AnyDatabase, self, get_tx, txid, include_raw)
     }
-    fn get_last_index(&self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-        impl_inner_method!(AnyDatabase, self, get_last_index, script_type)
+    fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+        impl_inner_method!(AnyDatabase, self, get_last_index, keychain)
     }
 
-    fn increment_last_index(&mut self, script_type: ScriptType) -> Result<u32, Error> {
-        impl_inner_method!(AnyDatabase, self, increment_last_index, script_type)
+    fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error> {
+        impl_inner_method!(AnyDatabase, self, increment_last_index, keychain)
     }
 }
 
@@ -655,17 +642,10 @@
     fn set_script_pubkey(
         &mut self,
         script: &Script,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<(), Error> {
-        impl_inner_method!(
-            AnyBatch,
-            self,
-            set_script_pubkey,
-            script,
-            script_type,
-            child
-        )
+        impl_inner_method!(AnyBatch, self, set_script_pubkey, script, keychain, child)
     }
     fn set_utxo(&mut self, utxo: &UTXO) -> Result<(), Error> {
         impl_inner_method!(AnyBatch, self, set_utxo, utxo)
@@ -676,27 +656,21 @@
     fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error> {
         impl_inner_method!(AnyBatch, self, set_tx, transaction)
     }
-    fn set_last_index(&mut self, script_type: ScriptType, value: u32) -> Result<(), Error> {
-        impl_inner_method!(AnyBatch, self, set_last_index, script_type, value)
+    fn set_last_index(&mut self, keychain: KeychainKind, value: u32) -> Result<(), Error> {
+        impl_inner_method!(AnyBatch, self, set_last_index, keychain, value)
     }
 
     fn del_script_pubkey_from_path(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<Option<Script>, Error> {
-        impl_inner_method!(
-            AnyBatch,
-            self,
-            del_script_pubkey_from_path,
-            script_type,
-            child
-        )
+        impl_inner_method!(AnyBatch, self, del_script_pubkey_from_path, keychain, child)
     }
     fn del_path_from_script_pubkey(
         &mut self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error> {
+    ) -> Result<Option<(KeychainKind, u32)>, Error> {
         impl_inner_method!(AnyBatch, self, del_path_from_script_pubkey, script)
     }
     fn del_utxo(&mut self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error> {
@@ -712,8 +686,8 @@
     ) -> Result<Option<TransactionDetails>, Error> {
         impl_inner_method!(AnyBatch, self, del_tx, txid, include_raw)
     }
-    fn del_last_index(&mut self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-        impl_inner_method!(AnyBatch, self, del_last_index, script_type)
+    fn del_last_index(&mut self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+        impl_inner_method!(AnyBatch, self, del_last_index, keychain)
     }
 }
 
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/database/keyvalue.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/database/keyvalue.rs.html
index 554d071d50..200aeebca1 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/database/keyvalue.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/database/keyvalue.rs.html
@@ -522,13 +522,13 @@
 
 macro_rules! impl_batch_operations {
     ( { $($after_insert:tt)* }, $process_delete:ident ) => {
-        fn set_script_pubkey(&mut self, script: &Script, script_type: ScriptType, path: u32) -> Result<(), Error> {
-            let key = MapKey::Path((Some(script_type), Some(path))).as_map_key();
+        fn set_script_pubkey(&mut self, script: &Script, keychain: KeychainKind, path: u32) -> Result<(), Error> {
+            let key = MapKey::Path((Some(keychain), Some(path))).as_map_key();
             self.insert(key, serialize(script))$($after_insert)*;
 
             let key = MapKey::Script(Some(script)).as_map_key();
             let value = json!({
-                "t": script_type,
+                "t": keychain,
                 "p": path,
             });
             self.insert(key, serde_json::to_vec(&value)?)$($after_insert)*;
@@ -540,7 +540,7 @@
             let key = MapKey::UTXO(Some(&utxo.outpoint)).as_map_key();
             let value = json!({
                 "t": utxo.txout,
-                "i": utxo.script_type,
+                "i": utxo.keychain,
             });
             self.insert(key, serde_json::to_vec(&value)?)$($after_insert)*;
 
@@ -573,22 +573,22 @@
             Ok(())
         }
 
-        fn set_last_index(&mut self, script_type: ScriptType, value: u32) -> Result<(), Error> {
-            let key = MapKey::LastIndex(script_type).as_map_key();
+        fn set_last_index(&mut self, keychain: KeychainKind, value: u32) -> Result<(), Error> {
+            let key = MapKey::LastIndex(keychain).as_map_key();
             self.insert(key, &value.to_be_bytes())$($after_insert)*;
 
             Ok(())
         }
 
-        fn del_script_pubkey_from_path(&mut self, script_type: ScriptType, path: u32) -> Result<Option<Script>, Error> {
-            let key = MapKey::Path((Some(script_type), Some(path))).as_map_key();
+        fn del_script_pubkey_from_path(&mut self, keychain: KeychainKind, path: u32) -> Result<Option<Script>, Error> {
+            let key = MapKey::Path((Some(keychain), Some(path))).as_map_key();
             let res = self.remove(key);
             let res = $process_delete!(res);
 
             Ok(res.map_or(Ok(None), |x| Some(deserialize(&x)).transpose())?)
         }
 
-        fn del_path_from_script_pubkey(&mut self, script: &Script) -> Result<Option<(ScriptType, u32)>, Error> {
+        fn del_path_from_script_pubkey(&mut self, script: &Script) -> Result<Option<(KeychainKind, u32)>, Error> {
             let key = MapKey::Script(Some(script)).as_map_key();
             let res = self.remove(key);
             let res = $process_delete!(res);
@@ -615,9 +615,9 @@
                 Some(b) => {
                     let mut val: serde_json::Value = serde_json::from_slice(&b)?;
                     let txout = serde_json::from_value(val["t"].take())?;
-                    let script_type = serde_json::from_value(val["i"].take())?;
+                    let keychain = serde_json::from_value(val["i"].take())?;
 
-                    Ok(Some(UTXO { outpoint: outpoint.clone(), txout, script_type }))
+                    Ok(Some(UTXO { outpoint: outpoint.clone(), txout, keychain }))
                 }
             }
         }
@@ -652,8 +652,8 @@
             }
         }
 
-        fn del_last_index(&mut self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-            let key = MapKey::LastIndex(script_type).as_map_key();
+        fn del_last_index(&mut self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+            let key = MapKey::LastIndex(keychain).as_map_key();
             let res = self.remove(key);
             let res = $process_delete!(res);
 
@@ -691,10 +691,10 @@
 impl Database for Tree {
     fn check_descriptor_checksum<B: AsRef<[u8]>>(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         bytes: B,
     ) -> Result<(), Error> {
-        let key = MapKey::DescriptorChecksum(script_type).as_map_key();
+        let key = MapKey::DescriptorChecksum(keychain).as_map_key();
 
         let prev = self.get(&key)?.map(|x| x.to_vec());
         if let Some(val) = prev {
@@ -709,8 +709,8 @@
         }
     }
 
-    fn iter_script_pubkeys(&self, script_type: Option<ScriptType>) -> Result<Vec<Script>, Error> {
-        let key = MapKey::Path((script_type, None)).as_map_key();
+    fn iter_script_pubkeys(&self, keychain: Option<KeychainKind>) -> Result<Vec<Script>, Error> {
+        let key = MapKey::Path((keychain, None)).as_map_key();
         self.scan_prefix(key)
             .map(|x| -> Result<_, Error> {
                 let (_, v) = x?;
@@ -728,12 +728,12 @@
 
                 let mut val: serde_json::Value = serde_json::from_slice(&v)?;
                 let txout = serde_json::from_value(val["t"].take())?;
-                let script_type = serde_json::from_value(val["i"].take())?;
+                let keychain = serde_json::from_value(val["i"].take())?;
 
                 Ok(UTXO {
                     outpoint,
                     txout,
-                    script_type,
+                    keychain,
                 })
             })
             .collect()
@@ -767,17 +767,17 @@
 
     fn get_script_pubkey_from_path(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         path: u32,
     ) -> Result<Option<Script>, Error> {
-        let key = MapKey::Path((Some(script_type), Some(path))).as_map_key();
+        let key = MapKey::Path((Some(keychain), Some(path))).as_map_key();
         Ok(self.get(key)?.map(|b| deserialize(&b)).transpose()?)
     }
 
     fn get_path_from_script_pubkey(
         &self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error> {
+    ) -> Result<Option<(KeychainKind, u32)>, Error> {
         let key = MapKey::Script(Some(script)).as_map_key();
         self.get(key)?
             .map(|b| -> Result<_, Error> {
@@ -796,12 +796,12 @@
             .map(|b| -> Result<_, Error> {
                 let mut val: serde_json::Value = serde_json::from_slice(&b)?;
                 let txout = serde_json::from_value(val["t"].take())?;
-                let script_type = serde_json::from_value(val["i"].take())?;
+                let keychain = serde_json::from_value(val["i"].take())?;
 
                 Ok(UTXO {
                     outpoint: *outpoint,
                     txout,
-                    script_type,
+                    keychain,
                 })
             })
             .transpose()
@@ -826,8 +826,8 @@
             .transpose()
     }
 
-    fn get_last_index(&self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-        let key = MapKey::LastIndex(script_type).as_map_key();
+    fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+        let key = MapKey::LastIndex(keychain).as_map_key();
         self.get(key)?
             .map(|b| -> Result<_, Error> {
                 let array: [u8; 4] = b
@@ -841,8 +841,8 @@
     }
 
     // inserts 0 if not present
-    fn increment_last_index(&mut self, script_type: ScriptType) -> Result<u32, Error> {
-        let key = MapKey::LastIndex(script_type).as_map_key();
+    fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error> {
+        let key = MapKey::LastIndex(keychain).as_map_key();
         self.update_and_fetch(key, |prev| {
             let new = match prev {
                 Some(b) => {
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/database/memory.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/database/memory.rs.html
index 02889258e5..350db935c6 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/database/memory.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/database/memory.rs.html
@@ -617,13 +617,13 @@
 // descriptor checksum  d{i,e} -> vec<u8>
 
 pub(crate) enum MapKey<'a> {
-    Path((Option<ScriptType>, Option<u32>)),
+    Path((Option<KeychainKind>, Option<u32>)),
     Script(Option<&'a Script>),
     UTXO(Option<&'a OutPoint>),
     RawTx(Option<&'a Txid>),
     Transaction(Option<&'a Txid>),
-    LastIndex(ScriptType),
-    DescriptorChecksum(ScriptType),
+    LastIndex(KeychainKind),
+    DescriptorChecksum(KeychainKind),
 }
 
 impl MapKey<'_> {
@@ -711,15 +711,15 @@
     fn set_script_pubkey(
         &mut self,
         script: &Script,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         path: u32,
     ) -> Result<(), Error> {
-        let key = MapKey::Path((Some(script_type), Some(path))).as_map_key();
+        let key = MapKey::Path((Some(keychain), Some(path))).as_map_key();
         self.map.insert(key, Box::new(script.clone()));
 
         let key = MapKey::Script(Some(script)).as_map_key();
         let value = json!({
-            "t": script_type,
+            "t": keychain,
             "p": path,
         });
         self.map.insert(key, Box::new(value));
@@ -730,7 +730,7 @@
     fn set_utxo(&mut self, utxo: &UTXO) -> Result<(), Error> {
         let key = MapKey::UTXO(Some(&utxo.outpoint)).as_map_key();
         self.map
-            .insert(key, Box::new((utxo.txout.clone(), utxo.script_type)));
+            .insert(key, Box::new((utxo.txout.clone(), utxo.keychain)));
 
         Ok(())
     }
@@ -756,8 +756,8 @@
 
         Ok(())
     }
-    fn set_last_index(&mut self, script_type: ScriptType, value: u32) -> Result<(), Error> {
-        let key = MapKey::LastIndex(script_type).as_map_key();
+    fn set_last_index(&mut self, keychain: KeychainKind, value: u32) -> Result<(), Error> {
+        let key = MapKey::LastIndex(keychain).as_map_key();
         self.map.insert(key, Box::new(value));
 
         Ok(())
@@ -765,10 +765,10 @@
 
     fn del_script_pubkey_from_path(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         path: u32,
     ) -> Result<Option<Script>, Error> {
-        let key = MapKey::Path((Some(script_type), Some(path))).as_map_key();
+        let key = MapKey::Path((Some(keychain), Some(path))).as_map_key();
         let res = self.map.remove(&key);
         self.deleted_keys.push(key);
 
@@ -777,7 +777,7 @@
     fn del_path_from_script_pubkey(
         &mut self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error> {
+    ) -> Result<Option<(KeychainKind, u32)>, Error> {
         let key = MapKey::Script(Some(script)).as_map_key();
         let res = self.map.remove(&key);
         self.deleted_keys.push(key);
@@ -801,11 +801,11 @@
         match res {
             None => Ok(None),
             Some(b) => {
-                let (txout, script_type) = b.downcast_ref().cloned().unwrap();
+                let (txout, keychain) = b.downcast_ref().cloned().unwrap();
                 Ok(Some(UTXO {
                     outpoint: *outpoint,
                     txout,
-                    script_type,
+                    keychain,
                 }))
             }
         }
@@ -842,8 +842,8 @@
             }
         }
     }
-    fn del_last_index(&mut self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-        let key = MapKey::LastIndex(script_type).as_map_key();
+    fn del_last_index(&mut self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+        let key = MapKey::LastIndex(keychain).as_map_key();
         let res = self.map.remove(&key);
         self.deleted_keys.push(key);
 
@@ -857,10 +857,10 @@
 impl Database for MemoryDatabase {
     fn check_descriptor_checksum<B: AsRef<[u8]>>(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         bytes: B,
     ) -> Result<(), Error> {
-        let key = MapKey::DescriptorChecksum(script_type).as_map_key();
+        let key = MapKey::DescriptorChecksum(keychain).as_map_key();
 
         let prev = self
             .map
@@ -878,8 +878,8 @@
         }
     }
 
-    fn iter_script_pubkeys(&self, script_type: Option<ScriptType>) -> Result<Vec<Script>, Error> {
-        let key = MapKey::Path((script_type, None)).as_map_key();
+    fn iter_script_pubkeys(&self, keychain: Option<KeychainKind>) -> Result<Vec<Script>, Error> {
+        let key = MapKey::Path((keychain, None)).as_map_key();
         self.map
             .range::<Vec<u8>, _>((Included(&key), Excluded(&after(&key))))
             .map(|(_, v)| Ok(v.downcast_ref().cloned().unwrap()))
@@ -892,11 +892,11 @@
             .range::<Vec<u8>, _>((Included(&key), Excluded(&after(&key))))
             .map(|(k, v)| {
                 let outpoint = deserialize(&k[1..]).unwrap();
-                let (txout, script_type) = v.downcast_ref().cloned().unwrap();
+                let (txout, keychain) = v.downcast_ref().cloned().unwrap();
                 Ok(UTXO {
                     outpoint,
                     txout,
-                    script_type,
+                    keychain,
                 })
             })
             .collect()
@@ -928,10 +928,10 @@
 
     fn get_script_pubkey_from_path(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         path: u32,
     ) -> Result<Option<Script>, Error> {
-        let key = MapKey::Path((Some(script_type), Some(path))).as_map_key();
+        let key = MapKey::Path((Some(keychain), Some(path))).as_map_key();
         Ok(self
             .map
             .get(&key)
@@ -941,7 +941,7 @@
     fn get_path_from_script_pubkey(
         &self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error> {
+    ) -> Result<Option<(KeychainKind, u32)>, Error> {
         let key = MapKey::Script(Some(script)).as_map_key();
         Ok(self.map.get(&key).map(|b| {
             let mut val: serde_json::Value = b.downcast_ref().cloned().unwrap();
@@ -955,11 +955,11 @@
     fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error> {
         let key = MapKey::UTXO(Some(outpoint)).as_map_key();
         Ok(self.map.get(&key).map(|b| {
-            let (txout, script_type) = b.downcast_ref().cloned().unwrap();
+            let (txout, keychain) = b.downcast_ref().cloned().unwrap();
             UTXO {
                 outpoint: *outpoint,
                 txout,
-                script_type,
+                keychain,
             }
         }))
     }
@@ -984,14 +984,14 @@
         }))
     }
 
-    fn get_last_index(&self, script_type: ScriptType) -> Result<Option<u32>, Error> {
-        let key = MapKey::LastIndex(script_type).as_map_key();
+    fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error> {
+        let key = MapKey::LastIndex(keychain).as_map_key();
         Ok(self.map.get(&key).map(|b| *b.downcast_ref().unwrap()))
     }
 
     // inserts 0 if not present
-    fn increment_last_index(&mut self, script_type: ScriptType) -> Result<u32, Error> {
-        let key = MapKey::LastIndex(script_type).as_map_key();
+    fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error> {
+        let key = MapKey::LastIndex(keychain).as_map_key();
         let value = self
             .map
             .entry(key)
@@ -1077,7 +1077,7 @@
                     txid,
                     vout: vout as u32,
                 },
-                script_type: ScriptType::External,
+                keychain: KeychainKind::External,
             })
             .unwrap();
         }
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/database/mod.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/database/mod.rs.html
index cd493951b0..864f1cb872 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/database/mod.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/database/mod.rs.html
@@ -381,6 +381,9 @@
 378
 379
 380
+381
+382
+383
 
 // Magical Bitcoin Library
 // Written in 2020 by
@@ -441,11 +444,11 @@
 /// This trait defines the list of operations that must be implemented on the [`Database`] type and
 /// the [`BatchDatabase::Batch`] type.
 pub trait BatchOperations {
-    /// Store a script_pubkey along with its script type and child number
+    /// Store a script_pubkey along with its keychain and child number.
     fn set_script_pubkey(
         &mut self,
         script: &Script,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<(), Error>;
     /// Store a [`UTXO`]
@@ -454,21 +457,21 @@
     fn set_raw_tx(&mut self, transaction: &Transaction) -> Result<(), Error>;
     /// Store the metadata of a transaction
     fn set_tx(&mut self, transaction: &TransactionDetails) -> Result<(), Error>;
-    /// Store the last derivation index for a given script type
-    fn set_last_index(&mut self, script_type: ScriptType, value: u32) -> Result<(), Error>;
+    /// Store the last derivation index for a given keychain.
+    fn set_last_index(&mut self, keychain: KeychainKind, value: u32) -> Result<(), Error>;
 
-    /// Delete a script_pubkey given the script type and its child number
+    /// Delete a script_pubkey given the keychain and its child number.
     fn del_script_pubkey_from_path(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<Option<Script>, Error>;
-    /// Delete the data related to a specific script_pubkey, meaning the script type and the child
-    /// number
+    /// Delete the data related to a specific script_pubkey, meaning the keychain and the child
+    /// number.
     fn del_path_from_script_pubkey(
         &mut self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error>;
+    ) -> Result<Option<(KeychainKind, u32)>, Error>;
     /// Delete a [`UTXO`] given its [`OutPoint`]
     fn del_utxo(&mut self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>;
     /// Delete a raw transaction given its [`Txid`]
@@ -479,27 +482,27 @@
         txid: &Txid,
         include_raw: bool,
     ) -> Result<Option<TransactionDetails>, Error>;
-    /// Delete the last derivation index for a script type
-    fn del_last_index(&mut self, script_type: ScriptType) -> Result<Option<u32>, Error>;
+    /// Delete the last derivation index for a keychain.
+    fn del_last_index(&mut self, keychain: KeychainKind) -> Result<Option<u32>, Error>;
 }
 
 /// Trait for reading data from a database
 ///
 /// This traits defines the operations that can be used to read data out of a database
 pub trait Database: BatchOperations {
-    /// Read and checks the descriptor checksum for a given script type
+    /// Read and checks the descriptor checksum for a given keychain.
     ///
     /// Should return [`Error::ChecksumMismatch`](crate::error::Error::ChecksumMismatch) if the
     /// checksum doesn't match. If there's no checksum in the database, simply store it for the
     /// next time.
     fn check_descriptor_checksum<B: AsRef<[u8]>>(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         bytes: B,
     ) -> Result<(), Error>;
 
     /// Return the list of script_pubkeys
-    fn iter_script_pubkeys(&self, script_type: Option<ScriptType>) -> Result<Vec<Script>, Error>;
+    fn iter_script_pubkeys(&self, keychain: Option<KeychainKind>) -> Result<Vec<Script>, Error>;
     /// Return the list of [`UTXO`]s
     fn iter_utxos(&self) -> Result<Vec<UTXO>, Error>;
     /// Return the list of raw transactions
@@ -507,30 +510,30 @@
     /// Return the list of transactions metadata
     fn iter_txs(&self, include_raw: bool) -> Result<Vec<TransactionDetails>, Error>;
 
-    /// Fetch a script_pubkey given the script type and child number
+    /// Fetch a script_pubkey given the child number of a keychain.
     fn get_script_pubkey_from_path(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         child: u32,
     ) -> Result<Option<Script>, Error>;
-    /// Fetch the script type and child number of a given script_pubkey
+    /// Fetch the keychain and child number of a given script_pubkey
     fn get_path_from_script_pubkey(
         &self,
         script: &Script,
-    ) -> Result<Option<(ScriptType, u32)>, Error>;
+    ) -> Result<Option<(KeychainKind, u32)>, Error>;
     /// Fetch a [`UTXO`] given its [`OutPoint`]
     fn get_utxo(&self, outpoint: &OutPoint) -> Result<Option<UTXO>, Error>;
     /// Fetch a raw transaction given its [`Txid`]
     fn get_raw_tx(&self, txid: &Txid) -> Result<Option<Transaction>, Error>;
     /// Fetch the transaction metadata and optionally also the raw transaction
     fn get_tx(&self, txid: &Txid, include_raw: bool) -> Result<Option<TransactionDetails>, Error>;
-    /// Return the last defivation index for a script type
-    fn get_last_index(&self, script_type: ScriptType) -> Result<Option<u32>, Error>;
+    /// Return the last defivation index for a keychain.
+    fn get_last_index(&self, keychain: KeychainKind) -> Result<Option<u32>, Error>;
 
-    /// Increment the last derivation index for a script type and returns it
+    /// Increment the last derivation index for a keychain and return it
     ///
     /// It should insert and return `0` if not present in the database
-    fn increment_last_index(&mut self, script_type: ScriptType) -> Result<u32, Error>;
+    fn increment_last_index(&mut self, keychain: KeychainKind) -> Result<u32, Error>;
 }
 
 /// Trait for a database that supports batch operations
@@ -601,17 +604,17 @@
             Vec::<u8>::from_hex("76a91402306a7c23f3e8010de41e9e591348bb83f11daa88ac").unwrap(),
         );
         let path = 42;
-        let script_type = ScriptType::External;
+        let keychain = KeychainKind::External;
 
-        tree.set_script_pubkey(&script, script_type, path).unwrap();
+        tree.set_script_pubkey(&script, keychain, path).unwrap();
 
         assert_eq!(
-            tree.get_script_pubkey_from_path(script_type, path).unwrap(),
+            tree.get_script_pubkey_from_path(keychain, path).unwrap(),
             Some(script.clone())
         );
         assert_eq!(
             tree.get_path_from_script_pubkey(&script).unwrap(),
-            Some((script_type, path.clone()))
+            Some((keychain, path.clone()))
         );
     }
 
@@ -622,12 +625,12 @@
             Vec::<u8>::from_hex("76a91402306a7c23f3e8010de41e9e591348bb83f11daa88ac").unwrap(),
         );
         let path = 42;
-        let script_type = ScriptType::External;
+        let keychain = KeychainKind::External;
 
-        batch.set_script_pubkey(&script, script_type, path).unwrap();
+        batch.set_script_pubkey(&script, keychain, path).unwrap();
 
         assert_eq!(
-            tree.get_script_pubkey_from_path(script_type, path).unwrap(),
+            tree.get_script_pubkey_from_path(keychain, path).unwrap(),
             None
         );
         assert_eq!(tree.get_path_from_script_pubkey(&script).unwrap(), None);
@@ -635,12 +638,12 @@
         tree.commit_batch(batch).unwrap();
 
         assert_eq!(
-            tree.get_script_pubkey_from_path(script_type, path).unwrap(),
+            tree.get_script_pubkey_from_path(keychain, path).unwrap(),
             Some(script.clone())
         );
         assert_eq!(
             tree.get_path_from_script_pubkey(&script).unwrap(),
-            Some((script_type, path.clone()))
+            Some((keychain, path.clone()))
         );
     }
 
@@ -649,9 +652,9 @@
             Vec::<u8>::from_hex("76a91402306a7c23f3e8010de41e9e591348bb83f11daa88ac").unwrap(),
         );
         let path = 42;
-        let script_type = ScriptType::External;
+        let keychain = KeychainKind::External;
 
-        tree.set_script_pubkey(&script, script_type, path).unwrap();
+        tree.set_script_pubkey(&script, keychain, path).unwrap();
 
         assert_eq!(tree.iter_script_pubkeys(None).unwrap().len(), 1);
     }
@@ -661,12 +664,12 @@
             Vec::<u8>::from_hex("76a91402306a7c23f3e8010de41e9e591348bb83f11daa88ac").unwrap(),
         );
         let path = 42;
-        let script_type = ScriptType::External;
+        let keychain = KeychainKind::External;
 
-        tree.set_script_pubkey(&script, script_type, path).unwrap();
+        tree.set_script_pubkey(&script, keychain, path).unwrap();
         assert_eq!(tree.iter_script_pubkeys(None).unwrap().len(), 1);
 
-        tree.del_script_pubkey_from_path(script_type, path).unwrap();
+        tree.del_script_pubkey_from_path(keychain, path).unwrap();
         assert_eq!(tree.iter_script_pubkeys(None).unwrap().len(), 0);
     }
 
@@ -685,7 +688,7 @@
         let utxo = UTXO {
             txout,
             outpoint,
-            script_type: ScriptType::External,
+            keychain: KeychainKind::External,
         };
 
         tree.set_utxo(&utxo).unwrap();
@@ -740,24 +743,27 @@
     }
 
     pub fn test_last_index<D: Database>(mut tree: D) {
-        tree.set_last_index(ScriptType::External, 1337).unwrap();
+        tree.set_last_index(KeychainKind::External, 1337).unwrap();
 
         assert_eq!(
-            tree.get_last_index(ScriptType::External).unwrap(),
+            tree.get_last_index(KeychainKind::External).unwrap(),
             Some(1337)
         );
-        assert_eq!(tree.get_last_index(ScriptType::Internal).unwrap(), None);
+        assert_eq!(tree.get_last_index(KeychainKind::Internal).unwrap(), None);
 
-        let res = tree.increment_last_index(ScriptType::External).unwrap();
+        let res = tree.increment_last_index(KeychainKind::External).unwrap();
         assert_eq!(res, 1338);
-        let res = tree.increment_last_index(ScriptType::Internal).unwrap();
+        let res = tree.increment_last_index(KeychainKind::Internal).unwrap();
         assert_eq!(res, 0);
 
         assert_eq!(
-            tree.get_last_index(ScriptType::External).unwrap(),
+            tree.get_last_index(KeychainKind::External).unwrap(),
             Some(1338)
         );
-        assert_eq!(tree.get_last_index(ScriptType::Internal).unwrap(), Some(0));
+        assert_eq!(
+            tree.get_last_index(KeychainKind::Internal).unwrap(),
+            Some(0)
+        );
     }
 
     // TODO: more tests...
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/descriptor/template.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/descriptor/template.rs.html
index bdbf4680f0..de31bea07d 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/descriptor/template.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/descriptor/template.rs.html
@@ -738,7 +738,7 @@
 
 use super::{ExtendedDescriptor, KeyMap, ToWalletDescriptor};
 use crate::keys::{DerivableKey, KeyError, ToDescriptorKey, ValidNetworks};
-use crate::{descriptor, ScriptType};
+use crate::{descriptor, KeychainKind};
 
 /// Type alias for the return type of [`DescriptorTemplate`], [`descriptor!`](crate::descriptor!) and others
 pub type DescriptorTemplateOut = (ExtendedDescriptor, KeyMap, ValidNetworks);
@@ -863,23 +863,23 @@
 /// ```
 /// # use std::str::FromStr;
 /// # use bdk::bitcoin::{PrivateKey, Network};
-/// # use bdk::{Wallet, OfflineWallet, ScriptType};
+/// # use bdk::{Wallet, OfflineWallet, KeychainKind};
 /// # use bdk::database::MemoryDatabase;
 /// use bdk::template::BIP44;
 ///
 /// let key = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPeZRHk4rTG6orPS2CRNFX3njhUXx5vj9qGog5ZMH4uGReDWN5kCkY3jmWEtWause41CDvBRXD1shKknAMKxT99o9qUTRVC6m")?;
 /// let wallet: OfflineWallet<_> = Wallet::new_offline(
-///     BIP44(key.clone(), ScriptType::External),
-///     Some(BIP44(key, ScriptType::Internal)),
+///     BIP44(key.clone(), KeychainKind::External),
+///     Some(BIP44(key, KeychainKind::Internal)),
 ///     Network::Testnet,
 ///     MemoryDatabase::default()
 /// )?;
 ///
 /// assert_eq!(wallet.get_new_address()?.to_string(), "miNG7dJTzJqNbFS19svRdTCisC65dsubtR");
-/// assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "pkh([c55b303f/44'/0'/0']tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU/0/*)");
+/// assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "pkh([c55b303f/44'/0'/0']tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU/0/*)");
 /// # Ok::<_, Box<dyn std::error::Error>>(())
 /// ```
-pub struct BIP44<K: DerivableKey<Legacy>>(pub K, pub ScriptType);
+pub struct BIP44<K: DerivableKey<Legacy>>(pub K, pub KeychainKind);
 
 impl<K: DerivableKey<Legacy>> DescriptorTemplate for BIP44<K> {
     fn build(self) -> Result<DescriptorTemplateOut, KeyError> {
@@ -901,24 +901,24 @@
 /// ```
 /// # use std::str::FromStr;
 /// # use bdk::bitcoin::{PrivateKey, Network};
-/// # use bdk::{Wallet, OfflineWallet, ScriptType};
+/// # use bdk::{Wallet, OfflineWallet, KeychainKind};
 /// # use bdk::database::MemoryDatabase;
 /// use bdk::template::BIP44Public;
 ///
 /// let key = bitcoin::util::bip32::ExtendedPubKey::from_str("tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU")?;
 /// let fingerprint = bitcoin::util::bip32::Fingerprint::from_str("c55b303f")?;
 /// let wallet: OfflineWallet<_> = Wallet::new_offline(
-///     BIP44Public(key.clone(), fingerprint, ScriptType::External),
-///     Some(BIP44Public(key, fingerprint, ScriptType::Internal)),
+///     BIP44Public(key.clone(), fingerprint, KeychainKind::External),
+///     Some(BIP44Public(key, fingerprint, KeychainKind::Internal)),
 ///     Network::Testnet,
 ///     MemoryDatabase::default()
 /// )?;
 ///
 /// assert_eq!(wallet.get_new_address()?.to_string(), "miNG7dJTzJqNbFS19svRdTCisC65dsubtR");
-/// assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "pkh([c55b303f/44'/0'/0']tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU/0/*)");
+/// assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "pkh([c55b303f/44'/0'/0']tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU/0/*)");
 /// # Ok::<_, Box<dyn std::error::Error>>(())
 /// ```
-pub struct BIP44Public<K: DerivableKey<Legacy>>(pub K, pub bip32::Fingerprint, pub ScriptType);
+pub struct BIP44Public<K: DerivableKey<Legacy>>(pub K, pub bip32::Fingerprint, pub KeychainKind);
 
 impl<K: DerivableKey<Legacy>> DescriptorTemplate for BIP44Public<K> {
     fn build(self) -> Result<DescriptorTemplateOut, KeyError> {
@@ -937,23 +937,23 @@
 /// ```
 /// # use std::str::FromStr;
 /// # use bdk::bitcoin::{PrivateKey, Network};
-/// # use bdk::{Wallet, OfflineWallet, ScriptType};
+/// # use bdk::{Wallet, OfflineWallet, KeychainKind};
 /// # use bdk::database::MemoryDatabase;
 /// use bdk::template::BIP49;
 ///
 /// let key = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPeZRHk4rTG6orPS2CRNFX3njhUXx5vj9qGog5ZMH4uGReDWN5kCkY3jmWEtWause41CDvBRXD1shKknAMKxT99o9qUTRVC6m")?;
 /// let wallet: OfflineWallet<_> = Wallet::new_offline(
-///     BIP49(key.clone(), ScriptType::External),
-///     Some(BIP49(key, ScriptType::Internal)),
+///     BIP49(key.clone(), KeychainKind::External),
+///     Some(BIP49(key, KeychainKind::Internal)),
 ///     Network::Testnet,
 ///     MemoryDatabase::default()
 /// )?;
 ///
 /// assert_eq!(wallet.get_new_address()?.to_string(), "2N3K4xbVAHoiTQSwxkZjWDfKoNC27pLkYnt");
-/// assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "sh(wpkh([c55b303f/49\'/0\'/0\']tpubDC49r947KGK52X5rBWS4BLs5m9SRY3pYHnvRrm7HcybZ3BfdEsGFyzCMzayi1u58eT82ZeyFZwH7DD6Q83E3fM9CpfMtmnTygnLfP59jL9L/0/*))");
+/// assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "sh(wpkh([c55b303f/49\'/0\'/0\']tpubDC49r947KGK52X5rBWS4BLs5m9SRY3pYHnvRrm7HcybZ3BfdEsGFyzCMzayi1u58eT82ZeyFZwH7DD6Q83E3fM9CpfMtmnTygnLfP59jL9L/0/*))");
 /// # Ok::<_, Box<dyn std::error::Error>>(())
 /// ```
-pub struct BIP49<K: DerivableKey<Segwitv0>>(pub K, pub ScriptType);
+pub struct BIP49<K: DerivableKey<Segwitv0>>(pub K, pub KeychainKind);
 
 impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP49<K> {
     fn build(self) -> Result<DescriptorTemplateOut, KeyError> {
@@ -975,24 +975,24 @@
 /// ```
 /// # use std::str::FromStr;
 /// # use bdk::bitcoin::{PrivateKey, Network};
-/// # use bdk::{Wallet, OfflineWallet, ScriptType};
+/// # use bdk::{Wallet, OfflineWallet, KeychainKind};
 /// # use bdk::database::MemoryDatabase;
 /// use bdk::template::BIP49Public;
 ///
 /// let key = bitcoin::util::bip32::ExtendedPubKey::from_str("tpubDC49r947KGK52X5rBWS4BLs5m9SRY3pYHnvRrm7HcybZ3BfdEsGFyzCMzayi1u58eT82ZeyFZwH7DD6Q83E3fM9CpfMtmnTygnLfP59jL9L")?;
 /// let fingerprint = bitcoin::util::bip32::Fingerprint::from_str("c55b303f")?;
 /// let wallet: OfflineWallet<_> = Wallet::new_offline(
-///     BIP49Public(key.clone(), fingerprint, ScriptType::External),
-///     Some(BIP49Public(key, fingerprint, ScriptType::Internal)),
+///     BIP49Public(key.clone(), fingerprint, KeychainKind::External),
+///     Some(BIP49Public(key, fingerprint, KeychainKind::Internal)),
 ///     Network::Testnet,
 ///     MemoryDatabase::default()
 /// )?;
 ///
 /// assert_eq!(wallet.get_new_address()?.to_string(), "2N3K4xbVAHoiTQSwxkZjWDfKoNC27pLkYnt");
-/// assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "sh(wpkh([c55b303f/49\'/0\'/0\']tpubDC49r947KGK52X5rBWS4BLs5m9SRY3pYHnvRrm7HcybZ3BfdEsGFyzCMzayi1u58eT82ZeyFZwH7DD6Q83E3fM9CpfMtmnTygnLfP59jL9L/0/*))");
+/// assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "sh(wpkh([c55b303f/49\'/0\'/0\']tpubDC49r947KGK52X5rBWS4BLs5m9SRY3pYHnvRrm7HcybZ3BfdEsGFyzCMzayi1u58eT82ZeyFZwH7DD6Q83E3fM9CpfMtmnTygnLfP59jL9L/0/*))");
 /// # Ok::<_, Box<dyn std::error::Error>>(())
 /// ```
-pub struct BIP49Public<K: DerivableKey<Segwitv0>>(pub K, pub bip32::Fingerprint, pub ScriptType);
+pub struct BIP49Public<K: DerivableKey<Segwitv0>>(pub K, pub bip32::Fingerprint, pub KeychainKind);
 
 impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP49Public<K> {
     fn build(self) -> Result<DescriptorTemplateOut, KeyError> {
@@ -1011,23 +1011,23 @@
 /// ```
 /// # use std::str::FromStr;
 /// # use bdk::bitcoin::{PrivateKey, Network};
-/// # use bdk::{Wallet, OfflineWallet, ScriptType};
+/// # use bdk::{Wallet, OfflineWallet, KeychainKind};
 /// # use bdk::database::MemoryDatabase;
 /// use bdk::template::BIP84;
 ///
 /// let key = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPeZRHk4rTG6orPS2CRNFX3njhUXx5vj9qGog5ZMH4uGReDWN5kCkY3jmWEtWause41CDvBRXD1shKknAMKxT99o9qUTRVC6m")?;
 /// let wallet: OfflineWallet<_> = Wallet::new_offline(
-///     BIP84(key.clone(), ScriptType::External),
-///     Some(BIP84(key, ScriptType::Internal)),
+///     BIP84(key.clone(), KeychainKind::External),
+///     Some(BIP84(key, KeychainKind::Internal)),
 ///     Network::Testnet,
 ///     MemoryDatabase::default()
 /// )?;
 ///
 /// assert_eq!(wallet.get_new_address()?.to_string(), "tb1qedg9fdlf8cnnqfd5mks6uz5w4kgpk2pr6y4qc7");
-/// assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "wpkh([c55b303f/84\'/0\'/0\']tpubDC2Qwo2TFsaNC4ju8nrUJ9mqVT3eSgdmy1yPqhgkjwmke3PRXutNGRYAUo6RCHTcVQaDR3ohNU9we59brGHuEKPvH1ags2nevW5opEE9Z5Q/0/*)");
+/// assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "wpkh([c55b303f/84\'/0\'/0\']tpubDC2Qwo2TFsaNC4ju8nrUJ9mqVT3eSgdmy1yPqhgkjwmke3PRXutNGRYAUo6RCHTcVQaDR3ohNU9we59brGHuEKPvH1ags2nevW5opEE9Z5Q/0/*)");
 /// # Ok::<_, Box<dyn std::error::Error>>(())
 /// ```
-pub struct BIP84<K: DerivableKey<Segwitv0>>(pub K, pub ScriptType);
+pub struct BIP84<K: DerivableKey<Segwitv0>>(pub K, pub KeychainKind);
 
 impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP84<K> {
     fn build(self) -> Result<DescriptorTemplateOut, KeyError> {
@@ -1049,24 +1049,24 @@
 /// ```
 /// # use std::str::FromStr;
 /// # use bdk::bitcoin::{PrivateKey, Network};
-/// # use bdk::{Wallet, OfflineWallet, ScriptType};
+/// # use bdk::{Wallet, OfflineWallet, KeychainKind};
 /// # use bdk::database::MemoryDatabase;
 /// use bdk::template::BIP84Public;
 ///
 /// let key = bitcoin::util::bip32::ExtendedPubKey::from_str("tpubDC2Qwo2TFsaNC4ju8nrUJ9mqVT3eSgdmy1yPqhgkjwmke3PRXutNGRYAUo6RCHTcVQaDR3ohNU9we59brGHuEKPvH1ags2nevW5opEE9Z5Q")?;
 /// let fingerprint = bitcoin::util::bip32::Fingerprint::from_str("c55b303f")?;
 /// let wallet: OfflineWallet<_> = Wallet::new_offline(
-///     BIP84Public(key.clone(), fingerprint, ScriptType::External),
-///     Some(BIP84Public(key, fingerprint, ScriptType::Internal)),
+///     BIP84Public(key.clone(), fingerprint, KeychainKind::External),
+///     Some(BIP84Public(key, fingerprint, KeychainKind::Internal)),
 ///     Network::Testnet,
 ///     MemoryDatabase::default()
 /// )?;
 ///
 /// assert_eq!(wallet.get_new_address()?.to_string(), "tb1qedg9fdlf8cnnqfd5mks6uz5w4kgpk2pr6y4qc7");
-/// assert_eq!(wallet.public_descriptor(ScriptType::External)?.unwrap().to_string(), "wpkh([c55b303f/84\'/0\'/0\']tpubDC2Qwo2TFsaNC4ju8nrUJ9mqVT3eSgdmy1yPqhgkjwmke3PRXutNGRYAUo6RCHTcVQaDR3ohNU9we59brGHuEKPvH1ags2nevW5opEE9Z5Q/0/*)");
+/// assert_eq!(wallet.public_descriptor(KeychainKind::External)?.unwrap().to_string(), "wpkh([c55b303f/84\'/0\'/0\']tpubDC2Qwo2TFsaNC4ju8nrUJ9mqVT3eSgdmy1yPqhgkjwmke3PRXutNGRYAUo6RCHTcVQaDR3ohNU9we59brGHuEKPvH1ags2nevW5opEE9Z5Q/0/*)");
 /// # Ok::<_, Box<dyn std::error::Error>>(())
 /// ```
-pub struct BIP84Public<K: DerivableKey<Segwitv0>>(pub K, pub bip32::Fingerprint, pub ScriptType);
+pub struct BIP84Public<K: DerivableKey<Segwitv0>>(pub K, pub bip32::Fingerprint, pub KeychainKind);
 
 impl<K: DerivableKey<Segwitv0>> DescriptorTemplate for BIP84Public<K> {
     fn build(self) -> Result<DescriptorTemplateOut, KeyError> {
@@ -1082,18 +1082,18 @@
             pub(super) fn make_bipxx_private<K: DerivableKey<$ctx>>(
                 bip: u32,
                 key: K,
-                script_type: ScriptType,
+                keychain: KeychainKind,
             ) -> Result<impl ToDescriptorKey<$ctx>, KeyError> {
                 let mut derivation_path = Vec::with_capacity(4);
                 derivation_path.push(bip32::ChildNumber::from_hardened_idx(bip)?);
                 derivation_path.push(bip32::ChildNumber::from_hardened_idx(0)?);
                 derivation_path.push(bip32::ChildNumber::from_hardened_idx(0)?);
 
-                match script_type {
-                    ScriptType::External => {
+                match keychain {
+                    KeychainKind::External => {
                         derivation_path.push(bip32::ChildNumber::from_normal_idx(0)?)
                     }
-                    ScriptType::Internal => {
+                    KeychainKind::Internal => {
                         derivation_path.push(bip32::ChildNumber::from_normal_idx(1)?)
                     }
                 };
@@ -1106,11 +1106,11 @@
                 bip: u32,
                 key: K,
                 parent_fingerprint: bip32::Fingerprint,
-                script_type: ScriptType,
+                keychain: KeychainKind,
             ) -> Result<impl ToDescriptorKey<$ctx>, KeyError> {
-                let derivation_path: bip32::DerivationPath = match script_type {
-                    ScriptType::External => vec![bip32::ChildNumber::from_normal_idx(0)?].into(),
-                    ScriptType::Internal => vec![bip32::ChildNumber::from_normal_idx(1)?].into(),
+                let derivation_path: bip32::DerivationPath = match keychain {
+                    KeychainKind::External => vec![bip32::ChildNumber::from_normal_idx(0)?].into(),
+                    KeychainKind::Internal => vec![bip32::ChildNumber::from_normal_idx(1)?].into(),
                 };
 
                 let mut source_path = Vec::with_capacity(3);
@@ -1248,7 +1248,7 @@
     fn test_bip44_template() {
         let prvkey = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPcx5nBGsR63Pe8KnRUqmbJNENAfGftF3yuXoMMoVJJcYeUw5eVkm9WBPjWYt6HMWYJNesB5HaNVBaFc1M6dRjWSYnmewUMYy").unwrap();
         check(
-            BIP44(prvkey, ScriptType::External).build(),
+            BIP44(prvkey, KeychainKind::External).build(),
             false,
             false,
             &[
@@ -1258,7 +1258,7 @@
             ],
         );
         check(
-            BIP44(prvkey, ScriptType::Internal).build(),
+            BIP44(prvkey, KeychainKind::Internal).build(),
             false,
             false,
             &[
@@ -1275,7 +1275,7 @@
         let pubkey = bitcoin::util::bip32::ExtendedPubKey::from_str("tpubDDDzQ31JkZB7VxUr9bjvBivDdqoFLrDPyLWtLapArAi51ftfmCb2DPxwLQzX65iNcXz1DGaVvyvo6JQ6rTU73r2gqdEo8uov9QKRb7nKCSU").unwrap();
         let fingerprint = bitcoin::util::bip32::Fingerprint::from_str("c55b303f").unwrap();
         check(
-            BIP44Public(pubkey, fingerprint, ScriptType::External).build(),
+            BIP44Public(pubkey, fingerprint, KeychainKind::External).build(),
             false,
             false,
             &[
@@ -1285,7 +1285,7 @@
             ],
         );
         check(
-            BIP44Public(pubkey, fingerprint, ScriptType::Internal).build(),
+            BIP44Public(pubkey, fingerprint, KeychainKind::Internal).build(),
             false,
             false,
             &[
@@ -1301,7 +1301,7 @@
     fn test_bip49_template() {
         let prvkey = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPcx5nBGsR63Pe8KnRUqmbJNENAfGftF3yuXoMMoVJJcYeUw5eVkm9WBPjWYt6HMWYJNesB5HaNVBaFc1M6dRjWSYnmewUMYy").unwrap();
         check(
-            BIP49(prvkey, ScriptType::External).build(),
+            BIP49(prvkey, KeychainKind::External).build(),
             true,
             false,
             &[
@@ -1311,7 +1311,7 @@
             ],
         );
         check(
-            BIP49(prvkey, ScriptType::Internal).build(),
+            BIP49(prvkey, KeychainKind::Internal).build(),
             true,
             false,
             &[
@@ -1328,7 +1328,7 @@
         let pubkey = bitcoin::util::bip32::ExtendedPubKey::from_str("tpubDC49r947KGK52X5rBWS4BLs5m9SRY3pYHnvRrm7HcybZ3BfdEsGFyzCMzayi1u58eT82ZeyFZwH7DD6Q83E3fM9CpfMtmnTygnLfP59jL9L").unwrap();
         let fingerprint = bitcoin::util::bip32::Fingerprint::from_str("c55b303f").unwrap();
         check(
-            BIP49Public(pubkey, fingerprint, ScriptType::External).build(),
+            BIP49Public(pubkey, fingerprint, KeychainKind::External).build(),
             true,
             false,
             &[
@@ -1338,7 +1338,7 @@
             ],
         );
         check(
-            BIP49Public(pubkey, fingerprint, ScriptType::Internal).build(),
+            BIP49Public(pubkey, fingerprint, KeychainKind::Internal).build(),
             true,
             false,
             &[
@@ -1354,7 +1354,7 @@
     fn test_bip84_template() {
         let prvkey = bitcoin::util::bip32::ExtendedPrivKey::from_str("tprv8ZgxMBicQKsPcx5nBGsR63Pe8KnRUqmbJNENAfGftF3yuXoMMoVJJcYeUw5eVkm9WBPjWYt6HMWYJNesB5HaNVBaFc1M6dRjWSYnmewUMYy").unwrap();
         check(
-            BIP84(prvkey, ScriptType::External).build(),
+            BIP84(prvkey, KeychainKind::External).build(),
             true,
             false,
             &[
@@ -1364,7 +1364,7 @@
             ],
         );
         check(
-            BIP84(prvkey, ScriptType::Internal).build(),
+            BIP84(prvkey, KeychainKind::Internal).build(),
             true,
             false,
             &[
@@ -1381,7 +1381,7 @@
         let pubkey = bitcoin::util::bip32::ExtendedPubKey::from_str("tpubDC2Qwo2TFsaNC4ju8nrUJ9mqVT3eSgdmy1yPqhgkjwmke3PRXutNGRYAUo6RCHTcVQaDR3ohNU9we59brGHuEKPvH1ags2nevW5opEE9Z5Q").unwrap();
         let fingerprint = bitcoin::util::bip32::Fingerprint::from_str("c55b303f").unwrap();
         check(
-            BIP84Public(pubkey, fingerprint, ScriptType::External).build(),
+            BIP84Public(pubkey, fingerprint, KeychainKind::External).build(),
             true,
             false,
             &[
@@ -1391,7 +1391,7 @@
             ],
         );
         check(
-            BIP84Public(pubkey, fingerprint, ScriptType::Internal).build(),
+            BIP84Public(pubkey, fingerprint, KeychainKind::Internal).build(),
             true,
             false,
             &[
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html
index 47bc9f623d..2cdf5faf5c 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/error.rs.html
@@ -290,8 +290,8 @@
     Key(crate::keys::KeyError),
     /// Descriptor checksum mismatch
     ChecksumMismatch,
-    /// Spending policy is not compatible with this [`ScriptType`](crate::types::ScriptType)
-    SpendingPolicyRequired(crate::types::ScriptType),
+    /// Spending policy is not compatible with this [`KeychainKind`](crate::types::KeychainKind)
+    SpendingPolicyRequired(crate::types::KeychainKind),
     #[allow(missing_docs)]
     InvalidPolicyPathError(crate::descriptor::policy::PolicyError),
     #[allow(missing_docs)]
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/types.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/types.rs.html
index 6925ed3b3f..1270d27777 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/types.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/types.rs.html
@@ -145,27 +145,27 @@
 
 /// Types of script
 #[derive(Serialize, Deserialize, Debug, Clone, Copy, PartialEq, Eq, Hash)]
-pub enum ScriptType {
+pub enum KeychainKind {
     /// External
     External = 0,
     /// Internal, usually used for change outputs
     Internal = 1,
 }
 
-impl ScriptType {
+impl KeychainKind {
     pub fn as_byte(&self) -> u8 {
         match self {
-            ScriptType::External => b'e',
-            ScriptType::Internal => b'i',
+            KeychainKind::External => b'e',
+            KeychainKind::Internal => b'i',
         }
     }
 }
 
-impl AsRef<[u8]> for ScriptType {
+impl AsRef<[u8]> for KeychainKind {
     fn as_ref(&self) -> &[u8] {
         match self {
-            ScriptType::External => b"e",
-            ScriptType::Internal => b"i",
+            KeychainKind::External => b"e",
+            KeychainKind::Internal => b"i",
         }
     }
 }
@@ -208,7 +208,7 @@
 pub struct UTXO {
     pub outpoint: OutPoint,
     pub txout: TxOut,
-    pub script_type: ScriptType,
+    pub keychain: KeychainKind,
 }
 
 /// A wallet transaction
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/address_validator.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/address_validator.rs.html
index c38f774010..c5ec6341a5 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/address_validator.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/address_validator.rs.html
@@ -216,7 +216,7 @@
 //! impl AddressValidator for PrintAddressAndContinue {
 //!     fn validate(
 //!         &self,
-//!         script_type: ScriptType,
+//!         keychain: KeychainKind,
 //!         hd_keypaths: &HDKeyPaths,
 //!         script: &Script
 //!     ) -> Result<(), AddressValidatorError> {
@@ -224,7 +224,7 @@
 //!             .as_ref()
 //!             .map(Address::to_string)
 //!             .unwrap_or(script.to_string());
-//!         println!("New address of type {:?}: {}", script_type, address);
+//!         println!("New address of type {:?}: {}", keychain, address);
 //!         println!("HD keypaths: {:#?}", hd_keypaths);
 //!
 //!         Ok(())
@@ -245,7 +245,7 @@
 use bitcoin::Script;
 
 use crate::descriptor::HDKeyPaths;
-use crate::types::ScriptType;
+use crate::types::KeychainKind;
 
 /// Errors that can be returned to fail the validation of an address
 #[derive(Debug, Clone, PartialEq, Eq)]
@@ -276,7 +276,7 @@
     /// Validate or inspect an address
     fn validate(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         hd_keypaths: &HDKeyPaths,
         script: &Script,
     ) -> Result<(), AddressValidatorError>;
@@ -294,7 +294,7 @@
     impl AddressValidator for TestValidator {
         fn validate(
             &self,
-            _script_type: ScriptType,
+            _keychain: KeychainKind,
             _hd_keypaths: &HDKeyPaths,
             _script: &bitcoin::Script,
         ) -> Result<(), AddressValidatorError> {
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/coin_selection.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/coin_selection.rs.html
index 784470ad34..c39be45893 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/coin_selection.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/coin_selection.rs.html
@@ -1538,7 +1538,7 @@
                         value: 100_000,
                         script_pubkey: Script::new(),
                     },
-                    script_type: ScriptType::External,
+                    keychain: KeychainKind::External,
                 },
                 P2WPKH_WITNESS_SIZE,
             ),
@@ -1552,7 +1552,7 @@
                         value: 200_000,
                         script_pubkey: Script::new(),
                     },
-                    script_type: ScriptType::Internal,
+                    keychain: KeychainKind::Internal,
                 },
                 P2WPKH_WITNESS_SIZE,
             ),
@@ -1572,7 +1572,7 @@
                         value: rng.gen_range(0, 200000000),
                         script_pubkey: Script::new(),
                     },
-                    script_type: ScriptType::External,
+                    keychain: KeychainKind::External,
                 },
                 P2WPKH_WITNESS_SIZE,
             ));
@@ -1591,7 +1591,7 @@
                     value: utxos_value,
                     script_pubkey: Script::new(),
                 },
-                script_type: ScriptType::External,
+                keychain: KeychainKind::External,
             },
             P2WPKH_WITNESS_SIZE,
         );
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/mod.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/mod.rs.html
index d3421965f9..e5146e0fea 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/mod.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/mod.rs.html
@@ -3416,10 +3416,6 @@
 3413
 3414
 3415
-3416
-3417
-3418
-3419
 
 // Magical Bitcoin Library
 // Written in 2020 by
@@ -3547,7 +3543,7 @@
     ) -> Result<Self, Error> {
         let (descriptor, keymap) = descriptor.to_wallet_descriptor(network)?;
         database.check_descriptor_checksum(
-            ScriptType::External,
+            KeychainKind::External,
             get_checksum(&descriptor.to_string())?.as_bytes(),
         )?;
         let signers = Arc::new(SignersContainer::from(keymap));
@@ -3555,7 +3551,7 @@
             Some(desc) => {
                 let (change_descriptor, change_keymap) = desc.to_wallet_descriptor(network)?;
                 database.check_descriptor_checksum(
-                    ScriptType::Internal,
+                    KeychainKind::Internal,
                     get_checksum(&change_descriptor.to_string())?.as_bytes(),
                 )?;
 
@@ -3589,7 +3585,7 @@
 
     /// Return a newly generated address using the external descriptor
     pub fn get_new_address(&self) -> Result<Address, Error> {
-        let index = self.fetch_and_increment_index(ScriptType::External)?;
+        let index = self.fetch_and_increment_index(KeychainKind::External)?;
         let deriv_ctx = descriptor_to_pk_ctx(&self.secp);
 
         self.descriptor
@@ -3638,14 +3634,14 @@
     /// See [the `signer` module](signer) for an example.
     pub fn add_signer(
         &mut self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         id: SignerId,
         ordering: SignerOrdering,
         signer: Arc<dyn Signer>,
     ) {
-        let signers = match script_type {
-            ScriptType::External => Arc::make_mut(&mut self.signers),
-            ScriptType::Internal => Arc::make_mut(&mut self.change_signers),
+        let signers = match keychain {
+            KeychainKind::External => Arc::make_mut(&mut self.signers),
+            KeychainKind::Internal => Arc::make_mut(&mut self.change_signers),
         };
 
         signers.add_external(id, ordering, signer);
@@ -3701,7 +3697,7 @@
             && external_policy.requires_path()
             && builder.external_policy_path.is_none()
         {
-            return Err(Error::SpendingPolicyRequired(ScriptType::External));
+            return Err(Error::SpendingPolicyRequired(KeychainKind::External));
         };
         // Same for the internal_policy path, if present
         if let Some(internal_policy) = &internal_policy {
@@ -3709,7 +3705,7 @@
                 && internal_policy.requires_path()
                 && builder.internal_policy_path.is_none()
             {
-                return Err(Error::SpendingPolicyRequired(ScriptType::Internal));
+                return Err(Error::SpendingPolicyRequired(KeychainKind::Internal));
             };
         }
 
@@ -4023,18 +4019,17 @@
             None => {
                 let mut change_output = None;
                 for (index, txout) in tx.output.iter().enumerate() {
-                    // look for an output that we know and that has the right ScriptType. We use
-                    // `get_descriptor_for` to find what's the ScriptType for `Internal`
+                    // look for an output that we know and that has the right KeychainKind. We use
+                    // `get_descriptor_for` to find what's the KeychainKind for `Internal`
                     // addresses really is, because if there's no change_descriptor it's actually equal
                     // to "External"
-                    let (_, change_type) =
-                        self.get_descriptor_for_script_type(ScriptType::Internal);
+                    let (_, change_type) = self.get_descriptor_for_keychain(KeychainKind::Internal);
                     match self
                         .database
                         .borrow()
                         .get_path_from_script_pubkey(&txout.script_pubkey)?
                     {
-                        Some((script_type, _)) if script_type == change_type => {
+                        Some((keychain, _)) if keychain == change_type => {
                             change_output = Some(index);
                             break;
                         }
@@ -4080,31 +4075,31 @@
                     .get_previous_output(&txin.previous_output)?
                     .ok_or(Error::UnknownUTXO)?;
 
-                let (weight, script_type) = match self
+                let (weight, keychain) = match self
                     .database
                     .borrow()
                     .get_path_from_script_pubkey(&txout.script_pubkey)?
                 {
-                    Some((script_type, _)) => (
-                        self.get_descriptor_for_script_type(script_type)
+                    Some((keychain, _)) => (
+                        self.get_descriptor_for_keychain(keychain)
                             .0
                             .max_satisfaction_weight(deriv_ctx)
                             .unwrap(),
-                        script_type,
+                        keychain,
                     ),
                     None => {
                         // estimate the weight based on the scriptsig/witness size present in the
                         // original transaction
                         let weight =
                             serialize(&txin.script_sig).len() * 4 + serialize(&txin.witness).len();
-                        (weight, ScriptType::External)
+                        (weight, KeychainKind::External)
                     }
                 };
 
                 let utxo = UTXO {
                     outpoint: txin.previous_output,
                     txout,
-                    script_type,
+                    keychain,
                 };
 
                 Ok((utxo, weight))
@@ -4276,13 +4271,13 @@
     }
 
     /// Return the spending policies for the wallet's descriptor
-    pub fn policies(&self, script_type: ScriptType) -> Result<Option<Policy>, Error> {
-        match (script_type, self.change_descriptor.as_ref()) {
-            (ScriptType::External, _) => {
+    pub fn policies(&self, keychain: KeychainKind) -> Result<Option<Policy>, Error> {
+        match (keychain, self.change_descriptor.as_ref()) {
+            (KeychainKind::External, _) => {
                 Ok(self.descriptor.extract_policy(&self.signers, &self.secp)?)
             }
-            (ScriptType::Internal, None) => Ok(None),
-            (ScriptType::Internal, Some(desc)) => {
+            (KeychainKind::Internal, None) => Ok(None),
+            (KeychainKind::Internal, Some(desc)) => {
                 Ok(desc.extract_policy(&self.change_signers, &self.secp)?)
             }
         }
@@ -4294,12 +4289,12 @@
     /// This can be used to build a watch-only version of a wallet
     pub fn public_descriptor(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
     ) -> Result<Option<ExtendedDescriptor>, Error> {
-        match (script_type, self.change_descriptor.as_ref()) {
-            (ScriptType::External, _) => Ok(Some(self.descriptor.clone())),
-            (ScriptType::Internal, None) => Ok(None),
-            (ScriptType::Internal, Some(desc)) => Ok(Some(desc.clone())),
+        match (keychain, self.change_descriptor.as_ref()) {
+            (KeychainKind::External, _) => Ok(Some(self.descriptor.clone())),
+            (KeychainKind::Internal, None) => Ok(None),
+            (KeychainKind::Internal, Some(desc)) => Ok(Some(desc.clone())),
         }
     }
 
@@ -4332,7 +4327,7 @@
             );
 
             // - Try to derive the descriptor by looking at the txout. If it's in our database, we
-            //   know exactly which `script_type` to use, and which derivation index it is
+            //   know exactly which `keychain` to use, and which derivation index it is
             // - If that fails, try to derive it by looking at the psbt input: the complete logic
             //   is in `src/descriptor/mod.rs`, but it will basically look at `hd_keypaths`,
             //   `redeem_script` and `witness_script` to determine the right derivation
@@ -4393,16 +4388,16 @@
 
     // Internals
 
-    fn get_descriptor_for_script_type(
+    fn get_descriptor_for_keychain(
         &self,
-        script_type: ScriptType,
-    ) -> (&ExtendedDescriptor, ScriptType) {
-        match script_type {
-            ScriptType::Internal if self.change_descriptor.is_some() => (
+        keychain: KeychainKind,
+    ) -> (&ExtendedDescriptor, KeychainKind) {
+        match keychain {
+            KeychainKind::Internal if self.change_descriptor.is_some() => (
                 self.change_descriptor.as_ref().unwrap(),
-                ScriptType::Internal,
+                KeychainKind::Internal,
             ),
-            _ => (&self.descriptor, ScriptType::External),
+            _ => (&self.descriptor, KeychainKind::External),
         }
     }
 
@@ -4411,38 +4406,35 @@
             .database
             .borrow()
             .get_path_from_script_pubkey(&txout.script_pubkey)?
-            .map(|(script_type, child)| (self.get_descriptor_for_script_type(script_type).0, child))
+            .map(|(keychain, child)| (self.get_descriptor_for_keychain(keychain).0, child))
             .map(|(desc, child)| desc.derive(ChildNumber::from_normal_idx(child).unwrap())))
     }
 
     fn get_change_address(&self) -> Result<Script, Error> {
         let deriv_ctx = descriptor_to_pk_ctx(&self.secp);
 
-        let (desc, script_type) = self.get_descriptor_for_script_type(ScriptType::Internal);
-        let index = self.fetch_and_increment_index(script_type)?;
+        let (desc, keychain) = self.get_descriptor_for_keychain(KeychainKind::Internal);
+        let index = self.fetch_and_increment_index(keychain)?;
 
         Ok(desc
             .derive(ChildNumber::from_normal_idx(index)?)
             .script_pubkey(deriv_ctx))
     }
 
-    fn fetch_and_increment_index(&self, script_type: ScriptType) -> Result<u32, Error> {
-        let (descriptor, script_type) = self.get_descriptor_for_script_type(script_type);
+    fn fetch_and_increment_index(&self, keychain: KeychainKind) -> Result<u32, Error> {
+        let (descriptor, keychain) = self.get_descriptor_for_keychain(keychain);
         let index = match descriptor.is_fixed() {
             true => 0,
-            false => self
-                .database
-                .borrow_mut()
-                .increment_last_index(script_type)?,
+            false => self.database.borrow_mut().increment_last_index(keychain)?,
         };
 
         if self
             .database
             .borrow()
-            .get_script_pubkey_from_path(script_type, index)?
+            .get_script_pubkey_from_path(keychain, index)?
             .is_none()
         {
-            self.cache_addresses(script_type, index, CACHE_ADDR_BATCH_SIZE)?;
+            self.cache_addresses(keychain, index, CACHE_ADDR_BATCH_SIZE)?;
         }
 
         let deriv_ctx = descriptor_to_pk_ctx(&self.secp);
@@ -4452,7 +4444,7 @@
             .derive(ChildNumber::from_normal_idx(index)?)
             .script_pubkey(deriv_ctx);
         for validator in &self.address_validators {
-            validator.validate(script_type, &hd_keypaths, &script)?;
+            validator.validate(keychain, &hd_keypaths, &script)?;
         }
 
         Ok(index)
@@ -4460,11 +4452,11 @@
 
     fn cache_addresses(
         &self,
-        script_type: ScriptType,
+        keychain: KeychainKind,
         from: u32,
         mut count: u32,
     ) -> Result<(), Error> {
-        let (descriptor, script_type) = self.get_descriptor_for_script_type(script_type);
+        let (descriptor, keychain) = self.get_descriptor_for_keychain(keychain);
         if descriptor.is_fixed() {
             if from > 0 {
                 return Ok(());
@@ -4483,7 +4475,7 @@
                 &descriptor
                     .derive(ChildNumber::from_normal_idx(i)?)
                     .script_pubkey(deriv_ctx),
-                script_type,
+                keychain,
                 i,
             )?;
         }
@@ -4506,10 +4498,10 @@
             .list_unspent()?
             .into_iter()
             .map(|utxo| {
-                let script_type = utxo.script_type;
+                let keychain = utxo.keychain;
                 (
                     utxo,
-                    self.get_descriptor_for_script_type(script_type)
+                    self.get_descriptor_for_keychain(keychain)
                         .0
                         .max_satisfaction_weight(deriv_ctx)
                         .unwrap(),
@@ -4653,7 +4645,7 @@
 
             // Try to find the prev_script in our db to figure out if this is internal or external,
             // and the derivation index
-            let (script_type, child) = match self
+            let (keychain, child) = match self
                 .database
                 .borrow()
                 .get_path_from_script_pubkey(&utxo.txout.script_pubkey)?
@@ -4662,7 +4654,7 @@
                 None => continue,
             };
 
-            let (desc, _) = self.get_descriptor_for_script_type(script_type);
+            let (desc, _) = self.get_descriptor_for_keychain(keychain);
             psbt_input.hd_keypaths = desc.get_hd_keypaths(child, &self.secp)?;
             let derived_descriptor = desc.derive(ChildNumber::from_normal_idx(child)?);
 
@@ -4690,12 +4682,12 @@
             .iter_mut()
             .zip(psbt.global.unsigned_tx.output.iter())
         {
-            if let Some((script_type, child)) = self
+            if let Some((keychain, child)) = self
                 .database
                 .borrow()
                 .get_path_from_script_pubkey(&tx_output.script_pubkey)?
             {
-                let (desc, _) = self.get_descriptor_for_script_type(script_type);
+                let (desc, _) = self.get_descriptor_for_keychain(keychain);
                 psbt_output.hd_keypaths = desc.get_hd_keypaths(child, &self.secp)?;
                 if builder.include_output_redeem_witness_script {
                     let derived_descriptor = desc.derive(ChildNumber::from_normal_idx(child)?);
@@ -4717,15 +4709,15 @@
         // try to add hd_keypaths if we've already seen the output
         for (psbt_input, out) in psbt.inputs.iter_mut().zip(input_utxos.iter()) {
             if let Some(out) = out {
-                if let Some((script_type, child)) = self
+                if let Some((keychain, child)) = self
                     .database
                     .borrow()
                     .get_path_from_script_pubkey(&out.script_pubkey)?
                 {
-                    debug!("Found descriptor {:?}/{}", script_type, child);
+                    debug!("Found descriptor {:?}/{}", keychain, child);
 
                     // merge hd_keypaths
-                    let (desc, _) = self.get_descriptor_for_script_type(script_type);
+                    let (desc, _) = self.get_descriptor_for_keychain(keychain);
                     let mut hd_keypaths = desc.get_hd_keypaths(child, &self.secp)?;
                     psbt_input.hd_keypaths.append(&mut hd_keypaths);
                 }
@@ -4776,11 +4768,11 @@
         if self
             .database
             .borrow()
-            .get_script_pubkey_from_path(ScriptType::External, max_address.saturating_sub(1))?
+            .get_script_pubkey_from_path(KeychainKind::External, max_address.saturating_sub(1))?
             .is_none()
         {
             run_setup = true;
-            self.cache_addresses(ScriptType::External, 0, max_address)?;
+            self.cache_addresses(KeychainKind::External, 0, max_address)?;
         }
 
         if let Some(change_descriptor) = &self.change_descriptor {
@@ -4792,11 +4784,11 @@
             if self
                 .database
                 .borrow()
-                .get_script_pubkey_from_path(ScriptType::Internal, max_address.saturating_sub(1))?
+                .get_script_pubkey_from_path(KeychainKind::Internal, max_address.saturating_sub(1))?
                 .is_none()
             {
                 run_setup = true;
-                self.cache_addresses(ScriptType::Internal, 0, max_address)?;
+                self.cache_addresses(KeychainKind::Internal, 0, max_address)?;
             }
         }
 
@@ -4848,7 +4840,7 @@
 
     use crate::database::memory::MemoryDatabase;
     use crate::database::Database;
-    use crate::types::ScriptType;
+    use crate::types::KeychainKind;
 
     use super::*;
 
@@ -4875,13 +4867,13 @@
         assert!(wallet
             .database
             .borrow_mut()
-            .get_script_pubkey_from_path(ScriptType::External, 0)
+            .get_script_pubkey_from_path(KeychainKind::External, 0)
             .unwrap()
             .is_some());
         assert!(wallet
             .database
             .borrow_mut()
-            .get_script_pubkey_from_path(ScriptType::Internal, 0)
+            .get_script_pubkey_from_path(KeychainKind::Internal, 0)
             .unwrap()
             .is_none());
     }
@@ -4903,13 +4895,13 @@
         assert!(wallet
             .database
             .borrow_mut()
-            .get_script_pubkey_from_path(ScriptType::External, CACHE_ADDR_BATCH_SIZE - 1)
+            .get_script_pubkey_from_path(KeychainKind::External, CACHE_ADDR_BATCH_SIZE - 1)
             .unwrap()
             .is_some());
         assert!(wallet
             .database
             .borrow_mut()
-            .get_script_pubkey_from_path(ScriptType::External, CACHE_ADDR_BATCH_SIZE)
+            .get_script_pubkey_from_path(KeychainKind::External, CACHE_ADDR_BATCH_SIZE)
             .unwrap()
             .is_none());
     }
@@ -4926,7 +4918,7 @@
         assert!(wallet
             .database
             .borrow_mut()
-            .get_script_pubkey_from_path(ScriptType::External, CACHE_ADDR_BATCH_SIZE - 1)
+            .get_script_pubkey_from_path(KeychainKind::External, CACHE_ADDR_BATCH_SIZE - 1)
             .unwrap()
             .is_some());
 
@@ -4937,7 +4929,7 @@
         assert!(wallet
             .database
             .borrow_mut()
-            .get_script_pubkey_from_path(ScriptType::External, CACHE_ADDR_BATCH_SIZE * 2 - 1)
+            .get_script_pubkey_from_path(KeychainKind::External, CACHE_ADDR_BATCH_SIZE * 2 - 1)
             .unwrap()
             .is_some());
     }
@@ -5734,7 +5726,7 @@
     fn test_create_tx_policy_path_no_csv() {
         let (wallet, _, _) = get_funded_wallet(get_test_a_or_b_plus_csv());
 
-        let external_policy = wallet.policies(ScriptType::External).unwrap().unwrap();
+        let external_policy = wallet.policies(KeychainKind::External).unwrap().unwrap();
         let root_id = external_policy.id;
         // child #0 is just the key "A"
         let path = vec![(root_id, vec![0])].into_iter().collect();
@@ -5743,7 +5735,7 @@
         let (psbt, _) = wallet
             .create_tx(
                 TxBuilder::with_recipients(vec![(addr.script_pubkey(), 30_000)])
-                    .policy_path(path, ScriptType::External),
+                    .policy_path(path, KeychainKind::External),
             )
             .unwrap();
 
@@ -5754,7 +5746,7 @@
     fn test_create_tx_policy_path_use_csv() {
         let (wallet, _, _) = get_funded_wallet(get_test_a_or_b_plus_csv());
 
-        let external_policy = wallet.policies(ScriptType::External).unwrap().unwrap();
+        let external_policy = wallet.policies(KeychainKind::External).unwrap().unwrap();
         let root_id = external_policy.id;
         // child #1 is or(pk(B),older(144))
         let path = vec![(root_id, vec![1])].into_iter().collect();
@@ -5763,7 +5755,7 @@
         let (psbt, _) = wallet
             .create_tx(
                 TxBuilder::with_recipients(vec![(addr.script_pubkey(), 30_000)])
-                    .policy_path(path, ScriptType::External),
+                    .policy_path(path, KeychainKind::External),
             )
             .unwrap();
 
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html
index d13a080af1..c699dac9e2 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/signer.rs.html
@@ -746,7 +746,7 @@
 //! let descriptor = "wpkh(tpubD6NzVbkrYhZ4Xferm7Pz4VnjdcDPFyjVu5K4iZXQ4pVN8Cks4pHVowTBXBKRhX64pkRyJZJN5xAKj4UDNnLPb5p2sSKXhewoYx5GbTdUFWq/*)";
 //! let mut wallet: OfflineWallet<_> = Wallet::new_offline(descriptor, None, Network::Testnet, MemoryDatabase::default())?;
 //! wallet.add_signer(
-//!     ScriptType::External,
+//!     KeychainKind::External,
 //!     Fingerprint::from_str("e30f11b8").unwrap().into(),
 //!     SignerOrdering(200),
 //!     Arc::new(custom_signer)
diff --git a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/tx_builder.rs.html b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/tx_builder.rs.html
index 0994ca1654..603ec1e659 100644
--- a/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/tx_builder.rs.html
+++ b/static/docs-rs/bdk/nightly/latest/src/bdk/wallet/tx_builder.rs.html
@@ -792,7 +792,7 @@
 
 use super::coin_selection::{CoinSelectionAlgorithm, DefaultCoinSelectionAlgorithm};
 use crate::database::Database;
-use crate::types::{FeeRate, ScriptType, UTXO};
+use crate::types::{FeeRate, KeychainKind, UTXO};
 
 /// Context in which the [`TxBuilder`] is valid
 pub trait TxBuilderContext: std::fmt::Debug + Default + Clone {}
@@ -904,7 +904,7 @@
         self
     }
 
-    /// Set the policy path to use while creating the transaction for a given script type
+    /// Set the policy path to use while creating the transaction for a given keychain.
     ///
     /// This method accepts a map where the key is the policy node id (see
     /// [`Policy::id`](crate::descriptor::Policy::id)) and the value is the list of the indexes of
@@ -956,17 +956,17 @@
     /// path.insert("aabbccdd".to_string(), vec![0, 1]);
     ///
     /// let builder = TxBuilder::with_recipients(vec![(to_address.script_pubkey(), 50_000)])
-    ///     .policy_path(path, ScriptType::External);
+    ///     .policy_path(path, KeychainKind::External);
     /// # let builder: TxBuilder<bdk::database::MemoryDatabase, _, _> = builder;
     /// ```
     pub fn policy_path(
         mut self,
         policy_path: BTreeMap<String, Vec<usize>>,
-        script_type: ScriptType,
+        keychain: KeychainKind,
     ) -> Self {
-        let to_update = match script_type {
-            ScriptType::Internal => &mut self.internal_policy_path,
-            ScriptType::External => &mut self.external_policy_path,
+        let to_update = match keychain {
+            KeychainKind::Internal => &mut self.internal_policy_path,
+            KeychainKind::External => &mut self.external_policy_path,
         };
 
         *to_update = Some(policy_path);
@@ -1326,8 +1326,8 @@
     pub(crate) fn is_satisfied_by(&self, utxo: &UTXO) -> bool {
         match self {
             ChangeSpendPolicy::ChangeAllowed => true,
-            ChangeSpendPolicy::OnlyChange => utxo.script_type == ScriptType::Internal,
-            ChangeSpendPolicy::ChangeForbidden => utxo.script_type == ScriptType::External,
+            ChangeSpendPolicy::OnlyChange => utxo.keychain == KeychainKind::Internal,
+            ChangeSpendPolicy::ChangeForbidden => utxo.keychain == KeychainKind::External,
         }
     }
 }
@@ -1422,7 +1422,7 @@
                     vout: 0,
                 },
                 txout: Default::default(),
-                script_type: ScriptType::External,
+                keychain: KeychainKind::External,
             },
             UTXO {
                 outpoint: OutPoint {
@@ -1430,7 +1430,7 @@
                     vout: 1,
                 },
                 txout: Default::default(),
-                script_type: ScriptType::Internal,
+                keychain: KeychainKind::Internal,
             },
         ]
     }
@@ -1455,7 +1455,7 @@
             .collect::<Vec<_>>();
 
         assert_eq!(filtered.len(), 1);
-        assert_eq!(filtered[0].script_type, ScriptType::External);
+        assert_eq!(filtered[0].keychain, KeychainKind::External);
     }
 
     #[test]
@@ -1467,7 +1467,7 @@
             .collect::<Vec<_>>();
 
         assert_eq!(filtered.len(), 1);
-        assert_eq!(filtered[0].script_type, ScriptType::Internal);
+        assert_eq!(filtered[0].keychain, KeychainKind::Internal);
     }
 
     #[test]