mod access_code_repository;
mod accreditation_repository;
mod api_key_repository;
mod audit_repository;
mod credential_repository;
mod credit_hold_repository;
mod credit_refund_request_repository;
mod credit_repository;
mod custom_role_repository;
mod deposit_repository;
mod derived_wallet_repository;
mod invite_repository;
mod kyc_repository;
mod login_attempt_repository;
mod membership_repository;
mod nonce_repository;
mod org_repository;
mod outbox_repository;
mod pending_wallet_recovery_repository;
mod policy_repository;
mod privacy_note_repository;
mod referral_code_history_repository;
mod referral_payout_repository;
mod session_repository;
mod sso_repository;
mod system_settings_repository;
mod totp_repository;
mod transactional_ops;
mod treasury_config_repository;
mod user_repository;
mod user_withdrawal_log_repository;
mod verification_repository;
mod wallet_material_repository;
mod wallet_rotation_history_repository;
mod webauthn_repository;
mod withdrawal_history_repository;
pub mod pagination;
#[cfg(feature = "postgres")]
pub mod postgres;
#[cfg(test)]
mod tests;
pub use access_code_repository::{
AccessCodeEntity, AccessCodeRepository, InMemoryAccessCodeRepository,
};
pub use accreditation_repository::{
AccreditationDocumentEntity, AccreditationRepository, AccreditationSubmissionEntity,
InMemoryAccreditationRepository,
};
pub use api_key_repository::{
generate_api_key, hash_api_key, ApiKeyEntity, ApiKeyRepository, InMemoryApiKeyRepository,
API_KEY_PREFIX,
};
pub use audit_repository::{
AuditEventType, AuditLogBuilder, AuditLogEntry, AuditLogQuery, AuditLogRepository,
InMemoryAuditLogRepository,
};
pub use credential_repository::{
CredentialEntity, CredentialRepository, CredentialType, InMemoryCredentialRepository,
};
pub use credit_hold_repository::{
CreateHoldResult, CreditHoldEntity, CreditHoldRepository, HoldStatus,
InMemoryCreditHoldRepository,
};
pub use credit_refund_request_repository::{
CreditRefundRequestEntity, CreditRefundRequestRepository, CreditRefundRequestStatus,
InMemoryCreditRefundRequestRepository,
};
pub use credit_repository::{
CreditBalanceEntity, CreditRepository, CreditStats, CreditTransactionEntity, CreditTxType,
CurrencyCreditStats, InMemoryCreditRepository, UserCreditStats,
};
pub use custom_role_repository::{CustomRole, CustomRoleRepository, InMemoryCustomRoleRepository};
pub use deposit_repository::{
DepositRepository, DepositSessionEntity, DepositStats, DepositStatus, DepositType,
InMemoryDepositRepository, WalletType,
};
pub use derived_wallet_repository::{
CreateDerivedWallet, DerivedWalletEntity, DerivedWalletRepository,
InMemoryDerivedWalletRepository,
};
pub use invite_repository::{
default_invite_expiry, generate_invite_token, hash_invite_token, InMemoryInviteRepository,
InviteEntity, InviteRepository, INVITE_EXPIRY_DAYS,
};
pub use kyc_repository::{InMemoryKycRepository, KycRepository, KycSessionEntity};
pub use login_attempt_repository::{
InMemoryLoginAttemptRepository, LockoutStatus, LoginAttemptConfig, LoginAttemptRecord,
LoginAttemptRepository,
};
pub use membership_repository::{
InMemoryMembershipRepository, MemberWithUser, MembershipEntity, MembershipRepository, OrgRole,
};
pub use nonce_repository::{InMemoryNonceRepository, NonceEntity, NonceRepository};
pub use org_repository::{generate_slug, InMemoryOrgRepository, OrgEntity, OrgRepository};
pub use outbox_repository::{
InMemoryOutboxRepository, OutboxEvent, OutboxEventType, OutboxRepository, OutboxStatus,
};
pub use pending_wallet_recovery_repository::{
InMemoryPendingWalletRecoveryRepository, PendingWalletRecoveryEntity,
PendingWalletRecoveryRepository, RecoveryType,
};
pub use policy_repository::{
AbacPolicy, AttributeMatcher, InMemoryPolicyRepository, PolicyConditions, PolicyEffect,
PolicyRepository,
};
pub use privacy_note_repository::{
InMemoryPrivacyNoteRepository, NoteStatus, PrivacyNoteEntity, PrivacyNoteRepository,
};
pub use referral_code_history_repository::{
InMemoryReferralCodeHistoryRepository, ReferralCodeHistoryRepository,
};
pub use referral_payout_repository::{
InMemoryReferralPayoutRepository, ReferralPayoutEntity, ReferralPayoutRepository,
ReferrerPayoutSummary,
};
pub use session_repository::{InMemorySessionRepository, SessionEntity, SessionRepository};
pub use sso_repository::{InMemorySsoRepository, SsoRepository};
pub use system_settings_repository::{
InMemorySystemSettingsRepository, SystemSetting, SystemSettingsRepository,
};
pub use totp_repository::{InMemoryTotpRepository, RecoveryCode, TotpRepository, TotpSecret};
pub use transactional_ops::TransactionalOps;
pub use treasury_config_repository::{
InMemoryTreasuryConfigRepository, TreasuryConfigEntity, TreasuryConfigRepository,
};
pub use user_repository::{
generate_referral_code, normalize_email, validate_email_ascii_local, InMemoryUserRepository,
TopReferrerRow, UserEntity, UserRepository,
};
pub use user_withdrawal_log_repository::{
InMemoryUserWithdrawalLogRepository, UserWithdrawalLogEntry, UserWithdrawalLogRepository,
};
pub use verification_repository::{
default_expiry, generate_verification_token, hash_verification_token,
InMemoryVerificationRepository, RepositoryError, TokenType, VerificationRepository,
VerificationToken,
};
pub use wallet_material_repository::{
CreateWalletMaterial, InMemoryWalletMaterialRepository, KdfParams, RotateUserSecret,
ShareAAuthMethod, WalletMaterialEntity, WalletMaterialRepository,
};
pub use wallet_rotation_history_repository::{
CreateWalletRotationHistory, InMemoryWalletRotationHistoryRepository, WalletRemovalReason,
WalletRotationHistoryEntity, WalletRotationHistoryRepository,
};
pub use webauthn_repository::{
InMemoryWebAuthnRepository, WebAuthnChallenge, WebAuthnCredential, WebAuthnRepository,
};
pub use withdrawal_history_repository::{
InMemoryWithdrawalHistoryRepository, WithdrawalHistoryEntry, WithdrawalHistoryRepository,
};
#[cfg(feature = "postgres")]
pub use postgres::{
PostgresAccessCodeRepository, PostgresAccreditationRepository, PostgresApiKeyRepository,
PostgresAuditLogRepository, PostgresCredentialRepository, PostgresCreditHoldRepository,
PostgresCreditRefundRequestRepository, PostgresCreditRepository, PostgresCustomRoleRepository,
PostgresDepositRepository, PostgresDerivedWalletRepository, PostgresInviteRepository,
PostgresKycRepository, PostgresLoginAttemptRepository, PostgresMembershipRepository,
PostgresNonceRepository, PostgresOrgRepository, PostgresOutboxRepository,
PostgresPendingWalletRecoveryRepository, PostgresPolicyRepository,
PostgresPrivacyNoteRepository, PostgresReferralCodeHistoryRepository,
PostgresReferralPayoutRepository, PostgresSessionRepository, PostgresSsoRepository,
PostgresSystemSettingsRepository, PostgresTotpRepository, PostgresTreasuryConfigRepository,
PostgresUserRepository, PostgresUserWithdrawalLogRepository, PostgresVerificationRepository,
PostgresWalletMaterialRepository, PostgresWalletRotationHistoryRepository,
PostgresWebAuthnRepository, PostgresWithdrawalHistoryRepository,
};