import { LocalizedLabel } from '../../../services/org/permission-catalog.service'; import { PermissionSelectorResource } from './types'; import * as i0 from "@angular/core"; /** * `val-permission-selector` — selector de permisos agrupado por recurso. * * Presentacional: recibe el catálogo (YA filtrado por el consumer — sin `internal`, * sin otras apps) y emite los códigos `resource:action` seleccionados. Agrupa por * recurso con su label legible (del backend), una fila por recurso con checkbox * "Todos" (tri-estado) y un chip por acción. Bilingüe vía `locale` + los labels del * catálogo; las pocas etiquetas propias (Todos / vacío) se auto-registran (es/en). * * Pensado para el modal de creación de API Key (asignar permisos a la key) y * reusable en cualquier UI que asigne permisos (roles custom, etc.). */ export declare class PermissionSelectorComponent { private i18n; /** Catálogo YA filtrado (sin internal, sin otras apps). */ readonly permissions: import("@angular/core").InputSignal; /** Labels de acción (es/en) por código de acción — del catálogo del backend. */ readonly actionLabels: import("@angular/core").InputSignal>; /** Idioma activo (es/en). Si no se pasa, usa el de `I18nService`. */ readonly locale: import("@angular/core").InputSignal; /** Título opcional de la barra superior (con contador + toggle "Todo"). */ readonly header: import("@angular/core").InputSignal; /** Permisos seleccionados (`resource:action`). Two-way (`model`). */ readonly selected: import("@angular/core").ModelSignal; /** Todos los códigos seleccionables (`resource:action`) del catálogo actual. */ readonly allCodes: import("@angular/core").Signal; readonly selectedCount: import("@angular/core").Signal; readonly allSelected: import("@angular/core").Signal; constructor(); private readonly activeLocale; readonly groups: import("@angular/core").Signal<{ resource: string; label: string; actions: { action: string; code: string; label: string; checked: boolean; }[]; checkedCount: number; all: boolean; some: boolean; }[]>; toggleAction(code: string): void; toggleAll(): void; toggleGroup(resource: string): void; protected tt(key: string): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }