@litigiovirtual/ius-design-components 2.1.23 → 2.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8000,5 +8000,1074 @@ declare class LineChartComponent implements AfterViewInit, OnDestroy {
8000
8000
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<LineChartComponent, "ius-line-chart", never, { "categories": { "alias": "categories"; "required": false; "isSignal": true; }; "series": { "alias": "series"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "aspectRatio": { "alias": "aspectRatio"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "yAxisWidth": { "alias": "yAxisWidth"; "required": false; "isSignal": true; }; "showXAxis": { "alias": "showXAxis"; "required": false; "isSignal": true; }; "showYAxis": { "alias": "showYAxis"; "required": false; "isSignal": true; }; "showGrid": { "alias": "showGrid"; "required": false; "isSignal": true; }; "yTicks": { "alias": "yTicks"; "required": false; "isSignal": true; }; "yMin": { "alias": "yMin"; "required": false; "isSignal": true; }; "yMax": { "alias": "yMax"; "required": false; "isSignal": true; }; "area": { "alias": "area"; "required": false; "isSignal": true; }; "curve": { "alias": "curve"; "required": false; "isSignal": true; }; "showPoints": { "alias": "showPoints"; "required": false; "isSignal": true; }; "showValueLabels": { "alias": "showValueLabels"; "required": false; "isSignal": true; }; "showLegend": { "alias": "showLegend"; "required": false; "isSignal": true; }; "showTooltip": { "alias": "showTooltip"; "required": false; "isSignal": true; }; "valueFormat": { "alias": "valueFormat"; "required": false; "isSignal": true; }; "xFormat": { "alias": "xFormat"; "required": false; "isSignal": true; }; "unit": { "alias": "unit"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; "isSignal": true; }; "emptyTitle": { "alias": "emptyTitle"; "required": false; "isSignal": true; }; "emptyDescription": { "alias": "emptyDescription"; "required": false; "isSignal": true; }; "animate": { "alias": "animate"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8001
8001
  }
8002
8002
 
8003
- export { AccordionComponent, AccountItemComponent, AlertComponent, AppLayoutComponent, AvatarComponent, BreadcrumbComponent, ButtonComponent, CHART_CATEGORICAL_TONES, CHART_SEMANTIC_TONES, CHART_TONES, CaptchaFieldComponent, CardComponent, CarouselComponent, CheckboxComponent, ChipComponent, CircularProgressComponent, CodeFieldComponent, CountdownComponent, CountdownRingComponent, DescriptionListComponent, DividerComponent, DrawerComponent, DropdownComponent, EVENT_KINDS, EVENT_KIND_ICON, EleniaBubbleComponent, EleniaOrbComponent, EmptyStateComponent, FlexComponent, FormComponent, FormFieldComponent, FormSectionComponent, HeaderBarComponent, ILLUSTRATIONS, ILLUSTRATION_ALIAS, ILLUSTRATION_NAMES, IUS_FILTER_OPERATORS, IUS_TOAST_DEFAULT_DURATION, IUS_TOAST_DEFAULT_ICON, IconButtonComponent, IllustrationComponent, InsigniaComponent, IusAccountItemNameDirective, IusAccountItemSubtitleDirective, IusAccountItemTrailingDirective, IusAlertActionsDirective, IusAlertTrailingDirective, IusCardFooterDirective, IusCardHeaderDirective, IusDrawerFooterDirective, IusDrawerHeaderActionsDirective, IusDrawerTitleDirective, IusDropdownTriggerDirective, IusFormFooterDirective, IusListCardLeadingDirective, IusListCardOverlineDirective, IusListCardParagraphDirective, IusListCardSubtitleDirective, IusListCardTitleDirective, IusListViewFiltersDirective, IusListViewFooterEndDirective, IusListViewFooterStartDirective, IusListViewHeaderEndDirective, IusListViewHeaderStartDirective, IusListViewToolbarDirective, IusMenuItemTrailingDirective, IusModalFooterDirective, IusPageHeaderActionsDirective, IusPageHeaderBreadcrumbDirective, IusPageHeaderOverlineDirective, IusPageHeaderSubtitleDirective, IusPageHeaderTitleDirective, IusPageHeaderToolbarDirective, IusPersonItemNameDirective, IusPersonItemTrailingDirective, IusSectionTitleActionDirective, IusSettingsNavFooterDirective, IusSettingsNavHeaderDirective, IusStatCaptionDirective, IusStatDeltaDirective, IusStatDeltaLabelDirective, IusStatLabelDirective, IusStatSparklineDirective, IusTagPrefixDirective, IusTagSuffixDirective, IusToastActionDirective, IusUserMenuFooterDirective, LineChartComponent, LinearProgressBarComponent, ListCardComponent, ListViewComponent, LoadingComponent, LoadingMarkComponent, MenuComponent, MenuItemComponent, ModalComponent, MultiTextFieldComponent, NavUserComponent, NumberFieldComponent, ORB_PERIODS, OauthButtonComponent, OptionItemComponent, PageHeaderComponent, PersonItemComponent, PersonPickerComponent, PlanUsageItemComponent, PopoverComponent, QueryBuilderComponent, STATUS_TONES, STATUS_VOCAB, STATUS_VOCABS, STATUS_VOCABS_PENDING, ScrollAreaComponent, SearchBarComponent, SectionHeaderComponent, SectionTitleComponent, SegmentGroupComponent, SegmentedControlComponent, SelectComponent, SettingsNavComponent, ShowMoreComponent, SkeletonComponent, SparklineComponent, SplitterComponent, StatComponent, StatGroupComponent, StatusChipComponent, StatusStateComponent, TableComponent, TabsComponent, TagComponent, TextAreaComponent, TextButtonComponent, TextComponent, TextFieldComponent, TimelineComponent, ToastComponent, ToastService, ToastViewportComponent, TooltipComponent, UserMenuComponent, WizardComponent, WizardController, WizardNavComponent, chartAxisTicks, chartFormatValue, chartLinearPath, chartNiceNum, chartPath, chartPrefersReducedMotion, chartSmoothPath, chartToneAt, chartToneVar, createWizard, eventKindOptions, iusSegColor, pose, poseIso, poseSpeaking, poseThinking, renderCubeSvg, resolveEventIcon, resolveIllustration, resolveStatus, statusOptions, statusOrder, statusToneVars, statusVocab, voiceEnv };
8004
- export type { ActuacionStatus, AlertSize, AlertTone, AlertVariant, ChartCategoricalTone, ChartCurve, ChartPoint, ChartSemanticTone, ChartTone, CountdownDirection, CountdownFormat, CountdownRingSize, CountdownRingTone, DescriptionListItem, DescriptionListLayout, DescriptionListSize, DescriptionListValueClick, EventIconSource, EventKind, EventKindOption, GestionStatus, IllustrationEntry, IllustrationName, IllustrationSize, IusAccordionItem, IusAccordionVariant, IusAccountItemAction, IusAccountItemState, IusAppLayoutAccent, IusAvatarColor, IusAvatarShape, IusAvatarSize, IusBreadcrumbItem, IusBreadcrumbNavigate, IusBreadcrumbSeparator, IusBreadcrumbSize, IusButtonActionResult, IusButtonSize, IusButtonStatus, IusButtonType, IusButtonVariant, IusCaptchaAppearance, IusCaptchaFieldHandle, IusCaptchaProvider, IusCaptchaSize, IusCaptchaState, IusCaptchaTheme, IusCardAs, IusCardPadding, IusCardRadius, IusCardVariant, IusCarouselImage, IusCarouselImageInput, IusCarouselObjectFit, IusCarouselOrder, IusCarouselOverlay, IusCarouselTransition, IusCheckboxLabelPosition, IusCheckboxSize, IusChipSize, IusChipState, IusCircularProgressSize, IusCircularProgressTone, IusCodeFieldSize, IusDividerOrientation, IusDividerTextAlign, IusDividerVariant, IusDrawerSide, IusDrawerSize, IusDropdownItem, IusDropdownTone, IusDropdownVariant, IusEleniaBubblePosition, IusEleniaBubbleSize, IusEleniaOrbMood, IusEleniaOrbSurface, IusEmptyStateAction, IusEmptyStateSize, IusEmptyStateTone, IusEmptyStateVariant, IusFilterField, IusFilterFieldOption, IusFilterFieldType, IusFilterRule, IusFilterValue, IusFlexAlign, IusFlexDirection, IusFlexGap, IusFlexJustify, IusFormColumns, IusFormError, IusFormFieldSpan, IusFormSectionVariant, IusIconButtonShape, IusIconButtonSize, IusIconButtonVariant, IusInsigniaSize, IusInsigniaTone, IusInsigniaVariant, IusLineChartPoints, IusLineSeries, IusLinearProgressSegment, IusLinearProgressSize, IusLinearProgressTone, IusListCardAction, IusListCardField, IusListCardMarker, IusListCardMenuItem, IusListCardSize, IusListCardStatus, IusListCardTag, IusListCardTone, IusListViewAction, IusListViewSize, IusListViewSortOption, IusLoadingMarkSurface, IusLoadingVariant, IusMenuItemSize, IusMenuItemState, IusMenuItemVariant, IusMenuOption, IusModalCloseReason, IusModalIconTone, IusModalSize, IusMultiTextFieldSize, IusMultiTextFieldSlot, IusMultiTextFieldState, IusNavUserAccount, IusNavUserLayout, IusNavUserUser, IusOAuthButtonSize, IusOAuthButtonType, IusOAuthProvider, IusOptionItemSize, IusOptionItemState, IusPageHeaderTitleLevel, IusPersonId, IusPersonItemAction, IusPersonItemSize, IusPersonItemState, IusPersonItemVariant, IusPersonOption, IusPersonPickerSelectedContext, IusPlanUsageAction, IusPlanUsageLegend, IusPlanUsageStatus, IusPopoverPadding, IusPopoverPlacement, IusPopoverTrigger, IusQueryBuilderSize, IusScrollAxis, IusScrollSize, IusSearchBarSize, IusSearchBarState, IusSectionHeaderAccent, IusSectionHeaderVariant, IusSectionTitleAs, IusSectionTitleHelpTrigger, IusSectionTitleSize, IusSegmentedSize, IusSegmentedVariant, IusSelectCreateFactory, IusSelectSize, IusSelectState, IusSelectValue, IusSettingsNavAccent, IusSettingsNavItem, IusSettingsNavSize, IusShowMoreAlign, IusSkeletonAnimation, IusSkeletonVariant, IusSparklineVariant, IusSplitterAccent, IusSplitterOrientation, IusStatAlign, IusStatSize, IusStatTone, IusStatusChipSize, IusStatusChipTone, IusStatusKind, IusTabItem, IusTabTag, IusTableAlign, IusTableCellContext, IusTableColumn, IusTableHeaderContext, IusTableRowClick, IusTableRowKey, IusTableRowStyle, IusTableSize, IusTableSortChange, IusTableSortDirection, IusTableSummaryCell, IusTableTone, IusTabsAccent, IusTabsSize, IusTagRole, IusTagShape, IusTagSize, IusTagState, IusTagTone, IusTagVariant, IusTextAlign, IusTextAreaSize, IusTextAreaState, IusTextButtonSize, IusTextButtonType, IusTextColor, IusTextFieldSize, IusTextFieldType, IusTextTag, IusTextVariant, IusTextWeight, IusTimelineAccent, IusTimelineAssignee, IusTimelineAttachment, IusTimelineAttachmentClick, IusTimelineItem, IusTimelineItemState, IusTimelineSize, IusTimelineTag, IusTimelineTagTone, IusToastItem, IusToastOptions, IusToastPosition, IusToastTone, IusTooltipTrigger, IusUserMenuAccount, IusUserMenuAccountOption, IusUserMenuItem, IusUserMenuOrigin, IusUserMenuService, IusUserMenuUser, OrbMood, OrbPose, SegmentedOption, SelectOption, SelectOptionGroup, StatusMeta, StatusOption, StatusTone, StatusToneVars, StatusVocabMap, StatusVocabName, UseWizardOptions, WizardApi, WizardStep };
8003
+ /** Familia de color válida (semánticas + frutas + neutral). */
8004
+ type Hue = 'primary' | 'info' | 'success' | 'warning' | 'danger' | 'durazno' | 'banano' | 'sandia' | 'arandano' | 'uva' | 'aguacate' | 'neutral';
8005
+ /**
8006
+ * Categorías del catálogo central. Los módulos lo extienden en runtime con
8007
+ * `customMap`, así que donde se acepte una categoría se admite también `string`.
8008
+ */
8009
+ type CategoryKey = 'termino' | 'plazo' | 'vencido' | 'pago' | 'audiencia' | 'diligencia' | 'tarea' | 'reunion' | 'recordatorio' | 'notificacion' | 'evento' | 'libre' | (string & {});
8010
+ interface CategoryDef {
8011
+ label: string;
8012
+ hue: Hue;
8013
+ /** `state` = comunica urgencia (semántica) · `identity` = sin estado (fruta). */
8014
+ tone: 'state' | 'identity';
8015
+ }
8016
+ /** Definición central: category → { label legible, hue (familia de color), tone }. */
8017
+ declare const CATEGORY_DEF: Readonly<Record<string, CategoryDef>>;
8018
+ /** Mapa directo category → hue (paralelo a EVENT_KIND_ICON). */
8019
+ declare const CATEGORY_HUE: Readonly<Record<string, Hue>>;
8020
+ /** Lista de categorías reconocidas (orden del catálogo). */
8021
+ declare const CATEGORIES: readonly string[];
8022
+ /** Objeto con forma `{ category?, hue? }` cuyo hue se resuelve contra el catálogo. */
8023
+ interface CategoryHueSource {
8024
+ category?: string;
8025
+ hue?: Hue;
8026
+ }
8027
+ /** Tokens de color resueltos para un hue/categoría — todos strings `var(--ius-*)`. */
8028
+ interface CategoryColors {
8029
+ /** Punto / ícono / barra de acento (hue-600). */
8030
+ accent: string;
8031
+ /** Fondo suave del pill (hue-100). */
8032
+ fill: string;
8033
+ /** Borde del pill (hue-200). */
8034
+ border: string;
8035
+ /** Texto sobre `fill` (hue-800). */
8036
+ text: string;
8037
+ /** Relleno fuerte / punto compacto (hue-500). */
8038
+ solid: string;
8039
+ /** Texto sobre `solid`. */
8040
+ onSolid: string;
8041
+ hue: Hue;
8042
+ }
8043
+ /** Opción lista para un dropdown/leyenda (value · label · hue). */
8044
+ interface CategoryOption {
8045
+ value: string;
8046
+ label: string;
8047
+ hue: Hue;
8048
+ }
8049
+ /**
8050
+ * Resuelve el **hue** de un objeto `{ category?, hue? }`. Orden:
8051
+ * 1. `hue` (escape hatch directo) → 2. `customMap[category]` (extensión por
8052
+ * módulo) → 3. Catálogo central → 4. `'neutral'` (fallback seguro).
8053
+ */
8054
+ declare function resolveCategoryHue(o: CategoryHueSource | null | undefined, customMap?: Readonly<Record<string, Hue>>): Hue;
8055
+ /**
8056
+ * Devuelve los tokens de color resueltos para un hue, listos para EventPill:
8057
+ * accent — punto / ícono / barra (hue-600)
8058
+ * fill — fondo suave del pill (hue-100)
8059
+ * border — borde del pill (hue-200)
8060
+ * text — texto sobre fill (hue-800)
8061
+ * solid — relleno fuerte / punto compacto (hue-500)
8062
+ * onSolid — texto sobre solid
8063
+ * Acepta un hue (string) o un objeto `{ category?, hue? }`.
8064
+ */
8065
+ declare function categoryColors(hueOrObj: Hue | CategoryHueSource, customMap?: Readonly<Record<string, Hue>>): CategoryColors;
8066
+ /** Opciones listas para un dropdown/leyenda (value · label · hue). */
8067
+ declare function categoryOptions(): CategoryOption[];
8068
+
8069
+ /** Hue categórico (identidad, nunca estado). */
8070
+ type FileTypeHue = 'primary' | 'neutral' | 'durazno' | 'banano' | 'sandia' | 'arandano' | 'uva' | 'aguacate';
8071
+ /** Kinds de sistema de archivos. */
8072
+ type FileKindFs = 'folder' | 'folderShared' | 'pdf' | 'doc' | 'sheet' | 'slide' | 'image' | 'video' | 'audio' | 'archive' | 'code' | 'text' | 'email' | 'generic';
8073
+ /** Kinds de dominio (ecosistema jurídico). */
8074
+ type FileKindDomain = 'cliente' | 'expediente' | 'proceso' | 'actuacion' | 'actividad' | 'usuario';
8075
+ type FileKind = FileKindFs | FileKindDomain;
8076
+ interface FileKindDef {
8077
+ label: string;
8078
+ icon: string;
8079
+ hue: FileTypeHue;
8080
+ group: 'fs' | 'domain';
8081
+ }
8082
+ interface FileKindMeta extends FileKindDef {
8083
+ kind: FileKind;
8084
+ }
8085
+ interface FileKindOption {
8086
+ value: FileKind;
8087
+ label: string;
8088
+ icon: string;
8089
+ hue: FileTypeHue;
8090
+ }
8091
+ /** Vocabulario de tipos: `kind → { label, icon, hue, group }`. */
8092
+ declare const KIND_DEF: Readonly<Record<FileKind, FileKindDef>>;
8093
+ /** Tipo de reserva para un kind desconocido. */
8094
+ declare const KIND_FALLBACK: FileKindDef;
8095
+ /** Lista de kinds reconocidos (orden del catálogo). */
8096
+ declare const KINDS: readonly FileKind[];
8097
+ /** Extensión de archivo → kind. Fuente de verdad para resolver por nombre. */
8098
+ declare const EXT_KIND: Readonly<Record<string, FileKind>>;
8099
+ /** Extrae la extensión (en minúsculas, sin punto) de un nombre de archivo. */
8100
+ declare function extOf(name: string | undefined | null): string;
8101
+ /**
8102
+ * Resuelve a una clave de kind conocida. Orden:
8103
+ * 1) `kind` explícito si ya es un kind del catálogo
8104
+ * 2) extensión de `name` (o del propio `kind` si vino una extensión suelta)
8105
+ * 3) `'generic'`
8106
+ */
8107
+ declare function resolveKind(kind?: string | null, name?: string | null): FileKind;
8108
+ /** Definición completa de un kind (con fallback seguro). */
8109
+ declare function kindMeta(kind?: string | null, name?: string | null): FileKindMeta;
8110
+ /** Ícono (Material Symbols) de un kind. */
8111
+ declare function kindIcon(kind?: string | null, name?: string | null): string;
8112
+ /** Etiqueta legible de un kind. */
8113
+ declare function kindLabel(kind?: string | null, name?: string | null): string;
8114
+ /** Hue categórico de un kind. */
8115
+ declare function kindHue(kind?: string | null, name?: string | null): FileTypeHue;
8116
+ /** Opciones para filtro/dropdown «Tipo» (value · label · icon · hue), filtrable por grupo. */
8117
+ declare function kindOptions(group?: 'fs' | 'domain'): FileKindOption[];
8118
+
8119
+ /** glyph = ícono sin caja (default, look explorador) · tile = medallón hue-100/200 · solid = relleno hue-500 + glifo blanco. */
8120
+ type IusFileTypeIconVariant = 'glyph' | 'tile' | 'solid';
8121
+ /** Lado del glifo: small 20 · medium 26 · large 34 · xlarge 48 px (estructural, glyph-en-contenedor). */
8122
+ type IusFileTypeIconSize = 'small' | 'medium' | 'large' | 'xlarge';
8123
+ /**
8124
+ * FileTypeIcon — Ius Design v2 (familia data-display).
8125
+ *
8126
+ * Ícono de tipo estilo explorador: un glifo (o miniatura real) que identifica un
8127
+ * archivo, carpeta o entidad de dominio, pintado en su **hue categórico**
8128
+ * (identidad, nunca estado). Resuelve el kind desde `kind` explícito o la
8129
+ * extensión de `name` (catálogo `file-kind-catalog.ts`: `KIND_DEF` / `EXT_KIND`
8130
+ * / `resolveKind`). Átomo consumido por FileItem, la tabla del explorador,
8131
+ * breadcrumbs de entidad y cualquier lista que necesite identificar un tipo de
8132
+ * un vistazo.
8133
+ *
8134
+ * El host es el `<span class="ius-ftype">` raíz del golden. No lleva
8135
+ * `--ius-control-size`: lo dimensiona el host vía `size`. Sin outputs (no es
8136
+ * interactivo). Fuente de verdad: `FileTypeIcon.jsx` + `FileTypeIcon.d.ts` +
8137
+ * `FileTypeIcon.ng-spec.md`.
8138
+ */
8139
+ declare class FileTypeIconComponent {
8140
+ /** Tipo (fs o dominio). Sin default: si no es kind conocido, resuelve por `name`. */
8141
+ kind?: FileKind | string;
8142
+ /** Nombre del archivo — su extensión resuelve el kind cuando `kind` no basta. */
8143
+ name?: string;
8144
+ /** Fuerza el hue (por defecto el del kind). */
8145
+ hue?: FileTypeHue;
8146
+ /** Fuerza el ícono Material Symbols por encima del kind. */
8147
+ icon?: string;
8148
+ /** Miniatura real (portada de PDF, thumbnail de imagen) → `<img>` en vez del glifo. */
8149
+ thumbnail?: string;
8150
+ /** Tratamiento visual. */
8151
+ variant: IusFileTypeIconVariant;
8152
+ /** Lado del glifo. */
8153
+ size: IusFileTypeIconSize;
8154
+ /** Título accesible / tooltip (por defecto la etiqueta del kind). */
8155
+ title?: string;
8156
+ /** Decorativo (`aria-hidden`). `false` cuando el ícono sea la única señal de tipo (`role=img` + `aria-label`). */
8157
+ decorative: boolean;
8158
+ private get meta();
8159
+ protected get effHue(): FileTypeHue;
8160
+ protected get effIcon(): string;
8161
+ /** Etiqueta accesible: `title` explícito o la etiqueta del kind resuelto. */
8162
+ protected get label(): string;
8163
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileTypeIconComponent, never>;
8164
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileTypeIconComponent, "ius-file-type-icon", never, { "kind": { "alias": "kind"; "required": false; }; "name": { "alias": "name"; "required": false; }; "hue": { "alias": "hue"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "thumbnail": { "alias": "thumbnail"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "size": { "alias": "size"; "required": false; }; "title": { "alias": "title"; "required": false; }; "decorative": { "alias": "decorative"; "required": false; }; }, {}, never, never, true, never>;
8165
+ static ngAcceptInputType_decorative: unknown;
8166
+ }
8167
+
8168
+ /** Cada cara de la pila: subconjunto de las props de Avatar + id/onClick opcionales. */
8169
+ interface IusAvatarStackItem {
8170
+ /** Clave estable para el render (recomendado en listas dinámicas). */
8171
+ id?: string | number;
8172
+ src?: string;
8173
+ name?: string;
8174
+ monogram?: string;
8175
+ icon?: string;
8176
+ color?: IusAvatarColor;
8177
+ ariaLabel?: string;
8178
+ /** Click sobre esta cara concreta (si se maneja por item). */
8179
+ onClick?: (event: MouseEvent) => void;
8180
+ }
8181
+ /** Payload de `itemClick`: la cara, su índice y el evento. */
8182
+ interface IusAvatarStackItemClick {
8183
+ item: IusAvatarStackItem;
8184
+ index: number;
8185
+ event: MouseEvent;
8186
+ }
8187
+ /** Estilo inline aplicable a cada cara o al «+N» (p. ej. `{ '--_avt-bg': …, '--_avt-fg': … }`). */
8188
+ type IusAvatarStackStyle = Record<string, string>;
8189
+ /**
8190
+ * AvatarStack — Ius Design v2 (familia data-display).
8191
+ *
8192
+ * Pila de avatares **solapados** que representa varios participantes de un mismo
8193
+ * objeto (responsables de un evento, miembros de un proceso, asistentes a una
8194
+ * audiencia). Muestra hasta `max` medallones encimados y resume el resto en un
8195
+ * círculo **«+N»** neutro, para no desbordar contextos estrechos (un EventPill,
8196
+ * una fila de tabla). Reusa `ius-avatar` por cara (hereda tamaños y formas); un
8197
+ * anillo del color de la superficie separa los medallones encimados.
8198
+ *
8199
+ * Para **2+ personas**; una sola → `ius-avatar` directo. El host es el
8200
+ * `<span class="ius-as" role="group">` raíz del golden. Fuente de verdad:
8201
+ * `AvatarStack.jsx` + `AvatarStack.d.ts` + `AvatarStack.ng-spec.md`.
8202
+ *
8203
+ * Decisión de port: el golden declara `onItemClick` pero no lo cablea a las caras;
8204
+ * aquí `itemClick` sí se emite al pulsar una cara (además de `item.onClick`).
8205
+ */
8206
+ declare class AvatarStackComponent {
8207
+ private _items;
8208
+ /** Personas a apilar. `string` se interpreta como `{ name }`. */
8209
+ set items(value: ReadonlyArray<IusAvatarStackItem | string> | null | undefined);
8210
+ get items(): IusAvatarStackItem[];
8211
+ /** Máximo de caras visibles antes del «+N». `0` = mostrar todas. */
8212
+ max: number;
8213
+ /** Total real cuando `items` ya viene truncado; el «+N» se calcula contra esto. */
8214
+ total?: number;
8215
+ /** Tamaño de cada avatar (se propaga a `ius-avatar`). */
8216
+ size: IusAvatarSize;
8217
+ /** Forma de cada avatar. */
8218
+ shape: IusAvatarShape;
8219
+ /** Color del anillo separador. Sobre un fondo de color pasar ese color. */
8220
+ ring: string;
8221
+ /** Grosor del anillo. Número (px) o string CSS. */
8222
+ ringWidth?: number | string;
8223
+ /** Solape entre medallones. Número (px) o string CSS; default por tamaño. */
8224
+ overlap?: number | string;
8225
+ /** Estilo de **cada** cara (tiñe a un tono: `--_avt-bg` / `--_avt-fg`). */
8226
+ itemStyle?: IusAvatarStackStyle;
8227
+ /** Estilo del «+N» (`background` / `color`) para teñirlo en contenedores de color. */
8228
+ moreStyle?: IusAvatarStackStyle;
8229
+ /** Texto/tooltip alterno del «+N» (default: nombres restantes). */
8230
+ moreLabel?: string;
8231
+ /** Etiqueta accesible del grupo. */
8232
+ ariaLabel?: string;
8233
+ /** Click sobre cualquier cara (además de `item.onClick`). */
8234
+ readonly itemClick: EventEmitter<IusAvatarStackItemClick>;
8235
+ /** Click sobre el «+N» (abrir lista completa, popover…). Lo vuelve un botón. */
8236
+ readonly moreClick: EventEmitter<MouseEvent>;
8237
+ protected get ringWidthCss(): string | null;
8238
+ protected get overlapCss(): string | null;
8239
+ /** Total contra el que se calcula el excedente. */
8240
+ protected get totalCount(): number;
8241
+ /** `max` 0 o negativo → todas. */
8242
+ protected get limit(): number;
8243
+ protected get visible(): IusAvatarStackItem[];
8244
+ protected get extra(): number;
8245
+ protected get moreClickable(): boolean;
8246
+ /** Tooltip del «+N»: `moreLabel` o los nombres restantes. */
8247
+ protected get moreTitle(): string | null;
8248
+ protected get moreAria(): string;
8249
+ /** Sin foto/nombre/monograma el medallón cae al ícono `person` (golden). */
8250
+ protected iconFor(it: IusAvatarStackItem): string | undefined;
8251
+ protected trackItem(it: IusAvatarStackItem, index: number): string | number;
8252
+ protected onItemClick(item: IusAvatarStackItem, index: number, event: MouseEvent): void;
8253
+ protected onMoreClick(event: MouseEvent): void;
8254
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AvatarStackComponent, never>;
8255
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AvatarStackComponent, "ius-avatar-stack", never, { "items": { "alias": "items"; "required": false; }; "max": { "alias": "max"; "required": false; }; "total": { "alias": "total"; "required": false; }; "size": { "alias": "size"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "ring": { "alias": "ring"; "required": false; }; "ringWidth": { "alias": "ringWidth"; "required": false; }; "overlap": { "alias": "overlap"; "required": false; }; "itemStyle": { "alias": "itemStyle"; "required": false; }; "moreStyle": { "alias": "moreStyle"; "required": false; }; "moreLabel": { "alias": "moreLabel"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "itemClick": "itemClick"; "moreClick": "moreClick"; }, never, never, true, never>;
8256
+ static ngAcceptInputType_max: unknown;
8257
+ static ngAcceptInputType_total: unknown;
8258
+ }
8259
+
8260
+ /** `bar` = línea del mes · `block` = bloque de semana/día/agenda (ocupa el alto, con lugar y responsable). */
8261
+ type IusEventPillVariant = 'bar' | 'block';
8262
+ /** soft = resaltador translúcido · plain = transparente con punto · solid = relleno · gradient = resaltador en degradado. */
8263
+ type IusEventPillFill = 'soft' | 'plain' | 'solid' | 'gradient';
8264
+ type IusEventPillSize = 'small' | 'medium' | 'large';
8265
+ /** Responsable de un evento (objeto). Un `string` suelto se interpreta como `{ name }`. */
8266
+ interface IusEventAssignee {
8267
+ /** Nombre completo → iniciales + color auto + etiqueta. */
8268
+ name?: string;
8269
+ /** URL de la foto (prioridad sobre iniciales/ícono). */
8270
+ src?: string;
8271
+ /** Monograma explícito. */
8272
+ monogram?: string;
8273
+ /** Ícono Material Symbols (si no hay foto ni nombre, default `person`). */
8274
+ icon?: string;
8275
+ /** Familia de color del Avatar. Por defecto **hereda el tono del pill**. */
8276
+ color?: IusAvatarColor;
8277
+ id?: string | number;
8278
+ }
8279
+ /**
8280
+ * EventPill — Ius Design v2 (familia data-display).
8281
+ *
8282
+ * Token visual de un evento del calendario/agenda. El color sale de su
8283
+ * `category` (vía **CategoryPalette**) y el ícono de su `kind` (vía
8284
+ * **EventCatalog**). Es el átomo que pinta el Scheduler en mes, semana, día y
8285
+ * agenda. No gestiona datos ni posición: solo se pinta con lo que recibe.
8286
+ *
8287
+ * El host es la raíz `.ius-ep` del golden (div, o button cuando hay `onClick`):
8288
+ * con `(clicked)` enlazado se vuelve `role=button` enfocable y responde a
8289
+ * Enter/Espacio. Acabados (`fill`): `soft` = resaltador translúcido (el fondo se
8290
+ * transparenta; hover intensifica), `plain` = transparente con punto de acento,
8291
+ * `solid` = relleno con texto encima (hover oscurece), `gradient` = resaltador en
8292
+ * degradado. Fuente de verdad: `EventPill.jsx` + `EventPill.d.ts` +
8293
+ * `EventPill.ng-spec.md`.
8294
+ */
8295
+ declare class EventPillComponent {
8296
+ /** Título del evento (alternativa a proyectar contenido). */
8297
+ title?: string;
8298
+ /** Hora ya formateada (p. ej. «9:00»). */
8299
+ time?: string;
8300
+ /** Hora de fin ya formateada; junto a `time` muestra el rango «time–endTime». */
8301
+ endTime?: string;
8302
+ /** Categoría → color (vía CategoryPalette). */
8303
+ category?: CategoryKey;
8304
+ /** Escape hatch de color: hue directo (ignora `category`). */
8305
+ hue?: Hue;
8306
+ /** Tipo de evento → ícono (vía EventCatalog). */
8307
+ kind?: string;
8308
+ /** Escape hatch de ícono Material Symbols (ignora `kind`). */
8309
+ icon?: string;
8310
+ /** Extensión por módulo: category → hue. */
8311
+ customHues?: Readonly<Record<string, Hue>>;
8312
+ /** Extensión por módulo: kind → ícono. */
8313
+ customIcons?: Readonly<Record<string, string>>;
8314
+ variant: IusEventPillVariant;
8315
+ fill: IusEventPillFill;
8316
+ size: IusEventPillSize;
8317
+ /** Lugar/ciudad (solo en `block`). */
8318
+ location?: string;
8319
+ /** Texto secundario al final (radicado, conteo…). */
8320
+ meta?: string;
8321
+ private _assignees;
8322
+ /** Responsable(s) (solo en `block`). Uno → Avatar xsmall + nombre; varios → AvatarStack «+N». */
8323
+ set assignee(value: IusEventAssignee | string | ReadonlyArray<IusEventAssignee | string> | null | undefined);
8324
+ get assignee(): IusEventAssignee[];
8325
+ /** Mostrar el responsable cuando hay `assignee`. */
8326
+ showAssignee: boolean;
8327
+ /** Mostrar el ícono del kind como lead (en `block` se muestra siempre). */
8328
+ showIcon: boolean;
8329
+ /** Mostrar punto de acento cuando no hay ícono. */
8330
+ showDot: boolean;
8331
+ /** Máximo de líneas del título antes de recortar (line-clamp). */
8332
+ titleLines?: number;
8333
+ /** Resaltado/seleccionado (anillo de foco). */
8334
+ selected: boolean;
8335
+ /** Evento pasado → atenuado. */
8336
+ past: boolean;
8337
+ /** Hover en pills NO-button pero interactivas (drag del TimeGrid). */
8338
+ hoverable: boolean;
8339
+ ariaLabel?: string;
8340
+ /** Click sobre el pill; enlazarlo lo vuelve `role=button` (original `onClick`). */
8341
+ readonly clicked: EventEmitter<MouseEvent | KeyboardEvent>;
8342
+ protected get clickable(): boolean;
8343
+ /** Tokens del hue resuelto: `hue` (escape) › `customHues[category]` › catálogo › neutral. */
8344
+ protected get colors(): CategoryColors;
8345
+ /** Ícono del lead: solo con `showIcon` o en `block` (EventCatalog: icon › customIcons › catálogo). */
8346
+ protected get resolvedIcon(): string | null;
8347
+ protected get timeText(): string | null;
8348
+ protected get clampTitle(): boolean;
8349
+ protected get who(): IusEventAssignee | null;
8350
+ protected get showAssignees(): boolean;
8351
+ /** Anillo de la pila: el color del fondo del pill, para que no se note. */
8352
+ protected get stackRing(): string;
8353
+ /** Tinte de las caras al hue del pill: sobre fills claros → acento + glifo claro; sobre solid → tinte claro + glifo oscuro. */
8354
+ protected get stackItemStyle(): IusAvatarStackStyle;
8355
+ /** El «+N» toma el mismo tinte (background/color, no son vars de Avatar). */
8356
+ protected get stackMoreStyle(): IusAvatarStackStyle;
8357
+ protected get stackItems(): IusAvatarStackItem[];
8358
+ /** Uno → medallón tintado al hue del pill (hereda si no trae color propio). */
8359
+ protected get whoStyle(): IusAvatarStackStyle | null;
8360
+ protected get whoIcon(): string | undefined;
8361
+ protected onHostClick(event: MouseEvent): void;
8362
+ protected onKeydown(event: KeyboardEvent): void;
8363
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EventPillComponent, never>;
8364
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EventPillComponent, "ius-event-pill", never, { "title": { "alias": "title"; "required": false; }; "time": { "alias": "time"; "required": false; }; "endTime": { "alias": "endTime"; "required": false; }; "category": { "alias": "category"; "required": false; }; "hue": { "alias": "hue"; "required": false; }; "kind": { "alias": "kind"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "customHues": { "alias": "customHues"; "required": false; }; "customIcons": { "alias": "customIcons"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "fill": { "alias": "fill"; "required": false; }; "size": { "alias": "size"; "required": false; }; "location": { "alias": "location"; "required": false; }; "meta": { "alias": "meta"; "required": false; }; "assignee": { "alias": "assignee"; "required": false; }; "showAssignee": { "alias": "showAssignee"; "required": false; }; "showIcon": { "alias": "showIcon"; "required": false; }; "showDot": { "alias": "showDot"; "required": false; }; "titleLines": { "alias": "titleLines"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "past": { "alias": "past"; "required": false; }; "hoverable": { "alias": "hoverable"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "clicked": "clicked"; }, never, ["*", "*"], true, never>;
8365
+ static ngAcceptInputType_showAssignee: unknown;
8366
+ static ngAcceptInputType_showIcon: unknown;
8367
+ static ngAcceptInputType_showDot: unknown;
8368
+ static ngAcceptInputType_titleLines: unknown;
8369
+ static ngAcceptInputType_selected: unknown;
8370
+ static ngAcceptInputType_past: unknown;
8371
+ static ngAcceptInputType_hoverable: unknown;
8372
+ }
8373
+
8374
+ type IusPartyListConnector = 'vs' | 'contra' | 'y';
8375
+ type IusPartyListSize = 'small' | 'medium' | 'large';
8376
+ /** Un lado ya limpio (sin «No registra») listo para pintar. */
8377
+ interface PartySide {
8378
+ shown: string;
8379
+ extra: number;
8380
+ missing: boolean;
8381
+ }
8382
+ /**
8383
+ * PartyList — Ius Design v2 (familia data-display).
8384
+ *
8385
+ * Render canónico de las **partes procesales** de un proceso, en una sola línea:
8386
+ * primer nombre por lado + contador de excedente («+N») unidos por un conector
8387
+ * («vs» por defecto). Un solo lado se muestra sin conector. Siempre muestra al
8388
+ * menos un nombre por lado cuando hay datos.
8389
+ *
8390
+ * Encapsula además la regla de **dato faltante**: cuando no hay partes
8391
+ * registradas (vacío o «No registra»), en vez de imprimir el vacío **invita a
8392
+ * completar** la información (`(complete)`). Es el equivalente de AvatarStack
8393
+ * para nombres: una sola fuente de verdad para el «+N», el conector y el estado
8394
+ * vacío. No es para avatares (AvatarStack) ni para etiquetas de estado (Tag).
8395
+ *
8396
+ * El host es el `<span class="ius-partylist">` raíz del golden. Fuente de verdad:
8397
+ * `PartyList.jsx` + `PartyList.d.ts` + `PartyList.ng-spec.md`.
8398
+ */
8399
+ declare class PartyListComponent {
8400
+ /** Lados del proceso: cada lado es un arreglo de nombres. Ej. `[['Banco X'], ['Deudor A','Deudor B']]`. */
8401
+ sides?: ReadonlyArray<readonly string[]>;
8402
+ /** Atajo legible para el lado demandante (se combina con `demandados`). */
8403
+ demandantes?: readonly string[];
8404
+ /** Atajo legible para el lado demandado. */
8405
+ demandados?: readonly string[];
8406
+ /** Conector entre lados. */
8407
+ connector: IusPartyListConnector;
8408
+ /** Nombres visibles por lado antes del «+N». */
8409
+ max: number;
8410
+ /** Tamaño tipográfico. */
8411
+ size: IusPartyListSize;
8412
+ /** Texto cuando no hay partes registradas. */
8413
+ emptyLabel: string;
8414
+ /** Texto del invite a completar. */
8415
+ completeLabel: string;
8416
+ /** Invite accionable del estado vacío (original `onComplete`); enlazarlo lo muestra. */
8417
+ readonly complete: EventEmitter<MouseEvent>;
8418
+ /** Click en el «+N» (original `onOverflowClick`); enlazarlo lo vuelve botón. */
8419
+ readonly overflowClick: EventEmitter<MouseEvent>;
8420
+ /** Normaliza la entrada a lados limpios (sin «No registra»). */
8421
+ private get cleaned();
8422
+ protected get isEmpty(): boolean;
8423
+ protected get partySides(): PartySide[];
8424
+ protected get showComplete(): boolean;
8425
+ protected get overflowClickable(): boolean;
8426
+ protected onComplete(event: MouseEvent): void;
8427
+ protected onOverflow(event: MouseEvent): void;
8428
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PartyListComponent, never>;
8429
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PartyListComponent, "ius-party-list", never, { "sides": { "alias": "sides"; "required": false; }; "demandantes": { "alias": "demandantes"; "required": false; }; "demandados": { "alias": "demandados"; "required": false; }; "connector": { "alias": "connector"; "required": false; }; "max": { "alias": "max"; "required": false; }; "size": { "alias": "size"; "required": false; }; "emptyLabel": { "alias": "emptyLabel"; "required": false; }; "completeLabel": { "alias": "completeLabel"; "required": false; }; }, { "complete": "complete"; "overflowClick": "overflowClick"; }, never, never, true, never>;
8430
+ static ngAcceptInputType_max: unknown;
8431
+ }
8432
+
8433
+ type IusFileItemLayout = 'row' | 'card';
8434
+ type IusFileItemSize = 'small' | 'medium' | 'large';
8435
+ type IusFileItemActivateOn = 'single' | 'double';
8436
+ /** Columna de metadatos (row): etiqueta pequeña sobre el valor. */
8437
+ interface IusFileItemField {
8438
+ key?: string | number;
8439
+ label?: string;
8440
+ value: string;
8441
+ /** Ícono Material Symbols antes del valor. */
8442
+ icon?: string;
8443
+ /** Ancho fijo de la columna (px o CSS). */
8444
+ width?: number | string;
8445
+ align?: 'start' | 'end';
8446
+ }
8447
+ /** Acción rápida revelada en hover (IconButton). */
8448
+ interface IusFileItemAction {
8449
+ key?: string | number;
8450
+ icon: string;
8451
+ tooltip?: string;
8452
+ label?: string;
8453
+ ariaLabel?: string;
8454
+ onClick?: (event: MouseEvent) => void;
8455
+ }
8456
+ /** Etiqueta junto al nombre (subset de las props de Tag). */
8457
+ interface IusFileItemTag {
8458
+ key?: string | number;
8459
+ label: string;
8460
+ tone?: IusTagTone;
8461
+ variant?: IusTagVariant;
8462
+ icon?: string;
8463
+ dot?: boolean;
8464
+ }
8465
+ interface IusFileItemOwner {
8466
+ name?: string;
8467
+ avatar?: string;
8468
+ }
8469
+ /** Payload de `actionClick`: la acción y el evento del IconButton. */
8470
+ interface IusFileItemActionClick {
8471
+ action: IusFileItemAction;
8472
+ event: MouseEvent;
8473
+ }
8474
+ /**
8475
+ * FileItem — Ius Design v2 (familia data-display).
8476
+ *
8477
+ * Fila o tarjeta de un archivo, carpeta o entidad de dominio en el explorador de
8478
+ * documentos. Compone `ius-file-type-icon` con nombre, metadatos y señales del
8479
+ * explorador (selección, no-leído, compartido, destacado, etiquetas, dueño), con
8480
+ * acciones en hover y menú ⋮ (`ius-dropdown`). Dos layouts desde el mismo
8481
+ * contrato: `row` (lista/tabla con columnas `fields`) y `card` (cuadrícula con
8482
+ * vista previa). No para fila de negocio genérica (ListCard) ni persona/cuenta
8483
+ * (PersonItem/AccountItem).
8484
+ *
8485
+ * **Selección vs apertura**: clic simple = `clicked` (selección/foco; la
8486
+ * multi-selección la decide el consumidor); apertura = `opened` (doble clic /
8487
+ * Enter, o clic simple con `activateOn="single"`), o navega por `href`. La
8488
+ * casilla y el menú detienen la propagación. El host es la raíz `.ius-fileitem`
8489
+ * del golden. Fuente de verdad: `FileItem.jsx` + `FileItem.d.ts` +
8490
+ * `FileItem.ng-spec.md`.
8491
+ *
8492
+ * Decisión de port: el `onContextMenu` del golden se expone como `contextMenu`
8493
+ * (regla transversal 3: los outputs nunca llevan el nombre de un evento nativo,
8494
+ * y `contextmenu` dispararía doble). Se agrega `actionClick` para escuchar las
8495
+ * acciones rápidas sin depender del `onClick` de cada item.
8496
+ */
8497
+ declare class FileItemComponent {
8498
+ /** Tipo (fs o dominio) → FileTypeIcon. Se resuelve por `name` si no es conocido. */
8499
+ kind?: FileKind | string;
8500
+ /** Nombre del archivo/carpeta/entidad. Su extensión resuelve el kind. */
8501
+ name?: string;
8502
+ /** Miniatura real: en card ocupa el área de vista previa; en row va en el ícono. */
8503
+ thumbnail?: string;
8504
+ /** Fila (lista/tabla) o tarjeta (cuadrícula). */
8505
+ layout: IusFileItemLayout;
8506
+ /** Escala; también responde a `--ius-density` cuando no viene explícito. */
8507
+ size: IusFileItemSize;
8508
+ /** Navegación al abrir (si `(opened)` no está enlazado). */
8509
+ href?: string;
8510
+ /** Cómo se abre: doble clic (estilo explorador) o clic simple. */
8511
+ activateOn: IusFileItemActivateOn;
8512
+ /** Muestra la casilla de selección (visible en hover o si `selected`). */
8513
+ selectable: boolean;
8514
+ selected: boolean;
8515
+ /** Punto navy + nombre en negrita (no leído). */
8516
+ unread: boolean;
8517
+ /** Indicador de compartido. */
8518
+ shared: boolean;
8519
+ /** Destacado (estrella). `undefined` = sin estrella. */
8520
+ starred?: boolean;
8521
+ /** Etiquetas a la derecha del nombre (row). */
8522
+ tags: readonly IusFileItemTag[];
8523
+ /** Columnas de metadatos (row): modificado, tamaño, etc. */
8524
+ fields: readonly IusFileItemField[];
8525
+ /** Línea de metadatos bajo el nombre (card) o sub-línea (row). */
8526
+ caption?: string;
8527
+ /** Dueño/responsable → Avatar en la zona final (row). */
8528
+ owner?: IusFileItemOwner;
8529
+ /** Acciones rápidas reveladas en hover (IconButton). */
8530
+ actions: readonly IusFileItemAction[];
8531
+ /** Opciones del menú ⋮ (items de Dropdown). */
8532
+ menu: readonly IusDropdownItem[];
8533
+ disabled: boolean;
8534
+ ariaLabel?: string;
8535
+ /** Abrir el elemento (doble clic / Enter, o clic si `activateOn="single"`). Original `onOpen`. */
8536
+ readonly opened: EventEmitter<Event>;
8537
+ /** Clic simple (selección/foco). */
8538
+ readonly clicked: EventEmitter<MouseEvent>;
8539
+ /** Cambio de la casilla. Original `onSelectChange`. */
8540
+ readonly selectChange: EventEmitter<boolean>;
8541
+ /** Cambio de la estrella. Original `onStarChange`. */
8542
+ readonly starChange: EventEmitter<boolean>;
8543
+ /** Clic derecho (para anclar un ContextMenu). Original `onContextMenu`. */
8544
+ readonly contextMenu: EventEmitter<MouseEvent>;
8545
+ /** Acción rápida pulsada (además del `onClick` del item). */
8546
+ readonly actionClick: EventEmitter<IusFileItemActionClick>;
8547
+ /** Mantiene visibles acciones y menú mientras el ⋮ está abierto. */
8548
+ protected readonly menuOpen: _angular_core.WritableSignal<boolean>;
8549
+ protected get isCard(): boolean;
8550
+ protected get activatable(): boolean;
8551
+ protected get clickable(): boolean;
8552
+ protected get hasStar(): boolean;
8553
+ protected get starLabel(): string;
8554
+ protected widthOf(f: IusFileItemField): string | null;
8555
+ protected trackKey(item: {
8556
+ key?: string | number;
8557
+ }, index: number): string | number;
8558
+ private doOpen;
8559
+ protected onHostClick(event: MouseEvent): void;
8560
+ protected onHostDblClick(event: MouseEvent): void;
8561
+ protected onKeydown(event: KeyboardEvent): void;
8562
+ protected onContextMenu(event: MouseEvent): void;
8563
+ /** La casilla y el menú no disparan apertura ni selección por clic en la fila. */
8564
+ protected stop(event: Event): void;
8565
+ protected onSelect(next: boolean): void;
8566
+ protected onStar(event: MouseEvent): void;
8567
+ protected onAction(action: IusFileItemAction, event: MouseEvent): void;
8568
+ protected onMenuOpen(open: boolean): void;
8569
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileItemComponent, never>;
8570
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileItemComponent, "ius-file-item", never, { "kind": { "alias": "kind"; "required": false; }; "name": { "alias": "name"; "required": false; }; "thumbnail": { "alias": "thumbnail"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "size": { "alias": "size"; "required": false; }; "href": { "alias": "href"; "required": false; }; "activateOn": { "alias": "activateOn"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "unread": { "alias": "unread"; "required": false; }; "shared": { "alias": "shared"; "required": false; }; "starred": { "alias": "starred"; "required": false; }; "tags": { "alias": "tags"; "required": false; }; "fields": { "alias": "fields"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "owner": { "alias": "owner"; "required": false; }; "actions": { "alias": "actions"; "required": false; }; "menu": { "alias": "menu"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "opened": "opened"; "clicked": "clicked"; "selectChange": "selectChange"; "starChange": "starChange"; "contextMenu": "contextMenu"; "actionClick": "actionClick"; }, never, never, true, never>;
8571
+ static ngAcceptInputType_selectable: unknown;
8572
+ static ngAcceptInputType_selected: unknown;
8573
+ static ngAcceptInputType_unread: unknown;
8574
+ static ngAcceptInputType_shared: unknown;
8575
+ static ngAcceptInputType_disabled: unknown;
8576
+ }
8577
+
8578
+ type IusUploadStatus = 'pending' | 'uploading' | 'success' | 'error';
8579
+ interface IusUploadFile {
8580
+ /** ID estable (lo genera el componente si no se pasa). */
8581
+ id: string;
8582
+ /** Nombre visible del archivo (`File.name`). */
8583
+ name: string;
8584
+ /** Tamaño en bytes. */
8585
+ size: number;
8586
+ /** MIME type. */
8587
+ type?: string;
8588
+ /** Progreso 0-100. 100 indica `success`. */
8589
+ progress: number;
8590
+ status: IusUploadStatus;
8591
+ /** Mensaje de error si `status === 'error'`. */
8592
+ error?: string;
8593
+ /** URL del recurso una vez subido. Lo provee el `uploader` o el consumidor. */
8594
+ url?: string;
8595
+ /** El objeto `File` original (presente cuando se acaba de seleccionar). */
8596
+ file?: File;
8597
+ }
8598
+ interface IusUploaderHelpers {
8599
+ /** Reporta progreso 0-100. */
8600
+ onProgress: (pct: number) => void;
8601
+ /** Cancela la carga si el usuario quita el archivo. */
8602
+ signal: AbortSignal;
8603
+ }
8604
+ /**
8605
+ * Función de upload provista por el consumidor (HttpClient con reportProgress, o
8606
+ * fetch + AbortController). Retorna la URL resultante (o metadata); en error, lanza.
8607
+ */
8608
+ type IusUploader = (file: File, helpers: IusUploaderHelpers) => Promise<{
8609
+ url?: string;
8610
+ meta?: unknown;
8611
+ } | void>;
8612
+ /** `dropzone` = área amplia para drag & drop · `compact` = botón «Adjuntar» (toolbars / footers densos). */
8613
+ type IusFileUploadVariant = 'dropzone' | 'compact';
8614
+ /** «1,5 MB» / «320 KB» — port verbatim de `formatBytes` del golden. */
8615
+ declare function formatBytes(b: number | null | undefined): string;
8616
+ /**
8617
+ * FileUpload — Ius Design v2 (familia inputs). `ControlValueAccessor` de
8618
+ * `IusUploadFile[]`.
8619
+ *
8620
+ * Subir uno o varios archivos: selección nativa (clic → file picker), **drag &
8621
+ * drop** sobre la zona y **progreso por archivo** (pending · uploading · success ·
8622
+ * error) con acción de remover (aborta el upload en curso vía `AbortSignal`).
8623
+ *
8624
+ * Con `uploader`, el componente ejecuta la carga por cada archivo nuevo y
8625
+ * actualiza progreso/estado solo; sin él, los archivos quedan `pending` y el
8626
+ * consumidor controla el ciclo desde fuera (`value`/`valueChange` o el form).
8627
+ * `accept`/`maxSize`/`maxFiles`: los rechazados entran como `error` con su mensaje
8628
+ * y permanecen visibles.
8629
+ *
8630
+ * Compone `ius-linear-progress-bar` (progreso), `ius-icon-button` (quitar),
8631
+ * `ius-popover` (ayuda del label) y `ius-file-type-icon` como medallón de tipo de
8632
+ * cada archivo (dependencia fijada por el frente; el golden usaba un mapa MIME
8633
+ * propio). El host es la raíz `.ius-fu` del golden. Fuente de verdad:
8634
+ * `FileUpload.jsx` + `FileUpload.d.ts` + `FileUpload.ng-spec.md`.
8635
+ */
8636
+ declare class FileUploadComponent implements ControlValueAccessor, OnDestroy {
8637
+ private fileInput;
8638
+ /** Lista controlada de archivos (alternativa al form). */
8639
+ set value(v: readonly IusUploadFile[] | null | undefined);
8640
+ get value(): IusUploadFile[];
8641
+ /** Lista inicial (no controlado). */
8642
+ set defaultValue(v: readonly IusUploadFile[] | null | undefined);
8643
+ /** Ejecuta la carga de cada archivo nuevo; sin él, quedan `pending`. */
8644
+ uploader?: IusUploader;
8645
+ multiple: boolean;
8646
+ /** Filtro de tipos (formato de `<input accept>`). Ej. `"image/*,.pdf"`. */
8647
+ accept?: string;
8648
+ /** Tamaño máximo en bytes por archivo. */
8649
+ maxSize?: number;
8650
+ /** Cantidad máxima de archivos (solo con `multiple`). */
8651
+ maxFiles?: number;
8652
+ variant: IusFileUploadVariant;
8653
+ /** Heading del dropzone (default según `multiple`) / texto del botón compacto. */
8654
+ heading?: string;
8655
+ /** Subtítulo informativo (default derivado de accept/maxSize/maxFiles). */
8656
+ description?: string;
8657
+ /** Texto del botón de selección. */
8658
+ browseLabel: string;
8659
+ label?: string;
8660
+ helperText?: string;
8661
+ error: boolean;
8662
+ errorText?: string;
8663
+ required: boolean;
8664
+ set disabled(v: boolean);
8665
+ get disabled(): boolean;
8666
+ /** Pastilla «?» junto al label con popover de ayuda (como los demás inputs). */
8667
+ showIconHelp: boolean;
8668
+ iconHelpTitle?: string;
8669
+ iconHelpContent?: string;
8670
+ name?: string;
8671
+ id: string;
8672
+ /** Cambia al agregar, remover o cambiar estado/progreso (original `onChange`). */
8673
+ readonly valueChange: EventEmitter<IusUploadFile[]>;
8674
+ /** Archivos nuevos seleccionados/arrastrados, antes del upload (original `onAdd`). */
8675
+ readonly added: EventEmitter<IusUploadFile[]>;
8676
+ /** Archivo quitado (original `onRemove`). */
8677
+ readonly removed: EventEmitter<IusUploadFile>;
8678
+ protected readonly files: _angular_core.WritableSignal<IusUploadFile[]>;
8679
+ protected readonly drag: _angular_core.WritableSignal<boolean>;
8680
+ private disabledInput;
8681
+ private disabledByForm;
8682
+ private dragCounter;
8683
+ private readonly controllers;
8684
+ private onChangeFn;
8685
+ private onTouchedFn;
8686
+ protected get isDisabled(): boolean;
8687
+ protected get defaultHeading(): string;
8688
+ protected get effHeading(): string;
8689
+ protected get effDescription(): string;
8690
+ protected get hint(): string | null;
8691
+ protected get iconHelpEmpty(): boolean;
8692
+ protected formatBytes: typeof formatBytes;
8693
+ writeValue(v: readonly IusUploadFile[] | null): void;
8694
+ registerOnChange(fn: (v: IusUploadFile[]) => void): void;
8695
+ registerOnTouched(fn: () => void): void;
8696
+ setDisabledState(isDisabled: boolean): void;
8697
+ ngOnDestroy(): void;
8698
+ private setFiles;
8699
+ private patchFile;
8700
+ protected openPicker(): void;
8701
+ protected onInputChange(event: Event): void;
8702
+ private addFiles;
8703
+ private runUpload;
8704
+ protected removeFile(item: IusUploadFile): void;
8705
+ protected onDragEnter(e: DragEvent): void;
8706
+ protected onDragLeave(e: DragEvent): void;
8707
+ protected onDragOver(e: DragEvent): void;
8708
+ protected onDrop(e: DragEvent): void;
8709
+ protected onZoneKeydown(e: KeyboardEvent): void;
8710
+ protected onBrowseClick(e: MouseEvent): void;
8711
+ protected statusIcon(f: IusUploadFile): string;
8712
+ protected statusText(f: IusUploadFile): string;
8713
+ protected showProgress(f: IusUploadFile): boolean;
8714
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileUploadComponent, never>;
8715
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "ius-file-upload", never, { "value": { "alias": "value"; "required": false; }; "defaultValue": { "alias": "defaultValue"; "required": false; }; "uploader": { "alias": "uploader"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "maxSize": { "alias": "maxSize"; "required": false; }; "maxFiles": { "alias": "maxFiles"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "description": { "alias": "description"; "required": false; }; "browseLabel": { "alias": "browseLabel"; "required": false; }; "label": { "alias": "label"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorText": { "alias": "errorText"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "showIconHelp": { "alias": "showIconHelp"; "required": false; }; "iconHelpTitle": { "alias": "iconHelpTitle"; "required": false; }; "iconHelpContent": { "alias": "iconHelpContent"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; }, { "valueChange": "valueChange"; "added": "added"; "removed": "removed"; }, never, never, true, never>;
8716
+ static ngAcceptInputType_multiple: unknown;
8717
+ static ngAcceptInputType_maxSize: unknown;
8718
+ static ngAcceptInputType_maxFiles: unknown;
8719
+ static ngAcceptInputType_error: unknown;
8720
+ static ngAcceptInputType_required: unknown;
8721
+ static ngAcceptInputType_disabled: unknown;
8722
+ static ngAcceptInputType_showIconHelp: unknown;
8723
+ }
8724
+
8725
+ /** Una sección del cuerpo de la ficha. */
8726
+ interface IusDetailSidePanelSection {
8727
+ id?: string | number;
8728
+ title?: string;
8729
+ /** Ícono (Material Symbols) junto al título — solo con `accordion`. */
8730
+ icon?: string;
8731
+ /** El `content` (ReactNode) del golden viaja como plantilla (regla transversal 6). */
8732
+ content: TemplateRef<unknown>;
8733
+ /** Abierta al montar (solo con `accordion`). */
8734
+ defaultOpen?: boolean;
8735
+ }
8736
+ /**
8737
+ * DetailSidePanel — Ius Design v2 (familia layout).
8738
+ *
8739
+ * Ficha lateral de una vista de detalle: columna aparte del contenido principal
8740
+ * (hermana del `main` en un contenedor flex), con `border-left`, fondo de tarjeta,
8741
+ * padding lg y **scroll propio** (`.ius-scroll`, `overscroll-behavior: contain`).
8742
+ * Colapsa opcionalmente a un **riel angosto** (52px) con un botón para reabrir —
8743
+ * mismo patrón y tokens que EntityNavigator. El cuerpo se compone de `sections`
8744
+ * (planas, o plegables vía `ius-accordion` `variant="divided"`) o de contenido
8745
+ * proyectado. Se reusa en todas las vistas de detalle del árbol (cliente,
8746
+ * expediente, proceso).
8747
+ *
8748
+ * Colapso controlado (`collapsed` + `(collapsedChange)`) o interno
8749
+ * (`defaultCollapsed`); el estado lo maneja la vista, el componente no lo
8750
+ * persiste. El host es el `<aside class="ius-detailside">` del golden
8751
+ * (`role="complementary"`). Fuente de verdad: `DetailSidePanel.jsx` + `.d.ts` +
8752
+ * `DetailSidePanel.ng-spec.md`.
8753
+ */
8754
+ declare class DetailSidePanelComponent {
8755
+ /** Ancho de la columna expandida (px o CSS) → `--_ds-w`. */
8756
+ width: number | string;
8757
+ /** Título overline de la ficha; con `collapsible` va junto al toggle. */
8758
+ title?: string;
8759
+ /** Título rico como plantilla (alternativa a `title`). */
8760
+ titleTemplate?: TemplateRef<unknown>;
8761
+ /** Ícono Material Symbols del título. */
8762
+ titleIcon?: string;
8763
+ /** Habilita el colapso a riel. */
8764
+ collapsible: boolean;
8765
+ /** Colapsado (controlado). Si se omite, estado interno. */
8766
+ collapsed?: boolean;
8767
+ /** Colapso inicial no controlado. */
8768
+ set defaultCollapsed(v: boolean);
8769
+ /** aria/tooltip del toggle contraer. */
8770
+ collapseLabel: string;
8771
+ /** aria/tooltip del toggle expandir (riel). */
8772
+ expandLabel: string;
8773
+ /** Ícono del botón de reabrir en el riel. */
8774
+ expandIcon: string;
8775
+ /** Secciones del cuerpo. Alternativa al contenido proyectado. */
8776
+ sections?: readonly IusDetailSidePanelSection[];
8777
+ /** Monta las `sections` como Accordion plegable (`variant divided`). */
8778
+ accordion: boolean;
8779
+ /** Varias secciones abiertas a la vez (solo con `accordion`). */
8780
+ accordionMultiple: boolean;
8781
+ /** Nombre accesible del `<aside>` (fallback al `title`). */
8782
+ ariaLabel?: string;
8783
+ /** Al alternar el colapso (two-way con `collapsed`). Original `onCollapsedChange`. */
8784
+ readonly collapsedChange: EventEmitter<boolean>;
8785
+ private readonly internal;
8786
+ protected get isCollapsed(): boolean;
8787
+ protected get widthCss(): string;
8788
+ protected get hasSections(): boolean;
8789
+ protected get useAccordion(): boolean;
8790
+ protected get showHead(): boolean;
8791
+ protected get hasTitle(): boolean;
8792
+ protected sectionId(s: IusDetailSidePanelSection, i: number): string;
8793
+ /** Las `sections` como items de `ius-accordion`. */
8794
+ protected get accordionItems(): IusAccordionItem[];
8795
+ /** `defaultOpen` del Accordion derivado de las secciones que traen `defaultOpen`. */
8796
+ protected get accordionDefaultOpen(): string | string[] | undefined;
8797
+ protected toggle(): void;
8798
+ protected readonly railWidth = "52px";
8799
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DetailSidePanelComponent, never>;
8800
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DetailSidePanelComponent, "ius-detail-side-panel", never, { "width": { "alias": "width"; "required": false; }; "title": { "alias": "title"; "required": false; }; "titleTemplate": { "alias": "titleTemplate"; "required": false; }; "titleIcon": { "alias": "titleIcon"; "required": false; }; "collapsible": { "alias": "collapsible"; "required": false; }; "collapsed": { "alias": "collapsed"; "required": false; }; "defaultCollapsed": { "alias": "defaultCollapsed"; "required": false; }; "collapseLabel": { "alias": "collapseLabel"; "required": false; }; "expandLabel": { "alias": "expandLabel"; "required": false; }; "expandIcon": { "alias": "expandIcon"; "required": false; }; "sections": { "alias": "sections"; "required": false; }; "accordion": { "alias": "accordion"; "required": false; }; "accordionMultiple": { "alias": "accordionMultiple"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "collapsedChange": "collapsedChange"; }, never, ["*"], true, never>;
8801
+ static ngAcceptInputType_collapsible: unknown;
8802
+ static ngAcceptInputType_defaultCollapsed: unknown;
8803
+ static ngAcceptInputType_accordion: unknown;
8804
+ static ngAcceptInputType_accordionMultiple: unknown;
8805
+ }
8806
+
8807
+ type IusStepperState = 'done' | 'current' | 'pending' | 'risk';
8808
+ type IusStepperOrientation = 'horizontal' | 'vertical';
8809
+ type IusStepperSize = 'small' | 'medium' | 'large';
8810
+ /** Tono de identidad del módulo (mismo set que NavRail/Timeline). `risk`/`pending` son override semántico. */
8811
+ type IusStepperAccent = 'primary' | 'info' | 'success' | 'durazno' | 'banano' | 'sandia' | 'arandano' | 'uva' | 'aguacate';
8812
+ type IusStepperDetailDisplay = 'inline' | 'popover';
8813
+ type IusStepperCollapsedControl = 'segments' | 'expander';
8814
+ interface IusStepperAssignee {
8815
+ name: string;
8816
+ src?: string;
8817
+ }
8818
+ interface IusStepperSubstage {
8819
+ id?: string;
8820
+ label: string;
8821
+ state?: IusStepperState;
8822
+ date?: Date | string;
8823
+ description?: string;
8824
+ assignee?: IusStepperAssignee;
8825
+ /** Tipo de evento del catálogo controlado (EventCatalog); lo consume el overlay de detalle. */
8826
+ kind?: string;
8827
+ }
8828
+ interface IusStepperStage {
8829
+ id?: string;
8830
+ /** Nombre visible de la etapa. */
8831
+ label: string;
8832
+ /** Estado del nodo. Default `pending`. */
8833
+ state?: IusStepperState;
8834
+ /** Subetapas anidadas: el subtítulo muestra `n/n` o la subetapa en curso. */
8835
+ substages?: IusStepperSubstage[];
8836
+ /** Fecha/término asociado a la etapa. */
8837
+ date?: Date | string;
8838
+ assignee?: IusStepperAssignee;
8839
+ /** Etapa sugerida por ElenIA (no se pinta en el track; lo usa el overlay externo). */
8840
+ ai?: boolean;
8841
+ }
8842
+ /** Acción del footer del popover de detalle (`detailDisplay="popover"`). */
8843
+ interface IusStepperPopoverAction {
8844
+ key: string;
8845
+ label: string;
8846
+ icon?: string;
8847
+ /** `primary` = Button primary · `secondary` = Button secondary · `text` = TextButton. Default `primary`. */
8848
+ variant?: 'primary' | 'secondary' | 'text';
8849
+ /** Handler; el componente **cierra el popover** antes de invocarlo. */
8850
+ onClick?: (stage: IusStepperStage, index: number) => void;
8851
+ }
8852
+ /** Payload de `stageClick` / `detailClick`. */
8853
+ interface IusStepperStageEvent {
8854
+ stage: IusStepperStage;
8855
+ index: number;
8856
+ }
8857
+ /** Fila del contexto del popover: subetapa, o recorte «…». */
8858
+ interface IusStepperContextRow {
8859
+ kind: 'sub' | 'text' | 'ellipsis';
8860
+ label?: string;
8861
+ date?: string;
8862
+ state?: IusStepperState;
8863
+ }
8864
+ /** Acción del footer ya resuelta (default o del consumidor). */
8865
+ interface ActionVm {
8866
+ key: string;
8867
+ label: string;
8868
+ icon?: string;
8869
+ variant: 'primary' | 'secondary' | 'text';
8870
+ run: () => void;
8871
+ }
8872
+ /** Todo lo que la plantilla necesita de una etapa, resuelto una vez. */
8873
+ interface StageVm {
8874
+ stage: IusStepperStage;
8875
+ index: number;
8876
+ state: IusStepperState;
8877
+ prevDone: boolean;
8878
+ ringValue: number;
8879
+ arc: string;
8880
+ centerIcon: string | null;
8881
+ centerFs: number;
8882
+ centerColor: string;
8883
+ ariaLabel: string;
8884
+ hasDetail: boolean;
8885
+ usePopover: boolean;
8886
+ subtitleText: string | null;
8887
+ subtitleSingle: boolean;
8888
+ count: string | null;
8889
+ summary: string;
8890
+ stateLabel: string;
8891
+ nm: {
8892
+ n: number;
8893
+ m: number;
8894
+ } | null;
8895
+ rows: IusStepperContextRow[];
8896
+ actions: ActionVm[];
8897
+ }
8898
+ /** Segmento de la tira colapsada (o recorte «…»). */
8899
+ interface SegVm {
8900
+ more: boolean;
8901
+ vm?: StageVm;
8902
+ }
8903
+ /**
8904
+ * Stepper — Ius Design v2 (familia data-display).
8905
+ *
8906
+ * Indicador **display-only** del avance de un proceso por etapas y subetapas.
8907
+ * Modela la estructura (qué fases hay y en cuál se está) — no es editor ni
8908
+ * historial (eso es Timeline), y no navega (eso es Wizard). El detalle se
8909
+ * delega a un overlay externo (típicamente StageDetailDrawer) vía
8910
+ * `(detailClick)`: el Stepper **no** monta overlays propios salvo el popover de
8911
+ * vistazo rápido de `detailDisplay="popover"`.
8912
+ *
8913
+ * Nodos = `ius-circular-progress` (avance por subetapas) con glifo por estado;
8914
+ * `accent` tematiza anillo, check, conector y etiqueta actual (`risk`/`pending`
8915
+ * son semánticos fijos). `collapsed` = una línea con la etapa vigente + «Etapa X
8916
+ * de N» + segmentos numerados con windowing (`maxSegments`, chip «…» → `expand`)
8917
+ * o botón «Ver etapas» (`collapsedControl="expander"`). El host es la raíz
8918
+ * `.ius-stepper` del golden. Fuente de verdad: `Stepper.jsx` + `Stepper.d.ts` +
8919
+ * `Stepper.ng-spec.md`.
8920
+ */
8921
+ declare class StepperComponent {
8922
+ /** Etapas a mostrar. */
8923
+ stages: readonly IusStepperStage[];
8924
+ orientation: IusStepperOrientation;
8925
+ size: IusStepperSize;
8926
+ /** Tono de identidad (anillo/check/conector/actual). */
8927
+ accent: IusStepperAccent;
8928
+ /** Subtítulo de detalle (subetapas/fecha/responsable/ai). Off para steppers simples. */
8929
+ showDetail: boolean;
8930
+ /** `popover` elimina el subtítulo: la etiqueta abre un popover de solo lectura. Requiere `showDetail`. */
8931
+ detailDisplay: IusStepperDetailDisplay;
8932
+ /** Una sola línea: etapa vigente + «Etapa X de N» + acceso según `collapsedControl`. */
8933
+ collapsed: boolean;
8934
+ collapsedControl: IusStepperCollapsedControl;
8935
+ /** Tope de segmentos antes del windowing (impar para centrar la vigente). */
8936
+ maxSegments: number;
8937
+ /** Overline sobre la línea colapsada (solo en `collapsed`). */
8938
+ label?: string;
8939
+ /** Texto del botón de `expander`. Default «Ver etapas (X/N)». */
8940
+ expandLabel?: string;
8941
+ /** Acciones del footer del popover; sin ellas, default «Ver detalle completo» → `detailClick`. */
8942
+ popoverActions?: readonly IusStepperPopoverAction[];
8943
+ /** Click sobre el nodo (o segmento) de una etapa. */
8944
+ readonly stageClick: EventEmitter<IusStepperStageEvent>;
8945
+ /** Click sobre el subtítulo / «Ver detalle completo» → abrir overlay externo. Sin enlazar = texto inerte. */
8946
+ readonly detailClick: EventEmitter<IusStepperStageEvent>;
8947
+ /** Botón «Ver etapas» de `expander` o chip «…» de `segments` → el consumidor abre su Drawer. */
8948
+ readonly expand: EventEmitter<void>;
8949
+ /** Índice de la etapa cuyo popover está abierto (uno a la vez). */
8950
+ protected readonly openIdx: _angular_core.WritableSignal<number | null>;
8951
+ protected get stageClickable(): boolean;
8952
+ protected get detailClickable(): boolean;
8953
+ protected get expandable(): boolean;
8954
+ protected trackStage(vm: StageVm): string | number;
8955
+ protected get vms(): StageVm[];
8956
+ private vmOf;
8957
+ /** Acciones del footer del popover (o el default «Ver detalle completo»); cada una cierra el popover antes de accionar. */
8958
+ private resolveActions;
8959
+ protected get curIdx(): number;
8960
+ protected get curVm(): StageVm | null;
8961
+ protected get progressText(): string;
8962
+ protected get effExpandLabel(): string;
8963
+ protected get segments(): SegVm[];
8964
+ protected onStageClick(vm: StageVm): void;
8965
+ protected onDetailClick(vm: StageVm): void;
8966
+ protected onExpand(): void;
8967
+ protected onPopOpen(index: number, open: boolean): void;
8968
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StepperComponent, never>;
8969
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StepperComponent, "ius-stepper", never, { "stages": { "alias": "stages"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; "size": { "alias": "size"; "required": false; }; "accent": { "alias": "accent"; "required": false; }; "showDetail": { "alias": "showDetail"; "required": false; }; "detailDisplay": { "alias": "detailDisplay"; "required": false; }; "collapsed": { "alias": "collapsed"; "required": false; }; "collapsedControl": { "alias": "collapsedControl"; "required": false; }; "maxSegments": { "alias": "maxSegments"; "required": false; }; "label": { "alias": "label"; "required": false; }; "expandLabel": { "alias": "expandLabel"; "required": false; }; "popoverActions": { "alias": "popoverActions"; "required": false; }; }, { "stageClick": "stageClick"; "detailClick": "detailClick"; "expand": "expand"; }, never, never, true, never>;
8970
+ static ngAcceptInputType_showDetail: unknown;
8971
+ static ngAcceptInputType_collapsed: unknown;
8972
+ static ngAcceptInputType_maxSegments: unknown;
8973
+ }
8974
+
8975
+ type IusStageDetailState = 'done' | 'current' | 'pending' | 'risk';
8976
+ /** Tono de identidad del módulo (mismo set que NavRail/Stepper/Timeline). */
8977
+ type IusStageDetailAccent = 'primary' | 'info' | 'success' | 'durazno' | 'banano' | 'sandia' | 'arandano' | 'uva' | 'aguacate';
8978
+ interface IusStageDetailAssignee {
8979
+ name: string;
8980
+ src?: string;
8981
+ }
8982
+ /** Nodos extra para la franja de meta (chips, contadores…). */
8983
+ declare class IusStageDetailMetaDirective {
8984
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IusStageDetailMetaDirective, never>;
8985
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IusStageDetailMetaDirective, "[iusStageDetailMeta]", never, {}, {}, never, never, true, never>;
8986
+ }
8987
+ /** Acciones del header del Drawer (editar, agregar rápido…). */
8988
+ declare class IusStageDetailHeaderActionsDirective {
8989
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IusStageDetailHeaderActionsDirective, never>;
8990
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IusStageDetailHeaderActionsDirective, "[iusStageDetailHeaderActions]", never, {}, {}, never, never, true, never>;
8991
+ }
8992
+ /** Footer sticky (típicamente Button primario + secundario). */
8993
+ declare class IusStageDetailFooterDirective {
8994
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IusStageDetailFooterDirective, never>;
8995
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IusStageDetailFooterDirective, "[iusStageDetailFooter]", never, {}, {}, never, never, true, never>;
8996
+ }
8997
+ /**
8998
+ * StageDetailDrawer — Ius Design v2 (familia overlays).
8999
+ *
9000
+ * Overlay lateral genérico para mostrar el **detalle de un paso o entidad**
9001
+ * (etapa procesal, paso de un flujo de correo, ítem de una lista…) sobre un
9002
+ * `ius-drawer` del sistema. Aporta la franja de meta estándar (badge de estado,
9003
+ * fecha, responsable, ElenIA) tematizada con el acento del módulo, y deja el body
9004
+ * abierto para cualquier contenido: el Timeline de subetapas, un formulario, una
9005
+ * descripción. Lo abre el subtítulo de cada etapa del Stepper, pero sirve en
9006
+ * cualquier «abrir detalle». Creación/edición con muchos campos → Drawer directo.
9007
+ *
9008
+ * Slots: contenido por defecto = cuerpo; `[iusStageDetailMeta]` = chips extra en la
9009
+ * franja; `[iusStageDetailHeaderActions]` y `[iusStageDetailFooter]` se reproyectan
9010
+ * al Drawer. `side`/`size`/`showClose` se delegan. Portalea a `document.body` vía el
9011
+ * Drawer (CDK Overlay). Fuente de verdad: `StageDetailDrawer.jsx` + `.d.ts` +
9012
+ * `StageDetailDrawer.ng-spec.md`.
9013
+ */
9014
+ declare class StageDetailDrawerComponent {
9015
+ protected metaSlot?: IusStageDetailMetaDirective;
9016
+ protected headerActionsSlot?: IusStageDetailHeaderActionsDirective;
9017
+ protected footerSlot?: IusStageDetailFooterDirective;
9018
+ /** Apertura controlada. */
9019
+ open?: boolean;
9020
+ /** Título del header del Drawer (típicamente, nombre de la etapa). */
9021
+ title?: string;
9022
+ /** Estado del paso → badge en la franja de meta. Omitir en overlays sin estado. */
9023
+ state?: IusStageDetailState;
9024
+ /** Fecha/término del paso (Date → se formatea, o string ya formateada). */
9025
+ date?: Date | string;
9026
+ /** Responsable del paso (Avatar + nombre). */
9027
+ assignee?: IusStageDetailAssignee;
9028
+ /** Marca «sugerido por ElenIA». */
9029
+ ai: boolean;
9030
+ /** Tematiza el badge de estado (y el Timeline interno cuando se usa). */
9031
+ accent: IusStageDetailAccent;
9032
+ /** Texto extra de la franja de meta (alternativa al slot `[iusStageDetailMeta]`). */
9033
+ meta?: string;
9034
+ /** Lado desde el que entra (pasado a Drawer). */
9035
+ side: IusDrawerSide;
9036
+ /** Ancho del panel (pasado a Drawer): sm 400 · md 440 · lg 560 · xl 720. */
9037
+ size: IusDrawerSize;
9038
+ /** Botón × del header (pasado a Drawer). */
9039
+ showClose: boolean;
9040
+ /** Scrim detrás del panel (pasado a Drawer; la card golden lo apaga para mostrarlo embebido). */
9041
+ showScrim: boolean;
9042
+ closeOnScrim: boolean;
9043
+ closeOnEsc: boolean;
9044
+ /** Flecha de volver (pasado a Drawer; default: visible si `(back)` está enlazado). */
9045
+ showBack?: boolean;
9046
+ ariaLabel?: string;
9047
+ /** Cierre solicitado: scrim, Esc, volver o × (original `onClose`). */
9048
+ readonly closed: EventEmitter<void>;
9049
+ /** Espejo de `onOpenChange`. */
9050
+ readonly openChange: EventEmitter<boolean>;
9051
+ /** Flecha de volver del Drawer (si no se enlaza, la flecha cierra). */
9052
+ readonly back: EventEmitter<void>;
9053
+ protected get showBackBtn(): boolean | undefined;
9054
+ protected onBack(): void;
9055
+ protected get stateMeta(): {
9056
+ icon: string;
9057
+ label: string;
9058
+ } | null;
9059
+ protected get dateText(): string;
9060
+ protected get hasMeta(): boolean;
9061
+ protected get accentStrong(): string;
9062
+ protected get accentSoft(): string;
9063
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StageDetailDrawerComponent, never>;
9064
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StageDetailDrawerComponent, "ius-stage-detail-drawer", never, { "open": { "alias": "open"; "required": false; }; "title": { "alias": "title"; "required": false; }; "state": { "alias": "state"; "required": false; }; "date": { "alias": "date"; "required": false; }; "assignee": { "alias": "assignee"; "required": false; }; "ai": { "alias": "ai"; "required": false; }; "accent": { "alias": "accent"; "required": false; }; "meta": { "alias": "meta"; "required": false; }; "side": { "alias": "side"; "required": false; }; "size": { "alias": "size"; "required": false; }; "showClose": { "alias": "showClose"; "required": false; }; "showScrim": { "alias": "showScrim"; "required": false; }; "closeOnScrim": { "alias": "closeOnScrim"; "required": false; }; "closeOnEsc": { "alias": "closeOnEsc"; "required": false; }; "showBack": { "alias": "showBack"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "closed": "closed"; "openChange": "openChange"; "back": "back"; }, ["metaSlot", "headerActionsSlot", "footerSlot"], ["[iusStageDetailHeaderActions]", "[iusStageDetailMeta]", "*", "[iusStageDetailFooter]"], true, never>;
9065
+ static ngAcceptInputType_ai: unknown;
9066
+ static ngAcceptInputType_showClose: unknown;
9067
+ static ngAcceptInputType_showScrim: unknown;
9068
+ static ngAcceptInputType_closeOnScrim: unknown;
9069
+ static ngAcceptInputType_closeOnEsc: unknown;
9070
+ }
9071
+
9072
+ export { AccordionComponent, AccountItemComponent, AlertComponent, AppLayoutComponent, AvatarComponent, AvatarStackComponent, BreadcrumbComponent, ButtonComponent, CATEGORIES, CATEGORY_DEF, CATEGORY_HUE, CHART_CATEGORICAL_TONES, CHART_SEMANTIC_TONES, CHART_TONES, CaptchaFieldComponent, CardComponent, CarouselComponent, CheckboxComponent, ChipComponent, CircularProgressComponent, CodeFieldComponent, CountdownComponent, CountdownRingComponent, DescriptionListComponent, DetailSidePanelComponent, DividerComponent, DrawerComponent, DropdownComponent, EVENT_KINDS, EVENT_KIND_ICON, EXT_KIND, EleniaBubbleComponent, EleniaOrbComponent, EmptyStateComponent, EventPillComponent, FileItemComponent, FileTypeIconComponent, FileUploadComponent, FlexComponent, FormComponent, FormFieldComponent, FormSectionComponent, HeaderBarComponent, ILLUSTRATIONS, ILLUSTRATION_ALIAS, ILLUSTRATION_NAMES, IUS_FILTER_OPERATORS, IUS_TOAST_DEFAULT_DURATION, IUS_TOAST_DEFAULT_ICON, IconButtonComponent, IllustrationComponent, InsigniaComponent, IusAccountItemNameDirective, IusAccountItemSubtitleDirective, IusAccountItemTrailingDirective, IusAlertActionsDirective, IusAlertTrailingDirective, IusCardFooterDirective, IusCardHeaderDirective, IusDrawerFooterDirective, IusDrawerHeaderActionsDirective, IusDrawerTitleDirective, IusDropdownTriggerDirective, IusFormFooterDirective, IusListCardLeadingDirective, IusListCardOverlineDirective, IusListCardParagraphDirective, IusListCardSubtitleDirective, IusListCardTitleDirective, IusListViewFiltersDirective, IusListViewFooterEndDirective, IusListViewFooterStartDirective, IusListViewHeaderEndDirective, IusListViewHeaderStartDirective, IusListViewToolbarDirective, IusMenuItemTrailingDirective, IusModalFooterDirective, IusPageHeaderActionsDirective, IusPageHeaderBreadcrumbDirective, IusPageHeaderOverlineDirective, IusPageHeaderSubtitleDirective, IusPageHeaderTitleDirective, IusPageHeaderToolbarDirective, IusPersonItemNameDirective, IusPersonItemTrailingDirective, IusSectionTitleActionDirective, IusSettingsNavFooterDirective, IusSettingsNavHeaderDirective, IusStageDetailFooterDirective, IusStageDetailHeaderActionsDirective, IusStageDetailMetaDirective, IusStatCaptionDirective, IusStatDeltaDirective, IusStatDeltaLabelDirective, IusStatLabelDirective, IusStatSparklineDirective, IusTagPrefixDirective, IusTagSuffixDirective, IusToastActionDirective, IusUserMenuFooterDirective, KINDS, KIND_DEF, KIND_FALLBACK, LineChartComponent, LinearProgressBarComponent, ListCardComponent, ListViewComponent, LoadingComponent, LoadingMarkComponent, MenuComponent, MenuItemComponent, ModalComponent, MultiTextFieldComponent, NavUserComponent, NumberFieldComponent, ORB_PERIODS, OauthButtonComponent, OptionItemComponent, PageHeaderComponent, PartyListComponent, PersonItemComponent, PersonPickerComponent, PlanUsageItemComponent, PopoverComponent, QueryBuilderComponent, STATUS_TONES, STATUS_VOCAB, STATUS_VOCABS, STATUS_VOCABS_PENDING, ScrollAreaComponent, SearchBarComponent, SectionHeaderComponent, SectionTitleComponent, SegmentGroupComponent, SegmentedControlComponent, SelectComponent, SettingsNavComponent, ShowMoreComponent, SkeletonComponent, SparklineComponent, SplitterComponent, StageDetailDrawerComponent, StatComponent, StatGroupComponent, StatusChipComponent, StatusStateComponent, StepperComponent, TableComponent, TabsComponent, TagComponent, TextAreaComponent, TextButtonComponent, TextComponent, TextFieldComponent, TimelineComponent, ToastComponent, ToastService, ToastViewportComponent, TooltipComponent, UserMenuComponent, WizardComponent, WizardController, WizardNavComponent, categoryColors, categoryOptions, chartAxisTicks, chartFormatValue, chartLinearPath, chartNiceNum, chartPath, chartPrefersReducedMotion, chartSmoothPath, chartToneAt, chartToneVar, createWizard, eventKindOptions, extOf, formatBytes, iusSegColor, kindHue, kindIcon, kindLabel, kindMeta, kindOptions, pose, poseIso, poseSpeaking, poseThinking, renderCubeSvg, resolveCategoryHue, resolveEventIcon, resolveIllustration, resolveKind, resolveStatus, statusOptions, statusOrder, statusToneVars, statusVocab, voiceEnv };
9073
+ export type { ActuacionStatus, AlertSize, AlertTone, AlertVariant, CategoryColors, CategoryDef, CategoryHueSource, CategoryKey, CategoryOption, ChartCategoricalTone, ChartCurve, ChartPoint, ChartSemanticTone, ChartTone, CountdownDirection, CountdownFormat, CountdownRingSize, CountdownRingTone, DescriptionListItem, DescriptionListLayout, DescriptionListSize, DescriptionListValueClick, EventIconSource, EventKind, EventKindOption, FileKind, FileKindDef, FileKindDomain, FileKindFs, FileKindMeta, FileKindOption, FileTypeHue, GestionStatus, Hue, IllustrationEntry, IllustrationName, IllustrationSize, IusAccordionItem, IusAccordionVariant, IusAccountItemAction, IusAccountItemState, IusAppLayoutAccent, IusAvatarColor, IusAvatarShape, IusAvatarSize, IusAvatarStackItem, IusAvatarStackItemClick, IusAvatarStackStyle, IusBreadcrumbItem, IusBreadcrumbNavigate, IusBreadcrumbSeparator, IusBreadcrumbSize, IusButtonActionResult, IusButtonSize, IusButtonStatus, IusButtonType, IusButtonVariant, IusCaptchaAppearance, IusCaptchaFieldHandle, IusCaptchaProvider, IusCaptchaSize, IusCaptchaState, IusCaptchaTheme, IusCardAs, IusCardPadding, IusCardRadius, IusCardVariant, IusCarouselImage, IusCarouselImageInput, IusCarouselObjectFit, IusCarouselOrder, IusCarouselOverlay, IusCarouselTransition, IusCheckboxLabelPosition, IusCheckboxSize, IusChipSize, IusChipState, IusCircularProgressSize, IusCircularProgressTone, IusCodeFieldSize, IusDetailSidePanelSection, IusDividerOrientation, IusDividerTextAlign, IusDividerVariant, IusDrawerSide, IusDrawerSize, IusDropdownItem, IusDropdownTone, IusDropdownVariant, IusEleniaBubblePosition, IusEleniaBubbleSize, IusEleniaOrbMood, IusEleniaOrbSurface, IusEmptyStateAction, IusEmptyStateSize, IusEmptyStateTone, IusEmptyStateVariant, IusEventAssignee, IusEventPillFill, IusEventPillSize, IusEventPillVariant, IusFileItemAction, IusFileItemActionClick, IusFileItemActivateOn, IusFileItemField, IusFileItemLayout, IusFileItemOwner, IusFileItemSize, IusFileItemTag, IusFileTypeIconSize, IusFileTypeIconVariant, IusFileUploadVariant, IusFilterField, IusFilterFieldOption, IusFilterFieldType, IusFilterRule, IusFilterValue, IusFlexAlign, IusFlexDirection, IusFlexGap, IusFlexJustify, IusFormColumns, IusFormError, IusFormFieldSpan, IusFormSectionVariant, IusIconButtonShape, IusIconButtonSize, IusIconButtonVariant, IusInsigniaSize, IusInsigniaTone, IusInsigniaVariant, IusLineChartPoints, IusLineSeries, IusLinearProgressSegment, IusLinearProgressSize, IusLinearProgressTone, IusListCardAction, IusListCardField, IusListCardMarker, IusListCardMenuItem, IusListCardSize, IusListCardStatus, IusListCardTag, IusListCardTone, IusListViewAction, IusListViewSize, IusListViewSortOption, IusLoadingMarkSurface, IusLoadingVariant, IusMenuItemSize, IusMenuItemState, IusMenuItemVariant, IusMenuOption, IusModalCloseReason, IusModalIconTone, IusModalSize, IusMultiTextFieldSize, IusMultiTextFieldSlot, IusMultiTextFieldState, IusNavUserAccount, IusNavUserLayout, IusNavUserUser, IusOAuthButtonSize, IusOAuthButtonType, IusOAuthProvider, IusOptionItemSize, IusOptionItemState, IusPageHeaderTitleLevel, IusPartyListConnector, IusPartyListSize, IusPersonId, IusPersonItemAction, IusPersonItemSize, IusPersonItemState, IusPersonItemVariant, IusPersonOption, IusPersonPickerSelectedContext, IusPlanUsageAction, IusPlanUsageLegend, IusPlanUsageStatus, IusPopoverPadding, IusPopoverPlacement, IusPopoverTrigger, IusQueryBuilderSize, IusScrollAxis, IusScrollSize, IusSearchBarSize, IusSearchBarState, IusSectionHeaderAccent, IusSectionHeaderVariant, IusSectionTitleAs, IusSectionTitleHelpTrigger, IusSectionTitleSize, IusSegmentedSize, IusSegmentedVariant, IusSelectCreateFactory, IusSelectSize, IusSelectState, IusSelectValue, IusSettingsNavAccent, IusSettingsNavItem, IusSettingsNavSize, IusShowMoreAlign, IusSkeletonAnimation, IusSkeletonVariant, IusSparklineVariant, IusSplitterAccent, IusSplitterOrientation, IusStageDetailAccent, IusStageDetailAssignee, IusStageDetailState, IusStatAlign, IusStatSize, IusStatTone, IusStatusChipSize, IusStatusChipTone, IusStatusKind, IusStepperAccent, IusStepperAssignee, IusStepperCollapsedControl, IusStepperContextRow, IusStepperDetailDisplay, IusStepperOrientation, IusStepperPopoverAction, IusStepperSize, IusStepperStage, IusStepperStageEvent, IusStepperState, IusStepperSubstage, IusTabItem, IusTabTag, IusTableAlign, IusTableCellContext, IusTableColumn, IusTableHeaderContext, IusTableRowClick, IusTableRowKey, IusTableRowStyle, IusTableSize, IusTableSortChange, IusTableSortDirection, IusTableSummaryCell, IusTableTone, IusTabsAccent, IusTabsSize, IusTagRole, IusTagShape, IusTagSize, IusTagState, IusTagTone, IusTagVariant, IusTextAlign, IusTextAreaSize, IusTextAreaState, IusTextButtonSize, IusTextButtonType, IusTextColor, IusTextFieldSize, IusTextFieldType, IusTextTag, IusTextVariant, IusTextWeight, IusTimelineAccent, IusTimelineAssignee, IusTimelineAttachment, IusTimelineAttachmentClick, IusTimelineItem, IusTimelineItemState, IusTimelineSize, IusTimelineTag, IusTimelineTagTone, IusToastItem, IusToastOptions, IusToastPosition, IusToastTone, IusTooltipTrigger, IusUploadFile, IusUploadStatus, IusUploader, IusUploaderHelpers, IusUserMenuAccount, IusUserMenuAccountOption, IusUserMenuItem, IusUserMenuOrigin, IusUserMenuService, IusUserMenuUser, OrbMood, OrbPose, SegmentedOption, SelectOption, SelectOptionGroup, StatusMeta, StatusOption, StatusTone, StatusToneVars, StatusVocabMap, StatusVocabName, UseWizardOptions, WizardApi, WizardStep };