pub use self::{credential::*, utils::*};
mod credential;
pub trait CredentialSpec: Clone + PartialEq + std::fmt::Debug {
fn get(&self) -> scsys::BoxResult<Self>
where
Self: Sized,
{
Ok(self.clone())
}
fn authorize(&self, signature: String) -> bool
where
Self: Sized;
}
#[derive(Clone, Debug, Hash, PartialEq, scsys::Deserialize, scsys::Serialize)]
pub enum CredentialState<T = Credential> {
Authenticated(T),
Unauthenticated(T),
}
mod utils {}