mod errors;
mod retention;
mod storage;
mod types;
pub(crate) async fn init() -> Result<(), LoginHistoryError> {
let _ = *O2P_LOGIN_HISTORY_RETENTION_DAYS;
LoginHistoryStore::init().await
}
pub use errors::LoginHistoryError;
pub(crate) use storage::LoginHistoryStore;
use storage::O2P_LOGIN_HISTORY_RETENTION_DAYS;
pub(crate) use types::AuthMethod;
pub use retention::cleanup_old_login_history;
pub use retention::spawn_login_history_cleanup;
pub(crate) use types::AuthMethodDetails;
pub(crate) use types::LoginContext;
pub use types::LoginHistoryEntry;