@hyphen/hyphen-components 7.3.2 → 7.3.3

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 (220) hide show
  1. package/dist/css/utilities.css +1 -1
  2. package/dist/css/variables.css +18 -28
  3. package/dist/hyphen-components.cjs.development.js +5717 -5021
  4. package/dist/hyphen-components.cjs.development.js.map +1 -1
  5. package/dist/hyphen-components.cjs.production.min.js +18 -2
  6. package/dist/hyphen-components.cjs.production.min.js.map +1 -1
  7. package/dist/hyphen-components.esm.js +5618 -4846
  8. package/dist/hyphen-components.esm.js.map +1 -1
  9. package/dist/index.d.ts +2693 -57
  10. package/dist/index.js +0 -1
  11. package/package.json +18 -19
  12. package/src/components/Badge/Badge.module.scss +6 -0
  13. package/src/components/Badge/Badge.stories.tsx +1 -0
  14. package/src/components/Badge/Badge.test.tsx +3 -2
  15. package/src/components/Badge/Badge.tsx +5 -3
  16. package/src/components/Box/Box.tsx +5 -2
  17. package/src/components/Button/Button.module.scss +1 -1
  18. package/src/components/Button/Button.test.tsx +2 -2
  19. package/src/components/Calendar/Calendar.test.tsx +262 -0
  20. package/src/components/Card/Card.tsx +2 -0
  21. package/src/components/CheckboxInput/components/Checkbox.module.scss +1 -1
  22. package/src/components/CheckboxInput/components/Checkbox.tsx +2 -0
  23. package/src/components/Details/Details.module.scss +2 -2
  24. package/src/components/Details/Details.tsx +2 -0
  25. package/src/components/Drawer/Drawer.stories.tsx +1 -1
  26. package/src/components/Drawer/Drawer.test.tsx +494 -56
  27. package/src/components/Drawer/Drawer.tsx +7 -1
  28. package/src/components/DropdownMenu/DropdownMenu.test.tsx +532 -12
  29. package/src/components/FormControl/FormControl.tsx +2 -0
  30. package/src/components/Formik/Formik.stories.tsx +30 -7
  31. package/src/components/Formik/FormikSelectInput/FormikSelectInput.tsx +6 -5
  32. package/src/components/Formik/FormikToggleGroup/FormikToggleGroup.tsx +1 -1
  33. package/src/components/HelpText/HelpText.tsx +2 -0
  34. package/src/components/Icon/Icon.stories.tsx +1 -1
  35. package/src/components/Icon/Icon.tsx +2 -0
  36. package/src/components/Modal/Modal.test.tsx +630 -81
  37. package/src/components/Modal/Modal.tsx +2 -0
  38. package/src/components/Modal/components/ModalFooter/ModalFooter.test.tsx +2 -2
  39. package/src/components/Popover/Popover.tsx +2 -0
  40. package/src/components/RadioGroup/RadioInput/RadioInput.tsx +2 -0
  41. package/src/components/SelectInput/SelectInput.stories.tsx +22 -22
  42. package/src/components/SelectInput/SelectInput.tsx +13 -9
  43. package/src/components/SelectInputInset/SelectInputInset.tsx +2 -0
  44. package/src/components/Sidebar/Sidebar.module.scss +4 -0
  45. package/src/components/Sidebar/Sidebar.stories.tsx +8 -4
  46. package/src/components/Sidebar/Sidebar.test.tsx +7 -4
  47. package/src/components/Sidebar/Sidebar.tsx +7 -4
  48. package/src/components/Table/Table.stories.tsx +102 -52
  49. package/src/components/TextInput/TextInput.tsx +2 -0
  50. package/src/components/TextInputInset/TextInputInset.tsx +2 -0
  51. package/src/components/TextareaInputInset/TextareaInputInset.tsx +2 -0
  52. package/src/components/TimePickerNative/TimePickerNative.stories.tsx +0 -1
  53. package/src/components/Toast/Toast.store.ts +1 -1
  54. package/src/components/Toast/Toast.stories.tsx +3 -2
  55. package/src/components/Toast/Toast.test.tsx +8 -6
  56. package/src/components/Toggle/Toggle.tsx +2 -0
  57. package/src/components/ToggleGroup/ToggleGroup.tsx +2 -0
  58. package/src/docs/Colors.mdx +0 -13
  59. package/src/lib/getColumnKeys.ts +3 -3
  60. package/src/lib/mergeRefs.ts +1 -1
  61. package/src/lib/tokens.ts +4 -4
  62. package/dist/components/Alert/Alert.constants.d.ts +0 -8
  63. package/dist/components/Alert/Alert.d.ts +0 -42
  64. package/dist/components/Alert/Alert.stories.d.ts +0 -12
  65. package/dist/components/Alert/Alert.types.d.ts +0 -7
  66. package/dist/components/AspectRatio/AspectRatio.d.ts +0 -3
  67. package/dist/components/AspectRatio/AspectRatio.stories.d.ts +0 -6
  68. package/dist/components/Badge/Badge.d.ts +0 -24
  69. package/dist/components/Badge/Badge.stories.d.ts +0 -8
  70. package/dist/components/Box/Box.d.ts +0 -247
  71. package/dist/components/Box/Box.stories.d.ts +0 -46
  72. package/dist/components/Button/Button.constants.d.ts +0 -3
  73. package/dist/components/Button/Button.d.ts +0 -53
  74. package/dist/components/Button/Button.stories.d.ts +0 -16
  75. package/dist/components/Calendar/Calendar.d.ts +0 -7
  76. package/dist/components/Calendar/Calendar.stories.d.ts +0 -12
  77. package/dist/components/Card/Card.d.ts +0 -17
  78. package/dist/components/Card/Card.stories.d.ts +0 -8
  79. package/dist/components/Card/components/CardFooter/CardFooter.d.ts +0 -13
  80. package/dist/components/Card/components/CardHeader/CardHeader.d.ts +0 -13
  81. package/dist/components/Card/components/CardSection/CardSection.d.ts +0 -46
  82. package/dist/components/Card/components/index.d.ts +0 -3
  83. package/dist/components/CheckboxInput/CheckboxInput.d.ts +0 -72
  84. package/dist/components/CheckboxInput/CheckboxInput.stories.d.ts +0 -18
  85. package/dist/components/CheckboxInput/components/Checkbox.d.ts +0 -71
  86. package/dist/components/CheckboxInput/components/CheckboxIcon.d.ts +0 -27
  87. package/dist/components/Collapsible/Collapsible.d.ts +0 -5
  88. package/dist/components/Collapsible/Collapsible.stories.d.ts +0 -9
  89. package/dist/components/Details/Details.d.ts +0 -15
  90. package/dist/components/Details/Details.stories.d.ts +0 -6
  91. package/dist/components/Details/DetailsSummary.d.ts +0 -7
  92. package/dist/components/Drawer/Drawer.d.ts +0 -105
  93. package/dist/components/Drawer/Drawer.stories.d.ts +0 -62
  94. package/dist/components/DropdownMenu/DropdownMenu.d.ts +0 -25
  95. package/dist/components/DropdownMenu/DropdownMenu.stories.d.ts +0 -9
  96. package/dist/components/FormControl/FormControl.d.ts +0 -38
  97. package/dist/components/FormLabel/FormLabel.d.ts +0 -41
  98. package/dist/components/FormLabel/FormLabel.stories.d.ts +0 -6
  99. package/dist/components/Formik/Formik.stories.d.ts +0 -18
  100. package/dist/components/Formik/FormikCheckboxInput/FormikCheckboxInput.d.ts +0 -12
  101. package/dist/components/Formik/FormikRadioGroup/FormikRadioGroup.d.ts +0 -12
  102. package/dist/components/Formik/FormikSelectInput/FormikSelectInput.d.ts +0 -13
  103. package/dist/components/Formik/FormikSelectInputInset/FormikSelectInputInset.d.ts +0 -12
  104. package/dist/components/Formik/FormikSelectInputNative/FormikSelectInputNative.d.ts +0 -12
  105. package/dist/components/Formik/FormikSwitch/FormikSwitch.d.ts +0 -12
  106. package/dist/components/Formik/FormikTextInput/FormikTextInput.d.ts +0 -12
  107. package/dist/components/Formik/FormikTextInputInset/FormikTextInputInset.d.ts +0 -12
  108. package/dist/components/Formik/FormikTextareaInput/FormikTextareaInput.d.ts +0 -12
  109. package/dist/components/Formik/FormikTextareaInputInset/FormikTextareaInputInset.d.ts +0 -12
  110. package/dist/components/Formik/FormikTimePicker/FormikTimePicker.d.ts +0 -12
  111. package/dist/components/Formik/FormikTimePickerNative/FormikTimePickerNative.d.ts +0 -12
  112. package/dist/components/Formik/FormikToggleGroup/FormikToggleGroup.d.ts +0 -20
  113. package/dist/components/Formik/FormikToggleGroupMulti/FormikToggleGroupMulti.d.ts +0 -18
  114. package/dist/components/Heading/Heading.constants.d.ts +0 -10
  115. package/dist/components/Heading/Heading.d.ts +0 -35
  116. package/dist/components/Heading/Heading.stories.d.ts +0 -9
  117. package/dist/components/HelpText/HelpText.d.ts +0 -12
  118. package/dist/components/Icon/Icon.d.ts +0 -22
  119. package/dist/components/Icon/Icon.stories.d.ts +0 -10
  120. package/dist/components/InputValidationMessage/InputValidationMessage.d.ts +0 -9
  121. package/dist/components/Modal/Modal.d.ts +0 -83
  122. package/dist/components/Modal/Modal.stories.d.ts +0 -13
  123. package/dist/components/Modal/components/ModalBody/ModalBody.d.ts +0 -4
  124. package/dist/components/Modal/components/ModalFooter/ModalFooter.d.ts +0 -4
  125. package/dist/components/Modal/components/ModalHeader/ModalHeader.d.ts +0 -21
  126. package/dist/components/Modal/components/index.d.ts +0 -4
  127. package/dist/components/Pagination/Pagination.d.ts +0 -51
  128. package/dist/components/Pagination/Pagination.stories.d.ts +0 -8
  129. package/dist/components/Pagination/Pagination.utilities.d.ts +0 -10
  130. package/dist/components/Popover/Popover.d.ts +0 -8
  131. package/dist/components/Popover/Popover.stories.d.ts +0 -7
  132. package/dist/components/RadioGroup/RadioGroup.d.ts +0 -75
  133. package/dist/components/RadioGroup/RadioGroup.stories.d.ts +0 -16
  134. package/dist/components/RadioGroup/RadioInput/RadioInput.d.ts +0 -57
  135. package/dist/components/RadioGroup/RadioInput/RadioInputIcon.d.ts +0 -27
  136. package/dist/components/RangeInput/RangeInput.d.ts +0 -29
  137. package/dist/components/RangeInput/RangeInput.stories.d.ts +0 -7
  138. package/dist/components/ResponsiveProvider/ResponsiveProvider.d.ts +0 -17
  139. package/dist/components/ResponsiveProvider/ResponsiveProvider.stories.d.ts +0 -7
  140. package/dist/components/SelectInput/SelectInput.d.ts +0 -148
  141. package/dist/components/SelectInput/SelectInput.stories.d.ts +0 -24
  142. package/dist/components/SelectInputInset/SelectInputInset.d.ts +0 -92
  143. package/dist/components/SelectInputInset/SelectInputInset.stories.d.ts +0 -12
  144. package/dist/components/SelectInputNative/SelectInputNative.d.ts +0 -45
  145. package/dist/components/SelectInputNative/SelectInputNative.stories.d.ts +0 -19
  146. package/dist/components/Sidebar/Sidebar.d.ts +0 -57
  147. package/dist/components/Sidebar/Sidebar.stories.d.ts +0 -9
  148. package/dist/components/Spinner/Spinner.d.ts +0 -12
  149. package/dist/components/Spinner/Spinner.stories.d.ts +0 -8
  150. package/dist/components/Switch/Switch.d.ts +0 -64
  151. package/dist/components/Switch/Switch.stories.d.ts +0 -12
  152. package/dist/components/Table/Table.d.ts +0 -86
  153. package/dist/components/Table/Table.stories.d.ts +0 -31
  154. package/dist/components/Table/TableBody/TableBody.d.ts +0 -52
  155. package/dist/components/Table/TableBody/TableBodyCell/TableBodyCell.d.ts +0 -45
  156. package/dist/components/Table/TableHead/TableHead.d.ts +0 -46
  157. package/dist/components/Table/TableHead/TableHeaderCell/TableHeaderCell.d.ts +0 -65
  158. package/dist/components/Table/common/TableRow/TableRow.d.ts +0 -67
  159. package/dist/components/TextInput/TextInput.d.ts +0 -106
  160. package/dist/components/TextInput/TextInput.stories.d.ts +0 -19
  161. package/dist/components/TextInputInset/TextInputInset.d.ts +0 -102
  162. package/dist/components/TextInputInset/TextInputInset.stories.d.ts +0 -13
  163. package/dist/components/TextareaInput/TextareaInput.d.ts +0 -97
  164. package/dist/components/TextareaInput/TextareaInput.stories.d.ts +0 -23
  165. package/dist/components/TextareaInputInset/TextareaInputInset.d.ts +0 -105
  166. package/dist/components/TextareaInputInset/TextareaInputInset.stories.d.ts +0 -12
  167. package/dist/components/ThemeProvider/ThemeProvider.d.ts +0 -15
  168. package/dist/components/ThemeProvider/ThemeProvider.stories.d.ts +0 -6
  169. package/dist/components/TimePicker/TimePicker.d.ts +0 -35
  170. package/dist/components/TimePicker/TimePicker.stories.d.ts +0 -12
  171. package/dist/components/TimePickerNative/TimePickerNative.d.ts +0 -39
  172. package/dist/components/TimePickerNative/TimePickerNative.stories.d.ts +0 -11
  173. package/dist/components/Toast/Toast.store.d.ts +0 -36
  174. package/dist/components/Toast/Toast.stories.d.ts +0 -14
  175. package/dist/components/Toast/Toast.types.d.ts +0 -75
  176. package/dist/components/Toast/ToastContainer.d.ts +0 -43
  177. package/dist/components/Toast/ToastNotification.d.ts +0 -28
  178. package/dist/components/Toast/index.d.ts +0 -4
  179. package/dist/components/Toast/toast.d.ts +0 -20
  180. package/dist/components/Toast/useToasts.d.ts +0 -14
  181. package/dist/components/Toggle/Toggle.d.ts +0 -7
  182. package/dist/components/Toggle/Toggle.stories.d.ts +0 -11
  183. package/dist/components/ToggleGroup/ToggleGroup.d.ts +0 -19
  184. package/dist/components/ToggleGroup/ToggleGroup.stories.d.ts +0 -12
  185. package/dist/components/Tooltip/Tooltip.d.ts +0 -8
  186. package/dist/components/Tooltip/Tooltip.stories.d.ts +0 -8
  187. package/dist/constants/keyCodes.d.ts +0 -2
  188. package/dist/css/index.css +0 -36
  189. package/dist/hooks/index.d.ts +0 -6
  190. package/dist/hooks/useBreakpoint/useBreakpoint.d.ts +0 -9
  191. package/dist/hooks/useBreakpoint/useBreakpoint.stories.d.ts +0 -6
  192. package/dist/hooks/useIsMobile/useIsMobile.d.ts +0 -1
  193. package/dist/hooks/useIsMobile/useIsMobile.stories.d.ts +0 -6
  194. package/dist/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.d.ts +0 -2
  195. package/dist/hooks/useOpenClose/useOpenClose.d.ts +0 -39
  196. package/dist/hooks/useOpenClose/useOpenClose.stories.d.ts +0 -6
  197. package/dist/hooks/useTheme/useTheme.d.ts +0 -5
  198. package/dist/hooks/useTheme/useTheme.stories.d.ts +0 -6
  199. package/dist/hooks/useWindowSize/useWindowSize.d.ts +0 -7
  200. package/dist/hooks/useWindowSize/useWindowSize.stories.d.ts +0 -6
  201. package/dist/lib/cssShorthandToClasses.d.ts +0 -4
  202. package/dist/lib/doesStringIncludeCssUnit.d.ts +0 -1
  203. package/dist/lib/generateResponsiveClasses.d.ts +0 -2
  204. package/dist/lib/getAutoCompleteValue.d.ts +0 -1
  205. package/dist/lib/getColumnKeys.d.ts +0 -3
  206. package/dist/lib/getDimensionCss.d.ts +0 -12
  207. package/dist/lib/getElementType.d.ts +0 -14
  208. package/dist/lib/getFlexCss.d.ts +0 -9
  209. package/dist/lib/index.d.ts +0 -15
  210. package/dist/lib/isFunction.d.ts +0 -3
  211. package/dist/lib/mergeRefs.d.ts +0 -2
  212. package/dist/lib/prefersReducedMotion.d.ts +0 -1
  213. package/dist/lib/react-children-utilities/filter.d.ts +0 -3
  214. package/dist/lib/react-children-utilities/index.d.ts +0 -1
  215. package/dist/lib/reactRouterClickHandler.d.ts +0 -12
  216. package/dist/lib/resolveValue.d.ts +0 -3
  217. package/dist/lib/tokens.d.ts +0 -22
  218. package/dist/modes.d.ts +0 -8
  219. package/dist/types/index.d.ts +0 -103
  220. package/dist/types/lib.types.d.ts +0 -3
