@cascivo/react 0.1.0 → 0.2.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 (256) hide show
  1. package/README.md +226 -168
  2. package/dist/cascivo.css +1 -1
  3. package/dist/index.d.ts +2619 -1
  4. package/dist/index.js +942 -760
  5. package/package.json +8 -8
  6. package/readme.body.md +225 -5
  7. package/dist/types/packages/components/src/_all-metas.d.ts +0 -2
  8. package/dist/types/packages/components/src/accordion/accordion.d.ts +0 -16
  9. package/dist/types/packages/components/src/accordion/accordion.meta.d.ts +0 -2
  10. package/dist/types/packages/components/src/alert/alert.d.ts +0 -13
  11. package/dist/types/packages/components/src/alert/alert.meta.d.ts +0 -2
  12. package/dist/types/packages/components/src/alert-dialog/alert-dialog.d.ts +0 -14
  13. package/dist/types/packages/components/src/alert-dialog/alert-dialog.meta.d.ts +0 -2
  14. package/dist/types/packages/components/src/aspect-ratio/aspect-ratio.d.ts +0 -7
  15. package/dist/types/packages/components/src/aspect-ratio/aspect-ratio.meta.d.ts +0 -2
  16. package/dist/types/packages/components/src/avatar/avatar.d.ts +0 -9
  17. package/dist/types/packages/components/src/avatar/avatar.meta.d.ts +0 -2
  18. package/dist/types/packages/components/src/badge/badge.d.ts +0 -6
  19. package/dist/types/packages/components/src/badge/badge.meta.d.ts +0 -2
  20. package/dist/types/packages/components/src/blockquote/blockquote.d.ts +0 -5
  21. package/dist/types/packages/components/src/blockquote/blockquote.meta.d.ts +0 -2
  22. package/dist/types/packages/components/src/blocks/app-shell/app-shell.d.ts +0 -1
  23. package/dist/types/packages/components/src/blocks/app-shell/app-shell.meta.d.ts +0 -2
  24. package/dist/types/packages/components/src/blocks/auth-login/auth-login.d.ts +0 -1
  25. package/dist/types/packages/components/src/blocks/auth-login/auth-login.meta.d.ts +0 -2
  26. package/dist/types/packages/components/src/blocks/auth-signup/auth-signup.d.ts +0 -1
  27. package/dist/types/packages/components/src/blocks/auth-signup/auth-signup.meta.d.ts +0 -2
  28. package/dist/types/packages/components/src/blocks/dashboard-overview/dashboard-overview.d.ts +0 -1
  29. package/dist/types/packages/components/src/blocks/dashboard-overview/dashboard-overview.meta.d.ts +0 -2
  30. package/dist/types/packages/components/src/blocks/dashboard-table/dashboard-table.d.ts +0 -2
  31. package/dist/types/packages/components/src/blocks/dashboard-table/dashboard-table.meta.d.ts +0 -2
  32. package/dist/types/packages/components/src/blocks/marketing-features/marketing-features.d.ts +0 -1
  33. package/dist/types/packages/components/src/blocks/marketing-features/marketing-features.meta.d.ts +0 -2
  34. package/dist/types/packages/components/src/blocks/marketing-hero/marketing-hero.d.ts +0 -1
  35. package/dist/types/packages/components/src/blocks/marketing-hero/marketing-hero.meta.d.ts +0 -2
  36. package/dist/types/packages/components/src/blocks/settings-profile/settings-profile.d.ts +0 -1
  37. package/dist/types/packages/components/src/blocks/settings-profile/settings-profile.meta.d.ts +0 -2
  38. package/dist/types/packages/components/src/blocks/types.d.ts +0 -12
  39. package/dist/types/packages/components/src/breadcrumb/breadcrumb.d.ts +0 -12
  40. package/dist/types/packages/components/src/breadcrumb/breadcrumb.meta.d.ts +0 -2
  41. package/dist/types/packages/components/src/button/button.d.ts +0 -7
  42. package/dist/types/packages/components/src/button/button.meta.d.ts +0 -2
  43. package/dist/types/packages/components/src/button-group/button-group.d.ts +0 -9
  44. package/dist/types/packages/components/src/button-group/button-group.meta.d.ts +0 -2
  45. package/dist/types/packages/components/src/calendar/calendar.d.ts +0 -35
  46. package/dist/types/packages/components/src/calendar/calendar.meta.d.ts +0 -2
  47. package/dist/types/packages/components/src/card/card.d.ts +0 -18
  48. package/dist/types/packages/components/src/card/card.meta.d.ts +0 -2
  49. package/dist/types/packages/components/src/carousel/carousel.d.ts +0 -17
  50. package/dist/types/packages/components/src/carousel/carousel.meta.d.ts +0 -2
  51. package/dist/types/packages/components/src/chat-bubble/chat-bubble.d.ts +0 -10
  52. package/dist/types/packages/components/src/chat-bubble/chat-bubble.meta.d.ts +0 -2
  53. package/dist/types/packages/components/src/checkbox/checkbox.d.ts +0 -6
  54. package/dist/types/packages/components/src/checkbox/checkbox.meta.d.ts +0 -2
  55. package/dist/types/packages/components/src/checkbox-card/checkbox-card.d.ts +0 -8
  56. package/dist/types/packages/components/src/checkbox-card/checkbox-card.meta.d.ts +0 -2
  57. package/dist/types/packages/components/src/checkbox-card/index.d.ts +0 -2
  58. package/dist/types/packages/components/src/code/code.d.ts +0 -5
  59. package/dist/types/packages/components/src/code/code.meta.d.ts +0 -2
  60. package/dist/types/packages/components/src/code-snippet/code-snippet.d.ts +0 -21
  61. package/dist/types/packages/components/src/code-snippet/code-snippet.meta.d.ts +0 -2
  62. package/dist/types/packages/components/src/collapsible/collapsible.d.ts +0 -16
  63. package/dist/types/packages/components/src/collapsible/collapsible.meta.d.ts +0 -2
  64. package/dist/types/packages/components/src/color-picker/color-picker.d.ts +0 -19
  65. package/dist/types/packages/components/src/color-picker/color-picker.meta.d.ts +0 -2
  66. package/dist/types/packages/components/src/combobox/combobox.d.ts +0 -27
  67. package/dist/types/packages/components/src/combobox/combobox.meta.d.ts +0 -2
  68. package/dist/types/packages/components/src/command-menu/command-menu.d.ts +0 -39
  69. package/dist/types/packages/components/src/command-menu/command-menu.meta.d.ts +0 -2
  70. package/dist/types/packages/components/src/contained-list/contained-list.d.ts +0 -11
  71. package/dist/types/packages/components/src/contained-list/contained-list.meta.d.ts +0 -2
  72. package/dist/types/packages/components/src/context-menu/context-menu.d.ts +0 -11
  73. package/dist/types/packages/components/src/context-menu/context-menu.meta.d.ts +0 -2
  74. package/dist/types/packages/components/src/copy-button/copy-button.d.ts +0 -11
  75. package/dist/types/packages/components/src/copy-button/copy-button.meta.d.ts +0 -2
  76. package/dist/types/packages/components/src/data-list/data-list.d.ts +0 -13
  77. package/dist/types/packages/components/src/data-list/data-list.meta.d.ts +0 -2
  78. package/dist/types/packages/components/src/data-table/data-table.d.ts +0 -60
  79. package/dist/types/packages/components/src/data-table/data-table.meta.d.ts +0 -2
  80. package/dist/types/packages/components/src/date-picker/date-picker.d.ts +0 -23
  81. package/dist/types/packages/components/src/date-picker/date-picker.meta.d.ts +0 -2
  82. package/dist/types/packages/components/src/date-range-picker/date-range-picker.d.ts +0 -32
  83. package/dist/types/packages/components/src/date-range-picker/date-range-picker.meta.d.ts +0 -2
  84. package/dist/types/packages/components/src/dock/dock.d.ts +0 -12
  85. package/dist/types/packages/components/src/dock/dock.meta.d.ts +0 -2
  86. package/dist/types/packages/components/src/drawer/drawer.d.ts +0 -29
  87. package/dist/types/packages/components/src/drawer/drawer.meta.d.ts +0 -2
  88. package/dist/types/packages/components/src/dropdown/dropdown.d.ts +0 -17
  89. package/dist/types/packages/components/src/dropdown/dropdown.meta.d.ts +0 -2
  90. package/dist/types/packages/components/src/editable/editable.d.ts +0 -10
  91. package/dist/types/packages/components/src/editable/editable.meta.d.ts +0 -2
  92. package/dist/types/packages/components/src/empty-state/empty-state.d.ts +0 -9
  93. package/dist/types/packages/components/src/empty-state/empty-state.meta.d.ts +0 -2
  94. package/dist/types/packages/components/src/field/field.d.ts +0 -24
  95. package/dist/types/packages/components/src/field/field.meta.d.ts +0 -2
  96. package/dist/types/packages/components/src/file-uploader/file-uploader.d.ts +0 -30
  97. package/dist/types/packages/components/src/file-uploader/file-uploader.meta.d.ts +0 -2
  98. package/dist/types/packages/components/src/filter/filter.d.ts +0 -16
  99. package/dist/types/packages/components/src/filter/filter.meta.d.ts +0 -2
  100. package/dist/types/packages/components/src/form/form.d.ts +0 -37
  101. package/dist/types/packages/components/src/form/form.meta.d.ts +0 -2
  102. package/dist/types/packages/components/src/form/standard-schema.d.ts +0 -24
  103. package/dist/types/packages/components/src/header/header.d.ts +0 -17
  104. package/dist/types/packages/components/src/header/header.meta.d.ts +0 -2
  105. package/dist/types/packages/components/src/header-panel/header-panel.d.ts +0 -13
  106. package/dist/types/packages/components/src/header-panel/header-panel.meta.d.ts +0 -2
  107. package/dist/types/packages/components/src/header-panel/index.d.ts +0 -2
  108. package/dist/types/packages/components/src/heading/heading.d.ts +0 -8
  109. package/dist/types/packages/components/src/heading/heading.meta.d.ts +0 -2
  110. package/dist/types/packages/components/src/hover-card/hover-card.d.ts +0 -16
  111. package/dist/types/packages/components/src/hover-card/hover-card.meta.d.ts +0 -2
  112. package/dist/types/packages/components/src/icon-button/icon-button.d.ts +0 -12
  113. package/dist/types/packages/components/src/icon-button/icon-button.meta.d.ts +0 -2
  114. package/dist/types/packages/components/src/indicator/indicator.d.ts +0 -8
  115. package/dist/types/packages/components/src/indicator/indicator.meta.d.ts +0 -2
  116. package/dist/types/packages/components/src/inline-loading/inline-loading.d.ts +0 -12
  117. package/dist/types/packages/components/src/inline-loading/inline-loading.meta.d.ts +0 -2
  118. package/dist/types/packages/components/src/input/input.d.ts +0 -8
  119. package/dist/types/packages/components/src/input/input.meta.d.ts +0 -2
  120. package/dist/types/packages/components/src/input-group/input-group.d.ts +0 -18
  121. package/dist/types/packages/components/src/input-group/input-group.meta.d.ts +0 -2
  122. package/dist/types/packages/components/src/item/item.d.ts +0 -22
  123. package/dist/types/packages/components/src/item/item.meta.d.ts +0 -2
  124. package/dist/types/packages/components/src/join/join.d.ts +0 -7
  125. package/dist/types/packages/components/src/join/join.meta.d.ts +0 -2
  126. package/dist/types/packages/components/src/kbd/kbd.d.ts +0 -5
  127. package/dist/types/packages/components/src/kbd/kbd.meta.d.ts +0 -2
  128. package/dist/types/packages/components/src/label/label.d.ts +0 -15
  129. package/dist/types/packages/components/src/label/label.meta.d.ts +0 -2
  130. package/dist/types/packages/components/src/link/link.d.ts +0 -7
  131. package/dist/types/packages/components/src/link/link.meta.d.ts +0 -2
  132. package/dist/types/packages/components/src/list/list.d.ts +0 -8
  133. package/dist/types/packages/components/src/list/list.meta.d.ts +0 -2
  134. package/dist/types/packages/components/src/menu/menu.d.ts +0 -17
  135. package/dist/types/packages/components/src/menu/menu.meta.d.ts +0 -2
  136. package/dist/types/packages/components/src/menu-button/menu-button.d.ts +0 -20
  137. package/dist/types/packages/components/src/menu-button/menu-button.meta.d.ts +0 -2
  138. package/dist/types/packages/components/src/menubar/menubar.d.ts +0 -18
  139. package/dist/types/packages/components/src/menubar/menubar.meta.d.ts +0 -2
  140. package/dist/types/packages/components/src/modal/modal.d.ts +0 -11
  141. package/dist/types/packages/components/src/modal/modal.meta.d.ts +0 -2
  142. package/dist/types/packages/components/src/multi-select/multi-select.d.ts +0 -21
  143. package/dist/types/packages/components/src/multi-select/multi-select.meta.d.ts +0 -2
  144. package/dist/types/packages/components/src/native-select/native-select.d.ts +0 -23
  145. package/dist/types/packages/components/src/native-select/native-select.meta.d.ts +0 -2
  146. package/dist/types/packages/components/src/navigation-menu/navigation-menu.d.ts +0 -15
  147. package/dist/types/packages/components/src/navigation-menu/navigation-menu.meta.d.ts +0 -2
  148. package/dist/types/packages/components/src/notification/notification.d.ts +0 -15
  149. package/dist/types/packages/components/src/notification/notification.meta.d.ts +0 -2
  150. package/dist/types/packages/components/src/number-input/number-input.d.ts +0 -18
  151. package/dist/types/packages/components/src/number-input/number-input.meta.d.ts +0 -2
  152. package/dist/types/packages/components/src/otp-input/otp-input.d.ts +0 -9
  153. package/dist/types/packages/components/src/otp-input/otp-input.meta.d.ts +0 -2
  154. package/dist/types/packages/components/src/overflow-menu/overflow-menu.d.ts +0 -18
  155. package/dist/types/packages/components/src/overflow-menu/overflow-menu.meta.d.ts +0 -2
  156. package/dist/types/packages/components/src/pagination/pagination.d.ts +0 -19
  157. package/dist/types/packages/components/src/pagination/pagination.meta.d.ts +0 -2
  158. package/dist/types/packages/components/src/password-input/password-input.d.ts +0 -12
  159. package/dist/types/packages/components/src/password-input/password-input.meta.d.ts +0 -2
  160. package/dist/types/packages/components/src/popover/index.d.ts +0 -4
  161. package/dist/types/packages/components/src/popover/popover.d.ts +0 -16
  162. package/dist/types/packages/components/src/popover/popover.meta.d.ts +0 -2
  163. package/dist/types/packages/components/src/popover/use-popover.d.ts +0 -17
  164. package/dist/types/packages/components/src/progress/progress.d.ts +0 -12
  165. package/dist/types/packages/components/src/progress/progress.meta.d.ts +0 -2
  166. package/dist/types/packages/components/src/progress-bar/progress-bar.d.ts +0 -11
  167. package/dist/types/packages/components/src/progress-bar/progress-bar.meta.d.ts +0 -2
  168. package/dist/types/packages/components/src/progress-circle/progress-circle.d.ts +0 -12
  169. package/dist/types/packages/components/src/progress-circle/progress-circle.meta.d.ts +0 -2
  170. package/dist/types/packages/components/src/progress-indicator/progress-indicator.d.ts +0 -11
  171. package/dist/types/packages/components/src/progress-indicator/progress-indicator.meta.d.ts +0 -2
  172. package/dist/types/packages/components/src/prose/prose.d.ts +0 -3
  173. package/dist/types/packages/components/src/prose/prose.meta.d.ts +0 -2
  174. package/dist/types/packages/components/src/radial-progress/radial-progress.d.ts +0 -11
  175. package/dist/types/packages/components/src/radial-progress/radial-progress.meta.d.ts +0 -2
  176. package/dist/types/packages/components/src/radio/radio.d.ts +0 -16
  177. package/dist/types/packages/components/src/radio/radio.meta.d.ts +0 -2
  178. package/dist/types/packages/components/src/radio-card/index.d.ts +0 -2
  179. package/dist/types/packages/components/src/radio-card/radio-card.d.ts +0 -19
  180. package/dist/types/packages/components/src/radio-card/radio-card.meta.d.ts +0 -2
  181. package/dist/types/packages/components/src/rating-group/rating-group.d.ts +0 -14
  182. package/dist/types/packages/components/src/rating-group/rating-group.meta.d.ts +0 -2
  183. package/dist/types/packages/components/src/resizable/resizable.d.ts +0 -13
  184. package/dist/types/packages/components/src/resizable/resizable.meta.d.ts +0 -2
  185. package/dist/types/packages/components/src/scroll-area/scroll-area.d.ts +0 -11
  186. package/dist/types/packages/components/src/scroll-area/scroll-area.meta.d.ts +0 -2
  187. package/dist/types/packages/components/src/search/search.d.ts +0 -15
  188. package/dist/types/packages/components/src/search/search.meta.d.ts +0 -2
  189. package/dist/types/packages/components/src/segmented-control/segmented-control.d.ts +0 -14
  190. package/dist/types/packages/components/src/segmented-control/segmented-control.meta.d.ts +0 -2
  191. package/dist/types/packages/components/src/select/select.d.ts +0 -15
  192. package/dist/types/packages/components/src/select/select.meta.d.ts +0 -2
  193. package/dist/types/packages/components/src/separator/separator.d.ts +0 -6
  194. package/dist/types/packages/components/src/separator/separator.meta.d.ts +0 -2
  195. package/dist/types/packages/components/src/sheet/sheet.d.ts +0 -9
  196. package/dist/types/packages/components/src/sheet/sheet.meta.d.ts +0 -2
  197. package/dist/types/packages/components/src/shell-header/index.d.ts +0 -2
  198. package/dist/types/packages/components/src/shell-header/shell-header.d.ts +0 -46
  199. package/dist/types/packages/components/src/shell-header/shell-header.meta.d.ts +0 -2
  200. package/dist/types/packages/components/src/side-nav/side-nav.d.ts +0 -33
  201. package/dist/types/packages/components/src/side-nav/side-nav.meta.d.ts +0 -2
  202. package/dist/types/packages/components/src/skeleton/skeleton.d.ts +0 -8
  203. package/dist/types/packages/components/src/skeleton/skeleton.meta.d.ts +0 -2
  204. package/dist/types/packages/components/src/skip-nav/skip-nav.d.ts +0 -14
  205. package/dist/types/packages/components/src/skip-nav/skip-nav.meta.d.ts +0 -2
  206. package/dist/types/packages/components/src/slider/slider.d.ts +0 -5
  207. package/dist/types/packages/components/src/slider/slider.meta.d.ts +0 -2
  208. package/dist/types/packages/components/src/spinner/spinner.d.ts +0 -6
  209. package/dist/types/packages/components/src/spinner/spinner.meta.d.ts +0 -2
  210. package/dist/types/packages/components/src/stack/stack.d.ts +0 -6
  211. package/dist/types/packages/components/src/stack/stack.meta.d.ts +0 -2
  212. package/dist/types/packages/components/src/stat/stat.d.ts +0 -9
  213. package/dist/types/packages/components/src/stat/stat.meta.d.ts +0 -2
  214. package/dist/types/packages/components/src/status/status.d.ts +0 -7
  215. package/dist/types/packages/components/src/status/status.meta.d.ts +0 -2
  216. package/dist/types/packages/components/src/steps/steps.d.ts +0 -12
  217. package/dist/types/packages/components/src/steps/steps.meta.d.ts +0 -2
  218. package/dist/types/packages/components/src/structured-list/structured-list.d.ts +0 -17
  219. package/dist/types/packages/components/src/structured-list/structured-list.meta.d.ts +0 -2
  220. package/dist/types/packages/components/src/swap/swap.d.ts +0 -11
  221. package/dist/types/packages/components/src/swap/swap.meta.d.ts +0 -2
  222. package/dist/types/packages/components/src/switcher/index.d.ts +0 -2
  223. package/dist/types/packages/components/src/switcher/switcher.d.ts +0 -16
  224. package/dist/types/packages/components/src/switcher/switcher.meta.d.ts +0 -2
  225. package/dist/types/packages/components/src/tabs/tabs.d.ts +0 -19
  226. package/dist/types/packages/components/src/tabs/tabs.meta.d.ts +0 -2
  227. package/dist/types/packages/components/src/tag/tag.d.ts +0 -8
  228. package/dist/types/packages/components/src/tag/tag.meta.d.ts +0 -2
  229. package/dist/types/packages/components/src/tags-input/tags-input.d.ts +0 -10
  230. package/dist/types/packages/components/src/tags-input/tags-input.meta.d.ts +0 -2
  231. package/dist/types/packages/components/src/text/text.d.ts +0 -8
  232. package/dist/types/packages/components/src/text/text.meta.d.ts +0 -2
  233. package/dist/types/packages/components/src/textarea/textarea.d.ts +0 -8
  234. package/dist/types/packages/components/src/textarea/textarea.meta.d.ts +0 -2
  235. package/dist/types/packages/components/src/tile/tile.d.ts +0 -25
  236. package/dist/types/packages/components/src/tile/tile.meta.d.ts +0 -2
  237. package/dist/types/packages/components/src/time-picker/time-picker.d.ts +0 -14
  238. package/dist/types/packages/components/src/time-picker/time-picker.meta.d.ts +0 -2
  239. package/dist/types/packages/components/src/timeline/timeline.d.ts +0 -14
  240. package/dist/types/packages/components/src/timeline/timeline.meta.d.ts +0 -2
  241. package/dist/types/packages/components/src/toast/toast.d.ts +0 -17
  242. package/dist/types/packages/components/src/toast/toast.meta.d.ts +0 -2
  243. package/dist/types/packages/components/src/toggle/toggle.d.ts +0 -9
  244. package/dist/types/packages/components/src/toggle/toggle.meta.d.ts +0 -2
  245. package/dist/types/packages/components/src/toggle-group/toggle-group.d.ts +0 -18
  246. package/dist/types/packages/components/src/toggle-group/toggle-group.meta.d.ts +0 -2
  247. package/dist/types/packages/components/src/toggletip/toggletip.d.ts +0 -17
  248. package/dist/types/packages/components/src/toggletip/toggletip.meta.d.ts +0 -2
  249. package/dist/types/packages/components/src/tooltip/tooltip.d.ts +0 -8
  250. package/dist/types/packages/components/src/tooltip/tooltip.meta.d.ts +0 -2
  251. package/dist/types/packages/components/src/tree-view/tree-view.d.ts +0 -25
  252. package/dist/types/packages/components/src/tree-view/tree-view.meta.d.ts +0 -2
  253. package/dist/types/packages/components/src/visually-hidden/visually-hidden.d.ts +0 -5
  254. package/dist/types/packages/components/src/visually-hidden/visually-hidden.meta.d.ts +0 -2
  255. package/dist/types/packages/react/src/index.d.ts +0 -122
  256. package/dist/types/packages/react/src/setup.d.ts +0 -1
