Skip to main content

WalletDatabase

Trait WalletDatabase 

Source
pub trait WalletDatabase: Send + Sync {
Show 46 methods // Required methods fn get_mint<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<Option<MintInfo>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_mints<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HashMap<MintUrl, Option<MintInfo>>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_mint_keysets<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<KeySetInfo>>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_keyset_by_id<'life0, 'async_trait>( &'life0 self, keyset_id: Id, ) -> Pin<Box<dyn Future<Output = Result<Option<KeySetInfo>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_mint_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<Option<MintQuote>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_mint_quotes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MintQuote>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_unissued_mint_quotes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MintQuote>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_melt_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<Option<MeltQuote>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_melt_quotes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MeltQuote>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_keys<'life0, 'async_trait>( &'life0 self, id: Id, ) -> Pin<Box<dyn Future<Output = Result<Option<Keys>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_proofs<'life0, 'async_trait>( &'life0 self, mint_url: Option<MintUrl>, unit: Option<CurrencyUnit>, state: Option<Vec<ProofState>>, spending_conditions: Option<Vec<SpendingConditions>>, ) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_proofs_by_ys<'life0, 'async_trait>( &'life0 self, ys: Vec<PublicKey>, ) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_balance<'life0, 'async_trait>( &'life0 self, mint_url: Option<MintUrl>, unit: Option<CurrencyUnit>, state: Option<Vec<ProofState>>, ) -> Pin<Box<dyn Future<Output = Result<u64, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_transaction<'life0, 'async_trait>( &'life0 self, transaction_id: TransactionId, ) -> Pin<Box<dyn Future<Output = Result<Option<Transaction>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn list_transactions<'life0, 'async_trait>( &'life0 self, mint_url: Option<MintUrl>, direction: Option<TransactionDirection>, unit: Option<CurrencyUnit>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Transaction>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn kv_read<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, key: String, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn kv_list<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn kv_write<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, key: String, value: Vec<u8>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn kv_remove<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, key: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn update_proofs<'life0, 'async_trait>( &'life0 self, added: Vec<ProofInfo>, removed_ys: Vec<PublicKey>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn update_proofs_state<'life0, 'async_trait>( &'life0 self, ys: Vec<PublicKey>, state: ProofState, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_transaction<'life0, 'async_trait>( &'life0 self, transaction: Transaction, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn remove_transaction<'life0, 'async_trait>( &'life0 self, transaction_id: TransactionId, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn update_mint_url<'life0, 'async_trait>( &'life0 self, old_mint_url: MintUrl, new_mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn increment_keyset_counter<'life0, 'async_trait>( &'life0 self, keyset_id: Id, count: u32, ) -> Pin<Box<dyn Future<Output = Result<u32, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_mint<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, mint_info: Option<MintInfo>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn remove_mint<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_mint_keysets<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, keysets: Vec<KeySetInfo>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_mint_quote<'life0, 'async_trait>( &'life0 self, quote: MintQuote, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn remove_mint_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_melt_quote<'life0, 'async_trait>( &'life0 self, quote: MeltQuote, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn remove_melt_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_keys<'life0, 'async_trait>( &'life0 self, keyset: KeySet, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn remove_keys<'life0, 'async_trait>( &'life0 self, id: Id, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn add_saga<'life0, 'async_trait>( &'life0 self, saga_json: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_saga<'life0, 'async_trait>( &'life0 self, id: String, ) -> Pin<Box<dyn Future<Output = Result<Option<String>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn update_saga<'life0, 'async_trait>( &'life0 self, saga_json: String, ) -> Pin<Box<dyn Future<Output = Result<bool, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn delete_saga<'life0, 'async_trait>( &'life0 self, id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_incomplete_sagas<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn reserve_proofs<'life0, 'async_trait>( &'life0 self, ys: Vec<PublicKey>, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn release_proofs<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn get_reserved_proofs<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn reserve_melt_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn release_melt_quote<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn reserve_mint_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn release_mint_quote<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait;
}
Expand description

FFI-compatible wallet database trait with all read and write operations This trait mirrors the CDK WalletDatabase trait structure

Required Methods§

Source

fn get_mint<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<Option<MintInfo>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get mint from storage

Source

fn get_mints<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<HashMap<MintUrl, Option<MintInfo>>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get all mints from storage

Source

fn get_mint_keysets<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<KeySetInfo>>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get mint keysets for mint url

Source

