import type { CorePermissionsConfig, ThemePermissionsConfig, PermissionConfig, PermissionUISection, Permission, ResolvedPermission, EntityPermissionsConfig } from './types'; /** * Merge configuration from core with theme and entities * * @deprecated This function is no longer used. Permissions are now pre-computed * at build time and stored in the permissions-registry. Use PermissionService * for runtime permission checks instead. * * Order of precedence: * 1. Core config (base) * 2. Theme overrides (override specific properties) * 3. Theme features (add new permissions) * 4. Entity configs (add entity permissions) */ export declare function mergePermissionsConfig(coreConfig: CorePermissionsConfig, themeConfig: ThemePermissionsConfig | null, entityPermissions: PermissionConfig[]): { permissions: ResolvedPermission[]; uiSections: PermissionUISection[]; disabledIds: Set; }; /** * Extract permissions from EntityConfig * * @deprecated This function is no longer used. Entity permissions are now defined * centrally in permissions.config.ts and processed at build time by the registry * generator script. Do not use this function for new code. * * Converts entity permissions configuration into PermissionConfig objects * that can be merged into the global permissions registry. * * @param entitySlug - The entity identifier (e.g., "customers", "tasks") * @param entityLabel - Human-readable entity name for UI * @param permissions - Entity permissions configuration * @returns Array of PermissionConfig objects * * @example * ```typescript * const perms = extractEntityPermissions( * 'customers', * 'Customers', * { * actions: [ * { action: 'create', label: 'Create customers', roles: ['owner', 'admin'] } * ] * } * ) * // Returns: [{ id: 'customers.create', label: 'Create customers', ... }] * ``` */ export declare function extractEntityPermissions(entitySlug: string, entityLabel: string, permissions: EntityPermissionsConfig): PermissionConfig[]; //# sourceMappingURL=merge.d.ts.map