#![deny(missing_docs)]
#![forbid(unsafe_code)]
#![cfg_attr(all(doc, CHANNEL_NIGHTLY), feature(doc_auto_cfg))]
use async_trait::async_trait;
use sos_sdk::{crypto::AccessKey, vault::Vault};
mod error;
pub use error::Error;
pub type Result<T> = std::result::Result<T, Error>;
#[cfg_attr(target_arch="wasm32", async_trait(?Send))]
#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
pub trait Convert {
type Input;
async fn convert(
&self,
source: Self::Input,
vault: Vault,
key: AccessKey,
) -> Result<Vault>;
}
pub mod export;
pub mod import;