pub trait PermissionsProvider: Send + Sync {
// Required methods
fn valid_roles(&self) -> &[&str];
fn role_permissions(&self, role: &str) -> HashSet<Permission>;
fn has_permission(&self, role: &str, perm: Permission) -> bool;
fn is_valid_role(&self, role: &str) -> bool;
}