@nimbus-ds/patterns 1.0.0-rc.3 → 1.1.0-rc.1

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