@ngx-smz/ui-kit 0.0.0-stage → 21.9.0-next.10

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.
@@ -0,0 +1,2542 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { TemplateRef, OnDestroy, AfterContentChecked, InjectionToken, Type, ViewContainerRef, ElementRef } from '@angular/core';
3
+ import { ControlValueAccessor } from '@angular/forms';
4
+ import { Observable, Subject } from 'rxjs';
5
+ import { Overlay } from '@angular/cdk/overlay';
6
+ import * as _ngx_smz_ui_kit from '@ngx-smz/ui-kit';
7
+ import { CdkDragDrop } from '@angular/cdk/drag-drop';
8
+
9
+ type SmzClassValue = string | false | null | undefined;
10
+ type VariantGroups = Record<string, Record<string, string>>;
11
+ type SmzVariantProps<V extends VariantGroups> = {
12
+ [K in keyof V]?: keyof V[K] & string;
13
+ };
14
+ interface SmzVariantsConfig<V extends VariantGroups> {
15
+ /** Classes aplicadas sempre. */
16
+ base: string;
17
+ /** Grupos de variantes mutuamente exclusivos (ex.: size, severity). */
18
+ variants: V;
19
+ /** Valor usado quando a prop nao e informada. */
20
+ defaults?: SmzVariantProps<V>;
21
+ /** Classes que dependem da combinacao de duas ou mais variantes. */
22
+ compound?: Array<{
23
+ when: SmzVariantProps<V>;
24
+ class: string;
25
+ }>;
26
+ }
27
+ declare function smzCx(...parts: SmzClassValue[]): string;
28
+ /**
29
+ * Combina classes por variante. As strings de classe devem ser literais completas
30
+ * (nunca montadas por concatenacao), senao o Tailwind nao as encontra no scan.
31
+ * Nao resolve conflitos entre utilitarios: mantenha as variantes mutuamente exclusivas.
32
+ */
33
+ declare function smzVariants<V extends VariantGroups>(config: SmzVariantsConfig<V>): (props?: SmzVariantProps<V>) => string;
34
+
35
+ type SmzSeverity = 'primary' | 'secondary' | 'success' | 'warning' | 'danger';
36
+ /** Severidades do vocabulario antigo (PrimeNG), aceitas por compatibilidade. */
37
+ type SmzLegacySeverity = 'info' | 'warn' | 'error' | 'help' | 'contrast';
38
+ declare function smzNormalizeSeverity(value: string | null | undefined, fallback?: SmzSeverity): SmzSeverity;
39
+ /** Fundo solido por severidade (badge, tag). Strings literais para o Tailwind encontrar no scan. */
40
+ declare const SMZ_SOLID_TONE: Record<SmzSeverity, string>;
41
+ /** Fundo suave com borda por severidade (message). */
42
+ declare const SMZ_SOFT_TONE: Record<SmzSeverity, string>;
43
+
44
+ /**
45
+ * Base de ControlValueAccessor para os controles de formulario do ui-kit.
46
+ * O componente concreto deve registrar NG_VALUE_ACCESSOR em `providers`.
47
+ * Fornece a entrada `disabled` e o estado combinado `isDisabled` (entrada ou desabilitado pelo formulario).
48
+ */
49
+ declare abstract class SmzValueAccessor<T> implements ControlValueAccessor {
50
+ readonly current: _angular_core.WritableSignal<T>;
51
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
52
+ protected readonly formDisabled: _angular_core.WritableSignal<boolean>;
53
+ protected readonly isDisabled: _angular_core.Signal<boolean>;
54
+ private onChange;
55
+ private onTouched;
56
+ writeValue(value: T | null): void;
57
+ registerOnChange(fn: (value: T | null) => void): void;
58
+ registerOnTouched(fn: () => void): void;
59
+ setDisabledState(isDisabled: boolean): void;
60
+ protected commit(value: T | null): void;
61
+ protected touch(): void;
62
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzValueAccessor<any>, never>;
63
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzValueAccessor<any>, never, never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
64
+ }
65
+
66
+ /**
67
+ * Substitui o `pTemplate` do PrimeNG: marca um `ng-template` com um nome para o componente
68
+ * hospedeiro localizar via `contentChildren(SmzTemplateDirective)`.
69
+ *
70
+ * <ng-template smzTemplate="header">...</ng-template>
71
+ */
72
+ declare class SmzTemplateDirective {
73
+ readonly template: TemplateRef<unknown>;
74
+ readonly name: _angular_core.InputSignal<string>;
75
+ /** Compatibilidade com `PrimeTemplate.getType()`. */
76
+ getType(): string;
77
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTemplateDirective, never>;
78
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzTemplateDirective, "ng-template[smzTemplate]", never, { "name": { "alias": "smzTemplate"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
79
+ }
80
+ declare function smzFindTemplate(templates: readonly SmzTemplateDirective[], name: string): TemplateRef<unknown> | undefined;
81
+
82
+ interface SmzUiMenuItemCommandEvent {
83
+ originalEvent?: Event;
84
+ item?: SmzUiMenuItem;
85
+ index?: number;
86
+ }
87
+ /** Item de menu do ui-kit. Substitui o `MenuItem` do PrimeNG na API publica. */
88
+ interface SmzUiMenuItem {
89
+ id?: string;
90
+ label?: string;
91
+ icon?: string;
92
+ command?: (event: SmzUiMenuItemCommandEvent) => void;
93
+ url?: string;
94
+ target?: string;
95
+ routerLink?: any;
96
+ queryParams?: any;
97
+ fragment?: string;
98
+ routerLinkActiveOptions?: any;
99
+ queryParamsHandling?: 'merge' | 'preserve' | '';
100
+ preserveFragment?: boolean;
101
+ relativeTo?: unknown;
102
+ replaceUrl?: boolean;
103
+ skipLocationChange?: boolean;
104
+ items?: SmzUiMenuItem[];
105
+ separator?: boolean;
106
+ disabled?: boolean;
107
+ visible?: boolean;
108
+ expanded?: boolean;
109
+ badge?: string;
110
+ badgeStyleClass?: string;
111
+ tooltip?: string;
112
+ tooltipOptions?: unknown;
113
+ title?: string;
114
+ /** Quando `false`, o label e interpretado como HTML. */
115
+ escape?: boolean;
116
+ automationId?: unknown;
117
+ styleClass?: string;
118
+ iconClass?: string;
119
+ labelStyleClass?: string;
120
+ state?: Record<string, unknown>;
121
+ /** Dados livres do consumidor. */
122
+ data?: any;
123
+ [extra: string]: any;
124
+ }
125
+
126
+ /** No de arvore do ui-kit. Substitui o `TreeNode` do PrimeNG na API publica. */
127
+ interface SmzUiTreeNode<T = any> {
128
+ key?: string;
129
+ label?: string;
130
+ data?: T;
131
+ icon?: string;
132
+ expandedIcon?: string;
133
+ collapsedIcon?: string;
134
+ type?: string;
135
+ children?: SmzUiTreeNode<T>[];
136
+ parent?: SmzUiTreeNode<T>;
137
+ expanded?: boolean;
138
+ leaf?: boolean;
139
+ selectable?: boolean;
140
+ draggable?: boolean;
141
+ droppable?: boolean;
142
+ partialSelected?: boolean;
143
+ styleClass?: string;
144
+ checked?: boolean;
145
+ loading?: boolean;
146
+ /** Campos extras usados pelo consumidor (ex.: `tooltip`). */
147
+ [extra: string]: any;
148
+ }
149
+
150
+ /** Substitui o `FilterMatchMode` do PrimeNG. Os valores sao os mesmos para facilitar a migracao. */
151
+ declare const SmzFilterMatchMode: {
152
+ readonly STARTS_WITH: "startsWith";
153
+ readonly CONTAINS: "contains";
154
+ readonly NOT_CONTAINS: "notContains";
155
+ readonly ENDS_WITH: "endsWith";
156
+ readonly EQUALS: "equals";
157
+ readonly NOT_EQUALS: "notEquals";
158
+ readonly IN: "in";
159
+ readonly LESS_THAN: "lt";
160
+ readonly LESS_THAN_OR_EQUAL_TO: "lte";
161
+ readonly GREATER_THAN: "gt";
162
+ readonly GREATER_THAN_OR_EQUAL_TO: "gte";
163
+ readonly BETWEEN: "between";
164
+ readonly IS: "is";
165
+ readonly IS_NOT: "isNot";
166
+ readonly BEFORE: "before";
167
+ readonly AFTER: "after";
168
+ readonly DATE_IS: "dateIs";
169
+ readonly DATE_IS_NOT: "dateIsNot";
170
+ readonly DATE_BEFORE: "dateBefore";
171
+ readonly DATE_AFTER: "dateAfter";
172
+ };
173
+ type SmzFilterMatchModeValue = (typeof SmzFilterMatchMode)[keyof typeof SmzFilterMatchMode];
174
+ /** Substitui o `FilterOperator` do PrimeNG. */
175
+ declare const SmzFilterOperator: {
176
+ readonly AND: "and";
177
+ readonly OR: "or";
178
+ };
179
+ type SmzFilterOperatorValue = (typeof SmzFilterOperator)[keyof typeof SmzFilterOperator];
180
+ /** Substitui o `FilterMetadata` do PrimeNG. */
181
+ interface SmzFilterMetadata {
182
+ value?: any;
183
+ matchMode?: SmzFilterMatchModeValue | string;
184
+ operator?: SmzFilterOperatorValue | string;
185
+ }
186
+
187
+ type SmzButtonSeverity = 'primary' | 'secondary' | 'danger' | 'success' | 'warning';
188
+ type SmzButtonVariant = 'solid' | 'outlined' | 'text';
189
+ type SmzButtonSize = 'sm' | 'md' | 'lg';
190
+ type SmzButtonIconPosition = 'left' | 'right';
191
+ /** Severidades aceitas por compatibilidade com o vocabulario antigo (PrimeNG). */
192
+ type SmzButtonLegacySeverity = 'info' | 'warn' | 'help' | 'error' | 'contrast' | 'plain' | 'ghost';
193
+ interface ParsedStyleClass {
194
+ severity?: SmzButtonSeverity;
195
+ variant?: SmzButtonVariant;
196
+ size?: SmzButtonSize;
197
+ rounded?: boolean;
198
+ extra: string;
199
+ }
200
+ /**
201
+ * Interpreta strings de classe no vocabulario antigo (`p-button-outlined p-button-sm px-3`).
202
+ * Tokens `p-button-*` viram props; os demais seguem como classes extras.
203
+ */
204
+ type SmzStyleClass = string | SmzStyleClass[] | Record<string, unknown> | null | undefined;
205
+ declare function smzNormalizeStyleClass(value: SmzStyleClass): string;
206
+ declare function smzParseButtonStyleClass(styleClass: SmzStyleClass): ParsedStyleClass;
207
+ /**
208
+ * Botao do ui-kit. Substitui o `pButton` / `p-button` do PrimeNG.
209
+ *
210
+ * <button smzButton label="Excluir" icon="fa-solid fa-trash" severity="danger" variant="outlined"></button>
211
+ *
212
+ * `styleClass` aceita o vocabulario antigo (`p-button-outlined p-button-sm`) alem de classes livres.
213
+ */
214
+ declare class SmzButtonComponent {
215
+ readonly label: _angular_core.InputSignal<string>;
216
+ readonly icon: _angular_core.InputSignal<string>;
217
+ readonly iconPosition: _angular_core.InputSignal<SmzButtonIconPosition>;
218
+ readonly severity: _angular_core.InputSignal<SmzButtonSeverity | SmzButtonLegacySeverity>;
219
+ readonly variant: _angular_core.InputSignal<SmzButtonVariant>;
220
+ readonly size: _angular_core.InputSignal<SmzButtonSize>;
221
+ /** Atalhos do vocabulario antigo: equivalem a `variant="text"` e `variant="outlined"`. */
222
+ readonly text: _angular_core.InputSignalWithTransform<boolean, unknown>;
223
+ readonly outlined: _angular_core.InputSignalWithTransform<boolean, unknown>;
224
+ readonly rounded: _angular_core.InputSignalWithTransform<boolean, unknown>;
225
+ readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
226
+ readonly styleClass: _angular_core.InputSignal<SmzStyleClass>;
227
+ private readonly staticClass;
228
+ protected readonly classes: _angular_core.Signal<string>;
229
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzButtonComponent, never>;
230
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzButtonComponent, "button[smzButton], a[smzButton]", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconPosition": { "alias": "iconPosition"; "required": false; "isSignal": true; }; "severity": { "alias": "severity"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "outlined": { "alias": "outlined"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
231
+ }
232
+
233
+ type SmzTooltipPosition = 'top' | 'bottom' | 'left' | 'right';
234
+ type SmzTooltipEvent = 'hover' | 'focus' | 'both';
235
+ interface SmzTooltipOptions {
236
+ tooltipPosition?: SmzTooltipPosition;
237
+ showDelay?: number;
238
+ hideDelay?: number;
239
+ tooltipEvent?: SmzTooltipEvent;
240
+ escape?: boolean;
241
+ tooltipStyleClass?: string;
242
+ tooltipZIndex?: string | number;
243
+ tooltipDisabled?: boolean;
244
+ }
245
+ declare class SmzTooltipComponent {
246
+ readonly text: _angular_core.InputSignal<string>;
247
+ readonly escape: _angular_core.InputSignal<boolean>;
248
+ protected readonly classes = "max-w-xs rounded-control bg-ui-fg px-2 py-1 font-ui text-ui-xs text-ui-surface-1 shadow-overlay";
249
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTooltipComponent, never>;
250
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTooltipComponent, "ui-tooltip", never, { "text": { "alias": "text"; "required": true; "isSignal": true; }; "escape": { "alias": "escape"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
251
+ }
252
+ /**
253
+ * Tooltip do ui-kit. Substitui o `pTooltip` do PrimeNG.
254
+ * Requer o CSS do CDK Overlay no app (`@angular/cdk/overlay-prebuilt.css`).
255
+ *
256
+ * <button smzButton smzTooltip="Salvar" tooltipPosition="bottom">...</button>
257
+ */
258
+ declare class SmzTooltipDirective implements OnDestroy {
259
+ readonly text: _angular_core.InputSignal<string>;
260
+ readonly tooltipPosition: _angular_core.InputSignal<SmzTooltipPosition>;
261
+ readonly showDelay: _angular_core.InputSignal<number>;
262
+ readonly hideDelay: _angular_core.InputSignal<number>;
263
+ readonly tooltipEvent: _angular_core.InputSignal<SmzTooltipEvent>;
264
+ readonly escape: _angular_core.InputSignalWithTransform<boolean, unknown>;
265
+ readonly tooltipStyleClass: _angular_core.InputSignal<string>;
266
+ readonly tooltipZIndex: _angular_core.InputSignal<string | number>;
267
+ readonly tooltipDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
268
+ /** Opcoes agrupadas (compatibilidade com `tooltipOptions` do PrimeNG). Sobrescrevem os inputs individuais. */
269
+ readonly tooltipOptions: _angular_core.InputSignal<SmzTooltipOptions>;
270
+ /** Aceito por compatibilidade; o overlay do CDK ja e anexado ao body. */
271
+ readonly appendTo: _angular_core.InputSignal<unknown>;
272
+ private readonly overrides;
273
+ private readonly overlay;
274
+ private readonly host;
275
+ private overlayRef?;
276
+ private showTimer?;
277
+ private hideTimer?;
278
+ /** Ajuste programatico de opcoes (usado por diretivas que envolvem o tooltip). */
279
+ configure(options: SmzTooltipOptions): void;
280
+ onEnter(source: 'hover' | 'focus'): void;
281
+ onLeave(source: 'hover' | 'focus'): void;
282
+ show(): void;
283
+ hide(): void;
284
+ ngOnDestroy(): void;
285
+ private accepts;
286
+ private option;
287
+ private open;
288
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTooltipDirective, never>;
289
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzTooltipDirective, "[smzTooltip]", never, { "text": { "alias": "smzTooltip"; "required": false; "isSignal": true; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; "isSignal": true; }; "showDelay": { "alias": "showDelay"; "required": false; "isSignal": true; }; "hideDelay": { "alias": "hideDelay"; "required": false; "isSignal": true; }; "tooltipEvent": { "alias": "tooltipEvent"; "required": false; "isSignal": true; }; "escape": { "alias": "escape"; "required": false; "isSignal": true; }; "tooltipStyleClass": { "alias": "tooltipStyleClass"; "required": false; "isSignal": true; }; "tooltipZIndex": { "alias": "tooltipZIndex"; "required": false; "isSignal": true; }; "tooltipDisabled": { "alias": "tooltipDisabled"; "required": false; "isSignal": true; }; "tooltipOptions": { "alias": "tooltipOptions"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
290
+ }
291
+
292
+ /**
293
+ * Efeito ripple. Substitui o `pRipple` do PrimeNG.
294
+ * Usa a Web Animations API, entao nao depende de CSS/keyframes.
295
+ */
296
+ declare class SmzRippleDirective {
297
+ private readonly host;
298
+ protected ripple(event: PointerEvent): void;
299
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzRippleDirective, never>;
300
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzRippleDirective, "[smzRipple]", never, {}, {}, never, never, true, never>;
301
+ }
302
+
303
+ type SmzInputSize = 'sm' | 'md' | 'lg';
304
+ /** Campo de texto. Substitui o `pInputText` do PrimeNG. */
305
+ declare class SmzInputTextDirective {
306
+ readonly size: _angular_core.InputSignal<SmzInputSize>;
307
+ readonly invalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
308
+ private readonly staticClass;
309
+ protected readonly classes: _angular_core.Signal<string>;
310
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzInputTextDirective, never>;
311
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzInputTextDirective, "input[smzInputText]", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
312
+ }
313
+ /** Area de texto. Substitui o `pTextarea` / `pInputTextarea` do PrimeNG. */
314
+ declare class SmzTextareaDirective {
315
+ readonly invalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
316
+ /** Cresce com o conteudo (equivale ao `autoResize` do `pTextarea`). */
317
+ readonly autoResize: _angular_core.InputSignalWithTransform<boolean, unknown>;
318
+ private readonly el;
319
+ constructor();
320
+ protected resize(): void;
321
+ private readonly staticClass;
322
+ protected readonly classes: _angular_core.Signal<string>;
323
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTextareaDirective, never>;
324
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzTextareaDirective, "textarea[smzTextarea]", never, { "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "autoResize": { "alias": "autoResize"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
325
+ }
326
+
327
+ /**
328
+ * Checkbox do ui-kit. Substitui o `p-checkbox` do PrimeNG.
329
+ *
330
+ * - Booleano: `<ui-checkbox formControlName="ativo" label="Ativo" />`
331
+ * - Grupo (modelo e um array): `<ui-checkbox formControlName="itens" value="a" label="A" />`
332
+ */
333
+ declare class SmzCheckboxComponent extends SmzValueAccessor<unknown> {
334
+ readonly label: _angular_core.InputSignal<string>;
335
+ readonly inputId: _angular_core.InputSignal<string>;
336
+ /** Valor deste item quando o modelo e um array (modo grupo). */
337
+ readonly value: _angular_core.InputSignal<unknown>;
338
+ /** Forca o modo booleano mesmo com `value` informado. Mantido por compatibilidade com o Prime. */
339
+ readonly binary: _angular_core.InputSignalWithTransform<boolean, unknown>;
340
+ readonly name: _angular_core.InputSignal<string>;
341
+ readonly changed: _angular_core.OutputEmitterRef<{
342
+ checked: boolean;
343
+ value: unknown;
344
+ }>;
345
+ private readonly groupMode;
346
+ protected readonly checked: _angular_core.Signal<boolean>;
347
+ protected readonly boxClasses: _angular_core.Signal<"border-ui-primary bg-ui-primary text-ui-on-primary" | "border-ui-line-strong bg-ui-surface-1 text-transparent">;
348
+ protected toggle(): void;
349
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzCheckboxComponent, never>;
350
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzCheckboxComponent, "ui-checkbox", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "binary": { "alias": "binary"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, { "changed": "changed"; }, never, ["*"], true, never>;
351
+ }
352
+
353
+ /**
354
+ * Radio do ui-kit. Substitui o `p-radiobutton` do PrimeNG.
355
+ * Cada radio do grupo usa o mesmo controle de formulario e o mesmo `name`.
356
+ *
357
+ * <ui-radio-button formControlName="tipo" name="tipo" value="a" label="A" />
358
+ */
359
+ declare class SmzRadioButtonComponent extends SmzValueAccessor<unknown> {
360
+ private readonly injector;
361
+ private readonly destroyRef;
362
+ readonly value: _angular_core.InputSignal<unknown>;
363
+ readonly name: _angular_core.InputSignal<string>;
364
+ readonly label: _angular_core.InputSignal<string>;
365
+ readonly clicked: _angular_core.OutputEmitterRef<{
366
+ value: unknown;
367
+ }>;
368
+ /**
369
+ * Os radios do grupo compartilham o mesmo controle, mas `commit` so atualiza o radio clicado.
370
+ * Acompanhar o valor do controle mantem os demais radios sincronizados (desmarcam visualmente).
371
+ */
372
+ constructor();
373
+ protected readonly checked: _angular_core.Signal<boolean>;
374
+ protected select(): void;
375
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzRadioButtonComponent, never>;
376
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzRadioButtonComponent, "ui-radio-button", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, ["*"], true, never>;
377
+ }
378
+
379
+ /**
380
+ * Interruptor. Substitui o `p-toggleswitch` do PrimeNG.
381
+ *
382
+ * <ui-toggle-switch formControlName="ativo" />
383
+ */
384
+ declare class SmzToggleSwitchComponent extends SmzValueAccessor<boolean> {
385
+ readonly name: _angular_core.InputSignal<string>;
386
+ readonly changed: _angular_core.OutputEmitterRef<{
387
+ checked: boolean;
388
+ }>;
389
+ protected toggle(): void;
390
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzToggleSwitchComponent, never>;
391
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzToggleSwitchComponent, "ui-toggle-switch", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; }, { "changed": "changed"; }, never, never, true, never>;
392
+ }
393
+
394
+ /** Contador/etiqueta pequena. Substitui o `p-badge` do PrimeNG. */
395
+ declare class SmzBadgeComponent {
396
+ readonly value: _angular_core.InputSignal<string | number>;
397
+ readonly severity: _angular_core.InputSignal<SmzSeverity | SmzLegacySeverity>;
398
+ protected readonly classes: _angular_core.Signal<string>;
399
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzBadgeComponent, never>;
400
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzBadgeComponent, "ui-badge", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "severity": { "alias": "severity"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
401
+ }
402
+
403
+ /** Etiqueta de status. Substitui o `p-tag` do PrimeNG. */
404
+ declare class SmzTagComponent {
405
+ readonly value: _angular_core.InputSignal<string | number>;
406
+ readonly severity: _angular_core.InputSignal<SmzSeverity | SmzLegacySeverity>;
407
+ readonly icon: _angular_core.InputSignal<string>;
408
+ readonly rounded: _angular_core.InputSignal<boolean>;
409
+ protected readonly classes: _angular_core.Signal<string>;
410
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTagComponent, never>;
411
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTagComponent, "ui-tag", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "severity": { "alias": "severity"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
412
+ }
413
+
414
+ type SmzDividerLayout = 'horizontal' | 'vertical';
415
+ /** Linha separadora. Substitui o `p-divider` do PrimeNG (sem conteudo central). */
416
+ declare class SmzDividerComponent {
417
+ readonly layout: _angular_core.InputSignal<SmzDividerLayout>;
418
+ protected readonly classes: _angular_core.Signal<"mx-3 block w-px self-stretch bg-ui-line" | "my-4 block h-px w-full bg-ui-line">;
419
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDividerComponent, never>;
420
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzDividerComponent, "ui-divider", never, { "layout": { "alias": "layout"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
421
+ }
422
+
423
+ type SmzSkeletonShape = 'rectangle' | 'circle';
424
+ /** Placeholder de carregamento. Substitui o `p-skeleton` do PrimeNG. */
425
+ declare class SmzSkeletonComponent {
426
+ readonly shape: _angular_core.InputSignal<SmzSkeletonShape>;
427
+ readonly width: _angular_core.InputSignal<string>;
428
+ readonly height: _angular_core.InputSignal<string>;
429
+ protected readonly classes: _angular_core.Signal<"block animate-pulse rounded-full bg-ui-surface-3" | "block animate-pulse rounded-control bg-ui-surface-3">;
430
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzSkeletonComponent, never>;
431
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzSkeletonComponent, "ui-skeleton", never, { "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
432
+ }
433
+
434
+ type SmzProgressBarMode = 'determinate' | 'indeterminate';
435
+ /** Barra de progresso. Substitui o `p-progressbar` do PrimeNG. */
436
+ declare class SmzProgressBarComponent {
437
+ readonly value: _angular_core.InputSignal<number>;
438
+ readonly mode: _angular_core.InputSignal<SmzProgressBarMode>;
439
+ readonly showValue: _angular_core.InputSignalWithTransform<boolean, unknown>;
440
+ protected readonly percent: _angular_core.Signal<number>;
441
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzProgressBarComponent, never>;
442
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzProgressBarComponent, "ui-progress-bar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "showValue": { "alias": "showValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
443
+ }
444
+
445
+ type SmzMessageSeverity = 'info' | 'success' | 'warn' | 'error' | 'secondary';
446
+ /** Mensagem inline. Substitui o `p-message` do PrimeNG. */
447
+ declare class SmzMessageComponent {
448
+ readonly severity: _angular_core.InputSignal<string>;
449
+ readonly text: _angular_core.InputSignal<string>;
450
+ readonly icon: _angular_core.InputSignal<string>;
451
+ protected readonly classes: _angular_core.Signal<string>;
452
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzMessageComponent, never>;
453
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzMessageComponent, "ui-message", never, { "severity": { "alias": "severity"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
454
+ }
455
+
456
+ /**
457
+ * Icone baseado em classes de fonte de icones (ex.: "fa-solid fa-check", "fa-solid fa-check").
458
+ * A origem dos glifos e do app; o componente so padroniza a marcacao.
459
+ */
460
+ declare class SmzIconComponent {
461
+ readonly name: _angular_core.InputSignal<string>;
462
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzIconComponent, never>;
463
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzIconComponent, "ui-icon", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
464
+ }
465
+
466
+ declare function smzMergeClasses(base: string, overrides: string | null | undefined): string;
467
+ /** Le a classe estatica do elemento hospedeiro (`class="..."`), para mescla-la com as classes do componente. */
468
+ declare function smzStaticHostClass(): string;
469
+
470
+ /**
471
+ * Badge sobreposto a um elemento (canto superior direito). Substitui o `pBadge` do PrimeNG.
472
+ *
473
+ * <i class="fa-solid fa-bell" smzBadge [value]="count"></i>
474
+ */
475
+ declare class SmzBadgeDirective implements OnDestroy {
476
+ readonly value: _angular_core.InputSignal<string | number>;
477
+ readonly severity: _angular_core.InputSignal<SmzSeverity | SmzLegacySeverity>;
478
+ private readonly host;
479
+ private readonly renderer;
480
+ private badge?;
481
+ constructor();
482
+ ngOnDestroy(): void;
483
+ private removeBadge;
484
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzBadgeDirective, never>;
485
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzBadgeDirective, "[smzBadge]", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "severity": { "alias": "severity"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
486
+ }
487
+
488
+ /**
489
+ * Utilitarios de objeto usados pelos componentes de dados (tabela, arvore, selects).
490
+ * Substitui o `ObjectUtils` do PrimeNG, com a mesma semantica dos metodos usados.
491
+ */
492
+ declare class SmzObjectUtils {
493
+ static isEmpty(value: any): boolean;
494
+ static isNotEmpty(value: any): boolean;
495
+ static isFunction(value: any): boolean;
496
+ /** Le um campo de um objeto; aceita caminho com ponto (`a.b.c`) ou funcao. */
497
+ static resolveFieldData(data: any, field: any): any;
498
+ static equals(first: any, second: any, field?: string): boolean;
499
+ static deepEquals(first: any, second: any): boolean;
500
+ /** Move um item de `from` para `to` (muta o array). */
501
+ static reorderArray(value: any[], from: number, to: number): void;
502
+ static removeAccents(text: string): string;
503
+ /**
504
+ * Compara dois valores respeitando valores vazios (vazio vai para o fim na ordem ascendente).
505
+ * `locale` define o collator usado para strings (com ordenacao numerica).
506
+ */
507
+ static compare(first: any, second: any, locale?: string, order?: number): number;
508
+ static sort(first: any, second: any, order?: number, locale?: string, nullSortOrder?: number): number;
509
+ }
510
+ /** Gera ids unicos para elementos (`smz_id_1`, `smz_id_2`...). Substitui o `UniqueComponentId` do PrimeNG. */
511
+ declare function smzUniqueId(prefix?: string): string;
512
+
513
+ declare function read(element: HTMLElement | null | undefined): number;
514
+ /**
515
+ * Gerencia a pilha de z-index de overlays (dialogs, menus, popovers).
516
+ * Substitui o `ZIndexUtils` do PrimeNG.
517
+ */
518
+ declare const SmzZIndex: {
519
+ get: typeof read;
520
+ getCurrent: (key?: string) => number;
521
+ set: (key: string, element: HTMLElement | null | undefined, baseZIndex?: number) => void;
522
+ clear: (element: HTMLElement | null | undefined) => void;
523
+ };
524
+
525
+ /**
526
+ * Utilitarios de DOM usados pelos componentes que manipulam elementos diretamente (tabela, dialog, menu).
527
+ * Substitui o `DomHandler` do PrimeNG, com os mesmos nomes e semantica dos metodos usados.
528
+ */
529
+ declare class SmzDomHandler {
530
+ private static classes;
531
+ static hasClass(element: any, className: string): boolean;
532
+ static addClass(element: any, className: string): void;
533
+ static removeClass(element: any, className: string): void;
534
+ static invokeElementMethod(element: any, methodName: string, args?: any[]): void;
535
+ static find(element: any, selector: string): any;
536
+ static findSingle(element: any, selector: string): any;
537
+ static matches(element: any, selector: string): boolean;
538
+ static index(element: any): number;
539
+ static indexWithinGroup(element: any, attributeName: string): number;
540
+ static appendChild(element: any, target: any): void;
541
+ static isElement(obj: any): boolean;
542
+ static getOuterWidth(element: any, margin?: boolean): number;
543
+ static getOuterHeight(element: any, margin?: boolean): number;
544
+ static getOffset(element: any): {
545
+ top: any;
546
+ left: any;
547
+ };
548
+ static getWindowScrollTop(): number;
549
+ static getWindowScrollLeft(): number;
550
+ static getViewport(): {
551
+ width: number;
552
+ height: number;
553
+ };
554
+ static getHiddenElementDimensions(element: any): {
555
+ width: number;
556
+ height: number;
557
+ };
558
+ static getHiddenElementOuterWidth(element: any): number;
559
+ static getHiddenElementOuterHeight(element: any): number;
560
+ static isVisible(element: any): boolean;
561
+ static isTouchDevice(): boolean;
562
+ static clearSelection(): void;
563
+ static getFocusableElements(element: any, selector?: string): any[];
564
+ /** Posiciona `element` (position: absolute no body) abaixo de `target`, invertendo se nao couber. */
565
+ static absolutePosition(element: any, target: any, gutter?: boolean): void;
566
+ /** Posiciona `element` relativo ao seu offsetParent, abaixo de `target`. */
567
+ static relativePosition(element: any, target: any, gutter?: boolean): void;
568
+ }
569
+ /**
570
+ * Dispara `listener` quando qualquer ancestral rolavel de `element` rola (usado para fechar overlays conectados).
571
+ * Substitui o `ConnectedOverlayScrollHandler` do PrimeNG.
572
+ */
573
+ declare class SmzConnectedOverlayScrollHandler {
574
+ private element;
575
+ private listener;
576
+ private parents;
577
+ constructor(element: any, listener?: () => void);
578
+ bindScrollListener(): void;
579
+ unbindScrollListener(): void;
580
+ destroy(): void;
581
+ }
582
+
583
+ /**
584
+ * Foca o primeiro elemento focavel (ou o proprio hospedeiro) apos a renderizacao.
585
+ * Substitui o `pAutoFocus` do PrimeNG.
586
+ *
587
+ * <input smzAutoFocus /> <div [smzAutoFocus]="true"> ... </div>
588
+ */
589
+ declare class SmzAutoFocusDirective implements AfterContentChecked {
590
+ readonly autofocus: _angular_core.InputSignalWithTransform<boolean, unknown>;
591
+ private readonly host;
592
+ private focused;
593
+ ngAfterContentChecked(): void;
594
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzAutoFocusDirective, never>;
595
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzAutoFocusDirective, "[smzAutoFocus]", never, { "autofocus": { "alias": "smzAutoFocus"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
596
+ }
597
+
598
+ /** Configuracao de um dialog aberto por `SmzDialogService`. Tambem e o token de DI para o componente do conteudo. */
599
+ declare class SmzDialogConfig<TData = any> {
600
+ data?: TData;
601
+ header?: string;
602
+ width?: string;
603
+ height?: string;
604
+ showHeader?: boolean;
605
+ modal?: boolean;
606
+ closable?: boolean;
607
+ closeOnEscape?: boolean;
608
+ dismissableMask?: boolean;
609
+ baseZIndex?: number;
610
+ style?: Record<string, string>;
611
+ contentStyle?: Record<string, string>;
612
+ styleClass?: string;
613
+ }
614
+ /** Referencia ao dialog aberto. Injetavel no componente do conteudo para fechar com um resultado. */
615
+ declare class SmzDialogRef<TResult = unknown> {
616
+ private readonly closeSubject;
617
+ private closeHandler;
618
+ /** Emite o resultado quando o dialog fecha. */
619
+ readonly onClose: Observable<TResult | undefined>;
620
+ close(result?: TResult): void;
621
+ /** @internal registrado pelo servico para destruir o overlay. */
622
+ bind(closeHandler: () => void): void;
623
+ }
624
+
625
+ /** Componente que sera criado dentro do dialog. */
626
+ declare const SMZ_DIALOG_CONTENT: InjectionToken<Type<unknown>>;
627
+ /** Moldura do dialog: cabecalho com titulo e botao fechar, mais a area do conteudo. */
628
+ declare class SmzDialogFrameComponent {
629
+ protected readonly config: SmzDialogConfig<any>;
630
+ protected readonly ref: SmzDialogRef<any>;
631
+ private readonly injector;
632
+ private readonly contentType;
633
+ private readonly host;
634
+ constructor();
635
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDialogFrameComponent, never>;
636
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzDialogFrameComponent, "ui-dialog-frame", never, {}, {}, never, never, true, never>;
637
+ }
638
+
639
+ /**
640
+ * Abre um componente dentro de um dialog modal (CDK Overlay). Substitui o `DialogService` do PrimeNG.
641
+ * Requer o CSS do CDK Overlay no app (`@angular/cdk/overlay-prebuilt.css`).
642
+ *
643
+ * const ref = dialogs.open(MeuComponente, { header: 'Titulo', width: '50%', data: { ... } });
644
+ * ref.onClose.subscribe((resultado) => ...);
645
+ */
646
+ declare class SmzDialogService {
647
+ private readonly overlay;
648
+ private readonly injector;
649
+ open<TResult = unknown>(content: Type<unknown>, config?: Partial<SmzDialogConfig>): SmzDialogRef<TResult>;
650
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDialogService, never>;
651
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SmzDialogService>;
652
+ }
653
+
654
+ /** Posicoes aceitas por `ui-dialog`. */
655
+ type SmzDialogPosition = 'center' | 'top' | 'bottom' | 'left' | 'right' | 'topleft' | 'topright' | 'bottomleft' | 'bottomright';
656
+ /**
657
+ * Dialog declarativo. Substitui o `p-dialog` do PrimeNG.
658
+ *
659
+ * <ui-dialog header="Titulo" [(visible)]="aberto" [style]="{ width: '450px' }">
660
+ * conteudo
661
+ * <ng-template smzTemplate="footer"><button smzButton label="Salvar"></button></ng-template>
662
+ * </ui-dialog>
663
+ */
664
+ declare class SmzDialogComponent implements OnDestroy {
665
+ readonly visible: _angular_core.ModelSignal<boolean>;
666
+ readonly header: _angular_core.InputSignal<string>;
667
+ readonly modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
668
+ readonly closable: _angular_core.InputSignalWithTransform<boolean, unknown>;
669
+ readonly dismissableMask: _angular_core.InputSignalWithTransform<boolean, unknown>;
670
+ readonly closeOnEscape: _angular_core.InputSignalWithTransform<boolean, unknown>;
671
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
672
+ readonly styleClass: _angular_core.InputSignal<string>;
673
+ readonly baseZIndex: _angular_core.InputSignal<number>;
674
+ /** Permite arrastar pelo cabecalho. */
675
+ readonly draggable: _angular_core.InputSignalWithTransform<boolean, unknown>;
676
+ /** Mostra a alca nativa de redimensionar no canto inferior direito. */
677
+ readonly resizable: _angular_core.InputSignalWithTransform<boolean, unknown>;
678
+ /** Mostra o botao de maximizar no cabecalho padrao (com `smzTemplate="header"` use `maximize()`). */
679
+ readonly maximizable: _angular_core.InputSignalWithTransform<boolean, unknown>;
680
+ readonly maximized: _angular_core.ModelSignal<boolean>;
681
+ /** Posicao na tela (como o `position` do `p-dialog`). */
682
+ readonly position: _angular_core.InputSignal<SmzDialogPosition>;
683
+ readonly shown: _angular_core.OutputEmitterRef<void>;
684
+ readonly hidden: _angular_core.OutputEmitterRef<void>;
685
+ private readonly panel;
686
+ private readonly templates;
687
+ protected readonly headerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
688
+ protected readonly footerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
689
+ private readonly overlay;
690
+ private readonly viewContainer;
691
+ private readonly host;
692
+ private overlayRef?;
693
+ protected readonly dx: _angular_core.WritableSignal<number>;
694
+ protected readonly dy: _angular_core.WritableSignal<number>;
695
+ constructor();
696
+ /** Alterna entre maximizado e normal. */
697
+ maximize(): void;
698
+ protected startDrag(event: PointerEvent): void;
699
+ private strategyFor;
700
+ close(): void;
701
+ ngOnDestroy(): void;
702
+ private open;
703
+ private dispose;
704
+ /** O `data-testid` posto no hospedeiro vai para o painel renderizado no overlay (usado nos testes e2e). */
705
+ private forwardTestId;
706
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDialogComponent, never>;
707
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzDialogComponent, "ui-dialog", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "modal": { "alias": "modal"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "dismissableMask": { "alias": "dismissableMask"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "maximizable": { "alias": "maximizable"; "required": false; "isSignal": true; }; "maximized": { "alias": "maximized"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "maximized": "maximizedChange"; "shown": "shown"; "hidden": "hidden"; }, ["templates"], ["*"], true, never>;
708
+ }
709
+
710
+ /** Elemento real ou ancora virtual que apenas informa o retangulo. */
711
+ type SmzPopoverTarget = Element | {
712
+ getBoundingClientRect(): {
713
+ left: number;
714
+ top: number;
715
+ width: number;
716
+ height: number;
717
+ };
718
+ };
719
+ /**
720
+ * Painel flutuante ancorado a um elemento. Substitui o `p-popover` do PrimeNG.
721
+ *
722
+ * <button smzButton (click)="op.toggle($event)"></button>
723
+ * <ui-popover #op>conteudo</ui-popover>
724
+ */
725
+ declare class SmzPopoverComponent implements OnDestroy {
726
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
727
+ readonly styleClass: _angular_core.InputSignal<string>;
728
+ readonly dismissable: _angular_core.InputSignalWithTransform<boolean, unknown>;
729
+ readonly autoZIndex: _angular_core.InputSignalWithTransform<boolean, unknown>;
730
+ /** Aceito por compatibilidade; o overlay do CDK ja e anexado ao body. */
731
+ readonly appendTo: _angular_core.InputSignal<unknown>;
732
+ readonly shown: _angular_core.OutputEmitterRef<void>;
733
+ readonly hidden: _angular_core.OutputEmitterRef<void>;
734
+ private readonly panel;
735
+ private readonly overlay;
736
+ private readonly viewContainer;
737
+ private readonly host;
738
+ private overlayRef?;
739
+ private origin?;
740
+ get overlayVisible(): boolean;
741
+ toggle(event: Event | null, target?: SmzPopoverTarget): void;
742
+ show(event: Event | null, target?: SmzPopoverTarget): void;
743
+ hide(): void;
744
+ ngOnDestroy(): void;
745
+ /** Ancora virtual (objeto com `getBoundingClientRect`) vira um ponto para o CDK. */
746
+ private toPoint;
747
+ /** O `data-testid` posto no hospedeiro vai para o painel renderizado no overlay (usado nos testes e2e). */
748
+ private forwardTestId;
749
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzPopoverComponent, never>;
750
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzPopoverComponent, "ui-popover", never, { "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "dismissable": { "alias": "dismissable"; "required": false; "isSignal": true; }; "autoZIndex": { "alias": "autoZIndex"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, { "shown": "shown"; "hidden": "hidden"; }, never, ["*"], true, never>;
751
+ }
752
+
753
+ type SmzDrawerPosition = 'left' | 'right' | 'top' | 'bottom' | 'full';
754
+ /**
755
+ * Painel lateral deslizante. Substitui o `p-drawer` do PrimeNG.
756
+ *
757
+ * <ui-drawer [(visible)]="aberto" position="right" header="Filtros">conteudo</ui-drawer>
758
+ */
759
+ declare class SmzDrawerComponent implements OnDestroy {
760
+ readonly visible: _angular_core.ModelSignal<boolean>;
761
+ readonly position: _angular_core.InputSignal<SmzDrawerPosition>;
762
+ readonly fullScreen: _angular_core.InputSignalWithTransform<boolean, unknown>;
763
+ readonly header: _angular_core.InputSignal<string>;
764
+ readonly modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
765
+ readonly dismissible: _angular_core.InputSignalWithTransform<boolean, unknown>;
766
+ readonly closeOnEscape: _angular_core.InputSignalWithTransform<boolean, unknown>;
767
+ readonly showCloseIcon: _angular_core.InputSignalWithTransform<boolean, unknown>;
768
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
769
+ readonly styleClass: _angular_core.InputSignal<string>;
770
+ /** Aceitos por compatibilidade com o `p-drawer`; sem efeito neste componente. */
771
+ readonly blockScroll: _angular_core.InputSignalWithTransform<boolean, unknown>;
772
+ readonly ariaCloseLabel: _angular_core.InputSignal<string>;
773
+ readonly appendTo: _angular_core.InputSignal<unknown>;
774
+ readonly shown: _angular_core.OutputEmitterRef<void>;
775
+ readonly hidden: _angular_core.OutputEmitterRef<void>;
776
+ private readonly panel;
777
+ private readonly templates;
778
+ protected readonly headerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
779
+ protected readonly footerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
780
+ protected readonly effectivePosition: _angular_core.Signal<SmzDrawerPosition>;
781
+ protected readonly panelClasses: _angular_core.Signal<string>;
782
+ private readonly overlay;
783
+ private readonly viewContainer;
784
+ private readonly host;
785
+ private overlayRef?;
786
+ constructor();
787
+ close(): void;
788
+ ngOnDestroy(): void;
789
+ private open;
790
+ private dispose;
791
+ /** O `data-testid` posto no hospedeiro vai para o painel renderizado no overlay (usado nos testes e2e). */
792
+ private forwardTestId;
793
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDrawerComponent, never>;
794
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzDrawerComponent, "ui-drawer", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "fullScreen": { "alias": "fullScreen"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "modal": { "alias": "modal"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "showCloseIcon": { "alias": "showCloseIcon"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "blockScroll": { "alias": "blockScroll"; "required": false; "isSignal": true; }; "ariaCloseLabel": { "alias": "ariaCloseLabel"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; "shown": "shown"; "hidden": "hidden"; }, ["templates"], ["*"], true, never>;
795
+ }
796
+
797
+ interface SmzToastMessage {
798
+ /** success | info | warn | error | secondary | contrast (vocabulario antigo) */
799
+ severity?: string;
800
+ summary?: string;
801
+ detail?: string;
802
+ id?: unknown;
803
+ /** Permite ter varios containers `ui-toast`, cada um escutando uma chave. */
804
+ key?: string;
805
+ /** Tempo de vida em ms (padrao do container se omitido). */
806
+ life?: number;
807
+ sticky?: boolean;
808
+ closable?: boolean;
809
+ data?: unknown;
810
+ icon?: string;
811
+ contentStyleClass?: string;
812
+ styleClass?: string;
813
+ closeIcon?: string;
814
+ [extra: string]: unknown;
815
+ }
816
+ /** Barramento de mensagens do toast. Substitui o `MessageService` do PrimeNG. */
817
+ declare class SmzMessageService {
818
+ private readonly state;
819
+ /** Mensagens atualmente na fila (todas as chaves). */
820
+ readonly messages: _angular_core.Signal<readonly SmzToastMessage[]>;
821
+ add(message: SmzToastMessage): void;
822
+ addAll(messages: SmzToastMessage[]): void;
823
+ remove(message: SmzToastMessage): void;
824
+ /** Remove todas as mensagens, ou so as da chave informada. */
825
+ clear(key?: string): void;
826
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzMessageService, never>;
827
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SmzMessageService>;
828
+ }
829
+
830
+ type SmzToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' | 'center';
831
+ /**
832
+ * Container de toasts: exibe as mensagens do `SmzMessageService`. Substitui o `p-toast` do PrimeNG.
833
+ *
834
+ * <ui-toast position="bottom-right" />
835
+ */
836
+ declare class SmzToastContainerComponent {
837
+ readonly position: _angular_core.InputSignal<SmzToastPosition>;
838
+ readonly key: _angular_core.InputSignal<string>;
839
+ readonly life: _angular_core.InputSignal<number>;
840
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
841
+ readonly styleClass: _angular_core.InputSignal<string>;
842
+ private readonly service;
843
+ private readonly timers;
844
+ protected readonly positionClasses: _angular_core.Signal<string>;
845
+ protected readonly visibleMessages: _angular_core.Signal<SmzToastMessage[]>;
846
+ constructor();
847
+ protected toneClasses(message: SmzToastMessage): string;
848
+ protected close(message: SmzToastMessage): void;
849
+ protected pause(message: SmzToastMessage): void;
850
+ protected resume(message: SmzToastMessage): void;
851
+ private schedule;
852
+ private arm;
853
+ private clearTimer;
854
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzToastContainerComponent, never>;
855
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzToastContainerComponent, "ui-toast", never, { "position": { "alias": "position"; "required": false; "isSignal": true; }; "key": { "alias": "key"; "required": false; "isSignal": true; }; "life": { "alias": "life"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
856
+ }
857
+
858
+ /**
859
+ * Menu de itens, inline ou em popup ancorado. Substitui o `p-menu` do PrimeNG.
860
+ *
861
+ * <button smzButton (click)="menu.toggle($event)"></button>
862
+ * <ui-menu #menu [model]="itens" [popup]="true" />
863
+ */
864
+ declare class SmzMenuListComponent implements OnDestroy {
865
+ readonly model: _angular_core.InputSignal<SmzUiMenuItem[]>;
866
+ readonly popup: _angular_core.InputSignalWithTransform<boolean, unknown>;
867
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
868
+ readonly styleClass: _angular_core.InputSignal<string>;
869
+ readonly autoZIndex: _angular_core.InputSignalWithTransform<boolean, unknown>;
870
+ /** Aceitos por compatibilidade com o `p-menu`; sem efeito neste componente. */
871
+ readonly appendTo: _angular_core.InputSignal<unknown>;
872
+ readonly baseZIndex: _angular_core.InputSignal<number>;
873
+ readonly shown: _angular_core.OutputEmitterRef<void>;
874
+ readonly hidden: _angular_core.OutputEmitterRef<void>;
875
+ private readonly list;
876
+ private readonly overlay;
877
+ private readonly viewContainer;
878
+ private readonly host;
879
+ private overlayRef?;
880
+ private origin?;
881
+ get visible(): boolean;
882
+ toggle(event: Event | null): void;
883
+ /** Abre o popup ancorado ao elemento do evento. */
884
+ show(event: Event | null, target?: Element): void;
885
+ /** Abre o popup nas coordenadas da tela (uso tipico: menu de contexto). */
886
+ showAt(x: number, y: number): void;
887
+ hide(): void;
888
+ ngOnDestroy(): void;
889
+ protected activate(item: SmzUiMenuItem, event: Event): void;
890
+ private open;
891
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzMenuListComponent, never>;
892
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzMenuListComponent, "ui-menu", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; "popup": { "alias": "popup"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "autoZIndex": { "alias": "autoZIndex"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; "isSignal": true; }; }, { "shown": "shown"; "hidden": "hidden"; }, never, never, true, never>;
893
+ }
894
+
895
+ /** Alvo que sabe qual elemento deve ser bloqueado (equivale ao `BlockableUI` do PrimeNG). */
896
+ interface SmzBlockableUi {
897
+ getBlockableElement(): HTMLElement;
898
+ }
899
+ type SmzBlockTarget = HTMLElement | SmzBlockableUi | null | undefined;
900
+ /**
901
+ * Bloqueia a interacao com um elemento exibindo uma mascara por cima dele. Substitui o `p-blockUI` do PrimeNG.
902
+ * Sem `target`, bloqueia o proprio pai do componente.
903
+ *
904
+ * <ui-block-ui [target]="elemento" [blocked]="carregando"><i class="fa-solid fa-lock"></i></ui-block-ui>
905
+ */
906
+ declare class SmzBlockUiComponent implements OnDestroy {
907
+ readonly target: _angular_core.InputSignal<unknown>;
908
+ readonly blocked: _angular_core.InputSignalWithTransform<boolean, unknown>;
909
+ private readonly mask;
910
+ private readonly host;
911
+ private attachedTo;
912
+ private previousPosition;
913
+ constructor();
914
+ ngOnDestroy(): void;
915
+ private block;
916
+ private unblock;
917
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzBlockUiComponent, never>;
918
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzBlockUiComponent, "ui-block-ui", never, { "target": { "alias": "target"; "required": false; "isSignal": true; }; "blocked": { "alias": "blocked"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
919
+ }
920
+
921
+ /** Barra de ferramentas simples (conteudo projetado). Substitui o `p-toolbar` do PrimeNG. */
922
+ declare class SmzToolbarComponent {
923
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzToolbarComponent, never>;
924
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzToolbarComponent, "ui-toolbar", never, {}, {}, never, ["*"], true, never>;
925
+ }
926
+
927
+ interface SmzAnchoredPanelOptions {
928
+ /** O painel tem pelo menos a largura da ancora. */
929
+ matchWidth?: boolean;
930
+ /** Fecha ao clicar fora (padrao: true). */
931
+ closeOnOutsideClick?: boolean;
932
+ /** Chamado quando o painel e fechado por clique fora ou Escape. */
933
+ onDismiss?: () => void;
934
+ }
935
+ /**
936
+ * Painel suspenso ancorado a um elemento (CDK Overlay): base dos selects, datepicker, autocomplete etc.
937
+ * Fecha com Escape ou clique fora (exceto na propria ancora).
938
+ */
939
+ declare class SmzAnchoredPanel {
940
+ private readonly overlay;
941
+ private readonly viewContainer;
942
+ private overlayRef?;
943
+ private subscription?;
944
+ constructor(overlay: Overlay, viewContainer: ViewContainerRef);
945
+ get isOpen(): boolean;
946
+ /** Elemento raiz do painel renderizado (para foco e medidas). */
947
+ get element(): HTMLElement | null;
948
+ open(anchor: HTMLElement, template: TemplateRef<unknown>, options?: SmzAnchoredPanelOptions): void;
949
+ close(): void;
950
+ updatePosition(): void;
951
+ }
952
+
953
+ type SmzFilterMode = 'contains' | 'startsWith' | 'endsWith' | 'equals' | 'notContains' | 'notEquals' | string;
954
+ /** Configuracao de como ler label/valor de uma opcao (usada por select, multiselect, listbox, selectbutton, autocomplete). */
955
+ interface SmzOptionConfig {
956
+ optionLabel?: string | null;
957
+ optionValue?: string | null;
958
+ optionDisabled?: string | null;
959
+ dataKey?: string | null;
960
+ }
961
+ /**
962
+ * Texto da opcao. Sem `optionLabel`, opcoes-objeto com `label` usam esse campo (como o `p-select` do PrimeNG);
963
+ * primitivos sao usados como estao.
964
+ */
965
+ declare function optionLabel(option: any, config: SmzOptionConfig): string;
966
+ /**
967
+ * Valor da opcao. Sem `optionValue` (e sem `optionLabel`), opcoes-objeto com `value` usam esse campo
968
+ * (como o `p-select` do PrimeNG); caso contrario o proprio objeto e o valor.
969
+ */
970
+ declare function optionValue(option: any, config: SmzOptionConfig): any;
971
+ declare function optionDisabled(option: any, config: SmzOptionConfig): boolean;
972
+ /** Igualdade de valores: por `dataKey` quando ha, senao comparacao profunda. */
973
+ declare function sameValue(first: any, second: any, dataKey?: string | null): boolean;
974
+ /** Filtra `options` por texto digitado, no modo informado (padrao: contains), ignorando acentos e caixa. */
975
+ declare function filterOptions<T>(options: readonly T[], text: string, config: SmzOptionConfig & {
976
+ filterBy?: string | null;
977
+ mode?: SmzFilterMode;
978
+ }): T[];
979
+
980
+ interface SmzSelectChangeEvent {
981
+ originalEvent?: Event;
982
+ value: any;
983
+ }
984
+ /**
985
+ * Lista suspensa de selecao unica. Substitui o `p-select` do PrimeNG.
986
+ *
987
+ * <ui-select [options]="paises" optionLabel="name" dataKey="id" [formControl]="pais" [filter]="true" />
988
+ *
989
+ * Sem `optionValue` o valor do controle e o proprio objeto da opcao.
990
+ */
991
+ declare class SmzSelectComponent extends SmzValueAccessor<any> implements OnDestroy {
992
+ readonly options: _angular_core.InputSignal<readonly any[]>;
993
+ readonly optionLabel: _angular_core.InputSignal<string>;
994
+ readonly optionValue: _angular_core.InputSignal<string>;
995
+ readonly optionDisabled: _angular_core.InputSignal<string>;
996
+ readonly dataKey: _angular_core.InputSignal<string>;
997
+ readonly placeholder: _angular_core.InputSignal<string>;
998
+ readonly filter: _angular_core.InputSignalWithTransform<boolean, unknown>;
999
+ readonly filterBy: _angular_core.InputSignal<string>;
1000
+ readonly filterMatchMode: _angular_core.InputSignal<string>;
1001
+ readonly filterPlaceholder: _angular_core.InputSignal<string>;
1002
+ readonly showClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
1003
+ readonly emptyMessage: _angular_core.InputSignal<string>;
1004
+ readonly emptyFilterMessage: _angular_core.InputSignal<string>;
1005
+ readonly styleClass: _angular_core.InputSignal<string>;
1006
+ readonly inputId: _angular_core.InputSignal<string>;
1007
+ readonly ariaLabel: _angular_core.InputSignal<string>;
1008
+ /** Aceito por compatibilidade com o `p-select`; o painel sempre e anexado ao body pelo CDK. */
1009
+ readonly appendTo: _angular_core.InputSignal<unknown>;
1010
+ readonly changed: _angular_core.OutputEmitterRef<SmzSelectChangeEvent>;
1011
+ readonly showed: _angular_core.OutputEmitterRef<void>;
1012
+ readonly hidden: _angular_core.OutputEmitterRef<void>;
1013
+ protected readonly listId: string;
1014
+ protected readonly open: _angular_core.WritableSignal<boolean>;
1015
+ protected readonly filterText: _angular_core.WritableSignal<string>;
1016
+ protected readonly activeIndex: _angular_core.WritableSignal<number>;
1017
+ protected readonly config: _angular_core.Signal<SmzOptionConfig>;
1018
+ protected readonly visibleOptions: _angular_core.Signal<any[]>;
1019
+ /** Templates opcionais: `item` (linha da lista) e `selectedItem` (valor exibido no campo), como no `p-select`. */
1020
+ private readonly templates;
1021
+ protected readonly itemTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1022
+ protected readonly selectedItemTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1023
+ protected readonly hasValue: _angular_core.Signal<boolean>;
1024
+ protected readonly selectedOption: _angular_core.Signal<any>;
1025
+ protected readonly displayLabel: _angular_core.Signal<string>;
1026
+ private readonly overlay;
1027
+ private readonly viewContainer;
1028
+ private readonly trigger;
1029
+ private readonly panel;
1030
+ private readonly filterInput;
1031
+ private readonly anchored;
1032
+ ngOnDestroy(): void;
1033
+ protected labelOf(option: any): string;
1034
+ protected isOptionDisabled(option: any): boolean;
1035
+ protected isSelected(option: any): boolean;
1036
+ protected optionClasses(option: any, index: number): string;
1037
+ protected toggle(): void;
1038
+ protected onBlur(): void;
1039
+ protected select(option: any, event?: Event): void;
1040
+ protected clear(event: Event): void;
1041
+ protected onFilter(event: Event): void;
1042
+ protected onKeydown(event: KeyboardEvent): void;
1043
+ private openPanel;
1044
+ private close;
1045
+ private afterClose;
1046
+ private nextEnabled;
1047
+ private jumpToLetter;
1048
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzSelectComponent, never>;
1049
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzSelectComponent, "ui-select", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionLabel": { "alias": "optionLabel"; "required": false; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": false; "isSignal": true; }; "optionDisabled": { "alias": "optionDisabled"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "filterMatchMode": { "alias": "filterMatchMode"; "required": false; "isSignal": true; }; "filterPlaceholder": { "alias": "filterPlaceholder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "emptyFilterMessage": { "alias": "emptyFilterMessage"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, { "changed": "changed"; "showed": "showed"; "hidden": "hidden"; }, ["templates"], never, true, never>;
1050
+ }
1051
+
1052
+ interface SmzMultiSelectChangeEvent {
1053
+ originalEvent?: Event;
1054
+ value: any[];
1055
+ itemValue?: any;
1056
+ }
1057
+ /**
1058
+ * Lista suspensa de selecao multipla. Substitui o `p-multiselect` do PrimeNG.
1059
+ *
1060
+ * <ui-multi-select [options]="itens" optionLabel="name" dataKey="id" [formControl]="selecionados" />
1061
+ */
1062
+ declare class SmzMultiSelectComponent extends SmzValueAccessor<any[]> implements OnDestroy {
1063
+ readonly options: _angular_core.InputSignal<readonly any[]>;
1064
+ readonly optionLabel: _angular_core.InputSignal<string>;
1065
+ readonly optionValue: _angular_core.InputSignal<string>;
1066
+ readonly optionDisabled: _angular_core.InputSignal<string>;
1067
+ readonly dataKey: _angular_core.InputSignal<string>;
1068
+ readonly placeholder: _angular_core.InputSignal<string>;
1069
+ readonly filter: _angular_core.InputSignalWithTransform<boolean, unknown>;
1070
+ readonly filterBy: _angular_core.InputSignal<string>;
1071
+ readonly filterMatchMode: _angular_core.InputSignal<string>;
1072
+ readonly filterPlaceholder: _angular_core.InputSignal<string>;
1073
+ readonly showClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
1074
+ readonly showToggleAll: _angular_core.InputSignalWithTransform<boolean, unknown>;
1075
+ readonly emptyMessage: _angular_core.InputSignal<string>;
1076
+ readonly emptyFilterMessage: _angular_core.InputSignal<string>;
1077
+ readonly maxSelectedLabels: _angular_core.InputSignal<number>;
1078
+ /** Texto quando ha mais itens que `maxSelectedLabels`; `{0}` vira a quantidade. */
1079
+ readonly selectedItemsLabel: _angular_core.InputSignal<string>;
1080
+ readonly panelStyle: _angular_core.InputSignal<Record<string, string | number>>;
1081
+ readonly styleClass: _angular_core.InputSignal<string>;
1082
+ readonly inputId: _angular_core.InputSignal<string>;
1083
+ readonly autofocusFilter: _angular_core.InputSignalWithTransform<boolean, unknown>;
1084
+ /** Aceitos por compatibilidade com o `p-multiselect`; sem efeito. */
1085
+ readonly appendTo: _angular_core.InputSignal<unknown>;
1086
+ readonly display: _angular_core.InputSignal<string>;
1087
+ readonly changed: _angular_core.OutputEmitterRef<SmzMultiSelectChangeEvent>;
1088
+ readonly panelHide: _angular_core.OutputEmitterRef<void>;
1089
+ readonly panelShow: _angular_core.OutputEmitterRef<void>;
1090
+ protected readonly listId: string;
1091
+ protected readonly open: _angular_core.WritableSignal<boolean>;
1092
+ protected readonly filterText: _angular_core.WritableSignal<string>;
1093
+ protected readonly activeIndex: _angular_core.WritableSignal<number>;
1094
+ protected readonly config: _angular_core.Signal<SmzOptionConfig>;
1095
+ protected readonly visibleOptions: _angular_core.Signal<any[]>;
1096
+ /** Templates opcionais: `item` (linha da lista) e `selectedItems` (valor exibido no campo; `$implicit` = valores selecionados), como no `p-multiselect`. */
1097
+ private readonly templates;
1098
+ protected readonly itemTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1099
+ protected readonly selectedItemsTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1100
+ protected readonly selectedValues: _angular_core.Signal<any[]>;
1101
+ protected readonly selectedOptions: _angular_core.Signal<any[]>;
1102
+ protected readonly allSelected: _angular_core.Signal<boolean>;
1103
+ protected readonly displayLabel: _angular_core.Signal<string>;
1104
+ private readonly overlay;
1105
+ private readonly viewContainer;
1106
+ private readonly trigger;
1107
+ private readonly panel;
1108
+ private readonly filterInput;
1109
+ private readonly anchored;
1110
+ ngOnDestroy(): void;
1111
+ protected labelOf(option: any): string;
1112
+ protected isSelected(option: any): boolean;
1113
+ protected optionRowClass(option: any, index: number): string;
1114
+ protected toggle(): void;
1115
+ protected onBlur(): void;
1116
+ protected toggleOption(option: any, event: Event): void;
1117
+ protected toggleAll(event: Event): void;
1118
+ protected clear(event: Event): void;
1119
+ protected onFilter(event: Event): void;
1120
+ protected onKeydown(event: KeyboardEvent): void;
1121
+ private openPanel;
1122
+ private close;
1123
+ private afterClose;
1124
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzMultiSelectComponent, never>;
1125
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzMultiSelectComponent, "ui-multi-select", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionLabel": { "alias": "optionLabel"; "required": false; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": false; "isSignal": true; }; "optionDisabled": { "alias": "optionDisabled"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "filterMatchMode": { "alias": "filterMatchMode"; "required": false; "isSignal": true; }; "filterPlaceholder": { "alias": "filterPlaceholder"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "showToggleAll": { "alias": "showToggleAll"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "emptyFilterMessage": { "alias": "emptyFilterMessage"; "required": false; "isSignal": true; }; "maxSelectedLabels": { "alias": "maxSelectedLabels"; "required": false; "isSignal": true; }; "selectedItemsLabel": { "alias": "selectedItemsLabel"; "required": false; "isSignal": true; }; "panelStyle": { "alias": "panelStyle"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "autofocusFilter": { "alias": "autofocusFilter"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; }, { "changed": "changed"; "panelHide": "panelHide"; "panelShow": "panelShow"; }, ["templates"], never, true, never>;
1126
+ }
1127
+
1128
+ interface SmzSelectButtonChangeEvent {
1129
+ originalEvent?: Event;
1130
+ value: any;
1131
+ }
1132
+ /**
1133
+ * Grupo de botoes de selecao unica ou multipla. Substitui o `p-selectbutton` do PrimeNG.
1134
+ *
1135
+ * <ui-select-button [options]="tipos" optionLabel="label" optionValue="value" [(ngModel)]="tipo" />
1136
+ */
1137
+ declare class SmzSelectButtonComponent extends SmzValueAccessor<any> {
1138
+ readonly options: _angular_core.InputSignal<readonly any[]>;
1139
+ readonly optionLabel: _angular_core.InputSignal<string>;
1140
+ readonly optionValue: _angular_core.InputSignal<string>;
1141
+ readonly optionDisabled: _angular_core.InputSignal<string>;
1142
+ readonly dataKey: _angular_core.InputSignal<string>;
1143
+ readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
1144
+ readonly allowEmpty: _angular_core.InputSignalWithTransform<boolean, unknown>;
1145
+ readonly size: _angular_core.InputSignal<"small" | "large">;
1146
+ readonly styleClass: _angular_core.InputSignal<string>;
1147
+ /** Aceito por compatibilidade com o `p-selectbutton`; sem efeito. */
1148
+ readonly appendTo: _angular_core.InputSignal<unknown>;
1149
+ readonly changed: _angular_core.OutputEmitterRef<SmzSelectButtonChangeEvent>;
1150
+ /** Sem `optionLabel`/`optionValue`, opcoes-objeto com `label`/`value` sao lidas automaticamente (como no PrimeNG). */
1151
+ private readonly sample;
1152
+ protected readonly config: _angular_core.Signal<SmzOptionConfig>;
1153
+ protected labelOf(option: any): string;
1154
+ protected iconOf(option: any): string | null;
1155
+ protected isOptionDisabled(option: any): boolean;
1156
+ protected isSelected(option: any): boolean;
1157
+ protected buttonClasses(option: any): string;
1158
+ protected toggle(option: any, event: Event): void;
1159
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzSelectButtonComponent, never>;
1160
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzSelectButtonComponent, "ui-select-button", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionLabel": { "alias": "optionLabel"; "required": false; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": false; "isSignal": true; }; "optionDisabled": { "alias": "optionDisabled"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "allowEmpty": { "alias": "allowEmpty"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, { "changed": "changed"; }, never, never, true, never>;
1161
+ }
1162
+
1163
+ interface SmzListboxClickEvent {
1164
+ originalEvent: Event;
1165
+ option: any;
1166
+ value: any;
1167
+ }
1168
+ interface SmzListboxChangeEvent {
1169
+ originalEvent?: Event;
1170
+ value: any;
1171
+ }
1172
+ /**
1173
+ * Lista de selecao (unica ou multipla) sempre visivel. Substitui o `p-listbox` do PrimeNG.
1174
+ * Aceita os templates `header`, `item`, `footer` e `empty` via `smzTemplate`.
1175
+ *
1176
+ * <ui-listbox [options]="itens" optionLabel="name" dataKey="id" [(ngModel)]="selecionado">
1177
+ * <ng-template smzTemplate="item" let-item>{{ item.name }}</ng-template>
1178
+ * </ui-listbox>
1179
+ */
1180
+ declare class SmzListboxComponent extends SmzValueAccessor<any> {
1181
+ readonly options: _angular_core.InputSignal<readonly any[]>;
1182
+ readonly optionLabel: _angular_core.InputSignal<string>;
1183
+ readonly optionValue: _angular_core.InputSignal<string>;
1184
+ readonly optionDisabled: _angular_core.InputSignal<string>;
1185
+ readonly dataKey: _angular_core.InputSignal<string>;
1186
+ readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
1187
+ readonly checkbox: _angular_core.InputSignalWithTransform<boolean, unknown>;
1188
+ readonly filter: _angular_core.InputSignalWithTransform<boolean, unknown>;
1189
+ readonly filterBy: _angular_core.InputSignal<string>;
1190
+ readonly filterMatchMode: _angular_core.InputSignal<string>;
1191
+ /** Aceito por compatibilidade com o `p-listbox`; selecao multipla sempre alterna por clique. */
1192
+ readonly metaKeySelection: _angular_core.InputSignalWithTransform<boolean, unknown>;
1193
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
1194
+ readonly emptyMessage: _angular_core.InputSignal<string>;
1195
+ readonly emptyFilterMessage: _angular_core.InputSignal<string>;
1196
+ readonly listStyle: _angular_core.InputSignal<Record<string, string | number>>;
1197
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
1198
+ readonly styleClass: _angular_core.InputSignal<string>;
1199
+ readonly changed: _angular_core.OutputEmitterRef<SmzListboxChangeEvent>;
1200
+ readonly clicked: _angular_core.OutputEmitterRef<SmzListboxClickEvent>;
1201
+ /** Elemento hospedeiro (compatibilidade com `Listbox.el` do PrimeNG). */
1202
+ readonly el: ElementRef<HTMLElement>;
1203
+ protected readonly filterText: _angular_core.WritableSignal<string>;
1204
+ private readonly templates;
1205
+ protected readonly headerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1206
+ protected readonly itemTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1207
+ protected readonly footerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1208
+ protected readonly emptyTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1209
+ protected readonly config: _angular_core.Signal<SmzOptionConfig>;
1210
+ protected readonly visibleOptions: _angular_core.Signal<any[]>;
1211
+ protected labelOf(option: any): string;
1212
+ protected isSelected(option: any): boolean;
1213
+ protected rowClass(option: any): string;
1214
+ protected onFilter(event: Event): void;
1215
+ protected onItemClick(option: any, event: Event): void;
1216
+ protected focusSibling(event: Event, step: 1 | -1): void;
1217
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzListboxComponent, never>;
1218
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzListboxComponent, "ui-listbox", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionLabel": { "alias": "optionLabel"; "required": false; "isSignal": true; }; "optionValue": { "alias": "optionValue"; "required": false; "isSignal": true; }; "optionDisabled": { "alias": "optionDisabled"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "checkbox": { "alias": "checkbox"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "filterMatchMode": { "alias": "filterMatchMode"; "required": false; "isSignal": true; }; "metaKeySelection": { "alias": "metaKeySelection"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "emptyFilterMessage": { "alias": "emptyFilterMessage"; "required": false; "isSignal": true; }; "listStyle": { "alias": "listStyle"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; }, { "changed": "changed"; "clicked": "clicked"; }, ["templates"], never, true, never>;
1219
+ }
1220
+
1221
+ /** Campo com icone sobreposto ao input. Substitui o `p-iconfield` do PrimeNG. */
1222
+ declare class SmzIconFieldComponent {
1223
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzIconFieldComponent, never>;
1224
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzIconFieldComponent, "ui-icon-field", never, {}, {}, never, ["*"], true, never>;
1225
+ }
1226
+ /** Icone dentro de um `ui-icon-field`. Substitui o `p-inputicon` do PrimeNG. */
1227
+ declare class SmzInputIconComponent {
1228
+ readonly styleClass: _angular_core.InputSignal<string>;
1229
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzInputIconComponent, never>;
1230
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzInputIconComponent, "ui-input-icon", never, { "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
1231
+ }
1232
+ /** Agrupa input e complementos lado a lado. Substitui o `p-inputgroup` do PrimeNG. */
1233
+ declare class SmzInputGroupComponent {
1234
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzInputGroupComponent, never>;
1235
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzInputGroupComponent, "ui-input-group", never, {}, {}, never, ["*"], true, never>;
1236
+ }
1237
+ /** Complemento de um `ui-input-group`. Substitui o `p-inputgroupaddon` do PrimeNG. */
1238
+ declare class SmzInputGroupAddonComponent {
1239
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzInputGroupAddonComponent, never>;
1240
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzInputGroupAddonComponent, "ui-input-group-addon", never, {}, {}, never, ["*"], true, never>;
1241
+ }
1242
+
1243
+ /** Textos e calendario localizados usados pelos componentes do kit. Mesmas chaves do `Translation` do PrimeNG. */
1244
+ interface SmzTranslation {
1245
+ startsWith?: string;
1246
+ contains?: string;
1247
+ notContains?: string;
1248
+ endsWith?: string;
1249
+ equals?: string;
1250
+ notEquals?: string;
1251
+ noFilter?: string;
1252
+ lt?: string;
1253
+ lte?: string;
1254
+ gt?: string;
1255
+ gte?: string;
1256
+ is?: string;
1257
+ isNot?: string;
1258
+ before?: string;
1259
+ after?: string;
1260
+ dateIs?: string;
1261
+ dateIsNot?: string;
1262
+ dateBefore?: string;
1263
+ dateAfter?: string;
1264
+ clear?: string;
1265
+ apply?: string;
1266
+ matchAll?: string;
1267
+ matchAny?: string;
1268
+ addRule?: string;
1269
+ removeRule?: string;
1270
+ accept?: string;
1271
+ reject?: string;
1272
+ choose?: string;
1273
+ upload?: string;
1274
+ cancel?: string;
1275
+ close?: string;
1276
+ pending?: string;
1277
+ dayNames?: string[];
1278
+ dayNamesShort?: string[];
1279
+ dayNamesMin?: string[];
1280
+ monthNames?: string[];
1281
+ monthNamesShort?: string[];
1282
+ chooseYear?: string;
1283
+ chooseMonth?: string;
1284
+ chooseDate?: string;
1285
+ prevDecade?: string;
1286
+ nextDecade?: string;
1287
+ prevYear?: string;
1288
+ nextYear?: string;
1289
+ prevMonth?: string;
1290
+ nextMonth?: string;
1291
+ am?: string;
1292
+ pm?: string;
1293
+ today?: string;
1294
+ weekHeader?: string;
1295
+ firstDayOfWeek?: number;
1296
+ showMonthAfterYear?: boolean;
1297
+ dateFormat?: string;
1298
+ weak?: string;
1299
+ medium?: string;
1300
+ strong?: string;
1301
+ passwordPrompt?: string;
1302
+ emptyMessage?: string;
1303
+ emptyFilterMessage?: string;
1304
+ [key: string]: any;
1305
+ }
1306
+ /** Chaves de traducao usadas pelos componentes (mesmos valores do `TranslationKeys` do PrimeNG). */
1307
+ declare const SmzTranslationKeys: {
1308
+ readonly STARTS_WITH: "startsWith";
1309
+ readonly CONTAINS: "contains";
1310
+ readonly NOT_CONTAINS: "notContains";
1311
+ readonly ENDS_WITH: "endsWith";
1312
+ readonly EQUALS: "equals";
1313
+ readonly NOT_EQUALS: "notEquals";
1314
+ readonly NO_FILTER: "noFilter";
1315
+ readonly LT: "lt";
1316
+ readonly LTE: "lte";
1317
+ readonly GT: "gt";
1318
+ readonly GTE: "gte";
1319
+ readonly IS: "is";
1320
+ readonly IS_NOT: "isNot";
1321
+ readonly BEFORE: "before";
1322
+ readonly AFTER: "after";
1323
+ readonly CLEAR: "clear";
1324
+ readonly APPLY: "apply";
1325
+ readonly MATCH_ALL: "matchAll";
1326
+ readonly MATCH_ANY: "matchAny";
1327
+ readonly ADD_RULE: "addRule";
1328
+ readonly REMOVE_RULE: "removeRule";
1329
+ readonly ACCEPT: "accept";
1330
+ readonly REJECT: "reject";
1331
+ readonly CHOOSE: "choose";
1332
+ readonly UPLOAD: "upload";
1333
+ readonly CANCEL: "cancel";
1334
+ readonly PENDING: "pending";
1335
+ readonly EMPTY_MESSAGE: "emptyMessage";
1336
+ readonly EMPTY_FILTER_MESSAGE: "emptyFilterMessage";
1337
+ };
1338
+ /**
1339
+ * Textos e nomes de calendario dos componentes do kit. O app (ou a core) chama `setTranslation` com o locale ativo.
1340
+ * Substitui `PrimeNG.setTranslation` / `getTranslation`.
1341
+ */
1342
+ declare class SmzLocaleService {
1343
+ private readonly state;
1344
+ /** Traducao atual (signal: componentes reagem a mudancas de idioma). */
1345
+ readonly translation: _angular_core.Signal<SmzTranslation>;
1346
+ /** Emite quando a traducao muda (para componentes que guardam rotulos em cache). */
1347
+ readonly translationObserver: Subject<SmzTranslation>;
1348
+ /** Modos de filtro oferecidos por tipo de coluna (`text`, `numeric`, `date`). */
1349
+ filterMatchModeOptions: Record<string, string[]>;
1350
+ setTranslation(translation: SmzTranslation | null | undefined): void;
1351
+ getTranslation<T = string>(key: string): T;
1352
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzLocaleService, never>;
1353
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SmzLocaleService>;
1354
+ }
1355
+
1356
+ interface SmzInputNumberInputEvent {
1357
+ originalEvent: Event;
1358
+ value: number | null;
1359
+ formattedValue: string;
1360
+ }
1361
+ /**
1362
+ * Campo numerico com formatacao por locale (decimal ou moeda). Substitui o `p-inputnumber` do PrimeNG.
1363
+ *
1364
+ * <ui-input-number [formControl]="preco" mode="currency" currency="BRL" locale="pt-BR" />
1365
+ *
1366
+ * O texto e reformatado ao sair do campo; enquanto digita, o valor numerico ja e propagado ao formulario.
1367
+ */
1368
+ declare class SmzInputNumberComponent extends SmzValueAccessor<number> {
1369
+ readonly mode: _angular_core.InputSignal<string>;
1370
+ readonly locale: _angular_core.InputSignal<string>;
1371
+ readonly localeMatcher: _angular_core.InputSignal<string>;
1372
+ readonly currency: _angular_core.InputSignal<string>;
1373
+ readonly currencyDisplay: _angular_core.InputSignal<string>;
1374
+ readonly useGrouping: _angular_core.InputSignalWithTransform<boolean, unknown>;
1375
+ readonly minFractionDigits: _angular_core.InputSignal<number>;
1376
+ readonly maxFractionDigits: _angular_core.InputSignal<number>;
1377
+ readonly min: _angular_core.InputSignal<number>;
1378
+ readonly max: _angular_core.InputSignal<number>;
1379
+ readonly step: _angular_core.InputSignal<number>;
1380
+ readonly prefix: _angular_core.InputSignal<string>;
1381
+ readonly suffix: _angular_core.InputSignal<string>;
1382
+ readonly showButtons: _angular_core.InputSignalWithTransform<boolean, unknown>;
1383
+ readonly showClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
1384
+ readonly allowEmpty: _angular_core.InputSignalWithTransform<boolean, unknown>;
1385
+ readonly placeholder: _angular_core.InputSignal<string>;
1386
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
1387
+ readonly inputId: _angular_core.InputSignal<string>;
1388
+ readonly inputed: _angular_core.OutputEmitterRef<SmzInputNumberInputEvent>;
1389
+ readonly keyDown: _angular_core.OutputEmitterRef<KeyboardEvent>;
1390
+ readonly blurred: _angular_core.OutputEmitterRef<Event>;
1391
+ readonly focused: _angular_core.OutputEmitterRef<void>;
1392
+ private readonly field;
1393
+ private readonly editing;
1394
+ private readonly typed;
1395
+ private readonly formatter;
1396
+ private readonly decimalSeparator;
1397
+ protected readonly text: _angular_core.Signal<string>;
1398
+ writeValue(value: number | null): void;
1399
+ protected onFocus(): void;
1400
+ protected onInput(event: Event): void;
1401
+ protected onBlur(event: Event): void;
1402
+ protected onKeydown(event: KeyboardEvent): void;
1403
+ protected spin(direction: 1 | -1): void;
1404
+ protected clear(): void;
1405
+ private format;
1406
+ /** Texto editavel: numero sem prefixo/sufixo/agrupamento, com o separador decimal do locale. */
1407
+ private rawText;
1408
+ private sanitize;
1409
+ private parse;
1410
+ private round;
1411
+ private clamp;
1412
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzInputNumberComponent, never>;
1413
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzInputNumberComponent, "ui-input-number", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "localeMatcher": { "alias": "localeMatcher"; "required": false; "isSignal": true; }; "currency": { "alias": "currency"; "required": false; "isSignal": true; }; "currencyDisplay": { "alias": "currencyDisplay"; "required": false; "isSignal": true; }; "useGrouping": { "alias": "useGrouping"; "required": false; "isSignal": true; }; "minFractionDigits": { "alias": "minFractionDigits"; "required": false; "isSignal": true; }; "maxFractionDigits": { "alias": "maxFractionDigits"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "prefix": { "alias": "prefix"; "required": false; "isSignal": true; }; "suffix": { "alias": "suffix"; "required": false; "isSignal": true; }; "showButtons": { "alias": "showButtons"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "allowEmpty": { "alias": "allowEmpty"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; }, { "inputed": "inputed"; "keyDown": "keyDown"; "blurred": "blurred"; "focused": "focused"; }, never, never, true, never>;
1414
+ }
1415
+
1416
+ /** Formata uma data (so a parte de data) no formato estilo jQuery UI: d, dd, o, oo, D, DD, m, mm, M, MM, y, yy, @, !. */
1417
+ declare function smzFormatDate(date: Date, format: string, translation: SmzTranslation): string;
1418
+ /** Interpreta um texto de data no formato dado; retorna `null` quando nao bate ou a data nao existe. */
1419
+ declare function smzParseDate(text: string, format: string, translation: SmzTranslation): Date | null;
1420
+ declare const smzSameDay: (first: Date | null | undefined, second: Date | null | undefined) => boolean;
1421
+ declare const smzStartOfDay: (date: Date) => Date;
1422
+ declare const smzTwoDigits: (value: number, length?: number) => string;
1423
+ /** Primeiro dia exibido na grade do mes: volta ate o `firstDayOfWeek`. */
1424
+ declare function smzCalendarStart(year: number, month: number, firstDayOfWeek: number): Date;
1425
+
1426
+ type SmzDatePickerValue = Date | Date[] | null;
1427
+ type SmzDateSelectionMode = 'single' | 'multiple' | 'range';
1428
+ type View = 'date' | 'month' | 'year';
1429
+ interface DayCell {
1430
+ date: Date;
1431
+ label: number;
1432
+ inMonth: boolean;
1433
+ today: boolean;
1434
+ disabled: boolean;
1435
+ }
1436
+ /**
1437
+ * Seletor de data (e hora). Substitui o `p-datepicker` do PrimeNG.
1438
+ *
1439
+ * <ui-date-picker [formControl]="data" dateFormat="dd/mm/yy" [showTime]="true" />
1440
+ *
1441
+ * Formato de texto no estilo jQuery UI (`dd/mm/yy`, `MM d, yy`...). Os nomes de mes e dia vem do `SmzLocaleService`.
1442
+ */
1443
+ declare class SmzDatePickerComponent extends SmzValueAccessor<SmzDatePickerValue> implements OnDestroy {
1444
+ readonly selectionMode: _angular_core.InputSignal<SmzDateSelectionMode>;
1445
+ readonly dateFormat: _angular_core.InputSignal<string>;
1446
+ readonly showTime: _angular_core.InputSignalWithTransform<boolean, unknown>;
1447
+ readonly timeOnly: _angular_core.InputSignalWithTransform<boolean, unknown>;
1448
+ readonly showSeconds: _angular_core.InputSignalWithTransform<boolean, unknown>;
1449
+ readonly hourFormat: _angular_core.InputSignal<"12" | "24">;
1450
+ readonly minDate: _angular_core.InputSignal<Date>;
1451
+ readonly maxDate: _angular_core.InputSignal<Date>;
1452
+ readonly showButtonBar: _angular_core.InputSignalWithTransform<boolean, unknown>;
1453
+ readonly showIcon: _angular_core.InputSignalWithTransform<boolean, unknown>;
1454
+ readonly showOnFocus: _angular_core.InputSignalWithTransform<boolean, unknown>;
1455
+ readonly keepInvalid: _angular_core.InputSignalWithTransform<boolean, unknown>;
1456
+ readonly readonlyInput: _angular_core.InputSignalWithTransform<boolean, unknown>;
1457
+ readonly placeholder: _angular_core.InputSignal<string>;
1458
+ readonly inputId: _angular_core.InputSignal<string>;
1459
+ readonly styleClass: _angular_core.InputSignal<string>;
1460
+ /** Aceitos por compatibilidade com o `p-datepicker`; sem efeito. */
1461
+ readonly appendTo: _angular_core.InputSignal<unknown>;
1462
+ readonly touchUI: _angular_core.InputSignalWithTransform<boolean, unknown>;
1463
+ readonly focusTrap: _angular_core.InputSignalWithTransform<boolean, unknown>;
1464
+ readonly selected: _angular_core.OutputEmitterRef<Date>;
1465
+ readonly cleared: _angular_core.OutputEmitterRef<void>;
1466
+ readonly opened: _angular_core.OutputEmitterRef<void>;
1467
+ readonly closed: _angular_core.OutputEmitterRef<void>;
1468
+ readonly blurred: _angular_core.OutputEmitterRef<Event>;
1469
+ private readonly locale;
1470
+ protected readonly translation: _angular_core.Signal<_ngx_smz_ui_kit.SmzTranslation>;
1471
+ protected readonly open: _angular_core.WritableSignal<boolean>;
1472
+ protected readonly view: _angular_core.WritableSignal<View>;
1473
+ private readonly viewDate;
1474
+ private readonly typed;
1475
+ protected readonly hour: _angular_core.WritableSignal<number>;
1476
+ protected readonly minute: _angular_core.WritableSignal<number>;
1477
+ protected readonly second: _angular_core.WritableSignal<number>;
1478
+ protected readonly viewYear: _angular_core.Signal<number>;
1479
+ protected readonly viewMonth: _angular_core.Signal<number>;
1480
+ protected readonly decadeStart: _angular_core.Signal<number>;
1481
+ protected readonly decadeYears: _angular_core.Signal<number[]>;
1482
+ protected readonly monthName: _angular_core.Signal<string>;
1483
+ protected readonly monthNamesShort: _angular_core.Signal<string[]>;
1484
+ protected readonly effectiveFormat: _angular_core.Signal<string>;
1485
+ protected readonly weekdayNames: _angular_core.Signal<string[]>;
1486
+ protected readonly cells: _angular_core.Signal<DayCell[]>;
1487
+ protected readonly displayHour: _angular_core.Signal<string>;
1488
+ protected readonly text: _angular_core.Signal<string>;
1489
+ private readonly overlay;
1490
+ private readonly viewContainer;
1491
+ private readonly anchorRef;
1492
+ private readonly fieldRef;
1493
+ private readonly panel;
1494
+ private readonly anchored;
1495
+ /**
1496
+ * Aceita `Date`, string (ISO ou parseavel) e numero (timestamp), como o `p-datepicker`.
1497
+ * Valores invalidos viram `null` em vez de lancar. O modelo do formulario so muda quando o usuario escolhe uma data.
1498
+ */
1499
+ writeValue(value: SmzDatePickerValue | string | number): void;
1500
+ ngOnDestroy(): void;
1501
+ protected twoDigits(value: number): string;
1502
+ protected toggle(): void;
1503
+ protected onFocus(): void;
1504
+ protected onFieldClick(): void;
1505
+ protected onKeydown(event: KeyboardEvent): void;
1506
+ protected onTyping(event: Event): void;
1507
+ protected onBlur(event: Event): void;
1508
+ protected shift(direction: -1 | 1): void;
1509
+ protected pickMonth(month: number): void;
1510
+ protected pickYear(year: number): void;
1511
+ protected isSelected(date: Date): boolean;
1512
+ protected isInRange(date: Date): boolean;
1513
+ protected dayClasses(cell: DayCell): string;
1514
+ protected pickDay(cell: DayCell): void;
1515
+ protected goToday(): void;
1516
+ protected clearValue(): void;
1517
+ protected stepTime(unit: 'h' | 'm' | 's', delta: number): void;
1518
+ private openPanel;
1519
+ private close;
1520
+ private afterClose;
1521
+ private syncViewTo;
1522
+ private withTime;
1523
+ private isOutOfRange;
1524
+ private formatSingle;
1525
+ private formatValue;
1526
+ private parseSingle;
1527
+ /** Interpreta o texto digitado; se invalido, descarta (ou mantem, com `keepInvalid`). */
1528
+ private commitTyped;
1529
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDatePickerComponent, never>;
1530
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzDatePickerComponent, "ui-date-picker", never, { "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "showTime": { "alias": "showTime"; "required": false; "isSignal": true; }; "timeOnly": { "alias": "timeOnly"; "required": false; "isSignal": true; }; "showSeconds": { "alias": "showSeconds"; "required": false; "isSignal": true; }; "hourFormat": { "alias": "hourFormat"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "showButtonBar": { "alias": "showButtonBar"; "required": false; "isSignal": true; }; "showIcon": { "alias": "showIcon"; "required": false; "isSignal": true; }; "showOnFocus": { "alias": "showOnFocus"; "required": false; "isSignal": true; }; "keepInvalid": { "alias": "keepInvalid"; "required": false; "isSignal": true; }; "readonlyInput": { "alias": "readonlyInput"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "touchUI": { "alias": "touchUI"; "required": false; "isSignal": true; }; "focusTrap": { "alias": "focusTrap"; "required": false; "isSignal": true; }; }, { "selected": "selected"; "cleared": "cleared"; "opened": "opened"; "closed": "closed"; "blurred": "blurred"; }, never, never, true, never>;
1531
+ }
1532
+
1533
+ interface SmzAutoCompleteCompleteEvent {
1534
+ originalEvent?: Event;
1535
+ query: string;
1536
+ }
1537
+ interface SmzAutoCompleteSelectEvent {
1538
+ originalEvent?: Event;
1539
+ value: any;
1540
+ }
1541
+ /**
1542
+ * Campo de texto com sugestoes. Substitui o `p-autocomplete` do PrimeNG.
1543
+ * O componente nao busca: ao digitar emite `completeMethod` e o consumidor atualiza `suggestions`.
1544
+ *
1545
+ * <ui-auto-complete [(ngModel)]="texto" [suggestions]="sugestoes" (completeMethod)="buscar($event)" [dropdown]="true" />
1546
+ */
1547
+ declare class SmzAutoCompleteComponent extends SmzValueAccessor<any> implements OnDestroy {
1548
+ readonly suggestions: _angular_core.InputSignal<readonly any[]>;
1549
+ readonly field: _angular_core.InputSignal<string>;
1550
+ readonly dropdown: _angular_core.InputSignalWithTransform<boolean, unknown>;
1551
+ readonly emptyMessage: _angular_core.InputSignal<string>;
1552
+ readonly minLength: _angular_core.InputSignal<number>;
1553
+ readonly delay: _angular_core.InputSignal<number>;
1554
+ readonly forceSelection: _angular_core.InputSignalWithTransform<boolean, unknown>;
1555
+ readonly showClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
1556
+ readonly placeholder: _angular_core.InputSignal<string>;
1557
+ readonly inputId: _angular_core.InputSignal<string>;
1558
+ readonly styleClass: _angular_core.InputSignal<string>;
1559
+ /** Aceito por compatibilidade com o `p-autocomplete`; sem efeito. */
1560
+ readonly appendTo: _angular_core.InputSignal<unknown>;
1561
+ readonly completeMethod: _angular_core.OutputEmitterRef<SmzAutoCompleteCompleteEvent>;
1562
+ readonly selectedItem: _angular_core.OutputEmitterRef<SmzAutoCompleteSelectEvent>;
1563
+ readonly cleared: _angular_core.OutputEmitterRef<void>;
1564
+ readonly blurred: _angular_core.OutputEmitterRef<Event>;
1565
+ readonly focused: _angular_core.OutputEmitterRef<void>;
1566
+ protected readonly open: _angular_core.WritableSignal<boolean>;
1567
+ protected readonly activeIndex: _angular_core.WritableSignal<number>;
1568
+ private readonly typed;
1569
+ private searching;
1570
+ private timer?;
1571
+ private readonly templates;
1572
+ protected readonly headerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1573
+ protected readonly itemTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1574
+ protected readonly text: _angular_core.Signal<string>;
1575
+ private readonly overlay;
1576
+ private readonly viewContainer;
1577
+ private readonly anchorRef;
1578
+ private readonly fieldRef;
1579
+ private readonly panel;
1580
+ private readonly anchored;
1581
+ constructor();
1582
+ writeValue(value: any): void;
1583
+ ngOnDestroy(): void;
1584
+ protected labelOf(item: any): string;
1585
+ protected onInput(event: Event): void;
1586
+ protected onBlur(event: Event): void;
1587
+ protected onKeydown(event: KeyboardEvent): void;
1588
+ protected select(item: any, event: Event): void;
1589
+ protected clear(): void;
1590
+ protected toggleDropdown(): void;
1591
+ private scheduleSearch;
1592
+ private triggerSearch;
1593
+ private openPanel;
1594
+ private closePanel;
1595
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzAutoCompleteComponent, never>;
1596
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzAutoCompleteComponent, "ui-auto-complete", never, { "suggestions": { "alias": "suggestions"; "required": false; "isSignal": true; }; "field": { "alias": "field"; "required": false; "isSignal": true; }; "dropdown": { "alias": "dropdown"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "delay": { "alias": "delay"; "required": false; "isSignal": true; }; "forceSelection": { "alias": "forceSelection"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, { "completeMethod": "completeMethod"; "selectedItem": "selectedItem"; "cleared": "cleared"; "blurred": "blurred"; "focused": "focused"; }, ["templates"], never, true, never>;
1597
+ }
1598
+
1599
+ interface MaskSlot {
1600
+ /** Posicao do caractere dentro do texto formatado. */
1601
+ position: number;
1602
+ test: RegExp;
1603
+ }
1604
+ interface ParsedMask {
1605
+ /** Caractere literal por posicao (`null` onde ha slot). */
1606
+ literals: Array<string | null>;
1607
+ slots: MaskSlot[];
1608
+ /** Quantidade de slots obrigatorios (os demais, depois de `?`, sao opcionais). */
1609
+ required: number;
1610
+ }
1611
+ /**
1612
+ * Campo com mascara de entrada. Substitui o `p-inputmask` do PrimeNG.
1613
+ * Na mascara: `9` = digito, `a` = letra (ou `characterPattern`), `*` = letra ou digito; demais caracteres sao literais.
1614
+ *
1615
+ * <ui-input-mask mask="(99) 99999-9999" [formControl]="telefone" [unmask]="true" />
1616
+ */
1617
+ declare class SmzInputMaskComponent extends SmzValueAccessor<string> {
1618
+ readonly mask: _angular_core.InputSignal<string>;
1619
+ readonly slotChar: _angular_core.InputSignal<string>;
1620
+ readonly characterPattern: _angular_core.InputSignal<string>;
1621
+ readonly unmask: _angular_core.InputSignalWithTransform<boolean, unknown>;
1622
+ readonly autoClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
1623
+ readonly placeholder: _angular_core.InputSignal<string>;
1624
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
1625
+ readonly inputId: _angular_core.InputSignal<string>;
1626
+ /** Tipo do `<input>` nativo (`text`, `tel`, `password`...). */
1627
+ readonly type: _angular_core.InputSignal<string>;
1628
+ readonly inputed: _angular_core.OutputEmitterRef<Event>;
1629
+ readonly blurred: _angular_core.OutputEmitterRef<Event>;
1630
+ readonly completed: _angular_core.OutputEmitterRef<void>;
1631
+ private readonly field;
1632
+ /** Caracteres dos slots preenchidos, em ordem. */
1633
+ private readonly entered;
1634
+ private readonly focusedState;
1635
+ protected readonly parsed: _angular_core.Signal<ParsedMask>;
1636
+ protected readonly display: _angular_core.Signal<string>;
1637
+ writeValue(value: string | null): void;
1638
+ protected onFocus(): void;
1639
+ protected onKeydown(event: KeyboardEvent): void;
1640
+ /**
1641
+ * Sem `maxlength` no `<input>`: numa mascara fixa o texto exibido ja tem o tamanho maximo (ex.: "5__.___.___-__"),
1642
+ * e o navegador bloquearia a insercao de qualquer caractere novo. `fitToSlots` descarta o que nao cabe.
1643
+ */
1644
+ protected onInput(event: Event): void;
1645
+ protected onBlur(event: Event): void;
1646
+ /** Redistribui os caracteres de `text` nos slots, descartando o que nao cabe ou nao combina. */
1647
+ private fitToSlots;
1648
+ private apply;
1649
+ private moveCaret;
1650
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzInputMaskComponent, never>;
1651
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzInputMaskComponent, "ui-input-mask", never, { "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "slotChar": { "alias": "slotChar"; "required": false; "isSignal": true; }; "characterPattern": { "alias": "characterPattern"; "required": false; "isSignal": true; }; "unmask": { "alias": "unmask"; "required": false; "isSignal": true; }; "autoClear": { "alias": "autoClear"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; }, { "inputed": "inputed"; "blurred": "blurred"; "completed": "completed"; }, never, never, true, never>;
1652
+ }
1653
+
1654
+ /**
1655
+ * Campo de senha com alternancia de visibilidade e medidor de forca. Substitui o `p-password` do PrimeNG.
1656
+ *
1657
+ * <ui-password [formControl]="senha" [toggleMask]="true" [feedback]="true" />
1658
+ */
1659
+ declare class SmzPasswordComponent extends SmzValueAccessor<string> {
1660
+ readonly toggleMask: _angular_core.InputSignalWithTransform<boolean, unknown>;
1661
+ readonly feedback: _angular_core.InputSignalWithTransform<boolean, unknown>;
1662
+ readonly promptLabel: _angular_core.InputSignal<string>;
1663
+ readonly weakLabel: _angular_core.InputSignal<string>;
1664
+ readonly mediumLabel: _angular_core.InputSignal<string>;
1665
+ readonly strongLabel: _angular_core.InputSignal<string>;
1666
+ readonly mediumRegex: _angular_core.InputSignal<string>;
1667
+ readonly strongRegex: _angular_core.InputSignal<string>;
1668
+ readonly placeholder: _angular_core.InputSignal<string>;
1669
+ readonly inputId: _angular_core.InputSignal<string>;
1670
+ private readonly locale;
1671
+ protected readonly visible: _angular_core.WritableSignal<boolean>;
1672
+ private readonly strength;
1673
+ protected readonly meterWidth: _angular_core.Signal<number>;
1674
+ protected readonly meterClass: _angular_core.Signal<string>;
1675
+ protected readonly meterLabel: _angular_core.Signal<string>;
1676
+ protected onInput(event: Event): void;
1677
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzPasswordComponent, never>;
1678
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzPasswordComponent, "ui-password", never, { "toggleMask": { "alias": "toggleMask"; "required": false; "isSignal": true; }; "feedback": { "alias": "feedback"; "required": false; "isSignal": true; }; "promptLabel": { "alias": "promptLabel"; "required": false; "isSignal": true; }; "weakLabel": { "alias": "weakLabel"; "required": false; "isSignal": true; }; "mediumLabel": { "alias": "mediumLabel"; "required": false; "isSignal": true; }; "strongLabel": { "alias": "strongLabel"; "required": false; "isSignal": true; }; "mediumRegex": { "alias": "mediumRegex"; "required": false; "isSignal": true; }; "strongRegex": { "alias": "strongRegex"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1679
+ }
1680
+
1681
+ /**
1682
+ * Seletor de cor (amostra com o seletor nativo do navegador). Substitui o `p-colorpicker` do PrimeNG.
1683
+ * O valor e a cor em hexadecimal **sem** o `#` (mesmo formato do PrimeNG), por exemplo `ff0000`.
1684
+ *
1685
+ * <ui-color-picker [formControl]="cor" />
1686
+ */
1687
+ declare class SmzColorPickerComponent extends SmzValueAccessor<string> {
1688
+ readonly inputId: _angular_core.InputSignal<string>;
1689
+ /** Aceito por compatibilidade com o `p-colorpicker`; sem efeito. */
1690
+ readonly appendTo: _angular_core.InputSignal<unknown>;
1691
+ /** Emitido quando o usuario escolhe uma cor (equivale ao `onChange` do `p-colorpicker`). */
1692
+ readonly changed: _angular_core.OutputEmitterRef<{
1693
+ originalEvent: Event;
1694
+ value: string;
1695
+ }>;
1696
+ protected readonly hex: _angular_core.Signal<string>;
1697
+ protected onInput(event: Event): void;
1698
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzColorPickerComponent, never>;
1699
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzColorPickerComponent, "ui-color-picker", never, { "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; }, { "changed": "changed"; }, never, never, true, never>;
1700
+ }
1701
+
1702
+ /** Item simples de selecao (`label` + `value`). Substitui o `SelectItem` do PrimeNG. */
1703
+ interface SmzSelectItem<T = any> {
1704
+ label?: string;
1705
+ value: T;
1706
+ title?: string;
1707
+ icon?: string;
1708
+ disabled?: boolean;
1709
+ }
1710
+ /** Criterio de ordenacao por campo. Substitui o `SortMeta` do PrimeNG. */
1711
+ interface SmzSortMeta {
1712
+ field: string;
1713
+ order: number;
1714
+ }
1715
+
1716
+ type SmzTabValue = string | number;
1717
+ /**
1718
+ * Abas. Substituem o `p-tabs` / `p-tablist` / `p-tab` / `p-tabpanels` / `p-tabpanel` do PrimeNG.
1719
+ *
1720
+ * <ui-tabs [(value)]="aba">
1721
+ * <ui-tab-list><ui-tab [value]="0">Um</ui-tab><ui-tab [value]="1">Dois</ui-tab></ui-tab-list>
1722
+ * <ui-tab-panels><ui-tab-panel [value]="0">...</ui-tab-panel><ui-tab-panel [value]="1">...</ui-tab-panel></ui-tab-panels>
1723
+ * </ui-tabs>
1724
+ *
1725
+ * Com `lazy`, o conteudo so e criado quando o painel e aberto pela primeira vez (use `<ng-template smzTemplate="content">`).
1726
+ */
1727
+ declare class SmzTabsComponent {
1728
+ readonly value: _angular_core.ModelSignal<SmzTabValue>;
1729
+ readonly lazy: _angular_core.InputSignalWithTransform<boolean, unknown>;
1730
+ /** Aceito por compatibilidade com o `p-tabs`; sem efeito. */
1731
+ readonly scrollable: _angular_core.InputSignalWithTransform<boolean, unknown>;
1732
+ select(value: SmzTabValue): void;
1733
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTabsComponent, never>;
1734
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTabsComponent, "ui-tabs", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "lazy": { "alias": "lazy"; "required": false; "isSignal": true; }; "scrollable": { "alias": "scrollable"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
1735
+ }
1736
+ declare class SmzTabListComponent {
1737
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTabListComponent, never>;
1738
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTabListComponent, "ui-tab-list", never, {}, {}, never, ["*"], true, never>;
1739
+ }
1740
+ declare class SmzTabComponent {
1741
+ readonly value: _angular_core.InputSignal<SmzTabValue>;
1742
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
1743
+ private readonly tabs;
1744
+ protected readonly active: _angular_core.Signal<boolean>;
1745
+ protected readonly classes: _angular_core.Signal<string>;
1746
+ protected activate(event?: Event): void;
1747
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTabComponent, never>;
1748
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTabComponent, "ui-tab", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
1749
+ }
1750
+ declare class SmzTabPanelsComponent {
1751
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTabPanelsComponent, never>;
1752
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTabPanelsComponent, "ui-tab-panels", never, {}, {}, never, ["*"], true, never>;
1753
+ }
1754
+ declare class SmzTabPanelComponent {
1755
+ readonly value: _angular_core.InputSignal<SmzTabValue>;
1756
+ protected readonly tabs: SmzTabsComponent;
1757
+ protected readonly active: _angular_core.Signal<boolean>;
1758
+ protected readonly visited: _angular_core.WritableSignal<boolean>;
1759
+ private readonly templates;
1760
+ protected readonly contentTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1761
+ constructor();
1762
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTabPanelComponent, never>;
1763
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTabPanelComponent, "ui-tab-panel", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, ["templates"], ["*"], true, never>;
1764
+ }
1765
+
1766
+ type SmzAccordionValue = string | number;
1767
+ /**
1768
+ * Acordeao. Substitui o `p-accordion` / `p-accordion-panel` / `p-accordion-header` / `p-accordion-content` do PrimeNG.
1769
+ *
1770
+ * <ui-accordion [multiple]="true">
1771
+ * <ui-accordion-panel [value]="1"><ui-accordion-header>Titulo</ui-accordion-header><ui-accordion-content>...</ui-accordion-content></ui-accordion-panel>
1772
+ * </ui-accordion>
1773
+ */
1774
+ declare class SmzAccordionComponent {
1775
+ readonly value: _angular_core.ModelSignal<SmzAccordionValue | SmzAccordionValue[]>;
1776
+ readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
1777
+ /** Um painel foi aberto (equivale ao `onOpen` do `p-accordion`). */
1778
+ readonly opened: _angular_core.OutputEmitterRef<{
1779
+ value: SmzAccordionValue;
1780
+ }>;
1781
+ /** Um painel foi fechado (equivale ao `onClose`). */
1782
+ readonly closed: _angular_core.OutputEmitterRef<{
1783
+ value: SmzAccordionValue;
1784
+ }>;
1785
+ /** Aceito por compatibilidade com o `p-accordion`; sem efeito. */
1786
+ readonly transitionOptions: _angular_core.InputSignal<string>;
1787
+ isOpen(value: SmzAccordionValue): boolean;
1788
+ toggle(value: SmzAccordionValue): void;
1789
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzAccordionComponent, never>;
1790
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzAccordionComponent, "ui-accordion", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "transitionOptions": { "alias": "transitionOptions"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "opened": "opened"; "closed": "closed"; }, never, ["*"], true, never>;
1791
+ }
1792
+ declare class SmzAccordionPanelComponent {
1793
+ readonly value: _angular_core.InputSignal<SmzAccordionValue>;
1794
+ private readonly accordion;
1795
+ readonly open: _angular_core.Signal<boolean>;
1796
+ toggle(): void;
1797
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzAccordionPanelComponent, never>;
1798
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzAccordionPanelComponent, "ui-accordion-panel", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
1799
+ }
1800
+ declare class SmzAccordionHeaderComponent {
1801
+ protected readonly panel: SmzAccordionPanelComponent;
1802
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzAccordionHeaderComponent, never>;
1803
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzAccordionHeaderComponent, "ui-accordion-header", never, {}, {}, never, ["*"], true, never>;
1804
+ }
1805
+ declare class SmzAccordionContentComponent {
1806
+ protected readonly panel: SmzAccordionPanelComponent;
1807
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzAccordionContentComponent, never>;
1808
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzAccordionContentComponent, "ui-accordion-content", never, {}, {}, never, ["*"], true, never>;
1809
+ }
1810
+
1811
+ type SmzTimelineAlign = 'left' | 'right' | 'alternate' | 'top' | 'bottom';
1812
+ /**
1813
+ * Linha do tempo. Substitui o `p-timeline` do PrimeNG.
1814
+ * Templates (via `smzTemplate`): `marker`, `content` e `opposite`, todos com o evento como `$implicit`.
1815
+ *
1816
+ * <ui-timeline [value]="eventos" align="alternate">
1817
+ * <ng-template smzTemplate="content" let-event>{{ event.titulo }}</ng-template>
1818
+ * </ui-timeline>
1819
+ */
1820
+ declare class SmzUiTimelineComponent {
1821
+ readonly value: _angular_core.InputSignal<readonly any[]>;
1822
+ readonly align: _angular_core.InputSignal<string>;
1823
+ readonly layout: _angular_core.InputSignal<"horizontal" | "vertical">;
1824
+ readonly styleClass: _angular_core.InputSignal<string>;
1825
+ private readonly templates;
1826
+ protected readonly markerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1827
+ protected readonly contentTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1828
+ protected readonly oppositeTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1829
+ protected readonly horizontal: _angular_core.Signal<boolean>;
1830
+ protected rowReverse(index: number): boolean;
1831
+ protected oppositeClass(index: number): string;
1832
+ protected contentClass(index: number): string;
1833
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzUiTimelineComponent, never>;
1834
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzUiTimelineComponent, "ui-timeline", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; }, {}, ["templates"], never, true, never>;
1835
+ }
1836
+
1837
+ /**
1838
+ * Alterna classes de um elemento alvo ao clicar no hospedeiro (menus e paineis). Substitui o `pStyleClass` do PrimeNG.
1839
+ * O alvo vem de `smzStyleClass`: `@next`, `@prev`, `@parent`, `@grandparent` ou um seletor CSS.
1840
+ *
1841
+ * <button smzStyleClass="@next" enterFromClass="hidden" enterActiveClass="animate-scalein" leaveToClass="hidden" leaveActiveClass="animate-fadeout" [hideOnOutsideClick]="true"></button>
1842
+ *
1843
+ * As classes `*ActiveClass` sao removidas ao fim da animacao (evento `animationend`).
1844
+ */
1845
+ declare class SmzStyleClassDirective implements OnDestroy {
1846
+ readonly selector: _angular_core.InputSignal<string>;
1847
+ readonly enterFromClass: _angular_core.InputSignal<string>;
1848
+ readonly enterActiveClass: _angular_core.InputSignal<string>;
1849
+ readonly enterToClass: _angular_core.InputSignal<string>;
1850
+ readonly leaveFromClass: _angular_core.InputSignal<string>;
1851
+ readonly leaveActiveClass: _angular_core.InputSignal<string>;
1852
+ readonly leaveToClass: _angular_core.InputSignal<string>;
1853
+ readonly hideOnOutsideClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
1854
+ readonly toggleClass: _angular_core.InputSignal<string>;
1855
+ private readonly host;
1856
+ private documentListener?;
1857
+ ngOnDestroy(): void;
1858
+ protected onClick(event: Event): void;
1859
+ private resolveTarget;
1860
+ private classes;
1861
+ private apply;
1862
+ private enter;
1863
+ private leave;
1864
+ private afterAnimation;
1865
+ private bindOutsideClick;
1866
+ private unbindOutsideClick;
1867
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzStyleClassDirective, never>;
1868
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzStyleClassDirective, "[smzStyleClass]", never, { "selector": { "alias": "smzStyleClass"; "required": false; "isSignal": true; }; "enterFromClass": { "alias": "enterFromClass"; "required": false; "isSignal": true; }; "enterActiveClass": { "alias": "enterActiveClass"; "required": false; "isSignal": true; }; "enterToClass": { "alias": "enterToClass"; "required": false; "isSignal": true; }; "leaveFromClass": { "alias": "leaveFromClass"; "required": false; "isSignal": true; }; "leaveActiveClass": { "alias": "leaveActiveClass"; "required": false; "isSignal": true; }; "leaveToClass": { "alias": "leaveToClass"; "required": false; "isSignal": true; }; "hideOnOutsideClick": { "alias": "hideOnOutsideClick"; "required": false; "isSignal": true; }; "toggleClass": { "alias": "toggleClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
1869
+ }
1870
+
1871
+ interface SmzPageEvent {
1872
+ first: number;
1873
+ rows: number;
1874
+ page: number;
1875
+ pageCount: number;
1876
+ }
1877
+ /**
1878
+ * Paginador. Substitui o `p-paginator` do PrimeNG.
1879
+ * O template do relatorio aceita `{currentPage}`, `{totalPages}`, `{rows}`, `{first}`, `{last}` e `{totalRecords}`.
1880
+ *
1881
+ * <ui-paginator [first]="primeiro" [rows]="10" [totalRecords]="120" (pageChanged)="mudou($event)" />
1882
+ */
1883
+ declare class SmzPaginatorComponent {
1884
+ readonly first: _angular_core.ModelSignal<number>;
1885
+ readonly rows: _angular_core.ModelSignal<number>;
1886
+ readonly totalRecords: _angular_core.InputSignal<number>;
1887
+ readonly pageLinkSize: _angular_core.InputSignal<number>;
1888
+ readonly rowsPerPageOptions: _angular_core.InputSignal<number[]>;
1889
+ readonly showCurrentPageReport: _angular_core.InputSignalWithTransform<boolean, unknown>;
1890
+ readonly currentPageReportTemplate: _angular_core.InputSignal<string>;
1891
+ readonly alwaysShow: _angular_core.InputSignalWithTransform<boolean, unknown>;
1892
+ readonly showPageLinks: _angular_core.InputSignalWithTransform<boolean, unknown>;
1893
+ readonly styleClass: _angular_core.InputSignal<string>;
1894
+ /** Aceitos por compatibilidade com o `p-paginator`; sem efeito. */
1895
+ readonly dropdownAppendTo: _angular_core.InputSignal<unknown>;
1896
+ readonly showFirstLastIcon: _angular_core.InputSignalWithTransform<boolean, unknown>;
1897
+ readonly pageChanged: _angular_core.OutputEmitterRef<SmzPageEvent>;
1898
+ protected readonly pageCount: _angular_core.Signal<number>;
1899
+ protected readonly page: _angular_core.Signal<number>;
1900
+ protected readonly isFirst: _angular_core.Signal<boolean>;
1901
+ protected readonly isLast: _angular_core.Signal<boolean>;
1902
+ protected readonly visible: _angular_core.Signal<boolean>;
1903
+ protected readonly links: _angular_core.Signal<number[]>;
1904
+ protected readonly report: _angular_core.Signal<string>;
1905
+ /** Vai para a pagina (base 0) e emite `pageChanged`. */
1906
+ goTo(page: number): void;
1907
+ protected changeRows(rows: number): void;
1908
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzPaginatorComponent, never>;
1909
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzPaginatorComponent, "ui-paginator", never, { "first": { "alias": "first"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "totalRecords": { "alias": "totalRecords"; "required": false; "isSignal": true; }; "pageLinkSize": { "alias": "pageLinkSize"; "required": false; "isSignal": true; }; "rowsPerPageOptions": { "alias": "rowsPerPageOptions"; "required": false; "isSignal": true; }; "showCurrentPageReport": { "alias": "showCurrentPageReport"; "required": false; "isSignal": true; }; "currentPageReportTemplate": { "alias": "currentPageReportTemplate"; "required": false; "isSignal": true; }; "alwaysShow": { "alias": "alwaysShow"; "required": false; "isSignal": true; }; "showPageLinks": { "alias": "showPageLinks"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "dropdownAppendTo": { "alias": "dropdownAppendTo"; "required": false; "isSignal": true; }; "showFirstLastIcon": { "alias": "showFirstLastIcon"; "required": false; "isSignal": true; }; }, { "first": "firstChange"; "rows": "rowsChange"; "pageChanged": "pageChanged"; }, never, never, true, never>;
1910
+ }
1911
+
1912
+ type SmzDataViewLayout = 'list' | 'grid';
1913
+ /**
1914
+ * Colecao de itens em lista ou grade, com filtro e paginacao. Substitui o `p-dataview` do PrimeNG.
1915
+ * Templates: `header`, `list`, `grid`, `empty` e `footer`, declarados por referencia (`<ng-template let-items #list>`)
1916
+ * ou por `smzTemplate`. Os de `list` e `grid` recebem a pagina atual como `$implicit`.
1917
+ */
1918
+ declare class SmzDataViewComponent {
1919
+ readonly value: _angular_core.InputSignal<readonly any[]>;
1920
+ readonly layout: _angular_core.InputSignal<string>;
1921
+ readonly paginator: _angular_core.InputSignalWithTransform<boolean, unknown>;
1922
+ readonly rows: _angular_core.InputSignal<number>;
1923
+ readonly first: _angular_core.ModelSignal<number>;
1924
+ readonly filterBy: _angular_core.InputSignal<string>;
1925
+ readonly styleClass: _angular_core.InputSignal<string>;
1926
+ /** Aceito por compatibilidade com o `p-dataview`; o container da grade e definido no template do consumidor. */
1927
+ readonly gridStyleClass: _angular_core.InputSignal<string>;
1928
+ /** Elemento hospedeiro (compatibilidade com `DataView.el` do PrimeNG). */
1929
+ readonly el: ElementRef<HTMLElement>;
1930
+ private readonly query;
1931
+ private readonly templates;
1932
+ private readonly refHeader;
1933
+ private readonly refList;
1934
+ private readonly refGrid;
1935
+ private readonly refEmpty;
1936
+ private readonly refFooter;
1937
+ protected readonly headerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1938
+ protected readonly listTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1939
+ protected readonly gridTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1940
+ protected readonly emptyTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1941
+ protected readonly footerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
1942
+ protected readonly filtered: _angular_core.Signal<readonly any[]>;
1943
+ protected readonly pageItems: _angular_core.Signal<readonly any[]>;
1944
+ /** Filtra os itens por texto nos campos de `filterBy` e volta para a primeira pagina. */
1945
+ filter(value: string): void;
1946
+ protected onPage(first: number): void;
1947
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzDataViewComponent, never>;
1948
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzDataViewComponent, "ui-data-view", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "paginator": { "alias": "paginator"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "first": { "alias": "first"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "gridStyleClass": { "alias": "gridStyleClass"; "required": false; "isSignal": true; }; }, { "first": "firstChange"; }, ["templates", "refHeader", "refList", "refGrid", "refEmpty", "refFooter"], never, true, never>;
1949
+ }
1950
+
1951
+ interface SmzPickListMoveEvent {
1952
+ items: any[];
1953
+ }
1954
+ type Side = 'source' | 'target';
1955
+ /**
1956
+ * Duas listas de transferencia de itens. Substitui o `p-picklist` do PrimeNG.
1957
+ * `source` e `target` sao arrays do consumidor: o componente os altera in-place e emite o que foi movido.
1958
+ * Template `item` (via `smzTemplate`) recebe o item como `$implicit`.
1959
+ */
1960
+ declare class SmzPickListComponent {
1961
+ readonly source: _angular_core.InputSignal<any[]>;
1962
+ readonly target: _angular_core.InputSignal<any[]>;
1963
+ readonly sourceHeader: _angular_core.InputSignal<string>;
1964
+ readonly targetHeader: _angular_core.InputSignal<string>;
1965
+ readonly sourceFilterPlaceholder: _angular_core.InputSignal<string>;
1966
+ readonly targetFilterPlaceholder: _angular_core.InputSignal<string>;
1967
+ readonly filterBy: _angular_core.InputSignal<string>;
1968
+ readonly dragdrop: _angular_core.InputSignalWithTransform<boolean, unknown>;
1969
+ readonly responsive: _angular_core.InputSignalWithTransform<boolean, unknown>;
1970
+ readonly listStyle: _angular_core.InputSignal<Record<string, string | number>>;
1971
+ /** Aceitos por compatibilidade com o `p-picklist`; sem efeito (nao ha botoes de reordenacao). */
1972
+ readonly showSourceControls: _angular_core.InputSignalWithTransform<boolean, unknown>;
1973
+ readonly showTargetControls: _angular_core.InputSignalWithTransform<boolean, unknown>;
1974
+ readonly movedToTarget: _angular_core.OutputEmitterRef<SmzPickListMoveEvent>;
1975
+ readonly movedToSource: _angular_core.OutputEmitterRef<SmzPickListMoveEvent>;
1976
+ readonly movedAllToTarget: _angular_core.OutputEmitterRef<SmzPickListMoveEvent>;
1977
+ readonly movedAllToSource: _angular_core.OutputEmitterRef<SmzPickListMoveEvent>;
1978
+ protected readonly sourceQuery: _angular_core.WritableSignal<string>;
1979
+ protected readonly targetQuery: _angular_core.WritableSignal<string>;
1980
+ /** Incrementado a cada alteracao in-place dos arrays do consumidor. */
1981
+ private readonly tick;
1982
+ private readonly selection;
1983
+ private readonly templates;
1984
+ protected readonly itemTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
1985
+ protected readonly selectedSource: _angular_core.Signal<any[]>;
1986
+ protected readonly selectedTarget: _angular_core.Signal<any[]>;
1987
+ protected readonly sourceView: _angular_core.Signal<any[]>;
1988
+ protected readonly targetView: _angular_core.Signal<any[]>;
1989
+ protected label(item: any): string;
1990
+ protected isSelected(side: Side, item: any): boolean;
1991
+ protected rowClass(side: Side, item: any): string;
1992
+ protected toggle(side: Side, item: any): void;
1993
+ protected moveOne(side: Side, item: any): void;
1994
+ protected moveSelected(side: Side): void;
1995
+ protected moveAll(side: Side): void;
1996
+ protected dropped(event: CdkDragDrop<any[]>, side: Side): void;
1997
+ private transfer;
1998
+ private filtered;
1999
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzPickListComponent, never>;
2000
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzPickListComponent, "ui-pick-list", never, { "source": { "alias": "source"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; "sourceHeader": { "alias": "sourceHeader"; "required": false; "isSignal": true; }; "targetHeader": { "alias": "targetHeader"; "required": false; "isSignal": true; }; "sourceFilterPlaceholder": { "alias": "sourceFilterPlaceholder"; "required": false; "isSignal": true; }; "targetFilterPlaceholder": { "alias": "targetFilterPlaceholder"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "dragdrop": { "alias": "dragdrop"; "required": false; "isSignal": true; }; "responsive": { "alias": "responsive"; "required": false; "isSignal": true; }; "listStyle": { "alias": "listStyle"; "required": false; "isSignal": true; }; "showSourceControls": { "alias": "showSourceControls"; "required": false; "isSignal": true; }; "showTargetControls": { "alias": "showTargetControls"; "required": false; "isSignal": true; }; }, { "movedToTarget": "movedToTarget"; "movedToSource": "movedToSource"; "movedAllToTarget": "movedAllToTarget"; "movedAllToSource": "movedAllToSource"; }, ["templates"], never, true, never>;
2001
+ }
2002
+
2003
+ type SmzFilterFunction = (value: any, filter: any, filterLocale?: string) => boolean;
2004
+ /**
2005
+ * Funcoes de filtro por modo (`contains`, `equals`, `dateIs`...) usadas pela tabela. Substitui o `FilterService` do PrimeNG.
2006
+ * Modos proprios podem ser adicionados com `register`.
2007
+ */
2008
+ declare class SmzFilterService {
2009
+ filters: Record<string, SmzFilterFunction>;
2010
+ /** Filtra `data` mantendo os itens em que algum dos `fields` satisfaz o modo. */
2011
+ filter(data: any[], fields: any[], value: any, matchMode: string, locale?: string): any[];
2012
+ /** Registra (ou sobrescreve) um modo de filtro. */
2013
+ register(rule: string, fn: SmzFilterFunction): void;
2014
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzFilterService, never>;
2015
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SmzFilterService>;
2016
+ }
2017
+
2018
+ type SmzTreeSelectionMode = 'single' | 'multiple' | 'checkbox' | null;
2019
+ interface SmzTreeNodeEvent {
2020
+ originalEvent: Event;
2021
+ node: SmzUiTreeNode;
2022
+ }
2023
+ interface SmzTreeDropEvent {
2024
+ originalEvent: Event;
2025
+ dragNode: SmzUiTreeNode;
2026
+ dropNode: SmzUiTreeNode | null;
2027
+ /** Posicao (base 0) de `dropNode` na sua lista; `undefined` ao soltar fora de qualquer no. */
2028
+ index?: number;
2029
+ /** Com `validateDrop`, o consumidor chama `accept()` para efetivar a movimentacao. */
2030
+ accept?: () => void;
2031
+ }
2032
+ interface TreeRow {
2033
+ node: SmzUiTreeNode;
2034
+ level: number;
2035
+ siblings: SmzUiTreeNode[];
2036
+ index: number;
2037
+ parent: SmzUiTreeNode | null;
2038
+ }
2039
+ type DropPosition = -1 | 0 | 1;
2040
+ /**
2041
+ * Arvore de nos com selecao, expansao, filtro e arrastar e soltar. Substitui o `p-tree` do PrimeNG.
2042
+ * Templates por tipo de no: `<ng-template smzTemplate="tipo" let-node>` (o tipo e `node.type`; `default` vale para os demais).
2043
+ * Tambem aceita `header`, `footer` e `empty`.
2044
+ *
2045
+ * <ui-tree [value]="nos" selectionMode="single" [(selection)]="selecionado" />
2046
+ */
2047
+ declare class SmzUiTreeComponent {
2048
+ readonly value: _angular_core.InputSignal<SmzUiTreeNode<any>[]>;
2049
+ readonly selectionMode: _angular_core.InputSignal<string>;
2050
+ readonly selection: _angular_core.ModelSignal<any>;
2051
+ readonly metaKeySelection: _angular_core.InputSignalWithTransform<boolean, unknown>;
2052
+ readonly propagateSelectionUp: _angular_core.InputSignalWithTransform<boolean, unknown>;
2053
+ readonly propagateSelectionDown: _angular_core.InputSignalWithTransform<boolean, unknown>;
2054
+ readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
2055
+ readonly loadingIcon: _angular_core.InputSignal<string>;
2056
+ readonly filter: _angular_core.InputSignalWithTransform<boolean, unknown>;
2057
+ readonly filterMode: _angular_core.InputSignal<string>;
2058
+ readonly filterPlaceholder: _angular_core.InputSignal<string>;
2059
+ readonly filterBy: _angular_core.InputSignal<string>;
2060
+ readonly emptyMessage: _angular_core.InputSignal<string>;
2061
+ readonly draggableNodes: _angular_core.InputSignalWithTransform<boolean, unknown>;
2062
+ readonly droppableNodes: _angular_core.InputSignalWithTransform<boolean, unknown>;
2063
+ readonly validateDrop: _angular_core.InputSignalWithTransform<boolean, unknown>;
2064
+ readonly scrollHeight: _angular_core.InputSignal<string>;
2065
+ readonly style: _angular_core.InputSignal<Record<string, string | number>>;
2066
+ readonly styleClass: _angular_core.InputSignal<string>;
2067
+ /** Menu de contexto exibido no clique direito de um no (o consumidor atualiza o modelo em `nodeContextMenuSelect`). */
2068
+ readonly contextMenu: _angular_core.InputSignal<SmzMenuListComponent>;
2069
+ /** Templates fornecidos por outro componente (ex.: `ui-tree-select`), usados no lugar dos filhos de conteudo. */
2070
+ readonly templateOverride: _angular_core.InputSignal<readonly SmzTemplateDirective[]>;
2071
+ /** Aceitos por compatibilidade com o `p-tree`; sem efeito. */
2072
+ readonly layout: _angular_core.InputSignal<string>;
2073
+ readonly virtualScroll: _angular_core.InputSignalWithTransform<boolean, unknown>;
2074
+ readonly nodeSelect: _angular_core.OutputEmitterRef<SmzTreeNodeEvent>;
2075
+ readonly nodeUnselect: _angular_core.OutputEmitterRef<SmzTreeNodeEvent>;
2076
+ readonly nodeExpand: _angular_core.OutputEmitterRef<SmzTreeNodeEvent>;
2077
+ readonly nodeCollapse: _angular_core.OutputEmitterRef<SmzTreeNodeEvent>;
2078
+ readonly nodeContextMenuSelect: _angular_core.OutputEmitterRef<SmzTreeNodeEvent>;
2079
+ readonly nodeDblClick: _angular_core.OutputEmitterRef<SmzTreeNodeEvent>;
2080
+ readonly nodeDrop: _angular_core.OutputEmitterRef<SmzTreeDropEvent>;
2081
+ readonly filtered: _angular_core.OutputEmitterRef<{
2082
+ filter: string;
2083
+ filteredValue: SmzUiTreeNode[];
2084
+ }>;
2085
+ /** Elemento hospedeiro (compatibilidade com `Tree.el` do PrimeNG). */
2086
+ readonly el: ElementRef<HTMLElement>;
2087
+ /** Incrementado a cada mutacao in-place (expansao, selecao propagada, drop) para recalcular as linhas. */
2088
+ private readonly tick;
2089
+ private readonly query;
2090
+ protected readonly dropHover: _angular_core.WritableSignal<{
2091
+ key: SmzUiTreeNode;
2092
+ position: DropPosition;
2093
+ }>;
2094
+ private dragged;
2095
+ private readonly templates;
2096
+ private readonly allTemplates;
2097
+ protected readonly headerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
2098
+ protected readonly footerTemplate: _angular_core.Signal<TemplateRef<unknown>>;
2099
+ protected readonly emptyTemplate: _angular_core.Signal<TemplateRef<unknown>>;
2100
+ protected readonly rows: _angular_core.Signal<TreeRow[]>;
2101
+ /** Filtra os nos por texto no campo `filterBy` (modo `lenient` mantem os filhos de um no que combina). */
2102
+ _filter(value: string): void;
2103
+ protected isLeaf(node: SmzUiTreeNode): boolean;
2104
+ protected iconOf(node: SmzUiTreeNode): string | null;
2105
+ protected templateFor(node: SmzUiTreeNode): TemplateRef<unknown> | undefined;
2106
+ protected isSelected(node: SmzUiTreeNode): boolean;
2107
+ protected isDraggable(node: SmzUiTreeNode): boolean;
2108
+ protected rowClasses(row: TreeRow): string;
2109
+ protected toggle(event: Event, node: SmzUiTreeNode): void;
2110
+ private expand;
2111
+ private collapse;
2112
+ protected onNodeClick(event: Event, node: SmzUiTreeNode): void;
2113
+ protected onContextMenu(event: MouseEvent, node: SmzUiTreeNode): void;
2114
+ protected onKeydown(event: KeyboardEvent, row: TreeRow): void;
2115
+ private listSelection;
2116
+ private setSelection;
2117
+ private indexInSelection;
2118
+ private sameNode;
2119
+ private propagateDown;
2120
+ private propagateUp;
2121
+ /** Mapa no -> motivo (`self` combina; `child` tem descendente que combina). */
2122
+ private matchingNodes;
2123
+ protected onDragStart(event: DragEvent, row: TreeRow): void;
2124
+ protected onDragEnd(): void;
2125
+ private allowDrop;
2126
+ private positionOf;
2127
+ protected onDragOver(event: DragEvent, row: TreeRow): void;
2128
+ protected onDragLeave(): void;
2129
+ protected onDrop(event: DragEvent, row: TreeRow): void;
2130
+ protected onRootDragOver(event: DragEvent): void;
2131
+ protected onRootDrop(event: DragEvent): void;
2132
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzUiTreeComponent, never>;
2133
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzUiTreeComponent, "ui-tree", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "selection": { "alias": "selection"; "required": false; "isSignal": true; }; "metaKeySelection": { "alias": "metaKeySelection"; "required": false; "isSignal": true; }; "propagateSelectionUp": { "alias": "propagateSelectionUp"; "required": false; "isSignal": true; }; "propagateSelectionDown": { "alias": "propagateSelectionDown"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "loadingIcon": { "alias": "loadingIcon"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterMode": { "alias": "filterMode"; "required": false; "isSignal": true; }; "filterPlaceholder": { "alias": "filterPlaceholder"; "required": false; "isSignal": true; }; "filterBy": { "alias": "filterBy"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "draggableNodes": { "alias": "draggableNodes"; "required": false; "isSignal": true; }; "droppableNodes": { "alias": "droppableNodes"; "required": false; "isSignal": true; }; "validateDrop": { "alias": "validateDrop"; "required": false; "isSignal": true; }; "scrollHeight": { "alias": "scrollHeight"; "required": false; "isSignal": true; }; "style": { "alias": "style"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "contextMenu": { "alias": "contextMenu"; "required": false; "isSignal": true; }; "templateOverride": { "alias": "templateOverride"; "required": false; "isSignal": true; }; "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; }, { "selection": "selectionChange"; "nodeSelect": "nodeSelect"; "nodeUnselect": "nodeUnselect"; "nodeExpand": "nodeExpand"; "nodeCollapse": "nodeCollapse"; "nodeContextMenuSelect": "nodeContextMenuSelect"; "nodeDblClick": "nodeDblClick"; "nodeDrop": "nodeDrop"; "filtered": "filtered"; }, ["templates"], never, true, never>;
2134
+ }
2135
+
2136
+ /**
2137
+ * Selecao de no de arvore em lista suspensa. Substitui o `p-treeselect` do PrimeNG.
2138
+ * O valor e o proprio no (modo `single`) ou a lista de nos (`multiple` e `checkbox`).
2139
+ * Aceita os mesmos templates por tipo de no do `ui-tree`.
2140
+ */
2141
+ declare class SmzTreeSelectComponent extends SmzValueAccessor<any> implements OnDestroy {
2142
+ readonly options: _angular_core.InputSignal<SmzUiTreeNode<any>[]>;
2143
+ readonly selectionMode: _angular_core.InputSignal<string>;
2144
+ readonly placeholder: _angular_core.InputSignal<string>;
2145
+ readonly filter: _angular_core.InputSignalWithTransform<boolean, unknown>;
2146
+ readonly filterPlaceholder: _angular_core.InputSignal<string>;
2147
+ readonly emptyMessage: _angular_core.InputSignal<string>;
2148
+ readonly showClear: _angular_core.InputSignalWithTransform<boolean, unknown>;
2149
+ readonly scrollHeight: _angular_core.InputSignal<string>;
2150
+ readonly styleClass: _angular_core.InputSignal<string>;
2151
+ readonly containerStyleClass: _angular_core.InputSignal<string>;
2152
+ /** Aceitos por compatibilidade com o `p-treeselect`; sem efeito. */
2153
+ readonly appendTo: _angular_core.InputSignal<unknown>;
2154
+ readonly display: _angular_core.InputSignal<string>;
2155
+ readonly filterInputAutoFocus: _angular_core.InputSignalWithTransform<boolean, unknown>;
2156
+ protected readonly templates: _angular_core.Signal<readonly SmzTemplateDirective[]>;
2157
+ protected readonly open: _angular_core.WritableSignal<boolean>;
2158
+ protected readonly selectedNodes: _angular_core.Signal<SmzUiTreeNode<any>[]>;
2159
+ protected readonly label: _angular_core.Signal<string>;
2160
+ private readonly overlay;
2161
+ private readonly viewContainer;
2162
+ private readonly trigger;
2163
+ private readonly panel;
2164
+ private readonly anchored;
2165
+ ngOnDestroy(): void;
2166
+ protected toggle(): void;
2167
+ protected onBlur(): void;
2168
+ protected onSelection(selection: any): void;
2169
+ protected clear(event: Event): void;
2170
+ private openPanel;
2171
+ protected close(): void;
2172
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeSelectComponent, never>;
2173
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTreeSelectComponent, "ui-tree-select", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "filterPlaceholder": { "alias": "filterPlaceholder"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "showClear": { "alias": "showClear"; "required": false; "isSignal": true; }; "scrollHeight": { "alias": "scrollHeight"; "required": false; "isSignal": true; }; "styleClass": { "alias": "styleClass"; "required": false; "isSignal": true; }; "containerStyleClass": { "alias": "containerStyleClass"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; "filterInputAutoFocus": { "alias": "filterInputAutoFocus"; "required": false; "isSignal": true; }; }, {}, ["templates"], never, true, never>;
2174
+ }
2175
+
2176
+ /** Paleta no formato Tailwind (`500`, `600`...) em hexadecimal. */
2177
+ type SmzPalette = Partial<Record<0 | 50 | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 950, string>>;
2178
+ /**
2179
+ * Altera tokens do tema em tempo de execucao (cores sao canais RGB em `--smz-color-*`).
2180
+ * O tema base vem do CSS (themes/*.css); este servico apenas sobrescreve variaveis no `<html>`.
2181
+ */
2182
+ declare class SmzThemeService {
2183
+ private readonly root;
2184
+ /** Sobrescreve cores: `{ primary: '#6366f1' }` -> `--smz-color-primary`. Aceita hexadecimal ou canais ("99 102 241"). */
2185
+ setColors(colors: Record<string, string>): void;
2186
+ /** Define a cor primaria a partir de uma paleta; escolhe os tons por modo claro/escuro. */
2187
+ setPrimaryPalette(palette: SmzPalette, dark?: boolean): void;
2188
+ /** Remove todas as sobrescritas feitas por este servico (volta ao tema do CSS). */
2189
+ reset(): void;
2190
+ isDark(): boolean;
2191
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzThemeService, never>;
2192
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SmzThemeService>;
2193
+ }
2194
+
2195
+ /**
2196
+ * Card. Substitui o `p-card` do PrimeNG.
2197
+ * O conteudo padrao vai no corpo; `header`, `title`, `subtitle` e `footer` podem ser strings ou templates.
2198
+ *
2199
+ * <ui-card header="Titulo" subheader="Sub">conteudo<ng-template smzTemplate="footer">...</ng-template></ui-card>
2200
+ */
2201
+ declare class SmzCardComponent {
2202
+ /** Titulo em texto (equivale ao slot `title`). */
2203
+ readonly header: _angular_core.InputSignal<string>;
2204
+ /** Subtitulo em texto (equivale ao slot `subtitle`). */
2205
+ readonly subheader: _angular_core.InputSignal<string>;
2206
+ private readonly templates;
2207
+ protected readonly headerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2208
+ protected readonly titleTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2209
+ protected readonly subtitleTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2210
+ protected readonly footerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2211
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzCardComponent, never>;
2212
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzCardComponent, "ui-card", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; "subheader": { "alias": "subheader"; "required": false; "isSignal": true; }; }, {}, ["templates"], ["*"], true, never>;
2213
+ }
2214
+
2215
+ /**
2216
+ * Painel com cabecalho, recolhimento opcional e rodape. Substitui o `p-panel` do PrimeNG.
2217
+ *
2218
+ * <ui-panel header="Filtros" [toggleable]="true" [(collapsed)]="fechado">conteudo</ui-panel>
2219
+ */
2220
+ declare class SmzPanelComponent {
2221
+ readonly header: _angular_core.InputSignal<string>;
2222
+ readonly toggleable: _angular_core.InputSignalWithTransform<boolean, unknown>;
2223
+ readonly collapsed: _angular_core.ModelSignal<boolean>;
2224
+ /** Antes de alternar (cancelavel nao: apenas notifica). */
2225
+ readonly beforeToggle: _angular_core.OutputEmitterRef<{
2226
+ originalEvent: Event;
2227
+ collapsed: boolean;
2228
+ }>;
2229
+ readonly afterToggle: _angular_core.OutputEmitterRef<{
2230
+ originalEvent: Event;
2231
+ collapsed: boolean;
2232
+ }>;
2233
+ private readonly templates;
2234
+ protected readonly headerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2235
+ protected readonly iconsTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2236
+ protected readonly footerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2237
+ protected readonly hasHeader: _angular_core.Signal<boolean>;
2238
+ protected toggle(event: Event): void;
2239
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzPanelComponent, never>;
2240
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzPanelComponent, "ui-panel", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; "toggleable": { "alias": "toggleable"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; "beforeToggle": "beforeToggle"; "afterToggle": "afterToggle"; }, ["templates"], ["*"], true, never>;
2241
+ }
2242
+
2243
+ /**
2244
+ * Indicador de carregamento circular. Substitui o `p-progressspinner` do PrimeNG.
2245
+ * O tamanho vem das classes do host (ex.: `class="h-12 w-12"`); a cor, de `text-ui-primary` (herdavel).
2246
+ *
2247
+ * <ui-progress-spinner class="h-12 w-12" strokeWidth="4" />
2248
+ */
2249
+ declare class SmzProgressSpinnerComponent {
2250
+ readonly strokeWidth: _angular_core.InputSignal<string | number>;
2251
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzProgressSpinnerComponent, never>;
2252
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzProgressSpinnerComponent, "ui-progress-spinner", never, { "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2253
+ }
2254
+
2255
+ type SmzFloatLabelVariant = 'over' | 'in' | 'on';
2256
+ /**
2257
+ * Rotulo flutuante. Substitui o `p-floatlabel` do PrimeNG.
2258
+ * O `<label>` projetado flutua quando o controle recebe foco ou tem valor
2259
+ * (detectado em `input`/`textarea` e em selects do kit; use `[filled]` para forcar).
2260
+ *
2261
+ * <ui-float-label variant="on"><input smzInputText id="n" /><label for="n">Nome</label></ui-float-label>
2262
+ */
2263
+ declare class SmzFloatLabelComponent {
2264
+ readonly variant: _angular_core.InputSignal<SmzFloatLabelVariant>;
2265
+ /** Forca o estado "preenchido" quando a deteccao automatica nao se aplica. */
2266
+ readonly filled: _angular_core.InputSignal<boolean>;
2267
+ protected readonly focused: _angular_core.WritableSignal<boolean>;
2268
+ private readonly detected;
2269
+ private readonly host;
2270
+ protected readonly floated: _angular_core.Signal<boolean>;
2271
+ protected readonly classes: _angular_core.Signal<string>;
2272
+ constructor();
2273
+ protected check(): void;
2274
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzFloatLabelComponent, never>;
2275
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzFloatLabelComponent, "ui-float-label", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "filled": { "alias": "filled"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2276
+ }
2277
+
2278
+ /** Painel de um `ui-splitter`. O conteudo e projetado dentro da area do painel. */
2279
+ declare class SmzSplitterPanelComponent {
2280
+ readonly content: _angular_core.Signal<TemplateRef<unknown>>;
2281
+ /** Tamanho inicial em % (sobrescreve `panelSizes` do splitter). */
2282
+ readonly size: _angular_core.InputSignal<number>;
2283
+ readonly minSize: _angular_core.InputSignal<number>;
2284
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzSplitterPanelComponent, never>;
2285
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzSplitterPanelComponent, "ui-splitter-panel", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "minSize": { "alias": "minSize"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
2286
+ }
2287
+ /**
2288
+ * Divisor redimensionavel. Substitui o `p-splitter` / `p-splitterPanel` do PrimeNG.
2289
+ *
2290
+ * <ui-splitter layout="horizontal" [panelSizes]="[30, 70]" [minSizes]="[10, 20]">
2291
+ * <ui-splitter-panel>A</ui-splitter-panel><ui-splitter-panel>B</ui-splitter-panel>
2292
+ * </ui-splitter>
2293
+ */
2294
+ declare class SmzSplitterComponent {
2295
+ readonly layout: _angular_core.InputSignal<"horizontal" | "vertical">;
2296
+ readonly panelSizes: _angular_core.InputSignal<number[]>;
2297
+ readonly minSizes: _angular_core.InputSignal<number[]>;
2298
+ readonly resizeEnd: _angular_core.OutputEmitterRef<{
2299
+ sizes: number[];
2300
+ }>;
2301
+ protected readonly panels: _angular_core.Signal<readonly SmzSplitterPanelComponent[]>;
2302
+ private readonly root;
2303
+ private readonly overrides;
2304
+ protected readonly sizes: _angular_core.Signal<number[]>;
2305
+ private min;
2306
+ protected startDrag(event: PointerEvent, index: number): void;
2307
+ protected onKey(event: KeyboardEvent, index: number): void;
2308
+ private resize;
2309
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzSplitterComponent, never>;
2310
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzSplitterComponent, "ui-splitter", never, { "layout": { "alias": "layout"; "required": false; "isSignal": true; }; "panelSizes": { "alias": "panelSizes"; "required": false; "isSignal": true; }; "minSizes": { "alias": "minSizes"; "required": false; "isSignal": true; }; }, { "resizeEnd": "resizeEnd"; }, ["panels"], never, true, never>;
2311
+ }
2312
+
2313
+ /** Linha achatada exposta aos templates (`let-rowNode`). */
2314
+ interface SmzTreeTableRowNode<T = any> {
2315
+ node: SmzUiTreeNode<T>;
2316
+ parent: SmzUiTreeNode<T> | null;
2317
+ level: number;
2318
+ }
2319
+ interface SmzTreeTableNodeEvent {
2320
+ node: SmzUiTreeNode;
2321
+ originalEvent?: Event;
2322
+ }
2323
+ type SmzTreeTableSelectionMode = 'single' | 'multiple' | 'checkbox';
2324
+ /**
2325
+ * Tabela em arvore. Substitui o `p-treeTable` do PrimeNG.
2326
+ * Os templates `header`, `body`, `caption`, `footer`, `emptymessage` e `summary` usam `smzTemplate`;
2327
+ * o `body` recebe `let-rowNode let-rowData="rowData" let-columns="columns"`.
2328
+ *
2329
+ * <ui-tree-table [value]="nodes" [columns]="cols" selectionMode="checkbox" [(selection)]="sel">
2330
+ * <ng-template smzTemplate="header" let-columns><tr><th *ngFor="let c of columns">{{ c.header }}</th></tr></ng-template>
2331
+ * <ng-template smzTemplate="body" let-rowNode let-rowData="rowData" let-columns="columns">
2332
+ * <tr [smzTtRow]="rowNode"><td><ui-tree-table-toggler [rowNode]="rowNode" />{{ rowData.name }}</td></tr>
2333
+ * </ng-template>
2334
+ * </ui-tree-table>
2335
+ */
2336
+ declare class SmzTreeTableComponent {
2337
+ readonly value: _angular_core.InputSignal<SmzUiTreeNode<any>[]>;
2338
+ readonly columns: _angular_core.InputSignal<any[]>;
2339
+ readonly selectionMode: _angular_core.InputSignal<string>;
2340
+ readonly selection: _angular_core.ModelSignal<any>;
2341
+ readonly propagateSelectionUp: _angular_core.InputSignalWithTransform<boolean, unknown>;
2342
+ readonly propagateSelectionDown: _angular_core.InputSignalWithTransform<boolean, unknown>;
2343
+ readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
2344
+ readonly scrollable: _angular_core.InputSignalWithTransform<boolean, unknown>;
2345
+ readonly scrollHeight: _angular_core.InputSignal<string>;
2346
+ readonly emptyMessage: _angular_core.InputSignal<string>;
2347
+ readonly tableStyleClass: _angular_core.InputSignal<string>;
2348
+ readonly paginator: _angular_core.InputSignalWithTransform<boolean, unknown>;
2349
+ readonly rows: _angular_core.ModelSignal<number>;
2350
+ readonly first: _angular_core.ModelSignal<number>;
2351
+ readonly rowsPerPageOptions: _angular_core.InputSignal<number[]>;
2352
+ readonly sortField: _angular_core.ModelSignal<string>;
2353
+ readonly sortOrder: _angular_core.ModelSignal<1 | -1>;
2354
+ /** Destaca a linha sob o cursor (padrao: ligado). */
2355
+ readonly rowHover: _angular_core.InputSignalWithTransform<boolean, unknown>;
2356
+ readonly showCurrentPageReport: _angular_core.InputSignalWithTransform<boolean, unknown>;
2357
+ readonly currentPageReportTemplate: _angular_core.InputSignal<string>;
2358
+ /** Campos (de `node.data`) consultados pelo filtro global. */
2359
+ readonly globalFilterFields: _angular_core.InputSignal<string[]>;
2360
+ /** `lenient`: um no que casa mantem toda a sua subarvore; `strict`: so os nos que casam (e seus ancestrais). */
2361
+ readonly filterMode: _angular_core.InputSignal<"lenient" | "strict">;
2362
+ readonly nodeSelect: _angular_core.OutputEmitterRef<SmzTreeTableNodeEvent>;
2363
+ readonly nodeUnselect: _angular_core.OutputEmitterRef<SmzTreeTableNodeEvent>;
2364
+ readonly nodeExpand: _angular_core.OutputEmitterRef<SmzTreeTableNodeEvent>;
2365
+ readonly nodeCollapse: _angular_core.OutputEmitterRef<SmzTreeTableNodeEvent>;
2366
+ readonly sorted: _angular_core.OutputEmitterRef<{
2367
+ field: string;
2368
+ order: 1 | -1;
2369
+ }>;
2370
+ readonly page: _angular_core.OutputEmitterRef<unknown>;
2371
+ private readonly templates;
2372
+ protected readonly headerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2373
+ protected readonly bodyTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2374
+ protected readonly captionTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2375
+ protected readonly footerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2376
+ protected readonly emptyTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2377
+ protected readonly summaryTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
2378
+ /** Os nos sao mutaveis (`expanded`, `partialSelected`); este contador forca o recalculo das linhas. */
2379
+ private readonly version;
2380
+ private readonly filterService;
2381
+ private readonly globalFilter;
2382
+ private readonly columnFilters;
2383
+ /** Nos raiz que passam nos filtros (global e por coluna), ou `null` quando nao ha filtro ativo. */
2384
+ get filteredNodes(): SmzUiTreeNode[] | null;
2385
+ /** Visibilidade calculada dos filtros: quais nos aparecem e quais ancestrais expandir. */
2386
+ private readonly visibility;
2387
+ protected readonly rootCount: _angular_core.Signal<number>;
2388
+ protected readonly flatRows: _angular_core.Signal<SmzTreeTableRowNode<any>[]>;
2389
+ /** Linhas visiveis; com paginador, a pagina atual e calculada sobre os nos raiz. */
2390
+ protected readonly pageRows: _angular_core.Signal<SmzTreeTableRowNode<any>[]>;
2391
+ /** Filtro global (equivale a `filterGlobal` do `p-treeTable`). */
2392
+ filterGlobal(value: string | null, matchMode?: string): void;
2393
+ /** Filtro de uma coluna (campo de `node.data`). Valor vazio remove o filtro. */
2394
+ filter(value: any, field: string, matchMode?: string): void;
2395
+ /** Limpa filtros, ordenacao e volta para a primeira pagina (equivale a `clear()` do `p-treeTable`). */
2396
+ clear(): void;
2397
+ refresh(): void;
2398
+ toggleNode(rowNode: SmzTreeTableRowNode, event?: Event): void;
2399
+ sortBy(field: string): void;
2400
+ isSelected(node: SmzUiTreeNode): boolean;
2401
+ selectionState(node: SmzUiTreeNode): 'checked' | 'partial' | 'unchecked';
2402
+ onRowClick(rowNode: SmzTreeTableRowNode, event: Event): void;
2403
+ toggleCheckbox(rowNode: SmzTreeTableRowNode, event?: Event): void;
2404
+ /** Marca/desmarca todos os nos (checkbox do cabecalho). */
2405
+ toggleAll(checked: boolean): void;
2406
+ allSelected(): boolean;
2407
+ private countNodes;
2408
+ private findParent;
2409
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableComponent, never>;
2410
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTreeTableComponent, "ui-tree-table", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "selection": { "alias": "selection"; "required": false; "isSignal": true; }; "propagateSelectionUp": { "alias": "propagateSelectionUp"; "required": false; "isSignal": true; }; "propagateSelectionDown": { "alias": "propagateSelectionDown"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "scrollable": { "alias": "scrollable"; "required": false; "isSignal": true; }; "scrollHeight": { "alias": "scrollHeight"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "tableStyleClass": { "alias": "tableStyleClass"; "required": false; "isSignal": true; }; "paginator": { "alias": "paginator"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "first": { "alias": "first"; "required": false; "isSignal": true; }; "rowsPerPageOptions": { "alias": "rowsPerPageOptions"; "required": false; "isSignal": true; }; "sortField": { "alias": "sortField"; "required": false; "isSignal": true; }; "sortOrder": { "alias": "sortOrder"; "required": false; "isSignal": true; }; "rowHover": { "alias": "rowHover"; "required": false; "isSignal": true; }; "showCurrentPageReport": { "alias": "showCurrentPageReport"; "required": false; "isSignal": true; }; "currentPageReportTemplate": { "alias": "currentPageReportTemplate"; "required": false; "isSignal": true; }; "globalFilterFields": { "alias": "globalFilterFields"; "required": false; "isSignal": true; }; "filterMode": { "alias": "filterMode"; "required": false; "isSignal": true; }; }, { "selection": "selectionChange"; "rows": "rowsChange"; "first": "firstChange"; "sortField": "sortFieldChange"; "sortOrder": "sortOrderChange"; "nodeSelect": "nodeSelect"; "nodeUnselect": "nodeUnselect"; "nodeExpand": "nodeExpand"; "nodeCollapse": "nodeCollapse"; "sorted": "sorted"; "page": "page"; }, ["templates"], never, true, never>;
2411
+ }
2412
+ /** Linha do corpo: `<tr [smzTtRow]="rowNode">`. Cuida de estilo, aria e selecao por clique. */
2413
+ declare class SmzTreeTableRowDirective {
2414
+ protected readonly table: SmzTreeTableComponent;
2415
+ readonly rowNode: _angular_core.InputSignal<SmzTreeTableRowNode<any>>;
2416
+ protected readonly classes: _angular_core.Signal<string>;
2417
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableRowDirective, never>;
2418
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzTreeTableRowDirective, "tr[smzTtRow]", never, { "rowNode": { "alias": "smzTtRow"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
2419
+ }
2420
+ /** Seta de expandir/recolher com recuo por nivel: `<ui-tree-table-toggler [rowNode]="rowNode" />`. */
2421
+ declare class SmzTreeTableTogglerComponent {
2422
+ protected readonly table: SmzTreeTableComponent;
2423
+ readonly rowNode: _angular_core.InputSignal<SmzTreeTableRowNode<any>>;
2424
+ protected hasChildren(): boolean;
2425
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableTogglerComponent, never>;
2426
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTreeTableTogglerComponent, "ui-tree-table-toggler", never, { "rowNode": { "alias": "rowNode"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
2427
+ }
2428
+ /** Checkbox de selecao da linha (modo `checkbox`): `<ui-tree-table-checkbox [value]="rowNode" />`. */
2429
+ declare class SmzTreeTableCheckboxComponent {
2430
+ protected readonly table: SmzTreeTableComponent;
2431
+ readonly value: _angular_core.InputSignal<SmzTreeTableRowNode<any>>;
2432
+ protected state(): 'checked' | 'partial' | 'unchecked';
2433
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableCheckboxComponent, never>;
2434
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTreeTableCheckboxComponent, "ui-tree-table-checkbox", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
2435
+ }
2436
+ /** Checkbox do cabecalho: seleciona/limpa todos os nos. */
2437
+ declare class SmzTreeTableHeaderCheckboxComponent {
2438
+ protected readonly table: SmzTreeTableComponent;
2439
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableHeaderCheckboxComponent, never>;
2440
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTreeTableHeaderCheckboxComponent, "ui-tree-table-header-checkbox", never, {}, {}, never, never, true, never>;
2441
+ }
2442
+ /** Cabecalho ordenavel: `<th [smzTtSortableColumn]="'nome'">Nome <ui-tree-table-sort-icon field="nome" /></th>`. */
2443
+ declare class SmzTreeTableSortableColumnDirective {
2444
+ protected readonly table: SmzTreeTableComponent;
2445
+ readonly field: _angular_core.InputSignal<string>;
2446
+ protected ariaSort(): string;
2447
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableSortableColumnDirective, never>;
2448
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SmzTreeTableSortableColumnDirective, "th[smzTtSortableColumn]", never, { "field": { "alias": "smzTtSortableColumn"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
2449
+ }
2450
+ declare class SmzTreeTableSortIconComponent {
2451
+ protected readonly table: SmzTreeTableComponent;
2452
+ readonly field: _angular_core.InputSignal<string>;
2453
+ protected dir(): 0 | 1 | -1;
2454
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzTreeTableSortIconComponent, never>;
2455
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzTreeTableSortIconComponent, "ui-tree-table-sort-icon", never, { "field": { "alias": "field"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
2456
+ }
2457
+ declare const SMZ_TREE_TABLE: readonly [typeof SmzTreeTableComponent, typeof SmzTreeTableRowDirective, typeof SmzTreeTableTogglerComponent, typeof SmzTreeTableCheckboxComponent, typeof SmzTreeTableHeaderCheckboxComponent, typeof SmzTreeTableSortableColumnDirective, typeof SmzTreeTableSortIconComponent, typeof SmzTemplateDirective];
2458
+
2459
+ /** Opcoes de `SmzConfirmationService.confirm` (mesmos nomes do `Confirmation` do PrimeNG). */
2460
+ interface SmzConfirmation {
2461
+ message?: string;
2462
+ header?: string;
2463
+ /** Classe do icone exibido ao lado da mensagem (ex.: `fa-solid fa-triangle-exclamation`). */
2464
+ icon?: string;
2465
+ acceptLabel?: string;
2466
+ rejectLabel?: string;
2467
+ /** Esconde o botao de aceitar/rejeitar. */
2468
+ acceptVisible?: boolean;
2469
+ rejectVisible?: boolean;
2470
+ /** Severidade do botao de aceitar (ex.: `danger` destrutivo, `success` aprovar). */
2471
+ acceptSeverity?: 'primary' | 'secondary' | 'danger' | 'success' | 'warning';
2472
+ accept?: () => void;
2473
+ reject?: () => void;
2474
+ width?: string;
2475
+ closeOnEscape?: boolean;
2476
+ }
2477
+ declare class SmzConfirmContentComponent {
2478
+ protected readonly options: SmzConfirmation;
2479
+ private readonly ref;
2480
+ protected close(accepted: boolean): void;
2481
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzConfirmContentComponent, never>;
2482
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzConfirmContentComponent, "ui-confirm-content", never, {}, {}, never, never, true, never>;
2483
+ }
2484
+ /**
2485
+ * Confirmacao modal. Substitui o `ConfirmationService` + `<p-confirmdialog>` do PrimeNG
2486
+ * (nao ha componente a declarar no template).
2487
+ *
2488
+ * confirm.confirm({ message: 'Excluir?', header: 'Confirmacao', icon: 'fa-solid fa-triangle-exclamation', accept: () => ..., reject: () => ... });
2489
+ */
2490
+ declare class SmzConfirmationService {
2491
+ private readonly dialogs;
2492
+ confirm(confirmation: SmzConfirmation): SmzDialogRef<boolean>;
2493
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzConfirmationService, never>;
2494
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SmzConfirmationService>;
2495
+ }
2496
+
2497
+ interface SmzFileSelectEvent {
2498
+ files: File[];
2499
+ originalEvent?: Event;
2500
+ }
2501
+ interface SmzFileErrorEvent {
2502
+ file: File;
2503
+ reason: 'size' | 'type';
2504
+ }
2505
+ /**
2506
+ * Selecao de arquivos com area de arrastar e soltar e lista de escolhidos.
2507
+ * Substitui o `p-fileupload` (modo `basic`/`advanced` sem envio automatico): o envio ao servidor
2508
+ * fica a cargo do app (ex.: `HttpClient` no handler de `(selected)`).
2509
+ *
2510
+ * <ui-file-upload accept="image/*" [multiple]="true" [maxFileSize]="1000000" (selected)="enviar($event.files)" />
2511
+ */
2512
+ declare class SmzFileUploadComponent {
2513
+ readonly accept: _angular_core.InputSignal<string>;
2514
+ readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
2515
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
2516
+ /** Tamanho maximo por arquivo, em bytes. */
2517
+ readonly maxFileSize: _angular_core.InputSignal<number>;
2518
+ readonly chooseLabel: _angular_core.InputSignal<string>;
2519
+ readonly dropLabel: _angular_core.InputSignal<string>;
2520
+ readonly selected: _angular_core.OutputEmitterRef<SmzFileSelectEvent>;
2521
+ readonly removed: _angular_core.OutputEmitterRef<{
2522
+ file: File;
2523
+ }>;
2524
+ readonly rejected: _angular_core.OutputEmitterRef<SmzFileErrorEvent>;
2525
+ readonly files: _angular_core.WritableSignal<File[]>;
2526
+ protected readonly dragging: _angular_core.WritableSignal<boolean>;
2527
+ private readonly fileInput;
2528
+ /** Limpa a lista (equivale a `clear()` do `p-fileupload`). */
2529
+ clear(): void;
2530
+ protected onPick(event: Event): void;
2531
+ protected onDragOver(event: DragEvent): void;
2532
+ protected onDrop(event: DragEvent): void;
2533
+ protected remove(file: File): void;
2534
+ protected size(file: File): string;
2535
+ private add;
2536
+ private matchesAccept;
2537
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SmzFileUploadComponent, never>;
2538
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SmzFileUploadComponent, "ui-file-upload", never, { "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "maxFileSize": { "alias": "maxFileSize"; "required": false; "isSignal": true; }; "chooseLabel": { "alias": "chooseLabel"; "required": false; "isSignal": true; }; "dropLabel": { "alias": "dropLabel"; "required": false; "isSignal": true; }; }, { "selected": "selected"; "removed": "removed"; "rejected": "rejected"; }, never, never, true, never>;
2539
+ }
2540
+
2541
+ export { SMZ_DIALOG_CONTENT, SMZ_SOFT_TONE, SMZ_SOLID_TONE, SMZ_TREE_TABLE, SmzAccordionComponent, SmzAccordionContentComponent, SmzAccordionHeaderComponent, SmzAccordionPanelComponent, SmzAnchoredPanel, SmzAutoCompleteComponent, SmzAutoFocusDirective, SmzBadgeComponent, SmzBadgeDirective, SmzBlockUiComponent, SmzButtonComponent, SmzCardComponent, SmzCheckboxComponent, SmzColorPickerComponent, SmzConfirmContentComponent, SmzConfirmationService, SmzConnectedOverlayScrollHandler, SmzDataViewComponent, SmzDatePickerComponent, SmzDialogComponent, SmzDialogConfig, SmzDialogFrameComponent, SmzDialogRef, SmzDialogService, SmzDividerComponent, SmzDomHandler, SmzDrawerComponent, SmzFileUploadComponent, SmzFilterMatchMode, SmzFilterOperator, SmzFilterService, SmzFloatLabelComponent, SmzIconComponent, SmzIconFieldComponent, SmzInputGroupAddonComponent, SmzInputGroupComponent, SmzInputIconComponent, SmzInputMaskComponent, SmzInputNumberComponent, SmzInputTextDirective, SmzListboxComponent, SmzLocaleService, SmzMenuListComponent, SmzMessageComponent, SmzMessageService, SmzMultiSelectComponent, SmzObjectUtils, SmzPaginatorComponent, SmzPanelComponent, SmzPasswordComponent, SmzPickListComponent, SmzPopoverComponent, SmzProgressBarComponent, SmzProgressSpinnerComponent, SmzRadioButtonComponent, SmzRippleDirective, SmzSelectButtonComponent, SmzSelectComponent, SmzSkeletonComponent, SmzSplitterComponent, SmzSplitterPanelComponent, SmzStyleClassDirective, SmzTabComponent, SmzTabListComponent, SmzTabPanelComponent, SmzTabPanelsComponent, SmzTabsComponent, SmzTagComponent, SmzTemplateDirective, SmzTextareaDirective, SmzThemeService, SmzToastContainerComponent, SmzToggleSwitchComponent, SmzToolbarComponent, SmzTooltipComponent, SmzTooltipDirective, SmzTranslationKeys, SmzTreeSelectComponent, SmzTreeTableCheckboxComponent, SmzTreeTableComponent, SmzTreeTableHeaderCheckboxComponent, SmzTreeTableRowDirective, SmzTreeTableSortIconComponent, SmzTreeTableSortableColumnDirective, SmzTreeTableTogglerComponent, SmzUiTimelineComponent, SmzUiTreeComponent, SmzValueAccessor, SmzZIndex, filterOptions, optionDisabled, optionLabel, optionValue, sameValue, smzCalendarStart, smzCx, smzFindTemplate, smzFormatDate, smzMergeClasses, smzNormalizeSeverity, smzNormalizeStyleClass, smzParseButtonStyleClass, smzParseDate, smzSameDay, smzStartOfDay, smzStaticHostClass, smzTwoDigits, smzUniqueId, smzVariants };
2542
+ export type { SmzAccordionValue, SmzAnchoredPanelOptions, SmzAutoCompleteCompleteEvent, SmzAutoCompleteSelectEvent, SmzBlockTarget, SmzBlockableUi, SmzButtonIconPosition, SmzButtonLegacySeverity, SmzButtonSeverity, SmzButtonSize, SmzButtonVariant, SmzClassValue, SmzConfirmation, SmzDataViewLayout, SmzDatePickerValue, SmzDateSelectionMode, SmzDialogPosition, SmzDividerLayout, SmzDrawerPosition, SmzFileErrorEvent, SmzFileSelectEvent, SmzFilterFunction, SmzFilterMatchModeValue, SmzFilterMetadata, SmzFilterMode, SmzFilterOperatorValue, SmzFloatLabelVariant, SmzInputNumberInputEvent, SmzInputSize, SmzLegacySeverity, SmzListboxChangeEvent, SmzListboxClickEvent, SmzMessageSeverity, SmzMultiSelectChangeEvent, SmzOptionConfig, SmzPageEvent, SmzPalette, SmzPickListMoveEvent, SmzPopoverTarget, SmzProgressBarMode, SmzSelectButtonChangeEvent, SmzSelectChangeEvent, SmzSelectItem, SmzSeverity, SmzSkeletonShape, SmzSortMeta, SmzStyleClass, SmzTabValue, SmzTimelineAlign, SmzToastMessage, SmzToastPosition, SmzTooltipEvent, SmzTooltipOptions, SmzTooltipPosition, SmzTranslation, SmzTreeDropEvent, SmzTreeNodeEvent, SmzTreeSelectionMode, SmzTreeTableNodeEvent, SmzTreeTableRowNode, SmzTreeTableSelectionMode, SmzUiMenuItem, SmzUiMenuItemCommandEvent, SmzUiTreeNode, SmzVariantProps, SmzVariantsConfig };