pub trait WalletSource {
    // Required methods
    fn list_confirmed_utxos(&self) -> Result<Vec<Utxo>, ()>;
    fn get_change_script(&self) -> Result<Script, ()>;
    fn sign_tx(&self, tx: Transaction) -> Result<Transaction, ()>;
}
Expand description

An alternative to CoinSelectionSource that can be implemented and used along Wallet to provide a default implementation to CoinSelectionSource.

Required Methods§

fn list_confirmed_utxos(&self) -> Result<Vec<Utxo>, ()>

Returns all UTXOs, with at least 1 confirmation each, that are available to spend.

fn get_change_script(&self) -> Result<Script, ()>

Returns a script to use for change above dust resulting from a successful coin selection attempt.

fn sign_tx(&self, tx: Transaction) -> Result<Transaction, ()>

Signs and provides the full TxIn::script_sig and TxIn::witness for all inputs within the transaction known to the wallet (i.e., any provided via WalletSource::list_confirmed_utxos).

Implementors§