react-aria-components 1.10.1 → 1.12.0

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 (320) hide show
  1. package/dist/Autocomplete.main.js +7 -20
  2. package/dist/Autocomplete.main.js.map +1 -1
  3. package/dist/Autocomplete.mjs +8 -20
  4. package/dist/Autocomplete.module.js +8 -20
  5. package/dist/Autocomplete.module.js.map +1 -1
  6. package/dist/Breadcrumbs.main.js +13 -3
  7. package/dist/Breadcrumbs.main.js.map +1 -1
  8. package/dist/Breadcrumbs.mjs +15 -5
  9. package/dist/Breadcrumbs.module.js +15 -5
  10. package/dist/Breadcrumbs.module.js.map +1 -1
  11. package/dist/Button.main.js +7 -17
  12. package/dist/Button.main.js.map +1 -1
  13. package/dist/Button.mjs +7 -17
  14. package/dist/Button.module.js +7 -17
  15. package/dist/Button.module.js.map +1 -1
  16. package/dist/Calendar.main.js +36 -14
  17. package/dist/Calendar.main.js.map +1 -1
  18. package/dist/Calendar.mjs +38 -16
  19. package/dist/Calendar.module.js +38 -16
  20. package/dist/Calendar.module.js.map +1 -1
  21. package/dist/Checkbox.main.js +8 -3
  22. package/dist/Checkbox.main.js.map +1 -1
  23. package/dist/Checkbox.mjs +10 -5
  24. package/dist/Checkbox.module.js +10 -5
  25. package/dist/Checkbox.module.js.map +1 -1
  26. package/dist/Collection.main.js.map +1 -1
  27. package/dist/Collection.module.js.map +1 -1
  28. package/dist/ColorArea.main.js +4 -4
  29. package/dist/ColorArea.main.js.map +1 -1
  30. package/dist/ColorArea.mjs +5 -5
  31. package/dist/ColorArea.module.js +5 -5
  32. package/dist/ColorArea.module.js.map +1 -1
  33. package/dist/ColorField.main.js +14 -1
  34. package/dist/ColorField.main.js.map +1 -1
  35. package/dist/ColorField.mjs +14 -1
  36. package/dist/ColorField.module.js +14 -1
  37. package/dist/ColorField.module.js.map +1 -1
  38. package/dist/ColorSlider.main.js +3 -1
  39. package/dist/ColorSlider.main.js.map +1 -1
  40. package/dist/ColorSlider.mjs +3 -1
  41. package/dist/ColorSlider.module.js +3 -1
  42. package/dist/ColorSlider.module.js.map +1 -1
  43. package/dist/ColorSwatch.main.js +6 -2
  44. package/dist/ColorSwatch.main.js.map +1 -1
  45. package/dist/ColorSwatch.mjs +6 -2
  46. package/dist/ColorSwatch.module.js +6 -2
  47. package/dist/ColorSwatch.module.js.map +1 -1
  48. package/dist/ColorSwatchPicker.main.js.map +1 -1
  49. package/dist/ColorSwatchPicker.module.js.map +1 -1
  50. package/dist/ColorThumb.main.js +3 -1
  51. package/dist/ColorThumb.main.js.map +1 -1
  52. package/dist/ColorThumb.mjs +3 -1
  53. package/dist/ColorThumb.module.js +3 -1
  54. package/dist/ColorThumb.module.js.map +1 -1
  55. package/dist/ColorWheel.main.js +3 -1
  56. package/dist/ColorWheel.main.js.map +1 -1
  57. package/dist/ColorWheel.mjs +3 -1
  58. package/dist/ColorWheel.module.js +3 -1
  59. package/dist/ColorWheel.module.js.map +1 -1
  60. package/dist/ComboBox.main.js +4 -1
  61. package/dist/ComboBox.main.js.map +1 -1
  62. package/dist/ComboBox.mjs +4 -1
  63. package/dist/ComboBox.module.js +4 -1
  64. package/dist/ComboBox.module.js.map +1 -1
  65. package/dist/DateField.main.js +16 -3
  66. package/dist/DateField.main.js.map +1 -1
  67. package/dist/DateField.mjs +16 -3
  68. package/dist/DateField.module.js +16 -3
  69. package/dist/DateField.module.js.map +1 -1
  70. package/dist/DatePicker.main.js +15 -8
  71. package/dist/DatePicker.main.js.map +1 -1
  72. package/dist/DatePicker.mjs +16 -9
  73. package/dist/DatePicker.module.js +16 -9
  74. package/dist/DatePicker.module.js.map +1 -1
  75. package/dist/Dialog.main.js +4 -3
  76. package/dist/Dialog.main.js.map +1 -1
  77. package/dist/Dialog.mjs +5 -4
  78. package/dist/Dialog.module.js +5 -4
  79. package/dist/Dialog.module.js.map +1 -1
  80. package/dist/Disclosure.main.js +12 -10
  81. package/dist/Disclosure.main.js.map +1 -1
  82. package/dist/Disclosure.mjs +13 -11
  83. package/dist/Disclosure.module.js +13 -11
  84. package/dist/Disclosure.module.js.map +1 -1
  85. package/dist/DragAndDrop.main.js +31 -3
  86. package/dist/DragAndDrop.main.js.map +1 -1
  87. package/dist/DragAndDrop.mjs +31 -3
  88. package/dist/DragAndDrop.module.js +31 -3
  89. package/dist/DragAndDrop.module.js.map +1 -1
  90. package/dist/DropZone.main.js +4 -3
  91. package/dist/DropZone.main.js.map +1 -1
  92. package/dist/DropZone.mjs +4 -3
  93. package/dist/DropZone.module.js +4 -3
  94. package/dist/DropZone.module.js.map +1 -1
  95. package/dist/FieldError.main.js +3 -1
  96. package/dist/FieldError.main.js.map +1 -1
  97. package/dist/FieldError.mjs +3 -1
  98. package/dist/FieldError.module.js +3 -1
  99. package/dist/FieldError.module.js.map +1 -1
  100. package/dist/FileTrigger.main.js +3 -1
  101. package/dist/FileTrigger.main.js.map +1 -1
  102. package/dist/FileTrigger.mjs +3 -1
  103. package/dist/FileTrigger.module.js +3 -1
  104. package/dist/FileTrigger.module.js.map +1 -1
  105. package/dist/Form.main.js.map +1 -1
  106. package/dist/Form.module.js.map +1 -1
  107. package/dist/GridList.main.js +114 -26
  108. package/dist/GridList.main.js.map +1 -1
  109. package/dist/GridList.mjs +116 -30
  110. package/dist/GridList.module.js +116 -30
  111. package/dist/GridList.module.js.map +1 -1
  112. package/dist/Header.main.js +1 -1
  113. package/dist/Header.main.js.map +1 -1
  114. package/dist/Header.mjs +2 -2
  115. package/dist/Header.module.js +2 -2
  116. package/dist/Header.module.js.map +1 -1
  117. package/dist/HiddenDateInput.main.js +118 -0
  118. package/dist/HiddenDateInput.main.js.map +1 -0
  119. package/dist/HiddenDateInput.mjs +109 -0
  120. package/dist/HiddenDateInput.module.js +109 -0
  121. package/dist/HiddenDateInput.module.js.map +1 -0
  122. package/dist/Link.main.js +7 -1
  123. package/dist/Link.main.js.map +1 -1
  124. package/dist/Link.mjs +7 -1
  125. package/dist/Link.module.js +7 -1
  126. package/dist/Link.module.js.map +1 -1
  127. package/dist/ListBox.main.js +27 -36
  128. package/dist/ListBox.main.js.map +1 -1
  129. package/dist/ListBox.mjs +29 -38
  130. package/dist/ListBox.module.js +29 -38
  131. package/dist/ListBox.module.js.map +1 -1
  132. package/dist/Menu.main.js +44 -23
  133. package/dist/Menu.main.js.map +1 -1
  134. package/dist/Menu.mjs +47 -26
  135. package/dist/Menu.module.js +47 -26
  136. package/dist/Menu.module.js.map +1 -1
  137. package/dist/Meter.main.js +6 -2
  138. package/dist/Meter.main.js.map +1 -1
  139. package/dist/Meter.mjs +6 -2
  140. package/dist/Meter.module.js +6 -2
  141. package/dist/Meter.module.js.map +1 -1
  142. package/dist/Modal.main.js +31 -6
  143. package/dist/Modal.main.js.map +1 -1
  144. package/dist/Modal.mjs +31 -6
  145. package/dist/Modal.module.js +31 -6
  146. package/dist/Modal.module.js.map +1 -1
  147. package/dist/NumberField.main.js +4 -1
  148. package/dist/NumberField.main.js.map +1 -1
  149. package/dist/NumberField.mjs +4 -1
  150. package/dist/NumberField.module.js +4 -1
  151. package/dist/NumberField.module.js.map +1 -1
  152. package/dist/Popover.main.js +10 -12
  153. package/dist/Popover.main.js.map +1 -1
  154. package/dist/Popover.mjs +11 -13
  155. package/dist/Popover.module.js +11 -13
  156. package/dist/Popover.module.js.map +1 -1
  157. package/dist/ProgressBar.main.js +6 -2
  158. package/dist/ProgressBar.main.js.map +1 -1
  159. package/dist/ProgressBar.mjs +6 -2
  160. package/dist/ProgressBar.module.js +6 -2
  161. package/dist/ProgressBar.module.js.map +1 -1
  162. package/dist/RadioGroup.main.js +8 -3
  163. package/dist/RadioGroup.main.js.map +1 -1
  164. package/dist/RadioGroup.mjs +9 -4
  165. package/dist/RadioGroup.module.js +9 -4
  166. package/dist/RadioGroup.module.js.map +1 -1
  167. package/dist/SearchField.main.js +9 -5
  168. package/dist/SearchField.main.js.map +1 -1
  169. package/dist/SearchField.mjs +10 -6
  170. package/dist/SearchField.module.js +10 -6
  171. package/dist/SearchField.module.js.map +1 -1
  172. package/dist/Select.main.js +12 -14
  173. package/dist/Select.main.js.map +1 -1
  174. package/dist/Select.mjs +13 -15
  175. package/dist/Select.module.js +13 -15
  176. package/dist/Select.module.js.map +1 -1
  177. package/dist/Separator.main.js +17 -3
  178. package/dist/Separator.main.js.map +1 -1
  179. package/dist/Separator.mjs +20 -6
  180. package/dist/Separator.module.js +20 -6
  181. package/dist/Separator.module.js.map +1 -1
  182. package/dist/Slider.main.js +7 -5
  183. package/dist/Slider.main.js.map +1 -1
  184. package/dist/Slider.mjs +8 -6
  185. package/dist/Slider.module.js +8 -6
  186. package/dist/Slider.module.js.map +1 -1
  187. package/dist/Switch.main.js +4 -1
  188. package/dist/Switch.main.js.map +1 -1
  189. package/dist/Switch.mjs +4 -1
  190. package/dist/Switch.module.js +4 -1
  191. package/dist/Switch.module.js.map +1 -1
  192. package/dist/Table.main.js +104 -42
  193. package/dist/Table.main.js.map +1 -1
  194. package/dist/Table.mjs +107 -45
  195. package/dist/Table.module.js +107 -45
  196. package/dist/Table.module.js.map +1 -1
  197. package/dist/Tabs.main.js +24 -11
  198. package/dist/Tabs.main.js.map +1 -1
  199. package/dist/Tabs.mjs +26 -13
  200. package/dist/Tabs.module.js +26 -13
  201. package/dist/Tabs.module.js.map +1 -1
  202. package/dist/TagGroup.main.js +27 -12
  203. package/dist/TagGroup.main.js.map +1 -1
  204. package/dist/TagGroup.mjs +29 -14
  205. package/dist/TagGroup.module.js +29 -14
  206. package/dist/TagGroup.module.js.map +1 -1
  207. package/dist/TextField.main.js +20 -6
  208. package/dist/TextField.main.js.map +1 -1
  209. package/dist/TextField.mjs +21 -7
  210. package/dist/TextField.module.js +21 -7
  211. package/dist/TextField.module.js.map +1 -1
  212. package/dist/Toast.main.js +9 -5
  213. package/dist/Toast.main.js.map +1 -1
  214. package/dist/Toast.mjs +9 -5
  215. package/dist/Toast.module.js +9 -5
  216. package/dist/Toast.module.js.map +1 -1
  217. package/dist/ToggleButton.main.js +8 -2
  218. package/dist/ToggleButton.main.js.map +1 -1
  219. package/dist/ToggleButton.mjs +8 -2
  220. package/dist/ToggleButton.module.js +8 -2
  221. package/dist/ToggleButton.module.js.map +1 -1
  222. package/dist/ToggleButtonGroup.main.js +6 -2
  223. package/dist/ToggleButtonGroup.main.js.map +1 -1
  224. package/dist/ToggleButtonGroup.mjs +6 -2
  225. package/dist/ToggleButtonGroup.module.js +6 -2
  226. package/dist/ToggleButtonGroup.module.js.map +1 -1
  227. package/dist/Toolbar.main.js +4 -3
  228. package/dist/Toolbar.main.js.map +1 -1
  229. package/dist/Toolbar.mjs +4 -3
  230. package/dist/Toolbar.module.js +4 -3
  231. package/dist/Toolbar.module.js.map +1 -1
  232. package/dist/Tooltip.main.js +9 -14
  233. package/dist/Tooltip.main.js.map +1 -1
  234. package/dist/Tooltip.mjs +10 -15
  235. package/dist/Tooltip.module.js +10 -15
  236. package/dist/Tooltip.module.js.map +1 -1
  237. package/dist/Tree.main.js +81 -28
  238. package/dist/Tree.main.js.map +1 -1
  239. package/dist/Tree.mjs +83 -30
  240. package/dist/Tree.module.js +83 -30
  241. package/dist/Tree.module.js.map +1 -1
  242. package/dist/TreeDropTargetDelegate.main.js +8 -5
  243. package/dist/TreeDropTargetDelegate.main.js.map +1 -1
  244. package/dist/TreeDropTargetDelegate.mjs +8 -5
  245. package/dist/TreeDropTargetDelegate.module.js +8 -5
  246. package/dist/TreeDropTargetDelegate.module.js.map +1 -1
  247. package/dist/context.main.js +25 -0
  248. package/dist/context.main.js.map +1 -0
  249. package/dist/context.mjs +19 -0
  250. package/dist/context.module.js +19 -0
  251. package/dist/context.module.js.map +1 -0
  252. package/dist/import.mjs +6 -6
  253. package/dist/main.js +7 -4
  254. package/dist/main.js.map +1 -1
  255. package/dist/module.js +6 -6
  256. package/dist/module.js.map +1 -1
  257. package/dist/types.d.ts +358 -342
  258. package/dist/types.d.ts.map +1 -1
  259. package/dist/useDragAndDrop.main.js.map +1 -1
  260. package/dist/useDragAndDrop.module.js.map +1 -1
  261. package/dist/utils.main.js.map +1 -1
  262. package/dist/utils.module.js.map +1 -1
  263. package/i18n/de-DE.js +1 -1
  264. package/i18n/de-DE.mjs +1 -1
  265. package/package.json +27 -26
  266. package/src/Autocomplete.tsx +14 -25
  267. package/src/Breadcrumbs.tsx +16 -8
  268. package/src/Button.tsx +8 -30
  269. package/src/Calendar.tsx +41 -24
  270. package/src/Checkbox.tsx +8 -6
  271. package/src/Collection.tsx +2 -2
  272. package/src/ColorArea.tsx +5 -6
  273. package/src/ColorField.tsx +6 -4
  274. package/src/ColorSlider.tsx +3 -2
  275. package/src/ColorSwatch.tsx +6 -3
  276. package/src/ColorSwatchPicker.tsx +3 -3
  277. package/src/ColorThumb.tsx +3 -3
  278. package/src/ColorWheel.tsx +6 -5
  279. package/src/ComboBox.tsx +4 -4
  280. package/src/DateField.tsx +15 -10
  281. package/src/DatePicker.tsx +14 -12
  282. package/src/Dialog.tsx +6 -6
  283. package/src/Disclosure.tsx +10 -14
  284. package/src/DragAndDrop.tsx +31 -1
  285. package/src/DropZone.tsx +4 -5
  286. package/src/FieldError.tsx +3 -3
  287. package/src/FileTrigger.tsx +4 -3
  288. package/src/Form.tsx +2 -1
  289. package/src/GridList.tsx +112 -37
  290. package/src/Header.tsx +2 -2
  291. package/src/HiddenDateInput.tsx +142 -0
  292. package/src/Link.tsx +7 -3
  293. package/src/ListBox.tsx +40 -39
  294. package/src/Menu.tsx +52 -29
  295. package/src/Meter.tsx +6 -3
  296. package/src/Modal.tsx +16 -5
  297. package/src/NumberField.tsx +4 -4
  298. package/src/Popover.tsx +14 -14
  299. package/src/ProgressBar.tsx +6 -2
  300. package/src/RadioGroup.tsx +8 -6
  301. package/src/SearchField.tsx +8 -6
  302. package/src/Select.tsx +13 -16
  303. package/src/Separator.tsx +23 -6
  304. package/src/Slider.tsx +9 -11
  305. package/src/Switch.tsx +4 -3
  306. package/src/Table.tsx +119 -74
  307. package/src/Tabs.tsx +24 -17
  308. package/src/TagGroup.tsx +28 -18
  309. package/src/TextField.tsx +13 -9
  310. package/src/Toast.tsx +10 -8
  311. package/src/ToggleButton.tsx +8 -4
  312. package/src/ToggleButtonGroup.tsx +6 -4
  313. package/src/Toolbar.tsx +4 -5
  314. package/src/Tooltip.tsx +15 -18
  315. package/src/Tree.tsx +102 -46
  316. package/src/TreeDropTargetDelegate.ts +5 -1
  317. package/src/context.tsx +34 -0
  318. package/src/index.ts +9 -9
  319. package/src/useDragAndDrop.tsx +11 -11
  320. package/src/utils.tsx +9 -9
