@elaraai/east-ui 1.0.30 → 1.0.32

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 (167) hide show
  1. package/README.md +1 -1
  2. package/dist/src/charts/chart/index.d.ts +116 -12
  3. package/dist/src/charts/chart/index.d.ts.map +1 -1
  4. package/dist/src/charts/chart/index.js +100 -37
  5. package/dist/src/charts/chart/index.js.map +1 -1
  6. package/dist/src/charts/index.d.ts +2 -1
  7. package/dist/src/charts/index.d.ts.map +1 -1
  8. package/dist/src/charts/index.js +2 -1
  9. package/dist/src/charts/index.js.map +1 -1
  10. package/dist/src/charts/spec/index.d.ts +5 -3
  11. package/dist/src/charts/spec/index.d.ts.map +1 -1
  12. package/dist/src/charts/spec/index.js +2 -2
  13. package/dist/src/charts/spec/index.js.map +1 -1
  14. package/dist/src/charts/spec/types.d.ts +7 -2
  15. package/dist/src/charts/spec/types.d.ts.map +1 -1
  16. package/dist/src/charts/spec/types.js +7 -2
  17. package/dist/src/charts/spec/types.js.map +1 -1
  18. package/dist/src/collections/blend/index.d.ts +59 -0
  19. package/dist/src/collections/blend/index.d.ts.map +1 -1
  20. package/dist/src/collections/blend/index.js +1 -0
  21. package/dist/src/collections/blend/index.js.map +1 -1
  22. package/dist/src/collections/blend/types.d.ts +66 -0
  23. package/dist/src/collections/blend/types.d.ts.map +1 -1
  24. package/dist/src/collections/blend/types.js +15 -1
  25. package/dist/src/collections/blend/types.js.map +1 -1
  26. package/dist/src/collections/board/index.d.ts +381 -28
  27. package/dist/src/collections/board/index.d.ts.map +1 -1
  28. package/dist/src/collections/board/index.js +133 -5
  29. package/dist/src/collections/board/index.js.map +1 -1
  30. package/dist/src/collections/board/types.d.ts +1 -198
  31. package/dist/src/collections/board/types.d.ts.map +1 -1
  32. package/dist/src/collections/board/types.js +6 -73
  33. package/dist/src/collections/board/types.js.map +1 -1
  34. package/dist/src/collections/gantt/index.d.ts +63 -24
  35. package/dist/src/collections/gantt/index.d.ts.map +1 -1
  36. package/dist/src/collections/gantt/index.js +98 -64
  37. package/dist/src/collections/gantt/index.js.map +1 -1
  38. package/dist/src/collections/gantt/types.d.ts +31 -76
  39. package/dist/src/collections/gantt/types.d.ts.map +1 -1
  40. package/dist/src/collections/gantt/types.js +18 -60
  41. package/dist/src/collections/gantt/types.js.map +1 -1
  42. package/dist/src/collections/library/index.d.ts +700 -17
  43. package/dist/src/collections/library/index.d.ts.map +1 -1
  44. package/dist/src/collections/library/index.js +66 -12
  45. package/dist/src/collections/library/index.js.map +1 -1
  46. package/dist/src/collections/library/types.d.ts +710 -38
  47. package/dist/src/collections/library/types.d.ts.map +1 -1
  48. package/dist/src/collections/library/types.js +48 -20
  49. package/dist/src/collections/library/types.js.map +1 -1
  50. package/dist/src/collections/planner/index.d.ts +45 -26
  51. package/dist/src/collections/planner/index.d.ts.map +1 -1
  52. package/dist/src/collections/planner/index.js +37 -27
  53. package/dist/src/collections/planner/index.js.map +1 -1
  54. package/dist/src/collections/planner/types.d.ts +11 -0
  55. package/dist/src/collections/planner/types.d.ts.map +1 -1
  56. package/dist/src/collections/planner/types.js +11 -0
  57. package/dist/src/collections/planner/types.js.map +1 -1
  58. package/dist/src/collections/roster/index.d.ts +397 -21
  59. package/dist/src/collections/roster/index.d.ts.map +1 -1
  60. package/dist/src/collections/roster/index.js +94 -4
  61. package/dist/src/collections/roster/index.js.map +1 -1
  62. package/dist/src/collections/roster/types.d.ts +15 -161
  63. package/dist/src/collections/roster/types.d.ts.map +1 -1
  64. package/dist/src/collections/roster/types.js +13 -58
  65. package/dist/src/collections/roster/types.js.map +1 -1
  66. package/dist/src/collections/table/index.d.ts +8 -0
  67. package/dist/src/collections/table/index.d.ts.map +1 -1
  68. package/dist/src/collections/table/index.js +22 -0
  69. package/dist/src/collections/table/index.js.map +1 -1
  70. package/dist/src/collections/table/types.d.ts +17 -0
  71. package/dist/src/collections/table/types.d.ts.map +1 -1
  72. package/dist/src/collections/table/types.js.map +1 -1
  73. package/dist/src/component.d.ts +1411 -299
  74. package/dist/src/component.d.ts.map +1 -1
  75. package/dist/src/component.js +131 -11
  76. package/dist/src/component.js.map +1 -1
  77. package/dist/src/contracts/drag.d.ts +122 -1
  78. package/dist/src/contracts/drag.d.ts.map +1 -1
  79. package/dist/src/contracts/drag.js +46 -1
  80. package/dist/src/contracts/drag.js.map +1 -1
  81. package/dist/src/contracts/index.d.ts +2 -1
  82. package/dist/src/contracts/index.d.ts.map +1 -1
  83. package/dist/src/contracts/index.js +2 -1
  84. package/dist/src/contracts/index.js.map +1 -1
  85. package/dist/src/contracts/review.d.ts +198 -0
  86. package/dist/src/contracts/review.d.ts.map +1 -0
  87. package/dist/src/contracts/review.js +163 -0
  88. package/dist/src/contracts/review.js.map +1 -0
  89. package/dist/src/index.d.ts +3 -2
  90. package/dist/src/index.d.ts.map +1 -1
  91. package/dist/src/index.js +4 -2
  92. package/dist/src/index.js.map +1 -1
  93. package/dist/src/internal.d.ts +4 -2
  94. package/dist/src/internal.d.ts.map +1 -1
  95. package/dist/src/internal.js +5 -2
  96. package/dist/src/internal.js.map +1 -1
  97. package/dist/src/layout/expandable/index.d.ts +116 -0
  98. package/dist/src/layout/expandable/index.d.ts.map +1 -0
  99. package/dist/src/layout/expandable/index.js +129 -0
  100. package/dist/src/layout/expandable/index.js.map +1 -0
  101. package/dist/src/layout/expandable/types.d.ts +43 -0
  102. package/dist/src/layout/expandable/types.d.ts.map +1 -0
  103. package/dist/src/layout/expandable/types.js +18 -0
  104. package/dist/src/layout/expandable/types.js.map +1 -0
  105. package/dist/src/layout/index.d.ts +1 -0
  106. package/dist/src/layout/index.d.ts.map +1 -1
  107. package/dist/src/layout/index.js +1 -0
  108. package/dist/src/layout/index.js.map +1 -1
  109. package/dist/src/runtime/charts/chart.d.ts +16 -13
  110. package/dist/src/runtime/charts/chart.d.ts.map +1 -1
  111. package/dist/src/runtime/charts/chart.js +16 -13
  112. package/dist/src/runtime/charts/chart.js.map +1 -1
  113. package/dist/src/runtime/collections/library.d.ts +4 -2
  114. package/dist/src/runtime/collections/library.d.ts.map +1 -1
  115. package/dist/src/runtime/collections/library.js +4 -2
  116. package/dist/src/runtime/collections/library.js.map +1 -1
  117. package/dist/src/runtime/layout/expandable.d.ts +43 -0
  118. package/dist/src/runtime/layout/expandable.d.ts.map +1 -0
  119. package/dist/src/runtime/layout/expandable.js +41 -0
  120. package/dist/src/runtime/layout/expandable.js.map +1 -0
  121. package/dist/src/runtime/layout/index.d.ts +1 -0
  122. package/dist/src/runtime/layout/index.d.ts.map +1 -1
  123. package/dist/src/runtime/layout/index.js +1 -0
  124. package/dist/src/runtime/layout/index.js.map +1 -1
  125. package/dist/test/charts/chart.examples.d.ts +8 -4
  126. package/dist/test/charts/chart.examples.d.ts.map +1 -1
  127. package/dist/test/charts/chart.examples.js +89 -34
  128. package/dist/test/charts/chart.examples.js.map +1 -1
  129. package/dist/test/collections/blend.examples.d.ts +10 -1
  130. package/dist/test/collections/blend.examples.d.ts.map +1 -1
  131. package/dist/test/collections/blend.examples.js +52 -6
  132. package/dist/test/collections/blend.examples.js.map +1 -1
  133. package/dist/test/collections/board.examples.d.ts +8 -1
  134. package/dist/test/collections/board.examples.d.ts.map +1 -1
  135. package/dist/test/collections/board.examples.js +32 -5
  136. package/dist/test/collections/board.examples.js.map +1 -1
  137. package/dist/test/collections/gantt.examples.d.ts +26 -1
  138. package/dist/test/collections/gantt.examples.d.ts.map +1 -1
  139. package/dist/test/collections/gantt.examples.js +153 -27
  140. package/dist/test/collections/gantt.examples.js.map +1 -1
  141. package/dist/test/collections/library.examples.d.ts +3 -0
  142. package/dist/test/collections/library.examples.d.ts.map +1 -1
  143. package/dist/test/collections/library.examples.js +107 -2
  144. package/dist/test/collections/library.examples.js.map +1 -1
  145. package/dist/test/collections/planner.examples.d.ts +14 -0
  146. package/dist/test/collections/planner.examples.d.ts.map +1 -1
  147. package/dist/test/collections/planner.examples.js +127 -3
  148. package/dist/test/collections/planner.examples.js.map +1 -1
  149. package/dist/test/collections/roster.examples.d.ts +17 -1
  150. package/dist/test/collections/roster.examples.d.ts.map +1 -1
  151. package/dist/test/collections/roster.examples.js +89 -9
  152. package/dist/test/collections/roster.examples.js.map +1 -1
  153. package/dist/test/collections/table.examples.d.ts +16 -0
  154. package/dist/test/collections/table.examples.d.ts.map +1 -1
  155. package/dist/test/collections/table.examples.js +62 -2
  156. package/dist/test/collections/table.examples.js.map +1 -1
  157. package/dist/test/disclosure/story.examples.js +3 -3
  158. package/dist/test/disclosure/story.examples.js.map +1 -1
  159. package/dist/test/layout/expandable.examples.d.ts +3 -0
  160. package/dist/test/layout/expandable.examples.d.ts.map +1 -0
  161. package/dist/test/layout/expandable.examples.js +31 -0
  162. package/dist/test/layout/expandable.examples.js.map +1 -0
  163. package/dist/test/layout/index.d.ts +1 -0
  164. package/dist/test/layout/index.d.ts.map +1 -1
  165. package/dist/test/layout/index.js +1 -0
  166. package/dist/test/layout/index.js.map +1 -1
  167. package/package.json +3 -3
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) 2025 Elara AI Pty Ltd
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
- import { ArrayType, BooleanType, DictType, FloatType, NullType, OptionType, StringType, StructType, VariantType, FunctionType } from "@elaraai/east";
5
+ import { ArrayType, BooleanType, DictType, FloatType, NullType, OptionType, StringType, StructType, VariantType, FunctionType, type SubtypeExprOrValue } from "@elaraai/east";
6
6
  /**
7
7
  * Status pill on a Library card.
8
8
  *
@@ -62,23 +62,6 @@ export declare const LibraryDimValueType: VariantType<{
62
62
  * Type representing secondary dimension values.
63
63
  */
