1pub mod adapters;
7pub mod config;
8pub mod email;
9pub mod entity;
10pub mod error;
11pub mod hooks;
12pub mod middleware;
13pub mod openapi;
14pub mod plugin;
15pub mod session;
16pub mod types;
17
18#[cfg(feature = "derive")]
20pub use better_auth_derive::*;
21
22pub use adapters::{
24 CacheAdapter, DatabaseAdapter, MemoryAccount, MemoryCacheAdapter, MemoryDatabaseAdapter,
25 MemoryInvitation, MemoryMember, MemoryOrganization, MemorySession, MemoryUser,
26 MemoryVerification,
27};
28#[cfg(feature = "sqlx-postgres")]
29pub use adapters::{SqlxAdapter, SqlxEntity};
30pub use config::{Argon2Config, AuthConfig, JwtConfig, PasswordConfig, SameSite, SessionConfig};
31pub use email::{ConsoleEmailProvider, EmailProvider};
32pub use entity::{
33 AuthAccount, AuthInvitation, AuthMember, AuthOrganization, AuthPasskey, AuthSession,
34 AuthTwoFactor, AuthUser, AuthVerification, MemberUserView,
35};
36pub use error::{
37 AuthError, AuthResult, DatabaseError, validate_request_body, validation_error_response,
38};
39pub use hooks::{DatabaseHooks, HookedDatabaseAdapter};
40pub use middleware::{
41 BodyLimitConfig, BodyLimitMiddleware, CorsConfig, CorsMiddleware, CsrfConfig, CsrfMiddleware,
42 EndpointRateLimit, Middleware, RateLimitConfig, RateLimitMiddleware,
43};
44pub use openapi::{OpenApiBuilder, OpenApiInfo, OpenApiOperation, OpenApiResponse, OpenApiSpec};
45pub use plugin::{AuthContext, AuthPlugin, AuthRoute};
46pub use session::SessionManager;
47pub use types::{
48 Account, AuthRequest, AuthResponse, CreateAccount, CreateInvitation, CreateMember,
49 CreateOrganization, CreateSession, CreateUser, CreateVerification, DeleteUserResponse,
50 HttpMethod, Invitation, InvitationStatus, Passkey, Session, TwoFactor, UpdateOrganization,
51 UpdateUser, UpdateUserRequest, UpdateUserResponse, User, Verification,
52};