mod file;
pub mod http;
mod slatepack;
pub use self::file::PathToSlate;
pub use self::http::HttpSlateSender;
pub use self::slatepack::PathToSlatepack;
use crate::config::WalletConfig;
use crate::libwallet::{Error, Slate};
use crate::util::ZeroingString;
pub trait SlateSender {
fn send_tx(&mut self, slate: &Slate, finalize: bool) -> Result<Slate, Error>;
}
pub trait SlateReceiver {
fn listen(
&self,
config: WalletConfig,
passphrase: ZeroingString,
account: &str,
node_api_secret: Option<String>,
) -> Result<(), Error>;
}
pub trait SlatePutter {
fn put_tx(&self, slate: &Slate, as_bin: bool) -> Result<(), Error>;
}
pub trait SlateGetter {
fn get_tx(&self) -> Result<(Slate, bool), Error>;
}