64
64
  export type LibraryDimValueType = typeof LibraryDimValueType;
65
- /**
66
- * One card's group placement under a group-by option: the group value it
67
- * belongs to plus the (shared) group summary text.
68
- *
69
- * @property value - The group this card belongs to under the option
70
- * @property summary - Right-aligned group-head summary text
71
- */
72
- export declare const LibraryGroupPlacementType: StructType<{
73
- /** The group this card belongs to under the option */
74
- readonly value: StringType;
75
- /** Right-aligned group-head summary text */
76
- readonly summary: OptionType<StringType>;
77
- }>;
78
- /**
79
- * Type representing a card's group placement.
80
- */
81
- export type LibraryGroupPlacementType = typeof LibraryGroupPlacementType;
82
65
  /**
83
66
  * A resolved Library card.
84
67
  *
@@ -92,8 +75,9 @@ export type LibraryGroupPlacementType = typeof LibraryGroupPlacementType;
92
75
  * @property icon - Optional Font Awesome solid icon name
93
76
  * @property status - Optional status pill
94
77
  * @property draggable - Whether the card can start a drag
95
- * @property search - Optional filter text (card dims when unmatched)
96
- * @property groups - Group placement per group-by option key
78
+ * @property filtered - Whether the card renders de-emphasised (dimmed, drag disabled) — the `Slice.partition` "keep the excluded" feed
79
+ * @property search - Optional filter text (card hides when unmatched)
80
+ * @property groups - Group value per group-by option key
97
81
  * @property dims - Secondary dimension value per dimension key
98
82
  */