package/dist/index.d.ts CHANGED
@@ -1,57 +1,2693 @@
1
- export * from './components/Alert/Alert';
2
- export * from './components/AspectRatio/AspectRatio';
3
- export * from './components/Badge/Badge';
4
- export * from './components/Box/Box';
5
- export * from './components/Button/Button';
6
- export * from './components/Calendar/Calendar';
7
- export * from './components/Card/Card';
8
- export * from './components/CheckboxInput/components/Checkbox';
9
- export * from './components/CheckboxInput/CheckboxInput';
10
- export * from './components/Collapsible/Collapsible';
11
- export * from './components/Details/Details';
12
- export * from './components/Details/DetailsSummary';
13
- export * from './components/Drawer/Drawer';
14
- export * from './components/DropdownMenu/DropdownMenu';
15
- export * from './components/FormControl/FormControl';
16
- export * from './components/Formik/FormikCheckboxInput/FormikCheckboxInput';
17
- export * from './components/Formik/FormikRadioGroup/FormikRadioGroup';
18
- export * from './components/Formik/FormikSelectInput/FormikSelectInput';
19
- export * from './components/Formik/FormikSelectInputInset/FormikSelectInputInset';
20
- export * from './components/Formik/FormikTextareaInputInset/FormikTextareaInputInset';
21
- export * from './components/Formik/FormikTextInputInset/FormikTextInputInset';
22
- export * from './components/Formik/FormikSelectInputNative/FormikSelectInputNative';
23
- export * from './components/Formik/FormikTextInput/FormikTextInput';
24
- export * from './components/Formik/FormikTextareaInput/FormikTextareaInput';
25
- export * from './components/Formik/FormikTimePicker/FormikTimePicker';
26
- export * from './components/Formik/FormikTimePickerNative/FormikTimePickerNative';
27
- export * from './components/Formik/FormikSwitch/FormikSwitch';
28
- export * from './components/Formik/FormikToggleGroup/FormikToggleGroup';
29
- export * from './components/Formik/FormikToggleGroupMulti/FormikToggleGroupMulti';
30
- export * from './components/FormLabel/FormLabel';
31
- export * from './components/Heading/Heading';
32
- export * from './components/Icon/Icon';
33
- export * from './components/Modal/Modal';
34
- export * from './components/Pagination/Pagination';
35
- export * from './components/Popover/Popover';
36
- export * from './components/RadioGroup/RadioGroup';
37
- export * from './components/RangeInput/RangeInput';
38
- export * from './components/ResponsiveProvider/ResponsiveProvider';
39
- export * from './components/SelectInput/SelectInput';
40
- export * from './components/SelectInputInset/SelectInputInset';
41
- export * from './components/SelectInputNative/SelectInputNative';
42
- export * from './components/Sidebar/Sidebar';
43
- export * from './components/Spinner/Spinner';
44
- export * from './components/Switch/Switch';
45
- export * from './components/Table/Table';
46
- export * from './components/TextareaInput/TextareaInput';
47
- export * from './components/TextareaInputInset/TextareaInputInset';
48
- export * from './components/TextInput/TextInput';
49
- export * from './components/TextInputInset/TextInputInset';
50
- export * from './components/ThemeProvider/ThemeProvider';
51
- export * from './components/TimePicker/TimePicker';
52
- export * from './components/TimePickerNative/TimePickerNative';
53
- export * from './components/Toast';
54
- export * from './components/Toggle/Toggle';
55
- export * from './components/ToggleGroup/ToggleGroup';
56
- export * from './components/Tooltip/Tooltip';
57
- export * from './hooks';
1
+ import * as React from 'react';
2
+ import React__default, { ReactNode, Key, MouseEvent, KeyboardEvent, CSSProperties, FC, ButtonHTMLAttributes, RefObject, ChangeEvent, FocusEvent, HTMLProps, ForwardRefExoticComponent, InputHTMLAttributes, useEffect } from 'react';
3
+ import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
4
+ import { BreakpointSize, SpacingSize, WidthSize, HeightSize, BorderRadiusSize as BorderRadiusSize$1, BackgroundColor, BorderColor, BorderSize, FontColor, FontFamily, FontSize, FontWeight, BoxShadowSize, TextTransform, TextWrap, ZIndexSize, IconName, HeadingSize } from '@hyphen/hyphen-design-tokens/build/types';
5
+ import * as CSS from 'csstype';
6
+ import { DayPickerProps } from 'react-day-picker';
7
+ export { Matcher } from 'react-day-picker';
8
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
9
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
10
+ import { FieldAttributes, FormikTouched, FormikValues, FormikErrors } from 'formik';
11
+ import { OnChangeValue, OptionsOrGroups } from 'react-select';
12
+ import { GroupBase } from 'react-select/dist/declarations/src/types';
13
+ import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
14
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
15
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
16
+ import * as TogglePrimitive from '@radix-ui/react-toggle';
17
+
18
+ type BreakpointSizeWithBase = BreakpointSize | 'base';
19
+ type Breakpoint = {
20
+ name: BreakpointSizeWithBase;
21
+ minWidth: number;
22
+ };
23
+ type DimensionSize = WidthSize | HeightSize;
24
+ type UnknownPropertiesObjType = {
25
+ [key: string]: any;
26
+ };
27
+ type CssDimensionUnit = 'px' | 'rem' | 'em' | '%';
28
+ type CssDimensionValue = `${number}${CssDimensionUnit}`;
29
+ type CssJustifyContentValue = 'space-around' | 'space-between' | 'center' | 'flex-end' | 'space-evenly' | 'flex-start' | 'stretch';
30
+ type CssAlignContentValue = 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'space-between' | 'space-around';
31
+ type CssFlexDirectionValue = 'column' | 'column-reverse' | 'row' | 'row-reverse' | undefined;
32
+ type CssAlignItemsValue = 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch';
33
+ type CssFlexValue = 'auto' | 'initial' | 'none' | 'inherit' | 'unset';
34
+ type CssOverflowValue = 'visible' | 'hidden' | 'clip' | 'auto' | 'scroll' | 'inherit' | 'initial' | 'unset';
35
+ type CssDisplayValue = 'none' | 'flex' | 'inline-flex' | 'block' | 'inline-block' | 'inline' | 'inherit' | 'grid' | 'table-cell' | 'contents';
36
+ type CssWhiteSpaceValue = 'normal' | 'nowrap' | 'pre' | 'pre-wrap' | 'pre-line';
37
+ type CssWordBreakValue = 'normal' | 'all' | 'keep';
38
+ type CssTextAlignValue = 'left' | 'center' | 'right';
39
+ type BaseSpacing = SpacingSize | string | undefined;
40
+ type BorderRadiusSize = BorderRadiusSize$1 | string | undefined;
41
+ declare type ResponsiveProp<T> = {
42
+ [breakpoint in BreakpointSizeWithBase]?: T;
43
+ };
44
+ type Row = UnknownPropertiesObjType;
45
+ type Cell = string | number | {
46
+ [key: string]: unknown;
47
+ } | unknown[];
48
+ declare type Column = {
49
+ /**
50
+ * Text alignment for column cells (including header alignment). Cells will default to left if not defined.
51
+ */
52
+ align?: 'left' | 'right' | 'center';
53
+ /**
54
+ * CSS Class to be applied uniformly to all individual cells in a column.
55
+ */
56
+ cellClassName?: string | ((cell?: Cell, row?: Row, rowIndex?: number) => string);
57
+ /**
58
+ * The key value to be rendered based on the table `rows`.
59
+ */
60
+ dataKey?: string;
61
+ /**
62
+ * Placeholder for empty cells Applies only to the cells of the particular column with this prop.
63
+ */
64
+ emptyCellPlaceholder?: string | number | undefined;
65
+ /**
66
+ * The heading/title of a column.
67
+ */
68
+ heading?: ReactNode;
69
+ /**
70
+ * CSS Class to be applied to the column header cell.
71
+ */
72
+ headerClassName?: string;
73
+ /**
74
+ * A custom key to be used when rendering the column array.
75
+ * Not required as our table auto-generates static, but unique column keys if not passed in.
76
+ */
77
+ key?: Key;
78
+ /**
79
+ * Whether the column data is sortable. Controls whether sorting controls should be displayed.
80
+ */
81
+ isSortable?: boolean;
82
+ /**
83
+ * Render method for column cell data. Provides ability to render any aspect of the cell/row with custom
84
+ * markup.
85
+ */
86
+ render?: (cell?: Cell, row?: Row, rowIndex?: number) => ReactNode;
87
+ /**
88
+ * Whether the column is stuck to the left or right.
89
+ */
90
+ sticky?: 'left' | 'right';
91
+ /**
92
+ * Whether long text should be truncated based on column width. Use in tandem with column width as well as
93
+ * `useFixedWidthColumns` prop in the parent table.
94
+ */
95
+ truncateOverflow?: boolean;
96
+ /**
97
+ * Specific width of the column. Use in tandem with `useFixedWidthColumns` in the parent table.
98
+ */
99
+ width?: number;
100
+ };
101
+ type EventWithColumnKey = (MouseEvent<HTMLTableHeaderCellElement> | KeyboardEvent<HTMLTableHeaderCellElement>) & {
102
+ sortedKey: Key | undefined;
103
+ };
104
+ type ValueFunction<TValue, TArg> = (arg: TArg) => TValue;
105
+ type ValueOrFunction<TValue, TArg> = TValue | ValueFunction<TValue, TArg>;
106
+
107
+ type AlertVariant = 'info' | 'success' | 'warning' | 'danger' | 'default';
108
+
109
+ interface AlertProps {
110
+ /**
111
+ * Custom class to apply to the alert.
112
+ */
113
+ className?: string;
114
+ /**
115
+ * Whether the alert as an icon that corresponds to its variant (Success, warning, etc.).
116
+ */
117
+ hasIcon?: boolean;
118
+ /**
119
+ * Renders a version of the alert with smaller padding.
120
+ */
121
+ isCompact?: boolean;
122
+ /**
123
+ * @deprecated Use children instead. The text message or ReactNode to be rendered in the alert.
124
+ */
125
+ message?: string | ReactNode;
126
+ /**
127
+ * Whether the alert can be closed by the user. If `true` it will render
128
+ * the 'close' icon on the right hand side of the alert.
129
+ */
130
+ onClose?: (event: MouseEvent<HTMLOrSVGElement> | KeyboardEvent<HTMLSpanElement>) => void;
131
+ /**
132
+ * A render function that returns JSX if preferred over a static ReactNode or string.
133
+ */
134
+ render?: () => ReactNode;
135
+ /**
136
+ * The title for the alert.
137
+ */
138
+ title?: string;
139
+ /**
140
+ * The type/color of the alert to show.
141
+ */
142
+ variant?: AlertVariant;
143
+ /**
144
+ * Additional props to be spread to rendered element
145
+ */
146
+ [x: string]: any;
147
+ }
148
+ declare const Alert: React__default.NamedExoticComponent<AlertProps>;
149
+
150
+ declare const AspectRatio: React.ForwardRefExoticComponent<AspectRatioPrimitive.AspectRatioProps & React.RefAttributes<HTMLDivElement>>;
151
+
152
+ type KnownKeys<T> = keyof {
153
+ [K in keyof T as string extends K ? never : K]: K;
154
+ };
155
+
156
+ type HoverableBoxProperties = 'color' | 'borderColor' | 'shadow' | 'background';
157
+ interface BoxProps {
158
+ /**
159
+ * The element type to be rendered.
160
+ */
161
+ as?: string;
162
+ /**
163
+ * How to align the contents along the cross axis.
164
+ */
165
+ alignItems?: CssAlignItemsValue | ResponsiveProp<CssAlignItemsValue>;
166
+ /**
167
+ * How to align the contents when there is extra space in the cross axis.
168
+ * This property has no effect when there is only one line of flex items.
169
+ */
170
+ alignContent?: CssAlignContentValue | ResponsiveProp<CssAlignContentValue>;
171
+ /**
172
+ * How to align along the cross axis when contained in a Box.
173
+ * This allows the default alignment (or the one specified by `align`) to be overridden for the individual Box.
174
+ */
175
+ alignSelf?: CssAlignItemsValue | ResponsiveProp<CssAlignItemsValue>;
176
+ /**
177
+ * Any valid background color token, or a `url()` for an image
178
+ */
179
+ background?: BackgroundColor;
180
+ /**
181
+ * Any valid border color token
182
+ */
183
+ borderColor?: BorderColor;
184
+ /**
185
+ * Width of the Box's border
186
+ * Can be a single [border width token](/?path=/docs/foundation-design-tokens--docs#border-width).
187
+ * Can also be a string of [border width tokens](/?path=/docs/foundation-design-tokens--docs#border-width)
188
+ * that models itself after the css shorthand property,
189
+ * where you can set the border width on all four sides of an element.
190
+ * e.g: "0 sm xs 0" --> top: 0, right: sm, bottom: xs, left: 0;
191
+ */
192
+ borderWidth?: BorderSize | string | ResponsiveProp<BorderSize | string>;
193
+ /**
194
+ * Additional class names to add
195
+ */
196
+ className?: string;
197
+ /**
198
+ * The amount of spacing (implemented as margin) between child elements.
199
+ * Can be a single [spacing value](/?path=/docs/foundation-design-tokens--docs#spacing).
200
+ * NOTE: this prop is incompatible with reverse flex direction values (row-reverse, column-reverse).
201
+ * For grid and flex layouts, use 'gap' instead.
202
+ */
203
+ childGap?: SpacingSize | ResponsiveProp<SpacingSize>;
204
+ /**
205
+ * The box's contents
206
+ */
207
+ children?: ReactNode;
208
+ /**
209
+ * A color token identifier to use for the text color.
210
+ */
211
+ color?: FontColor;
212
+ /**
213
+ * Sets the gaps (gutters) between columns.
214
+ */
215
+ columnGap?: BaseSpacing | ResponsiveProp<BaseSpacing>;
216
+ /**
217
+ * Cursor style. Use any standard CSS value.
218
+ */
219
+ cursor?: CSS.Property.Cursor;
220
+ /**
221
+ * Sets how flex items are placed inside the Box, defining the main axis and the direction
222
+ * NOTE: reverse directions are incompatible with the `childGap` prop.
223
+ */
224
+ direction?: CssFlexDirectionValue | ResponsiveProp<CssFlexDirectionValue>;
225
+ /**
226
+ * Display property. Only select values supported.
227
+ */
228
+ display?: CssDisplayValue | ResponsiveProp<CssDisplayValue>;
229
+ /**
230
+ * Can be used as shorthand for the flexbox css properties `flex-grow`, `flex-shrink`, `flex-basis`
231
+ */
232
+ flex?: CssFlexValue | ResponsiveProp<CssFlexValue>;
233
+ /**
234
+ * Pass style modifiers for focus states. The following properties can be modified on focus.
235
+ * `* background`
236
+ * `* borderColor`
237
+ * `* borderWidth`
238
+ * `* color`
239
+ * `* shadow`
240
+ */
241
+ focus?: {
242
+ background?: BoxProps['background'];
243
+ borderColor?: BoxProps['borderColor'];
244
+ borderWidth?: BoxProps['borderWidth'];
245
+ color?: BoxProps['color'];
246
+ shadow?: BoxProps['shadow'];
247
+ };
248
+ /**
249
+ * The [font family token](/?path=/docs/foundation-design-tokens--docs#font-family) identifier for the Box's text
250
+ */
251
+ fontFamily?: FontFamily | ResponsiveProp<FontFamily>;
252
+ /**
253
+ * The [font size token](/?path=/docs/foundation-design-tokens--docs#font-size) identifier for the Box's text
254
+ */
255
+ fontSize?: FontSize | ResponsiveProp<FontSize>;
256
+ /**
257
+ * The [font weight token](/?path=/docs/design-tokens-design-tokens--page#font-weight) identifier for the Box's text
258
+ */
259
+ fontWeight?: FontWeight | ResponsiveProp<FontWeight>;
260
+ /**
261
+ * The height of the element. Can be given a standard css value (px, rem, em, %),
262
+ * or a [height token](/?path=/docs/foundation-design-tokens--docs#height)
263
+ */
264
+ height?: DimensionSize | ResponsiveProp<DimensionSize> | string;
265
+ /**
266
+ * Pass style modifiers for hover states. The following properties can be modified on hover:
267
+ * `* background`
268
+ * `* borderColor`
269
+ * `* borderWidth`
270
+ * `* color`
271
+ * `* fontSize`
272
+ * `* shadow`
273
+ */
274
+ hover?: {
275
+ background?: BoxProps['background'];
276
+ borderColor?: BoxProps['borderColor'];
277
+ borderWidth?: BoxProps['borderWidth'];
278
+ color?: BoxProps['color'];
279
+ fontSize?: BoxProps['fontSize'];
280
+ shadow?: BoxProps['shadow'];
281
+ };
282
+ /**
283
+ * Sets the gaps (gutters) between rows and columns.
284
+ */
285
+ gap?: BaseSpacing | ResponsiveProp<BaseSpacing>;
286
+ /**
287
+ * How space between and around content items is distributed along the main-axis a flex Box
288
+ */
289
+ justifyContent?: CssJustifyContentValue | ResponsiveProp<CssJustifyContentValue>;
290
+ /**
291
+ * Amount of space around the element.
292
+ * Can be a single [spacing value](/?path=/docs/foundation-design-tokens--docs#spacing).
293
+ * Can also be a string of [spacing value](/?path=/docs/foundation-design-tokens--docs#spacing)
294
+ * that models itself after the css shorthand property,
295
+ * where you can set the margin area on all four sides of an element. It is shorthand for top, right, bottom, left.
296
+ */
297
+ margin?: BaseSpacing | ResponsiveProp<BaseSpacing>;
298
+ /**
299
+ * The maximum height of the element. Can be given a standard css value (px, rem, em, %),
300
+ * or a [height token](/?path=/docs/foundation-design-tokens--docs#height)
301
+ */
302
+ maxHeight?: DimensionSize | ResponsiveProp<DimensionSize> | string;
303
+ /**
304
+ * The minimum height of the element. Can be given a standard css value (px, rem, em, %),
305
+ * or a [height token](/?path=/docs/foundation-design-tokens--docs#height)
306
+ */
307
+ minHeight?: DimensionSize | ResponsiveProp<DimensionSize> | string;
308
+ /**
309
+ * The maximum width of the element. Can be given a standard css value (px, rem, em, %),
310
+ * or a [width token](/?path=/docs/foundation-design-tokens--docs#width)
311
+ */
312
+ maxWidth?: DimensionSize | ResponsiveProp<DimensionSize> | string;
313
+ /**
314
+ * The minimum width of the element. Can be given a standard css value (px, rem, em, %),
315
+ * or a [width token](/?path=/docs/foundation-design-tokens--docs#width)
316
+ */
317
+ minWidth?: DimensionSize | ResponsiveProp<DimensionSize> | string;
318
+ /**
319
+ * The css overflow behavior of the Box
320
+ */
321
+ overflow?: CssOverflowValue | ResponsiveProp<CssOverflowValue>;
322
+ /**
323
+ * Amount of space within the element around the Box contents.
324
+ * Can be a single [spacing value](/?path=/docs/foundation-design-tokens--docs#spacing).
325
+ * Can also be a string of [spacing value](/?path=/docs/foundation-design-tokens--docs#spacing)
326
+ * that models itself after the css shorthand property,
327
+ * where you can set the margin area on all four sides of an element. It is shorthand for top, right, bottom, left.
328
+ */
329
+ padding?: BaseSpacing | ResponsiveProp<BaseSpacing>;
330
+ /**
331
+ * CSS position property.
332
+ */
333
+ position?: CSS.Property.Position | ResponsiveProp<CSS.Property.Position>;
334
+ /**
335
+ * Set the radius of all corners
336
+ */
337
+ radius?: BorderRadiusSize | ResponsiveProp<BorderRadiusSize>;
338
+ /**
339
+ * Sets the gaps (gutters) between rows.
340
+ */
341
+ rowGap?: BaseSpacing | ResponsiveProp<BaseSpacing>;
342
+ /**
343
+ * The size of the drop shadow applied to the Box
344
+ */
345
+ shadow?: BoxShadowSize | ResponsiveProp<BoxShadowSize>;
346
+ /**
347
+ * CSS Style object
348
+ */
349
+ style?: CSSProperties;
350
+ /**
351
+ * the alignment of the text
352
+ */
353
+ textAlign?: CssTextAlignValue | ResponsiveProp<CssTextAlignValue>;
354
+ /**
355
+ * Control the text transformation of the Box
356
+ */
357
+ textTransform?: TextTransform | ResponsiveProp<TextTransform>;
358
+ /**
359
+ * Control the text wrapping behavior of the Box
360
+ */
361
+ textWrap?: TextWrap | ResponsiveProp<TextWrap>;
362
+ /**
363
+ * Control the whitespace behavior of the Box
364
+ */
365
+ whiteSpace?: CssWhiteSpaceValue | ResponsiveProp<CssWhiteSpaceValue>;
366
+ /**
367
+ * Control the word break behavior of the Box
368
+ */
369
+ wordBreak?: CssWordBreakValue | ResponsiveProp<CssWordBreakValue>;
370
+ /**
371
+ * By default, a Box's items will all try to fit onto one line.
372
+ * Change that and allow the items to wrap as needed wrap
373
+ */
374
+ wrap?: boolean | ResponsiveProp<boolean>;
375
+ /**
376
+ * The width of the element. Can be given a standard css value (px, rem, em, %),
377
+ * or a [width token](/?path=/docs/foundation-design-tokens--docs#width)
378
+ */
379
+ width?: DimensionSize | ResponsiveProp<DimensionSize> | string;
380
+ /**
381
+ * Control the word break behavior of the Box
382
+ */
383
+ /**
384
+ * ZIndex value for the element. Can be one of the predetermined token values.
385
+ * Can be responsive.
386
+ */
387
+ zIndex?: ZIndexSize | ResponsiveProp<ZIndexSize>;
388
+ /**
389
+ * Additional props to be spread to rendered element
390
+ */
391
+ [x: string]: any;
392
+ }
393
+ /**
394
+ * A `<Box>` is a layout component to build UIs with consistent padding and spacing between
395
+ * elements.
396
+ */
397
+ declare const Box: FC<BoxProps>;
398
+ declare const boxPropsKeys: (keyof Pick<BoxProps, KnownKeys<BoxProps>>)[];
399
+
400
+ type BadgeSize = 'sm' | 'md' | 'lg';
401
+ type BadgeVariant = 'light-grey' | 'dark-grey' | 'inverse' | 'green' | 'yellow' | 'blue' | 'red' | 'purple' | 'orange' | 'hyphen';
402
+ interface BadgeProps extends BoxProps {
403
+ /**
404
+ * @deprecated Use children instead. The text message or ReactNode to be rendered in the badge.
405
+ */
406
+ message?: string | ReactNode;
407
+ /**
408
+ * The size of the badge.
409
+ */
410
+ size?: BadgeSize | ResponsiveProp<BadgeSize>;
411
+ /**
412
+ * The type/color of the badge to show.
413
+ */
414
+ variant?: BadgeVariant;
415
+ }
416
+ declare const Badge: React__default.ForwardRefExoticComponent<Omit<BadgeProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
417
+
418
+ type ButtonVariant = 'primary' | 'secondary' | 'tertiary' | 'danger' | 'link';
419
+ type ButtonSize = 'sm' | 'md' | 'lg';
420
+ interface BaseButtonProps {
421
+ /**
422
+ * The button element to render as. Useful for when you want to render a Link that looks like a button.
423
+ */
424
+ asChild?: boolean;
425
+ /**
426
+ * Additional ClassNames to add to button.
427
+ */
428
+ className?: string;
429
+ /**
430
+ * Button takes up the full width of its parent container.
431
+ */
432
+ fullWidth?: boolean;
433
+ /**
434
+ * Icon displayed before the button label
435
+ */
436
+ iconPrefix?: IconName;
437
+ /**
438
+ * Icon displayed after the button label
439
+ */
440
+ iconSuffix?: IconName;
441
+ /**
442
+ * Disables the button
443
+ */
444
+ isDisabled?: boolean;
445
+ /**
446
+ * Displays a loading spinner and disables the button
447
+ */
448
+ isLoading?: boolean;
449
+ /**
450
+ * Size of the drop shadow applied to the Box
451
+ */
452
+ shadow?: BoxShadowSize | ResponsiveProp<BoxShadowSize>;
453
+ /**
454
+ * Size of the button.
455
+ */
456
+ size?: ButtonSize | ResponsiveProp<ButtonSize>;
457
+ /**
458
+ * The type of button
459
+ *
460
+ */
461
+ type?: 'button' | 'submit' | 'reset';
462
+ /**
463
+ * Visual variant of the button
464
+ */
465
+ variant?: ButtonVariant;
466
+ }
467
+ type ButtonProps = BaseButtonProps & ButtonHTMLAttributes<HTMLButtonElement>;
468
+ declare const Button: React__default.ForwardRefExoticComponent<BaseButtonProps & React__default.ButtonHTMLAttributes<HTMLButtonElement> & React__default.RefAttributes<HTMLButtonElement>>;
469
+
470
+ type CalendarProps = DayPickerProps;
471
+ declare function Calendar({ captionLayout, className, ...props }: CalendarProps): React__default.JSX.Element;
472
+
473
+ interface CardFooterProps extends BoxProps {
474
+ /**
475
+ * Contents of the Footer.
476
+ */
477
+ children?: ReactNode;
478
+ /**
479
+ * Additional props to be spread to rendered element
480
+ */
481
+ [x: string]: any;
482
+ }
483
+ declare const CardFooter: FC<CardFooterProps>;
484
+
485
+ interface CardHeaderProps extends BoxProps {
486
+ /**
487
+ * The title of the card
488
+ */
489
+ title?: ReactNode;
490
+ /**
491
+ * Description of the card, or element below the title
492
+ */
493
+ description?: ReactNode;
494
+ }
495
+ declare const CardHeader: FC<CardHeaderProps>;
496
+
497
+ interface CardSectionProps extends BoxProps {
498
+ /**
499
+ * Any valid background color token, or a `url()` for an image
500
+ */
501
+ background?: BoxProps['background'];
502
+ /**
503
+ * If defined as a prop, this value will take higher precedence than the corresponding component design token value
504
+ * Any valid border color token
505
+ * Or a responsive prop with borderColor for each breakpoint.
506
+ */
507
+ borderColor?: BoxProps['borderColor'];
508
+ /**
509
+ * If defined as a prop, this value will take higher precedence than the corresponding component design token value
510
+ * Width of the section's border
511
+ * Can be a single [border width token](/?path=/docs/foundation-design-tokens--docs#border-width).
512
+ * Can also be a string of [border width tokens](/?path=/docs/foundation-design-tokens--docs#border-width)
513
+ * that models itself after the css shorthand property,
514
+ * where you can set the border width on all four sides of an element.
515
+ * e.g: "0 sm xs 0" --> top: 0, right: sm, bottom: xs, left: 0;
516
+ */
517
+ borderWidth?: BoxProps['borderWidth'];
518
+ /**
519
+ * Contents of the Section.
520
+ */
521
+ children?: ReactNode;
522
+ /**
523
+ * Custom class to be applied to section container.
524
+ */
525
+ className?: string;
526
+ /**
527
+ * Visually subdued the appearance of the section.
528
+ */
529
+ subdued?: boolean;
530
+ /**
531
+ * Title for the section.
532
+ */
533
+ title?: ReactNode;
534
+ /**
535
+ * Additional props to be spread to rendered element
536
+ */
537
+ [x: string]: any;
538
+ }
539
+ declare const CardSection: FC<CardSectionProps>;
540
+
541
+ interface CardProps extends BoxProps {
542
+ /**
543
+ * The Card's contents.
544
+ */
545
+ children?: ReactNode;
546
+ }
547
+ declare const CardBaseComponent: React__default.FC<CardProps>;
548
+ interface CardStatic {
549
+ Header: typeof CardHeader;
550
+ Section: typeof CardSection;
551
+ Footer: typeof CardFooter;
552
+ }
553
+ type CardWithStaticComponents = typeof CardBaseComponent & CardStatic;
554
+ declare const Card: CardWithStaticComponents;
555
+
556
+ type BaseSize$1 = 'sm' | 'md' | 'lg';
557
+ type CheckboxSize = BaseSize$1 | ResponsiveProp<BaseSize$1>;
558
+ interface CheckboxProps extends Omit<BoxProps, 'radius' | 'background' | 'as' | 'height'> {
559
+ /**
560
+ * The id attribute of the input.
561
+ */
562
+ id: string;
563
+ /**
564
+ * The checkbox input "checked" attribute.
565
+ */
566
+ isChecked: boolean;
567
+ /**
568
+ * Custom content to be displayed to right of checkbox.
569
+ */
570
+ label: string;
571
+ /**
572
+ * Callback function when input is changed.
573
+ */
574
+ onChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
575
+ /**
576
+ * Custom class to apply to the checkbox container.
577
+ */
578
+ className?: string;
579
+ /**
580
+ * Mark the input field as invalid and display a validation message.
581
+ * Pass a string or node to render a validation message below the input.
582
+ */
583
+ error?: React__default.ReactNode;
584
+ /**
585
+ * id of the element that labels the Checkbox
586
+ */
587
+ labelledby?: string;
588
+ /**
589
+ * If the input should be disabled and not focusable.
590
+ */
591
+ isDisabled?: boolean;
592
+ /**
593
+ * If the radio input should be hidden to make way for a custom checkbox.
594
+ */
595
+ isHidden?: boolean;
596
+ /**
597
+ * Whether the checkbox is rendered in an indeterminate state.
598
+ * NOTE: this change is only visual and it does not affect the checked or unchecked state of the checkbox.
599
+ */
600
+ isIndeterminate?: boolean;
601
+ /**
602
+ * The required and aria-required attributes on the input
603
+ */
604
+ isRequired?: boolean;
605
+ /**
606
+ * Callback function when input is blurred.
607
+ */
608
+ onBlur?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
609
+ /**
610
+ * Callback function when input is focused.
611
+ */
612
+ onFocus?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
613
+ /**
614
+ * The size of the checkbox.
615
+ */
616
+ size?: CheckboxSize;
617
+ /**
618
+ * Value of the checkbox input element
619
+ */
620
+ value?: string | number;
621
+ }
622
+ declare const Checkbox: React__default.FC<CheckboxProps>;
623
+
624
+ interface CheckboxInputProps {
625
+ /**
626
+ * The id attribute of the input.
627
+ */
628
+ id: string;
629
+ /**
630
+ * The checkbox input "checked" attribute.
631
+ */
632
+ isChecked: boolean;
633
+ /**
634
+ * Custom content to be displayed to right of checkbox.
635
+ */
636
+ label: string;
637
+ /**
638
+ * Callback function when input is changed.
639
+ */
640
+ onChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
641
+ /**
642
+ * Additional classes to add.
643
+ */
644
+ className?: string;
645
+ /**
646
+ * Mark the input field as invalid and display a validation message.
647
+ * Pass a string or node to render a validation message below the input.
648
+ */
649
+ error?: React__default.ReactNode;
650
+ /**
651
+ * Additional clarifying text to help describe the input
652
+ */
653
+ helpText?: React__default.ReactNode;
654
+ /**
655
+ * Determines if the label is not shown for stylistic reasons.
656
+ * Note the label is still a required prop and will be used as the aria-label for accessibility reasons.
657
+ */
658
+ hideLabel?: boolean;
659
+ /**
660
+ * If the input should be disabled and not focusable.
661
+ */
662
+ isDisabled?: boolean;
663
+ /**
664
+ * Whether the checkbox is rendered in an indeterminate state.
665
+ * NOTE: this change is only visual and it does not affect the checked or unchecked state of the checkbox.
666
+ */
667
+ isIndeterminate?: CheckboxProps['isIndeterminate'];
668
+ /**
669
+ * The required and aria-required attributes on the input
670
+ */
671
+ isRequired?: boolean;
672
+ /**
673
+ * Callback function when input is blurred.
674
+ */
675
+ onBlur?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
676
+ /**
677
+ * Callback function when input is focused.
678
+ */
679
+ onFocus?: (event: React__default.FocusEvent<HTMLInputElement>) => void;
680
+ /**
681
+ * Visual indicator that the field is required, that gets appended to the label
682
+ */
683
+ requiredIndicator?: React__default.ReactNode;
684
+ /**
685
+ * The size of the checkbox.
686
+ */
687
+ size?: CheckboxSize;
688
+ /**
689
+ * Additional props to be spread to rendered element
690
+ */
691
+ [x: string]: any;
692
+ }
693
+ declare const CheckboxInput: React__default.FC<CheckboxInputProps>;
694
+
695
+ declare const Collapsible: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleProps & React.RefAttributes<HTMLDivElement>>;
696
+ declare const CollapsibleTrigger: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleTriggerProps & React.RefAttributes<HTMLButtonElement>>;
697
+ declare const CollapsibleContent: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleContentProps & React.RefAttributes<HTMLDivElement>>;
698
+
699
+ interface DetailsSummaryProps extends BoxProps {
700
+ isDetailsOpen: boolean;
701
+ onToggle?: (event: MouseEvent<HTMLElement> | KeyboardEvent<HTMLElement>) => void;
702
+ }
703
+ declare const DetailsSummary: React__default.FC<DetailsSummaryProps>;
704
+
705
+ interface DetailsProps extends BoxProps {
706
+ /**
707
+ * Whether the details below the summary are opened. Directly corresponds to `open` property in <details> element.
708
+ */
709
+ isOpen: boolean;
710
+ }
711
+ declare const DetailsBaseComponent: React__default.FC<DetailsProps>;
712
+ interface DetailsStatic {
713
+ Summary: typeof DetailsSummary;
714
+ }
715
+ type DetailsWithStaticComponents = typeof DetailsBaseComponent & DetailsStatic;
716
+ declare const Details: DetailsWithStaticComponents;
717
+
718
+ interface DrawerContextProps {
719
+ open: boolean;
720
+ setOpen: (open: boolean) => void;
721
+ toggleDrawer: () => void;
722
+ }
723
+ declare function useDrawer(): DrawerContextProps;
724
+ interface DrawerProviderProps extends React__default.ComponentProps<'div'> {
725
+ defaultIsOpen?: boolean;
726
+ open?: boolean;
727
+ onOpenChange?: (open: boolean) => void;
728
+ }
729
+ declare const DrawerProvider: React__default.ForwardRefExoticComponent<Omit<DrawerProviderProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
730
+ declare const DrawerTrigger: React__default.ForwardRefExoticComponent<Omit<React__default.ClassAttributes<HTMLButtonElement> & React__default.ButtonHTMLAttributes<HTMLButtonElement> & {
731
+ asChild?: boolean;
732
+ }, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
733
+ type DrawerPlacementType = 'left' | 'right' | 'top' | 'bottom';
734
+ interface DrawerProps {
735
+ /**
736
+ * If the drawer is open (controlled mode)
737
+ */
738
+ isOpen?: boolean;
739
+ /**
740
+ * If the drawer starts open (uncontrolled mode)
741
+ */
742
+ defaultIsOpen?: boolean;
743
+ /**
744
+ * Handle zoom/pinch gestures on iOS devices when scroll locking is enabled.
745
+ */
746
+ allowPinchZoom?: boolean;
747
+ /**
748
+ * A drawer needs to be properly labeled to provide context for users with
749
+ * assistive technology such as screen readers. If a drawer is announced to
750
+ * the user without a label, it can be confusing and difficult to navigate.
751
+ */
752
+ ariaLabel?: string;
753
+ /**
754
+ * The id of the element that should be used as the drawer's label by assistive technologies like screen readers.
755
+ */
756
+ ariaLabelledBy?: string;
757
+ /**
758
+ * Contents of the dialog.
759
+ */
760
+ children?: React__default.ReactNode;
761
+ /**
762
+ * Additional class names to add to the drawer content.
763
+ */
764
+ className?: string;
765
+ /**
766
+ * If true, the drawer will close when the overlay is clicked
767
+ */
768
+ closeOnOverlayClick?: boolean;
769
+ /**
770
+ * The ref of the container where the drawer will be inserted into the DOM.
771
+ * By default, drawers are inserted in the document.body, but if need be they can
772
+ * be scoped as necessary.
773
+ */
774
+ containerRef?: React__default.RefObject<Node>;
775
+ /**
776
+ * By default, focus is trapped within the drawer.
777
+ * If true, focus will not be trapped within the contents of the drawer.
778
+ */
779
+ dangerouslyBypassFocusLock?: boolean;
780
+ /**
781
+ * By default, the drawer locks scrolling on the body, but in some cases you may want to allow for scrolling.
782
+ * If true, this will allow the body to scroll while the drawer is open.
783
+ */
784
+ dangerouslyBypassScrollLock?: boolean;
785
+ /**
786
+ * If true, the overlay will not be rendered, scrolling for the entire page will remain enabled,
787
+ * and focus will not be locked to the contents of the drawer
788
+ */
789
+ hideOverlay?: boolean;
790
+ /**
791
+ * By default the first focusable element will receive focus when the dialog
792
+ * opens but you can provide a ref to focus instead.
793
+ *
794
+ * @see Docs https://reach.tech/dialog#dialog-initialfocusref
795
+ */
796
+ initialFocusRef?: RefObject<HTMLDivElement>;
797
+ /**
798
+ * Which edge of the viewport should the drawer appear from
799
+ */
800
+ placement?: DrawerPlacementType;
801
+ /**
802
+ * Function that is called whenever the user either hits
803
+ * the "Escape" key, clicks the close button icon, or clicks the overlay.
804
+ */
805
+ onDismiss?: (event?: React__default.SyntheticEvent) => void;
806
+ /**
807
+ * The width of the Drawer when opened. Can be given a standard css value (px, rem, em, %),
808
+ * or a [width token](/?path=/story/design-tokens-design-tokens--page#width)
809
+ */
810
+ width?: DimensionSize | CssDimensionValue;
811
+ }
812
+ declare const Drawer: React__default.FC<DrawerProps>;
813
+ declare const DrawerHeader: React__default.ForwardRefExoticComponent<Omit<BoxProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
814
+ declare const DrawerTitle: React__default.ForwardRefExoticComponent<Omit<BoxProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
815
+ declare const DrawerCloseButton: React__default.ForwardRefExoticComponent<BaseButtonProps & React__default.ButtonHTMLAttributes<HTMLButtonElement> & {
816
+ onClose?: () => void;
817
+ } & React__default.RefAttributes<HTMLButtonElement>>;
818
+ declare const DrawerContent: React__default.ForwardRefExoticComponent<Omit<BoxProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
819
+
820
+ declare const DropdownMenu: React__default.FC<DropdownMenuPrimitive.DropdownMenuProps>;
821
+ declare const DropdownMenuTrigger: React__default.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React__default.RefAttributes<HTMLButtonElement>>;
822
+ declare const DropdownMenuGroup: React__default.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React__default.RefAttributes<HTMLDivElement>>;
823
+ declare const DropdownMenuPortal: React__default.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
824
+ declare const DropdownMenuSub: React__default.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
825
+ declare const DropdownMenuRadioGroup: React__default.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React__default.RefAttributes<HTMLDivElement>>;
826
+ declare const DropdownMenuItem: React__default.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & {
827
+ inset?: boolean;
828
+ } & React__default.RefAttributes<HTMLDivElement>>;
829
+ declare const DropdownMenuContent: React__default.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
830
+ declare const DropdownMenuLabel: React__default.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & {
831
+ inset?: boolean;
832
+ } & React__default.RefAttributes<HTMLDivElement>>;
833
+ declare const DropdownMenuSeparator: React__default.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
834
+ declare const DropdownMenuShortcut: {
835
+ ({ className, ...props }: React__default.HTMLAttributes<HTMLSpanElement>): React__default.JSX.Element;
836
+ displayName: string;
837
+ };
838
+ declare const DropdownMenuSubTrigger: React__default.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & {
839
+ inset?: boolean;
840
+ } & React__default.RefAttributes<HTMLDivElement>>;
841
+ declare const DropdownMenuSubContent: React__default.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
842
+
843
+ interface FormControlProps extends BoxProps {
844
+ /**
845
+ * The input's id attribute. Used to programmatically tie the input with its label.
846
+ */
847
+ id: string;
848
+ /**
849
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
850
+ */
851
+ label: string;
852
+ /**
853
+ * Mark the input field as invalid and display a validation message.
854
+ * Pass a string or node to render a validation message below the input.
855
+ */
856
+ error?: ReactNode;
857
+ /**
858
+ * Visually hide the label.
859
+ */
860
+ hideLabel?: boolean;
861
+ /**
862
+ * Additional clarifying text to help describe the input
863
+ */
864
+ helpText?: ReactNode;
865
+ /**
866
+ * The input's disabled attribute
867
+ */
868
+ isDisabled?: boolean;
869
+ /**
870
+ * The required and aria-required attributes on the input
871
+ */
872
+ isRequired?: boolean;
873
+ /**
874
+ * Visual indicator that the field is required, that gets appended to the label
875
+ */
876
+ requiredIndicator?: ReactNode;
877
+ }
878
+ declare const FormControl: React__default.ForwardRefExoticComponent<Omit<FormControlProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
879
+
880
+ interface FormikCheckboxInputProps extends Omit<CheckboxInputProps, 'onChange'> {
881
+ field: FieldAttributes<HTMLInputElement>;
882
+ form: {
883
+ touched: FormikTouched<FormikValues>;
884
+ errors: FormikErrors<FormikValues>;
885
+ };
886
+ onChange?: CheckboxInputProps['onChange'];
887
+ }
888
+ declare const FormikCheckboxInput: React__default.FC<FormikCheckboxInputProps>;
889
+
890
+ type BaseSize = 'sm' | 'md' | 'lg';
891
+ type RadioSize = BaseSize | ResponsiveProp<BaseSize>;
892
+ interface RadioInputProps {
893
+ /**
894
+ * Radio input name.
895
+ */
896
+ name: string;
897
+ /**
898
+ * Callback function to call on change event.
899
+ */
900
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
901
+ /**
902
+ * Options for radio group.
903
+ */
904
+ option: {
905
+ id: string;
906
+ value: string;
907
+ label: ReactNode;
908
+ disabled?: boolean | null;
909
+ };
910
+ /**
911
+ * Additional classes to add.
912
+ */
913
+ className?: string;
914
+ /**
915
+ * If the radio group should be disabled and not focusable.
916
+ */
917
+ isDisabled?: boolean;
918
+ /**
919
+ * If the radio input should be hidden to make way for a custom radio.
920
+ */
921
+ isHidden?: boolean;
922
+ /**
923
+ * The required and aria-required attributes
924
+ */
925
+ isRequired?: boolean;
926
+ /**
927
+ * If the radio group should be disabled and not focusable.
928
+ */
929
+ isSelected?: boolean;
930
+ /**
931
+ * Callback function to call on blur event.
932
+ */
933
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
934
+ /**
935
+ * Callback function to call on focus event.
936
+ */
937
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
938
+ /**
939
+ * The size of the radio icon.
940
+ */
941
+ size: RadioSize;
942
+ }
943
+
944
+ interface RadioGroupProps {
945
+ /**
946
+ * Radio group name.
947
+ */
948
+ name: string;
949
+ /**
950
+ * Callback function to call on change event.
951
+ */
952
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
953
+ /**
954
+ * Options for radio group.
955
+ */
956
+ options: {
957
+ id: string;
958
+ value: string;
959
+ label: ReactNode;
960
+ disabled?: boolean | null;
961
+ }[];
962
+ /**
963
+ * Additional classes to add.
964
+ */
965
+ className?: string;
966
+ /**
967
+ * Description to be displayed below the title, and above the RadioGroup.
968
+ */
969
+ description?: ReactNode;
970
+ /**
971
+ * Whether the radios should be aligned in a row or in a column
972
+ */
973
+ direction?: 'row' | 'column';
974
+ /**
975
+ * Mark the radio group as invalid and display a validation message.
976
+ * Pass a string or node to render a validation message below the input.
977
+ */
978
+ error?: ReactNode;
979
+ /**
980
+ * If the radio group should be disabled and not focusable.
981
+ */
982
+ isDisabled?: boolean;
983
+ /**
984
+ * If the radio group is required or not
985
+ */
986
+ isRequired?: boolean;
987
+ /**
988
+ * Callback function to call on blur event.
989
+ */
990
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
991
+ /**
992
+ * Callback function to call on focus event.
993
+ */
994
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
995
+ /**
996
+ * Visual indicator that the field is required, that gets appended to the label
997
+ */
998
+ requiredIndicator?: React__default.ReactNode;
999
+ /**
1000
+ * Size of the radio icons in the group.
1001
+ */
1002
+ size?: RadioInputProps['size'];
1003
+ /**
1004
+ * Title to be displayed above the RadioGroup.
1005
+ */
1006
+ title?: ReactNode;
1007
+ /**
1008
+ * The value of selected radio input.
1009
+ */
1010
+ value?: string;
1011
+ /**
1012
+ * Additional props to be spread to rendered element
1013
+ */
1014
+ [x: string]: any;
1015
+ }
1016
+ declare const RadioGroup: FC<RadioGroupProps>;
1017
+
1018
+ interface FormikRadioGroupProps extends Omit<RadioGroupProps, 'onChange'> {
1019
+ field: FieldAttributes<HTMLInputElement>;
1020
+ form: {
1021
+ touched: FormikTouched<FormikValues>;
1022
+ errors: FormikErrors<FormikValues>;
1023
+ };
1024
+ onChange?: RadioGroupProps['onChange'];
1025
+ }
1026
+ declare const FormikRadioGroup: React__default.FC<FormikRadioGroupProps>;
1027
+
1028
+ type SelectOption = {
1029
+ value: string;
1030
+ label: ReactNode;
1031
+ [key: string]: unknown;
1032
+ };
1033
+ type SelectGroupOptions = GroupBase<SelectOption>;
1034
+ type SelectInputOptions = OptionsOrGroups<SelectOption, SelectGroupOptions>;
1035
+ type SimulatedEventPayloadType = {
1036
+ target: {
1037
+ name: string;
1038
+ value: OnChangeValue<SelectOption, boolean>;
1039
+ };
1040
+ };
1041
+ type TextInputSize = 'sm' | 'md' | 'lg' | ResponsiveProp<'sm' | 'md' | 'lg'>;
1042
+ interface SelectInputProps {
1043
+ /**
1044
+ * The id attribute of the input.
1045
+ */
1046
+ id: string;
1047
+ /**
1048
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
1049
+ */
1050
+ label: string;
1051
+ /**
1052
+ * Callback function to call on change event.
1053
+ */
1054
+ onChange: (event: SimulatedEventPayloadType) => void;
1055
+ /**
1056
+ * The value(s) of select.
1057
+ */
1058
+ value: any | any[];
1059
+ /**
1060
+ * Options for dropdown list.
1061
+ */
1062
+ options: SelectInputOptions | AsyncOptions;
1063
+ /**
1064
+ * Autofocus select input on render.
1065
+ */
1066
+ autoFocus?: boolean;
1067
+ /**
1068
+ * Additional classes to add.
1069
+ */
1070
+ className?: string;
1071
+ /**
1072
+ * Mark the input field as invalid and display a validation message.
1073
+ * Pass a string or node to render a validation message below the input.
1074
+ */
1075
+ error?: ReactNode;
1076
+ /**
1077
+ * Additional clarifying text to help describe the input
1078
+ */
1079
+ helpText?: ReactNode;
1080
+ /**
1081
+ * Visually hide the label.
1082
+ */
1083
+ hideLabel?: boolean;
1084
+ /**
1085
+ * Load the input asynchronously.
1086
+ */
1087
+ isAsync?: boolean;
1088
+ /**
1089
+ * If the input value is clearable programmatically.
1090
+ */
1091
+ isClearable?: boolean;
1092
+ /**
1093
+ * Include custom option in dropdown list.
1094
+ */
1095
+ isCreatable?: boolean;
1096
+ /**
1097
+ * If the input should be disabled and not focusable.
1098
+ */
1099
+ isDisabled?: boolean;
1100
+ /**
1101
+ * Is multi select enabled.
1102
+ */
1103
+ isMulti?: boolean;
1104
+ /**
1105
+ * The required and aria-required attributes on the input
1106
+ */
1107
+ isRequired?: boolean;
1108
+ /**
1109
+ * Select 'name' attribute.
1110
+ */
1111
+ name?: string;
1112
+ /**
1113
+ * A ref to portal the dropdown menu to. This is useful when the dropdown is located in a smaller container
1114
+ * and we want to avoid cutting off the menu.
1115
+ */
1116
+ menuPortalTarget?: HTMLElement;
1117
+ /**
1118
+ * Callback function to call on blur event.
1119
+ */
1120
+ onBlur?: (event: FocusEvent<HTMLElement>) => void;
1121
+ /**
1122
+ * Callback function to call on focus event.
1123
+ */
1124
+ onFocus?: (event: FocusEvent<HTMLElement>) => void;
1125
+ /**
1126
+ * Placeholder for input.
1127
+ */
1128
+ placeholder?: string;
1129
+ /**
1130
+ * Visual indicator that the field is required, that gets appended to the label
1131
+ */
1132
+ requiredIndicator?: ReactNode;
1133
+ /**
1134
+ * The size of the text input.
1135
+ */
1136
+ size?: TextInputSize;
1137
+ /**
1138
+ * Additional props to be spread. These will be applied specifically to
1139
+ * the `react-select` component that powers the select. For full docs on
1140
+ * react-select props, [Click Here](https://react-select.com/props)
1141
+ */
1142
+ [x: string]: any;
1143
+ }
1144
+ type AsyncOptions = (inputValue: string) => Promise<OptionsOrGroups<SelectOption, SelectGroupOptions>>;
1145
+ type AsyncSelectInputProps = SelectInputProps & {
1146
+ /**
1147
+ * Load the input asynchronously.
1148
+ */
1149
+ isAsync: true;
1150
+ /**
1151
+ * Load options asynchronously.
1152
+ */
1153
+ options: AsyncOptions;
1154
+ /**
1155
+ * If cacheOptions is passed, then the loaded data will be cached.
1156
+ */
1157
+ cacheOptions?: boolean;
1158
+ /**
1159
+ * The default set of options to show before the user starts searching.
1160
+ */
1161
+ defaultOptions?: boolean;
1162
+ };
1163
+ type SyncSelectInputProps = SelectInputProps & {
1164
+ /**
1165
+ * Load the input synchronously.
1166
+ */
1167
+ isAsync?: false;
1168
+ /**
1169
+ * Options for dropdown list.
1170
+ */
1171
+ options: SelectInputOptions;
1172
+ };
1173
+ declare function SelectInput(props: AsyncSelectInputProps): JSX.Element;
1174
+ declare function SelectInput(props: SyncSelectInputProps): JSX.Element;
1175
+
1176
+ interface FormikSelectInputProps extends Omit<SelectInputProps, 'onChange'> {
1177
+ field: FieldAttributes<HTMLSelectElement>;
1178
+ form: {
1179
+ touched: FormikTouched<FormikValues>;
1180
+ errors: FormikErrors<FormikValues>;
1181
+ };
1182
+ onChange?: SelectInputProps['onChange'];
1183
+ error?: string | Array<{
1184
+ label?: string;
1185
+ }>;
1186
+ }
1187
+ declare const FormikSelectInput: React__default.FC<FormikSelectInputProps>;
1188
+
1189
+ type SelectInputInsetSize = 'md' | 'lg';
1190
+ interface SelectInputInsetProps {
1191
+ /**
1192
+ * The input's id attribute. Used to programmatically tie the input with its label.
1193
+ */
1194
+ id: string;
1195
+ /**
1196
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
1197
+ */
1198
+ label: string;
1199
+ /**
1200
+ * List of options for the select input.
1201
+ */
1202
+ options: {
1203
+ value: string | number;
1204
+ label: string | number;
1205
+ }[];
1206
+ /**
1207
+ * Callback function to call on change event.
1208
+ */
1209
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
1210
+ /**
1211
+ * Value of selected option. Should match the value key in the option object.
1212
+ */
1213
+ value: string | number | null;
1214
+ /**
1215
+ * Automatically focus the input when the page is loaded.
1216
+ */
1217
+ autoFocus?: boolean;
1218
+ /**
1219
+ * Custom class to be added to standard input classes.
1220
+ */
1221
+ className?: string;
1222
+ /**
1223
+ * Mark the input field as invalid and display a validation message.
1224
+ * Pass a string or node to render a validation message below the input.
1225
+ */
1226
+ error?: ReactNode;
1227
+ /**
1228
+ * Additional clarifying text to help describe the input
1229
+ */
1230
+ helpText?: ReactNode;
1231
+ /**
1232
+ * Props passed directly to the input element of the component
1233
+ */
1234
+ inputProps?: BoxProps & HTMLProps<HTMLInputElement>;
1235
+ /**
1236
+ * The input's disabled attribute
1237
+ */
1238
+ isDisabled?: boolean;
1239
+ /**
1240
+ * The required and aria-required attributes on the input
1241
+ */
1242
+ isRequired?: boolean;
1243
+ /**
1244
+ * The input's 'name' attribute.
1245
+ */
1246
+ name?: string;
1247
+ /**
1248
+ * Callback function to call on blur event.
1249
+ */
1250
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1251
+ /**
1252
+ * Callback function to call when input us cleared. When this is passed,
1253
+ * the input will display an icon on the right side, for triggering this callback.
1254
+ */
1255
+ onClear?: (event: MouseEvent<HTMLButtonElement> | KeyboardEvent<HTMLButtonElement>) => void;
1256
+ /**
1257
+ * Callback function to call on focus event.
1258
+ */
1259
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1260
+ /**
1261
+ * The input placeholder attribute.
1262
+ */
1263
+ placeholder?: string;
1264
+ /**
1265
+ * Visual indicator that the field is required, that gets appended to the label
1266
+ */
1267
+ requiredIndicator?: ReactNode;
1268
+ /**
1269
+ * The size of the text input.
1270
+ */
1271
+ size?: SelectInputInsetSize | ResponsiveProp<SelectInputInsetSize>;
1272
+ /**
1273
+ * Additional props to be spread to rendered element
1274
+ */
1275
+ [x: string]: any;
1276
+ }
1277
+ declare const SelectInputInset: ForwardRefExoticComponent<SelectInputInsetProps>;
1278
+
1279
+ interface FormikSelectInputInsetProps extends Omit<SelectInputInsetProps, 'onChange'> {
1280
+ field: FieldAttributes<HTMLSelectElement>;
1281
+ form: {
1282
+ touched: FormikTouched<FormikValues>;
1283
+ errors: FormikErrors<FormikValues>;
1284
+ };
1285
+ onChange?: SelectInputInsetProps['onChange'];
1286
+ }
1287
+ declare const FormikSelectInputInset: React__default.FC<FormikSelectInputInsetProps>;
1288
+
1289
+ type TextareaInputInsetSize = 'md' | 'lg';
1290
+ interface TextareaInputInsetProps {
1291
+ /**
1292
+ * The input's id attribute. Used to programmatically tie the input with its label.
1293
+ */
1294
+ id: string;
1295
+ /**
1296
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
1297
+ */
1298
+ label: string;
1299
+ /**
1300
+ * Callback function to call on change event.
1301
+ */
1302
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
1303
+ /**
1304
+ * The text value of the input. Required since our Input is a controlled component.
1305
+ */
1306
+ value: InputHTMLAttributes<HTMLInputElement>['value'];
1307
+ /**
1308
+ * Automatically focus the input when the page is loaded.
1309
+ */
1310
+ autoFocus?: boolean;
1311
+ /**
1312
+ * Custom class to be added to standard input classes.
1313
+ */
1314
+ className?: string;
1315
+ /**
1316
+ * Mark the input field as invalid and display a validation message.
1317
+ * Pass a string or node to render a validation message below the input.
1318
+ */
1319
+ error?: ReactNode;
1320
+ /**
1321
+ * Additional clarifying text to help describe the input
1322
+ */
1323
+ helpText?: ReactNode;
1324
+ /**
1325
+ * Props passed directly to the input element of the component
1326
+ */
1327
+ inputProps?: BoxProps & HTMLProps<HTMLInputElement>;
1328
+ /**
1329
+ * The input's disabled attribute
1330
+ */
1331
+ isDisabled?: boolean;
1332
+ /**
1333
+ * The required and aria-required attributes on the input
1334
+ */
1335
+ isRequired?: boolean;
1336
+ /**
1337
+ * The input's 'maxlength' attribute.
1338
+ * NOTE: initializing the input with a value longer than the desired maxlength will not trim this value.
1339
+ */
1340
+ maxLength?: number;
1341
+ /**
1342
+ * The input's 'name' attribute.
1343
+ */
1344
+ name?: string;
1345
+ /**
1346
+ * Callback function to call on blur event.
1347
+ */
1348
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1349
+ /**
1350
+ * Callback function to call on focus event.
1351
+ */
1352
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1353
+ /**
1354
+ * The input placeholder attribute.
1355
+ */
1356
+ placeholder?: string;
1357
+ /**
1358
+ * An input helper rendered before the input field value
1359
+ */
1360
+ prefix?: ReactNode;
1361
+ /**
1362
+ * Visual indicator that the field is required, that gets appended to the label
1363
+ */
1364
+ requiredIndicator?: ReactNode;
1365
+ /**
1366
+ * Textarea resize behavior
1367
+ */
1368
+ resize?: 'vertical' | 'horizontal' | 'none' | 'both';
1369
+ /**
1370
+ * number of visible text lines for the control.
1371
+ */
1372
+ rows?: number;
1373
+ /**
1374
+ * The size of the text input.
1375
+ */
1376
+ size?: TextareaInputInsetSize | ResponsiveProp<TextareaInputInsetSize>;
1377
+ /**
1378
+ * An input helper rendered after the input field value
1379
+ */
1380
+ suffix?: ReactNode;
1381
+ /**
1382
+ * The input 'type' value. Defaults to type 'text'.
1383
+ */
1384
+ type?: InputHTMLAttributes<HTMLInputElement>['type'];
1385
+ /**
1386
+ * Additional props to be spread to rendered element
1387
+ */
1388
+ [x: string]: any;
1389
+ }
1390
+ declare const TextareaInputInset: ForwardRefExoticComponent<TextareaInputInsetProps>;
1391
+
1392
+ interface FormikTextareaInputInsetProps extends Omit<TextareaInputInsetProps, 'onChange'> {
1393
+ field: FieldAttributes<HTMLTextAreaElement>;
1394
+ form: {
1395
+ touched: FormikTouched<FormikValues>;
1396
+ errors: FormikErrors<FormikValues>;
1397
+ };
1398
+ onChange?: TextareaInputInsetProps['onChange'];
1399
+ }
1400
+ declare const FormikTextareaInputInset: FC<FormikTextareaInputInsetProps>;
1401
+
1402
+ type TextInputInsetSize = 'md' | 'lg';
1403
+ interface TextInputInsetProps {
1404
+ /**
1405
+ * The input's id attribute. Used to programmatically tie the input with its label.
1406
+ */
1407
+ id: string;
1408
+ /**
1409
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
1410
+ */
1411
+ label: string;
1412
+ /**
1413
+ * Callback function to call on change event.
1414
+ */
1415
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
1416
+ /**
1417
+ * The text value of the input. Required since our Input is a controlled component.
1418
+ */
1419
+ value: InputHTMLAttributes<HTMLInputElement>['value'];
1420
+ /**
1421
+ * Automatically focus the input when the page is loaded.
1422
+ */
1423
+ autoFocus?: boolean;
1424
+ /**
1425
+ * Custom class to be added to standard input classes.
1426
+ */
1427
+ className?: string;
1428
+ /**
1429
+ * Mark the input field as invalid and display a validation message.
1430
+ * Pass a string or node to render a validation message below the input.
1431
+ */
1432
+ error?: ReactNode;
1433
+ /**
1434
+ * Additional clarifying text to help describe the input
1435
+ */
1436
+ helpText?: ReactNode;
1437
+ /**
1438
+ * Props passed directly to the input element of the component
1439
+ */
1440
+ inputProps?: BoxProps & HTMLProps<HTMLInputElement>;
1441
+ /**
1442
+ * The input's disabled attribute
1443
+ */
1444
+ isDisabled?: boolean;
1445
+ /**
1446
+ * The required and aria-required attributes on the input
1447
+ */
1448
+ isRequired?: boolean;
1449
+ /**
1450
+ * The input's 'maxlength' attribute.
1451
+ * NOTE: initializing the input with a value longer than the desired maxlength will not trim this value.
1452
+ */
1453
+ maxLength?: number;
1454
+ /**
1455
+ * The input's 'name' attribute.
1456
+ */
1457
+ name?: string;
1458
+ /**
1459
+ * Callback function to call on blur event.
1460
+ */
1461
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1462
+ /**
1463
+ * Callback function to call when input us cleared. When this is passed,
1464
+ * the input will display an icon on the right side, for triggering this callback.
1465
+ */
1466
+ onClear?: (event: MouseEvent<HTMLButtonElement> | KeyboardEvent<HTMLButtonElement>) => void;
1467
+ /**
1468
+ * Callback function to call on focus event.
1469
+ */
1470
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1471
+ /**
1472
+ * The input placeholder attribute.
1473
+ */
1474
+ placeholder?: string;
1475
+ /**
1476
+ * An input helper rendered before the input field value
1477
+ */
1478
+ prefix?: ReactNode;
1479
+ /**
1480
+ * Visual indicator that the field is required, that gets appended to the label
1481
+ */
1482
+ requiredIndicator?: ReactNode;
1483
+ /**
1484
+ * The size of the text input.
1485
+ */
1486
+ size?: TextInputInsetSize | ResponsiveProp<TextInputInsetSize>;
1487
+ /**
1488
+ * An input helper rendered after the input field value
1489
+ */
1490
+ suffix?: ReactNode;
1491
+ /**
1492
+ * The input 'type' value. Defaults to type 'text'.
1493
+ */
1494
+ type?: InputHTMLAttributes<HTMLInputElement>['type'];
1495
+ /**
1496
+ * Additional props to be spread to rendered element
1497
+ */
1498
+ [x: string]: any;
1499
+ }
1500
+ declare const TextInputInset: ForwardRefExoticComponent<TextInputInsetProps>;
1501
+
1502
+ interface FormikTextInputInsetProps extends Omit<TextInputInsetProps, 'onChange'> {
1503
+ field: FieldAttributes<HTMLInputElement>;
1504
+ form: {
1505
+ touched: FormikTouched<FormikValues>;
1506
+ errors: FormikErrors<FormikValues>;
1507
+ };
1508
+ onChange?: TextInputInsetProps['onChange'];
1509
+ }
1510
+ declare const FormikTextInputInset: React__default.FC<FormikTextInputInsetProps>;
1511
+
1512
+ type SelectInputNativeSize = 'sm' | 'md' | 'lg';
1513
+ interface SelectInputNativeOption {
1514
+ value: string | number;
1515
+ label: string | number;
1516
+ disabled?: boolean;
1517
+ }
1518
+ interface SelectInputNativeProps extends BoxProps, FormControlProps {
1519
+ /**
1520
+ * List of options for the select input.
1521
+ */
1522
+ options: SelectInputNativeOption[];
1523
+ /**
1524
+ * onChange callback from select element.
1525
+ */
1526
+ onChange: (event: React__default.ChangeEvent<HTMLSelectElement>) => void;
1527
+ /**
1528
+ * Value of selected option. Should match the value key in the option object.
1529
+ */
1530
+ value: string | number | null;
1531
+ /**
1532
+ * The input's 'name' attribute.
1533
+ */
1534
+ name?: string;
1535
+ /**
1536
+ * Visual indicator that the field is required, that gets appended to the label
1537
+ */
1538
+ requiredIndicator?: React__default.ReactNode;
1539
+ /**
1540
+ * Size of the input. ('sm' | 'md' | 'lg')
1541
+ */
1542
+ size?: SelectInputNativeSize | ResponsiveProp<SelectInputNativeSize>;
1543
+ /**
1544
+ * Whether the input is autofocused on initial render.
1545
+ */
1546
+ autoFocus?: HTMLSelectElement['autofocus'];
1547
+ /**
1548
+ * Additional props to be spread.
1549
+ */
1550
+ [x: string]: any;
1551
+ }
1552
+ declare const SelectInputNative: React__default.FC<SelectInputNativeProps>;
1553
+
1554
+ interface FormikSelectInputNativeProps extends Omit<SelectInputNativeProps, 'onChange'> {
1555
+ field: FieldAttributes<HTMLSelectElement>;
1556
+ form: {
1557
+ touched: FormikTouched<FormikValues>;
1558
+ errors: FormikErrors<FormikValues>;
1559
+ };
1560
+ onChange?: SelectInputNativeProps['onChange'];
1561
+ }
1562
+ declare const FormikSelectInputNative: React__default.FC<FormikSelectInputNativeProps>;
1563
+
1564
+ type TextInputSizeType = 'sm' | 'md' | 'lg';
1565
+ interface TextInputProps {
1566
+ /**
1567
+ * The input's id attribute. Used to programmatically tie the input with its label.
1568
+ */
1569
+ id: string;
1570
+ /**
1571
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
1572
+ */
1573
+ label: string;
1574
+ /**
1575
+ * Callback function to call on change event.
1576
+ */
1577
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
1578
+ /**
1579
+ * The text value of the input. Required since our Input is a controlled component.
1580
+ */
1581
+ value: InputHTMLAttributes<HTMLInputElement>['value'];
1582
+ /**
1583
+ * Automatically focus the input when the page is loaded.
1584
+ */
1585
+ autoFocus?: boolean;
1586
+ /**
1587
+ * Custom class to be added to standard input classes.
1588
+ */
1589
+ className?: string;
1590
+ /**
1591
+ * Mark the input field as invalid and display a validation message.
1592
+ * Pass a string or node to render a validation message below the input.
1593
+ */
1594
+ error?: ReactNode;
1595
+ /**
1596
+ * Visually hide the label.
1597
+ */
1598
+ hideLabel?: boolean;
1599
+ /**
1600
+ * Additional clarifying text to help describe the input
1601
+ */
1602
+ helpText?: ReactNode;
1603
+ /**
1604
+ * Props passed directly to the input element of the component
1605
+ */
1606
+ inputProps?: BoxProps & HTMLProps<HTMLInputElement>;
1607
+ /**
1608
+ * The input's disabled attribute
1609
+ */
1610
+ isDisabled?: boolean;
1611
+ /**
1612
+ * The required and aria-required attributes on the input
1613
+ */
1614
+ isRequired?: boolean;
1615
+ /**
1616
+ * The input's 'maxlength' attribute.
1617
+ * NOTE: initializing the input with a value longer than the desired maxlength will not trim this value.
1618
+ */
1619
+ maxLength?: number;
1620
+ /**
1621
+ * The input's 'name' attribute.
1622
+ */
1623
+ name?: string;
1624
+ /**
1625
+ * Callback function to call on blur event.
1626
+ */
1627
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
1628
+ /**
1629
+ * Callback function to call when input us cleared. When this is passed,
1630
+ * the input will display an icon on the right side, for triggering this callback.
1631
+ */
1632
+ onClear?: (event: MouseEvent<HTMLButtonElement> | KeyboardEvent<HTMLButtonElement>) => void;
1633
+ /**
1634
+ * Callback function to call on focus event.
1635
+ */
1636
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
1637
+ /**
1638
+ * The input placeholder attribute.
1639
+ */
1640
+ placeholder?: string;
1641
+ /**
1642
+ * An input helper rendered before the input field value
1643
+ */
1644
+ prefix?: ReactNode;
1645
+ /**
1646
+ * Visual indicator that the field is required, that gets appended to the label
1647
+ */
1648
+ requiredIndicator?: ReactNode;
1649
+ /**
1650
+ * The size of the text input.
1651
+ */
1652
+ size?: TextInputSizeType | ResponsiveProp<TextInputSizeType>;
1653
+ /**
1654
+ * An input helper rendered after the input field value
1655
+ */
1656
+ suffix?: ReactNode;
1657
+ /**
1658
+ * The input 'type' value. Defaults to type 'text'.
1659
+ */
1660
+ type?: InputHTMLAttributes<HTMLInputElement>['type'];
1661
+ /**
1662
+ * Additional props to be spread to rendered element
1663
+ */
1664
+ [x: string]: any;
1665
+ }
1666
+ declare const TextInput: ForwardRefExoticComponent<TextInputProps>;
1667
+
1668
+ interface FormikTextInputProps extends Omit<TextInputProps, 'onChange'> {
1669
+ field: FieldAttributes<HTMLInputElement>;
1670
+ form: {
1671
+ touched: FormikTouched<FormikValues>;
1672
+ errors: FormikErrors<FormikValues>;
1673
+ };
1674
+ onChange?: TextInputProps['onChange'];
1675
+ }
1676
+ declare const FormikTextInput: React__default.FC<FormikTextInputProps>;
1677
+
1678
+ type TextareaInputSize = 'sm' | 'md' | 'lg';
1679
+ interface TextareaInputProps extends Omit<BoxProps, 'as' | 'width'> {
1680
+ /**
1681
+ * The input's id attribute. Used to programmatically tie the input with its label.
1682
+ */
1683
+ id: string;
1684
+ /**
1685
+ * Custom content to be displayed above the input. If the label is hidden, will be used to set aria-label attribute.
1686
+ */
1687
+ label: string;
1688
+ /**
1689
+ * Callback function to call on change event.
1690
+ */
1691
+ onChange: (event: ChangeEvent<HTMLTextAreaElement>) => void;
1692
+ /**
1693
+ * The text value of the input. Required since our Input is a controlled component.
1694
+ */
1695
+ value: string;
1696
+ /**
1697
+ * The input's 'autocomplete' attribute.
1698
+ */
1699
+ autoComplete?: boolean | string;
1700
+ /**
1701
+ * Automatically focus the input when the page is loaded.
1702
+ */
1703
+ autoFocus?: boolean;
1704
+ /**
1705
+ * Custom class to be added to standard input classes.
1706
+ */
1707
+ className?: string;
1708
+ /**
1709
+ * Mark the input field as invalid and display a validation message.
1710
+ * Pass a string or node to render a validation message below the input.
1711
+ */
1712
+ error?: ReactNode;
1713
+ /**
1714
+ * Additional clarifying text to help describe the input
1715
+ */
1716
+ helpText?: ReactNode;
1717
+ /**
1718
+ * Visually hide the label.
1719
+ */
1720
+ hideLabel?: boolean;
1721
+ /**
1722
+ * The input's disabled attribute
1723
+ */
1724
+ isDisabled?: boolean;
1725
+ /**
1726
+ * The required and aria-required attributes on the input
1727
+ */
1728
+ isRequired?: boolean;
1729
+ /**
1730
+ * The input's 'maxlength' attribute.
1731
+ * NOTE: initializing the input with a value longer than the desired maxlength will not trim this value.
1732
+ */
1733
+ maxLength?: number;
1734
+ /**
1735
+ * The input's 'name' attribute.
1736
+ */
1737
+ name?: string;
1738
+ /**
1739
+ * Callback function to call on blur event.
1740
+ */
1741
+ onBlur?: (event: FocusEvent<HTMLTextAreaElement>) => void;
1742
+ /**
1743
+ * Callback function to call on focus event.
1744
+ */
1745
+ onFocus?: (event: FocusEvent<HTMLTextAreaElement>) => void;
1746
+ /**
1747
+ * The input placeholder attribute.
1748
+ */
1749
+ placeholder?: string;
1750
+ /**
1751
+ * Visual indicator that the field is required, that gets appended to the label
1752
+ */
1753
+ requiredIndicator?: ReactNode;
1754
+ /**
1755
+ * Textarea resize behavior
1756
+ */
1757
+ resize?: 'vertical' | 'horizontal' | 'none' | 'both';
1758
+ /**
1759
+ * number of visible text lines for the control.
1760
+ */
1761
+ rows?: number;
1762
+ /**
1763
+ * The size of the text input.
1764
+ */
1765
+ size?: TextareaInputSize | ResponsiveProp<TextareaInputSize>;
1766
+ /**
1767
+ * Additional props to be spread to rendered element
1768
+ */
1769
+ [x: string]: any;
1770
+ }
1771
+ declare const TextareaInput: FC<TextareaInputProps>;
1772
+
1773
+ interface FormikTextareaInputProps extends Omit<TextareaInputProps, 'onChange'> {
1774
+ field: FieldAttributes<HTMLTextAreaElement>;
1775
+ form: {
1776
+ touched: FormikTouched<FormikValues>;
1777
+ errors: FormikErrors<FormikValues>;
1778
+ };
1779
+ onChange?: TextareaInputProps['onChange'];
1780
+ }
1781
+ declare const FormikTextareaInput: FC<FormikTextareaInputProps>;
1782
+
1783
+ type TimePickerProps = Omit<SelectInputProps, 'options'> & {
1784
+ /**
1785
+ * Options to govern the display of the option labels in the select.
1786
+ * This is a direct passthrough to the second argument of JS `toLocaleTimeString`.
1787
+ * [More](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString)
1788
+ */
1789
+ dateDisplayOptions?: Intl.DateTimeFormatOptions;
1790
+ /**
1791
+ * End hour and minute
1792
+ */
1793
+ endTime?: {
1794
+ hour: number;
1795
+ minute: number;
1796
+ };
1797
+ /**
1798
+ * Interval of displayed times (in seconds). Defaults to 900 seconds (15 minutes).
1799
+ */
1800
+ interval?: number;
1801
+ /**
1802
+ * Locale(s) to be passed down in order to format the label values in the select.
1803
+ * This corresponds to the first argument of JS `toLocaleTimeString`.
1804
+ * [More](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString)
1805
+ */
1806
+ locales?: string | string[];
1807
+ /**
1808
+ * Start hour and minute
1809
+ */
1810
+ startTime?: {
1811
+ hour: number;
1812
+ minute: number;
1813
+ };
1814
+ };
1815
+ declare const TimePicker: FC<TimePickerProps>;
1816
+
1817
+ interface FormikTimePickerProps extends Omit<TimePickerProps, 'onChange'> {
1818
+ field: FieldAttributes<HTMLSelectElement>;
1819
+ form: {
1820
+ touched: FormikTouched<FormikValues>;
1821
+ errors: FormikErrors<FormikValues>;
1822
+ };
1823
+ onChange?: TimePickerProps['onChange'];
1824
+ }
1825
+ declare const FormikTimePicker: FC<FormikTimePickerProps>;
1826
+
1827
+ interface TimePickerNativeProps extends Omit<SelectInputNativeProps, 'options'> {
1828
+ /**
1829
+ * Options to govern the display of the option labels in the select.
1830
+ * This is a direct passthrough to the second argument of JS `toLocaleTimeString`.
1831
+ * [More](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString)
1832
+ */
1833
+ dateDisplayOptions?: Intl.DateTimeFormatOptions;
1834
+ /**
1835
+ * End hour and minute
1836
+ */
1837
+ endTime?: {
1838
+ hour: number;
1839
+ minute: number;
1840
+ };
1841
+ /**
1842
+ * Interval of displayed times (in seconds). Defaults to 900 seconds (15 minutes).
1843
+ */
1844
+ interval?: number;
1845
+ /**
1846
+ * Locale(s) to be passed down in order to format the label values in the select.
1847
+ * This corresponds to the first argument of JS `toLocaleTimeString`.
1848
+ * [More](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString)
1849
+ */
1850
+ locales?: string | string[];
1851
+ /**
1852
+ * Start hour and minute
1853
+ */
1854
+ startTime?: {
1855
+ hour: number;
1856
+ minute: number;
1857
+ };
1858
+ /**
1859
+ * Should be ISO timestamp as returned by `onChange`, and matching value of option object.
1860
+ */
1861
+ value: SelectInputNativeProps['value'];
1862
+ }
1863
+ declare const TimePickerNative: FC<TimePickerNativeProps>;
1864
+
1865
+ interface FormikTimePickerNativeProps extends Omit<TimePickerNativeProps, 'onChange'> {
1866
+ field: FieldAttributes<HTMLTextAreaElement>;
1867
+ form: {
1868
+ touched: FormikTouched<FormikValues>;
1869
+ errors: FormikErrors<FormikValues>;
1870
+ };
1871
+ onChange: TimePickerNativeProps['onChange'];
1872
+ }
1873
+ declare const FormikTimePickerNative: FC<FormikTimePickerNativeProps>;
1874
+
1875
+ interface FormikSwitchProps {
1876
+ field: FieldAttributes<HTMLTextAreaElement>;
1877
+ form: {
1878
+ touched: FormikTouched<FormikValues>;
1879
+ errors: FormikErrors<FormikValues>;
1880
+ };
1881
+ id: string;
1882
+ label: string;
1883
+ }
1884
+ declare const FormikSwitch: React__default.FC<FormikSwitchProps>;
1885
+
1886
+ interface FormikToggleGroupProps {
1887
+ field: FieldAttributes<HTMLInputElement>;
1888
+ form: {
1889
+ touched: FormikTouched<FormikValues>;
1890
+ errors: FormikErrors<FormikValues>;
1891
+ setFieldValue: (field: string, value: unknown, shouldValidate?: boolean) => void;
1892
+ };
1893
+ options: Array<{
1894
+ id: string;
1895
+ value: string;
1896
+ label: React__default.ReactNode;
1897
+ disabled?: boolean;
1898
+ }>;
1899
+ helpText?: string;
1900
+ label?: string;
1901
+ children?: React__default.ReactNode;
1902
+ }
1903
+ declare const FormikToggleGroup: React__default.FC<FormikToggleGroupProps>;
1904
+
1905
+ type ToggleVariant$1 = 'default' | 'outline';
1906
+ type ToggleGroupProps = React__default.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Root> & {
1907
+ variant?: ToggleVariant$1;
1908
+ name?: string;
1909
+ gap?: BaseSpacing | ResponsiveProp<BaseSpacing>;
1910
+ /**
1911
+ * Mark the toggle group as invalid and display a validation message.
1912
+ * Pass a string or node to render a validation message below the input.
1913
+ */
1914
+ error?: ReactNode;
1915
+ };
1916
+ declare const ToggleGroup: React__default.ForwardRefExoticComponent<ToggleGroupProps & React__default.RefAttributes<HTMLDivElement>>;
1917
+ declare const ToggleGroupItem: React__default.ForwardRefExoticComponent<Omit<ToggleGroupPrimitive.ToggleGroupItemProps & React__default.RefAttributes<HTMLButtonElement>, "ref"> & {
1918
+ variant?: ToggleVariant$1;
1919
+ } & React__default.RefAttributes<HTMLButtonElement>>;
1920
+
1921
+ interface FormikToggleGroupMultiProps {
1922
+ name: string;
1923
+ options: Array<{
1924
+ id: string;
1925
+ value: string;
1926
+ label: React__default.ReactNode;
1927
+ disabled?: boolean;
1928
+ }>;
1929
+ helpText?: string;
1930
+ label?: string;
1931
+ children?: React__default.ReactNode;
1932
+ variant: ToggleVariant$1;
1933
+ gap?: BaseSpacing | ResponsiveProp<BaseSpacing>;
1934
+ }
1935
+ declare const FormikToggleGroupMulti: ({ name, options, helpText, label, children, variant, gap, ...props }: FormikToggleGroupMultiProps) => React__default.JSX.Element;
1936
+
1937
+ interface FormLabelProps extends BoxProps {
1938
+ /**
1939
+ * Content to be rendered inside the label.
1940
+ */
1941
+ children: ReactNode;
1942
+ /**
1943
+ * The id of the form control that the label is labeling
1944
+ */
1945
+ inputId: string;
1946
+ /**
1947
+ * Custom class to pass to label element.
1948
+ */
1949
+ className?: string;
1950
+ /**
1951
+ * Additional clarifying text to that helps describe the field
1952
+ */
1953
+ helpText?: ReactNode;
1954
+ /**
1955
+ * Mark the label has disabled
1956
+ */
1957
+ isDisabled?: boolean;
1958
+ /**
1959
+ * prop deprecated: no longer in use and will be remove in next major release.
1960
+ */
1961
+ isFieldRequired?: boolean;
1962
+ /**
1963
+ * Apply custom styling to labels for a radio input
1964
+ */
1965
+ isRadioInputLabel?: boolean;
1966
+ /**
1967
+ * Visual indicator that the field is required, that gets appended to the label
1968
+ */
1969
+ requiredIndicator?: ReactNode;
1970
+ /**
1971
+ * Additional props to be spread to rendered element
1972
+ */
1973
+ [x: string]: any;
1974
+ }
1975
+ declare const FormLabel: FC<FormLabelProps>;
1976
+
1977
+ type HEADING_LEVELS_TYPE = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
1978
+
1979
+ interface HeadingProps {
1980
+ /**
1981
+ * The DOM tag or react component to use for the element.
1982
+ * Select the appropriate semantic element (h1-h6).
1983
+ */
1984
+ as?: HEADING_LEVELS_TYPE;
1985
+ /**
1986
+ * Content of the heading. Can be a string or any valid DOM node.
1987
+ */
1988
+ children?: ReactNode;
1989
+ /**
1990
+ * Additional class names to add.
1991
+ */
1992
+ className?: string;
1993
+ /**
1994
+ * A variant token identifier to use for the text variant. Available variants found:
1995
+ * [here](https://github.com/hyphen/hyphen-design-tokens/blob/main/properties/color/font.json).
1996
+ */
1997
+ color?: FontColor;
1998
+ /**
1999
+ * By default, size is determined by the chosen tag (e.g. h1 is bigger than h2).
2000
+ * However, size can be set independently so that its size is appropriate for the surrounding content.
2001
+ * Available sizes found:
2002
+ * [here](https://github.com/hyphen/hyphen-design-tokens/blob/main/properties/size/font.json).
2003
+ */
2004
+ size?: HeadingSize | ResponsiveProp<HeadingSize>;
2005
+ /**
2006
+ * Additional props to be spread to rendered element
2007
+ */
2008
+ [x: string]: any;
2009
+ }
2010
+ declare const Heading: FC<HeadingProps>;
2011
+
2012
+ interface IconProps {
2013
+ className?: string;
2014
+ /**
2015
+ * A color token identifier to use for the text color.
2016
+ */
2017
+ color?: FontColor | ResponsiveProp<FontColor>;
2018
+ /**
2019
+ * A [font size token](/?path=/docs/design-tokens-design-tokens--page#font-size) identifier
2020
+ */
2021
+ size?: FontSize | ResponsiveProp<FontSize>;
2022
+ /**
2023
+ * Name of the icon
2024
+ */
2025
+ name: IconName;
2026
+ /**
2027
+ * Additional props to be spread to rendered element
2028
+ */
2029
+ [x: string]: any;
2030
+ }
2031
+ declare const Icon: FC<IconProps>;
2032
+
2033
+ type ModalFooterProps = Omit<BoxProps, 'as' | 'radius'>;
2034
+ declare const ModalFooter: FC<ModalFooterProps>;
2035
+
2036
+ type ModalHeaderProps = Omit<BoxProps, 'as' | 'radius' | 'justifyContent'> & {
2037
+ /**
2038
+ * id of the element containing the title, used by the Modal `aria-labelledby` prop
2039
+ */
2040
+ id: string;
2041
+ /**
2042
+ * Modal's header title
2043
+ */
2044
+ title?: string;
2045
+ /**
2046
+ * Additional content to render in the modal header, displayed alongside the title.
2047
+ */
2048
+ children?: React__default.ReactNode;
2049
+ /**
2050
+ * If defined, will render a 'x' close button on the right side of the ModalHeader
2051
+ */
2052
+ onDismiss?: (event?: React__default.SyntheticEvent) => void;
2053
+ };
2054
+ declare const ModalHeader: FC<ModalHeaderProps>;
2055
+
2056
+ type ModalBodyProps = BoxProps;
2057
+ declare const ModalBody: FC<ModalBodyProps>;
2058
+
2059
+ interface ModalProps {
2060
+ /**
2061
+ * Handle zoom/pinch gestures on iOS devices when scroll locking is enabled.
2062
+ */
2063
+ allowPinchZoom?: boolean;
2064
+ /**
2065
+ * Each modal needs to be properly labeled to provide context for users with
2066
+ * assistive technology such as screen readers. If a modal is announced to
2067
+ * the user without a label, it can be confusing and difficult to navigate.
2068
+ */
2069
+ ariaLabel?: string;
2070
+ /**
2071
+ * The id of the element that should be used as the Modal's label by assistive
2072
+ * technologies like screen readers. Usually the id is set on the `Modal.Header`
2073
+ */
2074
+ ariaLabelledBy?: string;
2075
+ /**
2076
+ * Contents of the dialog.
2077
+ */
2078
+ children?: ReactNode;
2079
+ /**
2080
+ * Additional ClassNames to add to dialog.
2081
+ */
2082
+ className?: string;
2083
+ /**
2084
+ * The ref of the container where the dialog will be inserted into the DOM.
2085
+ * By default, Modals are inserted in the document.body, but if need be they can
2086
+ * be scoped as necessary.
2087
+ */
2088
+ containerRef?: React__default.RefObject<Node>;
2089
+ /**
2090
+ * At mobile viewport widths, the modal will take up the fullscreen
2091
+ */
2092
+ fullScreenMobile?: boolean;
2093
+ /**
2094
+ * Background color for the modal content using design tokens
2095
+ */
2096
+ background?: BackgroundColor;
2097
+ /**
2098
+ * By default the first focusable element will receive focus when the dialog
2099
+ * opens but you can provide a ref to focus instead.
2100
+ *
2101
+ * @see Docs https://reach.tech/dialog#dialog-initialfocusref
2102
+ */
2103
+ initialFocusRef?: RefObject<HTMLDivElement>;
2104
+ /**
2105
+ * Whether the modal is visible or not
2106
+ */
2107
+ isOpen: boolean;
2108
+ /**
2109
+ * Max width for modal content. Uses the same maxWidth prop as the `Box` component,
2110
+ * and as such can be responsive as well.
2111
+ */
2112
+ maxWidth?: BoxProps['maxWidth'];
2113
+ /**
2114
+ * Function that is called whenever the user hits "Escape" key or clicks outside the modal.
2115
+ */
2116
+ onDismiss: (event?: React__default.SyntheticEvent) => void;
2117
+ /**
2118
+ * The css overflow behavior of the Modal
2119
+ */
2120
+ overflow?: CssOverflowValue;
2121
+ /**
2122
+ * Inline styles for the modal container
2123
+ */
2124
+ style?: React__default.CSSProperties;
2125
+ /**
2126
+ * Allows spread props
2127
+ */
2128
+ [x: string]: any;
2129
+ }
2130
+ declare const ModalBaseComponent: React__default.FC<ModalProps>;
2131
+ interface ModalStatic {
2132
+ Body: typeof ModalBody;
2133
+ Header: typeof ModalHeader;
2134
+ Footer: typeof ModalFooter;
2135
+ }
2136
+ type ModalWithStaticComponents = typeof ModalBaseComponent & ModalStatic;
2137
+ declare const Modal: ModalWithStaticComponents;
2138
+
2139
+ interface PaginationProps {
2140
+ /**
2141
+ * The current page number being displayed.
2142
+ */
2143
+ activePage: number;
2144
+ /**
2145
+ * The number of list items contained in a page.
2146
+ */
2147
+ itemsPerPage: number;
2148
+ /**
2149
+ * Callback fired when the user clicks a page or prev/next button.
2150
+ */
2151
+ onChange: (pageNumber: number) => void;
2152
+ /**
2153
+ * The total number of items in the list
2154
+ */
2155
+ totalItemsCount: number;
2156
+ /**
2157
+ * Boolean to determine if individual page buttons (or dropdown are visible). Takes a `ResponsiveProp`
2158
+ * if you want to render it differently at different breakpoints
2159
+ */
2160
+ arePagesVisible?: boolean;
2161
+ /**
2162
+ * Custom class to pass down to the pagination container.
2163
+ */
2164
+ className?: string;
2165
+ /**
2166
+ * Pass true to render a version of Pagination with smaller buttons.
2167
+ */
2168
+ isCompact?: boolean;
2169
+ /**
2170
+ * Boolean to determine if the list totals (and current range) are visible.
2171
+ * NOTE: these are hidden on mobile regardless of this prop value.
2172
+ */
2173
+ isTotalVisible?: boolean;
2174
+ /**
2175
+ * The text (or react node) to pass to the NEXT page button.
2176
+ */
2177
+ nextPageText?: string | ReactNode;
2178
+ /**
2179
+ * Number of pages shown in paginator, not including navigation blocks (prev, next), as well as first, last pages.
2180
+ * In other words the number of pages displayed 'in the middle', that the user can navigate to.
2181
+ */
2182
+ numberOfPagesDisplayed?: number;
2183
+ /**
2184
+ * The text (or react node) to pass to the PREVIOUS page button.
2185
+ */
2186
+ prevPageText?: string | ReactNode;
2187
+ }
2188
+ declare const Pagination: FC<PaginationProps>;
2189
+
2190
+ declare const Popover: React__default.FC<PopoverPrimitive.PopoverProps>;
2191
+ declare const PopoverTrigger: React__default.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React__default.RefAttributes<HTMLButtonElement>>;
2192
+ declare const PopoverAnchor: React__default.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & React__default.RefAttributes<HTMLDivElement>>;
2193
+ declare const PopoverPortal: React__default.FC<PopoverPrimitive.PopoverPortalProps>;
2194
+ declare const PopoverContent: React__default.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2195
+
2196
+ interface InputRangeProps {
2197
+ /**
2198
+ * The input's id attribute.
2199
+ */
2200
+ id: string;
2201
+ /**
2202
+ * The value of the range.
2203
+ */
2204
+ value: number;
2205
+ /**
2206
+ * The maximum value of the range.
2207
+ */
2208
+ max: number;
2209
+ /**
2210
+ * Callback function to call on change event.
2211
+ */
2212
+ onChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
2213
+ /**
2214
+ * Custom class to be added to standard input classes.
2215
+ */
2216
+ className?: string;
2217
+ /**
2218
+ * If the input should be disabled and not focusable.
2219
+ */
2220
+ isDisabled?: boolean;
2221
+ }
2222
+ declare const RangeInput: FC<InputRangeProps>;
2223
+
2224
+ interface ResponsiveContextShape {
2225
+ isCreated: boolean;
2226
+ innerWidth?: number;
2227
+ innerHeight?: number;
2228
+ outerWidth?: number;
2229
+ outerHeight?: number;
2230
+ }
2231
+ declare const ResponsiveContext: React__default.Context<ResponsiveContextShape>;
2232
+ interface ResponsiveProviderProps {
2233
+ children?: React__default.ReactNode;
2234
+ /**
2235
+ * Time (in milliseconds) to delay execution of resize handler. Default is 50.
2236
+ */
2237
+ throttle?: number;
2238
+ }
2239
+ declare const ResponsiveProvider: React__default.FC<ResponsiveProviderProps>;
2240
+
2241
+ declare const TooltipProvider: React.FC<TooltipPrimitive.TooltipProviderProps>;
2242
+ declare const Tooltip: React.FC<TooltipPrimitive.TooltipProps>;
2243
+ declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
2244
+ declare const TooltipPortal: React.FC<TooltipPrimitive.TooltipPortalProps>;
2245
+ declare const TooltipContent: React.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
2246
+
2247
+ type SidebarSide = 'left' | 'right';
2248
+ type SidebarOpenState = Record<SidebarSide, boolean>;
2249
+ type SidebarOpenValue = boolean | Partial<SidebarOpenState>;
2250
+ type SidebarStorageKey = string | Partial<Record<SidebarSide, string>>;
2251
+ declare function useSidebar(sideOverride?: SidebarSide): {
2252
+ isMobile: boolean;
2253
+ side: SidebarSide;
2254
+ state: "expanded" | "collapsed";
2255
+ open: boolean;
2256
+ setOpen: (open: boolean | ((open: boolean) => boolean)) => void;
2257
+ openMobile: boolean;
2258
+ setOpenMobile: (open: boolean | ((open: boolean) => boolean)) => void;
2259
+ toggleSidebar: () => void;
2260
+ };
2261
+ declare const SidebarProvider: React__default.ForwardRefExoticComponent<Omit<React__default.ClassAttributes<HTMLDivElement> & React__default.HTMLAttributes<HTMLDivElement> & {
2262
+ defaultOpen?: SidebarOpenValue;
2263
+ open?: SidebarOpenValue;
2264
+ storageKey?: SidebarStorageKey;
2265
+ onOpenChange?: (open: boolean, side?: SidebarSide) => void;
2266
+ }, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2267
+ declare const Sidebar: React__default.ForwardRefExoticComponent<Omit<React__default.ClassAttributes<HTMLDivElement> & React__default.HTMLAttributes<HTMLDivElement> & {
2268
+ side?: "left" | "right";
2269
+ collapsible?: "offcanvas" | "icon" | "none";
2270
+ }, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2271
+ declare const SidebarTrigger: React__default.ForwardRefExoticComponent<Omit<BaseButtonProps & React__default.ButtonHTMLAttributes<HTMLButtonElement> & React__default.RefAttributes<HTMLButtonElement> & {
2272
+ side?: SidebarSide;
2273
+ iconName?: IconName;
2274
+ }, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
2275
+ declare const SidebarInset: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2276
+ declare const SidebarHeader: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2277
+ declare const SidebarFooter: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2278
+ declare const SidebarContent: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2279
+ declare const SidebarMenu: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLUListElement>, HTMLUListElement>, "ref"> & React__default.RefAttributes<HTMLUListElement>>;
2280
+ declare const SidebarMenuItem: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & React__default.RefAttributes<HTMLLIElement>>;
2281
+ declare const SidebarMenuButton: React__default.ForwardRefExoticComponent<Omit<React__default.ClassAttributes<HTMLButtonElement> & React__default.ButtonHTMLAttributes<HTMLButtonElement> & {
2282
+ asChild?: boolean;
2283
+ isActive?: boolean;
2284
+ tooltip?: string | React__default.ComponentProps<typeof TooltipContent>;
2285
+ }, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
2286
+ declare const SidebarGroup: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2287
+ declare const SidebarGroupLabel: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2288
+ declare const SidebarMenuSub: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLUListElement>, HTMLUListElement>, "ref"> & React__default.RefAttributes<HTMLUListElement>>;
2289
+ declare const SidebarMenuSubItem: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & React__default.RefAttributes<HTMLLIElement>>;
2290
+ declare const SidebarMenuSubButton: React__default.ForwardRefExoticComponent<Omit<React__default.ClassAttributes<HTMLAnchorElement> & React__default.AnchorHTMLAttributes<HTMLAnchorElement> & {
2291
+ asChild?: boolean;
2292
+ isActive?: boolean;
2293
+ }, "ref"> & React__default.RefAttributes<HTMLAnchorElement>>;
2294
+ declare const SidebarMenuAction: React__default.ForwardRefExoticComponent<Omit<React__default.ClassAttributes<HTMLButtonElement> & React__default.ButtonHTMLAttributes<HTMLButtonElement> & {
2295
+ asChild?: boolean;
2296
+ }, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
2297
+ declare const SidebarRail: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & React__default.RefAttributes<HTMLButtonElement>>;
2298
+ declare const SidebarMenuBadge: React__default.ForwardRefExoticComponent<Omit<React__default.DetailedHTMLProps<React__default.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
2299
+
2300
+ interface SpinnerProps {
2301
+ /**
2302
+ * Custom className to be applied to spinner container div element.
2303
+ */
2304
+ className?: string;
2305
+ /**
2306
+ * Size of the spinner.
2307
+ */
2308
+ size?: 'sm' | 'md' | 'lg' | 'xl';
2309
+ }
2310
+ declare const Spinner: FC<SpinnerProps>;
2311
+
2312
+ type SwitchSize = 'sm' | 'md' | 'lg';
2313
+ interface SwitchProps {
2314
+ /**
2315
+ * The id attribute of the input.
2316
+ */
2317
+ id: string;
2318
+ /**
2319
+ * The switch input "checked" attribute.
2320
+ */
2321
+ isChecked: boolean;
2322
+ /**
2323
+ * Custom content to be displayed to right of switch.
2324
+ */
2325
+ label: string;
2326
+ /**
2327
+ * Callback function when input is changed.
2328
+ */
2329
+ onChange: (event: ChangeEvent<HTMLInputElement>) => void;
2330
+ /**
2331
+ * Additional classes to add.
2332
+ */
2333
+ className?: string;
2334
+ /**
2335
+ * Mark the input field as invalid and display a validation message.
2336
+ * Pass a string or node to render a validation message below the input.
2337
+ */
2338
+ error?: ReactNode;
2339
+ /**
2340
+ * Additional clarifying text to help describe the input
2341
+ */
2342
+ helpText?: ReactNode;
2343
+ /**
2344
+ * Determines if the label is not shown for stylistic reasons.
2345
+ * Note the label is still a required prop and will be used as the aria-label for accessibility reasons.
2346
+ */
2347
+ hideLabel?: boolean;
2348
+ /**
2349
+ * If the input should be disabled and not focusable.
2350
+ */
2351
+ isDisabled?: boolean;
2352
+ /**
2353
+ * The required and aria-required attributes on the input
2354
+ */
2355
+ isRequired?: boolean;
2356
+ /**
2357
+ * Callback function when input is blurred.
2358
+ */
2359
+ onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
2360
+ /**
2361
+ * Callback function when input is focused.
2362
+ */
2363
+ onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
2364
+ /**
2365
+ * Visual indicator that the field is required, that gets appended to the label
2366
+ */
2367
+ requiredIndicator?: React__default.ReactNode;
2368
+ /**
2369
+ * The size of the switch.
2370
+ */
2371
+ size?: SwitchSize | ResponsiveProp<SwitchSize>;
2372
+ }
2373
+ declare const Switch: FC<SwitchProps>;
2374
+
2375
+ interface TableProps {
2376
+ /**
2377
+ * Columns for the table. See Column definition below for details.
2378
+ */
2379
+ columns: Column[];
2380
+ /**
2381
+ * The data rows to be displayed
2382
+ */
2383
+ rows: Row[];
2384
+ /**
2385
+ * Key that represents a unique value for a row. This is necessary in
2386
+ * order to supply React with a node key on each row.
2387
+ */
2388
+ rowKey: string;
2389
+ /**
2390
+ * Additional classes to add.
2391
+ */
2392
+ className?: string;
2393
+ /**
2394
+ * Text alignment for all table cells. Can be superseded by passing the same prop into the `Column` object
2395
+ * for a specific column.
2396
+ */
2397
+ align?: 'left' | 'right' | 'center';
2398
+ /**
2399
+ * Global placeholder for empty cells. Can be overwritten by setting the same attribute
2400
+ * in the `Column` config.
2401
+ */
2402
+ emptyCellPlaceholder?: string | number | undefined;
2403
+ /**
2404
+ * Enable a hover state on table rows.
2405
+ */
2406
+ hoverableRows?: boolean;
2407
+ /**
2408
+ * Remove borders around table, thead, tbody, td, etc.
2409
+ */
2410
+ isBorderless?: boolean;
2411
+ /**
2412
+ * Make Table more compact by cutting cell padding in half.
2413
+ */
2414
+ isCompact?: boolean;
2415
+ /**
2416
+ * If table scrolls vertically, header will remain stuck to the top of the table, and not scroll away.
2417
+ */
2418
+ hasStickyHeader?: boolean;
2419
+ /**
2420
+ * Set to true if data is loading.
2421
+ */
2422
+ isLoading?: boolean;
2423
+ /**
2424
+ * Set the maximum width and height and enable scrolling within the container when the table grows
2425
+ * past those values. Useful for when we want to render a large table but not force the parent container
2426
+ * to grow and instead make the user scroll. Set values to boolean `true` to enable `overflow: scroll` on the table
2427
+ * without specifying a width/height
2428
+ */
2429
+ isScrollable?: {
2430
+ x?: boolean;
2431
+ y?: boolean;
2432
+ };
2433
+ /**
2434
+ * Adds zebra-striping to any table row within the table body.
2435
+ */
2436
+ isStriped?: boolean;
2437
+ /**
2438
+ * Callback function to fire on sorting one of the table headers.
2439
+ */
2440
+ onSort?: (event: EventWithColumnKey) => void;
2441
+ /**
2442
+ * The key of the sorted column and its sort direction.
2443
+ */
2444
+ sortedColumn?: {
2445
+ dataKey: string | undefined;
2446
+ sortDirection: 'none' | 'ascending' | 'descending' | undefined;
2447
+ };
2448
+ /**
2449
+ * Control the `table-layout` css property for the table.
2450
+ */
2451
+ useFixedTableLayout?: boolean;
2452
+ /**
2453
+ * Truncate overflow inside column based on column width. Can be overwritten on specific columns,
2454
+ * by passing `truncateOverflow` value on a specific Column
2455
+ */
2456
+ truncateOverflow?: boolean;
2457
+ }
2458
+ declare const Table: FC<TableProps>;
2459
+
2460
+ type Theme = 'dark' | 'light' | 'system';
2461
+ type ThemeProviderProps = {
2462
+ children: React__default.ReactNode;
2463
+ defaultTheme?: Theme;
2464
+ storageKey?: string;
2465
+ };
2466
+ type ThemeProviderState = {
2467
+ theme: Theme;
2468
+ setTheme: (theme: Theme) => void;
2469
+ isDarkMode?: boolean;
2470
+ };
2471
+ declare const ThemeProviderContext: React__default.Context<ThemeProviderState>;
2472
+ declare function ThemeProvider({ children, defaultTheme, storageKey, ...props }: ThemeProviderProps): React__default.JSX.Element;
2473
+
2474
+ type ToastType = 'success' | 'error' | 'loading' | 'blank' | 'custom';
2475
+ type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
2476
+ interface Toast {
2477
+ /**
2478
+ * Type of toast to create.
2479
+ */
2480
+ type: ToastType;
2481
+ /**
2482
+ * Unique id for the toast.
2483
+ */
2484
+ id: string;
2485
+ /**
2486
+ * Toast message
2487
+ */
2488
+ message: ValueOrFunction<React__default.ReactNode, Toast>;
2489
+ /**
2490
+ * Determine of toast layout is compact or default.
2491
+ */
2492
+ isCompact?: boolean;
2493
+ /**
2494
+ * Custom duration for toast.
2495
+ */
2496
+ duration?: number;
2497
+ /**
2498
+ * Amount of time the toast timeout has been paused for.
2499
+ * When the toast timeout is paused, its auto-dismissal will be delayed.
2500
+ */
2501
+ pauseDuration: number;
2502
+ /**
2503
+ * Custom toast position, use as needed to override global position from ToastContainer.
2504
+ */
2505
+ position?: ToastPosition;
2506
+ /**
2507
+ * Accessibility options
2508
+ */
2509
+ ariaProps: {
2510
+ role: 'status' | 'alert';
2511
+ 'aria-live': 'assertive' | 'off' | 'polite';
2512
+ };
2513
+ /**
2514
+ * Whether the toast can be dismissed (if true, the toast will include a close button)
2515
+ */
2516
+ canDismiss?: boolean;
2517
+ /**
2518
+ * Custom styles.
2519
+ */
2520
+ style?: React__default.CSSProperties;
2521
+ /**
2522
+ * Custom className
2523
+ */
2524
+ className?: string;
2525
+ /**
2526
+ * Epoch timestamp
2527
+ */
2528
+ createdAt: number;
2529
+ /**
2530
+ * Whether the toast is visible at the current time.
2531
+ * Used in order to display a proper fade-out animation before the element is fully removed from the DOM.
2532
+ */
2533
+ visible: boolean;
2534
+ /**
2535
+ * Height of element (calculated with getBoundingClientRect)
2536
+ */
2537
+ height?: number;
2538
+ }
2539
+ type ToastOptions = Partial<Pick<Toast, 'id' | 'duration' | 'ariaProps' | 'className' | 'style' | 'position' | 'canDismiss' | 'isCompact'>>;
2540
+ /**
2541
+ * Extends toast options so that you can include options for each type of toast in the options.
2542
+ * e.g: { duration: 1000, success: { duration: 2000 } }
2543
+ */
2544
+ type ExtendedToastOptions = ToastOptions & {
2545
+ [key in ToastType]?: ToastOptions;
2546
+ };
2547
+
2548
+ declare const createRectRef: (onRect: (rect: DOMRect) => void) => (el: HTMLElement | null) => void;
2549
+ interface ToastContainerProps {
2550
+ /**
2551
+ * Render function for each individual toast.
2552
+ * This can be used to render custom toasts, although we recommend using the standard version,
2553
+ * unless absolutely necessary.
2554
+ */
2555
+ children?: (t: Toast) => JSX.Element;
2556
+ /**
2557
+ * Style object for the toast container if needed.
2558
+ */
2559
+ containerStyle?: React__default.CSSProperties;
2560
+ /**
2561
+ * Custom classname for toast container if needed.
2562
+ */
2563
+ containerClassName?: string;
2564
+ /**
2565
+ * The vertical gap between each toast notification when multiple toasts are on screen (in pixels).
2566
+ */
2567
+ gutter?: number;
2568
+ /**
2569
+ * Global position for all toasts in container.
2570
+ * NOTE: This can be overwritten by the position property of each individual toast.
2571
+ */
2572
+ position?: ToastPosition;
2573
+ /**
2574
+ * Display toasts in reverse order.
2575
+ * NOTE: Reverse order in this case means that older toasts remain close to the position origin.
2576
+ * and newer toasts appear further away from the origin.
2577
+ */
2578
+ reverseOrder?: boolean;
2579
+ /**
2580
+ * Global options for each toast. Can be overwritten for each individual toast as needed.
2581
+ */
2582
+ toastOptions?: ExtendedToastOptions;
2583
+ /**
2584
+ * Props spread into main container.
2585
+ */
2586
+ [x: string]: unknown;
2587
+ }
2588
+ declare const ToastContainer: React__default.FC<ToastContainerProps>;
2589
+
2590
+ type Message = ValueOrFunction<React__default.ReactNode, Toast>;
2591
+ type ToastHandler = (message: Message, options?: ToastOptions) => string;
2592
+ declare const toast: {
2593
+ (message: Message, opts?: ToastOptions): string;
2594
+ error: ToastHandler;
2595
+ success: ToastHandler;
2596
+ loading: ToastHandler;
2597
+ custom: ToastHandler;
2598
+ dismiss(toastId?: string): void;
2599
+ remove(toastId?: string): void;
2600
+ async<T>(promise: Promise<T>, messages: {
2601
+ loading: React__default.ReactNode;
2602
+ success: ValueOrFunction<React__default.ReactNode, T>;
2603
+ error: ValueOrFunction<React__default.ReactNode, unknown>;
2604
+ }, opts?: ExtendedToastOptions): Promise<T>;
2605
+ };
2606
+
2607
+ declare const useToasts: (toastOptions?: ExtendedToastOptions) => {
2608
+ toasts: Toast[];
2609
+ handlers: {
2610
+ startPause: () => void;
2611
+ endPause: () => void;
2612
+ updateHeight: (toastId: string, height: number) => void;
2613
+ calculateOffset: (currentToast: Toast, opts: {
2614
+ reverseOrder: boolean;
2615
+ gutter: number;
2616
+ defaultPosition?: ToastPosition;
2617
+ }) => number;
2618
+ };
2619
+ };
2620
+
2621
+ type ToggleVariant = 'default' | 'outline';
2622
+ declare const Toggle: React__default.ForwardRefExoticComponent<Omit<TogglePrimitive.ToggleProps & React__default.RefAttributes<HTMLButtonElement>, "ref"> & {
2623
+ variant?: ToggleVariant;
2624
+ } & React__default.RefAttributes<HTMLButtonElement>>;
2625
+
2626
+ interface BreakpointState {
2627
+ isPhone: boolean;
2628
+ isTablet: boolean;
2629
+ isDesktop: boolean;
2630
+ isHd: boolean;
2631
+ activeBreakpoint: Breakpoint;
2632
+ }
2633
+ declare const useBreakpoint: () => BreakpointState;
2634
+
2635
+ declare function useIsMobile(): boolean;
2636
+
2637
+ declare const useIsomorphicLayoutEffect: typeof useEffect;
2638
+
2639
+ interface UseOpenCloseProps {
2640
+ /**
2641
+ * Initial visibility of the component
2642
+ */
2643
+ defaultIsOpen?: boolean;
2644
+ /**
2645
+ * If defined, visibility of the component is assumed to be controlled
2646
+ */
2647
+ isOpen?: boolean;
2648
+ /**
2649
+ * Callback function when component is closed
2650
+ * @returns void
2651
+ */
2652
+ onClose?: () => void;
2653
+ /**
2654
+ * Callback function when component is opened
2655
+ * @returns void
2656
+ */
2657
+ onOpen?: () => void;
2658
+ }
2659
+ interface UseOpenCloseState {
2660
+ /**
2661
+ * If true, sets the controlled component to its visible state
2662
+ */
2663
+ isOpen: boolean;
2664
+ /**
2665
+ * Callback function to set a falsy value for the `isOpen` parameter.
2666
+ */
2667
+ handleClose: () => void;
2668
+ /**
2669
+ * Callback function to set a truthy value for the `isOpen` parameter.
2670
+ */
2671
+ handleOpen: () => void;
2672
+ /**
2673
+ * Callback function to toggle the value of the `isOpen` parameter.
2674
+ */
2675
+ handleToggle: () => void;
2676
+ }
2677
+ declare const useOpenClose: (props?: UseOpenCloseProps) => UseOpenCloseState;
2678
+
2679
+ declare const useTheme: () => {
2680
+ theme: Theme;
2681
+ setTheme: (theme: Theme) => void;
2682
+ isDarkMode?: boolean;
2683
+ };
2684
+
2685
+ interface HookWindowSize {
2686
+ innerWidth?: number;
2687
+ innerHeight?: number;
2688
+ outerWidth?: number;
2689
+ outerHeight?: number;
2690
+ }
2691
+ declare const useWindowSize: () => HookWindowSize;
2692
+
2693
+ export { Alert, type AlertProps, AspectRatio, Badge, type BadgeProps, type BadgeSize, type BadgeVariant, type BaseButtonProps, Box, type BoxProps, type BreakpointState, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Calendar, type CalendarProps, Card, CardBaseComponent, type CardProps, type CardStatic, type CardWithStaticComponents, Checkbox, CheckboxInput, type CheckboxInputProps, type CheckboxProps, type CheckboxSize, Collapsible, CollapsibleContent, CollapsibleTrigger, Details, DetailsBaseComponent, type DetailsProps, type DetailsStatic, DetailsSummary, type DetailsSummaryProps, type DetailsWithStaticComponents, Drawer, DrawerCloseButton, DrawerContent, DrawerHeader, type DrawerPlacementType, type DrawerProps, DrawerProvider, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type ExtendedToastOptions, FormControl, type FormControlProps, FormLabel, type FormLabelProps, FormikCheckboxInput, type FormikCheckboxInputProps, FormikRadioGroup, type FormikRadioGroupProps, FormikSelectInput, FormikSelectInputInset, type FormikSelectInputInsetProps, FormikSelectInputNative, type FormikSelectInputNativeProps, type FormikSelectInputProps, FormikSwitch, type FormikSwitchProps, FormikTextInput, FormikTextInputInset, type FormikTextInputInsetProps, type FormikTextInputProps, FormikTextareaInput, FormikTextareaInputInset, type FormikTextareaInputInsetProps, type FormikTextareaInputProps, FormikTimePicker, FormikTimePickerNative, type FormikTimePickerNativeProps, type FormikTimePickerProps, FormikToggleGroup, FormikToggleGroupMulti, type FormikToggleGroupMultiProps, type FormikToggleGroupProps, Heading, type HeadingProps, type HookWindowSize, type HoverableBoxProperties, Icon, type IconProps, type InputRangeProps, Modal, ModalBaseComponent, type ModalProps, type ModalStatic, type ModalWithStaticComponents, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverContent, PopoverPortal, PopoverTrigger, RadioGroup, type RadioGroupProps, RangeInput, ResponsiveContext, type ResponsiveContextShape, ResponsiveProvider, type ResponsiveProviderProps, SelectInput, SelectInputInset, type SelectInputInsetProps, type SelectInputInsetSize, SelectInputNative, type SelectInputNativeOption, type SelectInputNativeProps, type SelectInputNativeSize, type SelectInputOptions, type SelectInputProps, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarTrigger, type SimulatedEventPayloadType, Spinner, type SpinnerProps, Switch, type SwitchProps, type SwitchSize, Table, type TableProps, TextInput, TextInputInset, type TextInputInsetProps, type TextInputInsetSize, type TextInputProps, type TextInputSize, type TextInputSizeType, TextareaInput, TextareaInputInset, type TextareaInputInsetProps, type TextareaInputInsetSize, type TextareaInputProps, type TextareaInputSize, type Theme, ThemeProvider, ThemeProviderContext, TimePicker, TimePickerNative, type TimePickerNativeProps, type TimePickerProps, type Toast, ToastContainer, type ToastContainerProps, type ToastOptions, type ToastPosition, type ToastType, Toggle, ToggleGroup, ToggleGroupItem, type ToggleVariant$1 as ToggleVariant, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, type UseOpenCloseProps, type UseOpenCloseState, boxPropsKeys, createRectRef, toast, useBreakpoint, useDrawer, useIsMobile, useIsomorphicLayoutEffect, useOpenClose, useSidebar, useTheme, useToasts, useWindowSize };