package/dist/types.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { AriaLabelingProps, RefObject, DOMProps as _DOMProps1, ValidationResult, HoverEvents as _HoverEvents1, InputDOMProps, CollectionBase, DropTargetDelegate, ItemDropTarget, Key, LayoutDelegate, DraggableCollectionProps, DroppableCollectionProps, LinkDOMProps, ValueBase, MultipleSelection, Node as _Node1, Orientation as _Orientation2, DisabledBehavior as _DisabledBehavior1, Expandable, SelectionMode as _SelectionMode1 } from "@react-types/shared";
2
- import React, { Context, CSSProperties, ForwardedRef, JSX, ReactNode, UIEvent, HTMLAttributes, LabelHTMLAttributes, InputHTMLAttributes, OutputHTMLAttributes, TextareaHTMLAttributes, ReactElement } from "react";
1
+ import { AriaLabelingProps, RefObject, DOMProps as _DOMProps1, GlobalDOMAttributes, ValidationResult, HoverEvents as _HoverEvents1, InputDOMProps, CollectionBase, DropTargetDelegate, ItemDropTarget, Key, LayoutDelegate, DraggableCollectionProps, DroppableCollectionProps, LinkDOMProps, PressEvents, ValueBase, MultipleSelection, Node as _Node1, Orientation as _Orientation2, DisabledBehavior as _DisabledBehavior1, Expandable, SelectionMode as _SelectionMode1 } from "@react-types/shared";
2
+ import React, { Context, CSSProperties, ForwardedRef, JSX, ReactNode, HTMLAttributes, LabelHTMLAttributes, InputHTMLAttributes, OutputHTMLAttributes, ReactElement, TextareaHTMLAttributes } from "react";
3
3
  import { FormProps as _FormProps1 } from "@react-types/form";
4
- import { AriaCheckboxGroupProps, AriaCheckboxProps, HoverEvents, AriaColorAreaProps, AriaColorFieldProps, AriaSliderProps, AriaSliderThumbProps, Orientation, AriaColorSliderProps, AriaColorWheelOptions, AriaProgressBarProps, AriaButtonProps, HoverProps, AriaSearchFieldProps, AriaTextFieldProps, AriaLinkOptions, AriaBreadcrumbsProps, AriaCalendarProps, AriaRangeCalendarProps, DateValue, AriaColorSwatchProps, DropIndicatorProps as _DropIndicatorProps1, DraggableCollectionOptions, DraggableItemProps, DraggableItemResult, DragItem, DragPreview, DropIndicatorAria, DroppableCollectionOptions, DroppableCollectionResult, DroppableItemOptions, DroppableItemResult, DropTarget, DropTargetDelegate as _DropTargetDelegate1, ListDropTargetDelegate, SeparatorProps as _SeparatorProps1, AriaListBoxProps, PlacementAxis, AriaPopoverProps, PositionProps, AriaMenuProps, AriaDialogProps, AriaComboBoxProps, AriaDateFieldProps, AriaTimeFieldProps, TimeValue, AriaDatePickerProps, AriaDateRangePickerProps, AriaDisclosureProps, DropOptions, AriaGridListProps, AriaMeterProps, AriaModalOverlayProps, AriaNumberFieldProps, AriaRadioGroupProps, AriaRadioProps, AriaSelectProps, AriaSwitchProps, AriaTabListProps, AriaTabPanelProps, AriaTagGroupProps, AriaToastProps, AriaToastRegionProps, AriaToggleButtonGroupProps, AriaToggleButtonProps, AriaPositionProps, Placement, AriaTreeItemOptions, AriaTreeProps } from "react-aria";
5
- import { CheckboxGroupState, Color, ColorAreaState, ColorChannel, ColorFieldState, ColorSpace, SliderState, ColorSliderState, ColorWheelState, SearchFieldState, Collection, Node, SelectionBehavior, SelectionMode, SectionProps as _SectionProps1, CalendarState, RangeCalendarState, DraggableCollectionState, DraggableCollectionStateOptions, DroppableCollectionState, DroppableCollectionStateOptions, ListState, Orientation as _Orientation1, ColorPickerState, ColorPickerProps as _ColorPickerProps1, OverlayTriggerProps, MenuTriggerProps as _MenuTriggerProps1, RootMenuTriggerState, TreeState, OverlayTriggerState, ComboBoxState, DateFieldState, DateSegmentType, DateSegment as _DateSegment1, TimeFieldState, DatePickerState, DatePickerStateOptions, DateRangePickerState, DateRangePickerStateOptions, DisclosureGroupState, DisclosureState, DisclosureGroupProps as _DisclosureGroupProps1, NumberFieldState, RadioGroupState, SelectState, ToggleState, DisabledBehavior, SortDirection, TableState, TabListState, QueuedToast, ToastQueue, ToastState, ToggleGroupState, TooltipTriggerProps, TooltipTriggerState } from "react-stately";
4
+ import { AriaCheckboxGroupProps, AriaCheckboxProps, HoverEvents, AriaColorAreaProps, HoverProps, AriaColorFieldProps, AriaSliderProps, AriaSliderThumbProps, Orientation, AriaColorSliderProps, AriaColorWheelOptions, AriaLinkOptions, AriaBreadcrumbsProps, AriaProgressBarProps, AriaButtonProps, AriaCalendarProps, AriaRangeCalendarProps, DateValue, AriaColorSwatchProps, DropIndicatorProps as _DropIndicatorProps1, DraggableCollectionOptions, DraggableItemProps, DraggableItemResult, DragItem, DragPreview, DropIndicatorAria, DroppableCollectionOptions, DroppableCollectionResult, DroppableItemOptions, DroppableItemResult, DropTarget, DropTargetDelegate as _DropTargetDelegate1, ListDropTargetDelegate, SeparatorProps as _SeparatorProps1, AriaListBoxProps, PlacementAxis, AriaPopoverProps, PositionProps, AriaMenuProps, AriaDialogProps, AriaComboBoxProps, AriaDateFieldProps, AriaTimeFieldProps, TimeValue, AriaDatePickerProps, AriaDateRangePickerProps, AriaDisclosureProps, DropOptions, AriaGridListProps, AriaMeterProps, AriaModalOverlayProps, AriaNumberFieldProps, AriaRadioGroupProps, AriaRadioProps, AriaSearchFieldProps, AriaSelectProps, AriaSwitchProps, AriaTabListProps, AriaTabPanelProps, AriaTagGroupProps, AriaTextFieldProps, AriaToastProps, AriaToastRegionProps, AriaToggleButtonGroupProps, AriaToggleButtonProps, AriaPositionProps, Placement, AriaTreeItemOptions, AriaTreeProps } from "react-aria";
5
+ import { CheckboxGroupState, Color, ColorAreaState, ColorChannel, ColorFieldState, ColorSpace, SliderState, ColorSliderState, ColorWheelState, Collection, Node, SelectionBehavior, SelectionMode, SectionProps as _SectionProps1, CalendarState, RangeCalendarState, DraggableCollectionState, DraggableCollectionStateOptions, DroppableCollectionState, DroppableCollectionStateOptions, ListState, Orientation as _Orientation1, ColorPickerState, ColorPickerProps as _ColorPickerProps1, OverlayTriggerProps, MenuTriggerProps as _MenuTriggerProps1, RootMenuTriggerState, TreeState, OverlayTriggerState, ComboBoxState, DateFieldState, DateSegmentType, DateSegment as _DateSegment1, TimeFieldState, DatePickerState, DatePickerStateOptions, DateRangePickerState, DateRangePickerStateOptions, DisclosureGroupState, DisclosureState, DisclosureGroupProps as _DisclosureGroupProps1, NumberFieldState, RadioGroupState, SearchFieldState, SelectState, ToggleState, DisabledBehavior, SortDirection, TableState, TabListState, QueuedToast, ToastQueue, ToastState, ToggleGroupState, TooltipTriggerProps, TooltipTriggerState } from "react-stately";
6
6
  import { AriaAutocompleteProps } from "@react-aria/autocomplete";
7
7
  import { AutocompleteState } from "@react-stately/autocomplete";
8
8
  import { CalendarDate, CalendarIdentifier, DateDuration, Calendar as _Calendar1 } from "@internationalized/date";
@@ -35,25 +35,24 @@ interface DOMProps extends StyleProps, _DOMProps1 {
35
35
  /** The children of the component. */
36
36
  children?: ReactNode;
37
37
  }
38
- interface ScrollableProps<T extends Element> {
39
- /** Handler that is called when a user scrolls. See [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Element/scroll_event). */
40
- onScroll?: (e: UIEvent<T>) => void;
41
- }
38
+ type ClassNameOrFunction<T> = string | ((values: T & {
39
+ defaultClassName: string | undefined;
40
+ }) => string);
41
+ type StyleOrFunction<T> = CSSProperties | ((values: T & {
42
+ defaultStyle: CSSProperties;
43
+ }) => CSSProperties | undefined);
42
44
  export interface StyleRenderProps<T> {
43
45
  /** The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the element. A function may be provided to compute the class based on component state. */
44
- className?: string | ((values: T & {
45
- defaultClassName: string | undefined;
46
- }) => string);
46
+ className?: ClassNameOrFunction<T>;
47
47
  /** The inline [style](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/style) for the element. A function may be provided to compute the style based on component state. */
48
- style?: CSSProperties | ((values: T & {
49
- defaultStyle: CSSProperties;
50
- }) => CSSProperties | undefined);
48
+ style?: StyleOrFunction<T>;
51
49
  }
50
+ type ChildrenOrFunction<T> = ReactNode | ((values: T & {
51
+ defaultChildren: ReactNode | undefined;
52
+ }) => ReactNode);
52
53
  export interface RenderProps<T> extends StyleRenderProps<T> {
53
54
  /** The children of the component. A function may be provided to alter the children based on component state. */
54
- children?: ReactNode | ((values: T & {
55
- defaultChildren: ReactNode | undefined;
56
- }) => ReactNode);
55
+ children?: ChildrenOrFunction<T>;
57
56
  }
