@nimbus-ds/patterns 1.0.0 → 1.1.0-rc.2

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/dist/index.d.ts CHANGED
@@ -1,244 +1,447 @@
1
1
  // Generated by dts-bundle-generator v8.0.0
2
2
 
3
- import { BoxProps, ButtonProps, CheckboxProps, IconButtonProps, InputProps, Link, PaginationProps, PopoverProps, RadioProps, SelectProps, SidebarProps, TableProps, TableRowProps, TextareaProps, ThumbnailProps, ToggleProps } from '@nimbus-ds/components';
3
+ import { BoxProperties, ButtonProperties, CheckboxProperties, CheckboxProps, IconButtonProperties, IconButtonProps, InputProperties, PaginationProperties, PopoverProperties, RadioProperties, SelectProperties, SidebarProperties, TableProperties, TableRowProperties, TextareaProperties, ThumbnailProperties, ToggleProperties } from '@nimbus-ds/components';
4
4
  import { IconProps } from '@nimbus-ds/icons';
5
5
  import { PolymorphicForwardRefComponent } from '@nimbus-ds/typings';
6
6
  import React from 'react';
7
7
  import { ButtonHTMLAttributes, ComponentPropsWithRef, FC, HTMLAttributes, MouseEventHandler, ReactNode } from 'react';
8
8
 
9
- export interface AppShellHeaderProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
10
- /** Optional content for the left-hand-side slot */
9
+ export interface AppShellHeaderProperties {
10
+ /**
11
+ * Optional content for the left-hand-side slot.
12
+ * @TJS-type React.ReactNode
13
+ */
11
14
  leftSlot?: ReactNode;
12
- /** Optional content for the right-hand-side slot */
15
+ /**
16
+ * Optional content for the right-hand-side slot.
17
+ * @TJS-type React.ReactNode
18
+ */
13
19
  rightSlot?: ReactNode;
14
20
  }
21
+ export type AppShellHeaderProps = AppShellHeaderProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
15
22
  declare const AppShellHeader: React.FC<AppShellHeaderProps>;
16
23
  export interface AppShellComponents {
17
24
  Header: typeof AppShellHeader;
18
25
  }
19
- export interface AppShellProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
20
- /** Content for the body of the application */
26
+ export interface AppShellProperties {
27
+ /**
28
+ * Content for the body of the application.
29
+ * @TJS-type React.ReactNode
30
+ */
21
31
  children: ReactNode;
22
- /** Optional slot for left sidebar menu */
32
+ /**
33
+ * Optional slot for left sidebar menu.
34
+ * @TJS-type React.ReactNode
35
+ */
23
36
  menu?: ReactNode;
24
37
  }
38
+ export type AppShellProps = AppShellProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
25
39
  export declare const AppShell: React.FC<AppShellProps> & AppShellComponents;
26
- export interface CalloutCardProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
27
- /** CalloutCard color */
40
+ export interface CalloutCardProperties {
41
+ /**
42
+ * CalloutCard color.
43
+ */
28
44
  appearance: "primary" | "success" | "warning" | "danger" | "neutral";
45
+ /**
46
+ * The SVG contents to display in the Icon.
47
+ * @TJS-type React.FC<IconProps>
48
+ */
29
49
  icon: FC<IconProps>;
30
- /** Title */
50
+ /**
51
+ * Title.
52
+ */
31
53
  title: string;
32
- /** Subtitle */
54
+ /**
55
+ * Subtitle.
56
+ */
33
57
  subtitle: string;
34
- /** Subtitle */
35
- link?: ComponentPropsWithRef<typeof Link>;
36
- /** Event fired when clicking the component */
58
+ /**
59
+ * Slot intended to position the Callout Card link correctly.
60
+ * @TJS-type <Link />
61
+ */
62
+ link?: ReactNode;
63
+ /**
64
+ * Event fired when clicking the component.
65
+ * @TJS-type () => void;
66
+ */
37
67
  onClick?: MouseEventHandler<HTMLElement>;
38
68
  }
69
+ export type CalloutCardProps = CalloutCardProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
39
70
  export declare const CalloutCard: React.FC<CalloutCardProps>;
