@abdelfattahqandil21/ryzen-ui 0.0.1

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.
package/index.d.ts ADDED
@@ -0,0 +1,1008 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { OnDestroy, TemplateRef } from '@angular/core';
3
+ import * as _abdelfattahqandil21_ryzen_ui from '@abdelfattahqandil21/ryzen-ui';
4
+
5
+ type FieldSize = 'sm' | 'md' | 'lg';
6
+ declare const THEME_COLORS: readonly ["primary", "secondary", "accent", "success", "warning", "danger", "info"];
7
+ type ThemeColor = (typeof THEME_COLORS)[number];
8
+ declare function isThemeColor(value: string): value is ThemeColor;
9
+
10
+ declare class CheckboxComponent {
11
+ readonly checked: _angular_core.ModelSignal<boolean>;
12
+ readonly label: _angular_core.InputSignal<string>;
13
+ readonly size: _angular_core.InputSignal<FieldSize>;
14
+ readonly disabled: _angular_core.InputSignal<boolean>;
15
+ readonly accentColor: _angular_core.InputSignal<string | null>;
16
+ readonly indeterminate: _angular_core.InputSignal<boolean>;
17
+ readonly hint: _angular_core.InputSignal<string>;
18
+ readonly errorMessage: _angular_core.InputSignal<string>;
19
+ readonly error: _angular_core.InputSignal<boolean>;
20
+ readonly width: _angular_core.InputSignal<string>;
21
+ readonly _size: _angular_core.Signal<FieldSize>;
22
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
23
+ readonly _rawAccent: _angular_core.Signal<string | null>;
24
+ readonly _width: _angular_core.Signal<string | null>;
25
+ toggle(): void;
26
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CheckboxComponent, never>;
27
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckboxComponent, "app-checkbox", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, never, true, never>;
28
+ }
29
+
30
+ interface CalendarDay {
31
+ date: Date;
32
+ day: number;
33
+ isCurrentMonth: boolean;
34
+ isToday: boolean;
35
+ isSelected: boolean;
36
+ isDisabled: boolean;
37
+ isHighlighted: boolean;
38
+ }
39
+ interface DatePickerConfig {
40
+ minDate?: Date;
41
+ maxDate?: Date;
42
+ disabledDates?: Date[];
43
+ highlightedDates?: Date[];
44
+ firstDayOfWeek?: 0 | 1;
45
+ showTodayButton?: boolean;
46
+ showYearNavigation?: boolean;
47
+ appendToParent?: boolean;
48
+ }
49
+ type ViewMode = 'days' | 'months' | 'years';
50
+
51
+ declare class DatePickerComponent implements OnDestroy {
52
+ private _elementRef;
53
+ private _closeTimer;
54
+ private _docClickCleanup;
55
+ private readonly _today;
56
+ readonly value: _angular_core.ModelSignal<Date | null>;
57
+ readonly placeholder: _angular_core.InputSignal<string>;
58
+ readonly size: _angular_core.InputSignal<FieldSize>;
59
+ readonly disabled: _angular_core.InputSignal<boolean>;
60
+ readonly accentColor: _angular_core.InputSignal<string | null>;
61
+ readonly hint: _angular_core.InputSignal<string>;
62
+ readonly errorMessage: _angular_core.InputSignal<string>;
63
+ readonly error: _angular_core.InputSignal<boolean>;
64
+ readonly format: _angular_core.InputSignal<"dd/MM/yyyy" | "MM/dd/yyyy" | "yyyy-MM-dd">;
65
+ readonly width: _angular_core.InputSignal<string>;
66
+ readonly config: _angular_core.InputSignal<DatePickerConfig>;
67
+ readonly _size: _angular_core.Signal<FieldSize>;
68
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
69
+ readonly _rawAccent: _angular_core.Signal<string | null>;
70
+ readonly _accentColorValue: _angular_core.Signal<string>;
71
+ readonly _width: _angular_core.Signal<string | null>;
72
+ readonly _isOpen: _angular_core.WritableSignal<boolean>;
73
+ readonly _isClosing: _angular_core.WritableSignal<boolean>;
74
+ readonly _panelDirection: _angular_core.WritableSignal<"up" | "down">;
75
+ readonly _panelX: _angular_core.WritableSignal<number>;
76
+ readonly _panelY: _angular_core.WritableSignal<number>;
77
+ readonly _panelWidth: _angular_core.WritableSignal<number>;
78
+ private _panelEl;
79
+ readonly _viewDate: _angular_core.WritableSignal<Date>;
80
+ readonly _viewMode: _angular_core.WritableSignal<ViewMode>;
81
+ readonly _decade: _angular_core.WritableSignal<number>;
82
+ readonly _monthNames: string[];
83
+ readonly _weekdays: string[];
84
+ readonly _weekdaysAr: string[];
85
+ readonly _monthsShort: string[];
86
+ readonly _displayValue: _angular_core.Signal<string>;
87
+ readonly _monthName: _angular_core.Signal<string>;
88
+ readonly _year: _angular_core.Signal<number>;
89
+ readonly _decadeLabel: _angular_core.Signal<string>;
90
+ readonly _appendToParent: _angular_core.Signal<boolean>;
91
+ readonly _panelFixed: _angular_core.Signal<"fixed" | null>;
92
+ readonly _showTodayBtn: _angular_core.Signal<boolean>;
93
+ readonly _showYearNav: _angular_core.Signal<boolean>;
94
+ readonly _firstDay: _angular_core.Signal<0 | 1>;
95
+ readonly _weekDaysOrdered: _angular_core.Signal<string[]>;
96
+ readonly _yearsList: _angular_core.Signal<number[]>;
97
+ readonly _calendarDays: _angular_core.Signal<CalendarDay[]>;
98
+ private _toDay;
99
+ private _sameDay;
100
+ readonly _inputSizeCls: _angular_core.Signal<"py-1 pl-2 pr-8 text-xs" | "py-3 pl-4 pr-10 text-base" | "py-2 pl-3 pr-10 text-sm">;
101
+ readonly _iconCls: _angular_core.Signal<string>;
102
+ _onTriggerClick(event: Event): void;
103
+ _onPanelClick(event: Event): void;
104
+ private _open;
105
+ private _attachToBody;
106
+ private _detachFromBody;
107
+ private _close;
108
+ ngOnDestroy(): void;
109
+ _selectDate(date: Date): void;
110
+ _selectMonth(idx: number): void;
111
+ _selectYear(year: number): void;
112
+ _prevMonth(): void;
113
+ _nextMonth(): void;
114
+ _prevYear(): void;
115
+ _nextYear(): void;
116
+ _prevDecade(): void;
117
+ _nextDecade(): void;
118
+ _showMonths(): void;
119
+ _showYears(): void;
120
+ _prevPeriod(): void;
121
+ _nextPeriod(): void;
122
+ _goToToday(): void;
123
+ _clear(event: Event): void;
124
+ _isCurrentMonth(idx: number): boolean;
125
+ _isCurrentYear(year: number): boolean;
126
+ _onDocClick(event: Event): void;
127
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DatePickerComponent, never>;
128
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DatePickerComponent, "app-date-picker", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
129
+ }
130
+
131
+ interface DropdownOption<T = unknown> {
132
+ label: string;
133
+ value: T;
134
+ }
135
+ interface DropdownConfig {
136
+ appendToParent?: boolean;
137
+ maxHeight?: string;
138
+ direction?: 'up' | 'down' | 'auto';
139
+ }
140
+
141
+ declare class DropDownComponent implements OnDestroy {
142
+ private _elementRef;
143
+ private _closeTimer;
144
+ private _docClickCleanup;
145
+ readonly value: _angular_core.ModelSignal<string | null>;
146
+ readonly options: _angular_core.InputSignal<(string | DropdownOption<unknown>)[]>;
147
+ readonly placeholder: _angular_core.InputSignal<string>;
148
+ readonly size: _angular_core.InputSignal<FieldSize>;
149
+ readonly disabled: _angular_core.InputSignal<boolean>;
150
+ readonly accentColor: _angular_core.InputSignal<string | null>;
151
+ readonly searchable: _angular_core.InputSignal<boolean>;
152
+ readonly hint: _angular_core.InputSignal<string>;
153
+ readonly errorMessage: _angular_core.InputSignal<string>;
154
+ readonly error: _angular_core.InputSignal<boolean>;
155
+ readonly width: _angular_core.InputSignal<string>;
156
+ readonly config: _angular_core.InputSignal<DropdownConfig>;
157
+ readonly _size: _angular_core.Signal<FieldSize>;
158
+ private readonly _direction;
159
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
160
+ readonly _rawAccent: _angular_core.Signal<string | null>;
161
+ readonly _accentColorValue: _angular_core.Signal<string>;
162
+ readonly _width: _angular_core.Signal<string | null>;
163
+ readonly _normalizedOptions: _angular_core.Signal<DropdownOption<unknown>[]>;
164
+ readonly _isOpen: _angular_core.WritableSignal<boolean>;
165
+ readonly _isClosing: _angular_core.WritableSignal<boolean>;
166
+ readonly _panelDirection: _angular_core.WritableSignal<"up" | "down">;
167
+ readonly _panelX: _angular_core.WritableSignal<number>;
168
+ readonly _panelY: _angular_core.WritableSignal<number>;
169
+ readonly _panelWidth: _angular_core.WritableSignal<number>;
170
+ private _panelEl;
171
+ readonly _searchQuery: _angular_core.WritableSignal<string>;
172
+ readonly _appendToParent: _angular_core.Signal<boolean>;
173
+ readonly _panelFixed: _angular_core.Signal<"fixed" | null>;
174
+ readonly _maxHeight: _angular_core.Signal<string>;
175
+ readonly _selectedLabel: _angular_core.Signal<string>;
176
+ readonly _filteredOptions: _angular_core.Signal<DropdownOption<unknown>[]>;
177
+ readonly _inputSizeCls: _angular_core.Signal<"py-1 pl-2 pr-8 text-xs" | "py-3 pl-4 pr-10 text-base" | "py-2 pl-3 pr-10 text-sm">;
178
+ readonly _iconCls: _angular_core.Signal<string>;
179
+ readonly _optionCls: _angular_core.Signal<string>;
180
+ _onTriggerClick(event: Event): void;
181
+ _onPanelClick(event: Event): void;
182
+ private _open;
183
+ private _close;
184
+ private _attachToBody;
185
+ private _detachFromBody;
186
+ _selectOption(option: DropdownOption): void;
187
+ _clear(event: Event): void;
188
+ _onWindowScroll(): void;
189
+ _onDocClick(event: Event): void;
190
+ ngOnDestroy(): void;
191
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DropDownComponent, never>;
192
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DropDownComponent, "app-drop-down", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
193
+ }
194
+
195
+ declare class FileUploadComponent {
196
+ readonly files: _angular_core.ModelSignal<File[]>;
197
+ readonly accept: _angular_core.InputSignal<string>;
198
+ readonly multiple: _angular_core.InputSignal<boolean>;
199
+ readonly maxSize: _angular_core.InputSignal<number>;
200
+ readonly maxFiles: _angular_core.InputSignal<number>;
201
+ readonly disabled: _angular_core.InputSignal<boolean>;
202
+ readonly placeholder: _angular_core.InputSignal<string>;
203
+ readonly size: _angular_core.InputSignal<FieldSize>;
204
+ readonly hint: _angular_core.InputSignal<string>;
205
+ readonly errorMessage: _angular_core.InputSignal<string>;
206
+ readonly error: _angular_core.InputSignal<boolean>;
207
+ readonly _size: _angular_core.Signal<FieldSize>;
208
+ readonly _isDragOver: _angular_core.WritableSignal<boolean>;
209
+ readonly _totalSize: _angular_core.Signal<number>;
210
+ _onDragOver(event: DragEvent): void;
211
+ _onDragLeave(event: DragEvent): void;
212
+ _onDrop(event: DragEvent): void;
213
+ _onFileSelected(event: Event): void;
214
+ _removeFile(index: number): void;
215
+ private _addFiles;
216
+ _formatSize(bytes: number): string;
217
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileUploadComponent, never>;
218
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "app-file-upload", never, { "files": { "alias": "files"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "maxSize": { "alias": "maxSize"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; }, { "files": "filesChange"; }, never, never, true, never>;
219
+ }
220
+
221
+ interface MultiSelectConfig {
222
+ appendToParent?: boolean;
223
+ maxHeight?: string;
224
+ direction?: 'up' | 'down' | 'auto';
225
+ }
226
+
227
+ declare class MultiSelectComponent implements OnDestroy {
228
+ private _elementRef;
229
+ private _closeTimer;
230
+ private _docClickCleanup;
231
+ readonly value: _angular_core.ModelSignal<string[]>;
232
+ readonly options: _angular_core.InputSignal<(string | DropdownOption<unknown>)[]>;
233
+ readonly placeholder: _angular_core.InputSignal<string>;
234
+ readonly size: _angular_core.InputSignal<FieldSize>;
235
+ readonly disabled: _angular_core.InputSignal<boolean>;
236
+ readonly selectAll: _angular_core.InputSignal<boolean>;
237
+ readonly selectAllLabel: _angular_core.InputSignal<string>;
238
+ readonly accentColor: _angular_core.InputSignal<string | null>;
239
+ readonly searchable: _angular_core.InputSignal<boolean>;
240
+ readonly hint: _angular_core.InputSignal<string>;
241
+ readonly errorMessage: _angular_core.InputSignal<string>;
242
+ readonly error: _angular_core.InputSignal<boolean>;
243
+ readonly width: _angular_core.InputSignal<string>;
244
+ readonly config: _angular_core.InputSignal<MultiSelectConfig>;
245
+ readonly _size: _angular_core.Signal<FieldSize>;
246
+ private readonly _direction;
247
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
248
+ readonly _rawAccent: _angular_core.Signal<string | null>;
249
+ readonly _width: _angular_core.Signal<string | null>;
250
+ readonly _normalizedOptions: _angular_core.Signal<DropdownOption<unknown>[]>;
251
+ readonly _isOpen: _angular_core.WritableSignal<boolean>;
252
+ readonly _isClosing: _angular_core.WritableSignal<boolean>;
253
+ readonly _panelDirection: _angular_core.WritableSignal<"up" | "down">;
254
+ readonly _panelX: _angular_core.WritableSignal<number>;
255
+ readonly _panelY: _angular_core.WritableSignal<number>;
256
+ readonly _panelWidth: _angular_core.WritableSignal<number>;
257
+ private _panelEl;
258
+ readonly _searchQuery: _angular_core.WritableSignal<string>;
259
+ readonly _appendToParent: _angular_core.Signal<boolean>;
260
+ readonly _panelFixed: _angular_core.Signal<"fixed" | null>;
261
+ readonly _maxHeight: _angular_core.Signal<string>;
262
+ readonly _selectedLabels: _angular_core.Signal<string[]>;
263
+ readonly _filteredOptions: _angular_core.Signal<DropdownOption<unknown>[]>;
264
+ readonly _allFilteredSelected: _angular_core.Signal<boolean>;
265
+ readonly _triggerText: _angular_core.Signal<string>;
266
+ readonly _inputSizeCls: _angular_core.Signal<"py-1 pl-2 pr-8 text-xs" | "py-3 pl-4 pr-10 text-base" | "py-2 pl-3 pr-10 text-sm">;
267
+ readonly _iconCls: _angular_core.Signal<string>;
268
+ readonly _optionCls: _angular_core.Signal<string>;
269
+ readonly _chipCls: _angular_core.Signal<string>;
270
+ _isSelected(val: unknown): boolean;
271
+ _optVal(option: DropdownOption): string;
272
+ _onTriggerClick(event: Event): void;
273
+ _onPanelClick(event: Event): void;
274
+ _onInput(event: Event): void;
275
+ private _open;
276
+ private _close;
277
+ private _attachToBody;
278
+ private _detachFromBody;
279
+ _toggleOption(option: DropdownOption): void;
280
+ _toggleSelectAll(): void;
281
+ _removeChip(val: string, event: Event): void;
282
+ _clearAll(event: Event): void;
283
+ _onWindowScroll(): void;
284
+ _onDocClick(event: Event): void;
285
+ ngOnDestroy(): void;
286
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MultiSelectComponent, never>;
287
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MultiSelectComponent, "app-multi-select", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "selectAll": { "alias": "selectAll"; "required": false; "isSignal": true; }; "selectAllLabel": { "alias": "selectAllLabel"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
288
+ }
289
+
290
+ declare class PasswordInputComponent {
291
+ readonly value: _angular_core.ModelSignal<string>;
292
+ readonly placeholder: _angular_core.InputSignal<string>;
293
+ readonly size: _angular_core.InputSignal<FieldSize>;
294
+ readonly disabled: _angular_core.InputSignal<boolean>;
295
+ readonly accentColor: _angular_core.InputSignal<string | null>;
296
+ readonly hint: _angular_core.InputSignal<string>;
297
+ readonly errorMessage: _angular_core.InputSignal<string>;
298
+ readonly error: _angular_core.InputSignal<boolean>;
299
+ readonly hideToggle: _angular_core.InputSignal<boolean>;
300
+ readonly width: _angular_core.InputSignal<string>;
301
+ readonly visible: _angular_core.WritableSignal<boolean>;
302
+ readonly _size: _angular_core.Signal<FieldSize>;
303
+ readonly _type: _angular_core.Signal<"text" | "password">;
304
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
305
+ readonly _rawAccent: _angular_core.Signal<string | null>;
306
+ readonly _width: _angular_core.Signal<string | null>;
307
+ readonly _touched: _angular_core.WritableSignal<boolean>;
308
+ readonly _inputSizeCls: _angular_core.Signal<"py-1 pr-8 pl-2 text-xs" | "py-3 pr-11 pl-4 text-base" | "py-2 pr-10 pl-3 text-sm">;
309
+ readonly _toggleCls: _angular_core.Signal<string>;
310
+ toggleVisibility(): void;
311
+ onInput(event: Event): void;
312
+ onBlur(): void;
313
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PasswordInputComponent, never>;
314
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PasswordInputComponent, "app-password-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "hideToggle": { "alias": "hideToggle"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
315
+ }
316
+
317
+ declare class SearchInputComponent {
318
+ readonly value: _angular_core.ModelSignal<string>;
319
+ readonly placeholder: _angular_core.InputSignal<string>;
320
+ readonly size: _angular_core.InputSignal<FieldSize>;
321
+ readonly disabled: _angular_core.InputSignal<boolean>;
322
+ readonly accentColor: _angular_core.InputSignal<string | null>;
323
+ readonly hint: _angular_core.InputSignal<string>;
324
+ readonly errorMessage: _angular_core.InputSignal<string>;
325
+ readonly error: _angular_core.InputSignal<boolean>;
326
+ readonly width: _angular_core.InputSignal<string>;
327
+ readonly _size: _angular_core.Signal<FieldSize>;
328
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
329
+ readonly _rawAccent: _angular_core.Signal<string | null>;
330
+ readonly _width: _angular_core.Signal<string | null>;
331
+ readonly _touched: _angular_core.WritableSignal<boolean>;
332
+ readonly _iconCls: _angular_core.Signal<string>;
333
+ readonly _inputSizeCls: _angular_core.Signal<"py-1 px-8 text-xs" | "py-3 px-11 text-base" | "py-2 pl-10 pr-10 text-sm">;
334
+ onInput(event: Event): void;
335
+ onBlur(): void;
336
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SearchInputComponent, never>;
337
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SearchInputComponent, "app-search-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
338
+ }
339
+
340
+ type SearchSize = 'sm' | 'md' | 'lg';
341
+ interface SearchInputAccessor {
342
+ value: string;
343
+ placeholder: string;
344
+ size: SearchSize;
345
+ disabled: boolean;
346
+ accentColor: string | null;
347
+ hint: string;
348
+ errorMessage: string;
349
+ error: boolean;
350
+ }
351
+ interface SearchInputConfig {
352
+ placeholder?: string;
353
+ size?: SearchSize;
354
+ disabled?: boolean;
355
+ accentColor?: string | null;
356
+ hint?: string;
357
+ errorMessage?: string;
358
+ error?: boolean;
359
+ }
360
+
361
+ declare class TextInputComponent {
362
+ readonly value: _angular_core.ModelSignal<string>;
363
+ readonly placeholder: _angular_core.InputSignal<string>;
364
+ readonly size: _angular_core.InputSignal<FieldSize>;
365
+ readonly disabled: _angular_core.InputSignal<boolean>;
366
+ readonly accentColor: _angular_core.InputSignal<string | null>;
367
+ readonly hint: _angular_core.InputSignal<string>;
368
+ readonly errorMessage: _angular_core.InputSignal<string>;
369
+ readonly error: _angular_core.InputSignal<boolean>;
370
+ readonly width: _angular_core.InputSignal<string>;
371
+ readonly _size: _angular_core.Signal<FieldSize>;
372
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
373
+ readonly _rawAccent: _angular_core.Signal<string | null>;
374
+ readonly _width: _angular_core.Signal<string | null>;
375
+ readonly _touched: _angular_core.WritableSignal<boolean>;
376
+ readonly _inputSizeCls: _angular_core.Signal<"py-1 px-2 text-xs" | "py-3 px-4 text-base" | "py-2 px-3 text-sm">;
377
+ onInput(event: Event): void;
378
+ onBlur(): void;
379
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TextInputComponent, never>;
380
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TextInputComponent, "app-text-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
381
+ }
382
+
383
+ declare class ToggleComponent {
384
+ readonly checked: _angular_core.ModelSignal<boolean>;
385
+ readonly label: _angular_core.InputSignal<string>;
386
+ readonly size: _angular_core.InputSignal<FieldSize>;
387
+ readonly disabled: _angular_core.InputSignal<boolean>;
388
+ readonly accentColor: _angular_core.InputSignal<string | null>;
389
+ readonly hint: _angular_core.InputSignal<string>;
390
+ readonly errorMessage: _angular_core.InputSignal<string>;
391
+ readonly error: _angular_core.InputSignal<boolean>;
392
+ readonly width: _angular_core.InputSignal<string>;
393
+ readonly _size: _angular_core.Signal<FieldSize>;
394
+ readonly _accentKey: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info" | null>;
395
+ readonly _rawAccent: _angular_core.Signal<string | null>;
396
+ readonly _width: _angular_core.Signal<string | null>;
397
+ toggle(): void;
398
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToggleComponent, never>;
399
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToggleComponent, "app-toggle", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, never, true, never>;
400
+ }
401
+
402
+ type BadgeVariant = 'filled' | 'outlined' | 'subtle';
403
+ declare class BadgeComponent {
404
+ readonly accentColor: _angular_core.InputSignal<string>;
405
+ readonly variant: _angular_core.InputSignal<BadgeVariant>;
406
+ readonly size: _angular_core.InputSignal<FieldSize>;
407
+ readonly dot: _angular_core.InputSignal<boolean>;
408
+ readonly _sizeCls: _angular_core.Signal<string>;
409
+ private readonly _fallback;
410
+ readonly _resolvedColor: _angular_core.Signal<string>;
411
+ readonly _subtleBg: _angular_core.Signal<string>;
412
+ readonly _style: _angular_core.Signal<{
413
+ backgroundColor: string;
414
+ color: string;
415
+ border?: undefined;
416
+ } | {
417
+ backgroundColor: string;
418
+ color: string;
419
+ border: string;
420
+ }>;
421
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BadgeComponent, never>;
422
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BadgeComponent, "app-badge", never, { "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "dot": { "alias": "dot"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
423
+ }
424
+
425
+ interface BannerItem {
426
+ src: string;
427
+ alt?: string;
428
+ title?: string;
429
+ subtitle?: string;
430
+ description?: string;
431
+ ctaLabel?: string;
432
+ ctaLink?: string;
433
+ }
434
+ declare class BannerSliderComponent {
435
+ readonly items: _angular_core.InputSignal<BannerItem[]>;
436
+ readonly height: _angular_core.InputSignal<string>;
437
+ readonly autoPlay: _angular_core.InputSignal<boolean>;
438
+ readonly interval: _angular_core.InputSignal<number>;
439
+ readonly showArrows: _angular_core.InputSignal<boolean>;
440
+ readonly showDots: _angular_core.InputSignal<boolean>;
441
+ readonly overlayMode: _angular_core.InputSignal<"left" | "center" | "right">;
442
+ readonly ctaClick: _angular_core.OutputEmitterRef<BannerItem>;
443
+ readonly _height: _angular_core.Signal<string>;
444
+ readonly _index: _angular_core.WritableSignal<number>;
445
+ readonly _overlayCls: _angular_core.Signal<string>;
446
+ private _timer;
447
+ constructor();
448
+ readonly _transform: _angular_core.Signal<string>;
449
+ readonly _current: _angular_core.Signal<BannerItem>;
450
+ _go(index: number): void;
451
+ _prev(): void;
452
+ _next(): void;
453
+ _onCtaClick(): void;
454
+ private _startTimer;
455
+ private _stopTimer;
456
+ private _xStart;
457
+ _onTouchStart(event: TouchEvent): void;
458
+ _onTouchEnd(event: TouchEvent): void;
459
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BannerSliderComponent, never>;
460
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BannerSliderComponent, "app-banner-slider", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "autoPlay": { "alias": "autoPlay"; "required": false; "isSignal": true; }; "interval": { "alias": "interval"; "required": false; "isSignal": true; }; "showArrows": { "alias": "showArrows"; "required": false; "isSignal": true; }; "showDots": { "alias": "showDots"; "required": false; "isSignal": true; }; "overlayMode": { "alias": "overlayMode"; "required": false; "isSignal": true; }; }, { "ctaClick": "ctaClick"; }, never, never, true, never>;
461
+ }
462
+
463
+ interface CarouselItem {
464
+ src: string;
465
+ alt?: string;
466
+ title?: string;
467
+ description?: string;
468
+ }
469
+ declare class CarouselComponent {
470
+ readonly items: _angular_core.InputSignal<CarouselItem[]>;
471
+ readonly height: _angular_core.InputSignal<string>;
472
+ readonly autoPlay: _angular_core.InputSignal<boolean>;
473
+ readonly interval: _angular_core.InputSignal<number>;
474
+ readonly showArrows: _angular_core.InputSignal<boolean>;
475
+ readonly showDots: _angular_core.InputSignal<boolean>;
476
+ readonly _height: _angular_core.Signal<string>;
477
+ readonly _index: _angular_core.WritableSignal<number>;
478
+ private _timer;
479
+ constructor();
480
+ readonly _current: _angular_core.Signal<CarouselItem>;
481
+ readonly _transform: _angular_core.Signal<string>;
482
+ _go(index: number): void;
483
+ _prev(): void;
484
+ _next(): void;
485
+ private _startTimer;
486
+ private _stopTimer;
487
+ private _xStart;
488
+ _onTouchStart(event: TouchEvent): void;
489
+ _onTouchEnd(event: TouchEvent): void;
490
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CarouselComponent, never>;
491
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CarouselComponent, "app-carousel", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "autoPlay": { "alias": "autoPlay"; "required": false; "isSignal": true; }; "interval": { "alias": "interval"; "required": false; "isSignal": true; }; "showArrows": { "alias": "showArrows"; "required": false; "isSignal": true; }; "showDots": { "alias": "showDots"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
492
+ }
493
+
494
+ declare class EmptyStateComponent {
495
+ readonly icon: _angular_core.InputSignal<string>;
496
+ readonly title: _angular_core.InputSignal<string>;
497
+ readonly message: _angular_core.InputSignal<string>;
498
+ readonly width: _angular_core.InputSignal<string>;
499
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EmptyStateComponent, never>;
500
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EmptyStateComponent, "app-empty-state", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
501
+ }
502
+
503
+ interface ImageFile {
504
+ file: File;
505
+ url: string;
506
+ }
507
+ declare class ImageUploadComponent {
508
+ readonly images: _angular_core.ModelSignal<ImageFile[]>;
509
+ readonly multiple: _angular_core.InputSignal<boolean>;
510
+ readonly maxFiles: _angular_core.InputSignal<number>;
511
+ readonly maxSize: _angular_core.InputSignal<number>;
512
+ readonly disabled: _angular_core.InputSignal<boolean>;
513
+ readonly size: _angular_core.InputSignal<FieldSize>;
514
+ readonly placeholder: _angular_core.InputSignal<string>;
515
+ readonly errorMessage: _angular_core.InputSignal<string>;
516
+ readonly error: _angular_core.InputSignal<boolean>;
517
+ readonly _size: _angular_core.Signal<FieldSize>;
518
+ readonly _isDragOver: _angular_core.WritableSignal<boolean>;
519
+ _onDragOver(event: DragEvent): void;
520
+ _onDragLeave(event: DragEvent): void;
521
+ _onDrop(event: DragEvent): void;
522
+ _onFileSelected(event: Event): void;
523
+ _removeFile(index: number): void;
524
+ private _addFiles;
525
+ _formatSize(bytes: number): string;
526
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ImageUploadComponent, never>;
527
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ImageUploadComponent, "app-image-upload", never, { "images": { "alias": "images"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "maxSize": { "alias": "maxSize"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; }, { "images": "imagesChange"; }, never, never, true, never>;
528
+ }
529
+
530
+ type SkeletonVariant = 'text' | 'circle' | 'rect';
531
+ declare class SkeletonComponent {
532
+ readonly variant: _angular_core.InputSignal<SkeletonVariant>;
533
+ readonly width: _angular_core.InputSignal<string>;
534
+ readonly height: _angular_core.InputSignal<string>;
535
+ readonly count: _angular_core.InputSignal<number>;
536
+ readonly borderRadius: _angular_core.InputSignal<string>;
537
+ readonly accentColor: _angular_core.InputSignal<string>;
538
+ readonly _items: _angular_core.Signal<SkeletonVariant[]>;
539
+ readonly _baseWidth: _angular_core.Signal<string>;
540
+ readonly _baseHeight: _angular_core.Signal<string>;
541
+ readonly _radius: _angular_core.Signal<string>;
542
+ readonly _bg: _angular_core.Signal<string>;
543
+ _lineWidth(index: number): string;
544
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SkeletonComponent, never>;
545
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SkeletonComponent, "app-skeleton", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "count": { "alias": "count"; "required": false; "isSignal": true; }; "borderRadius": { "alias": "borderRadius"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
546
+ }
547
+
548
+ type SkeletonShape = 'bar' | 'circle' | 'action';
549
+ interface TableSkeletonColumn {
550
+ shape?: SkeletonShape;
551
+ width?: string;
552
+ }
553
+ declare class TableSkeletonComponent {
554
+ readonly rows: _angular_core.InputSignal<number>;
555
+ readonly columns: _angular_core.InputSignal<number | TableSkeletonColumn[]>;
556
+ readonly _rowArr: _angular_core.Signal<unknown[]>;
557
+ readonly _cols: _angular_core.Signal<TableSkeletonColumn[]>;
558
+ readonly _colWidth: _angular_core.Signal<string[]>;
559
+ _shapeClass(shape?: SkeletonShape): string;
560
+ _shapeSize(shape?: SkeletonShape): {
561
+ width: string;
562
+ height: string;
563
+ };
564
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableSkeletonComponent, never>;
565
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableSkeletonComponent, "app-table-skeleton", never, { "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
566
+ }
567
+
568
+ interface ActionDef {
569
+ icon?: string;
570
+ label?: string;
571
+ accentColor?: string;
572
+ visible?: (row: Record<string, unknown>) => boolean;
573
+ disabled?: (row: Record<string, unknown>) => boolean;
574
+ click: (row: Record<string, unknown>) => void;
575
+ }
576
+ interface ColumnDef {
577
+ key: string;
578
+ header: string;
579
+ sortable?: boolean;
580
+ width?: string;
581
+ align?: 'left' | 'center' | 'right';
582
+ cell?: (row: Record<string, unknown>) => string;
583
+ rowSpan?: (row: Record<string, unknown>, index: number, rows: Record<string, unknown>[]) => number;
584
+ actions?: ActionDef[];
585
+ filterable?: boolean;
586
+ filterOptions?: {
587
+ label: string;
588
+ value: string;
589
+ }[];
590
+ footer?: (rows: Record<string, unknown>[]) => string;
591
+ truncate?: boolean;
592
+ maxChars?: number;
593
+ }
594
+ interface SortChange {
595
+ key: string;
596
+ direction: 'asc' | 'desc' | '';
597
+ }
598
+ declare class TableComponent {
599
+ readonly columns: _angular_core.InputSignal<ColumnDef[]>;
600
+ readonly rows: _angular_core.InputSignal<Record<string, unknown>[]>;
601
+ readonly striped: _angular_core.InputSignal<boolean>;
602
+ readonly hoverable: _angular_core.InputSignal<boolean>;
603
+ readonly sortable: _angular_core.InputSignal<boolean>;
604
+ readonly emptyMessage: _angular_core.InputSignal<string>;
605
+ readonly width: _angular_core.InputSignal<string>;
606
+ readonly loading: _angular_core.InputSignal<boolean>;
607
+ readonly searchable: _angular_core.InputSignal<boolean>;
608
+ readonly filterable: _angular_core.InputSignal<boolean>;
609
+ readonly skeletonRows: _angular_core.InputSignal<number>;
610
+ readonly resizable: _angular_core.InputSignal<boolean>;
611
+ readonly pageable: _angular_core.InputSignal<boolean>;
612
+ readonly pageSize: _angular_core.InputSignal<number>;
613
+ readonly pageSizeOptions: _angular_core.InputSignal<number[]>;
614
+ readonly selectable: _angular_core.InputSignal<boolean>;
615
+ readonly selectionMode: _angular_core.InputSignal<"single" | "multiple">;
616
+ readonly selectionKey: _angular_core.InputSignal<string>;
617
+ readonly stickyHeader: _angular_core.InputSignal<boolean>;
618
+ readonly exportable: _angular_core.InputSignal<boolean>;
619
+ readonly columnToggle: _angular_core.InputSignal<boolean>;
620
+ readonly expandable: _angular_core.InputSignal<boolean>;
621
+ readonly sortChange: _angular_core.OutputEmitterRef<SortChange>;
622
+ readonly pageChange: _angular_core.OutputEmitterRef<number>;
623
+ readonly selectedRows: _angular_core.OutputEmitterRef<Record<string, unknown>[]>;
624
+ rowDetail?: TemplateRef<{
625
+ $implicit: Record<string, unknown>;
626
+ }>;
627
+ private readonly _sortKey;
628
+ private readonly _sortDir;
629
+ private readonly _searchQuery;
630
+ private readonly _filters;
631
+ protected readonly _page: _angular_core.WritableSignal<number>;
632
+ protected readonly _pageSize: _angular_core.WritableSignal<number>;
633
+ private readonly _columnWidths;
634
+ private readonly _hiddenColumns;
635
+ protected readonly _selectedKeys: _angular_core.WritableSignal<Set<string | number>>;
636
+ protected readonly _expandedKeys: _angular_core.WritableSignal<Set<number>>;
637
+ protected readonly _pageSizeOptions: _angular_core.Signal<{
638
+ label: string;
639
+ value: string;
640
+ }[]>;
641
+ protected readonly _columnToggleOpen: _angular_core.WritableSignal<boolean>;
642
+ protected readonly _exportOpen: _angular_core.WritableSignal<boolean>;
643
+ private _resizing;
644
+ constructor();
645
+ readonly _displayColumns: _angular_core.Signal<ColumnDef[]>;
646
+ readonly _colCount: _angular_core.Signal<number>;
647
+ readonly _filteredRows: _angular_core.Signal<Record<string, unknown>[]>;
648
+ readonly _displayRows: _angular_core.Signal<Record<string, unknown>[]>;
649
+ readonly _totalPages: _angular_core.Signal<number>;
650
+ readonly _pageInfo: _angular_core.Signal<{
651
+ from: number;
652
+ to: number;
653
+ total: number;
654
+ }>;
655
+ readonly _visiblePages: _angular_core.Signal<number[]>;
656
+ readonly _rowMeta: _angular_core.Signal<{
657
+ visible: boolean;
658
+ rowspan: number;
659
+ }[][]>;
660
+ readonly _skeletonCols: _angular_core.Signal<TableSkeletonColumn[]>;
661
+ readonly _filterCols: _angular_core.Signal<ColumnDef[]>;
662
+ readonly _footerCols: _angular_core.Signal<ColumnDef[]>;
663
+ readonly _footerText: _angular_core.Signal<string>;
664
+ _sortIcon(key: string): string;
665
+ _toggleSort(key: string): void;
666
+ _onSearch(value: string): void;
667
+ _setFilter(key: string, value: string | null): void;
668
+ _colWidth(col: ColumnDef): string;
669
+ _onResizeStart(event: MouseEvent, key: string): void;
670
+ _onDocMouseMove(event: MouseEvent): void;
671
+ _onDocMouseUp(): void;
672
+ _onDocClick(event: MouseEvent): void;
673
+ _goToPage(page: number): void;
674
+ _onPageSizeChange(val: string | null): void;
675
+ _isSelected(row: Record<string, unknown>): boolean;
676
+ _toggleSelect(row: Record<string, unknown>): void;
677
+ _isAllSelected(): boolean;
678
+ _toggleSelectAll(): void;
679
+ private _emitSelection;
680
+ _isColumnVisible(k: string): boolean;
681
+ _toggleColumn(k: string): void;
682
+ _isExpanded(index: number): boolean;
683
+ _toggleExpand(index: number): void;
684
+ _cellText(row: Record<string, unknown>, col: ColumnDef): string;
685
+ _cellLabel(row: Record<string, unknown>, col: ColumnDef): string;
686
+ _exportExcel(): Promise<void>;
687
+ _exportPdf(): Promise<void>;
688
+ _trackByIndex(index: number): number;
689
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableComponent, never>;
690
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableComponent, "app-table", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "striped": { "alias": "striped"; "required": false; "isSignal": true; }; "hoverable": { "alias": "hoverable"; "required": false; "isSignal": true; }; "sortable": { "alias": "sortable"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "filterable": { "alias": "filterable"; "required": false; "isSignal": true; }; "skeletonRows": { "alias": "skeletonRows"; "required": false; "isSignal": true; }; "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "pageable": { "alias": "pageable"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "selectionKey": { "alias": "selectionKey"; "required": false; "isSignal": true; }; "stickyHeader": { "alias": "stickyHeader"; "required": false; "isSignal": true; }; "exportable": { "alias": "exportable"; "required": false; "isSignal": true; }; "columnToggle": { "alias": "columnToggle"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; }, { "sortChange": "sortChange"; "pageChange": "pageChange"; "selectedRows": "selectedRows"; }, ["rowDetail"], never, true, never>;
691
+ }
692
+
693
+ declare class TooltipComponent {
694
+ private _el;
695
+ readonly text: _angular_core.InputSignal<string>;
696
+ readonly position: _angular_core.InputSignal<"left" | "right" | "top" | "bottom">;
697
+ readonly disabled: _angular_core.InputSignal<boolean>;
698
+ readonly alwaysShow: _angular_core.InputSignal<boolean>;
699
+ readonly _visible: _angular_core.WritableSignal<boolean>;
700
+ readonly _tipText: _angular_core.Signal<any>;
701
+ _onMouseEnter(): void;
702
+ _onMouseLeave(): void;
703
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TooltipComponent, never>;
704
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<TooltipComponent, "app-tooltip", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "alwaysShow": { "alias": "alwaysShow"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
705
+ }
706
+
707
+ type AlertType = 'success' | 'warning' | 'danger' | 'info';
708
+ declare class AlertComponent {
709
+ readonly type: _angular_core.InputSignal<AlertType>;
710
+ readonly title: _angular_core.InputSignal<string>;
711
+ readonly dismissible: _angular_core.InputSignal<boolean>;
712
+ readonly showIcon: _angular_core.InputSignal<boolean>;
713
+ readonly width: _angular_core.InputSignal<string>;
714
+ readonly dismiss: _angular_core.OutputEmitterRef<void>;
715
+ readonly _visible: _angular_core.WritableSignal<boolean>;
716
+ readonly _isLeaving: _angular_core.WritableSignal<boolean>;
717
+ readonly _show: _angular_core.Signal<boolean>;
718
+ readonly _icon: _angular_core.Signal<string>;
719
+ private readonly _fallback;
720
+ readonly _bg: _angular_core.Signal<string>;
721
+ readonly _border: _angular_core.Signal<string>;
722
+ _dismiss(): void;
723
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AlertComponent, never>;
724
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AlertComponent, "app-alert", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; "showIcon": { "alias": "showIcon"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, { "dismiss": "dismiss"; }, never, ["*"], true, never>;
725
+ }
726
+
727
+ type SpinnerVariant = 'circle' | 'dual-ring' | 'dots' | 'pulse' | 'bars';
728
+ declare class SpinnerComponent {
729
+ readonly variant: _angular_core.InputSignal<SpinnerVariant>;
730
+ readonly size: _angular_core.InputSignal<FieldSize>;
731
+ readonly accentColor: _angular_core.InputSignal<string>;
732
+ readonly overlay: _angular_core.InputSignal<boolean>;
733
+ readonly text: _angular_core.InputSignal<string>;
734
+ readonly imageUrl: _angular_core.InputSignal<string>;
735
+ private readonly _px;
736
+ readonly _dims: _angular_core.Signal<{
737
+ spinner: number;
738
+ border: number;
739
+ dualOuter: number;
740
+ dualInner: number;
741
+ dualCenter: number;
742
+ dot: number;
743
+ pulse: number;
744
+ barW: number;
745
+ barH: number;
746
+ }>;
747
+ readonly _color: _angular_core.Signal<string>;
748
+ readonly _circleStyle: _angular_core.Signal<{
749
+ width: string;
750
+ height: string;
751
+ borderWidth: string;
752
+ borderStyle: "solid";
753
+ borderColor: string;
754
+ borderTopColor: string;
755
+ }>;
756
+ readonly _dualOuterStyle: _angular_core.Signal<{
757
+ width: string;
758
+ height: string;
759
+ borderWidth: string;
760
+ borderStyle: "solid";
761
+ borderColor: string;
762
+ borderTopColor: string;
763
+ }>;
764
+ readonly _dualInnerStyle: _angular_core.Signal<{
765
+ width: string;
766
+ height: string;
767
+ borderWidth: string;
768
+ borderStyle: "solid";
769
+ borderColor: string;
770
+ borderTopColor: string;
771
+ }>;
772
+ readonly _imageStyle: _angular_core.Signal<{
773
+ width: string;
774
+ height: string;
775
+ }>;
776
+ readonly _dotStyle: _angular_core.Signal<{
777
+ width: string;
778
+ height: string;
779
+ backgroundColor: string;
780
+ }>;
781
+ readonly _pulseStyle: _angular_core.Signal<{
782
+ width: string;
783
+ height: string;
784
+ backgroundColor: string;
785
+ }>;
786
+ readonly _barStyle: _angular_core.Signal<{
787
+ width: string;
788
+ height: string;
789
+ backgroundColor: string;
790
+ }>;
791
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SpinnerComponent, never>;
792
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SpinnerComponent, "app-spinner", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "accentColor": { "alias": "accentColor"; "required": false; "isSignal": true; }; "overlay": { "alias": "overlay"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "imageUrl": { "alias": "imageUrl"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
793
+ }
794
+
795
+ type ToastType = 'success' | 'error' | 'warning' | 'info';
796
+ interface ToastMessage {
797
+ id: number;
798
+ type: ToastType;
799
+ message: string;
800
+ title?: string;
801
+ duration?: number;
802
+ }
803
+ declare class ToastService {
804
+ private readonly _toasts;
805
+ private _counter;
806
+ readonly toasts: _angular_core.Signal<ToastMessage[]>;
807
+ show(type: ToastType, message: string, config?: {
808
+ title?: string;
809
+ duration?: number;
810
+ }): void;
811
+ success(message: string, config?: {
812
+ title?: string;
813
+ duration?: number;
814
+ }): void;
815
+ error(message: string, config?: {
816
+ title?: string;
817
+ duration?: number;
818
+ }): void;
819
+ warning(message: string, config?: {
820
+ title?: string;
821
+ duration?: number;
822
+ }): void;
823
+ info(message: string, config?: {
824
+ title?: string;
825
+ duration?: number;
826
+ }): void;
827
+ remove(id: number): void;
828
+ clear(): void;
829
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToastService, never>;
830
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ToastService>;
831
+ }
832
+
833
+ declare class ToastComponent {
834
+ readonly position: _angular_core.InputSignal<"top-right" | "top-left" | "bottom-right" | "bottom-left">;
835
+ readonly maxVisible: _angular_core.InputSignal<number>;
836
+ private readonly _toastService;
837
+ readonly _toasts: _angular_core.Signal<_abdelfattahqandil21_ryzen_ui.ToastMessage[]>;
838
+ readonly _positionCls: _angular_core.Signal<string>;
839
+ private readonly _fallback;
840
+ private readonly _iconMap;
841
+ private _themeKey;
842
+ _getBg(type: ToastType): string;
843
+ _getIcon(type: ToastType): string;
844
+ _getBorder(type: ToastType): string;
845
+ _remove(id: number): void;
846
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToastComponent, never>;
847
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToastComponent, "app-toast", never, { "position": { "alias": "position"; "required": false; "isSignal": true; }; "maxVisible": { "alias": "maxVisible"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
848
+ }
849
+
850
+ declare class AccordionPanelComponent {
851
+ private _accordion;
852
+ readonly title: _angular_core.InputSignal<string>;
853
+ readonly disabled: _angular_core.InputSignal<boolean>;
854
+ readonly expanded: _angular_core.ModelSignal<boolean>;
855
+ readonly _isOpen: _angular_core.WritableSignal<boolean>;
856
+ readonly _isClosing: _angular_core.WritableSignal<boolean>;
857
+ readonly _visible: _angular_core.Signal<boolean>;
858
+ _open(): void;
859
+ _close(): void;
860
+ _toggle(): void;
861
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AccordionPanelComponent, never>;
862
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AccordionPanelComponent, "app-accordion-panel", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; }, never, ["*"], true, never>;
863
+ }
864
+
865
+ declare class AccordionComponent {
866
+ readonly multi: _angular_core.InputSignal<boolean>;
867
+ readonly panels: _angular_core.Signal<readonly AccordionPanelComponent[]>;
868
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AccordionComponent, never>;
869
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AccordionComponent, "app-accordion", never, { "multi": { "alias": "multi"; "required": false; "isSignal": true; }; }, {}, ["panels"], ["*"], true, never>;
870
+ }
871
+
872
+ interface NavItem {
873
+ id: string;
874
+ label: string;
875
+ icon?: string;
876
+ route?: string;
877
+ children?: NavItem[];
878
+ }
879
+
880
+ declare class NavComponent {
881
+ private _router;
882
+ private _routerSub?;
883
+ readonly items: _angular_core.InputSignal<NavItem[]>;
884
+ readonly brandText: _angular_core.InputSignal<string>;
885
+ readonly brandIcon: _angular_core.InputSignal<string>;
886
+ readonly fixed: _angular_core.InputSignal<boolean>;
887
+ readonly logout: _angular_core.OutputEmitterRef<void>;
888
+ readonly _mobileOpen: _angular_core.WritableSignal<boolean>;
889
+ readonly _openDropdown: _angular_core.WritableSignal<string | null>;
890
+ readonly _currentUrl: _angular_core.WritableSignal<string>;
891
+ constructor();
892
+ _isActive(segment: string): boolean;
893
+ _toggleMobile(): void;
894
+ _toggleDropdown(name: string): void;
895
+ _navigate(route: string): void;
896
+ _onDocClick(): void;
897
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavComponent, never>;
898
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NavComponent, "app-nav", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "brandText": { "alias": "brandText"; "required": false; "isSignal": true; }; "brandIcon": { "alias": "brandIcon"; "required": false; "isSignal": true; }; "fixed": { "alias": "fixed"; "required": false; "isSignal": true; }; }, { "logout": "logout"; }, never, never, true, never>;
899
+ }
900
+
901
+ interface SidebarItem {
902
+ id: string;
903
+ label: string;
904
+ icon?: string;
905
+ route?: string;
906
+ children?: SidebarItem[];
907
+ }
908
+
909
+ declare class SidebarComponent {
910
+ private _router;
911
+ private _destroyRef;
912
+ readonly isOpen: _angular_core.InputSignal<boolean>;
913
+ readonly isCollapsed: _angular_core.InputSignal<boolean>;
914
+ readonly items: _angular_core.InputSignal<SidebarItem[]>;
915
+ readonly title: _angular_core.InputSignal<string>;
916
+ readonly width: _angular_core.InputSignal<string>;
917
+ readonly activeId: _angular_core.InputSignal<string | null>;
918
+ readonly toggleOpen: _angular_core.OutputEmitterRef<void>;
919
+ readonly toggleCollapse: _angular_core.OutputEmitterRef<void>;
920
+ readonly itemClick: _angular_core.OutputEmitterRef<SidebarItem>;
921
+ readonly logout: _angular_core.OutputEmitterRef<void>;
922
+ readonly _expanded: _angular_core.WritableSignal<Set<string>>;
923
+ readonly _currentUrl: _angular_core.WritableSignal<string>;
924
+ private _activeId;
925
+ readonly _asideStyle: _angular_core.Signal<{
926
+ width: string;
927
+ 'background-color': string;
928
+ }>;
929
+ constructor();
930
+ _isActive(id: string): boolean;
931
+ _isExpanded(id: string): boolean;
932
+ _onItemClick(item: SidebarItem): void;
933
+ _onBackdrop(): void;
934
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarComponent, never>;
935
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarComponent, "app-sidebar", never, { "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "activeId": { "alias": "activeId"; "required": false; "isSignal": true; }; }, { "toggleOpen": "toggleOpen"; "toggleCollapse": "toggleCollapse"; "itemClick": "itemClick"; "logout": "logout"; }, never, never, true, never>;
936
+ }
937
+
938
+ interface ConfirmDialogConfig {
939
+ title?: string;
940
+ confirmText?: string;
941
+ cancelText?: string;
942
+ icon?: string;
943
+ confirmAccent?: ThemeColor | string;
944
+ closeOnBackdrop?: boolean;
945
+ closeOnEscape?: boolean;
946
+ }
947
+ declare class ConfirmDialogComponent implements OnDestroy {
948
+ private _closeTimer;
949
+ readonly open: _angular_core.ModelSignal<boolean>;
950
+ readonly message: _angular_core.InputSignal<string>;
951
+ readonly config: _angular_core.InputSignal<ConfirmDialogConfig>;
952
+ readonly confirm: _angular_core.OutputEmitterRef<void>;
953
+ readonly cancel: _angular_core.OutputEmitterRef<void>;
954
+ readonly _title: _angular_core.Signal<string>;
955
+ readonly _confirmText: _angular_core.Signal<string>;
956
+ readonly _cancelText: _angular_core.Signal<string>;
957
+ readonly _icon: _angular_core.Signal<string>;
958
+ readonly _confirmAccent: _angular_core.Signal<"primary" | "secondary" | "accent" | "success" | "warning" | "danger" | "info">;
959
+ readonly _closeOnBackdrop: _angular_core.Signal<boolean>;
960
+ readonly _closeOnEscape: _angular_core.Signal<boolean>;
961
+ readonly _confirmBg: _angular_core.Signal<string>;
962
+ readonly _isOpen: _angular_core.WritableSignal<boolean>;
963
+ readonly _isClosing: _angular_core.WritableSignal<boolean>;
964
+ readonly _visible: _angular_core.Signal<boolean>;
965
+ constructor();
966
+ private _startClose;
967
+ ngOnDestroy(): void;
968
+ _onConfirm(): void;
969
+ _onCancel(): void;
970
+ _onBackdropClick(): void;
971
+ _onEscape(event: Event): void;
972
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConfirmDialogComponent, never>;
973
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfirmDialogComponent, "app-confirm-dialog", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "confirm": "confirm"; "cancel": "cancel"; }, never, never, true, never>;
974
+ }
975
+
976
+ interface ModalConfig {
977
+ closeOnBackdrop?: boolean;
978
+ closeOnEscape?: boolean;
979
+ showCloseButton?: boolean;
980
+ maxWidth?: string;
981
+ }
982
+ declare class ModalComponent implements OnDestroy {
983
+ private _closeTimer;
984
+ readonly open: _angular_core.ModelSignal<boolean>;
985
+ readonly title: _angular_core.InputSignal<string>;
986
+ readonly width: _angular_core.InputSignal<string>;
987
+ readonly config: _angular_core.InputSignal<ModalConfig>;
988
+ readonly closed: _angular_core.OutputEmitterRef<void>;
989
+ readonly _closeOnBackdrop: _angular_core.Signal<boolean>;
990
+ readonly _closeOnEscape: _angular_core.Signal<boolean>;
991
+ readonly _showClose: _angular_core.Signal<boolean>;
992
+ readonly _maxWidth: _angular_core.Signal<string>;
993
+ readonly _width: _angular_core.Signal<string>;
994
+ readonly _isOpen: _angular_core.WritableSignal<boolean>;
995
+ readonly _isClosing: _angular_core.WritableSignal<boolean>;
996
+ readonly _visible: _angular_core.Signal<boolean>;
997
+ constructor();
998
+ private _startClose;
999
+ close(): void;
1000
+ ngOnDestroy(): void;
1001
+ _onBackdropClick(_event: Event): void;
1002
+ _onEscape(event: Event): void;
1003
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModalComponent, never>;
1004
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ModalComponent, "app-modal", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "closed": "closed"; }, never, ["*", "[modal-footer]"], true, never>;
1005
+ }
1006
+
1007
+ export { AccordionComponent, AccordionPanelComponent, AlertComponent, BadgeComponent, BannerSliderComponent, CarouselComponent, CheckboxComponent, ConfirmDialogComponent, DatePickerComponent, DropDownComponent, EmptyStateComponent, FileUploadComponent, ImageUploadComponent, ModalComponent, MultiSelectComponent, NavComponent, PasswordInputComponent, SearchInputComponent, SidebarComponent, SkeletonComponent, SpinnerComponent, THEME_COLORS, TableComponent, TableSkeletonComponent, TextInputComponent, ToastComponent, ToastService, ToggleComponent, TooltipComponent, isThemeColor };
1008
+ export type { ActionDef, AlertType, BadgeVariant, BannerItem, CalendarDay, CarouselItem, ColumnDef, ConfirmDialogConfig, DatePickerConfig, DropdownConfig, DropdownOption, FieldSize, ImageFile, ModalConfig, MultiSelectConfig, NavItem, SearchInputAccessor, SearchInputConfig, SearchSize, SidebarItem, SkeletonShape, SkeletonVariant, SortChange, SpinnerVariant, TableSkeletonColumn, ThemeColor, ToastMessage, ToastType, ViewMode };