package/dist/index.d.ts CHANGED
@@ -1 +1,2619 @@
1
- export * from './types/packages/react/src/index'
1
+ import { ErrorBoundary, FocusScope, Portal, RovingOrientation, Signal, SuspenseBoundary } from "@cascivo/core";
2
+ import { AnchorHTMLAttributes, ButtonHTMLAttributes, FormHTMLAttributes, HTMLAttributes, InputHTMLAttributes, LabelHTMLAttributes, LiHTMLAttributes, MouseEvent, ReactElement, ReactNode, SelectHTMLAttributes, TextareaHTMLAttributes } from "react";
3
+
4
+ interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
5
+ variant?: 'primary' | 'secondary' | 'ghost' | 'destructive';
6
+ size?: 'sm' | 'md' | 'lg';
7
+ loading?: boolean;
8
+ }
9
+ declare function Button({
10
+ variant,
11
+ size,
12
+ loading,
13
+ className,
14
+ disabled,
15
+ children,
16
+ ...props
17
+ }: ButtonProps): import("react").JSX.Element;
18
+ interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> {
19
+ label?: string;
20
+ hint?: string;
21
+ error?: string;
22
+ size?: 'sm' | 'md' | 'lg';
23
+ }
24
+ declare function Input({
25
+ label,
26
+ hint,
27
+ error,
28
+ size,
29
+ className,
30
+ id,
31
+ onFocus,
32
+ onBlur,
33
+ ...props
34
+ }: InputProps): import("react").JSX.Element;
35
+ interface CardProps extends HTMLAttributes<HTMLDivElement> {
36
+ variant?: 'default' | 'outlined' | 'elevated';
37
+ padding?: 'none' | 'sm' | 'md' | 'lg';
38
+ }
39
+ declare function Card({
40
+ variant,
41
+ padding,
42
+ className,
43
+ children,
44
+ ...props
45
+ }: CardProps): import("react").JSX.Element;
46
+ interface CardHeaderProps extends HTMLAttributes<HTMLDivElement> {}
47
+ declare function CardHeader({
48
+ className,
49
+ children,
50
+ ...props
51
+ }: CardHeaderProps): import("react").JSX.Element;
52
+ interface CardTitleProps extends HTMLAttributes<HTMLHeadingElement> {}
53
+ declare function CardTitle({
54
+ className,
55
+ children,
56
+ ...props
57
+ }: CardTitleProps): import("react").JSX.Element;
58
+ interface CardContentProps extends HTMLAttributes<HTMLDivElement> {}
59
+ declare function CardContent({
60
+ className,
61
+ children,
62
+ ...props
63
+ }: CardContentProps): import("react").JSX.Element;
64
+ interface CardFooterProps extends HTMLAttributes<HTMLDivElement> {}
65
+ declare function CardFooter({
66
+ className,
67
+ children,
68
+ ...props
69
+ }: CardFooterProps): import("react").JSX.Element;
70
+ interface BadgeProps extends HTMLAttributes<HTMLSpanElement> {
71
+ variant?: 'default' | 'secondary' | 'success' | 'warning' | 'destructive' | 'outline';
72
+ size?: 'sm' | 'md';
73
+ }
74
+ declare function Badge({
75
+ variant,
76
+ size,
77
+ className,
78
+ children,
79
+ ...props
80
+ }: BadgeProps): import("react").JSX.Element;
81
+ interface ModalProps {
82
+ open?: boolean;
83
+ onClose?: () => void;
84
+ title?: string;
85
+ description?: string;
86
+ children?: ReactNode;
87
+ className?: string;
88
+ size?: 'sm' | 'md' | 'lg';
89
+ }
90
+ declare function Modal({
91
+ open,
92
+ onClose,
93
+ title,
94
+ description,
95
+ children,
96
+ className,
97
+ size
98
+ }: ModalProps): import("react").JSX.Element;
99
+ interface SpinnerProps extends HTMLAttributes<HTMLSpanElement> {
100
+ size?: 'sm' | 'md' | 'lg';
101
+ label?: string;
102
+ }
103
+ declare function Spinner({
104
+ size,
105
+ label,
106
+ className,
107
+ ...props
108
+ }: SpinnerProps): import("react").JSX.Element;
109
+ interface SeparatorProps extends HTMLAttributes<HTMLElement> {
110
+ orientation?: 'horizontal' | 'vertical';
111
+ decorative?: boolean;
112
+ }
113
+ declare function Separator({
114
+ orientation,
115
+ decorative,
116
+ className,
117
+ ...props
118
+ }: SeparatorProps): import("react").JSX.Element;
119
+ interface AlertProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
120
+ variant?: 'default' | 'info' | 'success' | 'warning' | 'destructive';
121
+ title?: string;
122
+ icon?: ReactNode;
123
+ dismissible?: boolean;
124
+ onDismiss?: () => void;
125
+ action?: {
126
+ label: string;
127
+ onClick: () => void;
128
+ };
129
+ }
130
+ declare function Alert({
131
+ variant,
132
+ title,
133
+ icon,
134
+ dismissible,
135
+ onDismiss,
136
+ action,
137
+ className,
138
+ children,
139
+ ...props
140
+ }: AlertProps): import("react").JSX.Element | null;
141
+ interface AvatarProps extends HTMLAttributes<HTMLSpanElement> {
142
+ src?: string;
143
+ alt?: string;
144
+ fallback?: string;
145
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
146
+ status?: 'online' | 'offline' | 'busy';
147
+ }
148
+ declare function Avatar({
149
+ src,
150
+ alt,
151
+ fallback,
152
+ size,
153
+ status,
154
+ className,
155
+ ...props
156
+ }: AvatarProps): import("react").JSX.Element;
157
+ interface TextareaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
158
+ label?: string;
159
+ hint?: string;
160
+ error?: string;
161
+ resize?: 'none' | 'vertical' | 'both';
162
+ }
163
+ declare function Textarea({
164
+ label,
165
+ hint,
166
+ error,
167
+ resize,
168
+ rows,
169
+ className,
170
+ id,
171
+ onFocus,
172
+ onBlur,
173
+ ...props
174
+ }: TextareaProps): import("react").JSX.Element;
175
+ interface SelectOption {
176
+ value: string;
177
+ label: string;
178
+ disabled?: boolean;
179
+ }
180
+ interface SelectProps extends Omit<SelectHTMLAttributes<HTMLSelectElement>, 'size'> {
181
+ label?: string;
182
+ hint?: string;
183
+ error?: string;
184
+ placeholder?: string;
185
+ options: SelectOption[];
186
+ size?: 'sm' | 'md' | 'lg';
187
+ }
188
+ declare function Select({
189
+ label,
190
+ hint,
191
+ error,
192
+ placeholder,
193
+ options,
194
+ size,
195
+ className,
196
+ id,
197
+ defaultValue,
198
+ value,
199
+ onFocus,
200
+ onBlur,
201
+ ...props
202
+ }: SelectProps): import("react").JSX.Element;
203
+ interface CheckboxProps extends InputHTMLAttributes<HTMLInputElement> {
204
+ label?: string;
205
+ indeterminate?: boolean;
206
+ }
207
+ declare function Checkbox({
208
+ label,
209
+ indeterminate,
210
+ className,
211
+ id,
212
+ disabled,
213
+ ...props
214
+ }: CheckboxProps): import("react").JSX.Element;
215
+ interface RadioProps extends InputHTMLAttributes<HTMLInputElement> {
216
+ label?: string;
217
+ value: string;
218
+ }
219
+ declare function Radio({
220
+ label,
221
+ className,
222
+ id,
223
+ disabled,
224
+ value,
225
+ ...props
226
+ }: RadioProps): import("react").JSX.Element;
227
+ interface RadioGroupProps {
228
+ name: string;
229
+ value?: string;
230
+ defaultValue?: string;
231
+ onChange?: (value: string) => void;
232
+ orientation?: 'horizontal' | 'vertical';
233
+ className?: string;
234
+ children: ReactNode;
235
+ }
236
+ declare function RadioGroup({
237
+ name,
238
+ value,
239
+ defaultValue,
240
+ onChange,
241
+ orientation,
242
+ className,
243
+ children
244
+ }: RadioGroupProps): import("react").JSX.Element;
245
+ interface ToggleProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'onChange'> {
246
+ checked?: boolean;
247
+ defaultChecked?: boolean;
248
+ onChange?: (checked: boolean) => void;
249
+ label?: string;
250
+ size?: 'sm' | 'md';
251
+ }
252
+ declare function Toggle({
253
+ checked,
254
+ defaultChecked,
255
+ onChange,
256
+ label,
257
+ size,
258
+ className,
259
+ disabled,
260
+ ...props
261
+ }: ToggleProps): import("react").JSX.Element;
262
+ interface SliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'> {
263
+ label?: string;
264
+ }
265
+ declare function Slider({
266
+ label,
267
+ className,
268
+ id,
269
+ min,
270
+ max,
271
+ step,
272
+ disabled,
273
+ ...props
274
+ }: SliderProps): import("react").JSX.Element;
275
+ interface TooltipProps {
276
+ content: ReactNode;
277
+ placement?: 'top' | 'right' | 'bottom' | 'left';
278
+ children: ReactElement;
279
+ delay?: number;
280
+ }
281
+ declare function Tooltip({
282
+ content,
283
+ placement,
284
+ children,
285
+ delay
286
+ }: TooltipProps): import("react").JSX.Element;
287
+ interface DropdownItem {
288
+ label: string;
289
+ value: string;
290
+ icon?: ReactNode;
291
+ disabled?: boolean;
292
+ separator?: boolean;
293
+ }
294
+ interface DropdownProps {
295
+ trigger: ReactElement;
296
+ items: DropdownItem[];
297
+ onSelect?: (value: string) => void;
298
+ placement?: 'bottom-start' | 'bottom-end';
299
+ open?: boolean;
300
+ onOpenChange?: (open: boolean) => void;
301
+ }
302
+ declare function Dropdown({
303
+ trigger,
304
+ items,
305
+ onSelect,
306
+ placement,
307
+ open,
308
+ onOpenChange
309
+ }: DropdownProps): import("react").JSX.Element;
310
+ type ToastVariant = 'default' | 'success' | 'warning' | 'destructive';
311
+ interface ToastOptions {
312
+ title: string;
313
+ description?: string;
314
+ variant?: ToastVariant;
315
+ duration?: number;
316
+ }
317
+ declare function enqueue(options: ToastOptions): void;
318
+ declare function ToastProvider({
319
+ children
320
+ }: {
321
+ children: ReactNode;
322
+ }): import("react").JSX.Element;
323
+ declare function useToast(): {
324
+ toast: typeof enqueue;
325
+ };
326
+ declare function dismissAllToasts(): void;
327
+ interface TabsProps {
328
+ defaultValue?: string;
329
+ value?: string;
330
+ onValueChange?: (value: string) => void;
331
+ className?: string;
332
+ children: ReactNode;
333
+ }
334
+ declare function Tabs({
335
+ defaultValue,
336
+ value,
337
+ onValueChange,
338
+ className,
339
+ children
340
+ }: TabsProps): import("react").JSX.Element;
341
+ declare function TabsList({
342
+ className,
343
+ children,
344
+ ...props
345
+ }: HTMLAttributes<HTMLDivElement>): import("react").JSX.Element;
346
+ interface TabsTriggerProps extends HTMLAttributes<HTMLButtonElement> {
347
+ value: string;
348
+ disabled?: boolean;
349
+ }
350
+ declare function TabsTrigger(props: TabsTriggerProps): import("react").JSX.Element;
351
+ interface TabsContentProps extends HTMLAttributes<HTMLDivElement> {
352
+ value: string;
353
+ }
354
+ declare function TabsContent(props: TabsContentProps): import("react").JSX.Element;
355
+ interface AccordionProps {
356
+ type?: 'single' | 'multiple';
357
+ defaultValue?: string | string[];
358
+ value?: string | string[];
359
+ onValueChange?: (value: string | string[]) => void;
360
+ className?: string;
361
+ children: ReactNode;
362
+ }
363
+ declare function Accordion({
364
+ type,
365
+ defaultValue,
366
+ value,
367
+ onValueChange,
368
+ className,
369
+ children
370
+ }: AccordionProps): import("react").JSX.Element;
371
+ interface AccordionItemProps extends HTMLAttributes<HTMLDivElement> {
372
+ value: string;
373
+ }
374
+ declare function AccordionItem({
375
+ value,
376
+ className,
377
+ children,
378
+ ...props
379
+ }: AccordionItemProps): import("react").JSX.Element;
380
+ declare function AccordionTrigger(props: HTMLAttributes<HTMLButtonElement>): import("react").JSX.Element;
381
+ declare function AccordionContent(props: HTMLAttributes<HTMLDivElement>): import("react").JSX.Element;
382
+ interface KbdProps extends HTMLAttributes<HTMLElement> {
383
+ size?: 'sm' | 'md';
384
+ }
385
+ declare function Kbd({
386
+ size,
387
+ className,
388
+ children,
389
+ ...props
390
+ }: KbdProps): import("react").JSX.Element;
391
+ interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
392
+ variant?: 'standalone' | 'inline';
393
+ size?: 'sm' | 'md' | 'lg';
394
+ external?: boolean;
395
+ }
396
+ declare function Link({
397
+ variant,
398
+ size,
399
+ external,
400
+ className,
401
+ children,
402
+ ...props
403
+ }: LinkProps): import("react").JSX.Element;
404
+ interface BreadcrumbItem {
405
+ label: string;
406
+ href?: string;
407
+ }
408
+ interface BreadcrumbProps {
409
+ items: BreadcrumbItem[];
410
+ maxVisible?: number;
411
+ className?: string;
412
+ /** Accessible label for the nav landmark */
413
+ ariaLabel?: string;
414
+ }
415
+ declare function Breadcrumb({
416
+ items,
417
+ maxVisible,
418
+ className,
419
+ ariaLabel
420
+ }: BreadcrumbProps): import("react").JSX.Element;
421
+ interface HeaderLink {
422
+ label: string;
423
+ href: string;
424
+ active?: boolean;
425
+ }
426
+ interface HeaderLabels {
427
+ nav?: string;
428
+ }
429
+ interface HeaderProps extends HTMLAttributes<HTMLElement> {
430
+ brand?: ReactNode;
431
+ links?: HeaderLink[];
432
+ actions?: ReactNode;
433
+ sticky?: boolean;
434
+ labels?: HeaderLabels;
435
+ }
436
+ declare function Header({
437
+ brand,
438
+ links,
439
+ actions,
440
+ sticky,
441
+ labels,
442
+ className,
443
+ ...props
444
+ }: HeaderProps): import("react").JSX.Element;
445
+ interface SideNavSubItem {
446
+ label: string;
447
+ href: string;
448
+ active?: boolean;
449
+ }
450
+ interface SideNavItem {
451
+ label: string;
452
+ href?: string;
453
+ icon?: ReactNode;
454
+ active?: boolean;
455
+ items?: SideNavSubItem[];
456
+ onClick?: (e: MouseEvent<HTMLAnchorElement>) => void;
457
+ }
458
+ interface SideNavGroup {
459
+ label?: string;
460
+ items: SideNavItem[];
461
+ }
462
+ interface SideNavProps {
463
+ items?: SideNavItem[];
464
+ groups?: SideNavGroup[];
465
+ collapsed?: boolean;
466
+ defaultCollapsed?: boolean;
467
+ onCollapsedChange?: (collapsed: boolean) => void;
468
+ ariaLabel?: string;
469
+ collapseLabel?: string;
470
+ expandLabel?: string;
471
+ expandOnHover?: boolean;
472
+ showCollapseToggle?: boolean;
473
+ footer?: ReactNode;
474
+ className?: string;
475
+ }
476
+ declare function SideNav({
477
+ items,
478
+ groups,
479
+ collapsed,
480
+ defaultCollapsed,
481
+ onCollapsedChange,
482
+ ariaLabel,
483
+ collapseLabel,
484
+ expandLabel,
485
+ expandOnHover,
486
+ showCollapseToggle,
487
+ footer,
488
+ className
489
+ }: SideNavProps): import("react").JSX.Element;
490
+ interface PaginationLabels {
491
+ nav?: string;
492
+ itemsPerPage?: string;
493
+ pageOf?: (page: number, total: number) => string;
494
+ range?: (start: number, end: number, total: number) => string;
495
+ previous?: string;
496
+ next?: string;
497
+ }
498
+ interface PaginationProps {
499
+ page: number;
500
+ pageSize: number;
501
+ totalItems: number;
502
+ onPageChange: (page: number) => void;
503
+ onPageSizeChange?: (size: number) => void;
504
+ pageSizeOptions?: number[];
505
+ labels?: PaginationLabels;
506
+ className?: string;
507
+ }
508
+ declare function Pagination({
509
+ page,
510
+ pageSize,
511
+ totalItems,
512
+ onPageChange,
513
+ onPageSizeChange,
514
+ pageSizeOptions,
515
+ labels,
516
+ className
517
+ }: PaginationProps): import("react").JSX.Element;
518
+ interface ProgressStep {
519
+ label: string;
520
+ description?: string;
521
+ }
522
+ interface ProgressIndicatorProps {
523
+ steps: ProgressStep[];
524
+ currentIndex: number;
525
+ vertical?: boolean;
526
+ className?: string;
527
+ }
528
+ declare function ProgressIndicator({
529
+ steps,
530
+ currentIndex,
531
+ vertical,
532
+ className
533
+ }: ProgressIndicatorProps): import("react").JSX.Element;
534
+ interface TagProps extends HTMLAttributes<HTMLSpanElement> {
535
+ variant?: 'default' | 'info' | 'success' | 'warning' | 'error';
536
+ size?: 'sm' | 'md';
537
+ onDismiss?: () => void;
538
+ dismissLabel?: string;
539
+ }
540
+ declare function Tag$1({
541
+ variant,
542
+ size,
543
+ onDismiss,
544
+ dismissLabel,
545
+ className,
546
+ children,
547
+ ...props
548
+ }: TagProps): import("react").JSX.Element;
549
+ interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {
550
+ variant?: 'text' | 'circle' | 'rect';
551
+ width?: string;
552
+ height?: string;
553
+ lines?: number;
554
+ }
555
+ declare function Skeleton({
556
+ variant,
557
+ width,
558
+ height,
559
+ lines,
560
+ className,
561
+ style,
562
+ ...props
563
+ }: SkeletonProps): import("react").JSX.Element;
564
+ interface ProgressBarProps {
565
+ /** Current value from 0 to max. Omit for an indeterminate bar. */
566
+ value?: number;
567
+ max?: number;
568
+ label?: string;
569
+ helperText?: string;
570
+ size?: 'sm' | 'md';
571
+ status?: 'active' | 'success' | 'error';
572
+ className?: string;
573
+ }
574
+ declare function ProgressBar({
575
+ value,
576
+ max,
577
+ label,
578
+ helperText,
579
+ size,
580
+ status,
581
+ className
582
+ }: ProgressBarProps): import("react").JSX.Element;
583
+ interface EmptyStateProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
584
+ icon?: ReactNode;
585
+ title: string;
586
+ description?: string;
587
+ action?: ReactNode;
588
+ size?: 'md' | 'lg';
589
+ }
590
+ declare function EmptyState({
591
+ icon,
592
+ title,
593
+ description,
594
+ action,
595
+ size,
596
+ className,
597
+ ...props
598
+ }: EmptyStateProps): import("react").JSX.Element;
599
+ interface OverflowMenuItem {
600
+ label: string;
601
+ value: string;
602
+ icon?: ReactNode;
603
+ disabled?: boolean;
604
+ destructive?: boolean;
605
+ }
606
+ interface OverflowMenuProps {
607
+ items: OverflowMenuItem[];
608
+ onSelect?: (value: string) => void;
609
+ placement?: 'bottom-start' | 'bottom-end';
610
+ ariaLabel?: string;
611
+ size?: 'sm' | 'md';
612
+ disabled?: boolean;
613
+ className?: string;
614
+ }
615
+ declare function OverflowMenu({
616
+ items,
617
+ onSelect,
618
+ placement,
619
+ ariaLabel,
620
+ size,
621
+ disabled,
622
+ className
623
+ }: OverflowMenuProps): import("react").JSX.Element;
624
+ interface SearchProps {
625
+ value?: string;
626
+ defaultValue?: string;
627
+ onChange?: (value: string) => void;
628
+ onSearch?: (value: string) => void;
629
+ debounceMs?: number;
630
+ placeholder?: string;
631
+ size?: 'sm' | 'md' | 'lg';
632
+ label?: string;
633
+ disabled?: boolean;
634
+ clearLabel?: string;
635
+ id?: string;
636
+ className?: string;
637
+ }
638
+ declare function Search({
639
+ value,
640
+ defaultValue,
641
+ onChange,
642
+ onSearch,
643
+ debounceMs,
644
+ placeholder,
645
+ size,
646
+ label,
647
+ disabled,
648
+ clearLabel,
649
+ id,
650
+ className
651
+ }: SearchProps): import("react").JSX.Element;
652
+ interface NumberInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step'> {
653
+ value?: number | null;
654
+ defaultValue?: number;
655
+ onChange?: (value: number | null) => void;
656
+ min?: number;
657
+ max?: number;
658
+ step?: number;
659
+ precision?: number;
660
+ formatOptions?: Intl.NumberFormatOptions;
661
+ label?: string;
662
+ hint?: string;
663
+ error?: string;
664
+ size?: 'sm' | 'md' | 'lg';
665
+ incrementLabel?: string;
666
+ decrementLabel?: string;
667
+ }
668
+ declare function NumberInput({
669
+ value,
670
+ defaultValue,
671
+ onChange,
672
+ min,
673
+ max,
674
+ step,
675
+ precision,
676
+ formatOptions,
677
+ label,
678
+ hint,
679
+ error,
680
+ size,
681
+ disabled,
682
+ incrementLabel,
683
+ decrementLabel,
684
+ className,
685
+ id,
686
+ onFocus,
687
+ onBlur,
688
+ onKeyDown,
689
+ ...props
690
+ }: NumberInputProps): import("react").JSX.Element;
691
+ interface Column<Row> {
692
+ key: string;
693
+ header: string;
694
+ sortable?: boolean;
695
+ render?: (row: Row) => ReactNode;
696
+ align?: 'start' | 'end';
697
+ width?: string;
698
+ }
699
+ type SortDirection = 'asc' | 'desc';
700
+ interface SortState {
701
+ key: string;
702
+ direction: SortDirection;
703
+ }
704
+ interface DataTableLabels {
705
+ search?: string;
706
+ empty?: string;
707
+ selectAll?: string;
708
+ selectRow?: string;
709
+ itemsSelected?: (n: number) => string;
710
+ expandRow?: string;
711
+ }
712
+ interface DataTableProps<Row> {
713
+ columns: Column<Row>[];
714
+ rows: Row[];
715
+ getRowId?: (row: Row) => string;
716
+ sort?: SortState;
717
+ defaultSort?: SortState;
718
+ sortMode?: 'client' | 'server';
719
+ onSortChange?: (sort: SortState | undefined) => void;
720
+ searchable?: boolean;
721
+ pagination?: {
722
+ pageSize: number;
723
+ pageSizeOptions?: number[];
724
+ };
725
+ selection?: {
726
+ mode: 'single' | 'multi';
727
+ selected?: string[];
728
+ onChange?: (ids: string[]) => void;
729
+ };
730
+ batchActions?: {
731
+ label: string;
732
+ onClick: (selectedIds: string[]) => void;
733
+ }[];
734
+ renderExpandedRow?: (row: Row) => ReactNode;
735
+ density?: 'compact' | 'normal' | 'relaxed';
736
+ zebra?: boolean;
737
+ stickyHeader?: boolean;
738
+ loading?: boolean;
739
+ emptyState?: ReactNode;
740
+ title?: string;
741
+ description?: string;
742
+ labels?: DataTableLabels;
743
+ className?: string;
744
+ virtualized?: boolean;
745
+ rowHeight?: number;
746
+ windowSize?: number;
747
+ overscan?: number;
748
+ }
749
+ declare function DataTable<Row>({
750
+ columns,
751
+ rows,
752
+ getRowId,
753
+ sort,
754
+ defaultSort,
755
+ sortMode,
756
+ onSortChange,
757
+ searchable,
758
+ pagination,
759
+ selection,
760
+ batchActions,
761
+ renderExpandedRow,
762
+ density,
763
+ zebra,
764
+ stickyHeader,
765
+ loading,
766
+ emptyState,
767
+ title,
768
+ description,
769
+ labels,
770
+ className,
771
+ virtualized,
772
+ rowHeight,
773
+ windowSize,
774
+ overscan
775
+ }: DataTableProps<Row>): import("react").JSX.Element;
776
+ interface CommandPage {
777
+ placeholder?: string;
778
+ groups: CommandGroup[];
779
+ }
780
+ interface CommandItem {
781
+ id: string;
782
+ label: string;
783
+ icon?: ReactNode;
784
+ shortcut?: string[];
785
+ keywords?: string[];
786
+ /** Exactly one of onSelect or page is required */
787
+ onSelect?: () => void;
788
+ disabled?: boolean;
789
+ page?: CommandPage;
790
+ }
791
+ interface CommandGroup {
792
+ heading?: string;
793
+ items: CommandItem[];
794
+ }
795
+ interface CommandMenuProps {
796
+ open: boolean;
797
+ onOpenChange: (open: boolean) => void;
798
+ groups: CommandGroup[];
799
+ placeholder?: string;
800
+ emptyLabel?: string;
801
+ hotkey?: boolean;
802
+ label?: string;
803
+ loading?: boolean;
804
+ onQueryChange?: (query: string) => void;
805
+ className?: string;
806
+ }
807
+ /**
808
+ * Fuzzy subsequence matcher. Every character of `query` must appear in order
809
+ * (case-insensitive) in `text`. Returns 0 for no match; higher is better.
810
+ * Consecutive runs and word-start matches score bonuses.
811
+ */
812
+ declare function fuzzyScore(query: string, text: string): number;
813
+ declare function CommandMenu({
814
+ open,
815
+ onOpenChange,
816
+ groups,
817
+ placeholder,
818
+ emptyLabel,
819
+ hotkey,
820
+ label,
821
+ loading,
822
+ onQueryChange,
823
+ className
824
+ }: CommandMenuProps): import("react").JSX.Element;
825
+ interface StandardSchemaV1<Input = unknown, Output = Input> {
826
+ readonly '~standard': {
827
+ readonly version: 1;
828
+ readonly vendor: string;
829
+ readonly validate: (value: unknown) => StandardResult<Output> | Promise<StandardResult<Output>>;
830
+ readonly types?: {
831
+ readonly input: Input;
832
+ readonly output: Output;
833
+ } | undefined;
834
+ };
835
+ }
836
+ type StandardResult<Output> = {
837
+ readonly value: Output;
838
+ readonly issues?: undefined;
839
+ } | {
840
+ readonly issues: ReadonlyArray<StandardIssue>;
841
+ };
842
+ interface StandardIssue {
843
+ readonly message: string;
844
+ readonly path?: ReadonlyArray<string | number | {
845
+ readonly key: string | number;
846
+ }>;
847
+ }
848
+ type Errors<T> = Partial<Record<keyof T, string>>;
849
+ type Touched<T> = Partial<Record<keyof T, boolean>>;
850
+ interface FormConfig<T extends Record<string, unknown>> {
851
+ initialValues: T;
852
+ /** Sync or async; return a (partial) field→message map. Empty map = valid. */
853
+ validate?: (values: T) => Errors<T> | Promise<Errors<T>>;
854
+ /** Standard Schema V1 compatible schema (zod, valibot, arktype, …). Runs before validate(). */
855
+ schema?: StandardSchemaV1;
856
+ }
857
+ interface FormStore<T extends Record<string, unknown>> {
858
+ values: Signal<T>;
859
+ errors: Signal<Errors<T>>;
860
+ touched: Signal<Touched<T>>;
861
+ submitting: Signal<boolean>;
862
+ field<K extends keyof T>(name: K): {
863
+ value: T[K];
864
+ onChange: (value: T[K]) => void;
865
+ onBlur: () => void;
866
+ error: string | undefined;
867
+ };
868
+ setValue<K extends keyof T>(name: K, value: T[K]): void;
869
+ submit(onValid: (values: T) => void | Promise<void>): Promise<void>;
870
+ reset(): void;
871
+ }
872
+ declare function createForm<T extends Record<string, unknown>>(config: FormConfig<T>): FormStore<T>;
873
+ /** Stable per-mount form store. Config is captured on first render. */
874
+ declare function useForm<T extends Record<string, unknown>>(config: FormConfig<T>): FormStore<T>;
875
+ interface FormProps<T extends Record<string, unknown>> extends Omit<FormHTMLAttributes<HTMLFormElement>, 'onSubmit'> {
876
+ form: FormStore<T>;
877
+ onValid: (values: T) => void | Promise<void>;
878
+ children: ReactNode;
879
+ }
880
+ declare function Form<T extends Record<string, unknown>>({
881
+ form,
882
+ onValid,
883
+ children,
884
+ className,
885
+ ...props
886
+ }: FormProps<T>): import("react").JSX.Element;
887
+ interface ComboboxOption {
888
+ value: string;
889
+ label: string;
890
+ disabled?: boolean;
891
+ }
892
+ interface ComboboxLabels {
893
+ placeholder?: string;
894
+ empty?: string;
895
+ clear?: string;
896
+ }
897
+ interface ComboboxProps {
898
+ options: ComboboxOption[];
899
+ value?: string;
900
+ defaultValue?: string;
901
+ onChange?: (value: string | undefined) => void;
902
+ clearable?: boolean;
903
+ searchable?: boolean;
904
+ label?: string;
905
+ hint?: string;
906
+ error?: string;
907
+ size?: 'sm' | 'md' | 'lg';
908
+ disabled?: boolean;
909
+ labels?: ComboboxLabels;
910
+ className?: string;
911
+ id?: string;
912
+ }
913
+ declare function Combobox({
914
+ options,
915
+ value,
916
+ defaultValue,
917
+ onChange,
918
+ clearable,
919
+ searchable,
920
+ label,
921
+ hint,
922
+ error,
923
+ size,
924
+ disabled,
925
+ labels,
926
+ className,
927
+ id
928
+ }: ComboboxProps): import("react").JSX.Element;
929
+ interface DatePickerLabels {
930
+ placeholder?: string;
931
+ previousMonth?: string;
932
+ nextMonth?: string;
933
+ clear?: string;
934
+ }
935
+ interface DatePickerProps {
936
+ value?: string;
937
+ defaultValue?: string;
938
+ onChange?: (value: string | undefined) => void;
939
+ min?: string;
940
+ max?: string;
941
+ clearable?: boolean;
942
+ label?: string;
943
+ hint?: string;
944
+ error?: string;
945
+ size?: 'sm' | 'md' | 'lg';
946
+ disabled?: boolean;
947
+ labels?: DatePickerLabels;
948
+ className?: string;
949
+ id?: string;
950
+ }
951
+ declare function DatePicker({
952
+ value,
953
+ defaultValue,
954
+ onChange,
955
+ min,
956
+ max,
957
+ clearable,
958
+ label,
959
+ hint,
960
+ error,
961
+ size,
962
+ disabled,
963
+ labels,
964
+ className,
965
+ id
966
+ }: DatePickerProps): import("react").JSX.Element;
967
+ interface UploaderFile {
968
+ id: string;
969
+ name: string;
970
+ size?: number;
971
+ status: 'uploading' | 'complete' | 'error';
972
+ errorMessage?: string;
973
+ }
974
+ interface FileUploaderLabels {
975
+ label?: string;
976
+ drop?: string;
977
+ remove?: string;
978
+ uploading?: string;
979
+ complete?: string;
980
+ error?: string;
981
+ }
982
+ interface FileUploaderProps {
983
+ files?: UploaderFile[];
984
+ onFilesAdded?: (files: File[]) => void;
985
+ onRemove?: (id: string) => void;
986
+ multiple?: boolean;
987
+ accept?: string;
988
+ maxSize?: number;
989
+ onRejected?: (files: File[], reason: 'size' | 'type') => void;
990
+ label?: string;
991
+ hint?: string;
992
+ labels?: FileUploaderLabels;
993
+ disabled?: boolean;
994
+ className?: string;
995
+ }
996
+ declare function FileUploader({
997
+ files,
998
+ onFilesAdded,
999
+ onRemove,
1000
+ multiple,
1001
+ accept,
1002
+ maxSize,
1003
+ onRejected,
1004
+ label,
1005
+ hint,
1006
+ labels,
1007
+ disabled,
1008
+ className
1009
+ }: FileUploaderProps): import("react").JSX.Element;
1010
+ interface TimePickerProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step'> {
1011
+ value?: string;
1012
+ defaultValue?: string;
1013
+ onChange?: (value: string) => void;
1014
+ min?: string;
1015
+ max?: string;
1016
+ step?: number;
1017
+ label?: string;
1018
+ hint?: string;
1019
+ error?: string;
1020
+ size?: 'sm' | 'md' | 'lg';
1021
+ }
1022
+ declare function TimePicker({
1023
+ value,
1024
+ defaultValue,
1025
+ onChange,
1026
+ min,
1027
+ max,
1028
+ step,
1029
+ label,
1030
+ hint,
1031
+ error,
1032
+ size,
1033
+ className,
1034
+ id,
1035
+ onFocus,
1036
+ onBlur,
1037
+ ...props
1038
+ }: TimePickerProps): import("react").JSX.Element;
1039
+ interface UsePopoverOptions {
1040
+ open?: boolean;
1041
+ onOpenChange?: (open: boolean) => void;
1042
+ placement?: 'top' | 'bottom' | 'left' | 'right';
1043
+ offset?: number;
1044
+ }
1045
+ interface UsePopoverReturn {
1046
+ triggerRef: React.RefObject<HTMLElement | null>;
1047
+ popoverRef: React.RefObject<HTMLElement | null>;
1048
+ isOpen: Signal<boolean>;
1049
+ anchorName: string;
1050
+ open: () => void;
1051
+ close: () => void;
1052
+ toggle: () => void;
1053
+ }
1054
+ declare function usePopover(options?: UsePopoverOptions): UsePopoverReturn;
1055
+ interface PopoverProps extends UsePopoverOptions {
1056
+ children: ReactNode;
1057
+ }
1058
+ declare function Popover({
1059
+ children,
1060
+ ...options
1061
+ }: PopoverProps): import("react").JSX.Element;
1062
+ interface PopoverTriggerProps {
1063
+ children: ReactNode;
1064
+ asChild?: boolean;
1065
+ }
1066
+ declare function PopoverTrigger({
1067
+ children
1068
+ }: PopoverTriggerProps): import("react").JSX.Element;
1069
+ interface PopoverContentProps {
1070
+ children: ReactNode;
1071
+ className?: string;
1072
+ }
1073
+ declare function PopoverContent({
1074
+ children,
1075
+ className
1076
+ }: PopoverContentProps): import("react").JSX.Element;
1077
+ interface MenuProps {
1078
+ children: ReactNode;
1079
+ }
1080
+ declare function Menu({
1081
+ children
1082
+ }: MenuProps): import("react").JSX.Element;
1083
+ interface MenuTriggerProps {
1084
+ children: ReactNode;
1085
+ 'aria-label'?: string;
1086
+ }
1087
+ declare function MenuTrigger({
1088
+ children,
1089
+ 'aria-label': ariaLabel
1090
+ }: MenuTriggerProps): import("react").JSX.Element;
1091
+ interface MenuItemProps {
1092
+ children: ReactNode;
1093
+ onSelect: () => void;
1094
+ disabled?: boolean;
1095
+ }
1096
+ declare function MenuItem({
1097
+ children,
1098
+ onSelect,
1099
+ disabled
1100
+ }: MenuItemProps): import("react").JSX.Element;
1101
+ declare function MenuSeparator(): import("react").JSX.Element;
1102
+ interface AlertDialogLabels {
1103
+ confirm?: string;
1104
+ cancel?: string;
1105
+ }
1106
+ interface AlertDialogProps {
1107
+ open: boolean;
1108
+ title: string;
1109
+ description: string;
1110
+ onConfirm: () => void;
1111
+ onCancel: () => void;
1112
+ labels?: AlertDialogLabels;
1113
+ variant?: 'destructive' | 'default';
1114
+ }
1115
+ declare function AlertDialog({
1116
+ open,
1117
+ title,
1118
+ description,
1119
+ onConfirm,
1120
+ onCancel,
1121
+ labels,
1122
+ variant
1123
+ }: AlertDialogProps): import("react").JSX.Element;
1124
+ interface SheetProps {
1125
+ open: boolean;
1126
+ onClose: () => void;
1127
+ title: string;
1128
+ children: ReactNode;
1129
+ side?: 'start' | 'end' | 'top' | 'bottom';
1130
+ }
1131
+ declare function Sheet({
1132
+ open,
1133
+ onClose,
1134
+ title,
1135
+ children,
1136
+ side
1137
+ }: SheetProps): import("react").JSX.Element;
1138
+ interface ContextMenuProps {
1139
+ children: ReactNode;
1140
+ }
1141
+ declare function ContextMenu({
1142
+ children
1143
+ }: ContextMenuProps): import("react").JSX.Element;
1144
+ interface ContextMenuItemProps {
1145
+ children: ReactNode;
1146
+ onSelect: () => void;
1147
+ disabled?: boolean;
1148
+ }
1149
+ declare function ContextMenuItem({
1150
+ children,
1151
+ onSelect,
1152
+ disabled
1153
+ }: ContextMenuItemProps): import("react").JSX.Element;
1154
+ interface HoverCardProps {
1155
+ children: ReactNode;
1156
+ openDelay?: number;
1157
+ closeDelay?: number;
1158
+ }
1159
+ declare function HoverCard({
1160
+ children,
1161
+ openDelay,
1162
+ closeDelay
1163
+ }: HoverCardProps): import("react").JSX.Element;
1164
+ interface HoverCardTriggerProps {
1165
+ children: ReactNode;
1166
+ }
1167
+ declare function HoverCardTrigger({
1168
+ children
1169
+ }: HoverCardTriggerProps): import("react").JSX.Element;
1170
+ interface HoverCardContentProps {
1171
+ children: ReactNode;
1172
+ className?: string;
1173
+ }
1174
+ declare function HoverCardContent({
1175
+ children,
1176
+ className
1177
+ }: HoverCardContentProps): import("react").JSX.Element;
1178
+ interface PasswordInputLabels {
1179
+ reveal?: string;
1180
+ hide?: string;
1181
+ strengthLabel?: (level: string) => string;
1182
+ }
1183
+ interface PasswordInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'> {
1184
+ showStrengthMeter?: boolean;
1185
+ size?: 'sm' | 'md' | 'lg';
1186
+ labels?: PasswordInputLabels;
1187
+ }
1188
+ declare function PasswordInput({
1189
+ showStrengthMeter,
1190
+ size,
1191
+ labels,
1192
+ className,
1193
+ id,
1194
+ value,
1195
+ defaultValue,
1196
+ onChange,
1197
+ ...props
1198
+ }: PasswordInputProps): import("react").JSX.Element;
1199
+ interface MultiSelectOption {
1200
+ label: string;
1201
+ value: string;
1202
+ disabled?: boolean;
1203
+ }
1204
+ interface MultiSelectLabels {
1205
+ placeholder?: string;
1206
+ selected?: (count: number) => string;
1207
+ search?: string;
1208
+ noResults?: string;
1209
+ }
1210
+ interface MultiSelectProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
1211
+ options: MultiSelectOption[];
1212
+ value: string[];
1213
+ onValueChange: (v: string[]) => void;
1214
+ placeholder?: string;
1215
+ disabled?: boolean;
1216
+ labels?: MultiSelectLabels;
1217
+ }
1218
+ declare function MultiSelect({
1219
+ options,
1220
+ value,
1221
+ onValueChange,
1222
+ placeholder,
1223
+ disabled,
1224
+ labels,
1225
+ className,
1226
+ ...props
1227
+ }: MultiSelectProps): import("react").JSX.Element;
1228
+ interface TagsInputProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
1229
+ value: string[];
1230
+ onValueChange: (v: string[]) => void;
1231
+ placeholder?: string;
1232
+ validate?: (tag: string) => boolean;
1233
+ max?: number;
1234
+ disabled?: boolean;
1235
+ }
1236
+ declare function TagsInput({
1237
+ value,
1238
+ onValueChange,
1239
+ placeholder,
1240
+ validate,
1241
+ max,
1242
+ disabled,
1243
+ className,
1244
+ ...props
1245
+ }: TagsInputProps): import("react").JSX.Element;
1246
+ interface OtpInputProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
1247
+ length?: number;
1248
+ value: string;
1249
+ onValueChange: (v: string) => void;
1250
+ disabled?: boolean;
1251
+ type?: 'numeric' | 'alphanumeric';
1252
+ }
1253
+ declare function OtpInput({
1254
+ length,
1255
+ value,
1256
+ onValueChange,
1257
+ disabled,
1258
+ type,
1259
+ className,
1260
+ ...props
1261
+ }: OtpInputProps): import("react").JSX.Element;
1262
+ interface SegmentedControlOption {
1263
+ label: string;
1264
+ value: string;
1265
+ disabled?: boolean;
1266
+ }
1267
+ interface SegmentedControlProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
1268
+ options: SegmentedControlOption[];
1269
+ value: string;
1270
+ onValueChange: (v: string) => void;
1271
+ size?: 'sm' | 'md' | 'lg';
1272
+ disabled?: boolean;
1273
+ }
1274
+ declare function SegmentedControl({
1275
+ options,
1276
+ value,
1277
+ onValueChange,
1278
+ size,
1279
+ disabled,
1280
+ className,
1281
+ ...props
1282
+ }: SegmentedControlProps): import("react").JSX.Element;
1283
+ interface InputGroupAddonProps extends HTMLAttributes<HTMLSpanElement> {
1284
+ /** Visual side, logical: 'inline-start' (leading) or 'inline-end' (trailing). */
1285
+ align?: 'inline-start' | 'inline-end';
1286
+ children: ReactNode;
1287
+ }
1288
+ /** Inline adornment (icon, unit) rendered INSIDE the field border. Decorative by default. */
1289
+ declare function InputGroupAddon({
1290
+ align,
1291
+ children,
1292
+ className,
1293
+ ...props
1294
+ }: InputGroupAddonProps): import("react").JSX.Element;
1295
+ interface InputGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, 'prefix' | 'suffix'> {
1296
+ prefix?: ReactNode;
1297
+ suffix?: ReactNode;
1298
+ children: ReactNode;
1299
+ }
1300
+ declare function InputGroup({
1301
+ prefix,
1302
+ suffix,
1303
+ children,
1304
+ className,
1305
+ ...props
1306
+ }: InputGroupProps): import("react").JSX.Element;
1307
+ interface RatingGroupLabels {
1308
+ rating?: (value: number, max: number) => string;
1309
+ }
1310
+ interface RatingGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
1311
+ value: number;
1312
+ onValueChange?: (v: number) => void;
1313
+ max?: number;
1314
+ size?: 'sm' | 'md' | 'lg';
1315
+ disabled?: boolean;
1316
+ readOnly?: boolean;
1317
+ labels?: RatingGroupLabels;
1318
+ }
1319
+ declare function RatingGroup({
1320
+ value,
1321
+ onValueChange,
1322
+ max,
1323
+ size,
1324
+ disabled,
1325
+ readOnly,
1326
+ labels,
1327
+ className,
1328
+ ...props
1329
+ }: RatingGroupProps): import("react").JSX.Element;
1330
+ interface EditableProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
1331
+ value: string;
1332
+ onValueChange: (v: string) => void;
1333
+ placeholder?: string;
1334
+ disabled?: boolean;
1335
+ submitOnBlur?: boolean;
1336
+ onCancel?: () => void;
1337
+ }
1338
+ declare function Editable({
1339
+ value,
1340
+ onValueChange,
1341
+ placeholder,
1342
+ disabled,
1343
+ submitOnBlur,
1344
+ onCancel,
1345
+ className,
1346
+ ...props
1347
+ }: EditableProps): import("react").JSX.Element;
1348
+ interface RadioCardGroupProps {
1349
+ name: string;
1350
+ label: string;
1351
+ value?: string;
1352
+ defaultValue?: string;
1353
+ onValueChange?: (value: string) => void;
1354
+ children: ReactNode;
1355
+ className?: string | undefined;
1356
+ }
1357
+ declare function RadioCardGroup({
1358
+ name,
1359
+ label,
1360
+ value,
1361
+ defaultValue,
1362
+ onValueChange,
1363
+ children,
1364
+ className
1365
+ }: RadioCardGroupProps): import("react").JSX.Element;
1366
+ interface RadioCardProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'name' | 'value' | 'title'> {
1367
+ value: string;
1368
+ title: ReactNode;
1369
+ description?: ReactNode;
1370
+ disabled?: boolean;
1371
+ hideIndicator?: boolean;
1372
+ }
1373
+ declare function RadioCard({
1374
+ value,
1375
+ title,
1376
+ description,
1377
+ disabled,
1378
+ hideIndicator,
1379
+ ...props
1380
+ }: RadioCardProps): import("react").JSX.Element;
1381
+ interface ShellHeaderBrand {
1382
+ prefix?: string;
1383
+ name: string;
1384
+ href?: string;
1385
+ }
1386
+ interface ShellHeaderNavLink {
1387
+ label: string;
1388
+ href: string;
1389
+ active?: boolean;
1390
+ }
1391
+ interface ShellHeaderNavMenuItem {
1392
+ label: string;
1393
+ href: string;
1394
+ active?: boolean;
1395
+ }
1396
+ interface ShellHeaderNavMenu {
1397
+ label: string;
1398
+ items: ShellHeaderNavMenuItem[];
1399
+ }
1400
+ type ShellHeaderNavItem = ShellHeaderNavLink | ShellHeaderNavMenu;
1401
+ interface ShellHeaderAction {
1402
+ id: string;
1403
+ label: string;
1404
+ icon: ReactNode;
1405
+ active?: boolean;
1406
+ onClick?: (() => void) | undefined;
1407
+ }
1408
+ interface ShellHeaderLabels {
1409
+ skipToContent?: string;
1410
+ nav?: string;
1411
+ openMenu?: string;
1412
+ closeMenu?: string;
1413
+ }
1414
+ interface ShellHeaderProps {
1415
+ brand?: ShellHeaderBrand | ReactNode;
1416
+ nav?: ShellHeaderNavItem[];
1417
+ actions?: ShellHeaderAction[];
1418
+ end?: ReactNode;
1419
+ onMenuClick?: (() => void) | undefined;
1420
+ menuExpanded?: boolean;
1421
+ skipToContentHref?: string | false;
1422
+ labels?: ShellHeaderLabels;
1423
+ className?: string | undefined;
1424
+ }
1425
+ declare function ShellHeader({
1426
+ brand,
1427
+ nav,
1428
+ actions,
1429
+ end,
1430
+ onMenuClick,
1431
+ menuExpanded,
1432
+ skipToContentHref,
1433
+ labels,
1434
+ className
1435
+ }: ShellHeaderProps): import("react").JSX.Element;
1436
+ interface HeaderPanelLabels {
1437
+ close?: string;
1438
+ }
1439
+ interface HeaderPanelProps {
1440
+ open: boolean;
1441
+ onClose: () => void;
1442
+ label: string;
1443
+ children: ReactNode;
1444
+ labels?: HeaderPanelLabels;
1445
+ className?: string | undefined;
1446
+ }
1447
+ declare function HeaderPanel({
1448
+ open,
1449
+ onClose,
1450
+ label,
1451
+ children,
1452
+ labels,
1453
+ className
1454
+ }: HeaderPanelProps): import("react").JSX.Element;
1455
+ interface SwitcherLink {
1456
+ label: string;
1457
+ href: string;
1458
+ active?: boolean;
1459
+ icon?: ReactNode;
1460
+ }
1461
+ type SwitcherEntry = SwitcherLink | {
1462
+ divider: true;
1463
+ };
1464
+ interface SwitcherProps {
1465
+ items: SwitcherEntry[];
1466
+ label?: string;
1467
+ className?: string | undefined;
1468
+ }
1469
+ declare function Switcher({
1470
+ items,
1471
+ label,
1472
+ className
1473
+ }: SwitcherProps): import("react").JSX.Element;
1474
+ interface CheckboxCardProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'title' | 'onChange'> {
1475
+ title: ReactNode;
1476
+ description?: ReactNode;
1477
+ onCheckedChange?: (checked: boolean) => void;
1478
+ className?: string | undefined;
1479
+ }
1480
+ declare function CheckboxCard({
1481
+ title,
1482
+ description,
1483
+ checked,
1484
+ defaultChecked,
1485
+ disabled,
1486
+ onCheckedChange,
1487
+ className,
1488
+ ...props
1489
+ }: CheckboxCardProps): import("react").JSX.Element;
1490
+ interface CopyButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'value'> {
1491
+ /** The text written to the clipboard on click. */
1492
+ value: string;
1493
+ size?: 'sm' | 'md';
1494
+ labels?: {
1495
+ copy?: string;
1496
+ copied?: string;
1497
+ };
1498
+ }
1499
+ declare function CopyButton({
1500
+ value,
1501
+ size,
1502
+ labels,
1503
+ className,
1504
+ ...props
1505
+ }: CopyButtonProps): import("react").JSX.Element;
1506
+ interface StatProps extends HTMLAttributes<HTMLDivElement> {
1507
+ label: string;
1508
+ value: string | number;
1509
+ delta?: string;
1510
+ trend?: 'up' | 'down' | 'flat';
1511
+ helpText?: string;
1512
+ }
1513
+ declare function Stat({
1514
+ label,
1515
+ value,
1516
+ delta,
1517
+ trend,
1518
+ helpText,
1519
+ className,
1520
+ ...props
1521
+ }: StatProps): import("react").JSX.Element;
1522
+ interface StatusProps extends HTMLAttributes<HTMLSpanElement> {
1523
+ status?: 'success' | 'warning' | 'error' | 'info' | 'neutral';
1524
+ /** Pulses the dot — only when the user allows motion. */
1525
+ pulse?: boolean;
1526
+ }
1527
+ declare function Status({
1528
+ status,
1529
+ pulse,
1530
+ className,
1531
+ children,
1532
+ ...props
1533
+ }: StatusProps): import("react").JSX.Element;
1534
+ interface VisuallyHiddenProps extends HTMLAttributes<HTMLSpanElement> {
1535
+ children: ReactNode;
1536
+ }
1537
+ declare function VisuallyHidden({
1538
+ children,
1539
+ className,
1540
+ ...props
1541
+ }: VisuallyHiddenProps): import("react").JSX.Element;
1542
+ interface SkipNavLinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href'> {
1543
+ targetId?: string;
1544
+ labels?: {
1545
+ label?: string;
1546
+ };
1547
+ }
1548
+ /** Render as the FIRST focusable element on the page — visually hidden until focused. */
1549
+ declare function SkipNavLink({
1550
+ targetId,
1551
+ labels,
1552
+ className,
1553
+ ...props
1554
+ }: SkipNavLinkProps): import("react").JSX.Element;
1555
+ interface SkipNavTargetProps extends HTMLAttributes<HTMLDivElement> {
1556
+ id?: string;
1557
+ }
1558
+ /** Place where the main content starts; the link's hash navigation moves focus here. */
1559
+ declare function SkipNavTarget({
1560
+ id,
1561
+ ...props
1562
+ }: SkipNavTargetProps): import("react").JSX.Element;
1563
+ type ProgressVariant = 'primary' | 'info' | 'success' | 'warning' | 'error';
1564
+ type ProgressSize = 'sm' | 'md' | 'lg';
1565
+ interface ProgressProps {
1566
+ /** 0–100. Omit for indeterminate state. */
1567
+ value?: number;
1568
+ variant?: ProgressVariant;
1569
+ size?: ProgressSize;
1570
+ 'aria-label'?: string;
1571
+ 'aria-describedby'?: string;
1572
+ className?: string;
1573
+ }
1574
+ declare function Progress({
1575
+ value,
1576
+ variant,
1577
+ size,
1578
+ className,
1579
+ ...aria
1580
+ }: ProgressProps): import("react").JSX.Element;
1581
+ interface ProgressCircleProps extends HTMLAttributes<HTMLDivElement> {
1582
+ /** Current value from 0 to max — clamped. */
1583
+ value: number;
1584
+ max?: number;
1585
+ size?: 'sm' | 'md' | 'lg';
1586
+ /** Renders the rounded percentage in the center — pairs best with md and lg. */
1587
+ showValue?: boolean;
1588
+ /** Accessible name for the progressbar. */
1589
+ label?: string;
1590
+ }
1591
+ declare function ProgressCircle({
1592
+ value,
1593
+ max,
1594
+ size,
1595
+ showValue,
1596
+ label,
1597
+ className,
1598
+ ...props
1599
+ }: ProgressCircleProps): import("react").JSX.Element;
1600
+ type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
1601
+ type HeadingSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
1602
+ interface HeadingProps extends HTMLAttributes<HTMLHeadingElement> {
1603
+ level?: HeadingLevel;
1604
+ size?: HeadingSize;
1605
+ }
1606
+ declare function Heading({
1607
+ level,
1608
+ size,
1609
+ className,
1610
+ children,
1611
+ ...props
1612
+ }: HeadingProps): import("react").JSX.Element;
1613
+ interface TextProps extends HTMLAttributes<HTMLElement> {
1614
+ as?: 'p' | 'span' | 'div';
1615
+ size?: 'sm' | 'md' | 'lg';
1616
+ weight?: 'normal' | 'medium' | 'semibold';
1617
+ muted?: boolean;
1618
+ }
1619
+ declare function Text({
1620
+ as: Tag,
1621
+ size,
1622
+ weight,
1623
+ muted,
1624
+ className,
1625
+ children,
1626
+ ...props
1627
+ }: TextProps): import("react").JSX.Element;
1628
+ interface CodeProps extends HTMLAttributes<HTMLElement> {
1629
+ size?: 'sm' | 'md';
1630
+ }
1631
+ declare function Code({
1632
+ size,
1633
+ className,
1634
+ children,
1635
+ ...props
1636
+ }: CodeProps): import("react").JSX.Element;
1637
+ interface BlockquoteProps extends HTMLAttributes<HTMLQuoteElement> {
1638
+ cite?: string;
1639
+ }
1640
+ declare function Blockquote({
1641
+ cite,
1642
+ className,
1643
+ children,
1644
+ ...props
1645
+ }: BlockquoteProps): import("react").JSX.Element;
1646
+ interface ListProps extends HTMLAttributes<HTMLElement> {
1647
+ as?: 'ul' | 'ol';
1648
+ marker?: 'disc' | 'decimal' | 'none';
1649
+ }
1650
+ declare function List({
1651
+ as: Tag,
1652
+ marker,
1653
+ className,
1654
+ children,
1655
+ ...props
1656
+ }: ListProps): import("react").JSX.Element;
1657
+ type ListItemProps = LiHTMLAttributes<HTMLLIElement>;
1658
+ declare function ListItem({
1659
+ className,
1660
+ children,
1661
+ ...props
1662
+ }: ListItemProps): import("react").JSX.Element;
1663
+ type ProseProps = HTMLAttributes<HTMLDivElement>;
1664
+ declare function Prose({
1665
+ className,
1666
+ children,
1667
+ ...props
1668
+ }: ProseProps): import("react").JSX.Element;
1669
+ interface LabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
1670
+ /** Renders into the child element (Slot composition) instead of a native `<label>`. */
1671
+ asChild?: boolean;
1672
+ /** Shows a required marker after the label text. */
1673
+ required?: boolean;
1674
+ /** Dims the label to match an associated disabled control. */
1675
+ disabled?: boolean;
1676
+ children: ReactNode;
1677
+ /** Override built-in strings (e.g. the required-marker accessible text). */
1678
+ labels?: {
1679
+ required?: string;
1680
+ };
1681
+ }
1682
+ declare function Label({
1683
+ asChild,
1684
+ required,
1685
+ disabled,
1686
+ className,
1687
+ children,
1688
+ labels,
1689
+ ...props
1690
+ }: LabelProps): import("react").JSX.Element;
1691
+ interface FieldProps {
1692
+ /** Label text for the control. */
1693
+ label?: ReactNode;
1694
+ /** Helper text describing the control, wired via aria-describedby. */
1695
+ description?: ReactNode;
1696
+ /** Error message; sets aria-invalid on the control and is announced via role="alert". */
1697
+ error?: ReactNode;
1698
+ /** Marks the field required (forwarded to the Label marker). */
1699
+ required?: boolean;
1700
+ /** Dims the label and is forwarded to the cloned control. */
1701
+ disabled?: boolean;
1702
+ /** Explicit id for the control; auto-generated when omitted. */
1703
+ id?: string;
1704
+ /** The single form control element. */
1705
+ children: ReactElement<{
1706
+ id?: string;
1707
+ 'aria-describedby'?: string;
1708
+ 'aria-invalid'?: boolean;
1709
+ disabled?: boolean;
1710
+ }>;
1711
+ className?: string;
1712
+ }
1713
+ declare function Field({
1714
+ label,
1715
+ description,
1716
+ error,
1717
+ required,
1718
+ disabled,
1719
+ id,
1720
+ children,
1721
+ className
1722
+ }: FieldProps): import("react").JSX.Element;
1723
+ type FilterVariant = 'pill' | 'outline';
1724
+ interface FilterOption {
1725
+ label: string;
1726
+ value: string;
1727
+ }
1728
+ interface FilterProps {
1729
+ options: FilterOption[];
1730
+ value?: string[];
1731
+ defaultValue?: string[];
1732
+ onChange?: (selected: string[]) => void;
1733
+ multi?: boolean;
1734
+ variant?: FilterVariant;
1735
+ 'aria-label'?: string;
1736
+ className?: string;
1737
+ }
1738
+ declare function Filter({
1739
+ options,
1740
+ value,
1741
+ defaultValue,
1742
+ onChange,
1743
+ multi,
1744
+ variant,
1745
+ className,
1746
+ ...aria
1747
+ }: FilterProps): import("react").JSX.Element;
1748
+ interface IconButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
1749
+ /** Accessible name for the icon-only control. Required — there is no visible text. */
1750
+ label: string;
1751
+ /** The icon to render. Alias for `children`. */
1752
+ icon?: ReactNode;
1753
+ size?: 'sm' | 'md' | 'lg';
1754
+ variant?: 'ghost' | 'outline' | 'filled';
1755
+ /** Render the single child element instead of a `<button>` (composition). */
1756
+ asChild?: boolean;
1757
+ }
1758
+ declare const IconButton: import("react").ForwardRefExoticComponent<IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
1759
+ interface ButtonGroupProps extends HTMLAttributes<HTMLDivElement> {
1760
+ orientation?: 'horizontal' | 'vertical';
1761
+ size?: 'sm' | 'md' | 'lg';
1762
+ /** Enable arrow-key roving focus across the group's focusable buttons. */
1763
+ roving?: boolean;
1764
+ loop?: boolean;
1765
+ }
1766
+ declare const ButtonGroup: import("react").ForwardRefExoticComponent<ButtonGroupProps & import("react").RefAttributes<HTMLDivElement>>;
1767
+ interface ToggleGroupItem {
1768
+ value: string;
1769
+ label?: string;
1770
+ icon?: ReactNode;
1771
+ disabled?: boolean;
1772
+ }
1773
+ interface ToggleGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'defaultValue'> {
1774
+ type: 'single' | 'multiple';
1775
+ value?: string | string[];
1776
+ defaultValue?: string | string[];
1777
+ onValueChange?: (value: string | string[]) => void;
1778
+ items: ToggleGroupItem[];
1779
+ orientation?: 'horizontal' | 'vertical';
1780
+ size?: 'sm' | 'md' | 'lg';
1781
+ disabled?: boolean;
1782
+ }
1783
+ declare const ToggleGroup: import("react").ForwardRefExoticComponent<ToggleGroupProps & import("react").RefAttributes<HTMLDivElement>>;
1784
+ type InlineLoadingStatus = 'inactive' | 'active' | 'finished' | 'error';
1785
+ interface InlineLoadingProps extends HTMLAttributes<HTMLDivElement> {
1786
+ status: InlineLoadingStatus;
1787
+ label?: ReactNode;
1788
+ labels?: {
1789
+ active?: string;
1790
+ finished?: string;
1791
+ error?: string;
1792
+ };
1793
+ }
1794
+ declare function InlineLoading({
1795
+ status,
1796
+ label,
1797
+ labels,
1798
+ className,
1799
+ ...props
1800
+ }: InlineLoadingProps): import("react").JSX.Element;
1801
+ type NotificationVariant = 'info' | 'success' | 'warning' | 'error';
1802
+ interface NotificationProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
1803
+ title: ReactNode;
1804
+ description?: ReactNode;
1805
+ variant?: NotificationVariant;
1806
+ dismissible?: boolean;
1807
+ onDismiss?: () => void;
1808
+ actions?: ReactNode;
1809
+ icon?: ReactNode;
1810
+ labels?: {
1811
+ dismiss?: string;
1812
+ };
1813
+ }
1814
+ declare function Notification({
1815
+ title,
1816
+ description,
1817
+ variant,
1818
+ dismissible,
1819
+ onDismiss,
1820
+ actions,
1821
+ icon,
1822
+ labels,
1823
+ className,
1824
+ ...props
1825
+ }: NotificationProps): import("react").JSX.Element;
1826
+ interface ScrollAreaProps extends HTMLAttributes<HTMLDivElement> {
1827
+ /** Max block size of the scroll container (any CSS length). */
1828
+ height?: string;
1829
+ /** Max inline size of the scroll container (any CSS length). */
1830
+ width?: string;
1831
+ /** Which axes may scroll. */
1832
+ orientation?: 'vertical' | 'horizontal' | 'both';
1833
+ children?: ReactNode;
1834
+ }
1835
+ declare function ScrollArea({
1836
+ height,
1837
+ width,
1838
+ orientation,
1839
+ className,
1840
+ style,
1841
+ children,
1842
+ ...props
1843
+ }: ScrollAreaProps): import("react").JSX.Element;
1844
+ interface CollapsibleProps {
1845
+ /** Controlled open state. */
1846
+ open?: boolean;
1847
+ /** Initial open state for uncontrolled use. */
1848
+ defaultOpen?: boolean;
1849
+ /** Called whenever the open state should change. */
1850
+ onOpenChange?: (open: boolean) => void;
1851
+ /** Content rendered inside the trigger button. */
1852
+ trigger: ReactNode;
1853
+ /** Disables the trigger. */
1854
+ disabled?: boolean;
1855
+ className?: string;
1856
+ children?: ReactNode;
1857
+ }
1858
+ declare function Collapsible({
1859
+ open,
1860
+ defaultOpen,
1861
+ onOpenChange,
1862
+ trigger,
1863
+ disabled,
1864
+ className,
1865
+ children
1866
+ }: CollapsibleProps): import("react").JSX.Element;
1867
+ interface AspectRatioProps extends HTMLAttributes<HTMLDivElement> {
1868
+ /** Width-to-height ratio (e.g. 16 / 9). Defaults to 16/9. */
1869
+ ratio?: number;
1870
+ children?: ReactNode;
1871
+ }
1872
+ declare function AspectRatio({
1873
+ ratio,
1874
+ className,
1875
+ style,
1876
+ children,
1877
+ ...props
1878
+ }: AspectRatioProps): import("react").JSX.Element;
1879
+ interface MenuButtonItem {
1880
+ id: string;
1881
+ label: ReactNode;
1882
+ onSelect?: () => void;
1883
+ disabled?: boolean;
1884
+ }
1885
+ interface MenuButtonProps {
1886
+ label: ReactNode;
1887
+ items: MenuButtonItem[];
1888
+ variant?: 'primary' | 'secondary' | 'ghost';
1889
+ size?: 'sm' | 'md' | 'lg';
1890
+ disabled?: boolean;
1891
+ align?: 'start' | 'end';
1892
+ labels?: {
1893
+ open?: string;
1894
+ };
1895
+ className?: string;
1896
+ }
1897
+ declare function MenuButton({
1898
+ label,
1899
+ items,
1900
+ variant,
1901
+ size,
1902
+ disabled,
1903
+ align,
1904
+ labels,
1905
+ className
1906
+ }: MenuButtonProps): import("react").JSX.Element;
1907
+ type ToggletipPlacement = 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end';
1908
+ interface ToggletipProps {
1909
+ /** The trigger node (e.g. an info icon). Rendered inside a button. */
1910
+ trigger: ReactNode;
1911
+ /** The popover content. Interactive and selectable. */
1912
+ children: ReactNode;
1913
+ placement?: ToggletipPlacement;
1914
+ defaultOpen?: boolean;
1915
+ open?: boolean;
1916
+ onOpenChange?: (open: boolean) => void;
1917
+ labels?: {
1918
+ label?: string;
1919
+ };
1920
+ className?: string;
1921
+ }
1922
+ declare function Toggletip({
1923
+ trigger,
1924
+ children,
1925
+ placement,
1926
+ defaultOpen,
1927
+ open,
1928
+ onOpenChange,
1929
+ labels,
1930
+ className
1931
+ }: ToggletipProps): import("react").JSX.Element;
1932
+ interface MenubarItem {
1933
+ id: string;
1934
+ label: ReactNode;
1935
+ onSelect?: () => void;
1936
+ disabled?: boolean;
1937
+ }
1938
+ interface MenubarMenu {
1939
+ id: string;
1940
+ label: ReactNode;
1941
+ items: MenubarItem[];
1942
+ }
1943
+ interface MenubarProps {
1944
+ menus: MenubarMenu[];
1945
+ 'aria-label': string;
1946
+ className?: string;
1947
+ }
1948
+ declare function Menubar({
1949
+ menus,
1950
+ 'aria-label': ariaLabel,
1951
+ className
1952
+ }: MenubarProps): import("react").JSX.Element;
1953
+ interface NavigationMenuItem {
1954
+ id: string;
1955
+ label: ReactNode;
1956
+ href?: string;
1957
+ content?: ReactNode;
1958
+ }
1959
+ interface NavigationMenuProps {
1960
+ items: NavigationMenuItem[];
1961
+ 'aria-label'?: string;
1962
+ orientation?: RovingOrientation;
1963
+ className?: string;
1964
+ }
1965
+ declare function NavigationMenu({
1966
+ items,
1967
+ 'aria-label': ariaLabel,
1968
+ orientation,
1969
+ className
1970
+ }: NavigationMenuProps): import("react").JSX.Element;
1971
+ interface TreeNode {
1972
+ id: string;
1973
+ label: ReactNode;
1974
+ icon?: ReactNode;
1975
+ children?: TreeNode[];
1976
+ }
1977
+ interface TreeViewProps {
1978
+ items: TreeNode[];
1979
+ selectionMode?: 'single' | 'multi';
1980
+ selected?: string | string[];
1981
+ defaultSelected?: string | string[];
1982
+ onSelectChange?: (selected: string | string[]) => void;
1983
+ expanded?: string[];
1984
+ defaultExpanded?: string[];
1985
+ onExpandedChange?: (expanded: string[]) => void;
1986
+ className?: string;
1987
+ 'aria-label'?: string;
1988
+ }
1989
+ declare function TreeView({
1990
+ items,
1991
+ selectionMode,
1992
+ selected,
1993
+ defaultSelected,
1994
+ onSelectChange,
1995
+ expanded,
1996
+ defaultExpanded,
1997
+ onExpandedChange,
1998
+ className,
1999
+ 'aria-label': ariaLabel
2000
+ }: TreeViewProps): import("react").JSX.Element;
2001
+ declare const treeViewMessages: {
2002
+ loading: () => string;
2003
+ expand: () => string;
2004
+ collapse: () => string;
2005
+ };
2006
+ interface StructuredListItem {
2007
+ id: string;
2008
+ cells: ReactNode[];
2009
+ selected?: boolean;
2010
+ }
2011
+ interface StructuredListProps {
2012
+ items: StructuredListItem[];
2013
+ headers?: ReactNode[];
2014
+ selectable?: boolean;
2015
+ value?: string;
2016
+ defaultValue?: string;
2017
+ onSelect?: (id: string) => void;
2018
+ className?: string;
2019
+ 'aria-label'?: string;
2020
+ }
2021
+ declare function StructuredList(props: StructuredListProps): import("react").JSX.Element;
2022
+ interface ContainedListProps extends HTMLAttributes<HTMLDivElement> {
2023
+ label: ReactNode;
2024
+ kind?: 'on-page' | 'disclosed';
2025
+ action?: ReactNode;
2026
+ }
2027
+ declare function ContainedList({
2028
+ label,
2029
+ kind,
2030
+ action,
2031
+ className,
2032
+ children,
2033
+ ...props
2034
+ }: ContainedListProps): import("react").JSX.Element;
2035
+ interface ContainedListItemProps extends HTMLAttributes<HTMLDivElement> {
2036
+ asChild?: boolean;
2037
+ }
2038
+ declare function ContainedListItem({
2039
+ asChild,
2040
+ onClick,
2041
+ className,
2042
+ children,
2043
+ ...props
2044
+ }: ContainedListItemProps): import("react").JSX.Element;
2045
+ interface DataListItem {
2046
+ id?: string;
2047
+ label: ReactNode;
2048
+ value: ReactNode;
2049
+ }
2050
+ interface DataListProps extends HTMLAttributes<HTMLDListElement> {
2051
+ items: DataListItem[];
2052
+ orientation?: 'horizontal' | 'vertical';
2053
+ dividers?: boolean;
2054
+ size?: 'sm' | 'md';
2055
+ }
2056
+ declare function DataList({
2057
+ items,
2058
+ orientation,
2059
+ dividers,
2060
+ size,
2061
+ className,
2062
+ ...props
2063
+ }: DataListProps): import("react").JSX.Element;
2064
+ interface TimelineItem {
2065
+ id: string;
2066
+ title: ReactNode;
2067
+ description?: ReactNode;
2068
+ time?: string;
2069
+ icon?: ReactNode;
2070
+ status?: 'complete' | 'current' | 'upcoming';
2071
+ }
2072
+ interface TimelineProps extends HTMLAttributes<HTMLOListElement> {
2073
+ items: TimelineItem[];
2074
+ orientation?: 'vertical' | 'horizontal';
2075
+ }
2076
+ declare function Timeline({
2077
+ items,
2078
+ orientation,
2079
+ className,
2080
+ ...props
2081
+ }: TimelineProps): import("react").JSX.Element;
2082
+ interface ItemProps extends HTMLAttributes<HTMLDivElement> {
2083
+ asChild?: boolean;
2084
+ variant?: 'default' | 'muted';
2085
+ size?: 'sm' | 'md';
2086
+ }
2087
+ declare function Item({
2088
+ asChild,
2089
+ variant,
2090
+ size,
2091
+ className,
2092
+ children,
2093
+ ...props
2094
+ }: ItemProps): import("react").JSX.Element;
2095
+ interface ItemMediaProps extends HTMLAttributes<HTMLDivElement> {}
2096
+ declare function ItemMedia({
2097
+ className,
2098
+ children,
2099
+ ...props
2100
+ }: ItemMediaProps): import("react").JSX.Element;
2101
+ interface ItemContentProps extends HTMLAttributes<HTMLDivElement> {}
2102
+ declare function ItemContent({
2103
+ className,
2104
+ children,
2105
+ ...props
2106
+ }: ItemContentProps): import("react").JSX.Element;
2107
+ interface ItemTitleProps extends HTMLAttributes<HTMLDivElement> {}
2108
+ declare function ItemTitle({
2109
+ className,
2110
+ children,
2111
+ ...props
2112
+ }: ItemTitleProps): import("react").JSX.Element;
2113
+ interface ItemDescriptionProps extends HTMLAttributes<HTMLParagraphElement> {}
2114
+ declare function ItemDescription({
2115
+ className,
2116
+ children,
2117
+ ...props
2118
+ }: ItemDescriptionProps): import("react").JSX.Element;
2119
+ interface ItemActionsProps extends HTMLAttributes<HTMLDivElement> {}
2120
+ declare function ItemActions({
2121
+ className,
2122
+ children,
2123
+ ...props
2124
+ }: ItemActionsProps): import("react").JSX.Element;
2125
+ interface CalendarLabels {
2126
+ previousMonth?: string;
2127
+ nextMonth?: string;
2128
+ }
2129
+ interface CalendarProps {
2130
+ value?: Date | null;
2131
+ defaultValue?: Date;
2132
+ onValueChange?: (date: Date) => void;
2133
+ min?: Date;
2134
+ max?: Date;
2135
+ disabled?: (date: Date) => boolean;
2136
+ locale?: string;
2137
+ size?: 'sm' | 'md' | 'lg';
2138
+ labels?: CalendarLabels;
2139
+ className?: string;
2140
+ /** Highlight predicate for range previews (date-range-picker). */
2141
+ isInRange?: (date: Date) => boolean;
2142
+ /** Range endpoint markers for styling. */
2143
+ isRangeStart?: (date: Date) => boolean;
2144
+ isRangeEnd?: (date: Date) => boolean;
2145
+ /** Hover handler for range preview. */
2146
+ onDayHover?: (date: Date | null) => void;
2147
+ /** Controlled view month (0-11). When set, the calendar's displayed month is owned by the parent. */
2148
+ month?: number;
2149
+ /** Controlled view year. */
2150
+ year?: number;
2151
+ /** Called when the user navigates months (prev/next or keyboard). */
2152
+ onViewChange?: (view: {
2153
+ month: number;
2154
+ year: number;
2155
+ }) => void;
2156
+ /** Hide the prev/next header nav (parent drives navigation). */
2157
+ hideNav?: boolean;
2158
+ }
2159
+ declare function Calendar({
2160
+ value,
2161
+ defaultValue,
2162
+ onValueChange,
2163
+ min,
2164
+ max,
2165
+ disabled,
2166
+ locale: localeProp,
2167
+ size,
2168
+ labels,
2169
+ className,
2170
+ isInRange,
2171
+ isRangeStart,
2172
+ isRangeEnd,
2173
+ onDayHover,
2174
+ month,
2175
+ year,
2176
+ onViewChange,
2177
+ hideNav
2178
+ }: CalendarProps): import("react").JSX.Element;
2179
+ interface DateRange {
2180
+ start: Date;
2181
+ end: Date;
2182
+ }
2183
+ interface DateRangePreset {
2184
+ label: string;
2185
+ range: DateRange;
2186
+ }
2187
+ interface DateRangePickerLabels {
2188
+ placeholder?: string;
2189
+ start?: string;
2190
+ end?: string;
2191
+ apply?: string;
2192
+ clear?: string;
2193
+ previousMonth?: string;
2194
+ nextMonth?: string;
2195
+ }
2196
+ interface DateRangePickerProps {
2197
+ value?: DateRange | null;
2198
+ defaultValue?: DateRange;
2199
+ onValueChange?: (range: DateRange) => void;
2200
+ min?: Date;
2201
+ max?: Date;
2202
+ disabled?: (date: Date) => boolean;
2203
+ presets?: DateRangePreset[];
2204
+ locale?: string;
2205
+ placeholder?: string;
2206
+ size?: 'sm' | 'md' | 'lg';
2207
+ labels?: DateRangePickerLabels;
2208
+ className?: string;
2209
+ }
2210
+ declare function DateRangePicker({
2211
+ value,
2212
+ defaultValue,
2213
+ onValueChange,
2214
+ min,
2215
+ max,
2216
+ disabled,
2217
+ presets,
2218
+ locale: localeProp,
2219
+ placeholder,
2220
+ size,
2221
+ labels,
2222
+ className
2223
+ }: DateRangePickerProps): import("react").JSX.Element;
2224
+ interface ColorPickerLabels {
2225
+ hue?: string;
2226
+ alpha?: string;
2227
+ colorArea?: string;
2228
+ eyedropper?: string;
2229
+ }
2230
+ interface ColorPickerProps {
2231
+ value?: string;
2232
+ defaultValue?: string;
2233
+ onValueChange?: (value: string) => void;
2234
+ presets?: string[];
2235
+ alpha?: boolean;
2236
+ label?: string;
2237
+ disabled?: boolean;
2238
+ size?: 'sm' | 'md' | 'lg';
2239
+ className?: string;
2240
+ labels?: ColorPickerLabels;
2241
+ }
2242
+ declare function ColorPicker({
2243
+ value,
2244
+ defaultValue,
2245
+ onValueChange,
2246
+ presets,
2247
+ alpha,
2248
+ label,
2249
+ disabled,
2250
+ size,
2251
+ className,
2252
+ labels
2253
+ }: ColorPickerProps): import("react").JSX.Element;
2254
+ interface CarouselLabels {
2255
+ region?: string;
2256
+ previous?: string;
2257
+ next?: string;
2258
+ }
2259
+ interface CarouselProps {
2260
+ children?: ReactNode;
2261
+ slides?: ReactNode[];
2262
+ index?: number;
2263
+ defaultIndex?: number;
2264
+ onIndexChange?: (index: number) => void;
2265
+ loop?: boolean;
2266
+ className?: string;
2267
+ labels?: CarouselLabels;
2268
+ }
2269
+ declare function Carousel({
2270
+ children,
2271
+ slides,
2272
+ index,
2273
+ defaultIndex,
2274
+ onIndexChange,
2275
+ loop,
2276
+ className,
2277
+ labels
2278
+ }: CarouselProps): import("react").JSX.Element;
2279
+ interface ResizableProps {
2280
+ children: ReactNode;
2281
+ orientation?: 'horizontal' | 'vertical';
2282
+ defaultRatio?: number;
2283
+ ratio?: number;
2284
+ minRatio?: number;
2285
+ maxRatio?: number;
2286
+ onRatioChange?: (ratio: number) => void;
2287
+ className?: string;
2288
+ label?: string;
2289
+ }
2290
+ declare function Resizable({
2291
+ children,
2292
+ orientation,
2293
+ defaultRatio,
2294
+ ratio,
2295
+ minRatio,
2296
+ maxRatio,
2297
+ onRatioChange,
2298
+ className,
2299
+ label
2300
+ }: ResizableProps): import("react").JSX.Element;
2301
+ interface DockItem {
2302
+ label: string;
2303
+ icon: React.ReactNode;
2304
+ onClick?: () => void;
2305
+ href?: string;
2306
+ }
2307
+ interface DockProps {
2308
+ items: DockItem[];
2309
+ activeIndex?: number;
2310
+ className?: string;
2311
+ }
2312
+ declare function Dock({
2313
+ items,
2314
+ activeIndex,
2315
+ className
2316
+ }: DockProps): import("react").JSX.Element;
2317
+ interface DrawerProps {
2318
+ /** Controlled open state. */
2319
+ open?: boolean;
2320
+ /** Initial open state for uncontrolled use. */
2321
+ defaultOpen?: boolean;
2322
+ /** Called whenever the open state should change. */
2323
+ onOpenChange?: (open: boolean) => void;
2324
+ /** Edge the panel is anchored to. Drives the slide direction. */
2325
+ side?: 'start' | 'end' | 'top' | 'bottom';
2326
+ /** Panel size along its cross axis (width for start/end, height for top/bottom). */
2327
+ size?: string;
2328
+ /** Accessible title shown in the header and used to label the dialog. */
2329
+ title?: ReactNode;
2330
+ /** Optional supporting description shown under the title. */
2331
+ description?: ReactNode;
2332
+ children?: ReactNode;
2333
+ labels?: {
2334
+ close?: string;
2335
+ };
2336
+ className?: string;
2337
+ }
2338
+ /**
2339
+ * Edge-anchored panel. Unlike Sheet's gesture-driven sheet, Drawer is a plain dialog surface that
2340
+ * slides in from an edge with CSS-only enter/exit motion (data-state + @starting-style). Open state
2341
+ * is controllable; while open, body scroll is locked, focus is trapped, and outside pointer /
2342
+ * Escape dismiss it.
2343
+ */
2344
+ declare function Drawer({
2345
+ open,
2346
+ defaultOpen,
2347
+ onOpenChange,
2348
+ side,
2349
+ size,
2350
+ title,
2351
+ description,
2352
+ children,
2353
+ labels,
2354
+ className
2355
+ }: DrawerProps): import("react").JSX.Element;
2356
+ interface NativeSelectOption {
2357
+ value: string;
2358
+ label: string;
2359
+ disabled?: boolean;
2360
+ }
2361
+ interface NativeSelectProps extends Omit<SelectHTMLAttributes<HTMLSelectElement>, 'size'> {
2362
+ /** Options to render. Alternatively pass `<option>` children. */
2363
+ options?: NativeSelectOption[];
2364
+ /** Raw `<option>` children (used when `options` is not provided). */
2365
+ children?: ReactNode;
2366
+ size?: 'sm' | 'md' | 'lg';
2367
+ /** Marks the control as invalid for error styling and a11y. */
2368
+ invalid?: boolean;
2369
+ /** Placeholder rendered as a disabled, hidden first option. */
2370
+ placeholder?: string;
2371
+ }
2372
+ /**
2373
+ * A styled native `<select>` — keeps the platform's open/close, keyboard, and form behavior, and
2374
+ * layers on a custom chevron and focus/invalid rings via CSS only. No JS interactivity, so no
2375
+ * signals: the browser owns all state. Distinct from the custom-rendered `Select` listbox.
2376
+ */
2377
+ declare function NativeSelect({
2378
+ options,
2379
+ children,
2380
+ size,
2381
+ invalid,
2382
+ disabled,
2383
+ placeholder,
2384
+ value,
2385
+ defaultValue,
2386
+ className,
2387
+ ...props
2388
+ }: NativeSelectProps): import("react").JSX.Element;
2389
+ type CodeLang = 'bash' | 'css' | 'js' | 'ts';
2390
+ interface CodeSnippetProps {
2391
+ /** The code to display (and copy). */
2392
+ code: string;
2393
+ /** inline = a <code> span; single = one-line <pre>; multi = multi-line <pre>. */
2394
+ variant?: 'inline' | 'single' | 'multi';
2395
+ /**
2396
+ * Enables lightweight, dependency-free syntax highlighting for the block
2397
+ * variants. Omit for plain text. Inline code is never highlighted.
2398
+ */
2399
+ language?: CodeLang;
2400
+ /**
2401
+ * Renders terminal-window chrome (a title bar with traffic-light dots). Pair
2402
+ * with `language="bash"` for a shell transcript. Block variants only.
2403
+ */
2404
+ terminal?: boolean;
2405
+ /** Optional label shown in the terminal title bar. */
2406
+ title?: string;
2407
+ /** Show line numbers (multi only; ignored when `language` is set). */
2408
+ showLineNumbers?: boolean;
2409
+ /** Show the copy-to-clipboard button. Defaults true for single/multi, false for inline. */
2410
+ showCopyButton?: boolean;
2411
+ labels?: {
2412
+ copy?: string;
2413
+ copied?: string;
2414
+ };
2415
+ className?: string;
2416
+ }
2417
+ /**
2418
+ * Code display with optional, dependency-free syntax highlighting. `inline`
2419
+ * renders a `<code>` chip in flowing text; `single` a horizontally scrolling
2420
+ * one-liner; `multi` a block with optional line numbers. Pass `language` to
2421
+ * colour bash/css/js/ts, and `terminal` for shell-window chrome. An optional
2422
+ * copy button uses `useClipboard` to copy the raw `code`.
2423
+ */
2424
+ declare function CodeSnippet({
2425
+ code,
2426
+ variant,
2427
+ language,
2428
+ terminal,
2429
+ title,
2430
+ showLineNumbers,
2431
+ showCopyButton,
2432
+ labels,
2433
+ className
2434
+ }: CodeSnippetProps): import("react").JSX.Element;
2435
+ type StepState = 'pending' | 'active' | 'complete' | 'error';
2436
+ interface Step {
2437
+ label: string;
2438
+ state?: StepState;
2439
+ }
2440
+ interface StepsProps {
2441
+ steps: Step[];
2442
+ activeStep?: number;
2443
+ orientation?: 'horizontal' | 'vertical';
2444
+ className?: string;
2445
+ }
2446
+ declare function Steps({
2447
+ steps,
2448
+ activeStep: controlledActiveStep,
2449
+ orientation,
2450
+ className
2451
+ }: StepsProps): import("react").JSX.Element;
2452
+ interface TileProps {
2453
+ /** Identifies this tile within a group. */
2454
+ value: string;
2455
+ /** Controlled selected state. */
2456
+ selected?: boolean;
2457
+ /** Initial selected state for uncontrolled use. */
2458
+ defaultSelected?: boolean;
2459
+ /** Called with this tile's value whenever it is toggled on (or off for multi). */
2460
+ onSelect?: (value: string) => void;
2461
+ /** Single = radio semantics (toggle on); multi = checkbox semantics (toggle on/off). */
2462
+ selectable?: 'single' | 'multi';
2463
+ disabled?: boolean;
2464
+ /** Optional leading icon/visual. */
2465
+ icon?: ReactNode;
2466
+ /** Render as the child element instead of a div (Radix-style composition). */
2467
+ asChild?: boolean;
2468
+ children?: ReactNode;
2469
+ className?: string;
2470
+ }
2471
+ /**
2472
+ * A selectable card. Renders with radio (single) or checkbox (multi) semantics and toggles via
2473
+ * click or Space/Enter. Selection is controllable; `data-selected` drives the visuals via CSS.
2474
+ */
2475
+ declare function Tile({
2476
+ value,
2477
+ selected,
2478
+ defaultSelected,
2479
+ onSelect,
2480
+ selectable,
2481
+ disabled,
2482
+ icon,
2483
+ asChild,
2484
+ children,
2485
+ className
2486
+ }: TileProps): import("react").JSX.Element;
2487
+ type IndicatorPlacement = 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end';
2488
+ interface IndicatorProps {
2489
+ children: React.ReactNode;
2490
+ overlay: React.ReactNode;
2491
+ placement?: IndicatorPlacement;
2492
+ className?: string;
2493
+ }
2494
+ declare function Indicator({
2495
+ children,
2496
+ overlay,
2497
+ placement,
2498
+ className
2499
+ }: IndicatorProps): import("react").JSX.Element;
2500
+ type JoinOrientation = 'horizontal' | 'vertical';
2501
+ interface JoinProps {
2502
+ children: React.ReactNode;
2503
+ orientation?: JoinOrientation;
2504
+ className?: string;
2505
+ }
2506
+ declare function Join({
2507
+ children,
2508
+ orientation,
2509
+ className
2510
+ }: JoinProps): import("react").JSX.Element;
2511
+ interface StackProps {
2512
+ children: React.ReactNode;
2513
+ offset?: number;
2514
+ className?: string;
2515
+ }
2516
+ declare function Stack({
2517
+ children,
2518
+ offset,
2519
+ className
2520
+ }: StackProps): import("react").JSX.Element;
2521
+ interface AppShellProps {
2522
+ /**
2523
+ * Top bar — typically a `<ShellHeader>`. If it is a React element, AppShell
2524
+ * binds its burger (`onMenuClick`/`menuExpanded`) to the nav open state so the
2525
+ * header button toggles the nav out of the box.
2526
+ */
2527
+ header: ReactNode;
2528
+ /** Side navigation — typically a `<SideNav>`. Fills full height and scrolls internally. */
2529
+ nav?: ReactNode;
2530
+ /** Main content. Lives in the single scroll container. */
2531
+ children: ReactNode;
2532
+ /** Optional footer pinned below the content area. */
2533
+ footer?: ReactNode;
2534
+ /** Controlled nav open/visible state. Omit for uncontrolled (see `defaultOpen`). */
2535
+ open?: boolean;
2536
+ /** Initial open state when uncontrolled. Defaults to open on desktop, closed on small screens. */
2537
+ defaultOpen?: boolean;
2538
+ /** Fired when the nav requests open/close (burger, Escape, scrim). */
2539
+ onOpenChange?: ((open: boolean) => void) | undefined;
2540
+ className?: string | undefined;
2541
+ }
2542
+ /**
2543
+ * App shell: composes a header + side navigation + main content into one
2544
+ * sticky-header, full-height-nav, single-scroll-container layout (#11). The
2545
+ * header burger toggles the nav with an animated show/hide that honors
2546
+ * `prefers-reduced-motion` (via `--cascivo-motion-*`), toggles `inert` on the
2547
+ * hidden nav so it leaves the tab order, and renders a mobile drawer + scrim
2548
+ * (#12). Below `lg` (64rem) the nav is an overlay drawer; at `lg`+ it is an
2549
+ * in-flow column whose width animates between its open width and 0.
2550
+ *
2551
+ * Rail vs full-hide reconcile cleanly: AppShell owns the full show/hide (this
2552
+ * `open` state); the SideNav you pass owns its own rail collapse
2553
+ * (`showCollapseToggle`). They compose on different axes and never fight.
2554
+ */
2555
+ declare function AppShell({
2556
+ header,
2557
+ nav,
2558
+ children,
2559
+ footer,
2560
+ open,
2561
+ defaultOpen,
2562
+ onOpenChange,
2563
+ className
2564
+ }: AppShellProps): import("react").JSX.Element;
2565
+ type ChatBubbleSide = 'start' | 'end';
2566
+ interface ChatBubbleProps {
2567
+ children: React.ReactNode;
2568
+ side?: ChatBubbleSide;
2569
+ avatar?: React.ReactNode;
2570
+ name?: string;
2571
+ time?: string;
2572
+ className?: string;
2573
+ }
2574
+ declare function ChatBubble({
2575
+ children,
2576
+ side,
2577
+ avatar,
2578
+ name,
2579
+ time,
2580
+ className
2581
+ }: ChatBubbleProps): import("react").JSX.Element;
2582
+ type RadialProgressSize = 'sm' | 'md' | 'lg';
2583
+ type RadialProgressVariant = 'primary' | 'info' | 'success' | 'warning' | 'error';
2584
+ interface RadialProgressProps {
2585
+ value: number;
2586
+ size?: RadialProgressSize;
2587
+ variant?: RadialProgressVariant;
2588
+ children?: React.ReactNode;
2589
+ 'aria-label'?: string;
2590
+ className?: string;
2591
+ }
2592
+ declare function RadialProgress({
2593
+ value,
2594
+ size,
2595
+ variant,
2596
+ children,
2597
+ className,
2598
+ ...aria
2599
+ }: RadialProgressProps): import("react").JSX.Element;
2600
+ type SwapMode = 'rotate' | 'flip';
2601
+ interface SwapProps {
2602
+ on: React.ReactNode;
2603
+ off: React.ReactNode;
2604
+ checked?: boolean;
2605
+ onChange?: (checked: boolean) => void;
2606
+ mode?: SwapMode;
2607
+ 'aria-label'?: string;
2608
+ className?: string;
2609
+ }
2610
+ declare function Swap({
2611
+ on,
2612
+ off,
2613
+ checked,
2614
+ onChange,
2615
+ mode,
2616
+ className,
2617
+ ...aria
2618
+ }: SwapProps): import("react").JSX.Element;
2619
+ export { Accordion, AccordionContent, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, Alert, AlertDialog, AlertDialogLabels, AlertDialogProps, AlertProps, AppShell, AppShellProps, AspectRatio, AspectRatioProps, Avatar, AvatarProps, Badge, BadgeProps, Blockquote, BlockquoteProps, Breadcrumb, BreadcrumbItem, BreadcrumbProps, Button, ButtonGroup, ButtonGroupProps, ButtonProps, Calendar, CalendarLabels, CalendarProps, Card, CardContent, CardContentProps, CardFooter, CardFooterProps, CardHeader, CardHeaderProps, CardProps, CardTitle, CardTitleProps, Carousel, CarouselLabels, CarouselProps, ChatBubble, ChatBubbleProps, ChatBubbleSide, Checkbox, CheckboxCard, CheckboxCardProps, CheckboxProps, Code, type CodeLang, CodeProps, CodeSnippet, CodeSnippetProps, Collapsible, CollapsibleProps, ColorPicker, ColorPickerLabels, ColorPickerProps, Column, Combobox, ComboboxLabels, ComboboxOption, ComboboxProps, CommandGroup, CommandItem, CommandMenu, CommandMenuProps, CommandPage, ContainedList, ContainedListItem, ContainedListItemProps, ContainedListProps, ContextMenu, ContextMenuItem, ContextMenuItemProps, ContextMenuProps, CopyButton, CopyButtonProps, DataList, DataListItem, DataListProps, DataTable, DataTableLabels, DataTableProps, DatePicker, DatePickerLabels, DatePickerProps, DateRange, DateRangePicker, DateRangePickerLabels, DateRangePickerProps, DateRangePreset, Dock, DockItem, DockProps, Drawer, DrawerProps, Dropdown, DropdownItem, DropdownProps, Editable, EditableProps, EmptyState, EmptyStateProps, ErrorBoundary, Field, FieldProps, FileUploader, FileUploaderLabels, FileUploaderProps, Filter, FilterOption, FilterProps, FilterVariant, FocusScope, Form, FormConfig, FormProps, FormStore, Header, HeaderLabels, HeaderLink, HeaderPanel, HeaderPanelLabels, HeaderPanelProps, HeaderProps, Heading, HeadingLevel, HeadingProps, HeadingSize, HoverCard, HoverCardContent, HoverCardContentProps, HoverCardProps, HoverCardTrigger, HoverCardTriggerProps, IconButton, IconButtonProps, Indicator, IndicatorPlacement, IndicatorProps, InlineLoading, InlineLoadingProps, InlineLoadingStatus, Input, InputGroup, InputGroupAddon, type InputGroupAddonProps, type InputGroupProps, InputProps, Item, ItemActions, ItemActionsProps, ItemContent, ItemContentProps, ItemDescription, ItemDescriptionProps, ItemMedia, ItemMediaProps, ItemProps, ItemTitle, ItemTitleProps, Join, JoinOrientation, JoinProps, Kbd, KbdProps, Label, LabelProps, Link, LinkProps, List, ListItem, ListItemProps, ListProps, Menu, MenuButton, MenuButtonItem, MenuButtonProps, MenuItem, MenuItemProps, MenuProps, MenuSeparator, MenuTrigger, MenuTriggerProps, Menubar, MenubarItem, MenubarMenu, MenubarProps, Modal, ModalProps, MultiSelect, MultiSelectLabels, MultiSelectOption, MultiSelectProps, NativeSelect, NativeSelectOption, NativeSelectProps, NavigationMenu, NavigationMenuItem, NavigationMenuProps, Notification, NotificationProps, NotificationVariant, NumberInput, NumberInputProps, OtpInput, OtpInputProps, OverflowMenu, OverflowMenuItem, OverflowMenuProps, Pagination, PaginationLabels, PaginationProps, PasswordInput, PasswordInputLabels, PasswordInputProps, Popover, PopoverContent, PopoverContentProps, PopoverProps, PopoverTrigger, PopoverTriggerProps, Portal, Progress, ProgressBar, ProgressBarProps, ProgressCircle, ProgressCircleProps, ProgressIndicator, ProgressIndicatorProps, ProgressProps, ProgressSize, ProgressStep, ProgressVariant, Prose, ProseProps, RadialProgress, RadialProgressProps, RadialProgressSize, RadialProgressVariant, Radio, RadioCard, RadioCardGroup, RadioCardGroupProps, RadioCardProps, RadioGroup, RadioGroupProps, RadioProps, RatingGroup, RatingGroupLabels, RatingGroupProps, Resizable, ResizableProps, ScrollArea, ScrollAreaProps, Search, SearchProps, SegmentedControl, SegmentedControlOption, SegmentedControlProps, Select, SelectOption, SelectProps, Separator, SeparatorProps, Sheet, SheetProps, ShellHeader, ShellHeaderAction, ShellHeaderBrand, ShellHeaderLabels, ShellHeaderNavItem, ShellHeaderNavLink, ShellHeaderNavMenu, ShellHeaderNavMenuItem, ShellHeaderProps, SideNav, SideNavGroup, SideNavItem, SideNavProps, SideNavSubItem, Skeleton, SkeletonProps, SkipNavLink, SkipNavLinkProps, SkipNavTarget, SkipNavTargetProps, Slider, SliderProps, SortDirection, SortState, Spinner, SpinnerProps, Stack, StackProps, type StandardSchemaV1, Stat, StatProps, Status, StatusProps, Step, StepState, Steps, StepsProps, StructuredList, StructuredListItem, StructuredListProps, SuspenseBoundary, Swap, SwapMode, SwapProps, Switcher, SwitcherEntry, SwitcherLink, SwitcherProps, Tabs, TabsContent, TabsContentProps, TabsList, TabsProps, TabsTrigger, TabsTriggerProps, Tag$1 as Tag, TagProps, TagsInput, TagsInputProps, Text, TextProps, Textarea, TextareaProps, Tile, TileProps, TimePicker, TimePickerProps, Timeline, TimelineItem, TimelineProps, ToastOptions, ToastProvider, ToastVariant, Toggle, ToggleGroup, ToggleGroupItem, ToggleGroupProps, ToggleProps, Toggletip, ToggletipPlacement, ToggletipProps, Tooltip, TooltipProps, TreeNode, TreeView, TreeViewProps, UploaderFile, type UsePopoverOptions, type UsePopoverReturn, VisuallyHidden, VisuallyHiddenProps, createForm, dismissAllToasts, fuzzyScore, treeViewMessages, useForm, usePopover, useToast };