use std::sync::Arc; pub mod argon; pub mod axum; pub mod enviroment; pub mod jsonwebtoken; pub mod lettre; pub mod minio; pub mod services; pub mod surrealdb; pub use argon::{hash_password, verify_password}; pub use axum::axum_init; pub use enviroment::{ENV, Env}; pub use imphnen_entities::{ MessageResponseDto, MetaRequestDto, MetaResponseDto, ResponseSuccessDto, ResponseListSuccessDto, CountResult, Error, ExperienceDto, EducationDto, UsersDetailQueryDto, PermissionsEnum, PermissionsItemDto, PermissionsQueryDto, }; pub use jsonwebtoken::{ Claims, encode_access_token, encode_refresh_token, decode_access_token, decode_refresh_token, encode_reset_password_token, generate_jwt }; pub use lettre::send_email; pub use minio::*; // Minio has many useful exports, keeping for now pub use services::{UserLookupService, AuthRepositoryTrait}; pub use surrealdb::{ surrealdb_init_ws, surrealdb_init_mem, SurrealWsClient, SurrealMemClient, ResourceEnum }; #[derive(Clone)] pub struct AppState { pub surrealdb_ws: SurrealWsClient, pub surrealdb_mem: SurrealMemClient, pub user_lookup_service: Arc, pub auth_repository: Arc, }