@backstage/ui 0.12.1-next.0 → 0.13.0-next.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.
Files changed (209) hide show
  1. package/CHANGELOG.md +142 -0
  2. package/dist/analytics/BUIProvider.esm.js +18 -0
  3. package/dist/analytics/BUIProvider.esm.js.map +1 -0
  4. package/dist/analytics/getNodeText.esm.js +21 -0
  5. package/dist/analytics/getNodeText.esm.js.map +1 -0
  6. package/dist/analytics/useAnalytics.esm.js +26 -0
  7. package/dist/analytics/useAnalytics.esm.js.map +1 -0
  8. package/dist/components/Accordion/Accordion.esm.js +1 -0
  9. package/dist/components/Accordion/Accordion.esm.js.map +1 -1
  10. package/dist/components/Accordion/definition.esm.js +3 -2
  11. package/dist/components/Accordion/definition.esm.js.map +1 -1
  12. package/dist/components/Alert/definition.esm.js +2 -1
  13. package/dist/components/Alert/definition.esm.js.map +1 -1
  14. package/dist/components/Avatar/Avatar.esm.js +8 -28
  15. package/dist/components/Avatar/Avatar.esm.js.map +1 -1
  16. package/dist/components/Avatar/definition.esm.js +18 -4
  17. package/dist/components/Avatar/definition.esm.js.map +1 -1
  18. package/dist/components/Box/definition.esm.js +2 -1
  19. package/dist/components/Box/definition.esm.js.map +1 -1
  20. package/dist/components/Button/definition.esm.js +3 -3
  21. package/dist/components/Button/definition.esm.js.map +1 -1
  22. package/dist/components/ButtonIcon/definition.esm.js +3 -3
  23. package/dist/components/ButtonIcon/definition.esm.js.map +1 -1
  24. package/dist/components/ButtonLink/ButtonLink.esm.js +10 -1
  25. package/dist/components/ButtonLink/ButtonLink.esm.js.map +1 -1
  26. package/dist/components/ButtonLink/definition.esm.js +5 -3
  27. package/dist/components/ButtonLink/definition.esm.js.map +1 -1
  28. package/dist/components/Card/Card.esm.js +67 -6
  29. package/dist/components/Card/Card.esm.js.map +1 -1
  30. package/dist/components/Card/Card.module.css.esm.js +2 -2
  31. package/dist/components/Card/definition.esm.js +11 -3
  32. package/dist/components/Card/definition.esm.js.map +1 -1
  33. package/dist/components/Checkbox/Checkbox.esm.js +10 -17
  34. package/dist/components/Checkbox/Checkbox.esm.js.map +1 -1
  35. package/dist/components/Checkbox/definition.esm.js +17 -5
  36. package/dist/components/Checkbox/definition.esm.js.map +1 -1
  37. package/dist/components/Container/Container.esm.js +8 -13
  38. package/dist/components/Container/Container.esm.js.map +1 -1
  39. package/dist/components/Container/Container.module.css.esm.js +2 -2
  40. package/dist/components/Container/definition.esm.js +17 -2
  41. package/dist/components/Container/definition.esm.js.map +1 -1
  42. package/dist/components/Dialog/Dialog.esm.js +26 -59
  43. package/dist/components/Dialog/Dialog.esm.js.map +1 -1
  44. package/dist/components/Dialog/Dialog.module.css.esm.js +2 -2
  45. package/dist/components/Dialog/definition.esm.js +53 -8
  46. package/dist/components/Dialog/definition.esm.js.map +1 -1
  47. package/dist/components/FieldError/FieldError.esm.js +4 -13
  48. package/dist/components/FieldError/FieldError.esm.js.map +1 -1
  49. package/dist/components/FieldError/definition.esm.js +15 -2
  50. package/dist/components/FieldError/definition.esm.js.map +1 -1
  51. package/dist/components/FieldLabel/FieldLabel.esm.js +14 -59
  52. package/dist/components/FieldLabel/FieldLabel.esm.js.map +1 -1
  53. package/dist/components/FieldLabel/definition.esm.js +20 -2
  54. package/dist/components/FieldLabel/definition.esm.js.map +1 -1
  55. package/dist/components/Flex/Flex.esm.js +12 -22
  56. package/dist/components/Flex/Flex.esm.js.map +1 -1
  57. package/dist/components/Flex/definition.esm.js +20 -13
  58. package/dist/components/Flex/definition.esm.js.map +1 -1
  59. package/dist/components/FullPage/FullPage.esm.js +4 -13
  60. package/dist/components/FullPage/FullPage.esm.js.map +1 -1
  61. package/dist/components/FullPage/definition.esm.js +15 -2
  62. package/dist/components/FullPage/definition.esm.js.map +1 -1
  63. package/dist/components/Grid/Grid.esm.js +21 -40
  64. package/dist/components/Grid/Grid.esm.js.map +1 -1
  65. package/dist/components/Grid/definition.esm.js +31 -26
  66. package/dist/components/Grid/definition.esm.js.map +1 -1
  67. package/dist/components/Header/Header.esm.js +55 -0
  68. package/dist/components/Header/Header.esm.js.map +1 -0
  69. package/dist/components/Header/Header.module.css.esm.js +8 -0
  70. package/dist/components/Header/Header.module.css.esm.js.map +1 -0
  71. package/dist/components/Header/definition.esm.js +30 -0
  72. package/dist/components/Header/definition.esm.js.map +1 -0
  73. package/dist/components/Link/Link.esm.js +15 -34
  74. package/dist/components/Link/Link.esm.js.map +1 -1
  75. package/dist/components/Link/definition.esm.js +23 -15
  76. package/dist/components/Link/definition.esm.js.map +1 -1
  77. package/dist/components/Menu/Menu.esm.js +180 -344
  78. package/dist/components/Menu/Menu.esm.js.map +1 -1
  79. package/dist/components/Menu/Menu.module.css.esm.js +2 -2
  80. package/dist/components/Menu/definition.esm.js +116 -17
  81. package/dist/components/Menu/definition.esm.js.map +1 -1
  82. package/dist/components/PasswordField/PasswordField.esm.js +17 -52
  83. package/dist/components/PasswordField/PasswordField.esm.js.map +1 -1
  84. package/dist/components/PasswordField/PasswordField.module.css.esm.js +2 -2
  85. package/dist/components/PasswordField/definition.esm.js +29 -11
  86. package/dist/components/PasswordField/definition.esm.js.map +1 -1
  87. package/dist/components/PluginHeader/PluginHeader.esm.js +35 -46
  88. package/dist/components/PluginHeader/PluginHeader.esm.js.map +1 -1
  89. package/dist/components/PluginHeader/PluginHeader.module.css.esm.js +2 -2
  90. package/dist/components/PluginHeader/definition.esm.js +22 -3
  91. package/dist/components/PluginHeader/definition.esm.js.map +1 -1
  92. package/dist/components/Popover/Popover.esm.js +24 -32
  93. package/dist/components/Popover/Popover.esm.js.map +1 -1
  94. package/dist/components/Popover/Popover.module.css.esm.js +2 -2
  95. package/dist/components/Popover/definition.esm.js +17 -2
  96. package/dist/components/Popover/definition.esm.js.map +1 -1
  97. package/dist/components/RadioGroup/RadioGroup.esm.js +25 -44
  98. package/dist/components/RadioGroup/RadioGroup.esm.js.map +1 -1
  99. package/dist/components/RadioGroup/definition.esm.js +31 -5
  100. package/dist/components/RadioGroup/definition.esm.js.map +1 -1
  101. package/dist/components/SearchField/SearchField.esm.js +25 -45
  102. package/dist/components/SearchField/SearchField.esm.js.map +1 -1
  103. package/dist/components/SearchField/SearchField.module.css.esm.js +2 -2
  104. package/dist/components/SearchField/definition.esm.js +22 -5
  105. package/dist/components/SearchField/definition.esm.js.map +1 -1
  106. package/dist/components/Select/Select.esm.js +14 -23
  107. package/dist/components/Select/Select.esm.js.map +1 -1
  108. package/dist/components/Select/Select.module.css.esm.js +2 -2
  109. package/dist/components/Select/SelectContent.esm.js +8 -31
  110. package/dist/components/Select/SelectContent.esm.js.map +1 -1
  111. package/dist/components/Select/SelectListBox.esm.js +21 -44
  112. package/dist/components/Select/SelectListBox.esm.js.map +1 -1
  113. package/dist/components/Select/SelectTrigger.esm.js +11 -14
  114. package/dist/components/Select/SelectTrigger.esm.js.map +1 -1
  115. package/dist/components/Select/definition.esm.js +69 -17
  116. package/dist/components/Select/definition.esm.js.map +1 -1
  117. package/dist/components/Skeleton/Skeleton.esm.js +9 -13
  118. package/dist/components/Skeleton/Skeleton.esm.js.map +1 -1
  119. package/dist/components/Skeleton/definition.esm.js +19 -2
  120. package/dist/components/Skeleton/definition.esm.js.map +1 -1
  121. package/dist/components/Switch/Switch.esm.js +7 -22
  122. package/dist/components/Switch/Switch.esm.js.map +1 -1
  123. package/dist/components/Switch/definition.esm.js +16 -2
  124. package/dist/components/Switch/definition.esm.js.map +1 -1
  125. package/dist/components/Table/Table.module.css.esm.js +2 -2
  126. package/dist/components/Table/components/Cell.esm.js +4 -17
  127. package/dist/components/Table/components/Cell.esm.js.map +1 -1
  128. package/dist/components/Table/components/CellProfile.esm.js +12 -41
  129. package/dist/components/Table/components/CellProfile.esm.js.map +1 -1
  130. package/dist/components/Table/components/CellText.esm.js +39 -73
  131. package/dist/components/Table/components/CellText.esm.js.map +1 -1
  132. package/dist/components/Table/components/Column.esm.js +8 -36
  133. package/dist/components/Table/components/Column.esm.js.map +1 -1
  134. package/dist/components/Table/components/Row.esm.js +22 -19
  135. package/dist/components/Table/components/Row.esm.js.map +1 -1
  136. package/dist/components/Table/components/Table.esm.js +8 -0
  137. package/dist/components/Table/components/Table.esm.js.map +1 -1
  138. package/dist/components/Table/components/TableBody.esm.js +4 -12
  139. package/dist/components/Table/components/TableBody.esm.js.map +1 -1
  140. package/dist/components/Table/components/TableHeader.esm.js +19 -29
  141. package/dist/components/Table/components/TableHeader.esm.js.map +1 -1
  142. package/dist/components/Table/components/TableRoot.esm.js +5 -7
  143. package/dist/components/Table/components/TableRoot.esm.js.map +1 -1
  144. package/dist/components/Table/definition.esm.js +101 -21
  145. package/dist/components/Table/definition.esm.js.map +1 -1
  146. package/dist/components/TablePagination/TablePagination.esm.js +24 -32
  147. package/dist/components/TablePagination/TablePagination.esm.js.map +1 -1
  148. package/dist/components/TablePagination/definition.esm.js +33 -2
  149. package/dist/components/TablePagination/definition.esm.js.map +1 -1
  150. package/dist/components/Tabs/Tabs.esm.js +57 -64
  151. package/dist/components/Tabs/Tabs.esm.js.map +1 -1
  152. package/dist/components/Tabs/TabsIndicators.esm.js +6 -18
  153. package/dist/components/Tabs/TabsIndicators.esm.js.map +1 -1
  154. package/dist/components/Tabs/definition.esm.js +65 -10
  155. package/dist/components/Tabs/definition.esm.js.map +1 -1
  156. package/dist/components/TagGroup/TagGroup.esm.js +49 -63
  157. package/dist/components/TagGroup/TagGroup.esm.js.map +1 -1
  158. package/dist/components/TagGroup/definition.esm.js +38 -8
  159. package/dist/components/TagGroup/definition.esm.js.map +1 -1
  160. package/dist/components/Text/Text.esm.js +6 -13
  161. package/dist/components/Text/Text.esm.js.map +1 -1
  162. package/dist/components/Text/definition.esm.js +19 -14
  163. package/dist/components/Text/definition.esm.js.map +1 -1
  164. package/dist/components/TextField/TextField.esm.js +16 -41
  165. package/dist/components/TextField/TextField.esm.js.map +1 -1
  166. package/dist/components/TextField/TextField.module.css.esm.js +2 -2
  167. package/dist/components/TextField/definition.esm.js +21 -6
  168. package/dist/components/TextField/definition.esm.js.map +1 -1
  169. package/dist/components/ToggleButton/ToggleButton.esm.js +11 -23
  170. package/dist/components/ToggleButton/ToggleButton.esm.js.map +1 -1
  171. package/dist/components/ToggleButton/definition.esm.js +18 -4
  172. package/dist/components/ToggleButton/definition.esm.js.map +1 -1
  173. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.esm.js +5 -18
  174. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.esm.js.map +1 -1
  175. package/dist/components/ToggleButtonGroup/definition.esm.js +15 -4
  176. package/dist/components/ToggleButtonGroup/definition.esm.js.map +1 -1
  177. package/dist/components/Tooltip/Tooltip.esm.js +24 -30
  178. package/dist/components/Tooltip/Tooltip.esm.js.map +1 -1
  179. package/dist/components/Tooltip/Tooltip.module.css.esm.js +2 -2
  180. package/dist/components/Tooltip/definition.esm.js +17 -2
  181. package/dist/components/Tooltip/definition.esm.js.map +1 -1
  182. package/dist/components/VisuallyHidden/VisuallyHidden.esm.js +4 -12
  183. package/dist/components/VisuallyHidden/VisuallyHidden.esm.js.map +1 -1
  184. package/dist/components/VisuallyHidden/definition.esm.js +15 -2
  185. package/dist/components/VisuallyHidden/definition.esm.js.map +1 -1
  186. package/dist/css/styles.css +2 -4
  187. package/dist/hooks/useBg.esm.js +11 -2
  188. package/dist/hooks/useBg.esm.js.map +1 -1
  189. package/dist/hooks/useBreakpoint.esm.js +67 -27
  190. package/dist/hooks/useBreakpoint.esm.js.map +1 -1
  191. package/dist/hooks/useDefinition/defineComponent.esm.js.map +1 -1
  192. package/dist/hooks/useDefinition/useDefinition.esm.js +10 -3
  193. package/dist/hooks/useDefinition/useDefinition.esm.js.map +1 -1
  194. package/dist/index.d.ts +1036 -282
  195. package/dist/index.esm.js +7 -4
  196. package/dist/index.esm.js.map +1 -1
  197. package/package.json +5 -3
  198. package/dist/components/HeaderPage/HeaderPage.esm.js +0 -76
  199. package/dist/components/HeaderPage/HeaderPage.esm.js.map +0 -1
  200. package/dist/components/HeaderPage/HeaderPage.module.css.esm.js +0 -8
  201. package/dist/components/HeaderPage/HeaderPage.module.css.esm.js.map +0 -1
  202. package/dist/components/HeaderPage/definition.esm.js +0 -12
  203. package/dist/components/HeaderPage/definition.esm.js.map +0 -1
  204. package/dist/components/PluginHeader/PluginHeaderToolbar.esm.js +0 -94
  205. package/dist/components/PluginHeader/PluginHeaderToolbar.esm.js.map +0 -1
  206. package/dist/hooks/useMediaQuery.esm.js +0 -47
  207. package/dist/hooks/useMediaQuery.esm.js.map +0 -1
  208. package/dist/hooks/useStyles.esm.js +0 -53
  209. package/dist/hooks/useStyles.esm.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as react from 'react';
