import * as i0 from "@angular/core"; /** * Forma de cada ítem de `lista` en app-badge/app-badge-select. A diferencia de * app-input (quea recibe `lista: any[]` genérico + `keyCodigo`/`keyDescri` apuntando * a qué propiedad leer), acá cada opción ya viene con su propio código y label * embebidos, porque normalmente se arma a mano (ej. prioridades, estados) en vez * de venir de una consulta genérica. * * @property value - Código/id de la opción (equivalente a lo que apunta `keyCodigo` en app-input); * es lo que se compara contra el `[value]` del componente para saber cuál está seleccionada * @property label - Texto visible del badge (equivalente a lo que apunta `keyDescri` en app-input) * @property color - Clase de color de Bootstrap para esta opción puntual (override del `color` del componente) * @property bgColor - Color de fondo en hex para esta opción puntual (override de `color`, mismo criterio * que `bgColor` en app-badge/app-badge-select) * @property icon - Clase de ícono para esta opción puntual * @property detail - Texto secundario mostrado en el ítem del dropdown (ej. una fecha u observación) * @property detailIcon - Ícono de ese texto secundario (default: 'fa-clock' si se define `detail` sin ícono propio) */ export interface BadgeOption { value: any; label: string; color?: string; bgColor?: string; icon?: string; detail?: string; detailIcon?: string; } /** * Nuevo en este componente (label/color/size ya existían y se mantienen igual): * si se pasa `lista`, el badge se vuelve clickable y abre un dropdown para cambiar * el valor seleccionado (a menos que `disabled` esté activo) — más bgColor/icon/variante. * * Editable: ``. * * @Input bgColor - Color de fondo custom en hex (override de `color`); el texto se ajusta a blanco/negro según contraste * @Input icon - Clase de ícono opcional antes del label * @Input minWidth - Ancho mínimo en px * @Input lista - BadgeOption[] para el dropdown de selección; si tiene ítems y `disabled` es * false, el badge se vuelve clickable (mismo nombre/patrón que `lista` en app-input) * @Input disabled - Desactiva el dropdown aunque `lista` tenga ítems (mismo patrón que en app-input) * @Input value - Valor actual, comparado contra `option.value` de `lista` para resaltar el seleccionado * @Input menuTitle - Título del dropdown editable (default: 'Cambiar') * @Input variante - 'estandar' (compacto, radio 4px), 'modern' (radio 8px, sombra) o 'soft' (el look * original de ng-support-tsi: pill 50rem, menú flotante grande) * @Output select - Ítem elegido en el dropdown editable */ export declare class BadgeComponent { label: import("@angular/core").InputSignal; color: import("@angular/core").InputSignal; bgColor: import("@angular/core").InputSignal; size: import("@angular/core").InputSignal; icon: import("@angular/core").InputSignal; minWidth: import("@angular/core").InputSignal; lista: import("@angular/core").InputSignal; value: import("@angular/core").InputSignal; disabled: import("@angular/core").InputSignal; menuTitle: import("@angular/core").InputSignal; /** 'estandar' (compacto, radio 4px), 'modern' (radio 8px, sombra) o 'soft' (el * look original de ng-support-tsi: pill 50rem, menú flotante grande). */ variante: import("@angular/core").InputSignal<"estandar" | "modern" | "soft">; select: import("@angular/core").OutputEmitterRef; protected readonly canOpen: import("@angular/core").Signal; protected readonly hex: import("@angular/core").Signal; protected readonly items: import("@angular/core").Signal<{ hex: string; current: boolean; value: any; label: string; color?: string; bgColor?: string; icon?: string; detail?: string; detailIcon?: string; }[]>; protected pick(option: BadgeOption): void; private isSame; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }