@ngneers/controls 0.0.1-next.0

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.
Files changed (186) hide show
  1. package/fesm2022/ngneers-controls-accordion.mjs +234 -0
  2. package/fesm2022/ngneers-controls-accordion.mjs.map +1 -0
  3. package/fesm2022/ngneers-controls-api-ng.mjs +959 -0
  4. package/fesm2022/ngneers-controls-api-ng.mjs.map +1 -0
  5. package/fesm2022/ngneers-controls-api-resize.mjs +712 -0
  6. package/fesm2022/ngneers-controls-api-resize.mjs.map +1 -0
  7. package/fesm2022/ngneers-controls-api.mjs +347 -0
  8. package/fesm2022/ngneers-controls-api.mjs.map +1 -0
  9. package/fesm2022/ngneers-controls-avatar.mjs +77 -0
  10. package/fesm2022/ngneers-controls-avatar.mjs.map +1 -0
  11. package/fesm2022/ngneers-controls-base.mjs +620 -0
  12. package/fesm2022/ngneers-controls-base.mjs.map +1 -0
  13. package/fesm2022/ngneers-controls-breadcrumb.mjs +100 -0
  14. package/fesm2022/ngneers-controls-breadcrumb.mjs.map +1 -0
  15. package/fesm2022/ngneers-controls-button-group.mjs +110 -0
  16. package/fesm2022/ngneers-controls-button-group.mjs.map +1 -0
  17. package/fesm2022/ngneers-controls-button.mjs +83 -0
  18. package/fesm2022/ngneers-controls-button.mjs.map +1 -0
  19. package/fesm2022/ngneers-controls-calendar-time-CJT5AFlA.mjs +74 -0
  20. package/fesm2022/ngneers-controls-calendar-time-CJT5AFlA.mjs.map +1 -0
  21. package/fesm2022/ngneers-controls-calendar.mjs +801 -0
  22. package/fesm2022/ngneers-controls-calendar.mjs.map +1 -0
  23. package/fesm2022/ngneers-controls-checkbox.mjs +63 -0
  24. package/fesm2022/ngneers-controls-checkbox.mjs.map +1 -0
  25. package/fesm2022/ngneers-controls-chip.mjs +55 -0
  26. package/fesm2022/ngneers-controls-chip.mjs.map +1 -0
  27. package/fesm2022/ngneers-controls-default-icons.mjs +82 -0
  28. package/fesm2022/ngneers-controls-default-icons.mjs.map +1 -0
  29. package/fesm2022/ngneers-controls-defer.mjs +72 -0
  30. package/fesm2022/ngneers-controls-defer.mjs.map +1 -0
  31. package/fesm2022/ngneers-controls-dialog.mjs +407 -0
  32. package/fesm2022/ngneers-controls-dialog.mjs.map +1 -0
  33. package/fesm2022/ngneers-controls-directives.mjs +498 -0
  34. package/fesm2022/ngneers-controls-directives.mjs.map +1 -0
  35. package/fesm2022/ngneers-controls-drawer.mjs +271 -0
  36. package/fesm2022/ngneers-controls-drawer.mjs.map +1 -0
  37. package/fesm2022/ngneers-controls-edit-inplace.mjs +127 -0
  38. package/fesm2022/ngneers-controls-edit-inplace.mjs.map +1 -0
  39. package/fesm2022/ngneers-controls-errors.mjs +329 -0
  40. package/fesm2022/ngneers-controls-errors.mjs.map +1 -0
  41. package/fesm2022/ngneers-controls-filter.mjs +708 -0
  42. package/fesm2022/ngneers-controls-filter.mjs.map +1 -0
  43. package/fesm2022/ngneers-controls-hint.mjs +153 -0
  44. package/fesm2022/ngneers-controls-hint.mjs.map +1 -0
  45. package/fesm2022/ngneers-controls-i18n-translations-de.mjs +170 -0
  46. package/fesm2022/ngneers-controls-i18n-translations-de.mjs.map +1 -0
  47. package/fesm2022/ngneers-controls-i18n-translations-en.mjs +170 -0
  48. package/fesm2022/ngneers-controls-i18n-translations-en.mjs.map +1 -0
  49. package/fesm2022/ngneers-controls-i18n.mjs +57 -0
  50. package/fesm2022/ngneers-controls-i18n.mjs.map +1 -0
  51. package/fesm2022/ngneers-controls-icon.mjs +195 -0
  52. package/fesm2022/ngneers-controls-icon.mjs.map +1 -0
  53. package/fesm2022/ngneers-controls-inplace.mjs +150 -0
  54. package/fesm2022/ngneers-controls-inplace.mjs.map +1 -0
  55. package/fesm2022/ngneers-controls-input-field.mjs +165 -0
  56. package/fesm2022/ngneers-controls-input-field.mjs.map +1 -0
  57. package/fesm2022/ngneers-controls-input.mjs +72 -0
  58. package/fesm2022/ngneers-controls-input.mjs.map +1 -0
  59. package/fesm2022/ngneers-controls-item-view.mjs +473 -0
  60. package/fesm2022/ngneers-controls-item-view.mjs.map +1 -0
  61. package/fesm2022/ngneers-controls-list-box.mjs +281 -0
  62. package/fesm2022/ngneers-controls-list-box.mjs.map +1 -0
  63. package/fesm2022/ngneers-controls-mask-input.mjs +888 -0
  64. package/fesm2022/ngneers-controls-mask-input.mjs.map +1 -0
  65. package/fesm2022/ngneers-controls-menu.mjs +371 -0
  66. package/fesm2022/ngneers-controls-menu.mjs.map +1 -0
  67. package/fesm2022/ngneers-controls-message.mjs +30 -0
  68. package/fesm2022/ngneers-controls-message.mjs.map +1 -0
  69. package/fesm2022/ngneers-controls-number-input.mjs +366 -0
  70. package/fesm2022/ngneers-controls-number-input.mjs.map +1 -0
  71. package/fesm2022/ngneers-controls-paginator.mjs +129 -0
  72. package/fesm2022/ngneers-controls-paginator.mjs.map +1 -0
  73. package/fesm2022/ngneers-controls-popover.mjs +215 -0
  74. package/fesm2022/ngneers-controls-popover.mjs.map +1 -0
  75. package/fesm2022/ngneers-controls-progress.mjs +98 -0
  76. package/fesm2022/ngneers-controls-progress.mjs.map +1 -0
  77. package/fesm2022/ngneers-controls-radio.mjs +152 -0
  78. package/fesm2022/ngneers-controls-radio.mjs.map +1 -0
  79. package/fesm2022/ngneers-controls-roving-focus.mjs +323 -0
  80. package/fesm2022/ngneers-controls-roving-focus.mjs.map +1 -0
  81. package/fesm2022/ngneers-controls-scroll-shadow.mjs +65 -0
  82. package/fesm2022/ngneers-controls-scroll-shadow.mjs.map +1 -0
  83. package/fesm2022/ngneers-controls-scroller.mjs +308 -0
  84. package/fesm2022/ngneers-controls-scroller.mjs.map +1 -0
  85. package/fesm2022/ngneers-controls-select-button.mjs +58 -0
  86. package/fesm2022/ngneers-controls-select-button.mjs.map +1 -0
  87. package/fesm2022/ngneers-controls-select.mjs +417 -0
  88. package/fesm2022/ngneers-controls-select.mjs.map +1 -0
  89. package/fesm2022/ngneers-controls-slider.mjs +167 -0
  90. package/fesm2022/ngneers-controls-slider.mjs.map +1 -0
  91. package/fesm2022/ngneers-controls-snackbar.mjs +414 -0
  92. package/fesm2022/ngneers-controls-snackbar.mjs.map +1 -0
  93. package/fesm2022/ngneers-controls-spin-buttons.mjs +126 -0
  94. package/fesm2022/ngneers-controls-spin-buttons.mjs.map +1 -0
  95. package/fesm2022/ngneers-controls-spinner.mjs +184 -0
  96. package/fesm2022/ngneers-controls-spinner.mjs.map +1 -0
  97. package/fesm2022/ngneers-controls-splitter.mjs +604 -0
  98. package/fesm2022/ngneers-controls-splitter.mjs.map +1 -0
  99. package/fesm2022/ngneers-controls-state.mjs +185 -0
  100. package/fesm2022/ngneers-controls-state.mjs.map +1 -0
  101. package/fesm2022/ngneers-controls-switch.mjs +39 -0
  102. package/fesm2022/ngneers-controls-switch.mjs.map +1 -0
  103. package/fesm2022/ngneers-controls-table.mjs +2634 -0
  104. package/fesm2022/ngneers-controls-table.mjs.map +1 -0
  105. package/fesm2022/ngneers-controls-tabs.mjs +336 -0
  106. package/fesm2022/ngneers-controls-tabs.mjs.map +1 -0
  107. package/fesm2022/ngneers-controls-tag.mjs +30 -0
  108. package/fesm2022/ngneers-controls-tag.mjs.map +1 -0
  109. package/fesm2022/ngneers-controls-toast.mjs +350 -0
  110. package/fesm2022/ngneers-controls-toast.mjs.map +1 -0
  111. package/fesm2022/ngneers-controls-toggle-button.mjs +70 -0
  112. package/fesm2022/ngneers-controls-toggle-button.mjs.map +1 -0
  113. package/fesm2022/ngneers-controls-tooltip.mjs +506 -0
  114. package/fesm2022/ngneers-controls-tooltip.mjs.map +1 -0
  115. package/fesm2022/ngneers-controls-tree.mjs +599 -0
  116. package/fesm2022/ngneers-controls-tree.mjs.map +1 -0
  117. package/fesm2022/ngneers-controls-upload.mjs +377 -0
  118. package/fesm2022/ngneers-controls-upload.mjs.map +1 -0
  119. package/fesm2022/ngneers-controls-utils-ng.mjs +411 -0
  120. package/fesm2022/ngneers-controls-utils-ng.mjs.map +1 -0
  121. package/fesm2022/ngneers-controls-utils.mjs +261 -0
  122. package/fesm2022/ngneers-controls-utils.mjs.map +1 -0
  123. package/fesm2022/ngneers-controls.mjs +6 -0
  124. package/fesm2022/ngneers-controls.mjs.map +1 -0
  125. package/package.json +302 -0
  126. package/types/ngneers-controls-accordion.d.ts +139 -0
  127. package/types/ngneers-controls-api-ng.d.ts +364 -0
  128. package/types/ngneers-controls-api-resize.d.ts +318 -0
  129. package/types/ngneers-controls-api.d.ts +145 -0
  130. package/types/ngneers-controls-avatar.d.ts +54 -0
  131. package/types/ngneers-controls-base.d.ts +277 -0
  132. package/types/ngneers-controls-breadcrumb.d.ts +272 -0
  133. package/types/ngneers-controls-button-group.d.ts +46 -0
  134. package/types/ngneers-controls-button.d.ts +48 -0
  135. package/types/ngneers-controls-calendar.d.ts +466 -0
  136. package/types/ngneers-controls-checkbox.d.ts +40 -0
  137. package/types/ngneers-controls-chip.d.ts +202 -0
  138. package/types/ngneers-controls-default-icons.d.ts +5 -0
  139. package/types/ngneers-controls-defer.d.ts +48 -0
  140. package/types/ngneers-controls-dialog.d.ts +399 -0
  141. package/types/ngneers-controls-directives.d.ts +171 -0
  142. package/types/ngneers-controls-drawer.d.ts +308 -0
  143. package/types/ngneers-controls-edit-inplace.d.ts +263 -0
  144. package/types/ngneers-controls-errors.d.ts +155 -0
  145. package/types/ngneers-controls-filter.d.ts +609 -0
  146. package/types/ngneers-controls-hint.d.ts +88 -0
  147. package/types/ngneers-controls-i18n-translations-de.d.ts +164 -0
  148. package/types/ngneers-controls-i18n-translations-en.d.ts +164 -0
  149. package/types/ngneers-controls-i18n.d.ts +186 -0
  150. package/types/ngneers-controls-icon.d.ts +68 -0
  151. package/types/ngneers-controls-inplace.d.ts +98 -0
  152. package/types/ngneers-controls-input-field.d.ts +248 -0
  153. package/types/ngneers-controls-input.d.ts +30 -0
  154. package/types/ngneers-controls-item-view.d.ts +215 -0
  155. package/types/ngneers-controls-list-box.d.ts +334 -0
  156. package/types/ngneers-controls-mask-input.d.ts +434 -0
  157. package/types/ngneers-controls-menu.d.ts +192 -0
  158. package/types/ngneers-controls-message.d.ts +21 -0
  159. package/types/ngneers-controls-number-input.d.ts +146 -0
  160. package/types/ngneers-controls-paginator.d.ts +255 -0
  161. package/types/ngneers-controls-popover.d.ts +116 -0
  162. package/types/ngneers-controls-progress.d.ts +49 -0
  163. package/types/ngneers-controls-radio.d.ts +91 -0
  164. package/types/ngneers-controls-roving-focus.d.ts +107 -0
  165. package/types/ngneers-controls-scroll-shadow.d.ts +25 -0
  166. package/types/ngneers-controls-scroller.d.ts +151 -0
  167. package/types/ngneers-controls-select-button.d.ts +51 -0
  168. package/types/ngneers-controls-select.d.ts +409 -0
  169. package/types/ngneers-controls-slider.d.ts +57 -0
  170. package/types/ngneers-controls-snackbar.d.ts +330 -0
  171. package/types/ngneers-controls-spin-buttons.d.ts +69 -0
  172. package/types/ngneers-controls-spinner.d.ts +117 -0
  173. package/types/ngneers-controls-splitter.d.ts +465 -0
  174. package/types/ngneers-controls-state.d.ts +102 -0
  175. package/types/ngneers-controls-switch.d.ts +18 -0
  176. package/types/ngneers-controls-table.d.ts +3127 -0
  177. package/types/ngneers-controls-tabs.d.ts +118 -0
  178. package/types/ngneers-controls-tag.d.ts +21 -0
  179. package/types/ngneers-controls-toast.d.ts +298 -0
  180. package/types/ngneers-controls-toggle-button.d.ts +48 -0
  181. package/types/ngneers-controls-tooltip.d.ts +189 -0
  182. package/types/ngneers-controls-tree.d.ts +409 -0
  183. package/types/ngneers-controls-upload.d.ts +347 -0
  184. package/types/ngneers-controls-utils-ng.d.ts +129 -0
  185. package/types/ngneers-controls-utils.d.ts +130 -0
  186. package/types/ngneers-controls.d.ts +2 -0