2
- import { ReactNode, CSSProperties, ReactElement, ElementType, ComponentPropsWithRef, ComponentProps } from 'react';
3
- import { DisclosureProps, HeadingProps, DisclosurePanelProps, DisclosureGroupProps, ButtonProps as ButtonProps$1, DialogTriggerProps as DialogTriggerProps$1, ModalOverlayProps, TabsProps as TabsProps$1, TabListProps as TabListProps$1, TabProps as TabProps$1, TabPanelProps as TabPanelProps$1, LinkProps as LinkProps$1, CheckboxProps as CheckboxProps$1, RadioGroupProps as RadioGroupProps$1, RadioProps as RadioProps$1, TableProps as TableProps$1, ColumnProps as ColumnProps$1, CellProps as CellProps$1, TableHeaderProps, TableBodyProps, RowProps, TagGroupProps as TagGroupProps$1, TagListProps, TagProps as TagProps$1, TextFieldProps as TextFieldProps$1, TooltipProps as TooltipProps$1, TooltipTriggerComponentProps, MenuTriggerProps as MenuTriggerProps$1, SubmenuTriggerProps as SubmenuTriggerProps$1, MenuProps as MenuProps$1, PopoverProps as PopoverProps$1, ListBoxProps, MenuItemProps as MenuItemProps$1, ListBoxItemProps, MenuSectionProps as MenuSectionProps$1, SeparatorProps, SearchFieldProps as SearchFieldProps$1, SelectProps as SelectProps$1, SwitchProps as SwitchProps$1, ToggleButtonProps as ToggleButtonProps$1, ToggleButtonGroupProps as ToggleButtonGroupProps$1 } from 'react-aria-components';
2
+ import { ReactNode, CSSProperties, HTMLAttributes, ComponentPropsWithoutRef, ReactElement, ElementType, ComponentPropsWithRef, ComponentProps } from 'react';
3
+ import { DisclosureProps, HeadingProps, DisclosurePanelProps, DisclosureGroupProps, ButtonProps as ButtonProps$1, DialogTriggerProps as DialogTriggerProps$1, ModalOverlayProps, TabsProps as TabsProps$1, TabListProps as TabListProps$1, TabProps as TabProps$1, TabPanelProps as TabPanelProps$1, LinkProps as LinkProps$1, CheckboxProps as CheckboxProps$1, RadioGroupProps as RadioGroupProps$1, RadioProps as RadioProps$1, TableProps as TableProps$1, TableHeaderProps as TableHeaderProps$1, TableBodyProps as TableBodyProps$1, ColumnProps as ColumnProps$1, RowProps as RowProps$1, CellProps as CellProps$1, TagListProps, TagGroupProps as TagGroupProps$1, TagProps as TagProps$1, TextFieldProps as TextFieldProps$1, TooltipProps as TooltipProps$1, TooltipTriggerComponentProps, MenuTriggerProps as MenuTriggerProps$1, SubmenuTriggerProps as SubmenuTriggerProps$1, PopoverProps as PopoverProps$1, MenuProps as MenuProps$1, ListBoxProps, MenuItemProps as MenuItemProps$1, ListBoxItemProps, MenuSectionProps as MenuSectionProps$1, SeparatorProps, SearchFieldProps as SearchFieldProps$1, SelectProps as SelectProps$1, SwitchProps as SwitchProps$1, ToggleButtonProps as ToggleButtonProps$1, ToggleButtonGroupProps as ToggleButtonGroupProps$1 } from 'react-aria-components';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import { NavigateOptions } from 'react-router-dom';
6
6
  import { SortDescriptor as SortDescriptor$1 } from 'react-stately';
@@ -76,30 +76,7 @@ interface UtilityProps extends SpaceProps {
76
76
  rowSpan?: Responsive<Columns | 'full'>;
77
77
  }
78
78
  /**
79
- * Base type for the component styles structure
80
- * @public
81
- */
82
- type ClassNamesMap = Record<string, string>;
83
- /**
84
- * Base type for the component styles structure
85
- * @public
86
- */
87
- type DataAttributeValues = readonly (string | number | boolean)[];
88
- /**
89
- * Base type for the component styles structure
90
- * @public
91
- */
92
- type DataAttributesMap = Record<string, DataAttributeValues>;
93
- /**
94
- * Base type for the component styles structure
95
- * @public
96
- */
97
- interface ComponentDefinition {
98
- classNames: ClassNamesMap;
99
- dataAttributes?: DataAttributesMap;
100
- utilityProps?: string[];
101
- }
102
- /**
79
+ * Resolved background level stored in context and applied as `data-bg` on DOM elements.
103
80
  * Background type for the neutral bg system.
104
81
  *
105
82
  * Supports neutral levels ('neutral-1' through 'neutral-3') and
@@ -108,18 +85,23 @@ interface ComponentDefinition {
108
85
  * The 'neutral-4' level is not exposed as a prop value -- it is reserved
109
86
  * for leaf component CSS (e.g. Button on a 'neutral-3' surface).
110
87
  *
88
+ * This is the resolved/internal representation used by the bg context system.
89
+ * For the prop type accepted by container components, use `ProviderBg` instead.
90
+ *
111
91
  * @public
112
92
  */
113
93
  type ContainerBg = 'neutral-1' | 'neutral-2' | 'neutral-3' | 'danger' | 'warning' | 'success';
114
94
  /**
115
- * Background values accepted by provider components.
95
+ * Background values accepted by provider components (Box, Flex, Grid, Card, etc.).
116
96
  *
117
- * Includes all `ContainerBg` values plus `'neutral-auto'` which
118
- * automatically increments the neutral level from the parent context.
97
+ * - `'neutral'` automatically increments the neutral level from the parent context,
98
+ * capping at the maximum level. This is always incremental; explicit levels cannot
99
+ * be set directly.
100
+ * - `'danger'` | `'warning'` | `'success'` — intent backgrounds used as-is.
119
101
  *
120
102
  * @public
121
103
  */
122
- type ProviderBg = ContainerBg | 'neutral-auto';
104
+ type ProviderBg = 'neutral' | 'danger' | 'warning' | 'success';
123
105
 
124
106
  /** @public */
