1#![allow(async_fn_in_trait)]
2pub mod auth;
12pub mod domain;
13pub mod error;
14pub mod ports;
15pub mod rbac;
16pub mod session;
17
18pub use auth::{
19 AccessToken, Claims, LoginAuthMaterial, LoginInput, LoginService, PasswordHash,
20 RefreshAuthMaterial, RefreshInput, RefreshService, RegisterAuthMaterial, RegisterInput,
21 RegisterResult, RegisterService, RevokeAllSessionsInput, RevokeAllSessionsService,
22 RevokeResult, RevokeSessionInput, RevokeSessionService, TokenPurpose,
23};
24pub use domain::{
25 Email, Password, RoleId, SessionId, Tenant, TenantId, TenantSettings, User, UserId, UserStatus,
26};
27pub use error::{AuthError, NythosResult};
28pub use ports::{
29 NewUser, PasswordHasher, RefreshTokenRotation, RevocationChecker, RoleAssignmentInput,
30 RoleRepository, SessionRecord, SessionStore, TokenSigner, UserCredentials, UserRepository,
31};
32pub use rbac::{Permission, Role, RoleAssignment, RoleRegistry};
33pub use session::{RefreshToken, Session};