58
57
  interface RenderPropsHookOptions<T> extends RenderProps<T>, _DOMProps1, AriaLabelingProps {
59
58
  values: T;
@@ -84,7 +83,7 @@ export interface SlotProps {
84
83
  slot?: string | null;
85
84
  }
86
85
  export function useSlottedContext<T>(context: Context<SlottedContextValue<T>>, slot?: string | null): T | null | undefined;
87
- export function useContextProps<T, U extends SlotProps, E extends Element>(props: T & SlotProps, ref: ForwardedRef<E>, context: Context<ContextValue<U, E>>): [T, RefObject<E | null>];
86
+ export function useContextProps<T, U extends SlotProps, E extends Element>(props: T & SlotProps, ref: ForwardedRef<E> | undefined, context: Context<ContextValue<U, E>>): [T, RefObject<E | null>];
88
87
  interface RACValidation {
89
88
  /**
90
89
  * Whether to use native HTML form validation to prevent form submission
@@ -102,13 +101,13 @@ export const Text: React.ForwardRefExoticComponent<TextProps & React.RefAttribut
102
101
  export const FieldErrorContext: React.Context<ValidationResult | null>;
103
102
  export interface FieldErrorRenderProps extends ValidationResult {
104
103
  }
105
- export interface FieldErrorProps extends RenderProps<FieldErrorRenderProps>, _DOMProps1 {
104
+ export interface FieldErrorProps extends RenderProps<FieldErrorRenderProps>, _DOMProps1, GlobalDOMAttributes<HTMLDivElement> {
106
105
  }
107
106
  /**
108
107
  * A FieldError displays validation errors for a form field.
109
108
  */
110
109
  export const FieldError: React.ForwardRefExoticComponent<FieldErrorProps & React.RefAttributes<HTMLElement>>;
111
- export interface FormProps extends _FormProps1, DOMProps {
110
+ export interface FormProps extends _FormProps1, DOMProps, GlobalDOMAttributes<HTMLFormElement> {
112
111
  /**
113
112
  * Whether to use native HTML form validation to prevent form submission
114
113
  * when a field value is missing or invalid, or mark fields as required
@@ -128,9 +127,9 @@ export interface LabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
128
127
  }
129
128
  export const LabelContext: React.Context<ContextValue<LabelProps, HTMLLabelElement>>;
130
129
  export const Label: (props: LabelProps & React.RefAttributes<HTMLLabelElement>) => React.ReactElement | null;
131
- export interface CheckboxGroupProps extends Omit<AriaCheckboxGroupProps, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<CheckboxGroupRenderProps>, SlotProps {
130
+ export interface CheckboxGroupProps extends Omit<AriaCheckboxGroupProps, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<CheckboxGroupRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
132
131
  }
133
- export interface CheckboxProps extends Omit<AriaCheckboxProps, 'children' | 'validationState' | 'validationBehavior'>, HoverEvents, RACValidation, RenderProps<CheckboxRenderProps>, SlotProps {
132
+ export interface CheckboxProps extends Omit<AriaCheckboxProps, 'children' | 'validationState' | 'validationBehavior'>, HoverEvents, RACValidation, RenderProps<CheckboxRenderProps>, SlotProps, Omit<GlobalDOMAttributes<HTMLLabelElement>, 'onClick'> {
134
133
  /**
135
134
  * A ref for the HTML input element.
136
135
  */
@@ -256,7 +255,7 @@ export interface ColorThumbRenderProps {
256
255
  */
257
256
  isDisabled: boolean;
258
257
  }
259
- export interface ColorThumbProps extends _HoverEvents1, RenderProps<ColorThumbRenderProps> {
258
+ export interface ColorThumbProps extends _HoverEvents1, RenderProps<ColorThumbRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
260
259
  }
261
260
  /**
262
261
  * A color thumb appears within a ColorArea, ColorSlider, or ColorWheel and allows a user to drag to adjust the color value.
@@ -273,13 +272,59 @@ export interface ColorAreaRenderProps {
273
272
  */
274
273
  state: ColorAreaState;
275
274
  }
276
- export interface ColorAreaProps extends AriaColorAreaProps, RenderProps<ColorAreaRenderProps>, SlotProps {
275
+ export interface ColorAreaProps extends AriaColorAreaProps, RenderProps<ColorAreaRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
277
276
  }
278
277
  export const ColorAreaStateContext: React.Context<ColorAreaState | null>;
279
278
  /**
280
279
  * A color area allows users to adjust two channels of an RGB, HSL or HSB color value against a two-dimensional gradient background.
281
280
  */
282
281
  export const ColorArea: React.ForwardRefExoticComponent<ColorAreaProps & React.RefAttributes<HTMLDivElement>>;
282
+ export interface GroupRenderProps {
283
+ /**
284
+ * Whether the group is currently hovered with a mouse.
285
+ * @selector [data-hovered]
286
+ */
287
+ isHovered: boolean;
288
+ /**
289
+ * Whether an element within the group is focused, either via a mouse or keyboard.
290
+ * @selector [data-focus-within]
291
+ */
292
+ isFocusWithin: boolean;
293
+ /**
294
+ * Whether an element within the group is keyboard focused.
295
+ * @selector [data-focus-visible]
296
+ */
297
+ isFocusVisible: boolean;
298
+ /**
299
+ * Whether the group is disabled.
300
+ * @selector [data-disabled]
301
+ */
302
+ isDisabled: boolean;
303
+ /**
304
+ * Whether the group is invalid.
305
+ * @selector [data-invalid]
306
+ */
307
+ isInvalid: boolean;
308
+ }
309
+ export interface GroupProps extends AriaLabelingProps, Omit<HTMLAttributes<HTMLElement>, 'children' | 'className' | 'style' | 'role' | 'slot'>, _DOMProps1, HoverProps, RenderProps<GroupRenderProps>, SlotProps {
310
+ /** Whether the group is disabled. */
311
+ isDisabled?: boolean;
312
+ /** Whether the group is invalid. */
313
+ isInvalid?: boolean;
314
+ /**
315
+ * An accessibility role for the group. By default, this is set to `'group'`.
316
+ * Use `'region'` when the contents of the group is important enough to be
317
+ * included in the page table of contents. Use `'presentation'` if the group
318
+ * is visual only and does not represent a semantic grouping of controls.
319
+ * @default 'group'
320
+ */
321
+ role?: 'group' | 'region' | 'presentation';
322
+ }
323
+ export const GroupContext: React.Context<ContextValue<GroupProps, HTMLDivElement>>;
324
+ /**
325
+ * A group represents a set of related UI controls, and supports interactive states for styling.
326
+ */
327
+ export const Group: (props: GroupProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
283
328
  export interface InputRenderProps {
284
329
  /**
285
330
  * Whether the input is currently hovered with a mouse.
@@ -335,7 +380,7 @@ export interface ColorFieldRenderProps {
335
380
  */
336
381
  state: ColorFieldState;
337
382
  }
338
- export interface ColorFieldProps extends Omit<AriaColorFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, InputDOMProps, RenderProps<ColorFieldRenderProps>, SlotProps {
383
+ export interface ColorFieldProps extends Omit<AriaColorFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, InputDOMProps, RenderProps<ColorFieldRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
339
384
  /**
340
385
  * The color channel that this field edits. If not provided,
341
386
  * the color is edited as a hex value.
@@ -352,7 +397,7 @@ export const ColorFieldStateContext: React.Context<ColorFieldState | null>;
352
397
  * A color field allows users to edit a hex color or individual color channel value.
353
398
  */
354
399
  export const ColorField: React.ForwardRefExoticComponent<ColorFieldProps & React.RefAttributes<HTMLDivElement>>;
355
- export interface SliderProps<T = number | number[]> extends Omit<AriaSliderProps<T>, 'label'>, RenderProps<SliderRenderProps>, SlotProps {
400
+ export interface SliderProps<T = number | number[]> extends Omit<AriaSliderProps<T>, 'label'>, RenderProps<SliderRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
356
401
  /**
357
402
  * The display format of the value label.
358
403
  */
@@ -382,7 +427,7 @@ export interface SliderRenderProps {
382
427
  * A slider allows a user to select one or more values within a range.
383
428
  */
384
429
  export const Slider: <T extends number | number[]>(props: SliderProps<T> & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
385
- export interface SliderOutputProps extends RenderProps<SliderRenderProps> {
430
+ export interface SliderOutputProps extends RenderProps<SliderRenderProps>, GlobalDOMAttributes<HTMLOutputElement> {
386
431
  }
387
432
  interface SliderOutputContextValue extends Omit<OutputHTMLAttributes<HTMLOutputElement>, 'children' | 'className' | 'style'>, SliderOutputProps {
388
433
  }
@@ -397,9 +442,9 @@ export interface SliderTrackRenderProps extends SliderRenderProps {
397
442
  */
398
443
  isHovered: boolean;
399
444
  }
400
- export interface SliderTrackProps extends HoverEvents, RenderProps<SliderTrackRenderProps> {
445
+ export interface SliderTrackProps extends HoverEvents, RenderProps<SliderTrackRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
401
446
  }
402
- interface SliderTrackContextValue extends Omit<HTMLAttributes<HTMLElement>, 'children' | 'className' | 'style'>, SliderTrackProps {
447
+ interface SliderTrackContextValue extends Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'className' | 'style'>, SliderTrackProps {
403
448
  }
404
449
  /**
405
450
  * A slider track is a container for one or more slider thumbs.
@@ -436,7 +481,7 @@ export interface SliderThumbRenderProps {
436
481
  */
437
482
  isDisabled: boolean;
438
483
  }
439
- export interface SliderThumbProps extends Omit<AriaSliderThumbProps, 'label' | 'validationState'>, HoverEvents, RenderProps<SliderThumbRenderProps> {
484
+ export interface SliderThumbProps extends Omit<AriaSliderThumbProps, 'label' | 'validationState'>, HoverEvents, RenderProps<SliderThumbRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
440
485
  /**
441
486
  * A ref for the HTML input element.
442
487
  */
@@ -462,7 +507,7 @@ export interface ColorSliderRenderProps {
462
507
  */
463
508
  state: ColorSliderState;
464
509
  }
465
- export interface ColorSliderProps extends Omit<AriaColorSliderProps, 'label'>, RenderProps<ColorSliderRenderProps>, SlotProps {
510
+ export interface ColorSliderProps extends Omit<AriaColorSliderProps, 'label'>, RenderProps<ColorSliderRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
466
511
  }
467
512
  export const ColorSliderStateContext: React.Context<ColorSliderState | null>;
468
513
  /**
@@ -476,11 +521,11 @@ export interface ColorWheelRenderProps {
476
521
  */
477
522
  isDisabled: boolean;
478
523
  /**
479
- * State of the color color wheel.
524
+ * State of the color wheel.
480
525
  */
481
526
  state: ColorWheelState;
482
527
  }
483
- export interface ColorWheelProps extends AriaColorWheelOptions, RenderProps<ColorWheelRenderProps>, SlotProps {
528
+ export interface ColorWheelProps extends AriaColorWheelOptions, RenderProps<ColorWheelRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
484
529
  }
485
530
  export const ColorWheelStateContext: React.Context<ColorWheelState | null>;
486
531
  /**
@@ -489,9 +534,9 @@ export const ColorWheelStateContext: React.Context<ColorWheelState | null>;
489
534
  export const ColorWheel: React.ForwardRefExoticComponent<ColorWheelProps & React.RefAttributes<HTMLDivElement>>;
490
535
  export interface ColorWheelTrackRenderProps extends ColorWheelRenderProps {
491
536
  }
492
- export interface ColorWheelTrackProps extends StyleRenderProps<ColorWheelTrackRenderProps> {
537
+ export interface ColorWheelTrackProps extends StyleRenderProps<ColorWheelTrackRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
493
538
  }
494
- interface ColorWheelTrackContextValue extends Omit<HTMLAttributes<HTMLElement>, 'children' | 'className' | 'style'>, ColorWheelTrackProps {
539
+ interface ColorWheelTrackContextValue extends Omit<HTMLAttributes<HTMLElement>, 'children' | 'className' | 'style'>, StyleRenderProps<ColorWheelTrackRenderProps> {
495
540
  }
496
541
  export const ColorWheelTrackContext: React.Context<ContextValue<ColorWheelTrackContextValue, HTMLDivElement>>;
497
542
  /**
@@ -508,219 +553,14 @@ export const ColorFieldContext: Context<ContextValue<ColorFieldProps, HTMLDivEle
508
553
  export const ColorSliderContext: Context<ContextValue<Partial<ColorSliderProps>, HTMLDivElement>>;
509
554
  export const ColorWheelContext: Context<ContextValue<Partial<ColorWheelProps>, HTMLDivElement>>;
510
555
  export const HeadingContext: Context<ContextValue<HeadingProps, HTMLHeadingElement>>;
511
- export interface ProgressBarProps extends Omit<AriaProgressBarProps, 'label'>, RenderProps<ProgressBarRenderProps>, SlotProps {
556
+ export interface AutocompleteProps<T = object> extends AriaAutocompleteProps<T>, SlotProps {
512
557
  }
513
- export interface ProgressBarRenderProps {
514
- /**
515
- * The value as a percentage between the minimum and maximum.
516
- */
517
- percentage?: number;
518
- /**
519
- * A formatted version of the value.
520
- * @selector [aria-valuetext]
521
- */
522
- valueText: string | undefined;
523
- /**
524
- * Whether the progress bar is indeterminate.
525
- * @selector :not([aria-valuenow])
526
- */
527
- isIndeterminate: boolean;
528
- }
529
- export const ProgressBarContext: React.Context<ContextValue<ProgressBarProps, HTMLDivElement>>;
530
- /**
531
- * Progress bars show either determinate or indeterminate progress of an operation
532
- * over time.
533
- */
534
- export const ProgressBar: React.ForwardRefExoticComponent<ProgressBarProps & React.RefAttributes<HTMLDivElement>>;
535
- export interface ButtonRenderProps {
536
- /**
537
- * Whether the button is currently hovered with a mouse.
538
- * @selector [data-hovered]
539
- */
540
- isHovered: boolean;
541
- /**
542
- * Whether the button is currently in a pressed state.
543
- * @selector [data-pressed]
544
- */
545
- isPressed: boolean;
546
- /**
547
- * Whether the button is focused, either via a mouse or keyboard.
548
- * @selector [data-focused]
549
- */
550
- isFocused: boolean;
551
- /**
552
- * Whether the button is keyboard focused.
553
- * @selector [data-focus-visible]
554
- */
555
- isFocusVisible: boolean;
556
- /**
557
- * Whether the button is disabled.
558
- * @selector [data-disabled]
559
- */
560
- isDisabled: boolean;
561
- /**
562
- * Whether the button is currently in a pending state.
563
- * @selector [data-pending]
564
- */
565
- isPending: boolean;
566
- }
567
- export interface ButtonProps extends Omit<AriaButtonProps, 'children' | 'href' | 'target' | 'rel' | 'elementType'>, HoverEvents, SlotProps, RenderProps<ButtonRenderProps> {
568
- /**
569
- * The `<form>` element to associate the button with.
570
- * The value of this attribute must be the id of a `<form>` in the same document.
571
- */
572
- form?: string;
573
- /**
574
- * The URL that processes the information submitted by the button.
575
- * Overrides the action attribute of the button's form owner.
576
- */
577
- formAction?: string;
578
- /** Indicates how to encode the form data that is submitted. */
579
- formEncType?: string;
580
- /** Indicates the HTTP method used to submit the form. */
581
- formMethod?: string;
582
- /** Indicates that the form is not to be validated when it is submitted. */
583
- formNoValidate?: boolean;
584
- /** Overrides the target attribute of the button's form owner. */
585
- formTarget?: string;
586
- /** Submitted as a pair with the button's value as part of the form data. */
587
- name?: string;
588
- /** The value associated with the button's name when it's submitted with the form data. */
589
- value?: string;
590
- /**
591
- * Whether the button is in a pending state. This disables press and hover events
592
- * while retaining focusability, and announces the pending state to screen readers.
593
- */
594
- isPending?: boolean;
595
- }
596
- interface ButtonContextValue extends ButtonProps {
597
- isPressed?: boolean;
598
- }
599
- export const ButtonContext: React.Context<ContextValue<ButtonContextValue, HTMLButtonElement>>;
600
- /**
601
- * A button allows a user to perform an action, with mouse, touch, and keyboard interactions.
602
- */
603
- export const Button: (props: ButtonProps & React.RefAttributes<HTMLButtonElement>) => React.ReactElement | null;
604
- export interface GroupRenderProps {
605
- /**
606
- * Whether the group is currently hovered with a mouse.
607
- * @selector [data-hovered]
608
- */
609
- isHovered: boolean;
610
- /**
611
- * Whether an element within the group is focused, either via a mouse or keyboard.
612
- * @selector [data-focus-within]
613
- */
614
- isFocusWithin: boolean;
615
- /**
616
- * Whether an element within the group is keyboard focused.
617
- * @selector [data-focus-visible]
618
- */
619
- isFocusVisible: boolean;
620
- /**
621
- * Whether the group is disabled.
622
- * @selector [data-disabled]
623
- */
624
- isDisabled: boolean;
625
- /**
626
- * Whether the group is invalid.
627
- * @selector [data-invalid]
628
- */
629
- isInvalid: boolean;
630
- }
631
- export interface GroupProps extends AriaLabelingProps, Omit<HTMLAttributes<HTMLElement>, 'children' | 'className' | 'style' | 'role' | 'slot'>, _DOMProps1, HoverProps, RenderProps<GroupRenderProps>, SlotProps {
632
- /** Whether the group is disabled. */
633
- isDisabled?: boolean;
634
- /** Whether the group is invalid. */
635
- isInvalid?: boolean;
636
- /**
637
- * An accessibility role for the group. By default, this is set to `'group'`.
638
- * Use `'region'` when the contents of the group is important enough to be
639
- * included in the page table of contents. Use `'presentation'` if the group
640
- * is visual only and does not represent a semantic grouping of controls.
641
- * @default 'group'
642
- */
643
- role?: 'group' | 'region' | 'presentation';
644
- }
645
- export const GroupContext: React.Context<ContextValue<GroupProps, HTMLDivElement>>;
646
- /**
647
- * A group represents a set of related UI controls, and supports interactive states for styling.
648
- */
649
- export const Group: (props: GroupProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
650
- export interface SearchFieldRenderProps {
651
- /**
652
- * Whether the search field is empty.
653
- * @selector [data-empty]
654
- */
655
- isEmpty: boolean;
656
- /**
657
- * Whether the search field is disabled.
658
- * @selector [data-disabled]
659
- */
660
- isDisabled: boolean;
661
- /**
662
- * Whether the search field is invalid.
663
- * @selector [data-invalid]
664
- */
665
- isInvalid: boolean;
666
- /**
667
- * State of the search field.
668
- */
669
- state: SearchFieldState;
670
- }
671
- export interface SearchFieldProps extends Omit<AriaSearchFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<SearchFieldRenderProps>, SlotProps {
672
- }
673
- export const SearchFieldContext: React.Context<ContextValue<SearchFieldProps, HTMLDivElement>>;
674
- /**
675
- * A search field allows a user to enter and clear a search query.
676
- */
677
- export const SearchField: (props: SearchFieldProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
678
- export interface TextAreaProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'className' | 'style'>, HoverEvents, StyleRenderProps<InputRenderProps> {
679
- }
680
- export const TextAreaContext: React.Context<ContextValue<TextAreaProps, HTMLTextAreaElement>>;
681
- /**
682
- * A textarea allows a user to input mult-line text.
683
- */
684
- export const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<HTMLTextAreaElement>>;
685
- export interface TextFieldRenderProps {
686
- /**
687
- * Whether the text field is disabled.
688
- * @selector [data-disabled]
689
- */
690
- isDisabled: boolean;
691
- /**
692
- * Whether the value is invalid.
693
- * @selector [data-invalid]
694
- */
695
- isInvalid: boolean;
696
- /**
697
- * Whether the text field is read only.
698
- * @selector [data-readonly]
699
- */
700
- isReadOnly: boolean;
701
- /**
702
- * Whether the text field is required.
703
- * @selector [data-required]
704
- */
705
- isRequired: boolean;
706
- }
707
- export interface TextFieldProps extends Omit<AriaTextFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, Omit<DOMProps, 'style' | 'className' | 'children'>, SlotProps, RenderProps<TextFieldRenderProps> {
708
- /** Whether the value is invalid. */
709
- isInvalid?: boolean;
710
- }
711
- export const TextFieldContext: React.Context<ContextValue<TextFieldProps, HTMLDivElement>>;
712
- /**
713
- * A text field allows a user to enter a plain text value with a keyboard.
714
- */
715
- export const TextField: (props: TextFieldProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
716
- export interface AutocompleteProps extends AriaAutocompleteProps, SlotProps {
717
- }
718
- export const AutocompleteContext: React.Context<SlottedContextValue<Partial<AutocompleteProps>>>;
558
+ export const AutocompleteContext: React.Context<SlottedContextValue<Partial<AutocompleteProps<any>>>>;
719
559
  export const AutocompleteStateContext: React.Context<AutocompleteState | null>;
720
560
  /**
721
561
  * An autocomplete combines a TextField or SearchField with a Menu or ListBox, allowing users to search or filter a list of suggestions.
722
562
  */
723
- export function Autocomplete(props: AutocompleteProps): JSX.Element;
563
+ export function Autocomplete<T extends object>(props: AutocompleteProps<T>): JSX.Element;
724
564
  interface CollectionProps<T> extends Omit<CollectionBase<T>, 'children'> {
725
565
  /** The contents of the collection. */
726
566
  children?: ReactNode | ((item: T) => ReactNode);
@@ -785,7 +625,7 @@ interface ItemRenderProps {
785
625
  */
786
626
  isDropTarget?: boolean;
787
627
  }
788
- export interface SectionProps<T> extends Omit<_SectionProps1<T>, 'children' | 'title'>, StyleProps {
628
+ export interface SectionProps<T> extends Omit<_SectionProps1<T>, 'children' | 'title'>, StyleProps, GlobalDOMAttributes<HTMLElement> {
789
629
  /** The unique id of the section. */
790
630
  id?: Key;
791
631
  /** The object value that this section represents. When using dynamic collections, this is set automatically. */
@@ -829,7 +669,7 @@ export interface CollectionRenderer {
829
669
  }
830
670
  export const DefaultCollectionRenderer: CollectionRenderer;
831
671
  export const CollectionRendererContext: React.Context<CollectionRenderer>;
832
- export interface LinkProps extends Omit<AriaLinkOptions, 'elementType'>, HoverEvents, RenderProps<LinkRenderProps>, SlotProps {
672
+ export interface LinkProps extends Omit<AriaLinkOptions, 'elementType'>, HoverEvents, RenderProps<LinkRenderProps>, SlotProps, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
833
673
  }
834
674
  export interface LinkRenderProps {
835
675
  /**
@@ -869,7 +709,7 @@ export const LinkContext: React.Context<ContextValue<LinkProps, HTMLAnchorElemen
869
709
  * or application.
870
710
  */
871
711
  export const Link: (props: LinkProps & React.RefAttributes<HTMLAnchorElement>) => React.ReactElement | null;
872
- export interface BreadcrumbsProps<T> extends Omit<CollectionProps<T>, 'disabledKeys'>, AriaBreadcrumbsProps, StyleProps, SlotProps {
712
+ export interface BreadcrumbsProps<T> extends Omit<CollectionProps<T>, 'disabledKeys'>, AriaBreadcrumbsProps, StyleProps, SlotProps, GlobalDOMAttributes<HTMLOListElement> {
873
713
  /** Whether the breadcrumbs are disabled. */
874
714
  isDisabled?: boolean;
875
715
  /** Handler that is called when a breadcrumb is clicked. */
@@ -892,7 +732,7 @@ export interface BreadcrumbRenderProps {
892
732
  */
893
733
  isDisabled: boolean;
894
734
  }
895
- export interface BreadcrumbProps extends RenderProps<BreadcrumbRenderProps> {
735
+ export interface BreadcrumbProps extends RenderProps<BreadcrumbRenderProps>, GlobalDOMAttributes<HTMLLIElement> {
896
736
  /** A unique id for the breadcrumb, which will be passed to `onAction` when the breadcrumb is pressed. */
897
737
  id?: Key;
898
738
  }
@@ -900,6 +740,77 @@ export interface BreadcrumbProps extends RenderProps<BreadcrumbRenderProps> {
900
740
  * A Breadcrumb represents an individual item in a `<Breadcrumbs>` list.
901
741
  */
902
742
  export const Breadcrumb: (props: BreadcrumbProps & React.RefAttributes<object>) => React.ReactElement | null;
743
+ export interface ProgressBarProps extends Omit<AriaProgressBarProps, 'label'>, RenderProps<ProgressBarRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
744
+ }
745
+ export interface ProgressBarRenderProps {
746
+ /**
747
+ * The value as a percentage between the minimum and maximum.
748
+ */
749
+ percentage?: number;
750
+ /**
751
+ * A formatted version of the value.
752
+ * @selector [aria-valuetext]
753
+ */
754
+ valueText: string | undefined;
755
+ /**
756
+ * Whether the progress bar is indeterminate.
757
+ * @selector :not([aria-valuenow])
758
+ */
759
+ isIndeterminate: boolean;
760
+ }
761
+ export const ProgressBarContext: React.Context<ContextValue<ProgressBarProps, HTMLDivElement>>;
762
+ /**
763
+ * Progress bars show either determinate or indeterminate progress of an operation
764
+ * over time.
765
+ */
766
+ export const ProgressBar: React.ForwardRefExoticComponent<ProgressBarProps & React.RefAttributes<HTMLDivElement>>;
767
+ export interface ButtonRenderProps {
768
+ /**
769
+ * Whether the button is currently hovered with a mouse.
770
+ * @selector [data-hovered]
771
+ */
772
+ isHovered: boolean;
773
+ /**
774
+ * Whether the button is currently in a pressed state.
775
+ * @selector [data-pressed]
776
+ */
777
+ isPressed: boolean;
778
+ /**
779
+ * Whether the button is focused, either via a mouse or keyboard.
780
+ * @selector [data-focused]
781
+ */
782
+ isFocused: boolean;
783
+ /**
784
+ * Whether the button is keyboard focused.
785
+ * @selector [data-focus-visible]
786
+ */
787
+ isFocusVisible: boolean;
788
+ /**
789
+ * Whether the button is disabled.
790
+ * @selector [data-disabled]
791
+ */
792
+ isDisabled: boolean;
793
+ /**
794
+ * Whether the button is currently in a pending state.
795
+ * @selector [data-pending]
796
+ */
797
+ isPending: boolean;
798
+ }
799
+ export interface ButtonProps extends Omit<AriaButtonProps, 'children' | 'href' | 'target' | 'rel' | 'elementType'>, HoverEvents, SlotProps, RenderProps<ButtonRenderProps>, Omit<GlobalDOMAttributes<HTMLButtonElement>, 'onClick'> {
800
+ /**
801
+ * Whether the button is in a pending state. This disables press and hover events
802
+ * while retaining focusability, and announces the pending state to screen readers.
803
+ */
804
+ isPending?: boolean;
805
+ }
806
+ interface ButtonContextValue extends ButtonProps {
807
+ isPressed?: boolean;
808
+ }
809
+ export const ButtonContext: React.Context<ContextValue<ButtonContextValue, HTMLButtonElement>>;
810
+ /**
811
+ * A button allows a user to perform an action, with mouse, touch, and keyboard interactions.
812
+ */
813
+ export const Button: (props: ButtonProps & React.RefAttributes<HTMLButtonElement>) => React.ReactElement | null;
903
814
  export interface CalendarRenderProps {
904
815
  /**
905
816
  * Whether the calendar is disabled.
@@ -922,7 +833,7 @@ export interface RangeCalendarRenderProps extends Omit<CalendarRenderProps, 'sta
922
833
  */
923
834
  state: RangeCalendarState;
924
835
  }
925
- export interface CalendarProps<T extends DateValue> extends Omit<AriaCalendarProps<T>, 'errorMessage' | 'validationState'>, RenderProps<CalendarRenderProps>, SlotProps {
836
+ export interface CalendarProps<T extends DateValue> extends Omit<AriaCalendarProps<T>, 'errorMessage' | 'validationState'>, RenderProps<CalendarRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
926
837
  /**
927
838
  * The amount of days that will be displayed at once. This affects how pagination works.
928
839
  * @default {months: 1}
@@ -935,7 +846,7 @@ export interface CalendarProps<T extends DateValue> extends Omit<AriaCalendarPro
935
846
  */
936
847
  createCalendar?: (identifier: CalendarIdentifier) => _Calendar1;
937
848
  }
938
- export interface RangeCalendarProps<T extends DateValue> extends Omit<AriaRangeCalendarProps<T>, 'errorMessage' | 'validationState'>, RenderProps<RangeCalendarRenderProps>, SlotProps {
849
+ export interface RangeCalendarProps<T extends DateValue> extends Omit<AriaRangeCalendarProps<T>, 'errorMessage' | 'validationState'>, RenderProps<RangeCalendarRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
939
850
  /**
940
851
  * The amount of days that will be displayed at once. This affects how pagination works.
941
852
  * @default {months: 1}
@@ -1034,8 +945,13 @@ export interface CalendarCellRenderProps {
1034
945
  * @selector [data-invalid]
1035
946
  */
1036
947
  isInvalid: boolean;
948
+ /**
949
+ * Whether the cell is today.
950
+ * @selector [data-today]
951
+ */
952
+ isToday: boolean;
1037
953
  }
1038
- export interface CalendarGridProps extends StyleProps {
954
+ export interface CalendarGridProps extends StyleProps, GlobalDOMAttributes<HTMLTableElement> {
1039
955
  /**
1040
956
  * Either a function to render calendar cells for each date in the month,
1041
957
  * or children containing a `<CalendarGridHeader>`` and `<CalendarGridBody>`
@@ -1060,7 +976,7 @@ export interface CalendarGridProps extends StyleProps {
1060
976
  * can be keyboard navigated and selected by the user.
1061
977
  */
1062
978
  export const CalendarGrid: (props: CalendarGridProps & React.RefAttributes<HTMLTableElement>) => ReactElement | null;
1063
- export interface CalendarGridHeaderProps extends StyleProps {
979
+ export interface CalendarGridHeaderProps extends StyleProps, GlobalDOMAttributes<HTMLTableSectionElement> {
1064
980
  /** A function to render a `<CalendarHeaderCell>` for a weekday name. */
1065
981
  children: (day: string) => ReactElement;
1066
982
  }
@@ -1068,13 +984,13 @@ export interface CalendarGridHeaderProps extends StyleProps {
1068
984
  * A calendar grid header displays a row of week day names at the top of a month.
1069
985
  */
1070
986
  export const CalendarGridHeader: (props: CalendarGridHeaderProps & React.RefAttributes<HTMLTableSectionElement>) => ReactElement | null;
1071
- export interface CalendarHeaderCellProps extends DOMProps {
987
+ export interface CalendarHeaderCellProps extends DOMProps, GlobalDOMAttributes<HTMLTableHeaderCellElement> {
1072
988
  }
1073
989
  /**
1074
990
  * A calendar header cell displays a week day name at the top of a column within a calendar.
1075
991
  */
1076
992
  export const CalendarHeaderCell: React.ForwardRefExoticComponent<CalendarHeaderCellProps & React.RefAttributes<HTMLTableCellElement>>;
1077
- export interface CalendarGridBodyProps extends StyleProps {
993
+ export interface CalendarGridBodyProps extends StyleProps, GlobalDOMAttributes<HTMLTableSectionElement> {
1078
994
  /** A function to render a `<CalendarCell>` for a given date. */
1079
995
  children: (date: CalendarDate) => ReactElement;
1080
996
  }
@@ -1082,7 +998,7 @@ export interface CalendarGridBodyProps extends StyleProps {
1082
998
  * A calendar grid body displays a grid of calendar cells within a month.
1083
999
  */
1084
1000
  export const CalendarGridBody: (props: CalendarGridBodyProps & React.RefAttributes<HTMLTableSectionElement>) => ReactElement | null;
1085
- export interface CalendarCellProps extends RenderProps<CalendarCellRenderProps>, _HoverEvents1 {
1001
+ export interface CalendarCellProps extends RenderProps<CalendarCellRenderProps>, _HoverEvents1, GlobalDOMAttributes<HTMLTableCellElement> {
1086
1002
  /** The date to render in the cell. */
1087
1003
  date: CalendarDate;
1088
1004
  }
@@ -1094,21 +1010,25 @@ export interface ColorSwatchRenderProps {
1094
1010
  /** The color of the swatch. */
1095
1011
  color: Color;
1096
1012
  }
1097
- export interface ColorSwatchProps extends AriaColorSwatchProps, StyleRenderProps<ColorSwatchRenderProps>, SlotProps {
1013
+ export interface ColorSwatchProps extends AriaColorSwatchProps, StyleRenderProps<ColorSwatchRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1098
1014
  }
1099
1015
  export const ColorSwatchContext: React.Context<ContextValue<ColorSwatchProps, HTMLDivElement>>;
1100
1016
  /**
1101
1017
  * A ColorSwatch displays a preview of a selected color.
1102
1018
  */
1103
1019
  export const ColorSwatch: React.ForwardRefExoticComponent<ColorSwatchProps & React.RefAttributes<HTMLDivElement>>;
1104
- interface DraggableCollectionStateOpts extends Omit<DraggableCollectionStateOptions, 'getItems'> {
1020
+ interface DraggableCollectionStateOpts<T = object> extends Omit<DraggableCollectionStateOptions<T>, 'getItems'> {
1105
1021
  }
1106
- interface DragHooks {
1107
- useDraggableCollectionState?: (props: DraggableCollectionStateOpts) => DraggableCollectionState;
1022
+ interface DragHooks<T = object> {
1023
+ useDraggableCollectionState?: (props: DraggableCollectionStateOpts<T>) => DraggableCollectionState;
1108
1024
  useDraggableCollection?: (props: DraggableCollectionOptions, state: DraggableCollectionState, ref: RefObject<HTMLElement | null>) => void;
1109
1025
  useDraggableItem?: (props: DraggableItemProps, state: DraggableCollectionState) => DraggableItemResult;
1110
1026
  DragPreview?: typeof DragPreview;
1111
- renderDragPreview?: (items: DragItem[]) => JSX.Element;
1027
+ renderDragPreview?: (items: DragItem[]) => JSX.Element | {
1028
+ element: JSX.Element;
1029
+ x: number;
1030
+ y: number;
1031
+ };
1112
1032
  isVirtualDragging?: () => boolean;
1113
1033
  }
1114
1034
  interface DropHooks {
@@ -1120,22 +1040,26 @@ interface DropHooks {
1120
1040
  dropTargetDelegate?: _DropTargetDelegate1;
1121
1041
  ListDropTargetDelegate: typeof ListDropTargetDelegate;
1122
1042
  }
1123
- export type DragAndDropHooks = DragHooks & DropHooks;
1124
- interface DragAndDrop {
1043
+ export type DragAndDropHooks<T = object> = DragHooks<T> & DropHooks;
1044
+ interface DragAndDrop<T = object> {
1125
1045
  /** Drag and drop hooks for the collection element. */
1126
- dragAndDropHooks: DragAndDropHooks;
1046
+ dragAndDropHooks: DragAndDropHooks<T>;
1127
1047
  }
1128
- export interface DragAndDropOptions extends Omit<DraggableCollectionProps, 'preview' | 'getItems'>, DroppableCollectionProps {
1048
+ export interface DragAndDropOptions<T = object> extends Omit<DraggableCollectionProps, 'preview' | 'getItems'>, DroppableCollectionProps {
1129
1049
  /**
1130
1050
  * A function that returns the items being dragged. If not specified, we assume that the collection is not draggable.
1131
1051
  * @default () => []
1132
1052
  */
1133
- getItems?: (keys: Set<Key>) => DragItem[];
1053
+ getItems?: (keys: Set<Key>, items: T[]) => DragItem[];
1134
1054
  /**
1135
1055
  * A function that renders a drag preview, which is shown under the user's cursor while dragging.
1136
1056
  * By default, a copy of the dragged element is rendered.
1137
1057
  */
1138
- renderDragPreview?: (items: DragItem[]) => JSX.Element;
1058
+ renderDragPreview?: (items: DragItem[]) => JSX.Element | {
1059
+ element: JSX.Element;
1060
+ x: number;
1061
+ y: number;
1062
+ };
1139
1063
  /**
1140
1064
  * A function that renders a drop indicator element between two items in a collection.
1141
1065
  * This should render a `<DropIndicator>` element. If this function is not provided, a
@@ -1150,7 +1074,7 @@ export interface DragAndDropOptions extends Omit<DraggableCollectionProps, 'prev
1150
1074
  /**
1151
1075
  * Provides the hooks required to enable drag and drop behavior for a drag and drop compatible collection component.
1152
1076
  */
1153
- export function useDragAndDrop(options: DragAndDropOptions): DragAndDrop;
1077
+ export function useDragAndDrop<T = object>(options: DragAndDropOptions<T>): DragAndDrop<T>;
1154
1078
  interface DragAndDropContextValue {
1155
1079
  dragAndDropHooks?: DragAndDropHooks;
1156
1080
  dragState?: DraggableCollectionState;
@@ -1176,7 +1100,7 @@ interface DropIndicatorContextValue {
1176
1100
  export const DropIndicator: React.ForwardRefExoticComponent<DropIndicatorProps & React.RefAttributes<HTMLElement>>;
1177
1101
  export const HeaderContext: React.Context<ContextValue<React.HTMLAttributes<HTMLElement>, HTMLElement>>;
1178
1102
  export const Header: (props: React.HTMLAttributes<HTMLElement> & React.RefAttributes<object>) => React.ReactElement | null;
1179
- export interface SeparatorProps extends _SeparatorProps1, StyleProps, SlotProps {
1103
+ export interface SeparatorProps extends _SeparatorProps1, StyleProps, SlotProps, GlobalDOMAttributes<HTMLElement> {
1180
1104
  }
1181
1105
  export const SeparatorContext: React.Context<ContextValue<SeparatorProps, HTMLElement>>;
1182
1106
  export const Separator: (props: SeparatorProps & React.RefAttributes<object>) => React.ReactElement | null;
@@ -1211,11 +1135,14 @@ export interface ListBoxRenderProps {
1211
1135
  */
1212
1136
  state: ListState<unknown>;
1213
1137
  }
1214
- export interface ListBoxProps<T> extends Omit<AriaListBoxProps<T>, 'children' | 'label'>, CollectionProps<T>, StyleRenderProps<ListBoxRenderProps>, SlotProps, ScrollableProps<HTMLDivElement> {
1215
- /** How multiple selection should behave in the collection. */
1138
+ export interface ListBoxProps<T> extends Omit<AriaListBoxProps<T>, 'children' | 'label'>, CollectionProps<T>, StyleRenderProps<ListBoxRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1139
+ /**
1140
+ * How multiple selection should behave in the collection.
1141
+ * @default "toggle"
1142
+ */
1216
1143
  selectionBehavior?: SelectionBehavior;
1217
1144
  /** The drag and drop hooks returned by `useDragAndDrop` used to enable drag and drop behavior for the ListBox. */
1218
- dragAndDropHooks?: DragAndDropHooks;
1145
+ dragAndDropHooks?: DragAndDropHooks<NoInfer<T>>;
1219
1146
  /** Provides content to display when there are no items in the list. */
1220
1147
  renderEmptyState?: (props: ListBoxRenderProps) => ReactNode;
1221
1148
  /**
@@ -1244,7 +1171,7 @@ export interface ListBoxSectionProps<T> extends SectionProps<T> {
1244
1171
  export const ListBoxSection: <T extends object>(props: ListBoxSectionProps<T> & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
1245
1172
  export interface ListBoxItemRenderProps extends ItemRenderProps {
1246
1173
  }
1247
- export interface ListBoxItemProps<T = object> extends RenderProps<ListBoxItemRenderProps>, LinkDOMProps, _HoverEvents1 {
1174
+ export interface ListBoxItemProps<T = object> extends RenderProps<ListBoxItemRenderProps>, LinkDOMProps, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
1248
1175
  /** The unique id of the item. */
1249
1176
  id?: Key;
1250
1177
  /** The object value that this item represents. When using dynamic collections, this is set automatically. */
@@ -1265,7 +1192,7 @@ export interface ListBoxItemProps<T = object> extends RenderProps<ListBoxItemRen
1265
1192
  * A ListBoxItem represents an individual option in a ListBox.
1266
1193
  */
1267
1194
  export const ListBoxItem: <T extends object>(props: ListBoxItemProps<T> & React.RefAttributes<T>) => React.ReactElement | null;
1268
- interface ListBoxLoadingSentinelProps extends Omit<LoadMoreSentinelProps, 'collection'>, StyleProps {
1195
+ export interface ListBoxLoadMoreItemProps extends Omit<LoadMoreSentinelProps, 'collection'>, StyleProps, GlobalDOMAttributes<HTMLDivElement> {
1269
1196
  /**
1270
1197
  * The load more spinner to render when loading additional items.
1271
1198
  */
@@ -1275,10 +1202,10 @@ interface ListBoxLoadingSentinelProps extends Omit<LoadMoreSentinelProps, 'colle
1275
1202
  */
1276
1203
  isLoading?: boolean;
1277
1204
  }
1278
- export const UNSTABLE_ListBoxLoadingSentinel: <T extends object>(props: ListBoxLoadingSentinelProps & React.RefAttributes<T>) => React.ReactElement | null;
1205
+ export const ListBoxLoadMoreItem: (props: ListBoxLoadMoreItemProps & React.RefAttributes<object>) => React.ReactElement | null;
1279
1206
  export interface ColorSwatchPickerRenderProps extends Omit<ListBoxRenderProps, 'isDropTarget'> {
1280
1207
  }
1281
- export interface ColorSwatchPickerProps extends ValueBase<string | Color, Color>, AriaLabelingProps, StyleRenderProps<ColorSwatchPickerRenderProps> {
1208
+ export interface ColorSwatchPickerProps extends ValueBase<string | Color, Color>, AriaLabelingProps, StyleRenderProps<ColorSwatchPickerRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
1282
1209
  /** The children of the ColorSwatchPicker. */
1283
1210
  children?: ReactNode;
1284
1211
  /**
@@ -1296,7 +1223,7 @@ export interface ColorSwatchPickerItemRenderProps extends Omit<ListBoxItemRender
1296
1223
  /** The color of the swatch. */
1297
1224
  color: Color;
1298
1225
  }
1299
- export interface ColorSwatchPickerItemProps extends RenderProps<ColorSwatchPickerItemRenderProps>, _HoverEvents1 {
1226
+ export interface ColorSwatchPickerItemProps extends RenderProps<ColorSwatchPickerItemRenderProps>, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
1300
1227
  /** The color of the swatch. */
1301
1228
  color: string | Color;
1302
1229
  /** Whether the color swatch is disabled. */
@@ -1330,7 +1257,7 @@ export interface OverlayArrowRenderProps {
1330
1257
  * such as a popover or tooltip such that it aligns with a trigger element.
1331
1258
  */
1332
1259
  export const OverlayArrow: (props: OverlayArrowProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1333
- export interface PopoverProps extends Omit<PositionProps, 'isOpen'>, Omit<AriaPopoverProps, 'popoverRef' | 'triggerRef' | 'groupRef' | 'offset' | 'arrowSize'>, OverlayTriggerProps, RenderProps<PopoverRenderProps>, SlotProps, AriaLabelingProps {
1260
+ export interface PopoverProps extends Omit<PositionProps, 'isOpen'>, Omit<AriaPopoverProps, 'popoverRef' | 'triggerRef' | 'groupRef' | 'offset' | 'arrowSize'>, OverlayTriggerProps, RenderProps<PopoverRenderProps>, SlotProps, AriaLabelingProps, GlobalDOMAttributes<HTMLDivElement> {
1334
1261
  /**
1335
1262
  * The name of the component that triggered the popover. This is reflected on the element
1336
1263
  * as the `data-trigger` attribute, and can be used to provide specific
@@ -1429,7 +1356,7 @@ interface MenuRenderProps {
1429
1356
  */
1430
1357
  isEmpty: boolean;
1431
1358
  }
1432
- export interface MenuProps<T> extends Omit<AriaMenuProps<T>, 'children'>, CollectionProps<T>, StyleRenderProps<MenuRenderProps>, SlotProps, ScrollableProps<HTMLDivElement> {
1359
+ export interface MenuProps<T> extends Omit<AriaMenuProps<T>, 'children'>, CollectionProps<T>, StyleRenderProps<MenuRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1433
1360
  /** Provides content to display when there are no items in the list. */
1434
1361
  renderEmptyState?: () => ReactNode;
1435
1362
  }
@@ -1457,7 +1384,7 @@ export interface MenuItemRenderProps extends ItemRenderProps {
1457
1384
  */
1458
1385
  isOpen: boolean;
1459
1386
  }
1460
- export interface MenuItemProps<T = object> extends RenderProps<MenuItemRenderProps>, LinkDOMProps, _HoverEvents1 {
1387
+ export interface MenuItemProps<T = object> extends RenderProps<MenuItemRenderProps>, LinkDOMProps, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
1461
1388
  /** The unique id of the item. */
1462
1389
  id?: Key;
1463
1390
  /** The object value that this item represents. When using dynamic collections, this is set automatically. */
@@ -1481,7 +1408,7 @@ export interface DialogTriggerProps extends OverlayTriggerProps {
1481
1408
  export interface DialogRenderProps {
1482
1409
  close: () => void;
1483
1410
  }
1484
- export interface DialogProps extends AriaDialogProps, StyleProps, SlotProps {
1411
+ export interface DialogProps extends AriaDialogProps, StyleProps, SlotProps, GlobalDOMAttributes<HTMLElement> {
1485
1412
  /** Children of the dialog. A function may be provided to access a function to close the dialog. */
1486
1413
  children?: ReactNode | ((opts: DialogRenderProps) => ReactNode);
1487
1414
  }
@@ -1517,7 +1444,7 @@ export interface ComboBoxRenderProps {
1517
1444
  */
1518
1445
  isRequired: boolean;
1519
1446
  }
1520
- export interface ComboBoxProps<T extends object> extends Omit<AriaComboBoxProps<T>, 'children' | 'placeholder' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<ComboBoxRenderProps>, SlotProps {
1447
+ export interface ComboBoxProps<T extends object> extends Omit<AriaComboBoxProps<T>, 'children' | 'placeholder' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<ComboBoxRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1521
1448
  /** The filter function used to determine if a option should be included in the combo box list. */
1522
1449
  defaultFilter?: (textValue: string, inputValue: string) => boolean;
1523
1450
  /**
@@ -1551,9 +1478,9 @@ export interface DateFieldRenderProps {
1551
1478
  */
1552
1479
  isDisabled: boolean;
1553
1480
  }
1554
- export interface DateFieldProps<T extends DateValue> extends Omit<AriaDateFieldProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<DateFieldRenderProps>, SlotProps {
1481
+ export interface DateFieldProps<T extends DateValue> extends Omit<AriaDateFieldProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<DateFieldRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1555
1482
  }
1556
- export interface TimeFieldProps<T extends TimeValue> extends Omit<AriaTimeFieldProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<DateFieldRenderProps>, SlotProps {
1483
+ export interface TimeFieldProps<T extends TimeValue> extends Omit<AriaTimeFieldProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<DateFieldRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1557
1484
  }
1558
1485
  export const DateFieldContext: React.Context<ContextValue<DateFieldProps<any>, HTMLDivElement>>;
1559
1486
  export const TimeFieldContext: React.Context<ContextValue<TimeFieldProps<any>, HTMLDivElement>>;
@@ -1596,7 +1523,7 @@ export interface DateInputRenderProps {
1596
1523
  */
1597
1524
  isInvalid: boolean;
1598
1525
  }
1599
- export interface DateInputProps extends SlotProps, StyleRenderProps<DateInputRenderProps> {
1526
+ export interface DateInputProps extends SlotProps, StyleRenderProps<DateInputRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
1600
1527
  children: (segment: _DateSegment1) => ReactElement;
1601
1528
  }
1602
1529
  /**
@@ -1645,14 +1572,14 @@ export interface DateSegmentRenderProps extends Omit<_DateSegment1, 'isEditable'
1645
1572
  */
1646
1573
  type: DateSegmentType;
1647
1574
  }
1648
- export interface DateSegmentProps extends RenderProps<DateSegmentRenderProps>, HoverEvents {
1575
+ export interface DateSegmentProps extends RenderProps<DateSegmentRenderProps>, HoverEvents, GlobalDOMAttributes<HTMLSpanElement> {
1649
1576
  segment: _DateSegment1;
1650
1577
  }
1651
1578
  /**
1652
1579
  * A date segment displays an individual unit of a date and time, and allows users to edit
1653
1580
  * the value by typing or using the arrow keys to increment and decrement.
1654
1581
  */
1655
- export const DateSegment: (props: DateSegmentProps & React.RefAttributes<HTMLDivElement>) => ReactElement | null;
1582
+ export const DateSegment: (props: DateSegmentProps & React.RefAttributes<HTMLSpanElement>) => ReactElement | null;
1656
1583
  export interface DatePickerRenderProps {
1657
1584
  /**
1658
1585
  * Whether an element within the date picker is focused, either via a mouse or keyboard.
@@ -1690,9 +1617,9 @@ export interface DateRangePickerRenderProps extends Omit<DatePickerRenderProps,
1690
1617
  */
1691
1618
  state: DateRangePickerState;
1692
1619
  }
1693
- export interface DatePickerProps<T extends DateValue> extends Omit<AriaDatePickerProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, Pick<DatePickerStateOptions<T>, 'shouldCloseOnSelect'>, RACValidation, RenderProps<DatePickerRenderProps>, SlotProps {
1620
+ export interface DatePickerProps<T extends DateValue> extends Omit<AriaDatePickerProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, Pick<DatePickerStateOptions<T>, 'shouldCloseOnSelect'>, RACValidation, RenderProps<DatePickerRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1694
1621
  }
1695
- export interface DateRangePickerProps<T extends DateValue> extends Omit<AriaDateRangePickerProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, Pick<DateRangePickerStateOptions<T>, 'shouldCloseOnSelect'>, RACValidation, RenderProps<DateRangePickerRenderProps>, SlotProps {
1622
+ export interface DateRangePickerProps<T extends DateValue> extends Omit<AriaDateRangePickerProps<T>, 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, Pick<DateRangePickerStateOptions<T>, 'shouldCloseOnSelect'>, RACValidation, RenderProps<DateRangePickerRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1696
1623
  }
1697
1624
  export const DatePickerContext: React.Context<ContextValue<DatePickerProps<any>, HTMLDivElement>>;
1698
1625
  export const DateRangePickerContext: React.Context<ContextValue<DateRangePickerProps<any>, HTMLDivElement>>;
@@ -1707,7 +1634,7 @@ export const DatePicker: <T extends DateValue>(props: DatePickerProps<T> & React
1707
1634
  * users to enter or select a date and time range.
1708
1635
  */
1709
1636
  export const DateRangePicker: <T extends DateValue>(props: DateRangePickerProps<T> & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1710
- export interface DisclosureGroupProps extends _DisclosureGroupProps1, RenderProps<DisclosureGroupRenderProps>, _DOMProps1 {
1637
+ export interface DisclosureGroupProps extends _DisclosureGroupProps1, RenderProps<DisclosureGroupRenderProps>, _DOMProps1, GlobalDOMAttributes<HTMLDivElement> {
1711
1638
  }
1712
1639
  export interface DisclosureGroupRenderProps {
1713
1640
  /**
@@ -1726,7 +1653,7 @@ export const DisclosureGroupStateContext: React.Context<DisclosureGroupState | n
1726
1653
  * It supports both single and multiple expanded items.
1727
1654
  */
1728
1655
  export const DisclosureGroup: React.ForwardRefExoticComponent<DisclosureGroupProps & React.RefAttributes<HTMLDivElement>>;
1729
- export interface DisclosureProps extends Omit<AriaDisclosureProps, 'children'>, RenderProps<DisclosureRenderProps>, SlotProps {
1656
+ export interface DisclosureProps extends Omit<AriaDisclosureProps, 'children'>, RenderProps<DisclosureRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1730
1657
  /** An id for the disclosure when used within a DisclosureGroup, matching the id used in `expandedKeys`. */
1731
1658
  id?: Key;
1732
1659
  }
@@ -1764,7 +1691,7 @@ export interface DisclosurePanelRenderProps {
1764
1691
  */
1765
1692
  isFocusVisibleWithin: boolean;
1766
1693
  }
1767
- export interface DisclosurePanelProps extends RenderProps<DisclosurePanelRenderProps>, _DOMProps1 {
1694
+ export interface DisclosurePanelProps extends RenderProps<DisclosurePanelRenderProps>, _DOMProps1, GlobalDOMAttributes<HTMLDivElement> {
1768
1695
  /**
1769
1696
  * The accessibility role for the disclosure's panel.
1770
1697
  * @default 'group'
@@ -1806,18 +1733,18 @@ export interface DropZoneRenderProps {
1806
1733
  */
1807
1734
  isDisabled: boolean;
1808
1735
  }
1809
- export interface DropZoneProps extends Omit<DropOptions, 'getDropOperationForPoint' | 'ref' | 'hasDropButton'>, _HoverEvents1, RenderProps<DropZoneRenderProps>, SlotProps, AriaLabelingProps {
1736
+ export interface DropZoneProps extends Omit<DropOptions, 'getDropOperationForPoint' | 'ref' | 'hasDropButton'>, _HoverEvents1, RenderProps<DropZoneRenderProps>, SlotProps, AriaLabelingProps, GlobalDOMAttributes<HTMLDivElement> {
1810
1737
  }
1811
1738
  export const DropZoneContext: React.Context<ContextValue<DropZoneProps, HTMLDivElement>>;
1812
1739
  /**
1813
1740
  * A drop zone is an area into which one or multiple objects can be dragged and dropped.
1814
1741
  */
1815
1742
  export const DropZone: React.ForwardRefExoticComponent<DropZoneProps & React.RefAttributes<HTMLDivElement>>;
1816
- export interface FileTriggerProps {
1743
+ export interface FileTriggerProps extends GlobalDOMAttributes<HTMLInputElement> {
1817
1744
  /**
1818
1745
  * Specifies what mime type of files are allowed.
1819
1746
  */
1820
- acceptedFileTypes?: Array<string>;
1747
+ acceptedFileTypes?: ReadonlyArray<string>;
1821
1748
  /**
1822
1749
  * Whether multiple files can be selected.
1823
1750
  */
@@ -1874,16 +1801,19 @@ export interface GridListRenderProps {
1874
1801
  */
1875
1802
  state: ListState<unknown>;
1876
1803
  }
1877
- export interface GridListProps<T> extends Omit<AriaGridListProps<T>, 'children'>, CollectionProps<T>, StyleRenderProps<GridListRenderProps>, SlotProps, ScrollableProps<HTMLDivElement> {
1804
+ export interface GridListProps<T> extends Omit<AriaGridListProps<T>, 'children'>, CollectionProps<T>, StyleRenderProps<GridListRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1878
1805
  /**
1879
1806
  * Whether typeahead navigation is disabled.
1880
1807
  * @default false
1881
1808
  */
1882
1809
  disallowTypeAhead?: boolean;
1883
- /** How multiple selection should behave in the collection. */
1810
+ /**
1811
+ * How multiple selection should behave in the collection.
1812
+ * @default "toggle"
1813
+ */
1884
1814
  selectionBehavior?: SelectionBehavior;
1885
1815
  /** The drag and drop hooks returned by `useDragAndDrop` used to enable drag and drop behavior for the GridList. */
1886
- dragAndDropHooks?: DragAndDropHooks;
1816
+ dragAndDropHooks?: DragAndDropHooks<NoInfer<T>>;
1887
1817
  /** Provides content to display when there are no items in the list. */
1888
1818
  renderEmptyState?: (props: GridListRenderProps) => ReactNode;
1889
1819
  /**
@@ -1900,7 +1830,7 @@ export const GridListContext: React.Context<ContextValue<GridListProps<any>, HTM
1900
1830
  export const GridList: <T extends object>(props: GridListProps<T> & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1901
1831
  export interface GridListItemRenderProps extends ItemRenderProps {
1902
1832
  }
1903
- export interface GridListItemProps<T = object> extends RenderProps<GridListItemRenderProps>, LinkDOMProps, _HoverEvents1 {
1833
+ export interface GridListItemProps<T = object> extends RenderProps<GridListItemRenderProps>, LinkDOMProps, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
1904
1834
  /** The unique id of the item. */
1905
1835
  id?: Key;
1906
1836
  /** The object value that this item represents. When using dynamic collections, this is set automatically. */
@@ -1919,7 +1849,7 @@ export interface GridListItemProps<T = object> extends RenderProps<GridListItemR
1919
1849
  * A GridListItem represents an individual item in a GridList.
1920
1850
  */
1921
1851
  export const GridListItem: <T extends object>(props: GridListItemProps<T> & React.RefAttributes<T>) => React.ReactElement | null;
1922
- interface GridListLoadingSentinelProps extends Omit<LoadMoreSentinelProps, 'collection'>, StyleProps {
1852
+ export interface GridListLoadMoreItemProps extends Omit<LoadMoreSentinelProps, 'collection'>, StyleProps, GlobalDOMAttributes<HTMLDivElement> {
1923
1853
  /**
1924
1854
  * The load more spinner to render when loading additional items.
1925
1855
  */
@@ -1929,8 +1859,15 @@ interface GridListLoadingSentinelProps extends Omit<LoadMoreSentinelProps, 'coll
1929
1859
  */
1930
1860
  isLoading?: boolean;
1931
1861
  }
1932
- export const UNSTABLE_GridListLoadingSentinel: <T extends object>(props: GridListLoadingSentinelProps & React.RefAttributes<T>) => React.ReactElement | null;
1933
- export interface MeterProps extends Omit<AriaMeterProps, 'label'>, RenderProps<MeterRenderProps>, SlotProps {
1862
+ export const GridListLoadMoreItem: (props: GridListLoadMoreItemProps & React.RefAttributes<object>) => React.ReactElement | null;
1863
+ interface GridListSectionProps<T> extends SectionProps<T> {
1864
+ }
1865
+ /**
1866
+ * A GridListSection represents a section within a GridList.
1867
+ */
1868
+ export const GridListSection: <T extends object>(props: GridListSectionProps<T> & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
1869
+ export const GridListHeader: (props: React.HTMLAttributes<HTMLElement> & React.RefAttributes<object>) => React.ReactElement | null;
1870
+ export interface MeterProps extends Omit<AriaMeterProps, 'label'>, RenderProps<MeterRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1934
1871
  }
1935
1872
  export interface MeterRenderProps {
1936
1873
  /**
@@ -1948,7 +1885,7 @@ export const MeterContext: React.Context<ContextValue<MeterProps, HTMLDivElement
1948
1885
  * A meter represents a quantity within a known range, or a fractional value.
1949
1886
  */
1950
1887
  export const Meter: (props: MeterProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1951
- export interface ModalOverlayProps extends AriaModalOverlayProps, OverlayTriggerProps, RenderProps<ModalRenderProps>, SlotProps {
1888
+ export interface ModalOverlayProps extends AriaModalOverlayProps, OverlayTriggerProps, RenderProps<ModalRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
1952
1889
  /**
1953
1890
  * Whether the modal is currently performing an entry animation.
1954
1891
  */
@@ -2010,7 +1947,7 @@ export interface NumberFieldRenderProps {
2010
1947
  */
2011
1948
  state: NumberFieldState;
2012
1949
  }
2013
- export interface NumberFieldProps extends Omit<AriaNumberFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, InputDOMProps, RenderProps<NumberFieldRenderProps>, SlotProps {
1950
+ export interface NumberFieldProps extends Omit<AriaNumberFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, InputDOMProps, RenderProps<NumberFieldRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2014
1951
  }
2015
1952
  export const NumberFieldContext: React.Context<ContextValue<NumberFieldProps, HTMLDivElement>>;
2016
1953
  export const NumberFieldStateContext: React.Context<NumberFieldState | null>;
@@ -2018,9 +1955,9 @@ export const NumberFieldStateContext: React.Context<NumberFieldState | null>;
2018
1955
  * A number field allows a user to enter a number, and increment or decrement the value using stepper buttons.
2019
1956
  */
2020
1957
  export const NumberField: (props: NumberFieldProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
2021
- export interface RadioGroupProps extends Omit<AriaRadioGroupProps, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<RadioGroupRenderProps>, SlotProps {
1958
+ export interface RadioGroupProps extends Omit<AriaRadioGroupProps, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<RadioGroupRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2022
1959
  }
2023
- export interface RadioProps extends Omit<AriaRadioProps, 'children'>, HoverEvents, RenderProps<RadioRenderProps>, SlotProps {
1960
+ export interface RadioProps extends Omit<AriaRadioProps, 'children'>, HoverEvents, RenderProps<RadioRenderProps>, SlotProps, Omit<GlobalDOMAttributes<HTMLLabelElement>, 'onClick'> {
2024
1961
  /**
2025
1962
  * A ref for the HTML input element.
2026
1963
  */
@@ -2115,6 +2052,34 @@ export const RadioGroup: (props: RadioGroupProps & React.RefAttributes<HTMLDivEl
2115
2052
  * A radio represents an individual option within a radio group.
2116
2053
  */
2117
2054
  export const Radio: (props: RadioProps & React.RefAttributes<HTMLLabelElement>) => React.ReactElement | null;
2055
+ export interface SearchFieldRenderProps {
2056
+ /**
2057
+ * Whether the search field is empty.
2058
+ * @selector [data-empty]
2059
+ */
2060
+ isEmpty: boolean;
2061
+ /**
2062
+ * Whether the search field is disabled.
2063
+ * @selector [data-disabled]
2064
+ */
2065
+ isDisabled: boolean;
2066
+ /**
2067
+ * Whether the search field is invalid.
2068
+ * @selector [data-invalid]
2069
+ */
2070
+ isInvalid: boolean;
2071
+ /**
2072
+ * State of the search field.
2073
+ */
2074
+ state: SearchFieldState;
2075
+ }
2076
+ export interface SearchFieldProps extends Omit<AriaSearchFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, RenderProps<SearchFieldRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2077
+ }
2078
+ export const SearchFieldContext: React.Context<ContextValue<SearchFieldProps, HTMLDivElement>>;
2079
+ /**
2080
+ * A search field allows a user to enter and clear a search query.
2081
+ */
2082
+ export const SearchField: (props: SearchFieldProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
2118
2083
  export interface SelectRenderProps {
2119
2084
  /**
2120
2085
  * Whether the select is focused, either via a mouse or keyboard.
@@ -2147,7 +2112,7 @@ export interface SelectRenderProps {
2147
2112
  */
2148
2113
  isRequired: boolean;
2149
2114
  }
2150
- export interface SelectProps<T extends object = {}> extends Omit<AriaSelectProps<T>, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior' | 'items'>, RACValidation, RenderProps<SelectRenderProps>, SlotProps {
2115
+ export interface SelectProps<T extends object = {}> extends Omit<AriaSelectProps<T>, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior' | 'items'>, RACValidation, RenderProps<SelectRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2151
2116
  /**
2152
2117
  * Temporary text that occupies the select when it is empty.
2153
2118
  * @default 'Select an item' (localized)
@@ -2179,7 +2144,7 @@ export const SelectValueContext: React.Context<ContextValue<SelectValueProps<any
2179
2144
  * It is usually placed within the button element.
2180
2145
  */
2181
2146
  export const SelectValue: <T extends object>(props: SelectValueProps<T> & React.RefAttributes<HTMLSpanElement>) => React.ReactElement | null;
2182
- export interface SwitchProps extends Omit<AriaSwitchProps, 'children'>, HoverEvents, RenderProps<SwitchRenderProps>, SlotProps {
2147
+ export interface SwitchProps extends Omit<AriaSwitchProps, 'children'>, HoverEvents, RenderProps<SwitchRenderProps>, SlotProps, Omit<GlobalDOMAttributes<HTMLLabelElement>, 'onClick'> {
2183
2148
  /**
2184
2149
  * A ref for the HTML input element.
2185
2150
  */
@@ -2231,7 +2196,7 @@ export const SwitchContext: React.Context<ContextValue<SwitchProps, HTMLLabelEle
2231
2196
  * A switch allows a user to turn a setting on or off.
2232
2197
  */
2233
2198
  export const Switch: (props: SwitchProps & React.RefAttributes<HTMLLabelElement>) => React.ReactElement | null;
2234
- export interface ResizableTableContainerProps extends DOMProps, ScrollableProps<HTMLDivElement> {
2199
+ export interface ResizableTableContainerProps extends DOMProps, GlobalDOMAttributes<HTMLDivElement> {
2235
2200
  /**
2236
2201
  * Handler that is called when a user starts a column resize.
2237
2202
  */
@@ -2249,7 +2214,7 @@ export interface ResizableTableContainerProps extends DOMProps, ScrollableProps<
2249
2214
  onResizeEnd?: (widths: Map<Key, ColumnSize>) => void;
2250
2215
  }
2251
2216
  export const ResizableTableContainer: React.ForwardRefExoticComponent<ResizableTableContainerProps & React.RefAttributes<HTMLDivElement>>;
2252
- export const TableContext: React.Context<ContextValue<TableProps, HTMLTableElement>>;
2217
+ export const TableContext: React.Context<ContextValue<TableProps, HTMLDivElement | HTMLTableElement>>;
2253
2218
  export const TableStateContext: React.Context<TableState<any> | null>;
2254
2219
  export const TableColumnResizeStateContext: React.Context<TableColumnResizeState<unknown> | null>;
2255
2220
  export interface TableRenderProps {
@@ -2273,7 +2238,7 @@ export interface TableRenderProps {
2273
2238
  */
2274
2239
  state: TableState<unknown>;
2275
2240
  }
2276
- export interface TableProps extends Omit<_TableProps1<any>, 'children'>, StyleRenderProps<TableRenderProps>, SlotProps, AriaLabelingProps, ScrollableProps<HTMLTableElement> {
2241
+ export interface TableProps extends Omit<_TableProps1<any>, 'children'>, StyleRenderProps<TableRenderProps>, SlotProps, AriaLabelingProps, GlobalDOMAttributes<HTMLTableElement> {
2277
2242
  /** The elements that make up the table. Includes the TableHeader, TableBody, Columns, and Rows. */
2278
2243
  children?: ReactNode;
2279
2244
  /**
@@ -2295,7 +2260,7 @@ export interface TableProps extends Omit<_TableProps1<any>, 'children'>, StyleRe
2295
2260
  * A table displays data in rows and columns and enables a user to navigate its contents via directional navigation keys,
2296
2261
  * and optionally supports row selection and sorting.
2297
2262
  */
2298
- export const Table: React.ForwardRefExoticComponent<TableProps & React.RefAttributes<HTMLTableElement>>;
2263
+ export const Table: React.ForwardRefExoticComponent<TableProps & React.RefAttributes<HTMLDivElement | HTMLTableElement>>;
2299
2264
  interface TableOptionsContextValue {
2300
2265
  /** The type of selection that is allowed in the table. */
2301
2266
  selectionMode: SelectionMode;
@@ -2317,7 +2282,7 @@ interface TableHeaderRenderProps {
2317
2282
  */
2318
2283
  isHovered: boolean;
2319
2284
  }
2320
- export interface TableHeaderProps<T> extends StyleRenderProps<TableHeaderRenderProps>, _HoverEvents1 {
2285
+ export interface TableHeaderProps<T> extends StyleRenderProps<TableHeaderRenderProps>, _HoverEvents1, GlobalDOMAttributes<HTMLTableSectionElement> {
2321
2286
  /** A list of table columns. */
2322
2287
  columns?: Iterable<T>;
2323
2288
  /** A list of `Column(s)` or a function. If the latter, a list of columns must be provided using the `columns` prop. */
@@ -2328,7 +2293,7 @@ export interface TableHeaderProps<T> extends StyleRenderProps<TableHeaderRenderP
2328
2293
  /**
2329
2294
  * A header within a `<Table>`, containing the table columns.
2330
2295
  */
2331
- export const TableHeader: <T extends object>(props: TableHeaderProps<T> & React.RefAttributes<HTMLTableSectionElement>) => ReactElement | null;
2296
+ export const TableHeader: <T extends object>(props: TableHeaderProps<T> & React.RefAttributes<HTMLDivElement | HTMLTableSectionElement>) => ReactElement | null;
2332
2297
  export interface ColumnRenderProps {
2333
2298
  /**
2334
2299
  * Whether the item is currently hovered with a mouse.
@@ -2369,7 +2334,7 @@ export interface ColumnRenderProps {
2369
2334
  */
2370
2335
  startResize(): void;
2371
2336
  }
2372
- export interface ColumnProps extends RenderProps<ColumnRenderProps> {
2337
+ export interface ColumnProps extends RenderProps<ColumnRenderProps>, GlobalDOMAttributes<HTMLTableHeaderCellElement> {
2373
2338
  /** The unique id of the column. */
2374
2339
  id?: Key;
2375
2340
  /** Whether the column allows sorting. */
@@ -2418,7 +2383,7 @@ export interface ColumnResizerRenderProps {
2418
2383
  */
2419
2384
  resizableDirection: 'right' | 'left' | 'both';
2420
2385
  }
2421
- export interface ColumnResizerProps extends _HoverEvents1, RenderProps<ColumnResizerRenderProps> {
2386
+ export interface ColumnResizerProps extends _HoverEvents1, RenderProps<ColumnResizerRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
2422
2387
  /** A custom accessibility label for the resizer. */
2423
2388
  'aria-label'?: string;
2424
2389
  }
@@ -2435,21 +2400,21 @@ export interface TableBodyRenderProps {
2435
2400
  */
2436
2401
  isDropTarget: boolean;
2437
2402
  }
2438
- export interface TableBodyProps<T> extends Omit<CollectionProps<T>, 'disabledKeys'>, StyleRenderProps<TableBodyRenderProps> {
2403
+ export interface TableBodyProps<T> extends Omit<CollectionProps<T>, 'disabledKeys'>, StyleRenderProps<TableBodyRenderProps>, GlobalDOMAttributes<HTMLTableSectionElement> {
2439
2404
  /** Provides content to display when there are no rows in the table. */
2440
2405
  renderEmptyState?: (props: TableBodyRenderProps) => ReactNode;
2441
2406
  }
2442
2407
  /**
2443
2408
  * The body of a `<Table>`, containing the table rows.
2444
2409
  */
2445
- export const TableBody: <T extends object>(props: TableBodyProps<T> & React.RefAttributes<HTMLTableSectionElement>) => ReactElement | null;
2410
+ export const TableBody: <T extends object>(props: TableBodyProps<T> & React.RefAttributes<HTMLDivElement | HTMLTableSectionElement>) => ReactElement | null;
2446
2411
  export interface RowRenderProps extends ItemRenderProps {
2447
2412
  /** Whether the row's children have keyboard focus. */
2448
2413
  isFocusVisibleWithin: boolean;
2449
2414
  /** The unique id of the row. */
2450
2415
  id?: Key;
2451
2416
  }
2452
- export interface RowProps<T> extends StyleRenderProps<RowRenderProps>, LinkDOMProps, _HoverEvents1 {
2417
+ export interface RowProps<T> extends StyleRenderProps<RowRenderProps>, LinkDOMProps, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLTableRowElement>, 'onClick'> {
2453
2418
  /** A list of columns used when dynamically rendering cells. */
2454
2419
  columns?: Iterable<T>;
2455
2420
  /** The cells within the row. Supports static items or a function for dynamic rendering. */
@@ -2473,7 +2438,7 @@ export interface RowProps<T> extends StyleRenderProps<RowRenderProps>, LinkDOMPr
2473
2438
  /**
2474
2439
  * A row within a `<Table>`.
2475
2440
  */
2476
- export const Row: <T extends object>(props: RowProps<T> & React.RefAttributes<HTMLTableRowElement>) => ReactElement | null;
2441
+ export const Row: <T extends object>(props: RowProps<T> & React.RefAttributes<HTMLDivElement | HTMLTableRowElement>) => ReactElement | null;
2477
2442
  export interface CellRenderProps {
2478
2443
  /**
2479
2444
  * Whether the cell is currently in a pressed state.
@@ -2500,7 +2465,7 @@ export interface CellRenderProps {
2500
2465
  **/
2501
2466
  id?: Key;
2502
2467
  }
2503
- export interface CellProps extends RenderProps<CellRenderProps> {
2468
+ export interface CellProps extends RenderProps<CellRenderProps>, GlobalDOMAttributes<HTMLTableCellElement> {
2504
2469
  /** The unique id of the cell. */
2505
2470
  id?: Key;
2506
2471
  /** A string representation of the cell's contents, used for features like typeahead. */
@@ -2512,7 +2477,7 @@ export interface CellProps extends RenderProps<CellRenderProps> {
2512
2477
  * A cell within a table row.
2513
2478
  */
2514
2479
  export const Cell: (props: CellProps & React.RefAttributes<object>) => ReactElement | null;
2515
- interface TableLoadingSentinelProps extends Omit<LoadMoreSentinelProps, 'collection'>, StyleProps {
2480
+ export interface TableLoadMoreItemProps extends Omit<LoadMoreSentinelProps, 'collection'>, StyleProps, GlobalDOMAttributes<HTMLTableRowElement> {
2516
2481
  /**
2517
2482
  * The load more spinner to render when loading additional items.
2518
2483
  */
@@ -2522,7 +2487,7 @@ interface TableLoadingSentinelProps extends Omit<LoadMoreSentinelProps, 'collect
2522
2487
  */
2523
2488
  isLoading?: boolean;
2524
2489
  }
2525
- export const UNSTABLE_TableLoadingSentinel: <T extends object>(props: TableLoadingSentinelProps & React.RefAttributes<T>) => ReactElement | null;
2490
+ export const TableLoadMoreItem: (props: TableLoadMoreItemProps & React.RefAttributes<object>) => ReactElement | null;
2526
2491
  interface LayoutOptionsDelegate<O> {
2527
2492
  useLayoutOptions?(): O;
2528
2493
  }
@@ -2548,7 +2513,7 @@ export function Virtualizer<O>(props: VirtualizerProps<O>): JSX.Element;
2548
2513
  export class TableLayout<T, O extends TableLayoutProps = TableLayoutProps> extends _TableLayout1<T, O> implements LayoutOptionsDelegate<TableLayoutProps> {
2549
2514
  useLayoutOptions(): TableLayoutProps;
2550
2515
  }
2551
- export interface TabsProps extends Omit<AriaTabListProps<any>, 'items' | 'children'>, RenderProps<TabsRenderProps>, SlotProps {
2516
+ export interface TabsProps extends Omit<AriaTabListProps<any>, 'items' | 'children'>, RenderProps<TabsRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2552
2517
  }
2553
2518
  export interface TabsRenderProps {
2554
2519
  /**
@@ -2557,7 +2522,7 @@ export interface TabsRenderProps {
2557
2522
  */
2558
2523
  orientation: Orientation;
2559
2524
  }
2560
- export interface TabListProps<T> extends StyleRenderProps<TabListRenderProps>, AriaLabelingProps, Omit<CollectionProps<T>, 'disabledKeys'> {
2525
+ export interface TabListProps<T> extends StyleRenderProps<TabListRenderProps>, AriaLabelingProps, Omit<CollectionProps<T>, 'disabledKeys'>, GlobalDOMAttributes<HTMLDivElement> {
2561
2526
  }
2562
2527
  export interface TabListRenderProps {
2563
2528
  /**
@@ -2570,7 +2535,7 @@ export interface TabListRenderProps {
2570
2535
  */
2571
2536
  state: TabListState<unknown>;
2572
2537
  }
2573
- export interface TabProps extends RenderProps<TabRenderProps>, AriaLabelingProps, LinkDOMProps, _HoverEvents1 {
2538
+ export interface TabProps extends RenderProps<TabRenderProps>, AriaLabelingProps, LinkDOMProps, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
2574
2539
  /** The unique id of the tab. */
2575
2540
  id?: Key;
2576
2541
  /** Whether the tab is disabled. */
@@ -2608,7 +2573,7 @@ export interface TabRenderProps {
2608
2573
  */
2609
2574
  isDisabled: boolean;
2610
2575
  }
2611
- export interface TabPanelProps extends AriaTabPanelProps, RenderProps<TabPanelRenderProps> {
2576
+ export interface TabPanelProps extends AriaTabPanelProps, RenderProps<TabPanelRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
2612
2577
  /**
2613
2578
  * Whether to mount the tab panel in the DOM even when it is not currently selected.
2614
2579
  * Inactive tab panels are inert and cannot be interacted with. They must be styled appropriately so this is clear to the user visually.
@@ -2657,7 +2622,7 @@ export const Tab: (props: TabProps & React.RefAttributes<object>) => React.React
2657
2622
  * A TabPanel provides the content for a tab.
2658
2623
  */
2659
2624
  export const TabPanel: (props: TabPanelProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
2660
- export interface TagGroupProps extends Omit<AriaTagGroupProps<unknown>, 'children' | 'items' | 'label' | 'description' | 'errorMessage' | 'keyboardDelegate'>, DOMProps, SlotProps {
2625
+ export interface TagGroupProps extends Omit<AriaTagGroupProps<unknown>, 'children' | 'items' | 'label' | 'description' | 'errorMessage' | 'keyboardDelegate'>, DOMProps, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2661
2626
  }
2662
2627
  export interface TagListRenderProps {
2663
2628
  /**
@@ -2680,7 +2645,7 @@ export interface TagListRenderProps {
2680
2645
  */
2681
2646
  state: ListState<unknown>;
2682
2647
  }
2683
- export interface TagListProps<T> extends Omit<CollectionProps<T>, 'disabledKeys'>, StyleRenderProps<TagListRenderProps> {
2648
+ export interface TagListProps<T> extends Omit<CollectionProps<T>, 'disabledKeys'>, StyleRenderProps<TagListRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
2684
2649
  /** Provides content to display when there are no items in the tag list. */
2685
2650
  renderEmptyState?: (props: TagListRenderProps) => ReactNode;
2686
2651
  }
@@ -2701,7 +2666,7 @@ export interface TagRenderProps extends Omit<ItemRenderProps, 'allowsDragging' |
2701
2666
  */
2702
2667
  allowsRemoving: boolean;
2703
2668
  }
2704
- export interface TagProps extends RenderProps<TagRenderProps>, LinkDOMProps, _HoverEvents1 {
2669
+ export interface TagProps extends RenderProps<TagRenderProps>, LinkDOMProps, _HoverEvents1, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
2705
2670
  /** A unique id for the tag. */
2706
2671
  id?: Key;
2707
2672
  /**
@@ -2716,6 +2681,44 @@ export interface TagProps extends RenderProps<TagRenderProps>, LinkDOMProps, _Ho
2716
2681
  * A Tag is an individual item within a TagList.
2717
2682
  */
2718
2683
  export const Tag: (props: TagProps & React.RefAttributes<object>) => React.ReactElement | null;
2684
+ export interface TextAreaProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'className' | 'style'>, HoverEvents, StyleRenderProps<InputRenderProps> {
2685
+ }
2686
+ export const TextAreaContext: React.Context<ContextValue<TextAreaProps, HTMLTextAreaElement>>;
2687
+ /**
2688
+ * A textarea allows a user to input mult-line text.
2689
+ */
2690
+ export const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<HTMLTextAreaElement>>;
2691
+ export interface TextFieldRenderProps {
2692
+ /**
2693
+ * Whether the text field is disabled.
2694
+ * @selector [data-disabled]
2695
+ */
2696
+ isDisabled: boolean;
2697
+ /**
2698
+ * Whether the value is invalid.
2699
+ * @selector [data-invalid]
2700
+ */
2701
+ isInvalid: boolean;
2702
+ /**
2703
+ * Whether the text field is read only.
2704
+ * @selector [data-readonly]
2705
+ */
2706
+ isReadOnly: boolean;
2707
+ /**
2708
+ * Whether the text field is required.
2709
+ * @selector [data-required]
2710
+ */
2711
+ isRequired: boolean;
2712
+ }
2713
+ export interface TextFieldProps extends Omit<AriaTextFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, Omit<DOMProps, 'style' | 'className' | 'children'>, SlotProps, RenderProps<TextFieldRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
2714
+ /** Whether the value is invalid. */
2715
+ isInvalid?: boolean;
2716
+ }
2717
+ export const TextFieldContext: React.Context<ContextValue<TextFieldProps, HTMLDivElement>>;
2718
+ /**
2719
+ * A text field allows a user to enter a plain text value with a keyboard.
2720
+ */
2721
+ export const TextField: (props: TextFieldProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
2719
2722
  export const UNSTABLE_ToastStateContext: React.Context<ToastState<any> | null>;
2720
2723
  export interface ToastRegionRenderProps<T> {
2721
2724
  /** A list of all currently visible toasts. */
@@ -2736,7 +2739,7 @@ export interface ToastRegionRenderProps<T> {
2736
2739
  */
2737
2740
  isFocusVisible: boolean;
2738
2741
  }
2739
- export interface ToastRegionProps<T> extends AriaToastRegionProps, StyleRenderProps<ToastRegionRenderProps<T>> {
2742
+ export interface ToastRegionProps<T> extends AriaToastRegionProps, StyleRenderProps<ToastRegionRenderProps<T>>, GlobalDOMAttributes<HTMLDivElement> {
2740
2743
  /** The queue of toasts to display. */
2741
2744
  queue: ToastQueue<T>;
2742
2745
  /** A function to render each toast, or children containing a `<ToastList>`. */
@@ -2771,7 +2774,7 @@ export interface ToastRenderProps<T> {
2771
2774
  */
2772
2775
  isFocusVisible: boolean;
2773
2776
  }
2774
- export interface ToastProps<T> extends AriaToastProps<T>, RenderProps<ToastRenderProps<T>> {
2777
+ export interface ToastProps<T> extends AriaToastProps<T>, RenderProps<ToastRenderProps<T>>, GlobalDOMAttributes<HTMLDivElement> {
2775
2778
  }
2776
2779
  /**
2777
2780
  * A Toast displays a brief, temporary notification of actions, errors, or other events in an application.
@@ -2792,7 +2795,7 @@ export interface ToggleButtonGroupRenderProps {
2792
2795
  */
2793
2796
  state: ToggleGroupState;
2794
2797
  }
2795
- export interface ToggleButtonGroupProps extends AriaToggleButtonGroupProps, RenderProps<ToggleButtonGroupRenderProps>, SlotProps {
2798
+ export interface ToggleButtonGroupProps extends AriaToggleButtonGroupProps, RenderProps<ToggleButtonGroupRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
2796
2799
  }
2797
2800
  export const ToggleButtonGroupContext: React.Context<ContextValue<ToggleButtonGroupProps, HTMLDivElement>>;
2798
2801
  export const ToggleGroupStateContext: React.Context<ToggleGroupState | null>;
@@ -2811,7 +2814,7 @@ export interface ToggleButtonRenderProps extends Omit<ButtonRenderProps, 'isPend
2811
2814
  */
2812
2815
  state: ToggleState;
2813
2816
  }
2814
- export interface ToggleButtonProps extends Omit<AriaToggleButtonProps, 'children' | 'elementType' | 'id'>, HoverEvents, SlotProps, RenderProps<ToggleButtonRenderProps> {
2817
+ export interface ToggleButtonProps extends Omit<AriaToggleButtonProps, 'children' | 'elementType' | 'id'>, HoverEvents, SlotProps, RenderProps<ToggleButtonRenderProps>, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
2815
2818
  /** When used in a ToggleButtonGroup, an identifier for the item in `selectedKeys`. When used standalone, a DOM id. */
2816
2819
  id?: Key;
2817
2820
  }
@@ -2827,7 +2830,7 @@ export interface ToolbarRenderProps {
2827
2830
  */
2828
2831
  orientation: _Orientation2;
2829
2832
  }
2830
- export interface ToolbarProps extends AriaToolbarProps, SlotProps, RenderProps<ToolbarRenderProps> {
2833
+ export interface ToolbarProps extends AriaToolbarProps, SlotProps, RenderProps<ToolbarRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
2831
2834
  }
2832
2835
  export const ToolbarContext: React.Context<ContextValue<ToolbarProps, HTMLDivElement>>;
2833
2836
  /**
@@ -2838,7 +2841,7 @@ export const Toolbar: (props: ToolbarProps & React.RefAttributes<HTMLDivElement>
2838
2841
  export interface TooltipTriggerComponentProps extends TooltipTriggerProps {
2839
2842
  children: ReactNode;
2840
2843
  }
2841
- export interface TooltipProps extends PositionProps, Pick<AriaPositionProps, 'arrowBoundaryOffset'>, OverlayTriggerProps, AriaLabelingProps, RenderProps<TooltipRenderProps> {
2844
+ export interface TooltipProps extends PositionProps, Pick<AriaPositionProps, 'arrowBoundaryOffset'>, OverlayTriggerProps, AriaLabelingProps, RenderProps<TooltipRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
2842
2845
  /**
2843
2846
  * The ref for the element which the tooltip positions itself with respect to.
2844
2847
  *
@@ -2931,8 +2934,11 @@ export interface TreeRenderProps {
2931
2934
  }
2932
2935
  interface TreeEmptyStateRenderProps extends Omit<TreeRenderProps, 'isEmpty'> {
2933
2936
  }
2934
- export interface TreeProps<T> extends Omit<AriaTreeProps<T>, 'children'>, MultipleSelection, CollectionProps<T>, StyleRenderProps<TreeRenderProps>, SlotProps, ScrollableProps<HTMLDivElement>, Expandable {
2935
- /** How multiple selection should behave in the tree. */
2937
+ export interface TreeProps<T> extends Omit<AriaTreeProps<T>, 'children'>, MultipleSelection, CollectionProps<T>, StyleRenderProps<TreeRenderProps>, SlotProps, Expandable, GlobalDOMAttributes<HTMLDivElement> {
2938
+ /**
2939
+ * How multiple selection should behave in the tree.
2940
+ * @default "toggle"
2941
+ */
2936
2942
  selectionBehavior?: SelectionBehavior;
2937
2943
  /** Provides content to display when there are no items in the list. */
2938
2944
  renderEmptyState?: (props: TreeEmptyStateRenderProps) => ReactNode;
@@ -2942,7 +2948,7 @@ export interface TreeProps<T> extends Omit<AriaTreeProps<T>, 'children'>, Multip
2942
2948
  */
2943
2949
  disabledBehavior?: _DisabledBehavior1;
2944
2950
  /** The drag and drop hooks returned by `useDragAndDrop` used to enable drag and drop behavior for the Tree. */
2945
- dragAndDropHooks?: DragAndDropHooks;
2951
+ dragAndDropHooks?: DragAndDropHooks<NoInfer<T>>;
2946
2952
  }
2947
2953
  export const TreeContext: React.Context<ContextValue<TreeProps<any>, HTMLDivElement>>;
2948
2954
  export const TreeStateContext: React.Context<TreeState<any> | null>;
@@ -2982,7 +2988,7 @@ export interface TreeItemContentRenderProps extends TreeItemRenderProps {
2982
2988
  export interface TreeItemContentProps extends Pick<RenderProps<TreeItemContentRenderProps>, 'children'> {
2983
2989
  }
2984
2990
  export const TreeItemContent: (props: TreeItemContentProps & React.RefAttributes<object>) => React.ReactElement | null;
2985
- export interface TreeItemProps<T = object> extends StyleRenderProps<TreeItemRenderProps>, LinkDOMProps, _HoverEvents1, Pick<AriaTreeItemOptions, 'hasChildItems'> {
2991
+ export interface TreeItemProps<T = object> extends StyleRenderProps<TreeItemRenderProps>, LinkDOMProps, _HoverEvents1, PressEvents, Pick<AriaTreeItemOptions, 'hasChildItems'>, Omit<GlobalDOMAttributes<HTMLDivElement>, 'onClick'> {
2986
2992
  /** The unique id of the tree row. */
2987
2993
  id?: Key;
2988
2994
  /** The object value that this tree item represents. When using dynamic collections, this is set automatically. */
@@ -3005,18 +3011,28 @@ export interface TreeItemProps<T = object> extends StyleRenderProps<TreeItemRend
3005
3011
  * A TreeItem represents an individual item in a Tree.
3006
3012
  */
3007
3013
  export const TreeItem: <T extends object>(props: TreeItemProps<T> & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
3008
- interface UNSTABLE_TreeLoadingIndicatorRenderProps {
3014
+ export interface TreeLoadMoreItemRenderProps {
3009
3015
  /**
3010
3016
  * What level the tree item has within the tree.
3011
3017
  * @selector [data-level]
3012
3018
  */
3013
3019
  level: number;
3014
3020
  }
3015
- interface TreeLoaderProps extends RenderProps<UNSTABLE_TreeLoadingIndicatorRenderProps>, StyleRenderProps<UNSTABLE_TreeLoadingIndicatorRenderProps> {
3021
+ export interface TreeLoadMoreItemProps extends Omit<LoadMoreSentinelProps, 'collection'>, RenderProps<TreeLoadMoreItemRenderProps> {
3022
+ /**
3023
+ * The load more spinner to render when loading additional items.
3024
+ */
3025
+ children?: ReactNode | ((values: TreeLoadMoreItemRenderProps & {
3026
+ defaultChildren: ReactNode | undefined;
3027
+ }) => ReactNode);
3028
+ /**
3029
+ * Whether or not the loading spinner should be rendered or not.
3030
+ */
3031
+ isLoading?: boolean;
3016
3032
  }
3017
- export const UNSTABLE_TreeLoadingIndicator: <T extends object>(props: TreeLoaderProps & React.RefAttributes<T>) => React.ReactElement | null;
3033
+ export const TreeLoadMoreItem: <T extends object>(props: TreeLoadMoreItemProps & React.RefAttributes<T>) => React.ReactElement | null;
3018
3034
  export { Collection, createLeafComponent as UNSTABLE_createLeafComponent, createBranchComponent as UNSTABLE_createBranchComponent, CollectionBuilder as UNSTABLE_CollectionBuilder } from '@react-aria/collections';
3019
- export { DIRECTORY_DRAG_TYPE, isDirectoryDropItem, isFileDropItem, isTextDropItem, SSRProvider, RouterProvider, I18nProvider, useLocale, useFilter, Pressable, Focusable } from 'react-aria';
3035
+ export { DIRECTORY_DRAG_TYPE, isDirectoryDropItem, isFileDropItem, isTextDropItem, SSRProvider, RouterProvider, I18nProvider, useLocale, useFilter, Pressable, Focusable, VisuallyHidden } from 'react-aria';
3020
3036
  export { FormValidationContext, parseColor, getColorChannels, ToastQueue as UNSTABLE_ToastQueue } from 'react-stately';
3021
3037
  export { ListLayout, GridLayout, WaterfallLayout } from '@react-stately/layout';
3022
3038
  export { Layout, LayoutInfo, Size, Rect, Point } from '@react-stately/virtualizer';