99
83
  export declare const LibraryItemType: StructType<{
@@ -120,15 +104,12 @@ export declare const LibraryItemType: StructType<{
120
104
  }>>;
121
105
  /** Whether the card can start a drag */
122
106
  readonly draggable: BooleanType;
123
- /** Optional filter text (card dims when unmatched) */
107
+ /** Whether the card renders de-emphasised (dimmed, drag disabled) */
108
+ readonly filtered: BooleanType;
109
+ /** Optional filter text (card hides when unmatched) */
124
110
  readonly search: OptionType<StringType>;
125
- /** Group placement per group-by option key */
126
- readonly groups: DictType<StringType, StructType<{
127
- /** The group this card belongs to under the option */
128
- readonly value: StringType;
129
- /** Right-aligned group-head summary text */
130
- readonly summary: OptionType<StringType>;
131
- }>>;
111
+ /** Group value per group-by option key */
112
+ readonly groups: DictType<StringType, StringType>;
132
113
  /** Secondary dimension value per dimension key */
133
114
  readonly dims: DictType<StringType, VariantType<{
134
115
  /** Utilisation bar with optional right-aligned text */
@@ -161,6 +142,7 @@ export type LibraryItemType = typeof LibraryItemType;
161
142
  * @property icon - Optional Font Awesome solid icon name
162
143
  * @property status - Optional status pill
163
144
  * @property draggable - Whether the card can start a drag
145
+ * @property filtered - Whether the card renders de-emphasised (dimmed, drag disabled)
164
146
  */
165
147
  export declare const LibraryCardFaceType: StructType<{
166
148
  /** Item identity; carried by `LibraryRef` when dragged */
@@ -186,6 +168,8 @@ export declare const LibraryCardFaceType: StructType<{
186
168
  }>>;
187
169
  /** Whether the card can start a drag */
188
170
  readonly draggable: BooleanType;
171
+ /** Whether the card renders de-emphasised (dimmed, drag disabled) */
172
+ readonly filtered: BooleanType;
189
173
  }>;
190
174
  /**
191
175
  * Type representing card face values.
@@ -223,6 +207,47 @@ export declare const LibraryDimMetaType: StructType<{
223
207
  * Type representing secondary dimension metadata.
224
208
  */
225
209
  export type LibraryDimMetaType = typeof LibraryDimMetaType;
210
+ /**
211
+ * East StructType for Library layout style.
212
+ *
213
+ * @remarks
214
+ * When `height` or `maxHeight` constrains the component, the card grid
215
+ * becomes the Library's own scroll region (header / toolbar / footer chrome
216
+ * stay fixed) and rows virtualize. Unconstrained, the Library grows to its
217
+ * content height and defers scrolling to an ancestor — the pre-#258
218
+ * behaviour.
219
+ *
220
+ * @property height - Optional CSS height (e.g. `"480px"`, `"100%"`)
221
+ * @property maxHeight - Optional CSS max-height
222
+ * @property virtualization - Whether rows virtualize inside the scroll region (default `true`)
223
+ */
224
+ export declare const LibraryStyleType: StructType<{
225
+ /** Optional CSS height (e.g. `"480px"`, `"100%"`) */
226
+ readonly height: OptionType<StringType>;
227
+ /** Optional CSS max-height */
228
+ readonly maxHeight: OptionType<StringType>;
229
+ /** Whether rows virtualize inside the scroll region (default `true`) */
230
+ readonly virtualization: OptionType<BooleanType>;
231
+ }>;
232
+ /**
233
+ * Type representing Library layout style values.
234
+ */
235
+ export type LibraryStyleType = typeof LibraryStyleType;
236
+ /**
237
+ * Style options for the Library component.
238
+ *
239
+ * @property height - Optional CSS height (e.g. `"480px"`, `"100%"`); constraining it makes the card grid the Library's own scroll region
240
+ * @property maxHeight - Optional CSS max-height
241
+ * @property virtualization - Whether rows virtualize inside the scroll region (default `true`; set `false` to always mount every card)
242
+ */
243
+ export interface LibraryStyle {
244
+ /** Optional CSS height (e.g. `"480px"`, `"100%"`); constraining it makes the card grid the Library's own scroll region */
245
+ height?: SubtypeExprOrValue<StringType>;
246
+ /** Optional CSS max-height */
247
+ maxHeight?: SubtypeExprOrValue<StringType>;
248
+ /** Whether rows virtualize inside the scroll region (default `true`; set `false` to always mount every card) */
249
+ virtualization?: SubtypeExprOrValue<BooleanType>;
250
+ }
226
251
  /**
227
252
  * East StructType for the Library component.
228
253
  *
@@ -234,19 +259,22 @@ export type LibraryDimMetaType = typeof LibraryDimMetaType;
234
259
  * return-to-palette sink for its connected targets.
235
260
  *
236
261
  * @property id - DnD source identity
237
- * @property hint - Optional header-right caption (defaults to the drag hint)
262
+ * @property hint - Optional header-right caption (absent ⇒ no header band)
238
263
  * @property items - The resolved cards
239
264
  * @property groupOptions - GROUP BY toolbar options (empty = no grouping toolbar)
265
+ * @property groupSummaries - Right-aligned group-head summary text per group-by option key, per group value
240
266
  * @property dimOptions - SECONDARY dimension toggles (empty = no toggle toolbar)
241
267
  * @property defaultDimensions - Initially-visible dimension keys
242
268
  * @property searchable - Whether the search input renders
243
269
  * @property addLabel - Optional footer action label
244
270
  * @property onAdd - Optional footer action callback
271
+ * @property slice - Optional slice chrome (bound handle + rail affordances)
272
+ * @property style - Optional layout style (height / maxHeight / virtualization)
245
273
  */
246
274
  export declare const LibraryRootType: StructType<{
247
275
  /** DnD source identity */
248
276
  readonly id: StringType;
249
- /** Optional header-right caption (defaults to the drag hint) */
277
+ /** Optional header-right caption (absent ⇒ no header band) */
250
278
  readonly hint: OptionType<StringType>;
251
279
  /** The resolved cards */
252
280
  readonly items: ArrayType<StructType<{
@@ -273,15 +301,12 @@ export declare const LibraryRootType: StructType<{
273
301
  }>>;
274
302
  /** Whether the card can start a drag */
275
303
  readonly draggable: BooleanType;
276
- /** Optional filter text (card dims when unmatched) */
304
+ /** Whether the card renders de-emphasised (dimmed, drag disabled) */
305
+ readonly filtered: BooleanType;
306
+ /** Optional filter text (card hides when unmatched) */
277
307
  readonly search: OptionType<StringType>;
278
- /** Group placement per group-by option key */
279
- readonly groups: DictType<StringType, StructType<{
280
- /** The group this card belongs to under the option */
281
- readonly value: StringType;
282
- /** Right-aligned group-head summary text */
283
- readonly summary: OptionType<StringType>;
284
- }>>;
308
+ /** Group value per group-by option key */
309
+ readonly groups: DictType<StringType, StringType>;
285
310
  /** Secondary dimension value per dimension key */
286
311
  readonly dims: DictType<StringType, VariantType<{
287
312
  /** Utilisation bar with optional right-aligned text */
@@ -306,6 +331,8 @@ export declare const LibraryRootType: StructType<{
306
331
  /** Segment label in the GROUP BY toolbar */
307
332
  readonly label: StringType;
308
333
  }>>;
334
+ /** Right-aligned group-head summary text per group-by option key, per group value */
335
+ readonly groupSummaries: DictType<StringType, DictType<StringType, StringType>>;
309
336
  /** SECONDARY dimension toggles (empty = no toggle toolbar) */
310
337
  readonly dimOptions: ArrayType<StructType<{
311
338
  /** Dimension identity (matches each card's `dims` key) */
@@ -321,6 +348,651 @@ export declare const LibraryRootType: StructType<{
321
348
  readonly addLabel: OptionType<StringType>;
322
349
  /** Optional footer action callback */
323
350
  readonly onAdd: OptionType<FunctionType<[], NullType>>;
351
+ /** Optional slice chrome (bound handle + rail affordances) */
352
+ readonly slice: OptionType<StructType<{
353
+ readonly slice: StructType<{
354
+ readonly key: StringType;
355
+ readonly read: FunctionType<[], StructType<{
356
+ readonly range: OptionType<VariantType<{
357
+ readonly datetime: StructType<{
358
+ readonly from: import("@elaraai/east").DateTimeType;
359
+ readonly to: import("@elaraai/east").DateTimeType;
360
+ }>;
361
+ readonly datetimePreset: VariantType<{
362
+ readonly today: NullType;
363
+ readonly last7d: NullType;
364
+ readonly last30d: NullType;
365
+ readonly last90d: NullType;
366
+ readonly ytd: NullType;
367
+ }>;
368
+ readonly integer: StructType<{
369
+ readonly from: import("@elaraai/east").IntegerType;
370
+ readonly to: import("@elaraai/east").IntegerType;
371
+ }>;
372
+ readonly float: StructType<{
373
+ readonly from: FloatType;
374
+ readonly to: FloatType;
375
+ }>;
376
+ }>>;
377
+ readonly compare: OptionType<VariantType<{
378
+ readonly previousPeriod: NullType;
379
+ readonly previousYear: NullType;
380
+ }>>;
381
+ readonly filters: ArrayType<VariantType<{
382
+ readonly string: StructType<{
383
+ readonly fieldId: StringType;
384
+ readonly op: VariantType<{
385
+ readonly eq: StringType;
386
+ readonly neq: StringType;
387
+ readonly in: import("@elaraai/east").SetType<StringType>;
388
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
389
+ readonly contains: StringType;
390
+ readonly matches: StringType;
391
+ readonly startsWith: StringType;
392
+ readonly endsWith: StringType;
393
+ readonly isEmpty: NullType;
394
+ readonly isNotEmpty: NullType;
395
+ }>;
396
+ }>;
397
+ readonly integer: StructType<{
398
+ readonly fieldId: StringType;
399
+ readonly op: VariantType<{
400
+ readonly eq: import("@elaraai/east").IntegerType;
401
+ readonly neq: import("@elaraai/east").IntegerType;
402
+ readonly lt: import("@elaraai/east").IntegerType;
403
+ readonly lte: import("@elaraai/east").IntegerType;
404
+ readonly gt: import("@elaraai/east").IntegerType;
405
+ readonly gte: import("@elaraai/east").IntegerType;
406
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
407
+ }>;
408
+ }>;
409
+ readonly float: StructType<{
410
+ readonly fieldId: StringType;
411
+ readonly op: VariantType<{
412
+ readonly lt: FloatType;
413
+ readonly lte: FloatType;
414
+ readonly gt: FloatType;
415
+ readonly gte: FloatType;
416
+ }>;
417
+ }>;
418
+ readonly datetime: StructType<{
419
+ readonly fieldId: StringType;
420
+ readonly op: VariantType<{
421
+ readonly before: import("@elaraai/east").DateTimeType;
422
+ readonly after: import("@elaraai/east").DateTimeType;
423
+ readonly between: StructType<{
424
+ readonly from: import("@elaraai/east").DateTimeType;
425
+ readonly to: import("@elaraai/east").DateTimeType;
426
+ }>;
427
+ }>;
428
+ }>;
429
+ readonly boolean: StructType<{
430
+ readonly fieldId: StringType;
431
+ readonly op: VariantType<{
432
+ readonly is: BooleanType;
433
+ }>;
434
+ }>;
435
+ }>>;
436
+ readonly cohorts: ArrayType<StructType<{
437
+ readonly id: StringType;
438
+ readonly name: StringType;
439
+ readonly filters: ArrayType<VariantType<{
440
+ readonly string: StructType<{
441
+ readonly fieldId: StringType;
442
+ readonly op: VariantType<{
443
+ readonly eq: StringType;
444
+ readonly neq: StringType;
445
+ readonly in: import("@elaraai/east").SetType<StringType>;
446
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
447
+ readonly contains: StringType;
448
+ readonly matches: StringType;
449
+ readonly startsWith: StringType;
450
+ readonly endsWith: StringType;
451
+ readonly isEmpty: NullType;
452
+ readonly isNotEmpty: NullType;
453
+ }>;
454
+ }>;
455
+ readonly integer: StructType<{
456
+ readonly fieldId: StringType;
457
+ readonly op: VariantType<{
458
+ readonly eq: import("@elaraai/east").IntegerType;
459
+ readonly neq: import("@elaraai/east").IntegerType;
460
+ readonly lt: import("@elaraai/east").IntegerType;
461
+ readonly lte: import("@elaraai/east").IntegerType;
462
+ readonly gt: import("@elaraai/east").IntegerType;
463
+ readonly gte: import("@elaraai/east").IntegerType;
464
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
465
+ }>;
466
+ }>;
467
+ readonly float: StructType<{
468
+ readonly fieldId: StringType;
469
+ readonly op: VariantType<{
470
+ readonly lt: FloatType;
471
+ readonly lte: FloatType;
472
+ readonly gt: FloatType;
473
+ readonly gte: FloatType;
474
+ }>;
475
+ }>;
476
+ readonly datetime: StructType<{
477
+ readonly fieldId: StringType;
478
+ readonly op: VariantType<{
479
+ readonly before: import("@elaraai/east").DateTimeType;
480
+ readonly after: import("@elaraai/east").DateTimeType;
481
+ readonly between: StructType<{
482
+ readonly from: import("@elaraai/east").DateTimeType;
483
+ readonly to: import("@elaraai/east").DateTimeType;
484
+ }>;
485
+ }>;
486
+ }>;
487
+ readonly boolean: StructType<{
488
+ readonly fieldId: StringType;
489
+ readonly op: VariantType<{
490
+ readonly is: BooleanType;
491
+ }>;
492
+ }>;
493
+ }>>;
494
+ }>>;
495
+ readonly activeCohorts: import("@elaraai/east").SetType<StringType>;
496
+ readonly breakdown: OptionType<StructType<{
497
+ readonly fieldId: StringType;
498
+ readonly limit: OptionType<import("@elaraai/east").IntegerType>;
499
+ }>>;
500
+ readonly search: OptionType<StringType>;
501
+ readonly visible: OptionType<import("@elaraai/east").SetType<StringType>>;
502
+ readonly selectedIndex: OptionType<import("@elaraai/east").IntegerType>;
503
+ }>>;
504
+ readonly write: FunctionType<[StructType<{
505
+ readonly range: OptionType<VariantType<{
506
+ readonly datetime: StructType<{
507
+ readonly from: import("@elaraai/east").DateTimeType;
508
+ readonly to: import("@elaraai/east").DateTimeType;
509
+ }>;
510
+ readonly datetimePreset: VariantType<{
511
+ readonly today: NullType;
512
+ readonly last7d: NullType;
513
+ readonly last30d: NullType;
514
+ readonly last90d: NullType;
515
+ readonly ytd: NullType;
516
+ }>;
517
+ readonly integer: StructType<{
518
+ readonly from: import("@elaraai/east").IntegerType;
519
+ readonly to: import("@elaraai/east").IntegerType;
520
+ }>;
521
+ readonly float: StructType<{
522
+ readonly from: FloatType;
523
+ readonly to: FloatType;
524
+ }>;
525
+ }>>;
526
+ readonly compare: OptionType<VariantType<{
527
+ readonly previousPeriod: NullType;
528
+ readonly previousYear: NullType;
529
+ }>>;
530
+ readonly filters: ArrayType<VariantType<{
531
+ readonly string: StructType<{
532
+ readonly fieldId: StringType;
533
+ readonly op: VariantType<{
534
+ readonly eq: StringType;
535
+ readonly neq: StringType;
536
+ readonly in: import("@elaraai/east").SetType<StringType>;
537
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
538
+ readonly contains: StringType;
539
+ readonly matches: StringType;
540
+ readonly startsWith: StringType;
541
+ readonly endsWith: StringType;
542
+ readonly isEmpty: NullType;
543
+ readonly isNotEmpty: NullType;
544
+ }>;
545
+ }>;
546
+ readonly integer: StructType<{
547
+ readonly fieldId: StringType;
548
+ readonly op: VariantType<{
549
+ readonly eq: import("@elaraai/east").IntegerType;
550
+ readonly neq: import("@elaraai/east").IntegerType;
551
+ readonly lt: import("@elaraai/east").IntegerType;
552
+ readonly lte: import("@elaraai/east").IntegerType;
553
+ readonly gt: import("@elaraai/east").IntegerType;
554
+ readonly gte: import("@elaraai/east").IntegerType;
555
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
556
+ }>;
557
+ }>;
558
+ readonly float: StructType<{
559
+ readonly fieldId: StringType;
560
+ readonly op: VariantType<{
561
+ readonly lt: FloatType;
562
+ readonly lte: FloatType;
563
+ readonly gt: FloatType;
564
+ readonly gte: FloatType;
565
+ }>;
566
+ }>;
567
+ readonly datetime: StructType<{
568
+ readonly fieldId: StringType;
569
+ readonly op: VariantType<{
570
+ readonly before: import("@elaraai/east").DateTimeType;
571
+ readonly after: import("@elaraai/east").DateTimeType;
572
+ readonly between: StructType<{
573
+ readonly from: import("@elaraai/east").DateTimeType;
574
+ readonly to: import("@elaraai/east").DateTimeType;
575
+ }>;
576
+ }>;
577
+ }>;
578
+ readonly boolean: StructType<{
579
+ readonly fieldId: StringType;
580
+ readonly op: VariantType<{
581
+ readonly is: BooleanType;
582
+ }>;
583
+ }>;
584
+ }>>;
585
+ readonly cohorts: ArrayType<StructType<{
586
+ readonly id: StringType;
587
+ readonly name: StringType;
588
+ readonly filters: ArrayType<VariantType<{
589
+ readonly string: StructType<{
590
+ readonly fieldId: StringType;
591
+ readonly op: VariantType<{
592
+ readonly eq: StringType;
593
+ readonly neq: StringType;
594
+ readonly in: import("@elaraai/east").SetType<StringType>;
595
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
596
+ readonly contains: StringType;
597
+ readonly matches: StringType;
598
+ readonly startsWith: StringType;
599
+ readonly endsWith: StringType;
600
+ readonly isEmpty: NullType;
601
+ readonly isNotEmpty: NullType;
602
+ }>;
603
+ }>;
604
+ readonly integer: StructType<{
605
+ readonly fieldId: StringType;
606
+ readonly op: VariantType<{
607
+ readonly eq: import("@elaraai/east").IntegerType;
608
+ readonly neq: import("@elaraai/east").IntegerType;
609
+ readonly lt: import("@elaraai/east").IntegerType;
610
+ readonly lte: import("@elaraai/east").IntegerType;
611
+ readonly gt: import("@elaraai/east").IntegerType;
612
+ readonly gte: import("@elaraai/east").IntegerType;
613
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
614
+ }>;
615
+ }>;
616
+ readonly float: StructType<{
617
+ readonly fieldId: StringType;
618
+ readonly op: VariantType<{
619
+ readonly lt: FloatType;
620
+ readonly lte: FloatType;
621
+ readonly gt: FloatType;
622
+ readonly gte: FloatType;
623
+ }>;
624
+ }>;
625
+ readonly datetime: StructType<{
626
+ readonly fieldId: StringType;
627
+ readonly op: VariantType<{
628
+ readonly before: import("@elaraai/east").DateTimeType;
629
+ readonly after: import("@elaraai/east").DateTimeType;
630
+ readonly between: StructType<{
631
+ readonly from: import("@elaraai/east").DateTimeType;
632
+ readonly to: import("@elaraai/east").DateTimeType;
633
+ }>;
634
+ }>;
635
+ }>;
636
+ readonly boolean: StructType<{
637
+ readonly fieldId: StringType;
638
+ readonly op: VariantType<{
639
+ readonly is: BooleanType;
640
+ }>;
641
+ }>;
642
+ }>>;
643
+ }>>;
644
+ readonly activeCohorts: import("@elaraai/east").SetType<StringType>;
645
+ readonly breakdown: OptionType<StructType<{
646
+ readonly fieldId: StringType;
647
+ readonly limit: OptionType<import("@elaraai/east").IntegerType>;
648
+ }>>;
649
+ readonly search: OptionType<StringType>;
650
+ readonly visible: OptionType<import("@elaraai/east").SetType<StringType>>;
651
+ readonly selectedIndex: OptionType<import("@elaraai/east").IntegerType>;
652
+ }>], NullType>;
653
+ readonly setRange: FunctionType<[OptionType<VariantType<{
654
+ readonly datetime: StructType<{
655
+ readonly from: import("@elaraai/east").DateTimeType;
656
+ readonly to: import("@elaraai/east").DateTimeType;
657
+ }>;
658
+ readonly datetimePreset: VariantType<{
659
+ readonly today: NullType;
660
+ readonly last7d: NullType;
661
+ readonly last30d: NullType;
662
+ readonly last90d: NullType;
663
+ readonly ytd: NullType;
664
+ }>;
665
+ readonly integer: StructType<{
666
+ readonly from: import("@elaraai/east").IntegerType;
667
+ readonly to: import("@elaraai/east").IntegerType;
668
+ }>;
669
+ readonly float: StructType<{
670
+ readonly from: FloatType;
671
+ readonly to: FloatType;
672
+ }>;
673
+ }>>], NullType>;
674
+ readonly setCompare: FunctionType<[OptionType<VariantType<{
675
+ readonly previousPeriod: NullType;
676
+ readonly previousYear: NullType;
677
+ }>>], NullType>;
678
+ readonly addFilter: FunctionType<[VariantType<{
679
+ readonly string: StructType<{
680
+ readonly fieldId: StringType;
681
+ readonly op: VariantType<{
682
+ readonly eq: StringType;
683
+ readonly neq: StringType;
684
+ readonly in: import("@elaraai/east").SetType<StringType>;
685
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
686
+ readonly contains: StringType;
687
+ readonly matches: StringType;
688
+ readonly startsWith: StringType;
689
+ readonly endsWith: StringType;
690
+ readonly isEmpty: NullType;
691
+ readonly isNotEmpty: NullType;
692
+ }>;
693
+ }>;
694
+ readonly integer: StructType<{
695
+ readonly fieldId: StringType;
696
+ readonly op: VariantType<{
697
+ readonly eq: import("@elaraai/east").IntegerType;
698
+ readonly neq: import("@elaraai/east").IntegerType;
699
+ readonly lt: import("@elaraai/east").IntegerType;
700
+ readonly lte: import("@elaraai/east").IntegerType;
701
+ readonly gt: import("@elaraai/east").IntegerType;
702
+ readonly gte: import("@elaraai/east").IntegerType;
703
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
704
+ }>;
705
+ }>;
706
+ readonly float: StructType<{
707
+ readonly fieldId: StringType;
708
+ readonly op: VariantType<{
709
+ readonly lt: FloatType;
710
+ readonly lte: FloatType;
711
+ readonly gt: FloatType;
712
+ readonly gte: FloatType;
713
+ }>;
714
+ }>;
715
+ readonly datetime: StructType<{
716
+ readonly fieldId: StringType;
717
+ readonly op: VariantType<{
718
+ readonly before: import("@elaraai/east").DateTimeType;
719
+ readonly after: import("@elaraai/east").DateTimeType;
720
+ readonly between: StructType<{
721
+ readonly from: import("@elaraai/east").DateTimeType;
722
+ readonly to: import("@elaraai/east").DateTimeType;
723
+ }>;
724
+ }>;
725
+ }>;
726
+ readonly boolean: StructType<{
727
+ readonly fieldId: StringType;
728
+ readonly op: VariantType<{
729
+ readonly is: BooleanType;
730
+ }>;
731
+ }>;
732
+ }>], NullType>;
733
+ readonly removeFilter: FunctionType<[import("@elaraai/east").IntegerType], NullType>;
734
+ readonly clearFilters: FunctionType<[], NullType>;
735
+ readonly defineCohort: FunctionType<[StructType<{
736
+ readonly id: StringType;
737
+ readonly name: StringType;
738
+ readonly filters: ArrayType<VariantType<{
739
+ readonly string: StructType<{
740
+ readonly fieldId: StringType;
741
+ readonly op: VariantType<{
742
+ readonly eq: StringType;
743
+ readonly neq: StringType;
744
+ readonly in: import("@elaraai/east").SetType<StringType>;
745
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
746
+ readonly contains: StringType;
747
+ readonly matches: StringType;
748
+ readonly startsWith: StringType;
749
+ readonly endsWith: StringType;
750
+ readonly isEmpty: NullType;
751
+ readonly isNotEmpty: NullType;
752
+ }>;
753
+ }>;
754
+ readonly integer: StructType<{
755
+ readonly fieldId: StringType;
756
+ readonly op: VariantType<{
757
+ readonly eq: import("@elaraai/east").IntegerType;
758
+ readonly neq: import("@elaraai/east").IntegerType;
759
+ readonly lt: import("@elaraai/east").IntegerType;
760
+ readonly lte: import("@elaraai/east").IntegerType;
761
+ readonly gt: import("@elaraai/east").IntegerType;
762
+ readonly gte: import("@elaraai/east").IntegerType;
763
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
764
+ }>;
765
+ }>;
766
+ readonly float: StructType<{
767
+ readonly fieldId: StringType;
768
+ readonly op: VariantType<{
769
+ readonly lt: FloatType;
770
+ readonly lte: FloatType;
771
+ readonly gt: FloatType;
772
+ readonly gte: FloatType;
773
+ }>;
774
+ }>;
775
+ readonly datetime: StructType<{
776
+ readonly fieldId: StringType;
777
+ readonly op: VariantType<{
778
+ readonly before: import("@elaraai/east").DateTimeType;
779
+ readonly after: import("@elaraai/east").DateTimeType;
780
+ readonly between: StructType<{
781
+ readonly from: import("@elaraai/east").DateTimeType;
782
+ readonly to: import("@elaraai/east").DateTimeType;
783
+ }>;
784
+ }>;
785
+ }>;
786
+ readonly boolean: StructType<{
787
+ readonly fieldId: StringType;
788
+ readonly op: VariantType<{
789
+ readonly is: BooleanType;
790
+ }>;
791
+ }>;
792
+ }>>;
793
+ }>], NullType>;
794
+ readonly updateCohort: FunctionType<[StringType, StructType<{
795
+ readonly id: StringType;
796
+ readonly name: StringType;
797
+ readonly filters: ArrayType<VariantType<{
798
+ readonly string: StructType<{
799
+ readonly fieldId: StringType;
800
+ readonly op: VariantType<{
801
+ readonly eq: StringType;
802
+ readonly neq: StringType;
803
+ readonly in: import("@elaraai/east").SetType<StringType>;
804
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
805
+ readonly contains: StringType;
806
+ readonly matches: StringType;
807
+ readonly startsWith: StringType;
808
+ readonly endsWith: StringType;
809
+ readonly isEmpty: NullType;
810
+ readonly isNotEmpty: NullType;
811
+ }>;
812
+ }>;
813
+ readonly integer: StructType<{
814
+ readonly fieldId: StringType;
815
+ readonly op: VariantType<{
816
+ readonly eq: import("@elaraai/east").IntegerType;
817
+ readonly neq: import("@elaraai/east").IntegerType;
818
+ readonly lt: import("@elaraai/east").IntegerType;
819
+ readonly lte: import("@elaraai/east").IntegerType;
820
+ readonly gt: import("@elaraai/east").IntegerType;
821
+ readonly gte: import("@elaraai/east").IntegerType;
822
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
823
+ }>;
824
+ }>;
825
+ readonly float: StructType<{
826
+ readonly fieldId: StringType;
827
+ readonly op: VariantType<{
828
+ readonly lt: FloatType;
829
+ readonly lte: FloatType;
830
+ readonly gt: FloatType;
831
+ readonly gte: FloatType;
832
+ }>;
833
+ }>;
834
+ readonly datetime: StructType<{
835
+ readonly fieldId: StringType;
836
+ readonly op: VariantType<{
837
+ readonly before: import("@elaraai/east").DateTimeType;
838
+ readonly after: import("@elaraai/east").DateTimeType;
839
+ readonly between: StructType<{
840
+ readonly from: import("@elaraai/east").DateTimeType;
841
+ readonly to: import("@elaraai/east").DateTimeType;
842
+ }>;
843
+ }>;
844
+ }>;
845
+ readonly boolean: StructType<{
846
+ readonly fieldId: StringType;
847
+ readonly op: VariantType<{
848
+ readonly is: BooleanType;
849
+ }>;
850
+ }>;
851
+ }>>;
852
+ }>], NullType>;
853
+ readonly removeCohort: FunctionType<[StringType], NullType>;
854
+ readonly toggleCohort: FunctionType<[StringType], NullType>;
855
+ readonly setBreakdown: FunctionType<[OptionType<StructType<{
856
+ readonly fieldId: StringType;
857
+ readonly limit: OptionType<import("@elaraai/east").IntegerType>;
858
+ }>>], NullType>;
859
+ readonly setSearch: FunctionType<[OptionType<StringType>], NullType>;
860
+ readonly setVisible: FunctionType<[OptionType<import("@elaraai/east").SetType<StringType>>], NullType>;
861
+ readonly select: FunctionType<[OptionType<import("@elaraai/east").IntegerType>], NullType>;
862
+ readonly isActive: FunctionType<[], BooleanType>;
863
+ readonly activeCount: FunctionType<[], import("@elaraai/east").IntegerType>;
864
+ readonly dimensions: FunctionType<[], ArrayType<StructType<{
865
+ readonly fieldId: StringType;
866
+ readonly label: StringType;
867
+ }>>>;
868
+ readonly fields: FunctionType<[], ArrayType<StructType<{
869
+ readonly fieldId: StringType;
870
+ readonly label: StringType;
871
+ readonly kind: StringType;
872
+ readonly hints: ArrayType<StringType>;
873
+ readonly format: OptionType<VariantType<{
874
+ readonly number: NullType;
875
+ readonly currency: StructType<{
876
+ readonly code: StringType;
877
+ readonly compact: BooleanType;
878
+ }>;
879
+ readonly percent: NullType;
880
+ readonly compact: NullType;
881
+ readonly date: StringType;
882
+ readonly time: StringType;
883
+ readonly datetime: StringType;
884
+ }>>;
885
+ }>>>;
886
+ readonly searchFieldIds: FunctionType<[], ArrayType<StringType>>;
887
+ readonly rangeFieldId: FunctionType<[], OptionType<StringType>>;
888
+ readonly totalCount: FunctionType<[], import("@elaraai/east").IntegerType>;
889
+ readonly resultCount: FunctionType<[], import("@elaraai/east").IntegerType>;
890
+ readonly groups: FunctionType<[], ArrayType<StructType<{
891
+ readonly key: StringType;
892
+ readonly count: import("@elaraai/east").IntegerType;
893
+ readonly color: StringType;
894
+ }>>>;
895
+ readonly series: FunctionType<[StringType, StringType], ArrayType<StructType<{
896
+ readonly key: StringType;
897
+ readonly color: StringType;
898
+ readonly points: ArrayType<StructType<{
899
+ readonly x: VariantType<{
900
+ readonly category: StringType;
901
+ readonly number: FloatType;
902
+ readonly time: import("@elaraai/east").DateTimeType;
903
+ }>;
904
+ readonly value: FloatType;
905
+ readonly size: OptionType<FloatType>;
906
+ readonly color: OptionType<StringType>;
907
+ }>>;
908
+ }>>>;
909
+ readonly matches: FunctionType<[], ArrayType<StructType<{
910
+ readonly id: StringType;
911
+ readonly label: StringType;
912
+ readonly meta: OptionType<StringType>;
913
+ }>>>;
914
+ readonly cohortCounts: FunctionType<[], DictType<StringType, import("@elaraai/east").IntegerType>>;
915
+ readonly toggleFilter: FunctionType<[VariantType<{
916
+ readonly string: StructType<{
917
+ readonly fieldId: StringType;
918
+ readonly op: VariantType<{
919
+ readonly eq: StringType;
920
+ readonly neq: StringType;
921
+ readonly in: import("@elaraai/east").SetType<StringType>;
922
+ readonly notIn: import("@elaraai/east").SetType<StringType>;
923
+ readonly contains: StringType;
924
+ readonly matches: StringType;
925
+ readonly startsWith: StringType;
926
+ readonly endsWith: StringType;
927
+ readonly isEmpty: NullType;
928
+ readonly isNotEmpty: NullType;
929
+ }>;
930
+ }>;
931
+ readonly integer: StructType<{
932
+ readonly fieldId: StringType;
933
+ readonly op: VariantType<{
934
+ readonly eq: import("@elaraai/east").IntegerType;
935
+ readonly neq: import("@elaraai/east").IntegerType;
936
+ readonly lt: import("@elaraai/east").IntegerType;
937
+ readonly lte: import("@elaraai/east").IntegerType;
938
+ readonly gt: import("@elaraai/east").IntegerType;
939
+ readonly gte: import("@elaraai/east").IntegerType;
940
+ readonly in: import("@elaraai/east").SetType<import("@elaraai/east").IntegerType>;
941
+ }>;
942
+ }>;
943
+ readonly float: StructType<{
944
+ readonly fieldId: StringType;
945
+ readonly op: VariantType<{
946
+ readonly lt: FloatType;
947
+ readonly lte: FloatType;
948
+ readonly gt: FloatType;
949
+ readonly gte: FloatType;
950
+ }>;
951
+ }>;
952
+ readonly datetime: StructType<{
953
+ readonly fieldId: StringType;
954
+ readonly op: VariantType<{
955
+ readonly before: import("@elaraai/east").DateTimeType;
956
+ readonly after: import("@elaraai/east").DateTimeType;
957
+ readonly between: StructType<{
958
+ readonly from: import("@elaraai/east").DateTimeType;
959
+ readonly to: import("@elaraai/east").DateTimeType;
960
+ }>;
961
+ }>;
962
+ }>;
963
+ readonly boolean: StructType<{
964
+ readonly fieldId: StringType;
965
+ readonly op: VariantType<{
966
+ readonly is: BooleanType;
967
+ }>;
968
+ }>;
969
+ }>], NullType>;
970
+ readonly facetGroups: FunctionType<[], ArrayType<StructType<{
971
+ readonly key: StringType;
972
+ readonly count: import("@elaraai/east").IntegerType;
973
+ readonly color: StringType;
974
+ }>>>;
975
+ }>;
976
+ readonly affordances: ArrayType<VariantType<{
977
+ readonly filter: NullType;
978
+ readonly search: NullType;
979
+ readonly breakdown: NullType;
980
+ readonly range: NullType;
981
+ readonly cohort: NullType;
982
+ readonly brush: NullType;
983
+ readonly presets: NullType;
984
+ readonly legend: NullType;
985
+ }>>;
986
+ }>>;
987
+ /** Optional layout style (height / maxHeight / virtualization) */
988
+ readonly style: OptionType<StructType<{
989
+ /** Optional CSS height (e.g. `"480px"`, `"100%"`) */
990
+ readonly height: OptionType<StringType>;
991
+ /** Optional CSS max-height */
992
+ readonly maxHeight: OptionType<StringType>;
993
+ /** Whether rows virtualize inside the scroll region (default `true`) */
994
+ readonly virtualization: OptionType<BooleanType>;
995
+ }>>;
324
996
  }>;
325
997
  /**
326
998
  * Type representing the Library component.