125
107
  type BoxOwnProps = {
@@ -174,24 +156,30 @@ declare const BoxDefinition: {
174
156
  };
175
157
 
176
158
  /** @public */
177
- interface GridProps extends SpaceProps {
178
- children?: React.ReactNode;
159
+ type GridOwnProps = {
160
+ children: ReactNode;
179
161
  className?: string;
162
+ style?: CSSProperties;
163
+ bg?: Responsive<ProviderBg>;
164
+ };
165
+ /** @public */
166
+ interface GridProps extends SpaceProps, GridOwnProps, Omit<HTMLAttributes<HTMLDivElement>, 'children'> {
180
167
  columns?: Responsive<Columns>;
181
168
  gap?: Responsive<Space>;
182
- style?: React.CSSProperties;
183
- bg?: Responsive<ProviderBg>;
184
169
  }
185
170
  /** @public */
186
- interface GridItemProps {
187
- children?: React.ReactNode;
171
+ type GridItemOwnProps = {
172
+ children: ReactNode;
188
173
  className?: string;
174
+ style?: CSSProperties;
175
+ bg?: Responsive<ProviderBg>;
176
+ };
177
+ /** @public */
178
+ interface GridItemProps extends GridItemOwnProps, Omit<HTMLAttributes<HTMLDivElement>, 'children'> {
189
179
  colSpan?: Responsive<Columns>;
190
180
  colEnd?: Responsive<Columns>;
191
181
  colStart?: Responsive<Columns>;
192
182
  rowSpan?: Responsive<Columns>;
193
- style?: React.CSSProperties;
194
- bg?: Responsive<ProviderBg>;
195
183
  }
196
184
 
197
185
  /** @public */
@@ -205,38 +193,59 @@ declare const Grid: {
205
193
  * @public
206
194
  */
207
195
  declare const GridDefinition: {
196
+ readonly styles: {
197
+ readonly [key: string]: string;
198
+ };
208
199
  readonly classNames: {
209
200
  readonly root: "bui-Grid";
210
201
  };
211
- readonly utilityProps: ["columns", "gap", "m", "mb", "ml", "mr", "mt", "mx", "my", "p", "pb", "pl", "pr", "pt", "px", "py"];
212
- readonly dataAttributes: {
213
- readonly bg: readonly ["neutral-1", "neutral-2", "neutral-3", "danger", "warning", "success"];
202
+ readonly bg: "provider";
203
+ readonly propDefs: {
204
+ readonly bg: {
205
+ readonly dataAttribute: true;
206
+ };
207
+ readonly children: {};
208
+ readonly className: {};
209
+ readonly style: {};
214
210
  };
211
+ readonly utilityProps: readonly ["columns", "gap", "m", "mb", "ml", "mr", "mt", "mx", "my", "p", "pb", "pl", "pr", "pt", "px", "py"];
215
212
  };
216
213
  /**
217
214
  * Component definition for GridItem
218
215
  * @public
219
216
  */
220
217
  declare const GridItemDefinition: {
218
+ readonly styles: {
219
+ readonly [key: string]: string;
220
+ };
221
221
  readonly classNames: {
222
222
  readonly root: "bui-GridItem";
223
223
  };
224
- readonly utilityProps: ["colSpan", "colEnd", "colStart", "rowSpan"];
225
- readonly dataAttributes: {
226
- readonly bg: readonly ["neutral-1", "neutral-2", "neutral-3", "danger", "warning", "success"];
224
+ readonly bg: "provider";
225
+ readonly propDefs: {
226
+ readonly bg: {
227
+ readonly dataAttribute: true;
228
+ };
229
+ readonly children: {};
230
+ readonly className: {};
231
+ readonly style: {};
227
232
  };
233
+ readonly utilityProps: readonly ["colSpan", "colEnd", "colStart", "rowSpan"];
228
234
  };
229
235
 
230
236
  /** @public */
231
- interface FlexProps extends SpaceProps {
232
- children?: React.ReactNode;
237
+ type FlexOwnProps = {
238
+ children: ReactNode;
239
+ className?: string;
240
+ style?: CSSProperties;
241
+ bg?: Responsive<ProviderBg>;
242
+ };
243
+ /** @public */
244
+ interface FlexProps extends SpaceProps, FlexOwnProps, Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
233
245
  gap?: Responsive<Space>;
234
246
  align?: Responsive<'start' | 'center' | 'end' | 'baseline' | 'stretch'>;
235
247
  justify?: Responsive<'start' | 'center' | 'end' | 'between'>;
236
248
  direction?: Responsive<'row' | 'column' | 'row-reverse' | 'column-reverse'>;
237
- className?: string;
238
- style?: React.CSSProperties;
239
- bg?: Responsive<ProviderBg>;
240
249
  }
241
250
 
242
251
  /** @public */
@@ -247,26 +256,38 @@ declare const Flex: react.ForwardRefExoticComponent<FlexProps & react.RefAttribu
247
256
  * @public
248
257
  */
249
258
  declare const FlexDefinition: {
259
+ readonly styles: {
260
+ readonly [key: string]: string;
261
+ };
250
262
  readonly classNames: {
251
263
  readonly root: "bui-Flex";
252
264
  };
253
- readonly utilityProps: ["m", "mb", "ml", "mr", "mt", "mx", "my", "p", "pb", "pl", "pr", "pt", "px", "py", "gap", "align", "justify", "direction"];
254
- readonly dataAttributes: {
255
- readonly bg: readonly ["neutral-1", "neutral-2", "neutral-3", "danger", "warning", "success"];
265
+ readonly bg: "provider";
266
+ readonly propDefs: {
267
+ readonly bg: {
268
+ readonly dataAttribute: true;
269
+ };
270
+ readonly children: {};
271
+ readonly className: {};
272
+ readonly style: {};
256
273
  };
274
+ readonly utilityProps: readonly ["m", "mb", "ml", "mr", "mt", "mx", "my", "p", "pb", "pl", "pr", "pt", "px", "py", "gap", "align", "justify", "direction"];
257
275
  };
258
276
 
259
277
  /** @public */
260
- interface ContainerProps {
278
+ type ContainerOwnProps = {
261
279
  children?: React.ReactNode;
262
280
  className?: string;
281
+ style?: React.CSSProperties;
282
+ };
283
+ /** @public */
284
+ interface ContainerProps extends ContainerOwnProps, Omit<React.ComponentPropsWithoutRef<'div'>, keyof ContainerOwnProps> {
263
285
  my?: SpaceProps['my'];
264
286
  mb?: SpaceProps['mb'];
265
287
  mt?: SpaceProps['mt'];
266
288
  py?: SpaceProps['py'];
267
289
  pb?: SpaceProps['pb'];
268
290
  pt?: SpaceProps['pt'];
269
- style?: React.CSSProperties;
270
291
  }
271
292
 
272
293
  /** @public */
@@ -277,18 +298,30 @@ declare const Container: react.ForwardRefExoticComponent<ContainerProps & react.
277
298
  * @public
278
299
  */
279
300
  declare const ContainerDefinition: {
301
+ readonly styles: {
302
+ readonly [key: string]: string;
303
+ };
280
304
  readonly classNames: {
281
305
  readonly root: "bui-Container";
282
306
  };
283
- readonly utilityProps: ["my", "mt", "mb", "py", "pt", "pb", "display"];
307
+ readonly propDefs: {
308
+ readonly children: {};
309
+ readonly className: {};
310
+ readonly style: {};
311
+ };
312
+ readonly utilityProps: readonly ["my", "mt", "mb", "py", "pt", "pb", "display"];
284
313
  };
285
314
 
315
+ /** @public */
316
+ type FullPageOwnProps = {
317
+ className?: string;
318
+ };
286
319
  /**
287
320
  * Props for the FullPage component.
288
321
  *
289
322
  * @public
290
323
  */
291
- interface FullPageProps extends React.ComponentPropsWithoutRef<'main'> {
324
+ interface FullPageProps extends Omit<ComponentPropsWithoutRef<'main'>, 'className'>, FullPageOwnProps {
292
325
  }
293
326
 
294
327
  /**
@@ -308,9 +341,15 @@ declare const FullPage: react.ForwardRefExoticComponent<FullPageProps & react.Re
308
341
  * @public
309
342
  */
310
343
  declare const FullPageDefinition: {
344
+ readonly styles: {
345
+ readonly [key: string]: string;
346
+ };
311
347
  readonly classNames: {
312
348
  readonly root: "bui-FullPage";
313
349
  };
350
+ readonly propDefs: {
351
+ readonly className: {};
352
+ };
314
353
  };
315
354
 
316
355
  /**
@@ -400,7 +439,7 @@ declare const AccordionDefinition: {
400
439
  readonly propDefs: {
401
440
  readonly bg: {
402
441
  readonly dataAttribute: true;
403
- readonly default: "neutral-auto";
442
+ readonly default: "neutral";
404
443
  };
405
444
  readonly children: {};
406
445
  readonly className: {};
@@ -478,7 +517,7 @@ type AlertOwnProps = {
478
517
  *
479
518
  * @public
480
519
  */
481
- interface AlertProps extends MarginProps, AlertOwnProps {
520
+ interface AlertProps extends MarginProps, AlertOwnProps, Omit<React.ComponentPropsWithoutRef<'div'>, keyof AlertOwnProps | keyof MarginProps> {
482
521
  }
483
522
 
484
523
  /**
@@ -565,7 +604,7 @@ declare const AlertDefinition: {
565
604
  };
566
605
 
567
606
  /** @public */
568
- interface AvatarProps extends React.ComponentPropsWithoutRef<'div'> {
607
+ type AvatarOwnProps = {
569
608
  /**
570
609
  * URL of the image to display
571
610
  */
@@ -586,6 +625,10 @@ interface AvatarProps extends React.ComponentPropsWithoutRef<'div'> {
586
625
  * @defaultValue 'informative'
587
626
  */
588
627
  purpose?: 'decoration' | 'informative';
628
+ className?: string;
629
+ };
630
+ /** @public */
631
+ interface AvatarProps extends Omit<React.ComponentPropsWithoutRef<'div'>, 'children' | 'className'>, AvatarOwnProps {
589
632
  }
590
633
 
591
634
  /** @public */
@@ -596,13 +639,25 @@ declare const Avatar: react.ForwardRefExoticComponent<AvatarProps & react.RefAtt
596
639
  * @public
597
640
  */
598
641
  declare const AvatarDefinition: {
642
+ readonly styles: {
643
+ readonly [key: string]: string;
644
+ };
599
645
  readonly classNames: {
600
646
  readonly root: "bui-AvatarRoot";
601
647
  readonly image: "bui-AvatarImage";
602
648
  readonly fallback: "bui-AvatarFallback";
603
649
  };
604
- readonly dataAttributes: {
605
- readonly size: readonly ["small", "medium", "large"];
650
+ readonly propDefs: {
651
+ readonly size: {
652
+ readonly dataAttribute: true;
653
+ readonly default: "medium";
654
+ };
655
+ readonly purpose: {
656
+ readonly default: "informative";
657
+ };
658
+ readonly src: {};
659
+ readonly name: {};
660
+ readonly className: {};
606
661
  };
607
662
  };
608
663
 
@@ -616,14 +671,13 @@ type ButtonOwnProps = {
616
671
  loading?: boolean;
617
672
  children?: ReactNode;
618
673
  className?: string;
619
- style?: CSSProperties;
620
674
  };
621
675
  /**
622
676
  * Properties for {@link Button}
623
677
  *
624
678
  * @public
625
679
  */
626
- interface ButtonProps extends Omit<ButtonProps$1, 'children' | 'className' | 'style'>, ButtonOwnProps {
680
+ interface ButtonProps extends Omit<ButtonProps$1, keyof ButtonOwnProps>, ButtonOwnProps {
627
681
  }
628
682
 
629
683
  /**
@@ -691,22 +745,60 @@ declare const ButtonDefinition: {
691
745
  readonly iconEnd: {};
692
746
  readonly children: {};
693
747
  readonly className: {};
694
- readonly style: {};
695
748
  };
696
749
  };
697
750
 
698
751
  /** @public */
699
- type CardOwnProps = {
752
+ type CardBaseProps = {
700
753
  children?: ReactNode;
701
754
  className?: string;
702
755
  };
756
+ /** @public */
757
+ type CardButtonVariant = {
758
+ /** Handler called when the card is pressed. Makes the card interactive as a button. */
759
+ onPress: NonNullable<ButtonProps$1['onPress']>;
760
+ href?: never;
761
+ /** Accessible label announced by screen readers for the interactive card. */
762
+ label: string;
763
+ target?: never;
764
+ rel?: never;
765
+ download?: never;
766
+ };
767
+ /** @public */
768
+ type CardLinkVariant = {
769
+ /** URL to navigate to. Makes the card interactive as a link. */
770
+ href: string;
771
+ onPress?: never;
772
+ /** Accessible label announced by screen readers for the interactive card. */
773
+ label: string;
774
+ /** Specifies where to open the linked URL (e.g. `_blank` for a new tab). */
775
+ target?: string;
776
+ /** Relationship between the current document and the linked URL (e.g. `noopener`). */
777
+ rel?: string;
778
+ /** Prompts the user to save the linked URL. Pass `true` for default filename or a string for a custom filename. */
779
+ download?: boolean | string;
780
+ };
781
+ /** @public */
782
+ type CardStaticVariant = {
783
+ onPress?: never;
784
+ href?: never;
785
+ label?: never;
786
+ target?: never;
787
+ rel?: never;
788
+ download?: never;
789
+ };
703
790
  /**
704
791
  * Props for the Card component.
705
792
  *
706
793
  * @public
707
794
  */
708
- interface CardProps extends CardOwnProps, React.HTMLAttributes<HTMLDivElement> {
709
- }
795
+ type CardProps = CardBaseProps & Omit<React.HTMLAttributes<HTMLDivElement>, 'onClick'> & (CardButtonVariant | CardLinkVariant | CardStaticVariant);
796
+ /**
797
+ * Flat own-props shape used by the component definition system.
798
+ * Derived from the Card variant types so it automatically stays in sync with CardProps.
799
+ * @public
800
+ */
801
+ type CardOwnProps = Pick<CardBaseProps & (CardButtonVariant | CardLinkVariant | CardStaticVariant), 'children' | 'className' | 'onPress' | 'href' | 'label' | 'target' | 'rel' | 'download'>;
710
802
  /** @public */
711
803
  type CardHeaderOwnProps = {
712
804
  children?: ReactNode;
@@ -779,10 +871,17 @@ declare const CardDefinition: {
779
871
  };
780
872
  readonly classNames: {
781
873
  readonly root: "bui-Card";
874
+ readonly trigger: "bui-CardTrigger";
782
875
  };
783
876
  readonly propDefs: {
784
877
  readonly children: {};
785
878
  readonly className: {};
879
+ readonly onPress: {};
880
+ readonly href: {};
881
+ readonly label: {};
882
+ readonly target: {};
883
+ readonly rel: {};
884
+ readonly download: {};
786
885
  };
787
886
  };
788
887
  /**
@@ -840,31 +939,52 @@ declare const CardFooterDefinition: {
840
939
  */
841
940
  interface DialogTriggerProps extends DialogTriggerProps$1 {
842
941
  }
942
+ /** @public */
943
+ type DialogOwnProps = {
944
+ children?: ReactNode;
945
+ className?: string;
946
+ width?: number | string;
947
+ height?: number | string;
948
+ style?: React.CSSProperties;
949
+ };
843
950
  /**
844
951
  * Props for the Dialog component.
845
952
  * @public
846
953
  */
847
- interface DialogProps extends ModalOverlayProps {
848
- className?: string;
849
- children?: React.ReactNode;
850
- width?: number | string;
851
- height?: number | string;
954
+ interface DialogProps extends DialogOwnProps, Omit<ModalOverlayProps, keyof DialogOwnProps> {
852
955
  }
956
+ /** @public */
957
+ type DialogHeaderOwnProps = {
958
+ children?: ReactNode;
959
+ className?: string;
960
+ };
853
961
  /**
854
962
  * Props for the DialogHeader component.
855
963
  * @public
856
964
  */
857
- interface DialogHeaderProps extends HeadingProps {
858
- children?: React.ReactNode;
859
- className?: string;
965
+ interface DialogHeaderProps extends DialogHeaderOwnProps, Omit<HeadingProps, keyof DialogHeaderOwnProps> {
860
966
  }
967
+ /** @public */
968
+ type DialogBodyOwnProps = {
969
+ children?: ReactNode;
970
+ className?: string;
971
+ };
861
972
  /**
862
973
  * Props for the DialogBody component.
863
974
  * @public
864
975
  */
865
- interface DialogBodyProps {
866
- children?: React.ReactNode;
976
+ interface DialogBodyProps extends DialogBodyOwnProps, Omit<React.ComponentPropsWithoutRef<'div'>, keyof DialogBodyOwnProps> {
977
+ }
978
+ /** @public */
979
+ type DialogFooterOwnProps = {
980
+ children?: ReactNode;
867
981
  className?: string;
982
+ };
983
+ /**
984
+ * Props for the DialogFooter component.
985
+ * @public
986
+ */
987
+ interface DialogFooterProps extends DialogFooterOwnProps, Omit<React.ComponentPropsWithoutRef<'div'>, keyof DialogFooterOwnProps> {
868
988
  }
869
989
 
870
990
  /** @public */
@@ -876,25 +996,81 @@ declare const DialogHeader: react.ForwardRefExoticComponent<DialogHeaderProps &
876
996
  /** @public */
877
997
  declare const DialogBody: react.ForwardRefExoticComponent<DialogBodyProps & react.RefAttributes<HTMLDivElement>>;
878
998
  /** @public */
879
- declare const DialogFooter: react.ForwardRefExoticComponent<Omit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
999
+ declare const DialogFooter: react.ForwardRefExoticComponent<DialogFooterProps & react.RefAttributes<HTMLDivElement>>;
880
1000
 
881
1001
  /**
882
1002
  * Component definition for Dialog
883
1003
  * @public
884
1004
  */
885
1005
  declare const DialogDefinition: {
1006
+ readonly styles: {
1007
+ readonly [key: string]: string;
1008
+ };
886
1009
  readonly classNames: {
887
- readonly overlay: "bui-DialogOverlay";
1010
+ readonly root: "bui-DialogOverlay";
888
1011
  readonly dialog: "bui-Dialog";
889
- readonly header: "bui-DialogHeader";
890
- readonly headerTitle: "bui-DialogHeaderTitle";
891
- readonly body: "bui-DialogBody";
892
- readonly footer: "bui-DialogFooter";
1012
+ readonly content: "bui-DialogContent";
1013
+ };
1014
+ readonly propDefs: {
1015
+ readonly children: {};
1016
+ readonly className: {};
1017
+ readonly width: {};
1018
+ readonly height: {};
1019
+ readonly style: {};
1020
+ };
1021
+ };
1022
+ /**
1023
+ * Component definition for DialogHeader
1024
+ * @public
1025
+ */
1026
+ declare const DialogHeaderDefinition: {
1027
+ readonly styles: {
1028
+ readonly [key: string]: string;
1029
+ };
1030
+ readonly classNames: {
1031
+ readonly root: "bui-DialogHeader";
1032
+ readonly title: "bui-DialogHeaderTitle";
1033
+ };
1034
+ readonly propDefs: {
1035
+ readonly children: {};
1036
+ readonly className: {};
1037
+ };
1038
+ };
1039
+ /**
1040
+ * Component definition for DialogBody
1041
+ * @public
1042
+ */
1043
+ declare const DialogBodyDefinition: {
1044
+ readonly styles: {
1045
+ readonly [key: string]: string;
1046
+ };
1047
+ readonly classNames: {
1048
+ readonly root: "bui-DialogBody";
1049
+ };
1050
+ readonly propDefs: {
1051
+ readonly children: {};
1052
+ readonly className: {};
1053
+ };
1054
+ };
1055
+ /**
1056
+ * Component definition for DialogFooter
1057
+ * @public
1058
+ */
1059
+ declare const DialogFooterDefinition: {
1060
+ readonly styles: {
1061
+ readonly [key: string]: string;
1062
+ };
1063
+ readonly classNames: {
1064
+ readonly root: "bui-DialogFooter";
1065
+ };
1066
+ readonly propDefs: {
1067
+ readonly children: {};
1068
+ readonly className: {};
893
1069
  };
894
1070
  };
895
1071
 
896
1072
  /** @public */
897
- interface FieldLabelProps extends Pick<React.HTMLAttributes<HTMLDivElement>, 'className'> {
1073
+ type FieldLabelOwnProps = {
898
1074
  /**
899
1075
  * The label of the text field
900
1076
  */
@@ -915,6 +1091,10 @@ interface FieldLabelProps extends Pick<React.HTMLAttributes<HTMLDivElement>, 'cl
915
1091
  * The id of the text field
916
1092
  */
917
1093
  id?: string;
1094
+ className?: string;
1095
+ };
1096
+ /** @public */
1097
+ interface FieldLabelProps extends FieldLabelOwnProps, Omit<React.ComponentPropsWithoutRef<'div'>, keyof FieldLabelOwnProps> {
918
1098
  }
919
1099
 
920
1100
  /** @public */
@@ -925,12 +1105,23 @@ declare const FieldLabel: react.ForwardRefExoticComponent<FieldLabelProps & reac
925
1105
  * @public
926
1106
  */
927
1107
  declare const FieldLabelDefinition: {
1108
+ readonly styles: {
1109
+ readonly [key: string]: string;
1110
+ };
928
1111
  readonly classNames: {
929
1112
  readonly root: "bui-FieldLabelWrapper";
930
1113
  readonly label: "bui-FieldLabel";
931
1114
  readonly secondaryLabel: "bui-FieldSecondaryLabel";
932
1115
  readonly description: "bui-FieldDescription";
933
1116
  };
1117
+ readonly propDefs: {
1118
+ readonly label: {};
1119
+ readonly secondaryLabel: {};
1120
+ readonly description: {};
1121
+ readonly htmlFor: {};
1122
+ readonly id: {};
1123
+ readonly className: {};
1124
+ };
934
1125
  };
935
1126
 
936
1127
  /**
@@ -939,39 +1130,76 @@ declare const FieldLabelDefinition: {
939
1130
  * @public
940
1131
  */
941
1132
  type TabMatchStrategy = 'exact' | 'prefix';
1133
+ /**
1134
+ * Own props for the Tabs component.
1135
+ *
1136
+ * @public
1137
+ */
1138
+ type TabsOwnProps = {
1139
+ className?: string;
1140
+ children?: TabsProps$1['children'];
1141
+ };
942
1142
  /**
943
1143
  * Props for the Tabs component.
944
1144
  *
945
1145
  * @public
946
1146
  */
947
- interface TabsProps extends TabsProps$1 {
1147
+ interface TabsProps extends TabsOwnProps, Omit<TabsProps$1, keyof TabsOwnProps> {
948
1148
  }
1149
+ /**
1150
+ * Own props for the TabList component.
1151
+ *
1152
+ * @public
1153
+ */
1154
+ type TabListOwnProps = {
1155
+ className?: string;
1156
+ children?: TabListProps$1<object>['children'];
1157
+ };
949
1158
  /**
950
1159
  * Props for the TabList component.
951
1160
  *
952
1161
  * @public
953
1162
  */
954
- interface TabListProps extends Omit<TabListProps$1<object>, 'items'> {
1163
+ interface TabListProps extends TabListOwnProps, Omit<TabListProps$1<object>, 'items' | keyof TabListOwnProps> {
955
1164
  }
956
1165
  /**
957
- * Props for the Tab component.
1166
+ * Own props for the Tab component.
958
1167
  *
959
1168
  * @public
960
1169
  */
961
- interface TabProps extends TabProps$1 {
1170
+ type TabOwnProps = {
1171
+ className?: string;
962
1172
  /**
963
1173
  * Strategy for matching the current route to determine if this tab should be active.
964
1174
  * - 'exact': Tab href must exactly match the current pathname (default)
965
1175
  * - 'prefix': Tab is active if current pathname starts with tab href
966
1176
  */
967
- matchStrategy?: 'exact' | 'prefix';
1177
+ matchStrategy?: TabMatchStrategy;
1178
+ href?: TabProps$1['href'];
1179
+ id?: TabProps$1['id'];
1180
+ noTrack?: boolean;
1181
+ };
1182
+ /**
1183
+ * Props for the Tab component.
1184
+ *
1185
+ * @public
1186
+ */
1187
+ interface TabProps extends TabOwnProps, Omit<TabProps$1, keyof TabOwnProps> {
968
1188
  }
1189
+ /**
1190
+ * Own props for the TabPanel component.
1191
+ *
1192
+ * @public
1193
+ */
1194
+ type TabPanelOwnProps = {
1195
+ className?: string;
1196
+ };
969
1197
  /**
970
1198
  * Props for the TabPanel component.
971
1199
  *
972
1200
  * @public
973
1201
  */
974
- interface TabPanelProps extends TabPanelProps$1 {
1202
+ interface TabPanelProps extends TabPanelOwnProps, Omit<TabPanelProps$1, keyof TabPanelOwnProps> {
975
1203
  }
976
1204
 
977
1205
  /**
@@ -1004,23 +1232,24 @@ declare const TabPanel: (props: TabPanelProps) => react_jsx_runtime.JSX.Element;
1004
1232
  * @public
1005
1233
  */
1006
1234
  declare const TabsDefinition: {
1235
+ readonly styles: {
1236
+ readonly [key: string]: string;
1237
+ };
1007
1238
  readonly classNames: {
1008
- readonly tabs: "bui-Tabs";
1009
- readonly tabList: "bui-TabList";
1010
- readonly tabListWrapper: "bui-TabListWrapper";
1011
- readonly tab: "bui-Tab";
1012
- readonly tabActive: "bui-TabActive";
1013
- readonly tabHovered: "bui-TabHovered";
1014
- readonly panel: "bui-TabPanel";
1239
+ readonly root: "bui-Tabs";
1240
+ };
1241
+ readonly propDefs: {
1242
+ readonly className: {};
1243
+ readonly children: {};
1015
1244
  };
1016
1245
  };
1017
1246
 
1018
1247
  /**
1019
- * Props for the {@link PluginHeader} component.
1248
+ * Own props for the {@link PluginHeader} component.
1020
1249
  *
1021
1250
  * @public
1022
1251
  */
1023
- interface PluginHeaderProps {
1252
+ interface PluginHeaderOwnProps {
1024
1253
  icon?: React.ReactNode;
1025
1254
  title?: string;
1026
1255
  titleLink?: string;
@@ -1029,6 +1258,13 @@ interface PluginHeaderProps {
1029
1258
  onTabSelectionChange?: TabsProps$1['onSelectionChange'];
1030
1259
  className?: string;
1031
1260
  }
1261
+ /**
1262
+ * Props for the {@link PluginHeader} component.
1263
+ *
1264
+ * @public
1265
+ */
1266
+ interface PluginHeaderProps extends PluginHeaderOwnProps {
1267
+ }
1032
1268
  /**
1033
1269
  * Represents a tab item in the header navigation.
1034
1270
  *
@@ -1064,6 +1300,9 @@ declare const PluginHeader: (props: PluginHeaderProps) => react_jsx_runtime.JSX.
1064
1300
  * @public
1065
1301
  */
1066
1302
  declare const PluginHeaderDefinition: {
1303
+ readonly styles: {
1304
+ readonly [key: string]: string;
1305
+ };
1067
1306
  readonly classNames: {
1068
1307
  readonly root: "bui-PluginHeader";
1069
1308
  readonly toolbar: "bui-PluginHeaderToolbar";
@@ -1072,44 +1311,106 @@ declare const PluginHeaderDefinition: {
1072
1311
  readonly toolbarControls: "bui-PluginHeaderToolbarControls";
1073
1312
  readonly toolbarIcon: "bui-PluginHeaderToolbarIcon";
1074
1313
  readonly toolbarName: "bui-PluginHeaderToolbarName";
1075
- readonly tabsWrapper: "bui-PluginHeaderTabsWrapper";
1314
+ readonly tabs: "bui-PluginHeaderTabsWrapper";
1076
1315
  };
1077
- };
1078
-
1079
- /**
1080
- * Props for the main HeaderPage component.
1081
- *
1082
- * @public
1316
+ readonly propDefs: {
1317
+ readonly icon: {};
1318
+ readonly title: {};
1319
+ readonly titleLink: {};
1320
+ readonly customActions: {};
1321
+ readonly tabs: {};
1322
+ readonly onTabSelectionChange: {};
1323
+ readonly className: {};
1324
+ };
1325
+ };
1326
+
1327
+ /**
1328
+ * Own props for the Header component.
1329
+ *
1330
+ * @public
1083
1331
  */
1084
- interface HeaderPageProps {
1332
+ interface HeaderOwnProps {
1085
1333
  title?: string;
1086
1334
  customActions?: React.ReactNode;
1087
1335
  tabs?: HeaderTab[];
1088
- breadcrumbs?: HeaderPageBreadcrumb[];
1336
+ breadcrumbs?: HeaderBreadcrumb[];
1089
1337
  className?: string;
1090
1338
  }
1339
+ /**
1340
+ * Props for the Header component.
1341
+ *
1342
+ * @public
1343
+ */
1344
+ interface HeaderProps extends HeaderOwnProps {
1345
+ }
1091
1346
  /**
1092
1347
  * Represents a breadcrumb item in the header.
1093
1348
  *
1094
1349
  * @public
1095
1350
  */
1096
- interface HeaderPageBreadcrumb {
1351
+ interface HeaderBreadcrumb {
1097
1352
  label: string;
1098
1353
  href: string;
1099
1354
  }
1355
+ /**
1356
+ * @public
1357
+ * @deprecated Use {@link HeaderOwnProps} instead.
1358
+ */
1359
+ type HeaderPageOwnProps = HeaderOwnProps;
1360
+ /**
1361
+ * @public
1362
+ * @deprecated Use {@link HeaderProps} instead.
1363
+ */
1364
+ type HeaderPageProps = HeaderProps;
1365
+ /**
1366
+ * @public
1367
+ * @deprecated Use {@link HeaderBreadcrumb} instead.
1368
+ */
1369
+ type HeaderPageBreadcrumb = HeaderBreadcrumb;
1100
1370
 
1101
1371
  /**
1102
- * A component that renders a header page.
1372
+ * A secondary header with title, breadcrumbs, tabs, and actions.
1103
1373
  *
1104
1374
  * @public
1105
1375
  */
1106
- declare const HeaderPage: (props: HeaderPageProps) => react_jsx_runtime.JSX.Element;
1376
+ declare const Header: (props: HeaderProps) => react_jsx_runtime.JSX.Element;
1377
+ /**
1378
+ * @public
1379
+ * @deprecated Use {@link Header} instead.
1380
+ */
1381
+ declare const HeaderPage: (props: HeaderProps) => react_jsx_runtime.JSX.Element;
1107
1382
 
1108
1383
  /**
1109
- * Component definition for HeaderPage
1384
+ * Component definition for Header
1110
1385
  * @public
1111
1386
  */
1387
+ declare const HeaderDefinition: {
1388
+ readonly styles: {
1389
+ readonly [key: string]: string;
1390
+ };
1391
+ readonly classNames: {
1392
+ readonly root: "bui-HeaderPage";
1393
+ readonly content: "bui-HeaderPageContent";
1394
+ readonly breadcrumbs: "bui-HeaderPageBreadcrumbs";
1395
+ readonly tabsWrapper: "bui-HeaderPageTabsWrapper";
1396
+ readonly controls: "bui-HeaderPageControls";
1397
+ };
1398
+ readonly propDefs: {
1399
+ readonly title: {};
1400
+ readonly customActions: {};
1401
+ readonly tabs: {};
1402
+ readonly breadcrumbs: {};
1403
+ readonly className: {};
1404
+ };
1405
+ };
1406
+ /**
1407
+ * @public
1408
+ * @deprecated Use {@link HeaderDefinition} instead.
1409
+ */
1112
1410
  declare const HeaderPageDefinition: {
1411
+ readonly styles: {
1412
+ readonly [key: string]: string;
1413
+ };
1113
1414
  readonly classNames: {
1114
1415
  readonly root: "bui-HeaderPage";
1115
1416
  readonly content: "bui-HeaderPageContent";
@@ -1117,6 +1418,13 @@ declare const HeaderPageDefinition: {
1117
1418
  readonly tabsWrapper: "bui-HeaderPageTabsWrapper";
1118
1419
  readonly controls: "bui-HeaderPageControls";
1119
1420
  };
1421
+ readonly propDefs: {
1422
+ readonly title: {};
1423
+ readonly customActions: {};
1424
+ readonly tabs: {};
1425
+ readonly breadcrumbs: {};
1426
+ readonly className: {};
1427
+ };
1120
1428
  };
1121
1429
 
1122
1430
  /** @public */
@@ -1126,14 +1434,13 @@ type ButtonIconOwnProps = {
1126
1434
  icon?: ReactElement;
1127
1435
  loading?: boolean;
1128
1436
  className?: string;
1129
- style?: CSSProperties;
1130
1437
  };
1131
1438
  /**
1132
1439
  * Properties for {@link ButtonIcon}
1133
1440
  *
1134
1441
  * @public
1135
1442
  */
1136
- interface ButtonIconProps extends Omit<ButtonProps$1, 'children' | 'className' | 'style'>, ButtonIconOwnProps {
1443
+ interface ButtonIconProps extends Omit<ButtonProps$1, keyof ButtonIconOwnProps>, ButtonIconOwnProps {
1137
1444
  }
1138
1445
 
1139
1446
  /** @public */
@@ -1167,26 +1474,25 @@ declare const ButtonIconDefinition: {
1167
1474
  };
1168
1475
  readonly icon: {};
1169
1476
  readonly className: {};
1170
- readonly style: {};
1171
1477
  };
1172
1478
  };
1173
1479
 
1174
1480
  /** @public */
1175
1481
  type ButtonLinkOwnProps = {
1482
+ noTrack?: boolean;
1176
1483
  size?: Responsive<'small' | 'medium'>;
1177
1484
  variant?: Responsive<'primary' | 'secondary' | 'tertiary'>;
1178
1485
  iconStart?: ReactElement;
1179
1486
  iconEnd?: ReactElement;
1180
1487
  children?: ReactNode;
1181
1488
  className?: string;
1182
- style?: CSSProperties;
1183
1489
  };
1184
1490
  /**
1185
1491
  * Properties for {@link ButtonLink}
1186
1492
  *
1187
1493
  * @public
1188
1494
  */
1189
- interface ButtonLinkProps extends Omit<LinkProps$1, 'children' | 'className' | 'style'>, ButtonLinkOwnProps {
1495
+ interface ButtonLinkProps extends Omit<LinkProps$1, keyof ButtonLinkOwnProps>, ButtonLinkOwnProps {
1190
1496
  }
1191
1497
 
1192
1498
  /** @public */
@@ -1205,7 +1511,9 @@ declare const ButtonLinkDefinition: {
1205
1511
  readonly content: "bui-ButtonLinkContent";
1206
1512
  };
1207
1513
  readonly bg: "consumer";
1514
+ readonly analytics: true;
1208
1515
  readonly propDefs: {
1516
+ readonly noTrack: {};
1209
1517
  readonly size: {
1210
1518
  readonly dataAttribute: true;
1211
1519
  readonly default: "small";
@@ -1218,13 +1526,18 @@ declare const ButtonLinkDefinition: {
1218
1526
  readonly iconEnd: {};
1219
1527
  readonly children: {};
1220
1528
  readonly className: {};
1221
- readonly style: {};
1222
1529
  };
1223
1530
  };
1224
1531
 
1225
1532
  /** @public */
1226
- interface CheckboxProps extends CheckboxProps$1 {
1533
+ type CheckboxOwnProps = {
1534
+ selected?: boolean;
1535
+ indeterminate?: boolean;
1227
1536
  children: React.ReactNode;
1537
+ className?: string;
1538
+ };
1539
+ /** @public */
1540
+ interface CheckboxProps extends Omit<CheckboxProps$1, 'children' | 'className'>, CheckboxOwnProps {
1228
1541
  }
1229
1542
 
1230
1543
  /** @public */
@@ -1235,22 +1548,43 @@ declare const Checkbox: react.ForwardRefExoticComponent<CheckboxProps & react.Re
1235
1548
  * @public
1236
1549
  */
1237
1550
  declare const CheckboxDefinition: {
1551
+ readonly styles: {
1552
+ readonly [key: string]: string;
1553
+ };
1238
1554
  readonly classNames: {
1239
1555
  readonly root: "bui-Checkbox";
1240
1556
  readonly indicator: "bui-CheckboxIndicator";
1241
1557
  };
1242
- readonly dataAttributes: {
1243
- readonly selected: readonly [true, false];
1244
- readonly indeterminate: readonly [true, false];
1558
+ readonly propDefs: {
1559
+ readonly selected: {
1560
+ readonly dataAttribute: true;
1561
+ };
1562
+ readonly indeterminate: {
1563
+ readonly dataAttribute: true;
1564
+ };
1565
+ readonly children: {};
1566
+ readonly className: {};
1245
1567
  };
1246
1568
  };
1247
1569
 
1248
1570
  /** @public */
1249
- interface RadioGroupProps extends Omit<RadioGroupProps$1, 'children'>, Omit<FieldLabelProps, 'htmlFor' | 'id' | 'className'> {
1571
+ type RadioGroupOwnProps = {
1250
1572
  children?: ReactNode;
1573
+ className?: string;
1574
+ label?: FieldLabelProps['label'];
1575
+ secondaryLabel?: FieldLabelProps['secondaryLabel'];
1576
+ description?: FieldLabelProps['description'];
1577
+ isRequired?: RadioGroupProps$1['isRequired'];
1578
+ };
1579
+ /** @public */
1580
+ interface RadioGroupProps extends RadioGroupOwnProps, Omit<RadioGroupProps$1, keyof RadioGroupOwnProps> {
1251
1581
  }
1252
1582
  /** @public */
1253
- interface RadioProps extends RadioProps$1 {
1583
+ type RadioOwnProps = {
1584
+ className?: string;
1585
+ };
1586
+ /** @public */
1587
+ interface RadioProps extends RadioOwnProps, Omit<RadioProps$1, keyof RadioOwnProps> {
1254
1588
  }
1255
1589
 
1256
1590
  /** @public */
@@ -1263,10 +1597,35 @@ declare const Radio: react.ForwardRefExoticComponent<RadioProps & react.RefAttri
1263
1597
  * @public
1264
1598
  */
1265
1599
  declare const RadioGroupDefinition: {
1600
+ readonly styles: {
1601
+ readonly [key: string]: string;
1602
+ };
1266
1603
  readonly classNames: {
1267
1604
  readonly root: "bui-RadioGroup";
1268
1605
  readonly content: "bui-RadioGroupContent";
1269
- readonly radio: "bui-Radio";
1606
+ };
1607
+ readonly propDefs: {
1608
+ readonly children: {};
1609
+ readonly className: {};
1610
+ readonly label: {};
1611
+ readonly secondaryLabel: {};
1612
+ readonly description: {};
1613
+ readonly isRequired: {};
1614
+ };
1615
+ };
1616
+ /**
1617
+ * Component definition for Radio
1618
+ * @public
1619
+ */
1620
+ declare const RadioDefinition: {
1621
+ readonly styles: {
1622
+ readonly [key: string]: string;
1623
+ };
1624
+ readonly classNames: {
1625
+ readonly root: "bui-Radio";
1626
+ };
1627
+ readonly propDefs: {
1628
+ readonly className: {};
1270
1629
  };
1271
1630
  };
1272
1631
 
@@ -1276,7 +1635,7 @@ interface PageSizeOption {
1276
1635
  value: number;
1277
1636
  }
1278
1637
  /** @public */
1279
- interface TablePaginationProps {
1638
+ type TablePaginationOwnProps = {
1280
1639
  pageSize: number;
1281
1640
  pageSizeOptions?: number[] | PageSizeOption[];
1282
1641
  offset?: number;
@@ -1292,6 +1651,9 @@ interface TablePaginationProps {
1292
1651
  offset?: number;
1293
1652
  totalCount?: number;
1294
1653
  }) => string;
1654
+ };
1655
+ /** @public */
1656
+ interface TablePaginationProps extends TablePaginationOwnProps {
1295
1657
  }
1296
1658
 
1297
1659
  /**
@@ -1299,19 +1661,39 @@ interface TablePaginationProps {
1299
1661
  *
1300
1662
  * @public
1301
1663
  */
1302
- declare function TablePagination({ pageSize, pageSizeOptions, offset, totalCount, hasNextPage, hasPreviousPage, onNextPage, onPreviousPage, onPageSizeChange, showPageSizeOptions, getLabel, }: TablePaginationProps): react_jsx_runtime.JSX.Element;
1664
+ declare function TablePagination(props: TablePaginationProps): react_jsx_runtime.JSX.Element;
1303
1665
 
1304
1666
  /**
1305
1667
  * Component definition for TablePagination
1306
1668
  * @public
1307
1669
  */
1308
1670
  declare const TablePaginationDefinition: {
1671
+ readonly styles: {
1672
+ readonly [key: string]: string;
1673
+ };
1309
1674
  readonly classNames: {
1310
1675
  readonly root: "bui-TablePagination";
1311
1676
  readonly left: "bui-TablePaginationLeft";
1312
1677
  readonly right: "bui-TablePaginationRight";
1313
1678
  readonly select: "bui-TablePaginationSelect";
1314
1679
  };
1680
+ readonly propDefs: {
1681
+ readonly pageSize: {};
1682
+ readonly pageSizeOptions: {
1683
+ readonly default: PageSizeOption[];
1684
+ };
1685
+ readonly offset: {};
1686
+ readonly totalCount: {};
1687
+ readonly hasNextPage: {};
1688
+ readonly hasPreviousPage: {};
1689
+ readonly onNextPage: {};
1690
+ readonly onPreviousPage: {};
1691
+ readonly onPageSizeChange: {};
1692
+ readonly showPageSizeOptions: {
1693
+ readonly default: true;
1694
+ };
1695
+ readonly getLabel: {};
1696
+ };
1315
1697
  };
1316
1698
 
1317
1699
  /**
@@ -1324,31 +1706,73 @@ interface SortState {
1324
1706
  onSortChange: (descriptor: SortDescriptor) => void;
1325
1707
  }
1326
1708
  /** @public */
1327
- interface CellProps extends CellProps$1 {
1709
+ type TableRootOwnProps = {
1710
+ stale?: boolean;
1711
+ };
1712
+ /** @public */
1713
+ interface TableRootProps extends TableRootOwnProps, Omit<TableProps$1, keyof TableRootOwnProps> {
1714
+ }
1715
+ /** @public */
1716
+ type TableHeaderOwnProps<T = object> = {
1717
+ columns?: TableHeaderProps$1<T>['columns'];
1718
+ children?: TableHeaderProps$1<T>['children'];
1719
+ };
1720
+ /** @public */
1721
+ interface TableHeaderProps<T> extends TableHeaderOwnProps<T>, Omit<TableHeaderProps$1<T>, keyof TableHeaderOwnProps> {
1722
+ }
1723
+ /** @public */
1724
+ type TableBodyOwnProps = {};
1725
+ /** @public */
1726
+ interface TableBodyProps<T extends object> extends TableBodyOwnProps, Omit<TableBodyProps$1<T>, keyof TableBodyOwnProps> {
1727
+ }
1728
+ /** @public */
1729
+ type RowOwnProps<T = object> = {
1730
+ columns?: RowProps$1<T>['columns'];
1731
+ children?: RowProps$1<T>['children'];
1732
+ href?: string;
1733
+ noTrack?: boolean;
1734
+ };
1735
+ /** @public */
1736
+ interface RowProps<T> extends RowOwnProps<T>, Omit<RowProps$1<T>, keyof RowOwnProps> {
1737
+ }
1738
+ /** @public */
1739
+ type ColumnOwnProps = {
1740
+ children?: React.ReactNode;
1741
+ className?: string;
1742
+ };
1743
+ /** @public */
1744
+ interface ColumnProps extends ColumnOwnProps, Omit<ColumnProps$1, keyof ColumnOwnProps> {
1745
+ }
1746
+ /** @public */
1747
+ type CellOwnProps = {
1748
+ className?: string;
1749
+ };
1750
+ /** @public */
1751
+ interface CellProps extends CellOwnProps, Omit<CellProps$1, keyof CellOwnProps> {
1328
1752
  }
1329
1753
  /** @public */
1330
- interface CellTextProps extends CellProps$1 {
1754
+ type CellTextOwnProps = {
1331
1755
  title: string;
1332
1756
  description?: string;
1333
1757
  color?: TextColors;
1334
1758
  leadingIcon?: React.ReactNode | null;
1335
1759
  href?: string;
1760
+ className?: string;
1761
+ };
1762
+ /** @public */
1763
+ interface CellTextProps extends CellTextOwnProps, Omit<CellProps$1, keyof CellTextOwnProps> {
1336
1764
  }
1337
1765
  /** @public */
1338
- interface CellProfileProps extends CellProps$1 {
1766
+ type CellProfileOwnProps = {
1339
1767
  src?: string;
1340
1768
  name?: string;
1341
1769
  href?: string;
1342
1770
  description?: string;
1343
1771
  color?: TextColors;
1344
- }
1345
- /** @public */
1346
- interface ColumnProps extends Omit<ColumnProps$1, 'children'> {
1347
- children?: React.ReactNode;
1348
- }
1772
+ className?: string;
1773
+ };
1349
1774
  /** @public */
1350
- interface TableRootProps extends TableProps$1 {
1351
- stale?: boolean;
1775
+ interface CellProfileProps extends CellProfileOwnProps, Omit<CellProps$1, keyof CellProfileOwnProps> {
1352
1776
  }
1353
1777
  /** @public */
1354
1778
  interface TableItem {
@@ -1545,45 +1969,43 @@ declare function useTable<T extends TableItem, TFilter = unknown>(options: UseTa
1545
1969
  * @public
1546
1970
  */
1547
1971
  declare const TableDefinition: {
1972
+ readonly styles: {
1973
+ readonly [key: string]: string;
1974
+ };
1548
1975
  readonly classNames: {
1549
- readonly table: "bui-Table";
1550
- readonly header: "bui-TableHeader";
1551
- readonly body: "bui-TableBody";
1552
- readonly row: "bui-TableRow";
1553
- readonly head: "bui-TableHead";
1554
- readonly headContent: "bui-TableHeadContent";
1555
- readonly headSortButton: "bui-TableHeadSortButton";
1556
- readonly caption: "bui-TableCaption";
1557
- readonly cell: "bui-TableCell";
1558
- readonly cellContentWrapper: "bui-TableCellContentWrapper";
1559
- readonly cellContent: "bui-TableCellContent";
1560
- readonly cellIcon: "bui-TableCellIcon";
1561
- readonly cellProfileAvatar: "bui-TableCellProfileAvatar";
1562
- readonly cellProfileAvatarImage: "bui-TableCellProfileAvatarImage";
1563
- readonly cellProfileAvatarFallback: "bui-TableCellProfileAvatarFallback";
1564
- readonly cellProfileName: "bui-TableCellProfileName";
1565
- readonly cellProfileLink: "bui-TableCellProfileLink";
1566
- readonly headSelection: "bui-TableHeadSelection";
1567
- readonly cellSelection: "bui-TableCellSelection";
1568
- };
1569
- readonly dataAttributes: {
1570
- readonly stale: readonly [true, false];
1976
+ readonly root: "bui-Table";
1977
+ };
1978
+ readonly propDefs: {
1979
+ readonly stale: {
1980
+ readonly dataAttribute: true;
1981
+ };
1571
1982
  };
1572
1983
  };
1573
1984
 
1985
+ /**
1986
+ * Own props for the TagGroup component.
1987
+ *
1988
+ * @public
1989
+ */
1990
+ type TagGroupOwnProps<T = object> = {
1991
+ items?: TagListProps<T>['items'];
1992
+ children?: TagListProps<T>['children'];
1993
+ renderEmptyState?: TagListProps<T>['renderEmptyState'];
1994
+ className?: string;
1995
+ };
1574
1996
  /**
1575
1997
  * Props for the TagGroup component.
1576
1998
  *
1577
1999
  * @public
1578
2000
  */
1579
- interface TagGroupProps<T> extends Omit<TagGroupProps$1, 'children'>, Pick<TagListProps<T>, 'items' | 'children' | 'renderEmptyState'> {
2001
+ interface TagGroupProps<T> extends TagGroupOwnProps<T>, Omit<TagGroupProps$1, 'children' | keyof TagGroupOwnProps> {
1580
2002
  }
1581
2003
  /**
1582
- * Props for the Tag component.
2004
+ * Own props for the Tag component.
1583
2005
  *
1584
2006
  * @public
1585
2007
  */
1586
- interface TagProps extends TagProps$1 {
2008
+ type TagOwnProps = {
1587
2009
  /**
1588
2010
  * The icon to display in the chip.
1589
2011
  */
@@ -1592,6 +2014,17 @@ interface TagProps extends TagProps$1 {
1592
2014
  * The size of the chip.
1593
2015
  */
1594
2016
  size?: 'small' | 'medium';
2017
+ href?: TagProps$1['href'];
2018
+ children?: TagProps$1['children'];
2019
+ className?: string;
2020
+ noTrack?: boolean;
2021
+ };
2022
+ /**
2023
+ * Props for the Tag component.
2024
+ *
2025
+ * @public
2026
+ */
2027
+ interface TagProps extends TagOwnProps, Omit<TagProps$1, keyof TagOwnProps> {
1595
2028
  }
1596
2029
 
1597
2030
  /**
@@ -1612,12 +2045,18 @@ declare const Tag: react.ForwardRefExoticComponent<TagProps & react.RefAttribute
1612
2045
  * @public
1613
2046
  */
1614
2047
  declare const TagGroupDefinition: {
2048
+ readonly styles: {
2049
+ readonly [key: string]: string;
2050
+ };
1615
2051
  readonly classNames: {
1616
- readonly group: "bui-TagGroup";
2052
+ readonly root: "bui-TagGroup";
1617
2053
  readonly list: "bui-TagList";
1618
- readonly tag: "bui-Tag";
1619
- readonly tagIcon: "bui-TagIcon";
1620
- readonly tagRemoveButton: "bui-TagRemoveButton";
2054
+ };
2055
+ readonly propDefs: {
2056
+ readonly items: {};
2057
+ readonly children: {};
2058
+ readonly renderEmptyState: {};
2059
+ readonly className: {};
1621
2060
  };
1622
2061
  };
1623
2062
 
@@ -1628,6 +2067,7 @@ type TextOwnProps = {
1628
2067
  weight?: TextWeights | Partial<Record<Breakpoint, TextWeights>>;
1629
2068
  color?: TextColors | TextColorStatus | Partial<Record<Breakpoint, TextColors | TextColorStatus>>;
1630
2069
  truncate?: boolean;
2070
+ className?: string;
1631
2071
  };
1632
2072
  /** @public */
1633
2073
  type TextProps<T extends ElementType = 'span'> = TextOwnProps & Omit<ComponentPropsWithRef<T>, keyof TextOwnProps>;
@@ -1645,40 +2085,65 @@ declare const Text: {
1645
2085
  * @public
1646
2086
  */
1647
2087
  declare const TextDefinition: {
2088
+ readonly styles: {
2089
+ readonly [key: string]: string;
2090
+ };
1648
2091
  readonly classNames: {
1649
2092
  readonly root: "bui-Text";
1650
2093
  };
1651
- readonly dataAttributes: {
1652
- readonly variant: readonly ["subtitle", "body", "caption", "label"];
1653
- readonly weight: readonly ["regular", "bold"];
1654
- readonly color: readonly ["primary", "secondary", "danger", "warning", "success", "info"];
1655
- readonly truncate: readonly [true, false];
2094
+ readonly propDefs: {
2095
+ readonly as: {
2096
+ readonly default: "span";
2097
+ };
2098
+ readonly variant: {
2099
+ readonly dataAttribute: true;
2100
+ readonly default: "body-medium";
2101
+ };
2102
+ readonly weight: {
2103
+ readonly dataAttribute: true;
2104
+ readonly default: "regular";
2105
+ };
2106
+ readonly color: {
2107
+ readonly dataAttribute: true;
2108
+ readonly default: "primary";
2109
+ };
2110
+ readonly truncate: {
2111
+ readonly dataAttribute: true;
2112
+ };
2113
+ readonly className: {};
1656
2114
  };
1657
2115
  };
1658
2116
 
1659
2117
  /** @public */
1660
- interface TextFieldProps extends TextFieldProps$1, Omit<FieldLabelProps, 'htmlFor' | 'id' | 'className'> {
2118
+ type TextFieldOwnProps = {
1661
2119
  /**
1662
- * The HTML input type for the text field
1663
- *
1664
- * @remarks
1665
- * Use `SearchField` for
1666
- * search inputs and `PasswordField` for password inputs.
2120
+ * The size of the text field
2121
+ * @defaultValue 'medium'
1667
2122
  */
1668
- type?: 'text' | 'email' | 'tel' | 'url';
2123
+ size?: 'small' | 'medium' | Partial<Record<Breakpoint, 'small' | 'medium'>>;
2124
+ className?: string;
1669
2125
  /**
1670
2126
  * An icon to render before the input
1671
2127
  */
1672
2128
  icon?: ReactNode;
1673
- /**
1674
- * The size of the text field
1675
- * @defaultValue 'medium'
1676
- */
1677
- size?: 'small' | 'medium' | Partial<Record<Breakpoint, 'small' | 'medium'>>;
1678
2129
  /**
1679
2130
  * Text to display in the input when it has no value
1680
2131
  */
1681
2132
  placeholder?: string;
2133
+ label?: FieldLabelProps['label'];
2134
+ description?: FieldLabelProps['description'];
2135
+ secondaryLabel?: FieldLabelProps['secondaryLabel'];
2136
+ };
2137
+ /** @public */
2138
+ interface TextFieldProps extends Omit<TextFieldProps$1, 'className' | 'description'>, TextFieldOwnProps {
2139
+ /**
2140
+ * The HTML input type for the text field
2141
+ *
2142
+ * @remarks
2143
+ * Use `SearchField` for
2144
+ * search inputs and `PasswordField` for password inputs.
2145
+ */
2146
+ type?: 'text' | 'email' | 'tel' | 'url';
1682
2147
  }
1683
2148
 
1684
2149
  /** @public */
@@ -1689,6 +2154,9 @@ declare const TextField: react.ForwardRefExoticComponent<TextFieldProps & react.
1689
2154
  * @public
1690
2155
  */
1691
2156
  declare const TextFieldDefinition: {
2157
+ readonly styles: {
2158
+ readonly [key: string]: string;
2159
+ };
1692
2160
  readonly classNames: {
1693
2161
  readonly root: "bui-TextField";
1694
2162
  readonly inputWrapper: "bui-InputWrapper";
@@ -1696,28 +2164,43 @@ declare const TextFieldDefinition: {
1696
2164
  readonly inputIcon: "bui-InputIcon";
1697
2165
  readonly inputAction: "bui-InputAction";
1698
2166
  };
1699
- readonly dataAttributes: {
1700
- readonly invalid: readonly [true, false];
1701
- readonly disabled: readonly [true, false];
1702
- readonly size: readonly ["small", "medium"];
2167
+ readonly bg: "consumer";
2168
+ readonly propDefs: {
2169
+ readonly size: {
2170
+ readonly dataAttribute: true;
2171
+ readonly default: "small";
2172
+ };
2173
+ readonly className: {};
2174
+ readonly icon: {};
2175
+ readonly placeholder: {};
2176
+ readonly label: {};
2177
+ readonly description: {};
2178
+ readonly secondaryLabel: {};
1703
2179
  };
1704
2180
  };
1705
2181
 
1706
2182
  /** @public */
1707
- interface PasswordFieldProps extends TextFieldProps$1, Omit<FieldLabelProps, 'htmlFor' | 'id' | 'className'> {
1708
- /**
1709
- * An icon to render before the input
1710
- */
1711
- icon?: ReactNode;
2183
+ type PasswordFieldOwnProps = {
1712
2184
  /**
1713
2185
  * The size of the password field
1714
2186
  * @defaultValue 'medium'
1715
2187
  */
1716
2188
  size?: 'small' | 'medium' | Partial<Record<Breakpoint, 'small' | 'medium'>>;
2189
+ className?: string;
2190
+ /**
2191
+ * An icon to render before the input
2192
+ */
2193
+ icon?: ReactNode;
1717
2194
  /**
1718
2195
  * Text to display in the input when it has no value
1719
2196
  */
1720
2197
  placeholder?: string;
2198
+ label?: FieldLabelProps['label'];
2199
+ description?: FieldLabelProps['description'];
2200
+ secondaryLabel?: FieldLabelProps['secondaryLabel'];
2201
+ };
2202
+ /** @public */
2203
+ interface PasswordFieldProps extends Omit<TextFieldProps$1, 'className' | 'description'>, PasswordFieldOwnProps {
1721
2204
  }
1722
2205
 
1723
2206
  /** @public */
@@ -1728,6 +2211,9 @@ declare const PasswordField: react.ForwardRefExoticComponent<PasswordFieldProps
1728
2211
  * @public
1729
2212
  */
1730
2213
  declare const PasswordFieldDefinition: {
2214
+ readonly styles: {
2215
+ readonly [key: string]: string;
2216
+ };
1731
2217
  readonly classNames: {
1732
2218
  readonly root: "bui-PasswordField";
1733
2219
  readonly inputWrapper: "bui-PasswordFieldInputWrapper";
@@ -1735,14 +2221,27 @@ declare const PasswordFieldDefinition: {
1735
2221
  readonly inputIcon: "bui-PasswordFieldIcon";
1736
2222
  readonly inputVisibility: "bui-PasswordFieldVisibility";
1737
2223
  };
1738
- readonly dataAttributes: {
1739
- readonly size: readonly ["small", "medium"];
2224
+ readonly propDefs: {
2225
+ readonly size: {
2226
+ readonly dataAttribute: true;
2227
+ readonly default: "small";
2228
+ };
2229
+ readonly className: {};
2230
+ readonly icon: {};
2231
+ readonly placeholder: {};
2232
+ readonly label: {};
2233
+ readonly description: {};
2234
+ readonly secondaryLabel: {};
1740
2235
  };
1741
2236
  };
1742
2237
 
1743
2238
  /** @public */
1744
- interface TooltipProps extends Omit<TooltipProps$1, 'children'> {
2239
+ type TooltipOwnProps = {
1745
2240
  children: React.ReactNode;
2241
+ className?: string;
2242
+ };
2243
+ /** @public */
2244
+ interface TooltipProps extends Omit<TooltipProps$1, 'children' | 'className'>, TooltipOwnProps {
1746
2245
  }
1747
2246
 
1748
2247
  /** @public */
@@ -1755,10 +2254,18 @@ declare const Tooltip: react.ForwardRefExoticComponent<TooltipProps & react.RefA
1755
2254
  * @public
1756
2255
  */
1757
2256
  declare const TooltipDefinition: {
2257
+ readonly styles: {
2258
+ readonly [key: string]: string;
2259
+ };
1758
2260
  readonly classNames: {
1759
2261
  readonly tooltip: "bui-Tooltip";
2262
+ readonly content: "bui-TooltipContent";
1760
2263
  readonly arrow: "bui-TooltipArrow";
1761
2264
  };
2265
+ readonly propDefs: {
2266
+ readonly children: {};
2267
+ readonly className: {};
2268
+ };
1762
2269
  };
1763
2270
 
1764
2271
  /** @public */
@@ -1767,53 +2274,81 @@ interface MenuTriggerProps extends MenuTriggerProps$1 {
1767
2274
  /** @public */
1768
2275
  interface SubmenuTriggerProps extends SubmenuTriggerProps$1 {
1769
2276
  }
1770
- /** @public */
1771
- interface MenuProps<T> extends MenuProps$1<T>, Omit<MenuProps$1<T>, 'children'> {
2277
+ /**
2278
+ * Common own props shared by all Menu popover variants.
2279
+ *
2280
+ * @public
2281
+ */
2282
+ type MenuPopoverOwnProps = {
1772
2283
  placement?: PopoverProps$1['placement'];
1773
2284
  virtualized?: boolean;
1774
2285
  maxWidth?: string;
1775
2286
  maxHeight?: string;
2287
+ style?: React.CSSProperties;
2288
+ className?: string;
2289
+ };
2290
+ /** @public */
2291
+ type MenuOwnProps = MenuPopoverOwnProps;
2292
+ /** @public */
2293
+ interface MenuProps<T> extends MenuOwnProps, Omit<MenuProps$1<T>, keyof MenuOwnProps> {
1776
2294
  }
1777
2295
  /** @public */
1778
- interface MenuListBoxProps<T> extends ListBoxProps<T>, Omit<ListBoxProps<T>, 'children'> {
1779
- placement?: PopoverProps$1['placement'];
1780
- virtualized?: boolean;
1781
- maxWidth?: string;
1782
- maxHeight?: string;
2296
+ type MenuListBoxOwnProps = MenuPopoverOwnProps & {
2297
+ selectionMode?: ListBoxProps<object>['selectionMode'];
2298
+ };
2299
+ /** @public */
2300
+ interface MenuListBoxProps<T> extends MenuListBoxOwnProps, Omit<ListBoxProps<T>, keyof MenuListBoxOwnProps> {
1783
2301
  }
1784
2302
  /** @public */
1785
- interface MenuAutocompleteProps<T> extends MenuProps$1<T>, Omit<MenuProps$1<T>, 'children'> {
2303
+ type MenuAutocompleteOwnProps = MenuPopoverOwnProps & {
1786
2304
  placeholder?: string;
1787
- placement?: PopoverProps$1['placement'];
1788
- virtualized?: boolean;
1789
- maxWidth?: string;
1790
- maxHeight?: string;
2305
+ };
2306
+ /** @public */
2307
+ interface MenuAutocompleteProps<T> extends MenuAutocompleteOwnProps, Omit<MenuProps$1<T>, keyof MenuAutocompleteOwnProps> {
1791
2308
  }
1792
2309
  /** @public */
1793
- interface MenuAutocompleteListBoxProps<T> extends ListBoxProps<T>, Omit<ListBoxProps<T>, 'children'> {
2310
+ type MenuAutocompleteListBoxOwnProps = MenuPopoverOwnProps & {
1794
2311
  placeholder?: string;
1795
- placement?: PopoverProps$1['placement'];
1796
- virtualized?: boolean;
1797
- maxWidth?: string;
1798
- maxHeight?: string;
2312
+ selectionMode?: ListBoxProps<object>['selectionMode'];
2313
+ };
2314
+ /** @public */
2315
+ interface MenuAutocompleteListBoxProps<T> extends MenuAutocompleteListBoxOwnProps, Omit<ListBoxProps<T>, keyof MenuAutocompleteListBoxOwnProps> {
1799
2316
  }
1800
2317
  /** @public */
1801
- interface MenuItemProps extends MenuItemProps$1, Omit<MenuItemProps$1, 'children'> {
2318
+ type MenuItemOwnProps = {
1802
2319
  iconStart?: React.ReactNode;
1803
2320
  children: React.ReactNode;
1804
2321
  color?: 'primary' | 'danger';
2322
+ href?: MenuItemProps$1['href'];
2323
+ noTrack?: boolean;
2324
+ className?: string;
2325
+ };
2326
+ /** @public */
2327
+ interface MenuItemProps extends MenuItemOwnProps, Omit<MenuItemProps$1, keyof MenuItemOwnProps> {
1805
2328
  }
1806
2329
  /** @public */
1807
- interface MenuListBoxItemProps extends ListBoxItemProps, Omit<ListBoxItemProps, 'children'> {
2330
+ type MenuListBoxItemOwnProps = {
1808
2331
  children: React.ReactNode;
2332
+ className?: string;
2333
+ };
2334
+ /** @public */
2335
+ interface MenuListBoxItemProps extends MenuListBoxItemOwnProps, Omit<ListBoxItemProps, keyof MenuListBoxItemOwnProps> {
1809
2336
  }
1810
2337
  /** @public */
1811
- interface MenuSectionProps<T> extends MenuSectionProps$1<T>, Omit<MenuSectionProps$1<T>, 'children'> {
2338
+ type MenuSectionOwnProps = {
1812
2339
  title: string;
1813
2340
  children: React.ReactNode;
2341
+ className?: string;
2342
+ };
2343
+ /** @public */
2344
+ interface MenuSectionProps<T> extends MenuSectionOwnProps, Omit<MenuSectionProps$1<T>, keyof MenuSectionOwnProps> {
1814
2345
  }
1815
2346
  /** @public */
1816
- interface MenuSeparatorProps extends SeparatorProps {
2347
+ type MenuSeparatorOwnProps = {
2348
+ className?: string;
2349
+ };
2350
+ /** @public */
2351
+ interface MenuSeparatorProps extends MenuSeparatorOwnProps, Omit<SeparatorProps, keyof MenuSeparatorOwnProps> {
1817
2352
  }
1818
2353
 
1819
2354
  /** @public */
@@ -1842,32 +2377,30 @@ declare const MenuSeparator: (props: MenuSeparatorProps) => react_jsx_runtime.JS
1842
2377
  * @public
1843
2378
  */
1844
2379
  declare const MenuDefinition: {
2380
+ readonly styles: {
2381
+ readonly [key: string]: string;
2382
+ };
1845
2383
  readonly classNames: {
1846
- readonly root: "bui-Menu";
1847
- readonly popover: "bui-MenuPopover";
2384
+ readonly root: "bui-MenuPopover";
2385
+ readonly inner: "bui-MenuInner";
1848
2386
  readonly content: "bui-MenuContent";
1849
- readonly section: "bui-MenuSection";
1850
- readonly sectionHeader: "bui-MenuSectionHeader";
1851
- readonly item: "bui-MenuItem";
1852
- readonly itemListBox: "bui-MenuItemListBox";
1853
- readonly itemListBoxCheck: "bui-MenuItemListBoxCheck";
1854
- readonly itemWrapper: "bui-MenuItemWrapper";
1855
- readonly itemContent: "bui-MenuItemContent";
1856
- readonly itemArrow: "bui-MenuItemArrow";
1857
- readonly separator: "bui-MenuSeparator";
1858
- readonly searchField: "bui-MenuSearchField";
1859
- readonly searchFieldInput: "bui-MenuSearchFieldInput";
1860
- readonly searchFieldClear: "bui-MenuSearchFieldClear";
1861
- readonly emptyState: "bui-MenuEmptyState";
2387
+ };
2388
+ readonly propDefs: {
2389
+ readonly placement: {
2390
+ readonly default: "bottom start";
2391
+ };
2392
+ readonly virtualized: {
2393
+ readonly default: false;
2394
+ };
2395
+ readonly maxWidth: {};
2396
+ readonly maxHeight: {};
2397
+ readonly style: {};
2398
+ readonly className: {};
1862
2399
  };
1863
2400
  };
1864
2401
 
1865
- /**
1866
- * Properties for {@link Popover}
1867
- *
1868
- * @public
1869
- */
1870
- interface PopoverProps extends Omit<PopoverProps$1, 'children'> {
2402
+ /** @public */
2403
+ type PopoverOwnProps = {
1871
2404
  /**
1872
2405
  * The content to display inside the popover.
1873
2406
  * Content is automatically wrapped with padding and scroll behavior.
@@ -1880,6 +2413,14 @@ interface PopoverProps extends Omit<PopoverProps$1, 'children'> {
1880
2413
  * @defaultValue false
1881
2414
  */
1882
2415
  hideArrow?: boolean;
2416
+ className?: string;
2417
+ };
2418
+ /**
2419
+ * Properties for {@link Popover}
2420
+ *
2421
+ * @public
2422
+ */
2423
+ interface PopoverProps extends Omit<PopoverProps$1, 'children' | 'className'>, PopoverOwnProps {
1883
2424
  }
1884
2425
 
1885
2426
  /**
@@ -1924,15 +2465,23 @@ declare const Popover: react.ForwardRefExoticComponent<PopoverProps & react.RefA
1924
2465
  * @public
1925
2466
  */
1926
2467
  declare const PopoverDefinition: {
2468
+ readonly styles: {
2469
+ readonly [key: string]: string;
2470
+ };
1927
2471
  readonly classNames: {
1928
2472
  readonly root: "bui-Popover";
1929
2473
  readonly arrow: "bui-PopoverArrow";
1930
2474
  readonly content: "bui-PopoverContent";
1931
2475
  };
2476
+ readonly propDefs: {
2477
+ readonly children: {};
2478
+ readonly hideArrow: {};
2479
+ readonly className: {};
2480
+ };
1932
2481
  };
1933
2482
 
1934
2483
  /** @public */
1935
- interface SearchFieldProps extends SearchFieldProps$1, Omit<FieldLabelProps, 'htmlFor' | 'id' | 'className'> {
2484
+ type SearchFieldOwnProps = {
1936
2485
  /**
1937
2486
  * An icon to render before the input
1938
2487
  */
@@ -1950,6 +2499,13 @@ interface SearchFieldProps extends SearchFieldProps$1, Omit<FieldLabelProps, 'ht
1950
2499
  * Controls whether the SearchField starts in a collapsed state.
1951
2500
  */
1952
2501
  startCollapsed?: boolean;
2502
+ className?: string;
2503
+ label?: FieldLabelProps['label'];
2504
+ description?: FieldLabelProps['description'];
2505
+ secondaryLabel?: FieldLabelProps['secondaryLabel'];
2506
+ };
2507
+ /** @public */
2508
+ interface SearchFieldProps extends Omit<SearchFieldProps$1, 'className' | 'description'>, SearchFieldOwnProps {
1953
2509
  }
1954
2510
 
1955
2511
  /** @public */
@@ -1960,6 +2516,9 @@ declare const SearchField: react.ForwardRefExoticComponent<SearchFieldProps & re
1960
2516
  * @public
1961
2517
  */
1962
2518
  declare const SearchFieldDefinition: {
2519
+ readonly styles: {
2520
+ readonly [key: string]: string;
2521
+ };
1963
2522
  readonly classNames: {
1964
2523
  readonly root: "bui-SearchField";
1965
2524
  readonly clear: "bui-SearchFieldClear";
@@ -1967,14 +2526,30 @@ declare const SearchFieldDefinition: {
1967
2526
  readonly input: "bui-SearchFieldInput";
1968
2527
  readonly inputIcon: "bui-SearchFieldInputIcon";
1969
2528
  };
1970
- readonly dataAttributes: {
1971
- readonly startCollapsed: readonly [true, false];
1972
- readonly size: readonly ["small", "medium"];
2529
+ readonly bg: "consumer";
2530
+ readonly propDefs: {
2531
+ readonly startCollapsed: {
2532
+ readonly dataAttribute: true;
2533
+ readonly default: false;
2534
+ };
2535
+ readonly size: {
2536
+ readonly dataAttribute: true;
2537
+ readonly default: "small";
2538
+ };
2539
+ readonly className: {};
2540
+ readonly icon: {};
2541
+ readonly placeholder: {
2542
+ readonly default: "Search";
2543
+ };
2544
+ readonly label: {};
2545
+ readonly description: {};
2546
+ readonly secondaryLabel: {};
1973
2547
  };
1974
2548
  };
1975
2549
 
1976
2550
  /** @public */
1977
- interface LinkProps extends LinkProps$1 {
2551
+ type LinkOwnProps = {
2552
+ noTrack?: boolean;
1978
2553
  variant?: TextVariants | Partial<Record<Breakpoint, TextVariants>>;
1979
2554
  weight?: TextWeights | Partial<Record<Breakpoint, TextWeights>>;
1980
2555
  color?: TextColors | TextColorStatus | Partial<Record<Breakpoint, TextColors | TextColorStatus>>;
@@ -1982,6 +2557,10 @@ interface LinkProps extends LinkProps$1 {
1982
2557
  standalone?: boolean;
1983
2558
  title?: string;
1984
2559
  children?: ReactNode;
2560
+ className?: string;
2561
+ };
2562
+ /** @public */
2563
+ interface LinkProps extends Omit<LinkProps$1, 'children' | 'className'>, LinkOwnProps {
1985
2564
  }
1986
2565
 
1987
2566
  /** @public */
@@ -1992,15 +2571,36 @@ declare const Link: react.ForwardRefExoticComponent<LinkProps & react.RefAttribu
1992
2571
  * @public
1993
2572
  */
1994
2573
  declare const LinkDefinition: {
2574
+ readonly styles: {
2575
+ readonly [key: string]: string;
2576
+ };
1995
2577
  readonly classNames: {
1996
2578
  readonly root: "bui-Link";
1997
2579
  };
1998
- readonly dataAttributes: {
1999
- readonly variant: readonly ["subtitle", "body", "caption", "label"];
2000
- readonly weight: readonly ["regular", "bold"];
2001
- readonly color: readonly ["primary", "secondary", "danger", "warning", "success", "info"];
2002
- readonly truncate: readonly [true, false];
2003
- readonly standalone: readonly [true, false];
2580
+ readonly analytics: true;
2581
+ readonly propDefs: {
2582
+ readonly noTrack: {};
2583
+ readonly variant: {
2584
+ readonly dataAttribute: true;
2585
+ readonly default: "body-medium";
2586
+ };
2587
+ readonly weight: {
2588
+ readonly dataAttribute: true;
2589
+ readonly default: "regular";
2590
+ };
2591
+ readonly color: {
2592
+ readonly dataAttribute: true;
2593
+ readonly default: "primary";
2594
+ };
2595
+ readonly truncate: {
2596
+ readonly dataAttribute: true;
2597
+ };
2598
+ readonly standalone: {
2599
+ readonly dataAttribute: true;
2600
+ };
2601
+ readonly title: {};
2602
+ readonly children: {};
2603
+ readonly className: {};
2004
2604
  };
2005
2605
  };
2006
2606
 
@@ -2011,7 +2611,7 @@ type Option = {
2011
2611
  disabled?: boolean;
2012
2612
  };
2013
2613
  /** @public */
2014
- interface SelectProps<T extends 'single' | 'multiple'> extends SelectProps$1<Option, T>, Omit<FieldLabelProps, 'htmlFor' | 'id' | 'className'> {
2614
+ type SelectOwnProps = {
2015
2615
  /**
2016
2616
  * An icon to render before the input
2017
2617
  */
@@ -2036,6 +2636,14 @@ interface SelectProps<T extends 'single' | 'multiple'> extends SelectProps$1<Opt
2036
2636
  * @defaultvalue 'search...'
2037
2637
  */
2038
2638
  searchPlaceholder?: string;
2639
+ label?: FieldLabelProps['label'];
2640
+ secondaryLabel?: FieldLabelProps['secondaryLabel'];
2641
+ description?: FieldLabelProps['description'];
2642
+ isRequired?: boolean;
2643
+ className?: string;
2644
+ };
2645
+ /** @public */
2646
+ interface SelectProps<T extends 'single' | 'multiple'> extends SelectOwnProps, Omit<SelectProps$1<Option, T>, keyof SelectOwnProps> {
2039
2647
  /**
2040
2648
  * Selection mode, single or multiple
2041
2649
  * @defaultvalue 'single'
@@ -2051,31 +2659,40 @@ declare const Select: react.ForwardRefExoticComponent<SelectProps<"multiple" | "
2051
2659
  * @public
2052
2660
  */
2053
2661
  declare const SelectDefinition: {
2662
+ readonly styles: {
2663
+ readonly [key: string]: string;
2664
+ };
2054
2665
  readonly classNames: {
2055
2666
  readonly root: "bui-Select";
2056
2667
  readonly popover: "bui-SelectPopover";
2057
- readonly trigger: "bui-SelectTrigger";
2058
- readonly chevron: "bui-SelectTriggerChevron";
2059
- readonly value: "bui-SelectValue";
2060
- readonly list: "bui-SelectList";
2061
- readonly item: "bui-SelectItem";
2062
- readonly itemIndicator: "bui-SelectItemIndicator";
2063
- readonly itemLabel: "bui-SelectItemLabel";
2064
- readonly searchWrapper: "bui-SelectSearchWrapper";
2065
- readonly search: "bui-SelectSearch";
2066
- readonly searchClear: "bui-SelectSearchClear";
2067
- readonly noResults: "bui-SelectNoResults";
2068
2668
  };
2069
- readonly dataAttributes: {
2070
- readonly size: readonly ["small", "medium"];
2669
+ readonly propDefs: {
2670
+ readonly icon: {};
2671
+ readonly size: {
2672
+ readonly dataAttribute: true;
2673
+ readonly default: "small";
2674
+ };
2675
+ readonly options: {};
2676
+ readonly searchable: {};
2677
+ readonly searchPlaceholder: {};
2678
+ readonly label: {};
2679
+ readonly secondaryLabel: {};
2680
+ readonly description: {};
2681
+ readonly isRequired: {};
2682
+ readonly className: {};
2071
2683
  };
2072
2684
  };
2073
2685
 
2074
2686
  /** @public */
2075
- interface SkeletonProps extends ComponentProps<'div'> {
2687
+ type SkeletonOwnProps = {
2076
2688
  width?: number | string;
2077
2689
  height?: number | string;
2078
2690
  rounded?: boolean;
2691
+ className?: string;
2692
+ style?: React.CSSProperties;
2693
+ };
2694
+ /** @public */
2695
+ interface SkeletonProps extends Omit<ComponentProps<'div'>, 'children' | 'className' | 'style'>, SkeletonOwnProps {
2079
2696
  }
2080
2697
 
2081
2698
  /** @public */
@@ -2086,17 +2703,38 @@ declare const Skeleton: (props: SkeletonProps) => react_jsx_runtime.JSX.Element;
2086
2703
  * @public
2087
2704
  */
2088
2705
  declare const SkeletonDefinition: {
2706
+ readonly styles: {
2707
+ readonly [key: string]: string;
2708
+ };
2089
2709
  readonly classNames: {
2090
2710
  readonly root: "bui-Skeleton";
2091
2711
  };
2712
+ readonly propDefs: {
2713
+ readonly width: {
2714
+ readonly default: 80;
2715
+ };
2716
+ readonly height: {
2717
+ readonly default: 24;
2718
+ };
2719
+ readonly rounded: {
2720
+ readonly dataAttribute: true;
2721
+ readonly default: false;
2722
+ };
2723
+ readonly className: {};
2724
+ readonly style: {};
2725
+ };
2092
2726
  };
2093
2727
 
2094
2728
  /** @public */
2095
- interface SwitchProps extends SwitchProps$1 {
2729
+ type SwitchOwnProps = {
2096
2730
  /**
2097
2731
  * The label of the switch
2098
2732
  */
2099
2733
  label?: string;
2734
+ className?: string;
2735
+ };
2736
+ /** @public */
2737
+ interface SwitchProps extends Omit<SwitchProps$1, 'className'>, SwitchOwnProps {
2100
2738
  }
2101
2739
 
2102
2740
  /** @public */
@@ -2107,21 +2745,33 @@ declare const Switch: react.ForwardRefExoticComponent<SwitchProps & react.RefAtt
2107
2745
  * @public
2108
2746
  */
2109
2747
  declare const SwitchDefinition: {
2748
+ readonly styles: {
2749
+ readonly [key: string]: string;
2750
+ };
2110
2751
  readonly classNames: {
2111
2752
  readonly root: "bui-Switch";
2112
2753
  readonly indicator: "bui-SwitchIndicator";
2113
2754
  };
2755
+ readonly propDefs: {
2756
+ readonly label: {};
2757
+ readonly className: {};
2758
+ };
2114
2759
  };
2115
2760
 
2761
+ /** @public */
2762
+ type ToggleButtonOwnProps = {
2763
+ size?: 'small' | 'medium' | Partial<Record<Breakpoint, 'small' | 'medium'>>;
2764
+ iconStart?: ReactElement;
2765
+ iconEnd?: ReactElement;
2766
+ children?: ToggleButtonProps$1['children'];
2767
+ className?: string;
2768
+ };
2116
2769
  /**
2117
2770
  * Properties for {@link ToggleButton}
2118
2771
  *
2119
2772
  * @public
2120
2773
  */
2121
- interface ToggleButtonProps extends ToggleButtonProps$1 {
2122
- size?: 'small' | 'medium' | Partial<Record<Breakpoint, 'small' | 'medium'>>;
2123
- iconStart?: ReactElement;
2124
- iconEnd?: ReactElement;
2774
+ interface ToggleButtonProps extends Omit<ToggleButtonProps$1, 'children' | 'className'>, ToggleButtonOwnProps {
2125
2775
  }
2126
2776
 
2127
2777
  /** @public */
@@ -2132,18 +2782,32 @@ declare const ToggleButton: react.ForwardRefExoticComponent<ToggleButtonProps &
2132
2782
  * @public
2133
2783
  */
2134
2784
  declare const ToggleButtonDefinition: {
2785
+ readonly styles: {
2786
+ readonly [key: string]: string;
2787
+ };
2135
2788
  readonly classNames: {
2136
2789
  readonly root: "bui-ToggleButton";
2137
2790
  readonly content: "bui-ToggleButtonContent";
2138
2791
  };
2139
- readonly dataAttributes: {
2140
- readonly size: readonly ["small", "medium"];
2792
+ readonly propDefs: {
2793
+ readonly size: {
2794
+ readonly dataAttribute: true;
2795
+ readonly default: "small";
2796
+ };
2797
+ readonly iconStart: {};
2798
+ readonly iconEnd: {};
2799
+ readonly children: {};
2800
+ readonly className: {};
2141
2801
  };
2142
2802
  };
2143
2803
 
2144
2804
  /** @public */
2145
- interface ToggleButtonGroupProps extends Omit<ToggleButtonGroupProps$1, 'orientation'> {
2146
- orientation?: NonNullable<ToggleButtonGroupProps$1['orientation']>;
2805
+ type ToggleButtonGroupOwnProps = {
2806
+ className?: string;
2807
+ children?: ReactNode;
2808
+ };
2809
+ /** @public */
2810
+ interface ToggleButtonGroupProps extends Omit<ToggleButtonGroupProps$1, 'className' | 'children'>, ToggleButtonGroupOwnProps {
2147
2811
  }
2148
2812
 
2149
2813
  /** @public */
@@ -2154,21 +2818,28 @@ declare const ToggleButtonGroup: react.ForwardRefExoticComponent<ToggleButtonGro
2154
2818
  * @public
2155
2819
  */
2156
2820
  declare const ToggleButtonGroupDefinition: {
2821
+ readonly styles: {
2822
+ readonly [key: string]: string;
2823
+ };
2157
2824
  readonly classNames: {
2158
2825
  readonly root: "bui-ToggleButtonGroup";
2159
2826
  };
2160
- readonly dataAttributes: {
2161
- readonly orientation: readonly ["horizontal", "vertical"];
2827
+ readonly propDefs: {
2828
+ readonly className: {};
2829
+ readonly children: {};
2162
2830
  };
2163
2831
  };
2164
2832
 
2833
+ /** @public */
2834
+ type VisuallyHiddenOwnProps = {
2835
+ className?: string;
2836
+ };
2165
2837
  /**
2166
2838
  * Properties for {@link VisuallyHidden}
2167
2839
  *
2168
2840
  * @public
2169
2841
  */
2170
- interface VisuallyHiddenProps extends ComponentProps<'div'> {
2171
- children?: React.ReactNode;
2842
+ interface VisuallyHiddenProps extends Omit<ComponentProps<'div'>, 'className'>, VisuallyHiddenOwnProps {
2172
2843
  }
2173
2844
 
2174
2845
  /**
@@ -2187,9 +2858,15 @@ declare const VisuallyHidden: (props: VisuallyHiddenProps) => react_jsx_runtime.
2187
2858
  * @public
2188
2859
  */
2189
2860
  declare const VisuallyHiddenDefinition: {
2861
+ readonly styles: {
2862
+ readonly [key: string]: string;
2863
+ };
2190
2864
  readonly classNames: {
2191
2865
  readonly root: "bui-VisuallyHidden";
2192
2866
  };
2867
+ readonly propDefs: {
2868
+ readonly className: {};
2869
+ };
2193
2870
  };
2194
2871
 
2195
2872
  /** @public */
@@ -2231,10 +2908,14 @@ declare function useBgConsumer(): BgContextValue;
2231
2908
  *
2232
2909
  * - `bg` is `undefined` -- transparent, no context change, returns `{ bg: undefined }`.
2233
2910
  * This is the default for Box, Flex, and Grid (they do **not** auto-increment).
2234
- * - `bg` is a `ContainerBg` value -- uses that value directly (e.g. `'neutral-1'`).
2235
- * - `bg` is `'neutral-auto'` -- increments the neutral level from the parent context,
2236
- * capping at `neutral-3`. Only components that explicitly pass `'neutral-auto'`
2237
- * (e.g. Card) will auto-increment; it is never implicit.
2911
+ * - `bg` is `'neutral'` -- when the parent bg is neutral, increments the neutral
2912
+ * level from the parent context, capping at `neutral-3`. When the parent bg is
2913
+ * an intent (`'danger'` | `'warning'` | `'success'`), the intent passes through
2914
+ * unchanged (i.e. `bg: 'neutral'` does not override the parent intent). The
2915
+ * increment is always relative to the parent; it is not possible to pin a
2916
+ * container to an explicit neutral level.
2917
+ * - `bg` is `'danger'` | `'warning'` | `'success'` -- sets the bg to that intent
2918
+ * explicitly, regardless of the parent value.
2238
2919
  *
2239
2920
  * **Capping:**
2240
2921
  *
@@ -2249,5 +2930,78 @@ declare function useBgConsumer(): BgContextValue;
2249
2930
  */
2250
2931
  declare function useBgProvider(bg?: Responsive<ProviderBg>): BgContextValue;
2251
2932
 
2252
- export { Accordion, AccordionDefinition, AccordionGroup, AccordionGroupDefinition, AccordionPanel, AccordionPanelDefinition, AccordionTrigger, AccordionTriggerDefinition, Alert, AlertDefinition, Avatar, AvatarDefinition, BgProvider, Box, BoxDefinition, Button, ButtonDefinition, ButtonIcon, ButtonIconDefinition, ButtonLink, ButtonLinkDefinition, Card, CardBody, CardBodyDefinition, CardDefinition, CardFooter, CardFooterDefinition, CardHeader, CardHeaderDefinition, Cell, CellProfile, CellText, Checkbox, CheckboxDefinition, Column, Container, ContainerDefinition, Dialog, DialogBody, DialogDefinition, DialogFooter, DialogHeader, DialogTrigger, FieldLabel, FieldLabelDefinition, Flex, FlexDefinition, FullPage, FullPageDefinition, Grid, GridDefinition, GridItemDefinition, HeaderPage, HeaderPageDefinition, Link, LinkDefinition, Menu, MenuAutocomplete, MenuAutocompleteListbox, MenuDefinition, MenuItem, MenuListBox, MenuListBoxItem, MenuSection, MenuSeparator, MenuTrigger, PasswordField, PasswordFieldDefinition, PluginHeader, PluginHeaderDefinition, Popover, PopoverDefinition, Radio, RadioGroup, RadioGroupDefinition, Row, SearchField, SearchFieldDefinition, Select, SelectDefinition, Skeleton, SkeletonDefinition, SubmenuTrigger, Switch, SwitchDefinition, Tab, TabList, TabPanel, Table, TableBody, TableDefinition, TableHeader, TablePagination, TablePaginationDefinition, TableRoot, Tabs, TabsDefinition, Tag, TagGroup, TagGroupDefinition, Text, TextDefinition, TextField, TextFieldDefinition, ToggleButton, ToggleButtonDefinition, ToggleButtonGroup, ToggleButtonGroupDefinition, Tooltip, TooltipDefinition, TooltipTrigger, VisuallyHidden, VisuallyHiddenDefinition, useBgConsumer, useBgProvider, useBreakpoint, useTable };
2253
- export type { AccordionGroupOwnProps, AccordionGroupProps, AccordionOwnProps, AccordionPanelOwnProps, AccordionPanelProps, AccordionProps, AccordionTriggerOwnProps, AccordionTriggerProps, AlertOwnProps, AlertProps, AlignItems, AvatarProps, BgContextValue, BgProviderProps, Border, BorderRadius, BoxOwnProps, BoxProps, BoxUtilityProps, Breakpoint, ButtonIconOwnProps, ButtonIconProps, ButtonLinkOwnProps, ButtonLinkProps, ButtonOwnProps, ButtonProps, CardBodyOwnProps, CardBodyProps, CardFooterOwnProps, CardFooterProps, CardHeaderOwnProps, CardHeaderProps, CardOwnProps, CardProps, CellProfileProps, CellProps, CellTextProps, CheckboxProps, ClassNamesMap, ColumnConfig, ColumnProps, Columns, ComponentDefinition, ContainerBg, ContainerProps, CursorParams, CursorResponse, DataAttributeValues, DataAttributesMap, DialogBodyProps, DialogHeaderProps, DialogProps, DialogTriggerProps, Display, FieldLabelProps, FilterState, FlexDirection, FlexProps, FlexWrap, FullPageProps, GridItemProps, GridProps, HeaderPageBreadcrumb, HeaderPageProps, HeaderTab, JustifyContent, LinkProps, MarginProps, MenuAutocompleteListBoxProps, MenuAutocompleteProps, MenuItemProps, MenuListBoxItemProps, MenuListBoxProps, MenuProps, MenuSectionProps, MenuSeparatorProps, MenuTriggerProps, NoPagination, OffsetParams, OffsetResponse, Option, PaddingProps, PagePagination, PageSizeOption, PaginationOptions, PasswordFieldProps, PluginHeaderProps, PopoverProps, ProviderBg, QueryOptions, RadioGroupProps, RadioProps, Responsive, RowConfig, RowRenderFn, SearchFieldProps, SearchState, SelectProps, SkeletonProps, SortDescriptor, SortState, Space, SpaceProps, SubmenuTriggerProps, SwitchProps, TabListProps, TabMatchStrategy, TabPanelProps, TabProps, TableItem, TablePaginationProps, TablePaginationType, TableProps, TableRootProps, TableSelection, TabsProps, TagGroupProps, TagProps, TextColorStatus, TextColors, TextFieldProps, TextOwnProps, TextProps, TextVariants, TextWeights, ToggleButtonGroupProps, ToggleButtonProps, TooltipProps, UseTableCompleteOptions, UseTableCursorOptions, UseTableOffsetOptions, UseTableOptions, UseTableResult, UtilityProps, VisuallyHiddenProps };
2933
+ /**
2934
+ * Key-value metadata attached to analytics events.
2935
+ * @public
2936
+ */
2937
+ type AnalyticsEventAttributes = {
2938
+ [key: string]: string | boolean | number;
2939
+ };
2940
+ /**
2941
+ * A generic interface for capturing analytics events. Consumers provide
2942
+ * an implementation via `BUIProvider` — this allows `@backstage/ui`
2943
+ * to fire analytics events without depending on any specific analytics
2944
+ * system. The signature intentionally matches Backstage's own
2945
+ * `AnalyticsTracker` so it can be wired through directly.
2946
+ * @public
2947
+ */
2948
+ type AnalyticsTracker = {
2949
+ captureEvent: (action: string, subject: string, options?: {
2950
+ value?: number;
2951
+ attributes?: AnalyticsEventAttributes;
2952
+ }) => void;
2953
+ };
2954
+ /**
2955
+ * A hook function that returns an AnalyticsTracker.
2956
+ * Provided via context by the consumer (e.g. a Backstage app).
2957
+ * @public
2958
+ */
2959
+ type UseAnalyticsFn = () => AnalyticsTracker;
2960
+
2961
+ /**
2962
+ * Returns an AnalyticsTracker for capturing analytics events.
2963
+ *
2964
+ * By default returns a noop tracker. When a `BUIProvider` is present
2965
+ * in the tree, returns the tracker provided by the consumer's hook.
2966
+ *
2967
+ * @public
2968
+ */
2969
+ declare function useAnalytics(): AnalyticsTracker;
2970
+
2971
+ /** @public */
2972
+ type BUIProviderProps = {
2973
+ useAnalytics?: UseAnalyticsFn;
2974
+ children: ReactNode;
2975
+ };
2976
+ /**
2977
+ * Provides integration capabilities to all descendant BUI components.
2978
+ *
2979
+ * @example
2980
+ * ```tsx
2981
+ * import { BUIProvider } from '@backstage/ui';
2982
+ * import { useAnalytics as useBackstageAnalytics } from '@backstage/core-plugin-api';
2983
+ *
2984
+ * function App() {
2985
+ * return (
2986
+ * <BUIProvider useAnalytics={useBackstageAnalytics}>
2987
+ * <AppContent />
2988
+ * </BUIProvider>
2989
+ * );
2990
+ * }
2991
+ * ```
2992
+ *
2993
+ * @public
2994
+ */
2995
+ declare function BUIProvider(props: BUIProviderProps): react_jsx_runtime.JSX.Element;
2996
+
2997
+ /**
2998
+ * Recursively extracts text content from a React node tree.
2999
+ * Returns undefined if no text content is found (e.g. icon-only children
3000
+ * or render functions).
3001
+ *
3002
+ * @public
3003
+ */
3004
+ declare function getNodeText(node: ReactNode | ((...args: any[]) => ReactNode)): string | undefined;
3005
+
3006
+ export { Accordion, AccordionDefinition, AccordionGroup, AccordionGroupDefinition, AccordionPanel, AccordionPanelDefinition, AccordionTrigger, AccordionTriggerDefinition, Alert, AlertDefinition, Avatar, AvatarDefinition, BUIProvider, BgProvider, Box, BoxDefinition, Button, ButtonDefinition, ButtonIcon, ButtonIconDefinition, ButtonLink, ButtonLinkDefinition, Card, CardBody, CardBodyDefinition, CardDefinition, CardFooter, CardFooterDefinition, CardHeader, CardHeaderDefinition, Cell, CellProfile, CellText, Checkbox, CheckboxDefinition, Column, Container, ContainerDefinition, Dialog, DialogBody, DialogBodyDefinition, DialogDefinition, DialogFooter, DialogFooterDefinition, DialogHeader, DialogHeaderDefinition, DialogTrigger, FieldLabel, FieldLabelDefinition, Flex, FlexDefinition, FullPage, FullPageDefinition, Grid, GridDefinition, GridItemDefinition, Header, HeaderDefinition, HeaderPage, HeaderPageDefinition, Link, LinkDefinition, Menu, MenuAutocomplete, MenuAutocompleteListbox, MenuDefinition, MenuItem, MenuListBox, MenuListBoxItem, MenuSection, MenuSeparator, MenuTrigger, PasswordField, PasswordFieldDefinition, PluginHeader, PluginHeaderDefinition, Popover, PopoverDefinition, Radio, RadioDefinition, RadioGroup, RadioGroupDefinition, Row, SearchField, SearchFieldDefinition, Select, SelectDefinition, Skeleton, SkeletonDefinition, SubmenuTrigger, Switch, SwitchDefinition, Tab, TabList, TabPanel, Table, TableBody, TableDefinition, TableHeader, TablePagination, TablePaginationDefinition, TableRoot, Tabs, TabsDefinition, Tag, TagGroup, TagGroupDefinition, Text, TextDefinition, TextField, TextFieldDefinition, ToggleButton, ToggleButtonDefinition, ToggleButtonGroup, ToggleButtonGroupDefinition, Tooltip, TooltipDefinition, TooltipTrigger, VisuallyHidden, VisuallyHiddenDefinition, getNodeText, useAnalytics, useBgConsumer, useBgProvider, useBreakpoint, useTable };
3007
+ export type { AccordionGroupOwnProps, AccordionGroupProps, AccordionOwnProps, AccordionPanelOwnProps, AccordionPanelProps, AccordionProps, AccordionTriggerOwnProps, AccordionTriggerProps, AlertOwnProps, AlertProps, AlignItems, AnalyticsEventAttributes, AnalyticsTracker, AvatarOwnProps, AvatarProps, BUIProviderProps, BgContextValue, BgProviderProps, Border, BorderRadius, BoxOwnProps, BoxProps, BoxUtilityProps, Breakpoint, ButtonIconOwnProps, ButtonIconProps, ButtonLinkOwnProps, ButtonLinkProps, ButtonOwnProps, ButtonProps, CardBaseProps, CardBodyOwnProps, CardBodyProps, CardButtonVariant, CardFooterOwnProps, CardFooterProps, CardHeaderOwnProps, CardHeaderProps, CardLinkVariant, CardOwnProps, CardProps, CardStaticVariant, CellOwnProps, CellProfileOwnProps, CellProfileProps, CellProps, CellTextOwnProps, CellTextProps, CheckboxOwnProps, CheckboxProps, ColumnConfig, ColumnOwnProps, ColumnProps, Columns, ContainerBg, ContainerOwnProps, ContainerProps, CursorParams, CursorResponse, DialogBodyOwnProps, DialogBodyProps, DialogFooterOwnProps, DialogFooterProps, DialogHeaderOwnProps, DialogHeaderProps, DialogOwnProps, DialogProps, DialogTriggerProps, Display, FieldLabelOwnProps, FieldLabelProps, FilterState, FlexDirection, FlexOwnProps, FlexProps, FlexWrap, FullPageOwnProps, FullPageProps, GridItemOwnProps, GridItemProps, GridOwnProps, GridProps, HeaderBreadcrumb, HeaderOwnProps, HeaderPageBreadcrumb, HeaderPageOwnProps, HeaderPageProps, HeaderProps, HeaderTab, JustifyContent, LinkOwnProps, LinkProps, MarginProps, MenuAutocompleteListBoxOwnProps, MenuAutocompleteListBoxProps, MenuAutocompleteOwnProps, MenuAutocompleteProps, MenuItemOwnProps, MenuItemProps, MenuListBoxItemOwnProps, MenuListBoxItemProps, MenuListBoxOwnProps, MenuListBoxProps, MenuOwnProps, MenuPopoverOwnProps, MenuProps, MenuSectionOwnProps, MenuSectionProps, MenuSeparatorOwnProps, MenuSeparatorProps, MenuTriggerProps, NoPagination, OffsetParams, OffsetResponse, Option, PaddingProps, PagePagination, PageSizeOption, PaginationOptions, PasswordFieldOwnProps, PasswordFieldProps, PluginHeaderOwnProps, PluginHeaderProps, PopoverOwnProps, PopoverProps, ProviderBg, QueryOptions, RadioGroupOwnProps, RadioGroupProps, RadioOwnProps, RadioProps, Responsive, RowConfig, RowOwnProps, RowProps, RowRenderFn, SearchFieldOwnProps, SearchFieldProps, SearchState, SelectOwnProps, SelectProps, SkeletonOwnProps, SkeletonProps, SortDescriptor, SortState, Space, SpaceProps, SubmenuTriggerProps, SwitchOwnProps, SwitchProps, TabListOwnProps, TabListProps, TabMatchStrategy, TabOwnProps, TabPanelOwnProps, TabPanelProps, TabProps, TableBodyOwnProps, TableBodyProps, TableHeaderOwnProps, TableHeaderProps, TableItem, TablePaginationOwnProps, TablePaginationProps, TablePaginationType, TableProps, TableRootOwnProps, TableRootProps, TableSelection, TabsOwnProps, TabsProps, TagGroupOwnProps, TagGroupProps, TagOwnProps, TagProps, TextColorStatus, TextColors, TextFieldOwnProps, TextFieldProps, TextOwnProps, TextProps, TextVariants, TextWeights, ToggleButtonGroupOwnProps, ToggleButtonGroupProps, ToggleButtonOwnProps, ToggleButtonProps, TooltipOwnProps, TooltipProps, UseAnalyticsFn, UseTableCompleteOptions, UseTableCursorOptions, UseTableOffsetOptions, UseTableOptions, UseTableResult, UtilityProps, VisuallyHiddenOwnProps, VisuallyHiddenProps };