fn get_keyset_by_id<'life0, 'async_trait>( &'life0 self, keyset_id: Id, ) -> Pin<Box<dyn Future<Output = Result<Option<KeySetInfo>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get mint keyset by id

Source

fn get_mint_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<Option<MintQuote>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get mint quote from storage

Source

fn get_mint_quotes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MintQuote>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get mint quotes from storage

Source

fn get_unissued_mint_quotes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MintQuote>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get unissued mint quotes from storage Returns bolt11 quotes where nothing has been issued yet (amount_issued = 0) and all bolt12 quotes.

Source

fn get_melt_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<Option<MeltQuote>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get melt quote from storage

Source

fn get_melt_quotes<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<MeltQuote>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get melt quotes from storage

Source

fn get_keys<'life0, 'async_trait>( &'life0 self, id: Id, ) -> Pin<Box<dyn Future<Output = Result<Option<Keys>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get Keys from storage

Source

fn get_proofs<'life0, 'async_trait>( &'life0 self, mint_url: Option<MintUrl>, unit: Option<CurrencyUnit>, state: Option<Vec<ProofState>>, spending_conditions: Option<Vec<SpendingConditions>>, ) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get proofs from storage

Source

fn get_proofs_by_ys<'life0, 'async_trait>( &'life0 self, ys: Vec<PublicKey>, ) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get proofs by Y values

Source

fn get_balance<'life0, 'async_trait>( &'life0 self, mint_url: Option<MintUrl>, unit: Option<CurrencyUnit>, state: Option<Vec<ProofState>>, ) -> Pin<Box<dyn Future<Output = Result<u64, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get balance efficiently using SQL aggregation

Source

fn get_transaction<'life0, 'async_trait>( &'life0 self, transaction_id: TransactionId, ) -> Pin<Box<dyn Future<Output = Result<Option<Transaction>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get transaction from storage

Source

fn list_transactions<'life0, 'async_trait>( &'life0 self, mint_url: Option<MintUrl>, direction: Option<TransactionDirection>, unit: Option<CurrencyUnit>, ) -> Pin<Box<dyn Future<Output = Result<Vec<Transaction>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

List transactions from storage

Source

fn kv_read<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, key: String, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<u8>>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Read a value from the KV store

Source

fn kv_list<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

List keys in a namespace

Source

fn kv_write<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, key: String, value: Vec<u8>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Write a value to the KV store

Source

fn kv_remove<'life0, 'async_trait>( &'life0 self, primary_namespace: String, secondary_namespace: String, key: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove a value from the KV store

Source

fn update_proofs<'life0, 'async_trait>( &'life0 self, added: Vec<ProofInfo>, removed_ys: Vec<PublicKey>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Update the proofs in storage by adding new proofs or removing proofs by their Y value

Source

fn update_proofs_state<'life0, 'async_trait>( &'life0 self, ys: Vec<PublicKey>, state: ProofState, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Update proofs state in storage

Source

fn add_transaction<'life0, 'async_trait>( &'life0 self, transaction: Transaction, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add transaction to storage

Source

fn remove_transaction<'life0, 'async_trait>( &'life0 self, transaction_id: TransactionId, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove transaction from storage

Source

fn update_mint_url<'life0, 'async_trait>( &'life0 self, old_mint_url: MintUrl, new_mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Update mint url

Source

fn increment_keyset_counter<'life0, 'async_trait>( &'life0 self, keyset_id: Id, count: u32, ) -> Pin<Box<dyn Future<Output = Result<u32, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Atomically increment Keyset counter and return new value

Source

fn add_mint<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, mint_info: Option<MintInfo>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add Mint to storage

Source

fn remove_mint<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove Mint from storage

Source

fn add_mint_keysets<'life0, 'async_trait>( &'life0 self, mint_url: MintUrl, keysets: Vec<KeySetInfo>, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add mint keyset to storage

Source

fn add_mint_quote<'life0, 'async_trait>( &'life0 self, quote: MintQuote, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add mint quote to storage

Source

fn remove_mint_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove mint quote from storage

Source

fn add_melt_quote<'life0, 'async_trait>( &'life0 self, quote: MeltQuote, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add melt quote to storage

Source

fn remove_melt_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove melt quote from storage

Source

fn add_keys<'life0, 'async_trait>( &'life0 self, keyset: KeySet, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add Keys to storage

Source

fn remove_keys<'life0, 'async_trait>( &'life0 self, id: Id, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove Keys from storage

Source

fn add_saga<'life0, 'async_trait>( &'life0 self, saga_json: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add a wallet saga to storage (JSON serialized)

Source

fn get_saga<'life0, 'async_trait>( &'life0 self, id: String, ) -> Pin<Box<dyn Future<Output = Result<Option<String>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get a wallet saga by ID (returns JSON serialized)

Source

fn update_saga<'life0, 'async_trait>( &'life0 self, saga_json: String, ) -> Pin<Box<dyn Future<Output = Result<bool, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Update a wallet saga (JSON serialized) with optimistic locking.

Returns true if the update succeeded (version matched), false if another instance modified the saga first.

Source

fn delete_saga<'life0, 'async_trait>( &'life0 self, id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Delete a wallet saga

Source

fn get_incomplete_sagas<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Vec<String>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get all incomplete sagas (returns JSON serialized sagas)

Source

fn reserve_proofs<'life0, 'async_trait>( &'life0 self, ys: Vec<PublicKey>, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Reserve proofs for an operation

Source

fn release_proofs<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Release proofs reserved by an operation

Source

fn get_reserved_proofs<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<Vec<ProofInfo>, FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get proofs reserved by an operation

Source

fn reserve_melt_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Reserve a melt quote for an operation

Source

fn release_melt_quote<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Release a melt quote reserved by an operation

Source

fn reserve_mint_quote<'life0, 'async_trait>( &'life0 self, quote_id: String, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Reserve a mint quote for an operation

Source

fn release_mint_quote<'life0, 'async_trait>( &'life0 self, operation_id: String, ) -> Pin<Box<dyn Future<Output = Result<(), FfiError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Release a mint quote reserved by an operation

Trait Implementations§

Source§

impl<T> FfiConverterArc<T> for dyn WalletDatabase

Source§

const TYPE_ID_META: MetadataBuffer

Source§

type FfiType = *const c_void

Source§

fn lower(obj: Arc<Self>) -> Self::FfiType

Source§

fn try_lift(v: Self::FfiType) -> Result<Arc<Self>>

Source§

fn write(obj: Arc<Self>, buf: &mut Vec<u8>)

Source§

fn try_read(buf: &mut &[u8]) -> Result<Arc<Self>>

Source§

impl<T> LiftRef<T> for dyn WalletDatabase

Implementors§