40
- export interface DataListRowProperties {
41
- /** Optional padding for the row */
71
+ export interface DataListRowProperties extends Omit<BoxProperties, "padding"> {
72
+ /**
73
+ * Optional padding for the row.
74
+ * @default base
75
+ */
42
76
  padding?: "small" | "base" | "none";
43
- /** Content of the row */
77
+ /**
78
+ * Content of the row.
79
+ * @TJS-type React.ReactNode
80
+ */
44
81
  children: ReactNode;
45
82
  }
46
- export type DataListRowProps = DataListRowProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & Omit<BoxProps, "padding">;
83
+ export type DataListRowProps = DataListRowProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
47
84
  declare const DataListRow: React.FC<DataListRowProps>;
48
85
  export interface DataListComponents {
49
86
  Row: typeof DataListRow;
50
87
  }
51
- export interface DataListProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
52
- /** Content of the List component */
88
+ export interface DataListProperties {
89
+ /**
90
+ * Content of the List component.
91
+ * @TJS-type React.ReactNode
92
+ */
53
93
  children: ReactNode;
54
94
  }
95
+ export type DataListProps = DataListProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
55
96
  export declare const DataList: React.FC<DataListProps> & DataListComponents;
56
- export interface DataTableBulkActionsProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
57
- /** Properties of the checkbox element rendered in the Bulk Actions component */
58
- checkbox: Omit<CheckboxProps, "label" | "id">;
59
- /** Optional link element rendered next to the Bulk Actions controller */
97
+ export interface DataTableBulkActionsProperties {
98
+ /**
99
+ * Properties of the checkbox element rendered in the Bulk Actions component.
100
+ */
101
+ checkbox: Omit<CheckboxProperties, "label" | "id">;
102
+ /**
103
+ * Optional link element rendered next to the Bulk Actions controller.
104
+ * @TJS-type <Link />
105
+ */
60
106
  link?: ReactNode;
61
- /** Action component that controls the Bulk Actions */
107
+ /**
108
+ * Action component that controls the Bulk Actions.
109
+ * @TJS-type React.ReactNode
110
+ */
62
111
  action: ReactNode;
63
- /** Lable for the checkbox element */
112
+ /**
113
+ * Lable for the checkbox element.
114
+ */
64
115
  label: string;
65
116
  }
117
+ export type DataTableBulkActionsProps = DataTableBulkActionsProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
66
118
  declare const DataTableBulkActions: React.FC<DataTableBulkActionsProps>;
67
- export interface DataTableFooterProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
68
- /** Left-hand side text intended for displaying an item count */
119
+ export interface DataTableFooterProperties {
120
+ /**
121
+ * Left-hand side text intended for displaying an item count.
122
+ */
69
123
  itemCount: string;
70
- /** Pagination element rendered on the right-side of the footer */
71
- pagination?: PaginationProps;
124
+ /**
125
+ * Pagination element rendered on the right-side of the footer.
126
+ */
127
+ pagination?: PaginationProperties;
72
128
  }
129
+ export type DataTableFooterProps = DataTableFooterProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
73
130
  declare const DataTableFooter: React.FC<DataTableFooterProps>;
74
- export interface DataTableHeaderProps extends HTMLAttributes<HTMLElement> {
75
- /** Checkbox element rendered on the table header that controls all rows */
76
- checkbox: CheckboxProps;
77
- /** Row content */
131
+ export interface DataTableHeaderProperties {
132
+ /**
133
+ * Checkbox element rendered on the table header that controls all rows.
134
+ */
135
+ checkbox: CheckboxProperties;
136
+ /**
137
+ * Row content.
138
+ * @TJS-type React.ReactNode
139
+ */
78
140
  children: ReactNode;
79
141
  }
80
- declare const DataTableHeader: React.FC<DataTableHeaderProps>;
81
- export type DataTableRowExtends = TableRowProps & HTMLAttributes<HTMLElement>;
82
- export interface DataTableRowProps extends DataTableRowExtends {
83
- /** Checkbox element rendered on the row that controls whether the row is selected */
142
+ export type DataTableHeaderProps = DataTableHeaderProperties & {
84
143
  checkbox: CheckboxProps;
85
- /** Content of the row */
144
+ } & HTMLAttributes<HTMLElement>;
145
+ declare const DataTableHeader: React.FC<DataTableHeaderProps>;
146
+ export interface DataTableRowProperties {
147
+ /**
148
+ * Checkbox element rendered on the row that controls whether the row is selected.
149
+ */
150
+ checkbox: CheckboxProperties;
151
+ /**
152
+ * Content of the row.
153
+ * @TJS-type React.ReactNode
154
+ */
86
155
  children: ReactNode;
87
156
  }
157
+ export type DataTableRowProps = DataTableRowProperties & TableRowProperties & HTMLAttributes<HTMLElement>;
88
158
  declare const DataTableRow: React.FC<DataTableRowProps>;
89
- export type DataTableExtend = TableProps & HTMLAttributes<HTMLElement>;
90
159
  export interface DataTableComponents {
91
160
  BulkActions: typeof DataTableBulkActions;
92
161
  Header: typeof DataTableHeader;
93
162
  Footer: typeof DataTableFooter;
94
163
  Row: typeof DataTableRow;
95
164
  }
96
- export interface DataTableProps extends DataTableExtend {
97
- /** Bulk actions component rendered with a sticky position over the top of the table element */
165
+ export interface DataTableProperties {
166
+ /**
167
+ * Bulk actions component rendered with a sticky position over the top of the table element.
168
+ * @TJS-type React.ReactNode
169
+ */
98
170
  bulkActions?: ReactNode;
99
- /** Table header content */
171
+ /**
172
+ * Table header content.
173
+ * @TJS-type React.ReactNode
174
+ */
100
175
  header: ReactNode;
101
- /** Optional table footer content */
176
+ /**
177
+ * Optional table footer content.
178
+ * @TJS-type React.ReactNode
179
+ */
102
180
  footer?: ReactNode;
103
- /** Table body content */
181
+ /**
182
+ * Table body content.
183
+ * @TJS-type React.ReactNode
184
+ */
104
185
  children: ReactNode;
105
186
  }
187
+ export type DataTableProps = DataTableProperties & TableProperties & HTMLAttributes<HTMLElement>;
106
188
  export declare const DataTable: React.FC<DataTableProps> & DataTableComponents;
107
- export interface EmptyMessageProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
108
- /** Optional node that contains an illustration for the component. Will stack vertically on mobile and horizontally on desktop. */
189
+ export interface EmptyMessageProperties {
190
+ /**
191
+ * Optional node that contains an illustration for the component. Will stack vertically on mobile and horizontally on desktop.
192
+ * @TJS-type React.ReactNode
193
+ */
109
194
  illustration?: ReactNode;
110
- /** Optional icon to display on top of the text. */
195
+ /**
196
+ * Optional icon to display on top of the text.
197
+ * @TJS-type React.ReactNode
198
+ */
111
199
  icon?: ReactNode;
112
- /** Title of the component */
200
+ /**
201
+ * Title of the component.
202
+ */
113
203
  title: string;
114
- /** Optional content text for additional context. */
204
+ /**
205
+ * Optional content text for additional context.
206
+ */
115
207
  text?: string;
116
- /** Optional node to showcase buttons or actions. */
208
+ /**
209
+ * Optional node to showcase buttons or actions.
210
+ * @TJS-type React.ReactNode
211
+ */
117
212
  actions?: ReactNode;
118
213
  }
214
+ export type EmptyMessageProps = EmptyMessageProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
119
215
  export declare const EmptyMessage: React.FC<EmptyMessageProps>;
120
- export type FormFieldSelectProps = Omit<FormFieldProps, "children"> & Omit<SelectProps, "appearance"> & HTMLAttributes<HTMLElement>;
216
+ export type FormFieldSelectProperties = Omit<FormFieldProperties, "children"> & Omit<SelectProperties, "appearance">;
217
+ export type FormFieldSelectProps = FormFieldSelectProperties & HTMLAttributes<HTMLElement>;
121
218
  declare const FormFieldSelect: React.FC<FormFieldSelectProps>;
122
- export type FormFieldTextareaProps = Omit<FormFieldProps, "children"> & Omit<TextareaProps, "appearance"> & HTMLAttributes<HTMLElement>;
219
+ export type FormFieldTextareaProperties = Omit<FormFieldProperties, "children"> & Omit<TextareaProperties, "appearance">;
220
+ export type FormFieldTextareaProps = FormFieldTextareaProperties & HTMLAttributes<HTMLElement>;
123
221
  declare const FormFieldTextarea: React.FC<FormFieldTextareaProps>;
124
- export type FormFieldInputProps = Omit<FormFieldProps, "children"> & Omit<InputProps, "appearance"> & HTMLAttributes<HTMLElement>;
222
+ export type FormFieldInputProperties = Omit<FormFieldProperties, "children"> & Omit<InputProperties, "appearance">;
223
+ export type FormFieldInputProps = FormFieldInputProperties & HTMLAttributes<HTMLElement>;
125
224
  declare const FormFieldInput: React.FC<FormFieldInputProps>;
126
225
  export interface FormFieldComponents {
127
226
  Select: typeof FormFieldSelect;
128
227
  Textarea: typeof FormFieldTextarea;
129
228
  Input: typeof FormFieldInput;
130
229
  }
131
- export interface FormFieldProps extends HTMLAttributes<HTMLElement> {
132
- /** Optional label for the field component */
230
+ export interface FormFieldProperties {
231
+ /**
232
+ * Optional label for the field component.
233
+ * @TJS-type React.ReactNode
234
+ */
133
235
  label?: ReactNode;
134
- /** Help text displaying optional hints or validation messages under the field */
236
+ /**
237
+ * Help text displaying optional hints or validation messages under the field.
238
+ */
135
239
  helpText?: string;
136
- /** Icon supporting the help text message */
240
+ /**
241
+ * Icon supporting the help text message.
242
+ * @TJS-type React.FC<IconProps>
243
+ */
137
244
  helpIcon?: FC<IconProps>;
138
- /** Appearance of the field and help text elements */
245
+ /**
246
+ * Appearance of the field and help text elements.
247
+ * @default none
248
+ */
139
249
  appearance?: "danger" | "warning" | "success" | "none";
140
- /** Control to conditionally show the help text and icon */
250
+ /**
251
+ * Control to conditionally show the help text and icon.
252
+ * @default false
253
+ */
141
254
  showHelpText?: boolean;
142
- /** Content of the field */
255
+ /**
256
+ * Content of the field.
257
+ * @TJS-type React.ReactNode
258
+ */
143
259
  children: ReactNode;
144
260
  }
261
+ export type FormFieldProps = FormFieldProperties & HTMLAttributes<HTMLElement>;
145
262
  export declare const FormField: React.FC<FormFieldProps> & FormFieldComponents;
146
- export interface InteractiveListStructureProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
147
- /** Title of the list item element. Also used to generate the ID for the interactive element */
263
+ export interface InteractiveListStructureProperties {
264
+ /**
265
+ * Title of the list item element. Also used to generate the ID for the interactive element.
266
+ */
148
267
  title: string;
149
- /** Determines if the title is visible or not */
268
+ /**
269
+ * Determines if the title is visible or not.
270
+ */
150
271
  showTitle?: boolean;
151
- /** Description of the list item element */
272
+ /**
273
+ * Description of the list item element.
274
+ */
152
275
  description?: string;
153
- /** Custom content for the list item element */
276
+ /**
277
+ * Custom content for the list item element.
278
+ * @TJS-type React.ReactNode
279
+ */
154
280
  children?: ReactNode;
155
281
  }
282
+ export type InteractiveListStructureProps = InteractiveListStructureProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
156
283
  declare const InteractiveListStructure: React.FC<InteractiveListStructureProps>;
157
- export interface InteractiveListCheckboxItemProperties {
158
- /** Checkbox props inherited from Nimbus components */
159
- checkbox: CheckboxProps;
160
- }
161
- export type InteractiveListCheckboxItemProps = InteractiveListCheckboxItemProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & InteractiveListStructureProps;
284
+ export type InteractiveListStructureSkeletonProperties = InteractiveListStructureProperties;
285
+ export type InteractiveListStructureSkeletonProps = InteractiveListStructureSkeletonProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
286
+ declare const InteractiveListStructureSkeleton: React.FC<InteractiveListStructureSkeletonProps>;
287
+ export interface InteractiveListCheckboxItemProperties extends InteractiveListStructureProperties {
288
+ /**
289
+ * Checkbox props inherited from Nimbus components.
290
+ */
291
+ checkbox: CheckboxProperties;
292
+ }
293
+ export type InteractiveListCheckboxItemProps = InteractiveListCheckboxItemProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
162
294
  declare const InteractiveListCheckboxItem: React.FC<InteractiveListCheckboxItemProps>;
163
- export interface InteractiveListRadioItemProperties {
164
- /** Radio props inherited from Nimbus components */
165
- radio: RadioProps;
166
- }
167
- export type InteractiveListRadioItemProps = InteractiveListRadioItemProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & InteractiveListStructureProps;
295
+ export type InteractiveListCheckboxItemSkeletonProperties = InteractiveListStructureSkeletonProperties;
296
+ export type InteractiveListCheckboxItemSkeletonProps = InteractiveListCheckboxItemSkeletonProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
297
+ declare const InteractiveListCheckboxItemSkeleton: React.FC<InteractiveListCheckboxItemSkeletonProps>;
298
+ export interface InteractiveListRadioItemProperties extends InteractiveListStructureProperties {
299
+ /**
300
+ * Radio props inherited from Nimbus components.
301
+ */
302
+ radio: RadioProperties;
303
+ }
304
+ export type InteractiveListRadioItemProps = InteractiveListRadioItemProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
168
305
  declare const InteractiveListRadioItem: React.FC<InteractiveListRadioItemProps>;
169
- export interface InteractiveListToggleItemProperties {
170
- /** Toggle props inherited from Nimbus components */
171
- toggle: ToggleProps;
172
- }
173
- export type InteractiveListToggleItemProps = InteractiveListToggleItemProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & InteractiveListStructureProps;
306
+ export type InteractiveListRadioItemSkeletonProperties = InteractiveListStructureSkeletonProperties;
307
+ export type InteractiveListRadioItemSkeletonProps = InteractiveListRadioItemSkeletonProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
308
+ declare const InteractiveListRadioItemSkeleton: React.FC<InteractiveListRadioItemSkeletonProps>;
309
+ export interface InteractiveListToggleItemProperties extends InteractiveListStructureProperties {
310
+ /**
311
+ * Toggle props inherited from Nimbus components.
312
+ */
313
+ toggle: ToggleProperties;
314
+ }
315
+ export type InteractiveListToggleItemProps = InteractiveListToggleItemProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
174
316
  declare const InteractiveListToggleItem: React.FC<InteractiveListToggleItemProps>;
175
- export interface InteractiveListButtonItemProperties {
176
- /** Button props inherited from Nimbus components */
317
+ export interface InteractiveListToggleItemSkeletonProperties extends InteractiveListStructureProperties {
318
+ /**
319
+ * Toggle props inherited from Nimbus components.
320
+ */
321
+ toggle: ToggleProperties;
322
+ }
323
+ export type InteractiveListToggleItemSkeletonProps = InteractiveListToggleItemSkeletonProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
324
+ declare const InteractiveListToggleItemSkeleton: React.FC<InteractiveListToggleItemSkeletonProps>;
325
+ export interface InteractiveListButtonItemProperties extends InteractiveListStructureProperties {
326
+ /**
327
+ * Button props inherited from Nimbus components
328
+ */
329
+ iconButton: Omit<IconButtonProperties, "backgroundColor" | "borderColor" | "size" | "source">;
330
+ }
331
+ export type InteractiveListButtonItemProps = InteractiveListButtonItemProperties & {
177
332
  iconButton: Omit<IconButtonProps, "backgroundColor" | "borderColor" | "size" | "source">;
178
- }
179
- export type InteractiveListButtonItemProps = InteractiveListButtonItemProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & InteractiveListStructureProps;
333
+ } & Omit<HTMLAttributes<HTMLElement>, "color">;
180
334
  declare const InteractiveListButtonItem: React.FC<InteractiveListButtonItemProps>;
335
+ export type InteractiveListButtonItemSkeletonProperties = InteractiveListStructureSkeletonProperties;
336
+ export type InteractiveListButtonItemSkeletonProps = InteractiveListButtonItemSkeletonProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
337
+ declare const InteractiveListButtonItemSkeleton: React.FC<InteractiveListButtonItemSkeletonProps>;
181
338
  export interface InteractiveListComponents {
182
339
  Structure: typeof InteractiveListStructure;
340
+ StructureSkeleton: typeof InteractiveListStructureSkeleton;
183
341
  ButtonItem: typeof InteractiveListButtonItem;
342
+ ButtonItemSkeleton: typeof InteractiveListButtonItemSkeleton;
184
343
  CheckboxItem: typeof InteractiveListCheckboxItem;
344
+ CheckboxItemSkeleton: typeof InteractiveListCheckboxItemSkeleton;
185
345
  ToggleItem: typeof InteractiveListToggleItem;
346
+ ToggleItemSkeleton: typeof InteractiveListToggleItemSkeleton;
186
347
  RadioItem: typeof InteractiveListRadioItem;
348
+ RadioItemSkeleton: typeof InteractiveListRadioItemSkeleton;
187
349
  }
188
- export interface InteractiveListProps extends HTMLAttributes<HTMLElement> {
189
- /** Content of the InteractiveList */
350
+ export interface InteractiveListProperties {
351
+ /**
352
+ * Content of the InteractiveList
353
+ * @TJS-type React.ReactNode
354
+ */
190
355
  children: ReactNode;
191
356
  }
357
+ export type InteractiveListProps = InteractiveListProperties & HTMLAttributes<HTMLElement>;
192
358
  export declare const InteractiveList: React.FC<InteractiveListProps> & InteractiveListComponents;
193
- export interface LayoutSectionProperties {
194
- /** Content of the section body */
359
+ export interface LayoutSectionProperties extends Omit<BoxProperties, "children" | "boxSizing" | "display" | "flexDirection"> {
360
+ /**
361
+ * Content of the section body.
362
+ * @TJS-type React.ReactNode
363
+ */
195
364
  children: ReactNode;
196
365
  }
197
- export type LayoutSectionProps = LayoutSectionProperties & Omit<BoxProps, "children" | "boxSizing" | "display" | "flexDirection"> & Omit<HTMLAttributes<HTMLElement>, "color">;
366
+ export type LayoutSectionProps = LayoutSectionProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
198
367
  declare const LayoutSection: React.FC<LayoutSectionProps>;
199
368
  export interface LayoutComponents {
200
369
  Section: typeof LayoutSection;
201
370
  }
202
- export interface LayoutProperties {
203
- /** Content to be rendered inside the layout. */
371
+ export interface LayoutProperties extends Omit<BoxProperties, "children" | "boxSizing" | "display" | "gridTemplateColumns"> {
372
+ /**
373
+ * Content to be rendered inside the layout.
374
+ * @TJS-type React.ReactNode
375
+ */
204
376
  children: ReactNode;
205
- /** Number of columns to be rendered for the children */
377
+ /**
378
+ * Number of columns to be rendered for the children.
379
+ */
206
380
  columns?: "1" | "2 - symmetric" | "2 - asymmetric" | "3";
207
381
  }
208
- export type LayoutProps = LayoutProperties & Omit<BoxProps, "children" | "boxSizing" | "display" | "gridTemplateColumns"> & HTMLAttributes<HTMLElement>;
382
+ export type LayoutProps = LayoutProperties & HTMLAttributes<HTMLElement>;
209
383
  export declare const Layout: React.FC<LayoutProps> & LayoutComponents;
210
- export interface MenuButtonBaseProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "color"> {
211
- /** Text label for the button */
384
+ export interface MenuButtonProperties {
385
+ /**
386
+ * Text label for the button.
387
+ */
212
388
  label: string;
213
- /** Function executed when clicking the button */
389
+ /**
390
+ * Function executed when clicking the button.
391
+ * @TJS-type () => void;
392
+ */
214
393
  onClick?: () => void;
215
- /** Sets an icon element on the left of the button */
394
+ /**
395
+ * Sets an icon element on the left of the button.
396
+ * @TJS-type React.FC<IconProps>
397
+ */
216
398
  startIcon?: FC<IconProps>;
217
- /** Sets the state of the button as active/inactive */
399
+ /**
400
+ * Sets the state of the button as active/inactive.
401
+ */
218
402
  active?: boolean;
219
- /** Inner components displayed on the right of the button component */
403
+ /**
404
+ * Inner components displayed on the right of the button component.
405
+ * @TJS-type React.ReactNode
406
+ */
220
407
  children?: ReactNode;
221
408
  }
409
+ export type MenuButtonBaseProps = MenuButtonProperties & Omit<ButtonHTMLAttributes<HTMLButtonElement>, "color">;
222
410
  export declare const MenuButton: PolymorphicForwardRefComponent<"a" | "button", MenuButtonBaseProps>;
223
411
  export type MenuButtonProps = ComponentPropsWithRef<typeof MenuButton>;
224
- export interface MenuHeaderProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
225
- /** Content of the menu header */
412
+ export interface MenuHeaderProperties {
413
+ /**
414
+ * Content of the menu header.
415
+ * @TJS-type React.ReactNode
416
+ */
226
417
  children: ReactNode;
227
418
  }
419
+ export type MenuHeaderProps = MenuHeaderProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
228
420
  declare const MenuHeader: React.FC<MenuHeaderProps>;
229
- export interface MenuBodyProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
230
- /** Content of the menu body */
421
+ export interface MenuBodyProperties {
422
+ /**
423
+ * Content of the menu body.
424
+ * @TJS-type React.ReactNode
425
+ */
231
426
  children: ReactNode;
232
427
  }
428
+ export type MenuBodyProps = MenuBodyProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
233
429
  declare const MenuBody: React.FC<MenuBodyProps>;
234
- export type MenuFooterProps = Omit<MenuButtonProps, "children">;
430
+ export type MenuFooterProperties = Omit<MenuButtonProperties, "children">;
431
+ export type MenuFooterProps = MenuFooterProperties & Omit<ButtonHTMLAttributes<HTMLButtonElement>, "color">;
235
432
  declare const MenuFooter: React.FC<MenuFooterProps>;
236
- export interface MenuSectionProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
237
- /** Optional title of the section */
433
+ export interface MenuSectionProperties {
434
+ /**
435
+ * Optional title of the section.
436
+ */
238
437
  title?: string;
239
- /** Content of the menu section */
438
+ /**
439
+ * Content of the menu section.
440
+ * @TJS-type React.ReactNode
441
+ */
240
442
  children: ReactNode;
241
443
  }
444
+ export type MenuSectionProps = MenuSectionProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
242
445
  declare const MenuSection: React.FC<MenuSectionProps>;
243
446
  export interface MenuComponents {
244
447
  Section: typeof MenuSection;
@@ -247,105 +450,183 @@ export interface MenuComponents {
247
450
  Body: typeof MenuBody;
248
451
  Footer: typeof MenuFooter;
249
452
  }
250
- export interface MenuProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
251
- /** Content of the menu */
453
+ export interface MenuProperties {
454
+ /**
455
+ * Content of the menu.
456
+ * @TJS-type React.ReactNode
457
+ */
252
458
  children: ReactNode;
253
459
  }
460
+ export type MenuProps = MenuProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
254
461
  export declare const Menu: React.FC<MenuProps> & MenuComponents;
255
- export interface NavTabsItemProperties {
256
- /** Icon element to be rendered inside the button */
462
+ export interface NavTabsItemProperties extends BoxProperties {
463
+ /**
464
+ * Icon element to be rendered inside the button.
465
+ * @TJS-type React.ReactNode
466
+ */
257
467
  icon: ReactNode;
258
- /** Controls whether the button is active or not */
468
+ /**
469
+ * Controls whether the button is active or not.
470
+ */
259
471
  active?: boolean;
260
- /** Displays a small badge on top of the button */
472
+ /**
473
+ * Displays a small badge on top of the button.
474
+ */
261
475
  badge?: boolean;
262
- /** Function executed on click */
476
+ /**
477
+ * Function executed on click.
478
+ * @TJS-type onClick: () => void;
479
+ */
263
480
  onClick: () => void;
264
481
  }
265
- export type NavTabsItemProps = NavTabsItemProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & BoxProps;
482
+ export type NavTabsItemProps = NavTabsItemProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
266
483
  declare const NavTabsItem: React.FC<NavTabsItemProps>;
267
484
  export interface NavTabsComponents {
268
485
  Item: typeof NavTabsItem;
269
486
  }
270
- export interface NavTabsProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
271
- /** Content to be rendered inside the Nav element */
487
+ export interface NavTabsProperties {
488
+ /**
489
+ * Content to be rendered inside the Nav element.
490
+ * @TJS-type React.ReactNode
491
+ */
272
492
  children: ReactNode;
273
493
  }
494
+ export type NavTabsProps = NavTabsProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
274
495
  export declare const NavTabs: React.FC<NavTabsProps> & NavTabsComponents;
275
- export interface PageHeaderProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
276
- /** Main title of the page. Corresponds to an h1 HTML tag */
496
+ export interface PageHeaderProperties {
497
+ /**
498
+ * Main title of the page. Corresponds to an h1 HTML tag.
499
+ */
277
500
  title: string;
278
- /** Optional subtitle for the page */
501
+ /**
502
+ * Optional subtitle for the page.
503
+ */
279
504
  subtitle?: string;
280
- /** Button stack that appears on the right-hand side of the title */
505
+ /**
506
+ * Button stack that appears on the right-hand side of the title.
507
+ * @TJS-type React.ReactNode
508
+ */
281
509
  buttonStack?: ReactNode;
282
- /** Optional header content that appears underneath the title and button stack */
510
+ /**
511
+ * Optional header content that appears underneath the title and button stack.
512
+ * @TJS-type React.ReactNode
513
+ */
283
514
  children?: ReactNode;
284
515
  }
516
+ export type PageHeaderProps = PageHeaderProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
285
517
  declare const PageHeader: React.FC<PageHeaderProps>;
286
- export interface PageBodyProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
287
- /** Content of the page body */
518
+ export interface PageBodyProperties {
519
+ /**
520
+ * Content of the page body.
521
+ * @TJS-type React.ReactNode
522
+ */
288
523
  children: ReactNode;
289
524
  }
525
+ export type PageBodyProps = PageBodyProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
290
526
  declare const PageBody: React.FC<PageBodyProps>;
291
527
  export interface PageComponents {
292
528
  Header: typeof PageHeader;
293
529
  Body: typeof PageBody;
294
530
  }
295
- export interface PageProps extends Omit<HTMLAttributes<HTMLElement>, "color"> {
296
- /** Content to be rendered inside the page body. */
531
+ export interface PageProperties {
532
+ /**
533
+ * Content to be rendered inside the page body.
534
+ * @TJS-type React.ReactNode
535
+ */
297
536
  children: ReactNode;
298
- /** Optional parameter to define a maximum width of the page content. */
537
+ /**
538
+ * Optional parameter to define a maximum width of the page content.
539
+ */
299
540
  maxWidth?: string;
300
541
  }
542
+ export type PageProps = PageProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
301
543
  export declare const Page: React.FC<PageProps> & PageComponents;
302
- export interface ProductUpdatesProperties {
303
- /** Title of the Popover */
544
+ export interface ProductUpdatesProperties extends Omit<PopoverProperties, "content" | "appearance" | "padding" | "enabledDismiss"> {
545
+ /**
546
+ * Title of the Popover.
547
+ */
304
548
  title: string;
305
- /** Content text of the Popover */
549
+ /**
550
+ * Content text of the Popover.
551
+ */
306
552
  text: string;
307
- /** Optional content for the body of the Popover */
553
+ /**
554
+ * Optional content for the body of the Popover.
555
+ * @TJS-type React.ReactNode
556
+ */
308
557
  bodyContent?: ReactNode;
309
- /** Optional bottom link to dismiss the Popover. If unset, an IconButton with an X will appear on the superior right corner. */
558
+ /**
559
+ * Optional bottom link to dismiss the Popover. If unset, an IconButton with an X will appear on the superior right corner.
560
+ * @TJS-type React.ReactNode
561
+ */
310
562
  dismissLink?: ReactNode;
311
563
  }
312
- export type ProductUpdatesProps = ProductUpdatesProperties & Omit<PopoverProps, "content" | "appearance" | "padding" | "enabledDismiss"> & HTMLAttributes<HTMLElement>;
564
+ export type ProductUpdatesProps = ProductUpdatesProperties & HTMLAttributes<HTMLElement>;
313
565
  export declare const ProductUpdates: React.FC<ProductUpdatesProps>;
314
566
  export type SideModalPadding = "none" | "base";
315
- export interface SideModalProperties {
316
- /** Title */
567
+ export interface SideModalProperties extends Pick<SidebarProperties, "position" | "onRemove" | "open" | "padding" | "maxWidth"> {
568
+ /**
569
+ * Title.
570
+ */
317
571
  title?: string;
318
- /** Action Title (ReactNode) */
572
+ /**
573
+ * Action Title
574
+ * @TJS-type React.ReactNode
575
+ */
319
576
  titleAction?: ReactNode;
320
- /** Action Header (ReactNode) */
577
+ /**
578
+ * Action Header
579
+ * @TJS-type React.ReactNode
580
+ */
321
581
  headerAction?: ReactNode;
322
- /** Icon Header (ReactNode) */
582
+ /**
583
+ * Icon Header
584
+ * @TJS-type React.ReactNode
585
+ */
323
586
  headerIcon?: ReactNode;
324
- /** Body Content (ReactNode) */
587
+ /**
588
+ * Body Content
589
+ * @TJS-type React.ReactNode
590
+ */
325
591
  children?: ReactNode;
326
- /** Header padding */
592
+ /**
593
+ * Header padding.
594
+ */
327
595
  paddingHeader?: SideModalPadding;
328
- /** Body padding */
596
+ /**
597
+ * Body padding.
598
+ */
329
599
  paddingBody?: SideModalPadding;
330
- /** Footer padding */
600
+ /**
601
+ * Footer padding.
602
+ */
331
603
  paddingFooter?: SideModalPadding;
332
- /** Footer element actions */
604
+ /**
605
+ * Footer element actions.
606
+ */
333
607
  footer?: {
334
- primaryAction: ButtonProps;
335
- secondaryAction: ButtonProps;
608
+ primaryAction: ButtonProperties;
609
+ secondaryAction: ButtonProperties;
336
610
  };
337
611
  }
338
- export type SideModalProps = SideModalProperties & Pick<SidebarProps, "position" | "onRemove" | "open" | "padding" | "maxWidth"> & HTMLAttributes<HTMLElement>;
612
+ export type SideModalProps = SideModalProperties & HTMLAttributes<HTMLElement>;
339
613
  export declare const SideModal: React.FC<SideModalProps>;
340
- export interface ThumbnailWithActionProperties {
341
- /** Thumbnail component properties */
342
- thumbnail: ThumbnailProps;
343
- /** Element to be rendered inside the Thumbnail */
614
+ export interface ThumbnailWithActionProperties extends BoxProperties {
615
+ /**
616
+ * Thumbnail component properties.
617
+ */
618
+ thumbnail: ThumbnailProperties;
619
+ /**
620
+ * Element to be rendered inside the Thumbnail.
621
+ * @TJS-type React.ReactNode
622
+ */
344
623
  children: ReactNode;
345
- /** Optional position of the element */
624
+ /**
625
+ * Optional position of the element.
626
+ */
346
627
  contentPosition?: "top-left" | "top-right" | "bottom-left" | "bottom-right";
347
628
  }
348
- export type ThumbnailWithActionProps = ThumbnailWithActionProperties & Omit<HTMLAttributes<HTMLElement>, "color"> & BoxProps;
629
+ export type ThumbnailWithActionProps = ThumbnailWithActionProperties & Omit<HTMLAttributes<HTMLElement>, "color">;
349
630
  export declare const ThumbnailWithAction: React.FC<ThumbnailWithActionProps>;
350
631
 
351
632
  export {};