import type { RolesConfig } from '@rangka/shared'; import type { RegisteredRole, ResolvedPermissions } from './types.js'; export declare class PermissionRegistry { private readonly roles; private resolvedInheritance; private version; registerRoles(config: RolesConfig, app: string): void; getRole(name: string): RegisteredRole | undefined; getAllRoles(): RegisteredRole[]; getVersion(): number; getInheritanceChain(roleName: string): string[]; resolvePermissionsForRoles(roleNames: string[]): ResolvedPermissions; private applyModelPermissions; private collectPages; private rebuildInheritanceChains; } export declare class DuplicateRoleError extends Error { readonly role: string; readonly existingApp: string; readonly newApp: string; constructor(role: string, existingApp: string, newApp: string); } export declare class RoleInheritanceCycleError extends Error { readonly cycle: string[]; constructor(cycle: string[]); } //# sourceMappingURL=permission-registry.d.ts.map