#[cfg(all(feature = "store-factory", feature = "memory"))]
pub mod memory;
#[cfg(any(feature = "postgres", feature = "sqlite"))]
pub(crate) mod pool;
#[cfg(all(feature = "store-factory", feature = "postgres"))]
pub mod postgres;
#[cfg(all(feature = "store-factory", feature = "sqlite"))]
pub mod sqlite;
#[cfg(feature = "store-factory")]
pub trait StoreFactory {
#[cfg(feature = "biome-credentials")]
fn get_biome_credentials_store(&self) -> Box<dyn crate::biome::CredentialsStore>;
#[cfg(feature = "biome-key-management")]
fn get_biome_key_store(&self) -> Box<dyn crate::biome::KeyStore>;
#[cfg(feature = "biome-credentials")]
fn get_biome_refresh_token_store(&self) -> Box<dyn crate::biome::RefreshTokenStore>;
#[cfg(feature = "oauth")]
fn get_biome_oauth_user_session_store(&self) -> Box<dyn crate::biome::OAuthUserSessionStore>;
#[cfg(feature = "admin-service")]
fn get_admin_service_store(&self) -> Box<dyn crate::admin::store::AdminServiceStore>;
#[cfg(feature = "oauth")]
fn get_oauth_inflight_request_store(
&self,
) -> Box<dyn crate::oauth::store::InflightOAuthRequestStore>;
#[cfg(feature = "registry")]
fn get_registry_store(&self) -> Box<dyn crate::registry::RwRegistry>;
#[cfg(feature = "authorization-handler-rbac")]
fn get_role_based_authorization_store(
&self,
) -> Box<dyn crate::rest_api::auth::authorization::rbac::store::RoleBasedAuthorizationStore>;
#[cfg(feature = "biome-profile")]
fn get_biome_user_profile_store(&self) -> Box<dyn crate::biome::UserProfileStore>;
#[cfg(feature = "node-id-store")]
fn get_node_id_store(&self) -> Box<dyn crate::node_id::store::NodeIdStore>;
}