#[cfg(feature = "stronghold")]
#[cfg_attr(docsrs, doc(cfg(feature = "stronghold")))]
mod stronghold;
use async_trait::async_trait;
#[cfg(feature = "stronghold")]
pub use self::stronghold::StrongholdStorageProvider;
#[async_trait]
pub trait StorageProvider {
type Error;
async fn get(&mut self, k: &[u8]) -> Result<Option<Vec<u8>>, Self::Error>;
async fn insert(&mut self, k: &[u8], v: &[u8]) -> Result<Option<Vec<u8>>, Self::Error>;
async fn delete(&mut self, k: &[u8]) -> Result<Option<Vec<u8>>, Self::Error>;
}