#[cfg(feature = "permission")]
pub mod permission;
pub mod security;
#[cfg(feature = "authentication")]
pub mod authentication;
#[cfg(feature = "permission-engine")]
pub mod permission_engine;
#[cfg(feature = "sql-parser")]
pub mod sql_parser;
#[cfg(feature = "sql-parser")]
pub use security::{DdlGuard, DdlValidationResult};
pub use security::{MaskType, SensitiveError, SensitiveMasker, SensitiveResult};
#[cfg(feature = "permission")]
pub use permission::{
MemoryPermissionProvider, PermissionAction, PermissionConfig, PermissionContext, PermissionProvider,
PermissionProviderError, RolePolicy, TablePermission, YamlPermissionProvider,
};
#[cfg(feature = "authentication")]
pub use authentication::{
AuthCredentials, AuthError, AuthResult, AuthenticationManager, JwtClaims, JwtManager, PasswordHasher, TokenType,
User,
};
#[cfg(all(feature = "sql-parser", not(feature = "permission")))]
pub use sql_parser::PermissionAction;
#[cfg(feature = "sql-parser")]
pub use sql_parser::SqlParser;