use crate::{async_trait, Result, Session};
#[async_trait]
pub trait SessionStore: std::fmt::Debug + Send + Sync + Clone + 'static {
async fn load_session(&self, cookie_value: String) -> Result<Option<Session>>;
async fn store_session(&self, session: Session) -> Result<Option<String>>;
async fn destroy_session(&self, session: Session) -> Result;
async fn clear_store(&self) -> Result;
}