@@ -0,0 +1,334 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { TemplateRef } from '@angular/core';
3
+ import * as _ngneers_controls_api_ng from '@ngneers/controls/api/ng';
4
+ import * as _ngneers_controls_themes from '@ngneers/controls-themes';
5
+ import * as _ngneers_signal_translate from '@ngneers/signal-translate';
6
+ import { NgnItem, NgnItemsValue, FilterConfig } from '@ngneers/controls/api';
7
+ import { InputGeneric, maybeCallback } from '@ngneers/controls/utils';
8
+ import { ValueControlBase } from '@ngneers/controls/base';
9
+
10
+ /**
11
+ * This type determines the value type for the select control.
12
+ * * If `multiple` is `true`, the value is an array of items: `T[K][]`.
13
+ * * Else it is the item's value type `T[K]`.
14
+ */
15
+ type ValueType<Items extends readonly NgnItem[], Multiple extends boolean> = InputGeneric<Multiple, false> extends true ? NgnItemsValue<Items>[] : NgnItemsValue<Items>;
16
+ declare abstract class ListBoxTemplates<Items extends readonly NgnItem[], Multiple extends boolean> extends ValueControlBase<'listBox', ValueType<Items, Multiple> | null> {
17
+ private readonly _defaultItemTemplate;
18
+ private readonly _userItemTemplate;
19
+ /**
20
+ * Set a custom template for an item of the list box.
21
+ * Can also be set using an `<ng-template>` element with `#item` template reference variable.
22
+ */
23
+ readonly templateItem: _angular_core.InputSignal<TemplateRef<{
24
+ $implicit: Items[number] | undefined;
25
+ }> | null>;
26
+ protected readonly itemTemplate: _angular_core.Signal<TemplateRef<{
27
+ $implicit: Items[number] | undefined;
28
+ }>>;
29
+ private readonly _defaultGroupTemplate;
30
+ private readonly _userGroupTemplate;
31
+ /**
32
+ * Set a custom template for a group in the list box.
33
+ * Can also be set using an `<ng-template>` element with `#group` template reference variable.
34
+ */
35
+ readonly templateGroup: _angular_core.InputSignal<TemplateRef<{
36
+ $implicit: Items[number] | undefined;
37
+ }> | null>;
38
+ protected readonly groupTemplate: _angular_core.Signal<TemplateRef<{
39
+ $implicit: Items[number] | undefined;
40
+ }>>;
41
+ private readonly _defaultEmptyTemplate;
42
+ private readonly _userEmptyTemplate;
43
+ /**
44
+ * Set a custom template for the empty state in the list box.
45
+ * Can also be set using an `<ng-template>` element with `#empty` template reference variable.
46
+ */
47
+ readonly templateEmpty: _angular_core.InputSignal<TemplateRef<unknown> | null>;
48
+ protected readonly emptyTemplate: _angular_core.Signal<TemplateRef<unknown>>;
49
+ /**
50
+ * Types for the dialog templates.
51
+ */
52
+ readonly templateTypes: {
53
+ item: {
54
+ $implicit: Items[number] | undefined;
55
+ };
56
+ } & {
57
+ $implicit: {
58
+ item: Partial<{
59
+ $implicit: Items[number] | undefined;
60
+ }>;
61
+ };
62
+ };
63
+ protected readonly templateTypesInternal: {
64
+ item: {
65
+ $implicit: Items[number] | undefined;
66
+ index: number;
67
+ };
68
+ } & {
69
+ $implicit: {
70
+ item: Partial<{
71
+ $implicit: Items[number] | undefined;
72
+ index: number;
73
+ }>;
74
+ };
75
+ };
76
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ListBoxTemplates<any, any>, never>;
77
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ListBoxTemplates<any, any>, never, never, { "templateItem": { "alias": "templateItem"; "required": false; "isSignal": true; }; "templateGroup": { "alias": "templateGroup"; "required": false; "isSignal": true; }; "templateEmpty": { "alias": "templateEmpty"; "required": false; "isSignal": true; }; }, {}, ["_userItemTemplate", "_userGroupTemplate", "_userEmptyTemplate"], never, true, never>;
78
+ }
79
+
80
+ /**
81
+ * @category control
82
+ */
83
+ declare class NgnListBox<Items extends readonly NgnItem[], Multiple extends boolean = false> extends ListBoxTemplates<Items, Multiple> {
84
+ protected readonly i18n: _ngneers_signal_translate.TranslationsSignal<{
85
+ calendar: {
86
+ today: string;
87
+ input: string;
88
+ selectYear: string;
89
+ selectMonth: string;
90
+ previousMonth: string;
91
+ nextMonth: string;
92
+ weekdays: {
93
+ monday: string;
94
+ tuesday: string;
95
+ wednesday: string;
96
+ thursday: string;
97
+ friday: string;
98
+ saturday: string;
99
+ sunday: string;
100
+ };
101
+ weekdaysShort: {
102
+ monday: string;
103
+ tuesday: string;
104
+ wednesday: string;
105
+ thursday: string;
106
+ friday: string;
107
+ saturday: string;
108
+ sunday: string;
109
+ };
110
+ months: {
111
+ january: string;
112
+ february: string;
113
+ march: string;
114
+ april: string;
115
+ may: string;
116
+ june: string;
117
+ july: string;
118
+ august: string;
119
+ september: string;
120
+ october: string;
121
+ november: string;
122
+ december: string;
123
+ };
124
+ };
125
+ editInplace: {
126
+ placeholder: string;
127
+ confirm: string;
128
+ };
129
+ filter: {
130
+ noFilter: string;
131
+ addCondition: string;
132
+ removeCondition: string;
133
+ operator: string;
134
+ value: string;
135
+ clear: string;
136
+ apply: string;
137
+ cancel: string;
138
+ matchModeLabel: string;
139
+ match: {
140
+ all: string;
141
+ any: string;
142
+ and: string;
143
+ or: string;
144
+ };
145
+ selected: string;
146
+ conditions: string;
147
+ operators: {
148
+ isEqual: string;
149
+ isNotEqual: string;
150
+ contains: string;
151
+ startsWith: string;
152
+ endsWith: string;
153
+ in: string;
154
+ isEmpty: string;
155
+ isNotEmpty: string;
156
+ greaterThan: string;
157
+ greaterThanOrEqual: string;
158
+ lessThan: string;
159
+ lessThanOrEqual: string;
160
+ after: string;
161
+ onOrAfter: string;
162
+ before: string;
163
+ onOrBefore: string;
164
+ isTrue: string;
165
+ isFalse: string;
166
+ custom: string;
167
+ };
168
+ };
169
+ splitter: {
170
+ handleLabel: string;
171
+ };
172
+ inputField: {
173
+ clearInput: string;
174
+ };
175
+ maskInput: {
176
+ roleDescription: string;
177
+ segmentRange: string;
178
+ optionSeparator: string;
179
+ };
180
+ drawer: {
181
+ close: string;
182
+ };
183
+ dialog: {
184
+ close: string;
185
+ };
186
+ chip: {
187
+ close: string;
188
+ };
189
+ breadcrumb: {
190
+ overflow: string;
191
+ };
192
+ toast: {
193
+ close: string;
194
+ region: string;
195
+ };
196
+ snackbar: {
197
+ close: string;
198
+ region: string;
199
+ severity: {
200
+ error: string;
201
+ warning: string;
202
+ success: string;
203
+ info: string;
204
+ };
205
+ };
206
+ upload: {
207
+ upload: string;
208
+ uploadNamed: string;
209
+ retryNamed: string;
210
+ cancelNamed: string;
211
+ removeNamed: string;
212
+ progressNamed: string;
213
+ };
214
+ select: {
215
+ filterOptions: string;
216
+ };
217
+ paginator: {
218
+ previousPage: string;
219
+ nextPage: string;
220
+ };
221
+ listBox: {
222
+ noItemsFound: string;
223
+ };
224
+ tree: {
225
+ noItemsFound: string;
226
+ };
227
+ table: {
228
+ selectAllRows: string;
229
+ selectRow: string;
230
+ sortedBy: string;
231
+ sortAscending: string;
232
+ sortDescending: string;
233
+ sortCleared: string;
234
+ selectedCount: string;
235
+ page: string;
236
+ resultCount: string;
237
+ };
238
+ state: {
239
+ loading: string;
240
+ success: string;
241
+ warning: string;
242
+ error: string;
243
+ cancelled: string;
244
+ };
245
+ }, "_">;
246
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "item-selected", "item-highlighted", "item-disabled"], readonly [{
247
+ readonly class: "checkbox";
248
+ readonly template: _ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "box-icon-visible", "invalid"], readonly []>;
249
+ }, {
250
+ readonly class: "scroller";
251
+ readonly template: _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "item-sticky"], readonly []>;
252
+ }]>>;
253
+ private readonly _scroller;
254
+ /**
255
+ * The items to display in the list box.
256
+ */
257
+ readonly items: _angular_core.InputSignal<Items>;
258
+ /**
259
+ * Whether to scroll to the selected item when the list box is first rendered.
260
+ * Pass a `ScrollLogicalPosition` to control where the item lands in the viewport.
261
+ * @default false
262
+ */
263
+ readonly scrollToSelectedItemOnInit: _angular_core.InputSignal<boolean | ScrollLogicalPosition>;
264
+ /**
265
+ * Whether items can be selected by the user.
266
+ * @default false
267
+ */
268
+ readonly selectable: _angular_core.InputSignalWithTransform<boolean, unknown>;
269
+ /**
270
+ * Whether hovering an item selects it.
271
+ * @default false
272
+ */
273
+ readonly selectOnHover: _angular_core.InputSignalWithTransform<boolean, unknown>;
274
+ /**
275
+ * Whether the list box itself is focusable and participates in keyboard navigation.
276
+ * @default true
277
+ */
278
+ readonly focussable: _angular_core.InputSignalWithTransform<boolean, unknown>;
279
+ /**
280
+ * Whether the list is virtualized.
281
+ * @default false
282
+ */
283
+ readonly virtual: _angular_core.InputSignalWithTransform<boolean, unknown>;
284
+ /**
285
+ * When {@link virtual} is enabled, this defines the height of each item in the list.
286
+ */
287
+ readonly itemHeight: _angular_core.InputSignal<number | undefined>;
288
+ /**
289
+ * Enable this to allow the user to select multiple values.
290
+ * When enabled, the value of the control becomes an array of selected items.
291
+ */
292
+ readonly multiple: _angular_core.InputSignal<Multiple | undefined>;
293
+ /**
294
+ * Whether to use a checkbox to indicate selection state.
295
+ *
296
+ * This option is true per default when {@link multiple} is `true`.
297
+ * @default multiple()
298
+ */
299
+ readonly checkbox: _angular_core.InputSignal<boolean | undefined>;
300
+ /**
301
+ * Accepts a boolean value that determines whether the filter is enabled.
302
+ * Alternatively, you can provide `FilterConfig` to customize the filter behavior.
303
+ * @default `false`
304
+ */
305
+ readonly filter: _angular_core.InputSignal<boolean | FilterConfig<Items[number]>>;
306
+ /**
307
+ * Manually set the filter text.
308
+ */
309
+ readonly filterText: _angular_core.InputSignal<string | null>;
310
+ /**
311
+ * Emitted when an item is clicked, carrying the value of that item.
312
+ */
313
+ readonly itemClicked: _angular_core.OutputEmitterRef<NgnItemsValue<Items>>;
314
+ protected readonly maybeCallback: typeof maybeCallback;
315
+ readonly displayedItems: _angular_core.Signal<NgnItem<any, any>[]>;
316
+ protected readonly valueArray: _angular_core.Signal<NgnItemsValue<Items>[]>;
317
+ readonly currentHighlightedValue: _angular_core.WritableSignal<NgnItemsValue<Items> | null>;
318
+ protected readonly filteredItems: {
319
+ (): readonly NgnItem[];
320
+ isRunning: _angular_core.Signal<boolean>;
321
+ firstRunCompleted: _angular_core.Signal<boolean>;
322
+ };
323
+ private readonly _appliedFilterOptions;
324
+ protected readonly filterIsExecuting: _angular_core.Signal<boolean>;
325
+ protected readonly showCheckboxes: _angular_core.Signal<boolean>;
326
+ constructor();
327
+ onKeyDown(event: KeyboardEvent): void;
328
+ scrollToIndex(index: number): void;
329
+ protected onSelect(value: NgnItemsValue<Items>): void;
330
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnListBox<any, any>, never>;
331
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnListBox<any, any>, "ngn-list-box", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "scrollToSelectedItemOnInit": { "alias": "scrollToSelectedItemOnInit"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "selectOnHover": { "alias": "selectOnHover"; "required": false; "isSignal": true; }; "focussable": { "alias": "focussable"; "required": false; "isSignal": true; }; "virtual": { "alias": "virtual"; "required": false; "isSignal": true; }; "itemHeight": { "alias": "itemHeight"; "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; }; "filterText": { "alias": "filterText"; "required": false; "isSignal": true; }; }, { "itemClicked": "itemClicked"; }, never, never, true, never>;
332
+ }
333
+
334
+ export { NgnListBox };