hypercall_db/traits/
mmp.rs1use anyhow::Result;
4use hypercall_types::WalletAddress;
5
6use crate::MmpConfigRecord;
7
8pub trait MmpConfigReader: Send + Sync {
10 fn get_mmp_config_sync(
12 &self,
13 wallet: &WalletAddress,
14 currency: &str,
15 ) -> Result<Option<MmpConfigRecord>>;
16 fn get_all_mmp_configs_for_wallet_sync(
18 &self,
19 wallet: &WalletAddress,
20 ) -> Result<Vec<MmpConfigRecord>>;
21 fn get_all_mmp_configs_sync(&self) -> Result<Vec<MmpConfigRecord>>;
23}
24
25pub trait MmpConfigWriter: MmpConfigReader {
27 fn save_mmp_config_sync(&self, config: &MmpConfigRecord) -> Result<()>;
29 fn delete_mmp_config_sync(&self, wallet: &WalletAddress, currency: &str) -> Result<()>;
31}