/** * @fileoverview 权限常量定义 * @description 定义全局权限位运算常量和工具函数(支持代码扩展) */ /** * 默认权限配置(基础框架提供�? * 这些权限值在 base-backend �?base-frontend 中已使用,不可覆�? */ export declare const DEFAULT_PERMISSION_VALUES: readonly ["添加", "编辑", "删除", "导出", "导入"]; /** * 默认权限名称类型(字面量�? */ export type DefaultPermissionName = (typeof DEFAULT_PERMISSION_VALUES)[number]; /** * 扩展权限配置(可选) * 业务项目可以添加更多权限,如�?审批', '拒绝', '发布', '归档' */ export declare const EXTENSION_PERMISSION_VALUES: readonly ["审批", "拒绝", "发布", "归档"]; /** * 扩展权限名称类型(字面量�? */ export type ExtensionPermissionName = (typeof EXTENSION_PERMISSION_VALUES)[number]; /** * 基础权限名称类型(默�?+ 扩展�? */ export type BasePermissionName = DefaultPermissionName | ExtensionPermissionName; /** * 注册业务扩展权限�? * @param values - 业务自定义权限值数�? * * @example * ```typescript * // �?backend/src/permissions.ts 中调�? * registerPermissionValues(['上架', '发货', '退�?]); * ``` */ export declare function registerPermissionValues(values: string[]): void; /** * 获取完整的权限值列�? * @returns 所有权限值(默认 + 扩展 + 业务自定义) */ export declare function getPermissionValues(): readonly string[]; /** * 当前生效的权限值列�? */ export declare const PERMISSION_VALUES: readonly string[]; /** * 权限配置接口 */ export interface PermissionConfig { values: readonly string[]; } /** * 全局权限配置对象 */ export declare const PERMISSION_CONFIG: PermissionConfig; /** * 根据权限名称数组构建位运算权限�? * @param names - 权限名称数组,如 ['添加', '编辑'] * @returns bigint 位运算�? * * @example * ```typescript * buildPerValue(['添加']) // 1n * buildPerValue(['添加', '编辑']) // 3n * buildPerValue(['添加', '删除']) // 5n * ``` */ export declare function buildPerValue(names: string[]): bigint; /** * 根据权限名称获取单个权限位�? * @param name - 权限名称 * @returns bigint 单个权限位�? * * @example * ```typescript * getPermValue('添加') // 1n * getPermValue('编辑') // 2n * ``` */ export declare function getPermValue(name: string): bigint; /** * 根据位运算值解析为权限名称数组 * @param value - 位运算�? * @returns 权限名称数组 * * @example * ```typescript * parsePerValue(3n) // ['添加', '编辑'] * parsePerValue(5n) // ['添加', '删除'] * ``` */ export declare function parsePerValue(value: bigint): string[]; /** * 检查是否包含指定权�? * @param value - 位运算�? * @param name - 权限名称 * @returns boolean 是否包含 * * @example * ```typescript * hasPermission(3n, '添加') // true * hasPermission(3n, '删除') // false * ``` */ export declare function hasPermission(value: bigint, name: string): boolean; /** * 获取所有权限选项(用�?UI 展示�? * @returns 权限选项数组 {name, label, value} */ export declare function getPermissionOptions(): Array<{ name: string; label: string; value: bigint; }>; export declare function initPermissionValueCache(values: Array<{ name: string; bitValue: bigint | number | string; }>): void; export declare function getPermissionValueCache(): Map; //# sourceMappingURL=permissions.d.ts.map