breez_sdk_liquid/payjoin/
mod.rs1pub(crate) mod error;
2pub(crate) mod model;
3mod network_fee;
4mod pset;
5pub(crate) mod side_swap;
6mod utxo_select;
7
8use error::PayjoinResult;
9use lwk_wollet::elements::Transaction;
10use model::AcceptedAsset;
11
12#[sdk_macros::async_trait]
13pub trait PayjoinService: Send + Sync {
14 async fn fetch_accepted_assets(&self) -> PayjoinResult<Vec<AcceptedAsset>>;
16
17 async fn estimate_payjoin_tx_fee(&self, asset_id: &str, amount_sat: u64) -> PayjoinResult<f64>;
19
20 async fn build_payjoin_tx(
23 &self,
24 recipient_address: &str,
25 asset_id: &str,
26 amount_sat: u64,
27 ) -> PayjoinResult<(Transaction, u64)>;
28}