use crate::error::BoltError;
use crate::server::AuthCredentials;
#[derive(Debug, Clone, Default)]
pub struct AuthInfo {
pub principal: String,
pub credentials_expired: bool,
}
#[async_trait::async_trait]
pub trait AuthValidator: Send + Sync + 'static {
async fn validate(&self, credentials: &AuthCredentials) -> Result<AuthInfo, BoltError>;
}