import { OnInit } from '@angular/core'; import { FormControl, FormGroup } from '@angular/forms'; import { RbacOrgMember, RbacRole } from '../../../services/rbac/rbac.service'; import { RoleManagerConfig } from './types'; import * as i0 from "@angular/core"; interface RoleFormState { open: boolean; editing: RbacRole | null; } /** * `val-role-manager` — gestión RBAC de miembros y roles de organización. * * Muestra dos secciones: * 1. **Miembros** — lista de miembros con roles asignados. Permite asignar o * quitar un rol a cada miembro (requiere `rbac:manage`). * 2. **Roles** — lista de roles custom de la org. Permite crear, editar y * eliminar roles personalizados. * * Lee el `orgId` activo del `AuthService`. Requiere que el usuario tenga * `rbac:manage` (el backend lo verifica; un 403 se traduce a un mensaje de error). */ export declare class RoleManagerComponent implements OnInit { config?: RoleManagerConfig; private readonly i18n; private readonly auth; private readonly rbac; private readonly org; private readonly catalog; private readonly toast; private readonly errors; private readonly confirm; private readonly ns; readonly loading: import("@angular/core").WritableSignal; readonly saving: import("@angular/core").WritableSignal; readonly loadError: import("@angular/core").WritableSignal; readonly members: import("@angular/core").WritableSignal; readonly allRoles: import("@angular/core").WritableSignal; readonly pendingMember: import("@angular/core").WritableSignal; readonly roleSelectorMember: import("@angular/core").WritableSignal; readonly roleForm: import("@angular/core").WritableSignal; readonly form: FormGroup<{ name: FormControl; description: FormControl; }>; readonly cfg: import("@angular/core").Signal; private get orgId(); constructor(); ngOnInit(): void; t(key: string): string; load(): Promise; reload(): void; resolveRoleDisplay(roleName: string): string; isSystemRole(roleName: string): boolean; openRoleSelector(member: RbacOrgMember): void; closeRoleSelector(): void; onRoleSelected(member: RbacOrgMember, roleName: string): Promise; openNewRole(): void; openEditRole(role: RbacRole): void; closeRoleForm(): void; saveRole(): Promise; confirmDeleteRole(role: RbacRole): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};