/** * Utility functions for validating user permissions against granted roles, * supporting flexible matching including wildcard-based permissions. * * Permission patterns: * - A granted permission like `"admin.*"` will match any `"admin."` sub-permissions. * - A required permission like `"admin.?"` will match any granted permission that starts with `"admin."`. * * These helpers simplify role-based access control logic by supporting * both exact and pattern-based permission checks. */ /** * Checks if a single required permission is granted. * * Supports both exact matches and wildcards (e.g., "admin.*", "admin.?"). * * @param {string} requiredPermission - The required permission to check (e.g. "admin.user", "report.?"). * @param {string[]} grantedPermissions - The list of permissions the user has been granted. * @returns {boolean} True if the required permission is satisfied. */ export declare function hasPermission(requiredPermission: string, grantedPermissions: string[]): boolean; /** * Checks if **every** permission in the required list is satisfied. * * @param {string[]} requiredPermissions - An array of permissions to validate. * @param {string[]} grantedPermissions - The list of permissions the user has. * @returns {boolean} True if all required permissions are satisfied. */ export declare function hasEveryPermission(requiredPermissions: string[], grantedPermissions: string[]): boolean; /** * Checks if **at least one** permission in the required list is satisfied. * * @param {string[]} requiredPermissions - An array of permissions to validate. * @param {string[]} grantedPermissions - The list of permissions the user has. * @returns {boolean} True if any one of the required permissions is satisfied. */ export declare function hasSomePermission(requiredPermissions: string[], grantedPermissions: string[]): boolean;