mod access_control;
mod audit;
mod error;
mod middleware;
mod permission;
mod role;
pub mod scope;
#[cfg(feature = "auth-bridge")]
pub mod auth_bridge;
#[cfg(feature = "sso")]
pub mod sso;
pub use access_control::{AccessControl, AccessControlBuilder};
pub use audit::{AuditEvent, AuditEventType, AuditOutcome, AuditSink, FileAuditSink};
pub use error::{AccessDenied, AuthError};
pub use middleware::{AuthMiddleware, ProtectedTool, ProtectedToolDyn, ToolExt};
pub use permission::Permission;
pub use role::Role;
pub use scope::{
ContextScopeResolver, ScopeDenied, ScopeGuard, ScopeResolver, ScopeToolExt, ScopedTool,
ScopedToolDyn, StaticScopeResolver, check_scopes,
};
#[cfg(feature = "auth-bridge")]
pub use auth_bridge::{JwtRequestContextExtractor, JwtRequestContextExtractorBuilder};