@aurora-ds/components 0.25.1 → 1.1.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 (653) hide show
  1. package/README.md +32 -187
  2. package/dist/cjs/index.js +2607 -3475
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/esm/index.js +2581 -3444
  5. package/dist/esm/index.js.map +1 -1
  6. package/dist/index.d.ts +801 -1819
  7. package/package.json +92 -77
  8. package/dist/cjs/components/actions/button/Button.d.ts +0 -20
  9. package/dist/cjs/components/actions/button/Button.props.d.ts +0 -60
  10. package/dist/cjs/components/actions/button/Button.styles.d.ts +0 -18
  11. package/dist/cjs/components/actions/button/index.d.ts +0 -2
  12. package/dist/cjs/components/actions/button/utils/getButtonSizeStyles.utils.d.ts +0 -12
  13. package/dist/cjs/components/actions/button/utils/getButtonVariantStyles.utils.d.ts +0 -7
  14. package/dist/cjs/components/actions/button-toggle/ButtonToggle/ButtonToggle.d.ts +0 -15
  15. package/dist/cjs/components/actions/button-toggle/ButtonToggle/ButtonToggle.props.d.ts +0 -48
  16. package/dist/cjs/components/actions/button-toggle/ButtonToggle/ButtonToggle.styles.d.ts +0 -4
  17. package/dist/cjs/components/actions/button-toggle/ButtonToggle/index.d.ts +0 -2
  18. package/dist/cjs/components/actions/button-toggle/ButtonToggleGroup/ButtonToggleGroup.d.ts +0 -14
  19. package/dist/cjs/components/actions/button-toggle/ButtonToggleGroup/ButtonToggleGroup.props.d.ts +0 -29
  20. package/dist/cjs/components/actions/button-toggle/ButtonToggleGroup/ButtonToggleGroup.styles.d.ts +0 -3
  21. package/dist/cjs/components/actions/button-toggle/ButtonToggleGroup/index.d.ts +0 -2
  22. package/dist/cjs/components/actions/button-toggle/index.d.ts +0 -2
  23. package/dist/cjs/components/actions/icon-button/IconButton.d.ts +0 -17
  24. package/dist/cjs/components/actions/icon-button/IconButton.props.d.ts +0 -55
  25. package/dist/cjs/components/actions/icon-button/IconButton.styles.d.ts +0 -4
  26. package/dist/cjs/components/actions/icon-button/index.d.ts +0 -2
  27. package/dist/cjs/components/actions/icon-button/utils/getIconButtonSizeStyles.utils.d.ts +0 -9
  28. package/dist/cjs/components/data-display/avatar/Avatar.d.ts +0 -24
  29. package/dist/cjs/components/data-display/avatar/Avatar.props.d.ts +0 -39
  30. package/dist/cjs/components/data-display/avatar/Avatar.styles.d.ts +0 -10
  31. package/dist/cjs/components/data-display/avatar/AvatarGroup.d.ts +0 -9
  32. package/dist/cjs/components/data-display/avatar/avatar-group/AvatarGroup.d.ts +0 -9
  33. package/dist/cjs/components/data-display/avatar/avatar-group/AvatarGroup.props.d.ts +0 -10
  34. package/dist/cjs/components/data-display/avatar/avatar-group/AvatarGroup.styles.d.ts +0 -14
  35. package/dist/cjs/components/data-display/avatar/index.d.ts +0 -4
  36. package/dist/cjs/components/data-display/avatar/utils/getAvatarSizes.utils.d.ts +0 -11
  37. package/dist/cjs/components/data-display/chip/Chip.d.ts +0 -16
  38. package/dist/cjs/components/data-display/chip/Chip.props.d.ts +0 -40
  39. package/dist/cjs/components/data-display/chip/Chip.styles.d.ts +0 -4
  40. package/dist/cjs/components/data-display/chip/index.d.ts +0 -2
  41. package/dist/cjs/components/data-display/chip/utils/getChipColorStyles.utils.d.ts +0 -12
  42. package/dist/cjs/components/data-display/chip/utils/getChipContentSize.utils.d.ts +0 -6
  43. package/dist/cjs/components/data-display/chip/utils/getChipSizeStyles.utils.d.ts +0 -10
  44. package/dist/cjs/components/data-display/icon/Icon.d.ts +0 -35
  45. package/dist/cjs/components/data-display/icon/Icon.props.d.ts +0 -14
  46. package/dist/cjs/components/data-display/icon/Icon.styles.d.ts +0 -3
  47. package/dist/cjs/components/data-display/icon/index.d.ts +0 -2
  48. package/dist/cjs/components/data-display/skeleton/Skeleton.d.ts +0 -4
  49. package/dist/cjs/components/data-display/skeleton/Skeleton.props.d.ts +0 -7
  50. package/dist/cjs/components/data-display/skeleton/Skeleton.styles.d.ts +0 -3
  51. package/dist/cjs/components/data-display/skeleton/index.d.ts +0 -2
  52. package/dist/cjs/components/data-display/status/Status.d.ts +0 -16
  53. package/dist/cjs/components/data-display/status/Status.props.d.ts +0 -40
  54. package/dist/cjs/components/data-display/status/Status.styles.d.ts +0 -4
  55. package/dist/cjs/components/data-display/status/index.d.ts +0 -2
  56. package/dist/cjs/components/data-display/status/utils/getStatusColorStyles.utils.d.ts +0 -7
  57. package/dist/cjs/components/data-display/status/utils/getStatusContentSize.utils.d.ts +0 -8
  58. package/dist/cjs/components/data-display/status/utils/getStatusSizeStyles.utils.d.ts +0 -12
  59. package/dist/cjs/components/forms/date-picker/DatePicker.d.ts +0 -3
  60. package/dist/cjs/components/forms/date-picker/DatePicker.props.d.ts +0 -29
  61. package/dist/cjs/components/forms/date-picker/DatePicker.styles.d.ts +0 -9
  62. package/dist/cjs/components/forms/date-picker/calendar/Calendar.d.ts +0 -3
  63. package/dist/cjs/components/forms/date-picker/calendar/Calendar.props.d.ts +0 -13
  64. package/dist/cjs/components/forms/date-picker/calendar/Calendar.styles.d.ts +0 -3
  65. package/dist/cjs/components/forms/date-picker/calendar/calendar-grid/CalendarGrid.d.ts +0 -3
  66. package/dist/cjs/components/forms/date-picker/calendar/calendar-grid/CalendarGrid.props.d.ts +0 -20
  67. package/dist/cjs/components/forms/date-picker/calendar/calendar-grid/CalendarGrid.styles.d.ts +0 -13
  68. package/dist/cjs/components/forms/date-picker/calendar/calendar-header/CalendarHeader.d.ts +0 -3
  69. package/dist/cjs/components/forms/date-picker/calendar/calendar-header/CalendarHeader.props.d.ts +0 -15
  70. package/dist/cjs/components/forms/date-picker/calendar/calendar-header/CalendarHeader.styles.d.ts +0 -6
  71. package/dist/cjs/components/forms/date-picker/calendar/index.d.ts +0 -2
  72. package/dist/cjs/components/forms/date-picker/index.d.ts +0 -2
  73. package/dist/cjs/components/forms/date-picker/utils/datePicker.utils.d.ts +0 -13
  74. package/dist/cjs/components/forms/file-picker/FilePicker.d.ts +0 -24
  75. package/dist/cjs/components/forms/file-picker/FilePicker.props.d.ts +0 -99
  76. package/dist/cjs/components/forms/file-picker/FilePicker.styles.d.ts +0 -19
  77. package/dist/cjs/components/forms/file-picker/index.d.ts +0 -2
  78. package/dist/cjs/components/forms/form/Form.d.ts +0 -3
  79. package/dist/cjs/components/forms/form/Form.props.d.ts +0 -9
  80. package/dist/cjs/components/forms/form/Form.styles.d.ts +0 -3
  81. package/dist/cjs/components/forms/form/index.d.ts +0 -2
  82. package/dist/cjs/components/forms/image-picker/ImagePicker.d.ts +0 -18
  83. package/dist/cjs/components/forms/image-picker/ImagePicker.props.d.ts +0 -76
  84. package/dist/cjs/components/forms/image-picker/index.d.ts +0 -2
  85. package/dist/cjs/components/forms/input/Input.d.ts +0 -3
  86. package/dist/cjs/components/forms/input/Input.props.d.ts +0 -46
  87. package/dist/cjs/components/forms/input/Input.styles.d.ts +0 -15
  88. package/dist/cjs/components/forms/input/index.d.ts +0 -2
  89. package/dist/cjs/components/forms/select/Select.d.ts +0 -25
  90. package/dist/cjs/components/forms/select/Select.props.d.ts +0 -54
  91. package/dist/cjs/components/forms/select/Select.styles.d.ts +0 -10
  92. package/dist/cjs/components/forms/select/SelectItem/SelectItem.d.ts +0 -7
  93. package/dist/cjs/components/forms/select/SelectItem/SelectItem.props.d.ts +0 -19
  94. package/dist/cjs/components/forms/select/SelectItem/SelectItem.styles.d.ts +0 -7
  95. package/dist/cjs/components/forms/select/SelectItem/index.d.ts +0 -2
  96. package/dist/cjs/components/forms/select/index.d.ts +0 -2
  97. package/dist/cjs/components/forms/textarea/TextArea.d.ts +0 -3
  98. package/dist/cjs/components/forms/textarea/TextArea.props.d.ts +0 -39
  99. package/dist/cjs/components/forms/textarea/TextArea.styles.d.ts +0 -11
  100. package/dist/cjs/components/forms/textarea/index.d.ts +0 -2
  101. package/dist/cjs/components/foundation/icon/Icon.d.ts +0 -42
  102. package/dist/cjs/components/foundation/icon/Icon.props.d.ts +0 -26
  103. package/dist/cjs/components/foundation/icon/Icon.styles.d.ts +0 -3
  104. package/dist/cjs/components/foundation/icon/index.d.ts +0 -2
  105. package/dist/cjs/components/foundation/text/Text.d.ts +0 -21
  106. package/dist/cjs/components/foundation/text/Text.props.d.ts +0 -40
  107. package/dist/cjs/components/foundation/text/Text.styles.d.ts +0 -4
  108. package/dist/cjs/components/foundation/text/index.d.ts +0 -2
  109. package/dist/cjs/components/foundation/text/utils/getTextVariantStyles.utils.d.ts +0 -7
  110. package/dist/cjs/components/foundation/text/utils/getTruncateTextStyles.utils.d.ts +0 -21
  111. package/dist/cjs/components/foundation/text/utils/parseTextWithBold.utils.d.ts +0 -7
  112. package/dist/cjs/components/index.d.ts +0 -35
  113. package/dist/cjs/components/inputs/button/Button.d.ts +0 -12
  114. package/dist/cjs/components/inputs/button/Button.props.d.ts +0 -28
  115. package/dist/cjs/components/inputs/button/Button.styles.d.ts +0 -18
  116. package/dist/cjs/components/inputs/button/index.d.ts +0 -2
  117. package/dist/cjs/components/inputs/icon-button/IconButton.d.ts +0 -4
  118. package/dist/cjs/components/inputs/icon-button/IconButton.props.d.ts +0 -27
  119. package/dist/cjs/components/inputs/icon-button/IconButton.styles.d.ts +0 -4
  120. package/dist/cjs/components/inputs/icon-button/index.d.ts +0 -2
  121. package/dist/cjs/components/inputs/input/Input.d.ts +0 -6
  122. package/dist/cjs/components/inputs/input/Input.props.d.ts +0 -17
  123. package/dist/cjs/components/inputs/input/Input.styles.d.ts +0 -7
  124. package/dist/cjs/components/inputs/input/index.d.ts +0 -2
  125. package/dist/cjs/components/layout/accordion/Accordion.d.ts +0 -10
  126. package/dist/cjs/components/layout/accordion/Accordion.props.d.ts +0 -36
  127. package/dist/cjs/components/layout/accordion/Accordion.styles.d.ts +0 -7
  128. package/dist/cjs/components/layout/accordion/index.d.ts +0 -2
  129. package/dist/cjs/components/layout/box/Box.d.ts +0 -23
  130. package/dist/cjs/components/layout/box/Box.props.d.ts +0 -139
  131. package/dist/cjs/components/layout/box/Box.styles.d.ts +0 -7
  132. package/dist/cjs/components/layout/box/index.d.ts +0 -2
  133. package/dist/cjs/components/layout/card/Card.d.ts +0 -14
  134. package/dist/cjs/components/layout/card/Card.props.d.ts +0 -68
  135. package/dist/cjs/components/layout/card/Card.styles.d.ts +0 -7
  136. package/dist/cjs/components/layout/card/index.d.ts +0 -2
  137. package/dist/cjs/components/layout/grid/Grid.d.ts +0 -15
  138. package/dist/cjs/components/layout/grid/Grid.props.d.ts +0 -57
  139. package/dist/cjs/components/layout/grid/Grid.styles.d.ts +0 -7
  140. package/dist/cjs/components/layout/grid/index.d.ts +0 -2
  141. package/dist/cjs/components/layout/page-construction/page/Page.d.ts +0 -10
  142. package/dist/cjs/components/layout/page-construction/page/Page.props.d.ts +0 -30
  143. package/dist/cjs/components/layout/page-construction/page/Page.styles.d.ts +0 -5
  144. package/dist/cjs/components/layout/page-construction/page/index.d.ts +0 -2
  145. package/dist/cjs/components/layout/page-construction/page-section/PageSection.d.ts +0 -10
  146. package/dist/cjs/components/layout/page-construction/page-section/PageSection.props.d.ts +0 -34
  147. package/dist/cjs/components/layout/page-construction/page-section/PageSection.styles.d.ts +0 -4
  148. package/dist/cjs/components/layout/page-construction/page-section/index.d.ts +0 -2
  149. package/dist/cjs/components/layout/separator/Separator.d.ts +0 -9
  150. package/dist/cjs/components/layout/separator/Separator.props.d.ts +0 -17
  151. package/dist/cjs/components/layout/separator/Separator.styles.d.ts +0 -7
  152. package/dist/cjs/components/layout/separator/index.d.ts +0 -2
  153. package/dist/cjs/components/layout/stack/Stack.d.ts +0 -13
  154. package/dist/cjs/components/layout/stack/Stack.props.d.ts +0 -42
  155. package/dist/cjs/components/layout/stack/Stack.styles.d.ts +0 -7
  156. package/dist/cjs/components/layout/stack/index.d.ts +0 -2
  157. package/dist/cjs/components/layout/text/Text.d.ts +0 -21
  158. package/dist/cjs/components/layout/text/Text.props.d.ts +0 -28
  159. package/dist/cjs/components/layout/text/Text.styles.d.ts +0 -4
  160. package/dist/cjs/components/layout/text/index.d.ts +0 -2
  161. package/dist/cjs/components/navigation/breadcrumb/Breadcrumb.d.ts +0 -12
  162. package/dist/cjs/components/navigation/breadcrumb/Breadcrumb.props.d.ts +0 -13
  163. package/dist/cjs/components/navigation/breadcrumb/Breadcrumb.styles.d.ts +0 -6
  164. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.d.ts +0 -8
  165. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.props.d.ts +0 -5
  166. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.styles.d.ts +0 -7
  167. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/index.d.ts +0 -2
  168. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis.d.ts +0 -9
  169. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.d.ts +0 -6
  170. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.styles.d.ts +0 -6
  171. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem/index.d.ts +0 -1
  172. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem.d.ts +0 -6
  173. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.d.ts +0 -7
  174. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.props.d.ts +0 -14
  175. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.styles.d.ts +0 -7
  176. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/index.d.ts +0 -2
  177. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink.d.ts +0 -6
  178. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.d.ts +0 -6
  179. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.styles.d.ts +0 -6
  180. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList/index.d.ts +0 -1
  181. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList.d.ts +0 -6
  182. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.d.ts +0 -7
  183. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.props.d.ts +0 -10
  184. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.styles.d.ts +0 -7
  185. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/index.d.ts +0 -2
  186. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage.d.ts +0 -6
  187. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.d.ts +0 -7
  188. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.props.d.ts +0 -5
  189. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.styles.d.ts +0 -6
  190. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/index.d.ts +0 -2
  191. package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator.d.ts +0 -9
  192. package/dist/cjs/components/navigation/breadcrumb/index.d.ts +0 -10
  193. package/dist/cjs/components/navigation/breadcrumb/utils/buildBreadcrumbChildren.utils.d.ts +0 -5
  194. package/dist/cjs/components/navigation/breadcrumb/utils/flattenChildren.utils.d.ts +0 -5
  195. package/dist/cjs/components/navigation/breadcrumb/utils/insertSeparators.utils.d.ts +0 -5
  196. package/dist/cjs/components/navigation/breadcrumb/utils/isSeparator.utils.d.ts +0 -5
  197. package/dist/cjs/components/navigation/drawer-item/DrawerItem.d.ts +0 -10
  198. package/dist/cjs/components/navigation/drawer-item/DrawerItem.props.d.ts +0 -31
  199. package/dist/cjs/components/navigation/drawer-item/DrawerItem.styles.d.ts +0 -7
  200. package/dist/cjs/components/navigation/drawer-item/index.d.ts +0 -2
  201. package/dist/cjs/components/navigation/pagination/Pagination.d.ts +0 -6
  202. package/dist/cjs/components/navigation/pagination/Pagination.props.d.ts +0 -24
  203. package/dist/cjs/components/navigation/pagination/Pagination.styles.d.ts +0 -7
  204. package/dist/cjs/components/navigation/pagination/index.d.ts +0 -2
  205. package/dist/cjs/components/navigation/tabs/Tabs.d.ts +0 -7
  206. package/dist/cjs/components/navigation/tabs/Tabs.props.d.ts +0 -12
  207. package/dist/cjs/components/navigation/tabs/Tabs.styles.d.ts +0 -7
  208. package/dist/cjs/components/navigation/tabs/index.d.ts +0 -4
  209. package/dist/cjs/components/navigation/tabs/tab-item/TabItem.d.ts +0 -7
  210. package/dist/cjs/components/navigation/tabs/tab-item/TabItem.props.d.ts +0 -15
  211. package/dist/cjs/components/navigation/tabs/tab-item/TabItem.styles.d.ts +0 -6
  212. package/dist/cjs/components/overlay/accordion/Accordion.d.ts +0 -10
  213. package/dist/cjs/components/overlay/accordion/Accordion.props.d.ts +0 -52
  214. package/dist/cjs/components/overlay/accordion/Accordion.styles.d.ts +0 -7
  215. package/dist/cjs/components/overlay/accordion/index.d.ts +0 -2
  216. package/dist/cjs/components/overlay/alert/Alert.d.ts +0 -37
  217. package/dist/cjs/components/overlay/alert/Alert.props.d.ts +0 -56
  218. package/dist/cjs/components/overlay/alert/Alert.styles.d.ts +0 -4
  219. package/dist/cjs/components/overlay/alert/index.d.ts +0 -2
  220. package/dist/cjs/components/overlay/alert/utils/getAlertIcon.utils.d.ts +0 -8
  221. package/dist/cjs/components/overlay/alert/utils/getAlertPositionStyles.utils.d.ts +0 -8
  222. package/dist/cjs/components/overlay/alert/utils/getAlertVariantColors.utils.d.ts +0 -14
  223. package/dist/cjs/components/overlay/menu/Menu.d.ts +0 -4
  224. package/dist/cjs/components/overlay/menu/Menu.props.d.ts +0 -14
  225. package/dist/cjs/components/overlay/menu/Menu.styles.d.ts +0 -13
  226. package/dist/cjs/components/overlay/menu/MenuGroup/MenuGroup.d.ts +0 -4
  227. package/dist/cjs/components/overlay/menu/MenuGroup/MenuGroup.props.d.ts +0 -4
  228. package/dist/cjs/components/overlay/menu/MenuGroup/MenuGroup.styles.d.ts +0 -3
  229. package/dist/cjs/components/overlay/menu/MenuGroup/index.d.ts +0 -2
  230. package/dist/cjs/components/overlay/menu/MenuItem/MenuItem.d.ts +0 -4
  231. package/dist/cjs/components/overlay/menu/MenuItem/MenuItem.props.d.ts +0 -14
  232. package/dist/cjs/components/overlay/menu/MenuItem/MenuItem.styles.d.ts +0 -4
  233. package/dist/cjs/components/overlay/menu/MenuItem/index.d.ts +0 -2
  234. package/dist/cjs/components/overlay/menu/index.d.ts +0 -6
  235. package/dist/cjs/components/overlay/modal/Modal.d.ts +0 -28
  236. package/dist/cjs/components/overlay/modal/Modal.props.d.ts +0 -10
  237. package/dist/cjs/components/overlay/modal/Modal.styles.d.ts +0 -4
  238. package/dist/cjs/components/overlay/modal/index.d.ts +0 -2
  239. package/dist/cjs/constants/animations.d.ts +0 -1
  240. package/dist/cjs/constants/globalConstants.d.ts +0 -5
  241. package/dist/cjs/hooks/index.d.ts +0 -7
  242. package/dist/cjs/hooks/useAlert.d.ts +0 -23
  243. package/dist/cjs/hooks/useAlert.types.d.ts +0 -56
  244. package/dist/cjs/hooks/useAnchorPosition.d.ts +0 -17
  245. package/dist/cjs/hooks/useAnchorPosition.types.d.ts +0 -5
  246. package/dist/cjs/hooks/useClickOutside.d.ts +0 -8
  247. package/dist/cjs/hooks/useTransitionRender.d.ts +0 -7
  248. package/dist/cjs/hooks/useTransitionRender.types.d.ts +0 -4
  249. package/dist/cjs/index.d.ts +0 -6
  250. package/dist/cjs/interfaces/alert.types.d.ts +0 -8
  251. package/dist/cjs/interfaces/avatar.types.d.ts +0 -2
  252. package/dist/cjs/interfaces/button.types.d.ts +0 -36
  253. package/dist/cjs/interfaces/card.types.d.ts +0 -3
  254. package/dist/cjs/interfaces/chip.types.d.ts +0 -6
  255. package/dist/cjs/interfaces/index.d.ts +0 -7
  256. package/dist/cjs/interfaces/select.types.d.ts +0 -5
  257. package/dist/cjs/interfaces/stack.types.d.ts +0 -7
  258. package/dist/cjs/interfaces/status.types.d.ts +0 -6
  259. package/dist/cjs/interfaces/text.types.d.ts +0 -7
  260. package/dist/cjs/interfaces/theme.contracts.d.ts +0 -243
  261. package/dist/cjs/resources/Icons.d.ts +0 -15
  262. package/dist/cjs/resources/icons/AlertCircleIcon.d.ts +0 -2
  263. package/dist/cjs/resources/icons/AlertTriangleIcon.d.ts +0 -2
  264. package/dist/cjs/resources/icons/CalendarIcon.d.ts +0 -1
  265. package/dist/cjs/resources/icons/CheckCircleIcon.d.ts +0 -2
  266. package/dist/cjs/resources/icons/ChevronDownIcon.d.ts +0 -1
  267. package/dist/cjs/resources/icons/ChevronLeftIcon.d.ts +0 -1
  268. package/dist/cjs/resources/icons/ChevronRightIcon.d.ts +0 -1
  269. package/dist/cjs/resources/icons/CloseIcon.d.ts +0 -2
  270. package/dist/cjs/resources/icons/EyeIcon.d.ts +0 -1
  271. package/dist/cjs/resources/icons/EyeOffIcon.d.ts +0 -1
  272. package/dist/cjs/resources/icons/InfoIcon.d.ts +0 -1
  273. package/dist/cjs/resources/icons/MoreHorizontalIcon.d.ts +0 -1
  274. package/dist/cjs/resources/icons/PlusIcon.d.ts +0 -2
  275. package/dist/cjs/resources/icons/TrashIcon.d.ts +0 -2
  276. package/dist/cjs/resources/icons/UploadIcon.d.ts +0 -2
  277. package/dist/cjs/theme/defaultTheme.d.ts +0 -29
  278. package/dist/cjs/theme/theme.module.d.ts +0 -32
  279. package/dist/cjs/theme/theme.types.d.ts +0 -17
  280. package/dist/cjs/theme/types/themeBreakpoints.types.d.ts +0 -5
  281. package/dist/cjs/theme/types/themeColor.types.d.ts +0 -5
  282. package/dist/cjs/theme/types/themeFontSize.types.d.ts +0 -5
  283. package/dist/cjs/theme/types/themeFontWeight.types.d.ts +0 -5
  284. package/dist/cjs/theme/types/themeLineHeight.types.d.ts +0 -5
  285. package/dist/cjs/theme/types/themeOpacity.types.d.ts +0 -5
  286. package/dist/cjs/theme/types/themeRadius.types.d.ts +0 -5
  287. package/dist/cjs/theme/types/themeShadows.types.d.ts +0 -5
  288. package/dist/cjs/theme/types/themeSpacing.types.d.ts +0 -5
  289. package/dist/cjs/theme/types/themeTransition.types.d.ts +0 -5
  290. package/dist/cjs/theme/types/themeZIndex.types.d.ts +0 -5
  291. package/dist/cjs/theme/values/themeBreakpoints.d.ts +0 -5
  292. package/dist/cjs/theme/values/themeColors.d.ts +0 -6
  293. package/dist/cjs/theme/values/themeFontSize.d.ts +0 -5
  294. package/dist/cjs/theme/values/themeFontWeight.d.ts +0 -5
  295. package/dist/cjs/theme/values/themeLineHeight.d.ts +0 -5
  296. package/dist/cjs/theme/values/themeOpacity.d.ts +0 -5
  297. package/dist/cjs/theme/values/themeRadius.d.ts +0 -5
  298. package/dist/cjs/theme/values/themeShadows.d.ts +0 -5
  299. package/dist/cjs/theme/values/themeSpacing.d.ts +0 -5
  300. package/dist/cjs/theme/values/themeTransition.d.ts +0 -5
  301. package/dist/cjs/theme/values/themeZIndex.d.ts +0 -5
  302. package/dist/cjs/utils/ui/components/actions/button/getButtonSizeStyles.utils.d.ts +0 -12
  303. package/dist/cjs/utils/ui/components/actions/button/getButtonVariantStyles.utils.d.ts +0 -7
  304. package/dist/cjs/utils/ui/components/actions/icon-button/getIconButtonSizeStyles.utils.d.ts +0 -9
  305. package/dist/cjs/utils/ui/components/button/getButtonVariantStyles.utils.d.ts +0 -7
  306. package/dist/cjs/utils/ui/components/chip/getChipColorStyles.utils.d.ts +0 -7
  307. package/dist/cjs/utils/ui/components/chip/getChipContentSize.utils.d.ts +0 -8
  308. package/dist/cjs/utils/ui/components/chip/getChipSizeStyles.utils.d.ts +0 -12
  309. package/dist/cjs/utils/ui/components/data-display/avatar/getAvatarSizes.utils.d.ts +0 -11
  310. package/dist/cjs/utils/ui/components/data-display/chip/getChipColorStyles.utils.d.ts +0 -7
  311. package/dist/cjs/utils/ui/components/data-display/chip/getChipContentSize.utils.d.ts +0 -8
  312. package/dist/cjs/utils/ui/components/data-display/chip/getChipSizeStyles.utils.d.ts +0 -12
  313. package/dist/cjs/utils/ui/components/data-display/status/getStatusColorStyles.utils.d.ts +0 -7
  314. package/dist/cjs/utils/ui/components/data-display/status/getStatusContentSize.utils.d.ts +0 -8
  315. package/dist/cjs/utils/ui/components/data-display/status/getStatusSizeStyles.utils.d.ts +0 -12
  316. package/dist/cjs/utils/ui/components/date-picker/datePicker.utils.d.ts +0 -13
  317. package/dist/cjs/utils/ui/components/foundation/text/getTextVariantStyles.utils.d.ts +0 -7
  318. package/dist/cjs/utils/ui/components/foundation/text/getTruncateTextStyles.utils.d.ts +0 -21
  319. package/dist/cjs/utils/ui/components/foundation/text/parseTextWithBold.utils.d.ts +0 -7
  320. package/dist/cjs/utils/ui/components/icon-button/getIconButtonSizeStyles.utils.d.ts +0 -9
  321. package/dist/cjs/utils/ui/components/navigation/breadcrumb/buildBreadcrumbChildren.utils.d.ts +0 -5
  322. package/dist/cjs/utils/ui/components/navigation/breadcrumb/flattenChildren.utils.d.ts +0 -5
  323. package/dist/cjs/utils/ui/components/navigation/breadcrumb/insertSeparators.utils.d.ts +0 -5
  324. package/dist/cjs/utils/ui/components/navigation/breadcrumb/isSeparator.utils.d.ts +0 -5
  325. package/dist/cjs/utils/ui/components/overlay/alert/getAlertIcon.utils.d.ts +0 -8
  326. package/dist/cjs/utils/ui/components/overlay/alert/getAlertPositionStyles.utils.d.ts +0 -8
  327. package/dist/cjs/utils/ui/components/overlay/alert/getAlertVariantColors.utils.d.ts +0 -14
  328. package/dist/cjs/utils/ui/components/text/getTextVariantStyles.utils.d.ts +0 -7
  329. package/dist/cjs/utils/ui/components/text/getTruncateTextStyles.utils.d.ts +0 -17
  330. package/dist/cjs/utils/ui/components/text/parseTextWithBold.utils.d.ts +0 -7
  331. package/dist/esm/components/actions/button/Button.d.ts +0 -20
  332. package/dist/esm/components/actions/button/Button.props.d.ts +0 -60
  333. package/dist/esm/components/actions/button/Button.styles.d.ts +0 -18
  334. package/dist/esm/components/actions/button/index.d.ts +0 -2
  335. package/dist/esm/components/actions/button/utils/getButtonSizeStyles.utils.d.ts +0 -12
  336. package/dist/esm/components/actions/button/utils/getButtonVariantStyles.utils.d.ts +0 -7
  337. package/dist/esm/components/actions/button-toggle/ButtonToggle/ButtonToggle.d.ts +0 -15
  338. package/dist/esm/components/actions/button-toggle/ButtonToggle/ButtonToggle.props.d.ts +0 -48
  339. package/dist/esm/components/actions/button-toggle/ButtonToggle/ButtonToggle.styles.d.ts +0 -4
  340. package/dist/esm/components/actions/button-toggle/ButtonToggle/index.d.ts +0 -2
  341. package/dist/esm/components/actions/button-toggle/ButtonToggleGroup/ButtonToggleGroup.d.ts +0 -14
  342. package/dist/esm/components/actions/button-toggle/ButtonToggleGroup/ButtonToggleGroup.props.d.ts +0 -29
  343. package/dist/esm/components/actions/button-toggle/ButtonToggleGroup/ButtonToggleGroup.styles.d.ts +0 -3
  344. package/dist/esm/components/actions/button-toggle/ButtonToggleGroup/index.d.ts +0 -2
  345. package/dist/esm/components/actions/button-toggle/index.d.ts +0 -2
  346. package/dist/esm/components/actions/icon-button/IconButton.d.ts +0 -17
  347. package/dist/esm/components/actions/icon-button/IconButton.props.d.ts +0 -55
  348. package/dist/esm/components/actions/icon-button/IconButton.styles.d.ts +0 -4
  349. package/dist/esm/components/actions/icon-button/index.d.ts +0 -2
  350. package/dist/esm/components/actions/icon-button/utils/getIconButtonSizeStyles.utils.d.ts +0 -9
  351. package/dist/esm/components/data-display/avatar/Avatar.d.ts +0 -24
  352. package/dist/esm/components/data-display/avatar/Avatar.props.d.ts +0 -39
  353. package/dist/esm/components/data-display/avatar/Avatar.styles.d.ts +0 -10
  354. package/dist/esm/components/data-display/avatar/AvatarGroup.d.ts +0 -9
  355. package/dist/esm/components/data-display/avatar/avatar-group/AvatarGroup.d.ts +0 -9
  356. package/dist/esm/components/data-display/avatar/avatar-group/AvatarGroup.props.d.ts +0 -10
  357. package/dist/esm/components/data-display/avatar/avatar-group/AvatarGroup.styles.d.ts +0 -14
  358. package/dist/esm/components/data-display/avatar/index.d.ts +0 -4
  359. package/dist/esm/components/data-display/avatar/utils/getAvatarSizes.utils.d.ts +0 -11
  360. package/dist/esm/components/data-display/chip/Chip.d.ts +0 -16
  361. package/dist/esm/components/data-display/chip/Chip.props.d.ts +0 -40
  362. package/dist/esm/components/data-display/chip/Chip.styles.d.ts +0 -4
  363. package/dist/esm/components/data-display/chip/index.d.ts +0 -2
  364. package/dist/esm/components/data-display/chip/utils/getChipColorStyles.utils.d.ts +0 -12
  365. package/dist/esm/components/data-display/chip/utils/getChipContentSize.utils.d.ts +0 -6
  366. package/dist/esm/components/data-display/chip/utils/getChipSizeStyles.utils.d.ts +0 -10
  367. package/dist/esm/components/data-display/icon/Icon.d.ts +0 -35
  368. package/dist/esm/components/data-display/icon/Icon.props.d.ts +0 -14
  369. package/dist/esm/components/data-display/icon/Icon.styles.d.ts +0 -3
  370. package/dist/esm/components/data-display/icon/index.d.ts +0 -2
  371. package/dist/esm/components/data-display/skeleton/Skeleton.d.ts +0 -4
  372. package/dist/esm/components/data-display/skeleton/Skeleton.props.d.ts +0 -7
  373. package/dist/esm/components/data-display/skeleton/Skeleton.styles.d.ts +0 -3
  374. package/dist/esm/components/data-display/skeleton/index.d.ts +0 -2
  375. package/dist/esm/components/data-display/status/Status.d.ts +0 -16
  376. package/dist/esm/components/data-display/status/Status.props.d.ts +0 -40
  377. package/dist/esm/components/data-display/status/Status.styles.d.ts +0 -4
  378. package/dist/esm/components/data-display/status/index.d.ts +0 -2
  379. package/dist/esm/components/data-display/status/utils/getStatusColorStyles.utils.d.ts +0 -7
  380. package/dist/esm/components/data-display/status/utils/getStatusContentSize.utils.d.ts +0 -8
  381. package/dist/esm/components/data-display/status/utils/getStatusSizeStyles.utils.d.ts +0 -12
  382. package/dist/esm/components/forms/date-picker/DatePicker.d.ts +0 -3
  383. package/dist/esm/components/forms/date-picker/DatePicker.props.d.ts +0 -29
  384. package/dist/esm/components/forms/date-picker/DatePicker.styles.d.ts +0 -9
  385. package/dist/esm/components/forms/date-picker/calendar/Calendar.d.ts +0 -3
  386. package/dist/esm/components/forms/date-picker/calendar/Calendar.props.d.ts +0 -13
  387. package/dist/esm/components/forms/date-picker/calendar/Calendar.styles.d.ts +0 -3
  388. package/dist/esm/components/forms/date-picker/calendar/calendar-grid/CalendarGrid.d.ts +0 -3
  389. package/dist/esm/components/forms/date-picker/calendar/calendar-grid/CalendarGrid.props.d.ts +0 -20
  390. package/dist/esm/components/forms/date-picker/calendar/calendar-grid/CalendarGrid.styles.d.ts +0 -13
  391. package/dist/esm/components/forms/date-picker/calendar/calendar-header/CalendarHeader.d.ts +0 -3
  392. package/dist/esm/components/forms/date-picker/calendar/calendar-header/CalendarHeader.props.d.ts +0 -15
  393. package/dist/esm/components/forms/date-picker/calendar/calendar-header/CalendarHeader.styles.d.ts +0 -6
  394. package/dist/esm/components/forms/date-picker/calendar/index.d.ts +0 -2
  395. package/dist/esm/components/forms/date-picker/index.d.ts +0 -2
  396. package/dist/esm/components/forms/date-picker/utils/datePicker.utils.d.ts +0 -13
  397. package/dist/esm/components/forms/file-picker/FilePicker.d.ts +0 -24
  398. package/dist/esm/components/forms/file-picker/FilePicker.props.d.ts +0 -99
  399. package/dist/esm/components/forms/file-picker/FilePicker.styles.d.ts +0 -19
  400. package/dist/esm/components/forms/file-picker/index.d.ts +0 -2
  401. package/dist/esm/components/forms/form/Form.d.ts +0 -3
  402. package/dist/esm/components/forms/form/Form.props.d.ts +0 -9
  403. package/dist/esm/components/forms/form/Form.styles.d.ts +0 -3
  404. package/dist/esm/components/forms/form/index.d.ts +0 -2
  405. package/dist/esm/components/forms/image-picker/ImagePicker.d.ts +0 -18
  406. package/dist/esm/components/forms/image-picker/ImagePicker.props.d.ts +0 -76
  407. package/dist/esm/components/forms/image-picker/index.d.ts +0 -2
  408. package/dist/esm/components/forms/input/Input.d.ts +0 -3
  409. package/dist/esm/components/forms/input/Input.props.d.ts +0 -46
  410. package/dist/esm/components/forms/input/Input.styles.d.ts +0 -15
  411. package/dist/esm/components/forms/input/index.d.ts +0 -2
  412. package/dist/esm/components/forms/select/Select.d.ts +0 -25
  413. package/dist/esm/components/forms/select/Select.props.d.ts +0 -54
  414. package/dist/esm/components/forms/select/Select.styles.d.ts +0 -10
  415. package/dist/esm/components/forms/select/SelectItem/SelectItem.d.ts +0 -7
  416. package/dist/esm/components/forms/select/SelectItem/SelectItem.props.d.ts +0 -19
  417. package/dist/esm/components/forms/select/SelectItem/SelectItem.styles.d.ts +0 -7
  418. package/dist/esm/components/forms/select/SelectItem/index.d.ts +0 -2
  419. package/dist/esm/components/forms/select/index.d.ts +0 -2
  420. package/dist/esm/components/forms/textarea/TextArea.d.ts +0 -3
  421. package/dist/esm/components/forms/textarea/TextArea.props.d.ts +0 -39
  422. package/dist/esm/components/forms/textarea/TextArea.styles.d.ts +0 -11
  423. package/dist/esm/components/forms/textarea/index.d.ts +0 -2
  424. package/dist/esm/components/foundation/icon/Icon.d.ts +0 -42
  425. package/dist/esm/components/foundation/icon/Icon.props.d.ts +0 -26
  426. package/dist/esm/components/foundation/icon/Icon.styles.d.ts +0 -3
  427. package/dist/esm/components/foundation/icon/index.d.ts +0 -2
  428. package/dist/esm/components/foundation/text/Text.d.ts +0 -21
  429. package/dist/esm/components/foundation/text/Text.props.d.ts +0 -40
  430. package/dist/esm/components/foundation/text/Text.styles.d.ts +0 -4
  431. package/dist/esm/components/foundation/text/index.d.ts +0 -2
  432. package/dist/esm/components/foundation/text/utils/getTextVariantStyles.utils.d.ts +0 -7
  433. package/dist/esm/components/foundation/text/utils/getTruncateTextStyles.utils.d.ts +0 -21
  434. package/dist/esm/components/foundation/text/utils/parseTextWithBold.utils.d.ts +0 -7
  435. package/dist/esm/components/index.d.ts +0 -35
  436. package/dist/esm/components/inputs/button/Button.d.ts +0 -12
  437. package/dist/esm/components/inputs/button/Button.props.d.ts +0 -28
  438. package/dist/esm/components/inputs/button/Button.styles.d.ts +0 -18
  439. package/dist/esm/components/inputs/button/index.d.ts +0 -2
  440. package/dist/esm/components/inputs/icon-button/IconButton.d.ts +0 -4
  441. package/dist/esm/components/inputs/icon-button/IconButton.props.d.ts +0 -27
  442. package/dist/esm/components/inputs/icon-button/IconButton.styles.d.ts +0 -4
  443. package/dist/esm/components/inputs/icon-button/index.d.ts +0 -2
  444. package/dist/esm/components/inputs/input/Input.d.ts +0 -6
  445. package/dist/esm/components/inputs/input/Input.props.d.ts +0 -17
  446. package/dist/esm/components/inputs/input/Input.styles.d.ts +0 -7
  447. package/dist/esm/components/inputs/input/index.d.ts +0 -2
  448. package/dist/esm/components/layout/accordion/Accordion.d.ts +0 -10
  449. package/dist/esm/components/layout/accordion/Accordion.props.d.ts +0 -36
  450. package/dist/esm/components/layout/accordion/Accordion.styles.d.ts +0 -7
  451. package/dist/esm/components/layout/accordion/index.d.ts +0 -2
  452. package/dist/esm/components/layout/box/Box.d.ts +0 -23
  453. package/dist/esm/components/layout/box/Box.props.d.ts +0 -139
  454. package/dist/esm/components/layout/box/Box.styles.d.ts +0 -7
  455. package/dist/esm/components/layout/box/index.d.ts +0 -2
  456. package/dist/esm/components/layout/card/Card.d.ts +0 -14
  457. package/dist/esm/components/layout/card/Card.props.d.ts +0 -68
  458. package/dist/esm/components/layout/card/Card.styles.d.ts +0 -7
  459. package/dist/esm/components/layout/card/index.d.ts +0 -2
  460. package/dist/esm/components/layout/grid/Grid.d.ts +0 -15
  461. package/dist/esm/components/layout/grid/Grid.props.d.ts +0 -57
  462. package/dist/esm/components/layout/grid/Grid.styles.d.ts +0 -7
  463. package/dist/esm/components/layout/grid/index.d.ts +0 -2
  464. package/dist/esm/components/layout/page-construction/page/Page.d.ts +0 -10
  465. package/dist/esm/components/layout/page-construction/page/Page.props.d.ts +0 -30
  466. package/dist/esm/components/layout/page-construction/page/Page.styles.d.ts +0 -5
  467. package/dist/esm/components/layout/page-construction/page/index.d.ts +0 -2
  468. package/dist/esm/components/layout/page-construction/page-section/PageSection.d.ts +0 -10
  469. package/dist/esm/components/layout/page-construction/page-section/PageSection.props.d.ts +0 -34
  470. package/dist/esm/components/layout/page-construction/page-section/PageSection.styles.d.ts +0 -4
  471. package/dist/esm/components/layout/page-construction/page-section/index.d.ts +0 -2
  472. package/dist/esm/components/layout/separator/Separator.d.ts +0 -9
  473. package/dist/esm/components/layout/separator/Separator.props.d.ts +0 -17
  474. package/dist/esm/components/layout/separator/Separator.styles.d.ts +0 -7
  475. package/dist/esm/components/layout/separator/index.d.ts +0 -2
  476. package/dist/esm/components/layout/stack/Stack.d.ts +0 -13
  477. package/dist/esm/components/layout/stack/Stack.props.d.ts +0 -42
  478. package/dist/esm/components/layout/stack/Stack.styles.d.ts +0 -7
  479. package/dist/esm/components/layout/stack/index.d.ts +0 -2
  480. package/dist/esm/components/layout/text/Text.d.ts +0 -21
  481. package/dist/esm/components/layout/text/Text.props.d.ts +0 -28
  482. package/dist/esm/components/layout/text/Text.styles.d.ts +0 -4
  483. package/dist/esm/components/layout/text/index.d.ts +0 -2
  484. package/dist/esm/components/navigation/breadcrumb/Breadcrumb.d.ts +0 -12
  485. package/dist/esm/components/navigation/breadcrumb/Breadcrumb.props.d.ts +0 -13
  486. package/dist/esm/components/navigation/breadcrumb/Breadcrumb.styles.d.ts +0 -6
  487. package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.d.ts +0 -8
  488. package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.props.d.ts +0 -5
  489. package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.styles.d.ts +0 -7
  490. package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/index.d.ts +0 -2
  491. package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis.d.ts +0 -9
  492. package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.d.ts +0 -6
  493. package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.styles.d.ts +0 -6
  494. package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem/index.d.ts +0 -1
  495. package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem.d.ts +0 -6
  496. package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.d.ts +0 -7
  497. package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.props.d.ts +0 -14
  498. package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.styles.d.ts +0 -7
  499. package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/index.d.ts +0 -2
  500. package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink.d.ts +0 -6
  501. package/dist/esm/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.d.ts +0 -6
  502. package/dist/esm/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.styles.d.ts +0 -6
  503. package/dist/esm/components/navigation/breadcrumb/BreadcrumbList/index.d.ts +0 -1
  504. package/dist/esm/components/navigation/breadcrumb/BreadcrumbList.d.ts +0 -6
  505. package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.d.ts +0 -7
  506. package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.props.d.ts +0 -10
  507. package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.styles.d.ts +0 -7
  508. package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/index.d.ts +0 -2
  509. package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage.d.ts +0 -6
  510. package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.d.ts +0 -7
  511. package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.props.d.ts +0 -5
  512. package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.styles.d.ts +0 -6
  513. package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/index.d.ts +0 -2
  514. package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator.d.ts +0 -9
  515. package/dist/esm/components/navigation/breadcrumb/index.d.ts +0 -10
  516. package/dist/esm/components/navigation/breadcrumb/utils/buildBreadcrumbChildren.utils.d.ts +0 -5
  517. package/dist/esm/components/navigation/breadcrumb/utils/flattenChildren.utils.d.ts +0 -5
  518. package/dist/esm/components/navigation/breadcrumb/utils/insertSeparators.utils.d.ts +0 -5
  519. package/dist/esm/components/navigation/breadcrumb/utils/isSeparator.utils.d.ts +0 -5
  520. package/dist/esm/components/navigation/drawer-item/DrawerItem.d.ts +0 -10
  521. package/dist/esm/components/navigation/drawer-item/DrawerItem.props.d.ts +0 -31
  522. package/dist/esm/components/navigation/drawer-item/DrawerItem.styles.d.ts +0 -7
  523. package/dist/esm/components/navigation/drawer-item/index.d.ts +0 -2
  524. package/dist/esm/components/navigation/pagination/Pagination.d.ts +0 -6
  525. package/dist/esm/components/navigation/pagination/Pagination.props.d.ts +0 -24
  526. package/dist/esm/components/navigation/pagination/Pagination.styles.d.ts +0 -7
  527. package/dist/esm/components/navigation/pagination/index.d.ts +0 -2
  528. package/dist/esm/components/navigation/tabs/Tabs.d.ts +0 -7
  529. package/dist/esm/components/navigation/tabs/Tabs.props.d.ts +0 -12
  530. package/dist/esm/components/navigation/tabs/Tabs.styles.d.ts +0 -7
  531. package/dist/esm/components/navigation/tabs/index.d.ts +0 -4
  532. package/dist/esm/components/navigation/tabs/tab-item/TabItem.d.ts +0 -7
  533. package/dist/esm/components/navigation/tabs/tab-item/TabItem.props.d.ts +0 -15
  534. package/dist/esm/components/navigation/tabs/tab-item/TabItem.styles.d.ts +0 -6
  535. package/dist/esm/components/overlay/accordion/Accordion.d.ts +0 -10
  536. package/dist/esm/components/overlay/accordion/Accordion.props.d.ts +0 -52
  537. package/dist/esm/components/overlay/accordion/Accordion.styles.d.ts +0 -7
  538. package/dist/esm/components/overlay/accordion/index.d.ts +0 -2
  539. package/dist/esm/components/overlay/alert/Alert.d.ts +0 -37
  540. package/dist/esm/components/overlay/alert/Alert.props.d.ts +0 -56
  541. package/dist/esm/components/overlay/alert/Alert.styles.d.ts +0 -4
  542. package/dist/esm/components/overlay/alert/index.d.ts +0 -2
  543. package/dist/esm/components/overlay/alert/utils/getAlertIcon.utils.d.ts +0 -8
  544. package/dist/esm/components/overlay/alert/utils/getAlertPositionStyles.utils.d.ts +0 -8
  545. package/dist/esm/components/overlay/alert/utils/getAlertVariantColors.utils.d.ts +0 -14
  546. package/dist/esm/components/overlay/menu/Menu.d.ts +0 -4
  547. package/dist/esm/components/overlay/menu/Menu.props.d.ts +0 -14
  548. package/dist/esm/components/overlay/menu/Menu.styles.d.ts +0 -13
  549. package/dist/esm/components/overlay/menu/MenuGroup/MenuGroup.d.ts +0 -4
  550. package/dist/esm/components/overlay/menu/MenuGroup/MenuGroup.props.d.ts +0 -4
  551. package/dist/esm/components/overlay/menu/MenuGroup/MenuGroup.styles.d.ts +0 -3
  552. package/dist/esm/components/overlay/menu/MenuGroup/index.d.ts +0 -2
  553. package/dist/esm/components/overlay/menu/MenuItem/MenuItem.d.ts +0 -4
  554. package/dist/esm/components/overlay/menu/MenuItem/MenuItem.props.d.ts +0 -14
  555. package/dist/esm/components/overlay/menu/MenuItem/MenuItem.styles.d.ts +0 -4
  556. package/dist/esm/components/overlay/menu/MenuItem/index.d.ts +0 -2
  557. package/dist/esm/components/overlay/menu/index.d.ts +0 -6
  558. package/dist/esm/components/overlay/modal/Modal.d.ts +0 -28
  559. package/dist/esm/components/overlay/modal/Modal.props.d.ts +0 -10
  560. package/dist/esm/components/overlay/modal/Modal.styles.d.ts +0 -4
  561. package/dist/esm/components/overlay/modal/index.d.ts +0 -2
  562. package/dist/esm/constants/animations.d.ts +0 -1
  563. package/dist/esm/constants/globalConstants.d.ts +0 -5
  564. package/dist/esm/hooks/index.d.ts +0 -7
  565. package/dist/esm/hooks/useAlert.d.ts +0 -23
  566. package/dist/esm/hooks/useAlert.types.d.ts +0 -56
  567. package/dist/esm/hooks/useAnchorPosition.d.ts +0 -17
  568. package/dist/esm/hooks/useAnchorPosition.types.d.ts +0 -5
  569. package/dist/esm/hooks/useClickOutside.d.ts +0 -8
  570. package/dist/esm/hooks/useTransitionRender.d.ts +0 -7
  571. package/dist/esm/hooks/useTransitionRender.types.d.ts +0 -4
  572. package/dist/esm/index.d.ts +0 -6
  573. package/dist/esm/interfaces/alert.types.d.ts +0 -8
  574. package/dist/esm/interfaces/avatar.types.d.ts +0 -2
  575. package/dist/esm/interfaces/button.types.d.ts +0 -36
  576. package/dist/esm/interfaces/card.types.d.ts +0 -3
  577. package/dist/esm/interfaces/chip.types.d.ts +0 -6
  578. package/dist/esm/interfaces/index.d.ts +0 -7
  579. package/dist/esm/interfaces/select.types.d.ts +0 -5
  580. package/dist/esm/interfaces/stack.types.d.ts +0 -7
  581. package/dist/esm/interfaces/status.types.d.ts +0 -6
  582. package/dist/esm/interfaces/text.types.d.ts +0 -7
  583. package/dist/esm/interfaces/theme.contracts.d.ts +0 -243
  584. package/dist/esm/resources/Icons.d.ts +0 -15
  585. package/dist/esm/resources/icons/AlertCircleIcon.d.ts +0 -2
  586. package/dist/esm/resources/icons/AlertTriangleIcon.d.ts +0 -2
  587. package/dist/esm/resources/icons/CalendarIcon.d.ts +0 -1
  588. package/dist/esm/resources/icons/CheckCircleIcon.d.ts +0 -2
  589. package/dist/esm/resources/icons/ChevronDownIcon.d.ts +0 -1
  590. package/dist/esm/resources/icons/ChevronLeftIcon.d.ts +0 -1
  591. package/dist/esm/resources/icons/ChevronRightIcon.d.ts +0 -1
  592. package/dist/esm/resources/icons/CloseIcon.d.ts +0 -2
  593. package/dist/esm/resources/icons/EyeIcon.d.ts +0 -1
  594. package/dist/esm/resources/icons/EyeOffIcon.d.ts +0 -1
  595. package/dist/esm/resources/icons/InfoIcon.d.ts +0 -1
  596. package/dist/esm/resources/icons/MoreHorizontalIcon.d.ts +0 -1
  597. package/dist/esm/resources/icons/PlusIcon.d.ts +0 -2
  598. package/dist/esm/resources/icons/TrashIcon.d.ts +0 -2
  599. package/dist/esm/resources/icons/UploadIcon.d.ts +0 -2
  600. package/dist/esm/theme/defaultTheme.d.ts +0 -29
  601. package/dist/esm/theme/theme.module.d.ts +0 -32
  602. package/dist/esm/theme/theme.types.d.ts +0 -17
  603. package/dist/esm/theme/types/themeBreakpoints.types.d.ts +0 -5
  604. package/dist/esm/theme/types/themeColor.types.d.ts +0 -5
  605. package/dist/esm/theme/types/themeFontSize.types.d.ts +0 -5
  606. package/dist/esm/theme/types/themeFontWeight.types.d.ts +0 -5
  607. package/dist/esm/theme/types/themeLineHeight.types.d.ts +0 -5
  608. package/dist/esm/theme/types/themeOpacity.types.d.ts +0 -5
  609. package/dist/esm/theme/types/themeRadius.types.d.ts +0 -5
  610. package/dist/esm/theme/types/themeShadows.types.d.ts +0 -5
  611. package/dist/esm/theme/types/themeSpacing.types.d.ts +0 -5
  612. package/dist/esm/theme/types/themeTransition.types.d.ts +0 -5
  613. package/dist/esm/theme/types/themeZIndex.types.d.ts +0 -5
  614. package/dist/esm/theme/values/themeBreakpoints.d.ts +0 -5
  615. package/dist/esm/theme/values/themeColors.d.ts +0 -6
  616. package/dist/esm/theme/values/themeFontSize.d.ts +0 -5
  617. package/dist/esm/theme/values/themeFontWeight.d.ts +0 -5
  618. package/dist/esm/theme/values/themeLineHeight.d.ts +0 -5
  619. package/dist/esm/theme/values/themeOpacity.d.ts +0 -5
  620. package/dist/esm/theme/values/themeRadius.d.ts +0 -5
  621. package/dist/esm/theme/values/themeShadows.d.ts +0 -5
  622. package/dist/esm/theme/values/themeSpacing.d.ts +0 -5
  623. package/dist/esm/theme/values/themeTransition.d.ts +0 -5
  624. package/dist/esm/theme/values/themeZIndex.d.ts +0 -5
  625. package/dist/esm/utils/ui/components/actions/button/getButtonSizeStyles.utils.d.ts +0 -12
  626. package/dist/esm/utils/ui/components/actions/button/getButtonVariantStyles.utils.d.ts +0 -7
  627. package/dist/esm/utils/ui/components/actions/icon-button/getIconButtonSizeStyles.utils.d.ts +0 -9
  628. package/dist/esm/utils/ui/components/button/getButtonVariantStyles.utils.d.ts +0 -7
  629. package/dist/esm/utils/ui/components/chip/getChipColorStyles.utils.d.ts +0 -7
  630. package/dist/esm/utils/ui/components/chip/getChipContentSize.utils.d.ts +0 -8
  631. package/dist/esm/utils/ui/components/chip/getChipSizeStyles.utils.d.ts +0 -12
  632. package/dist/esm/utils/ui/components/data-display/avatar/getAvatarSizes.utils.d.ts +0 -11
  633. package/dist/esm/utils/ui/components/data-display/chip/getChipColorStyles.utils.d.ts +0 -7
  634. package/dist/esm/utils/ui/components/data-display/chip/getChipContentSize.utils.d.ts +0 -8
  635. package/dist/esm/utils/ui/components/data-display/chip/getChipSizeStyles.utils.d.ts +0 -12
  636. package/dist/esm/utils/ui/components/data-display/status/getStatusColorStyles.utils.d.ts +0 -7
  637. package/dist/esm/utils/ui/components/data-display/status/getStatusContentSize.utils.d.ts +0 -8
  638. package/dist/esm/utils/ui/components/data-display/status/getStatusSizeStyles.utils.d.ts +0 -12
  639. package/dist/esm/utils/ui/components/date-picker/datePicker.utils.d.ts +0 -13
  640. package/dist/esm/utils/ui/components/foundation/text/getTextVariantStyles.utils.d.ts +0 -7
  641. package/dist/esm/utils/ui/components/foundation/text/getTruncateTextStyles.utils.d.ts +0 -21
  642. package/dist/esm/utils/ui/components/foundation/text/parseTextWithBold.utils.d.ts +0 -7
  643. package/dist/esm/utils/ui/components/icon-button/getIconButtonSizeStyles.utils.d.ts +0 -9
  644. package/dist/esm/utils/ui/components/navigation/breadcrumb/buildBreadcrumbChildren.utils.d.ts +0 -5
  645. package/dist/esm/utils/ui/components/navigation/breadcrumb/flattenChildren.utils.d.ts +0 -5
  646. package/dist/esm/utils/ui/components/navigation/breadcrumb/insertSeparators.utils.d.ts +0 -5
  647. package/dist/esm/utils/ui/components/navigation/breadcrumb/isSeparator.utils.d.ts +0 -5
  648. package/dist/esm/utils/ui/components/overlay/alert/getAlertIcon.utils.d.ts +0 -8
  649. package/dist/esm/utils/ui/components/overlay/alert/getAlertPositionStyles.utils.d.ts +0 -8
  650. package/dist/esm/utils/ui/components/overlay/alert/getAlertVariantColors.utils.d.ts +0 -14
  651. package/dist/esm/utils/ui/components/text/getTextVariantStyles.utils.d.ts +0 -7
  652. package/dist/esm/utils/ui/components/text/getTruncateTextStyles.utils.d.ts +0 -17
  653. package/dist/esm/utils/ui/components/text/parseTextWithBold.utils.d.ts +0 -7
package/dist/index.d.ts CHANGED
@@ -1,184 +1,114 @@
1
- import * as react from 'react';
2
- import { PropsWithChildren, FC, ReactNode, MouseEvent, KeyboardEvent, CSSProperties, FormEvent, FocusEvent, ComponentType, SVGProps, DragEvent, ComponentPropsWithoutRef, ReactElement, RefObject } from 'react';
1
+ import { ComponentType, SVGProps, ButtonHTMLAttributes, Ref, FC, AnchorHTMLAttributes, HTMLAttributes, ReactNode, CSSProperties, FormEvent, InputHTMLAttributes } from 'react';
3
2
 
4
- /**
5
- * Alert variant types
6
- */
7
- type AlertVariant = 'default' | 'info' | 'warning' | 'error' | 'success';
8
- /**
9
- * Alert position types
10
- */
11
- type AlertPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
12
-
13
- type ButtonVariants = 'contained' | 'outlined' | 'text' | 'destructive' | 'link';
14
- type IconButtonVariants = Exclude<ButtonVariants, 'link'>;
15
- type IconButtonSizes = 'small' | 'medium' | 'large';
16
- type ButtonVariantStyle = {
17
- default: {
18
- backgroundColor: string;
19
- color: string;
20
- border: string;
21
- textDecoration?: string;
22
- textDecorationColor?: string;
23
- textUnderlineOffset?: string;
24
- };
25
- hover: {
26
- backgroundColor: string;
27
- textDecoration?: string;
28
- textDecorationColor?: string;
29
- textUnderlineOffset?: string;
30
- };
31
- pressed: {
32
- backgroundColor: string;
33
- textDecoration?: string;
34
- textDecorationColor?: string;
35
- color?: string;
36
- textUnderlineOffset?: string;
37
- };
38
- disabled: {
39
- color: string;
40
- cursor: string;
41
- backgroundColor: string;
42
- borderColor?: string;
43
- textDecoration?: string;
44
- textUnderlineOffset?: string;
45
- };
46
- textColor: keyof ThemeContract['colors'];
47
- };
48
-
49
- type TextVariants = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label';
50
- type TextVariantStyle = {
51
- tag: TextVariants;
52
- fontSize: string;
53
- fontWeight: number;
54
- lineHeight: number;
55
- };
56
-
57
- /** Status variant options */
58
- type StatusVariant = 'filled' | 'outlined';
59
- /** Status color options */
60
- type StatusColor = 'default' | 'primary' | 'success' | 'warning' | 'error' | 'info' | 'highlight' | 'accent' | 'new' | 'rose' | 'yellow';
61
- /** Status size options */
62
- type StatusSize = '2xs' | 'xs' | 'sm' | 'md' | 'lg';
63
-
64
- /** Avatar size variants */
65
- type AvatarSize = 'small' | 'medium' | 'large';
66
-
67
- type SelectOption = {
68
- label: string;
69
- value: string | number;
70
- disabled?: boolean;
71
- };
72
-
73
- /**
74
- * Theme Contracts for aurora-ds-components
75
- *
76
- * These interfaces define the MINIMUM required theme structure.
77
- * All projects using this library MUST provide these tokens.
78
- *
79
- * You can extend these contracts with your own custom tokens:
80
- *
81
- * @example
82
- * ```typescript
83
- * import type { ThemeColorContract } from 'aurora-ds-components'
84
- *
85
- * // Extend with custom tokens
86
- * export interface ThemeColorTypes extends ThemeColorContract {
87
- * // Required tokens already included via extends
88
- *
89
- * // Add your custom tokens
90
- * highlight: string
91
- * accent: string
92
- * }
93
- * ```
94
- */
95
- /**
96
- * Minimum color tokens required by aurora-ds-components
97
- * Projects can extend this interface with additional tokens
98
- */
99
- interface ThemeColorContract {
100
- background: string;
101
- surface: string;
102
- surfaceHover: string;
103
- surfaceActive: string;
104
- text: string;
3
+ declare const lightPalette: {
4
+ surfaceBackground: string;
5
+ surfacePaper: string;
6
+ surfaceElevated: string;
7
+ textPrimary: string;
105
8
  textSecondary: string;
106
9
  textTertiary: string;
107
- primary: string;
10
+ textDisabled: string;
11
+ textInverse: string;
12
+ primaryMain: string;
108
13
  primaryHover: string;
109
14
  primaryActive: string;
110
15
  primarySubtle: string;
16
+ primarySubtleHover: string;
17
+ primarySubtleActive: string;
111
18
  primaryDisabled: string;
112
- onPrimary: string;
113
- secondary: string;
19
+ primaryOn: string;
20
+ secondaryMain: string;
114
21
  secondaryHover: string;
115
22
  secondaryActive: string;
116
23
  secondarySubtle: string;
24
+ secondarySubtleHover: string;
25
+ secondarySubtleActive: string;
117
26
  secondaryDisabled: string;
118
- onSecondary: string;
119
- border: string;
27
+ secondaryOn: string;
28
+ borderSubtle: string;
29
+ borderMain: string;
30
+ borderStrong: string;
31
+ disabledMain: string;
120
32
  disabledText: string;
121
- disabled: string;
122
- success: string;
33
+ successMain: string;
34
+ successHover: string;
35
+ successActive: string;
123
36
  successSubtle: string;
124
- warning: string;
37
+ successSubtleHover: string;
38
+ successSubtleActive: string;
39
+ successOn: string;
40
+ warningMain: string;
41
+ warningHover: string;
42
+ warningActive: string;
125
43
  warningSubtle: string;
126
- error: string;
44
+ warningSubtleHover: string;
45
+ warningSubtleActive: string;
46
+ warningOn: string;
47
+ errorMain: string;
127
48
  errorHover: string;
49
+ errorActive: string;
128
50
  errorSubtle: string;
129
- onError: string;
130
- info: string;
51
+ errorSubtleHover: string;
52
+ errorSubtleActive: string;
53
+ errorOn: string;
54
+ infoMain: string;
55
+ infoHover: string;
56
+ infoActive: string;
131
57
  infoSubtle: string;
132
- highlight: string;
133
- highlightSubtle: string;
134
- accent: string;
135
- accentSubtle: string;
136
- default: string;
58
+ infoSubtleHover: string;
59
+ infoSubtleActive: string;
60
+ infoOn: string;
61
+ orangeMain: string;
62
+ orangeHover: string;
63
+ orangeActive: string;
64
+ orangeSubtle: string;
65
+ orangeSubtleHover: string;
66
+ orangeSubtleActive: string;
67
+ orangeOn: string;
68
+ pinkMain: string;
69
+ pinkHover: string;
70
+ pinkActive: string;
71
+ pinkSubtle: string;
72
+ pinkSubtleHover: string;
73
+ pinkSubtleActive: string;
74
+ pinkOn: string;
75
+ violetMain: string;
76
+ violetHover: string;
77
+ violetActive: string;
78
+ violetSubtle: string;
79
+ violetSubtleHover: string;
80
+ violetSubtleActive: string;
81
+ violetOn: string;
82
+ defaultMain: string;
83
+ defaultHover: string;
84
+ defaultActive: string;
137
85
  defaultSubtle: string;
138
- new: string;
139
- newSubtle: string;
140
- rose: string;
141
- roseSubtle: string;
142
- yellow: string;
143
- yellowSubtle: string;
144
- link: string;
86
+ defaultSubtleHover: string;
87
+ defaultSubtleActive: string;
88
+ skeletonPrimary: string;
89
+ skeletonSecondary: string;
90
+ linkMain: string;
145
91
  linkHover: string;
146
92
  linkActive: string;
147
93
  linkDisabled: string;
148
- }
149
- /**
150
- * Minimum spacing tokens required by aurora-ds-components
151
- */
152
- interface ThemeSpacingContract {
153
- none: string;
154
- '2xs': string;
155
- xs: string;
156
- sm: string;
157
- md: string;
158
- lg: string;
159
- xl: string;
160
- '2xl': string;
161
- '3xl': string;
162
- '4xl': string;
163
- '5xl': string;
164
- }
94
+ };
95
+
165
96
  /**
166
- * Minimum border radius tokens required by aurora-ds-components
97
+ * Default breakpoint tokens
167
98
  */
168
- interface ThemeRadiusContract {
169
- none: string;
99
+ declare const themeBreakpoints: {
170
100
  xs: string;
171
101
  sm: string;
172
102
  md: string;
173
103
  lg: string;
174
104
  xl: string;
175
105
  '2xl': string;
176
- full: string;
177
- }
106
+ };
107
+
178
108
  /**
179
- * Minimum font size tokens required by aurora-ds-components
109
+ * Default font size tokens
180
110
  */
181
- interface ThemeFontSizeContract {
111
+ declare const themeFontSize: {
182
112
  '2xs': string;
183
113
  xs: string;
184
114
  sm: string;
@@ -189,31 +119,34 @@ interface ThemeFontSizeContract {
189
119
  '3xl': string;
190
120
  '4xl': string;
191
121
  '5xl': string;
192
- }
122
+ };
123
+
193
124
  /**
194
- * Minimum font weight tokens required by aurora-ds-components
125
+ * Default font weight tokens
195
126
  */
196
- interface ThemeFontWeightContract {
127
+ declare const themeFontWeight: {
197
128
  light: number;
198
129
  regular: number;
199
130
  medium: number;
200
131
  semibold: number;
201
132
  bold: number;
202
- }
133
+ };
134
+
203
135
  /**
204
- * Minimum line height tokens required by aurora-ds-components
136
+ * Default line height tokens
205
137
  */
206
- interface ThemeLineHeightContract {
138
+ declare const themeLineHeight: {
207
139
  none: number;
208
140
  tight: number;
209
141
  normal: number;
210
142
  relaxed: number;
211
143
  loose: number;
212
- }
144
+ };
145
+
213
146
  /**
214
- * Minimum opacity tokens required by aurora-ds-components
147
+ * Default opacity tokens
215
148
  */
216
- interface ThemeOpacityContract {
149
+ declare const themeOpacity: {
217
150
  none: number;
218
151
  lowest: number;
219
152
  low: number;
@@ -221,11 +154,12 @@ interface ThemeOpacityContract {
221
154
  high: number;
222
155
  higher: number;
223
156
  full: number;
224
- }
157
+ };
158
+
225
159
  /**
226
- * Minimum shadow tokens required by aurora-ds-components
160
+ * Default border radius tokens
227
161
  */
228
- interface ThemeShadowsContract {
162
+ declare const themeRadius: {
229
163
  none: string;
230
164
  xs: string;
231
165
  sm: string;
@@ -233,32 +167,56 @@ interface ThemeShadowsContract {
233
167
  lg: string;
234
168
  xl: string;
235
169
  '2xl': string;
236
- inner: string;
237
- focus: string;
238
- }
170
+ full: string;
171
+ };
172
+
239
173
  /**
240
- * Minimum transition tokens required by aurora-ds-components
174
+ * Default shadow tokens
241
175
  */
242
- interface ThemeTransitionContract {
243
- fast: string;
244
- normal: string;
245
- slow: string;
246
- }
176
+ declare const themeShadows: {
177
+ none: string;
178
+ xs: string;
179
+ sm: string;
180
+ md: string;
181
+ lg: string;
182
+ xl: string;
183
+ '2xl': string;
184
+ inner: string;
185
+ focus: string;
186
+ dropSm: string;
187
+ };
188
+
247
189
  /**
248
- * Minimum breakpoint tokens required by aurora-ds-components
190
+ * Default spacing tokens
249
191
  */
250
- interface ThemeBreakpointsContract {
192
+ declare const themeSpacing: {
193
+ none: string;
194
+ '2xs': string;
251
195
  xs: string;
196
+ 'xs+': string;
252
197
  sm: string;
253
198
  md: string;
254
199
  lg: string;
255
200
  xl: string;
256
201
  '2xl': string;
257
- }
202
+ '3xl': string;
203
+ '4xl': string;
204
+ '5xl': string;
205
+ };
206
+
207
+ /**
208
+ * Default transition tokens
209
+ */
210
+ declare const themeTransition: {
211
+ fast: string;
212
+ normal: string;
213
+ slow: string;
214
+ };
215
+
258
216
  /**
259
- * Minimum z-index tokens required by aurora-ds-components
217
+ * Default z-index tokens
260
218
  */
261
- interface ThemeZIndexContract {
219
+ declare const themeZIndex: {
262
220
  behind: number;
263
221
  base: number;
264
222
  dropdown: number;
@@ -268,1817 +226,841 @@ interface ThemeZIndexContract {
268
226
  popover: number;
269
227
  tooltip: number;
270
228
  toast: number;
271
- }
272
- /**
273
- * Complete theme contract required by aurora-ds-components
274
- *
275
- * Your theme MUST provide at minimum these tokens.
276
- * You can add custom tokens by extending the sub-contracts.
277
- *
278
- * @example
279
- * ```typescript
280
- * import type {
281
- * ThemeColorContract,
282
- * ThemeSpacingContract
283
- * } from 'aurora-ds-components'
284
- *
285
- * // Extend contracts with custom tokens
286
- * interface MyColors extends ThemeColorContract {
287
- * highlight: string
288
- * accent: string
289
- * }
290
- *
291
- * interface MySpacing extends ThemeSpacingContract {
292
- * '6xl': string
293
- * }
294
- *
295
- * // Define your theme type
296
- * interface MyTheme {
297
- * colors: MyColors
298
- * spacing: MySpacing
299
- * // ... other required properties
300
- * }
301
- * ```
302
- */
303
- interface ThemeContract {
304
- colors: ThemeColorContract;
305
- spacing: ThemeSpacingContract;
306
- radius: ThemeRadiusContract;
307
- shadows: ThemeShadowsContract;
308
- fontSize: ThemeFontSizeContract;
309
- fontWeight: ThemeFontWeightContract;
310
- lineHeight: ThemeLineHeightContract;
311
- zIndex: ThemeZIndexContract;
312
- transition: ThemeTransitionContract;
313
- opacity: ThemeOpacityContract;
314
- breakpoints: ThemeBreakpointsContract;
229
+ };
230
+
231
+ type Palette = typeof lightPalette;
232
+ type Theme = {
233
+ colors: Palette;
234
+ spacing: typeof themeSpacing;
235
+ radius: typeof themeRadius;
236
+ shadows: typeof themeShadows;
237
+ fontSize: typeof themeFontSize;
238
+ fontWeight: typeof themeFontWeight;
239
+ lineHeight: typeof themeLineHeight;
240
+ zIndex: typeof themeZIndex;
241
+ transition: typeof themeTransition;
242
+ opacity: typeof themeOpacity;
243
+ breakpoints: typeof themeBreakpoints;
244
+ };
245
+
246
+ declare module '@aurora-ds/theme' {
247
+ interface ThemeRegistry {
248
+ theme: Theme;
249
+ }
315
250
  }
316
251
 
317
- type IconProps = PropsWithChildren<{
318
- /** Icon size based on theme font sizes */
319
- size?: keyof ThemeContract['fontSize'];
320
- /** Icon stroke/line color from theme */
321
- color?: keyof ThemeContract['colors'];
322
- /** Icon fill color from theme (for filled icons) */
323
- fill?: keyof ThemeContract['colors'];
324
- /** Background color from theme */
325
- backgroundColor?: keyof ThemeContract['colors'];
326
- /** Padding from theme spacing */
327
- padding?: keyof ThemeContract['spacing'];
328
- /** Border radius from theme */
329
- borderRadius?: keyof ThemeContract['radius'];
330
- /** Accessibility label for screen readers */
331
- ariaLabel?: string;
332
- /** ID of element that labels this icon */
333
- ariaLabelledBy?: string;
334
- /** ID of element that describes this icon */
335
- ariaDescribedBy?: string;
336
- /** ARIA role */
337
- role?: string;
338
- /** Tab index for keyboard navigation */
339
- tabIndex?: number;
340
- }>;
252
+ /** SVG icon component used by button slots and loading state. */
253
+ type ButtonIcon = ComponentType<SVGProps<SVGSVGElement>>;
254
+ /** Visual style of the button surface. */
255
+ type ButtonVariant = 'contained' | 'outlined' | 'text';
256
+ /** Semantic color intent of the button. */
257
+ type ButtonColor = 'primary' | 'secondary' | 'neutral' | 'info' | 'success' | 'warning' | 'error';
258
+ /** Size token controlling height, padding and label scale. */
259
+ type ButtonSize = 'sm' | 'md' | 'lg';
260
+
261
+ type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & {
262
+ ref?: Ref<HTMLButtonElement>;
263
+ /** Visual style. @default 'contained' */
264
+ variant?: ButtonVariant;
265
+ /** Semantic color. @default 'primary' */
266
+ color?: ButtonColor;
267
+ /** Size token controlling height, padding and font size. @default 'md' */
268
+ size?: ButtonSize;
269
+ /** Explicit width for the button. Accepts numbers (px) or any CSS width value. */
270
+ width?: number | string;
271
+ /** Flex grow factor applied to the button container. */
272
+ flexGrow?: number;
273
+ /** Flex shrink factor applied to the button container. */
274
+ flexShrink?: number;
275
+ /** Show a spinner and disable interaction. */
276
+ isLoading?: boolean;
277
+ /** Native button type. @default 'button' */
278
+ type?: 'button' | 'submit' | 'reset';
279
+ /** SVG icon component rendered before the label (inherits the button color). */
280
+ startIcon?: ButtonIcon;
281
+ /** SVG icon component rendered after the label (inherits the button color). */
282
+ endIcon?: ButtonIcon;
283
+ };
341
284
 
342
285
  /**
343
- * Icon component - Wrapper for SVG icons with theme-aware styling
286
+ * Theme-aware button built on `createVariants`.
344
287
  *
345
- * **Features:**
346
- * - Theme-aware sizing via font sizes
347
- * - Color (stroke) and fill support from theme
348
- * - Optional background with padding and border radius
349
- * - Transition animation on color changes
350
- *
351
- * **Usage:**
352
- * ```tsx
353
- * import { SomeIcon } from 'some-icon-library'
354
- *
355
- * // Stroke color only
356
- * <Icon size="md" color="primary">
357
- * <SomeIcon />
358
- * </Icon>
359
- *
360
- * // With fill color
361
- * <Icon size="md" color="primary" fill="secondary">
362
- * <SomeIcon />
363
- * </Icon>
364
- * ```
365
- *
366
- * **With background:**
367
- * ```tsx
368
- * <Icon
369
- * size="lg"
370
- * color="onPrimary"
371
- * fill="onPrimary"
372
- * backgroundColor="primary"
373
- * padding="sm"
374
- * borderRadius="full"
375
- * >
376
- * <SomeIcon />
377
- * </Icon>
378
- * ```
288
+ * @example <Button onClick={save}>Save</Button>
289
+ * @example <Button variant='outlined' color='error' startIcon={IconRegistry.CloseIcon}>Delete</Button>
290
+ * @example <Button color='success' isLoading width='100%'>Submitting…</Button>
379
291
  */
380
- declare const Icon: FC<IconProps>;
292
+ declare const Button: FC<ButtonProps>;
381
293
 
382
- type TextProps = PropsWithChildren<{
383
- /** Text variant that determines the HTML tag and default styling */
384
- variant?: TextVariants;
385
- /** Text color from theme */
386
- color?: keyof ThemeContract['colors'];
387
- /** Font size from theme (overrides variant fontSize if provided) */
388
- fontSize?: keyof ThemeContract['fontSize'];
389
- /** Font family override (CSS value) */
390
- fontFamily?: string;
391
- /** Maximum number of lines before truncation with ellipsis */
392
- maxLines?: number;
393
- /** Add underline text decoration */
394
- underline?: boolean;
395
- /** Preserve whitespace and line breaks */
396
- preserveWhitespace?: boolean;
397
- /** Accessibility label for screen readers */
398
- ariaLabel?: string;
399
- /** ID of element that labels this text */
400
- ariaLabelledBy?: string;
401
- /** ID of element that describes this text */
402
- ariaDescribedBy?: string;
403
- /** ARIA role */
404
- role?: string;
405
- /** Tab index for keyboard navigation */
406
- tabIndex?: number;
407
- /** HTML id attribute (used for aria-labelledby / aria-describedby references) */
408
- id?: string;
409
- }>;
294
+ type IconButtonProps = Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'aria-label'> & {
295
+ /** Ref forwarded to the underlying button element. */
296
+ ref?: Ref<HTMLButtonElement>;
297
+ /** SVG icon component to render inside the button. */
298
+ icon: ButtonIcon;
299
+ /** Accessible label required since there is no visible text. */
300
+ ariaLabel: string;
301
+ /** Visual style. @default 'contained' */
302
+ variant?: ButtonVariant;
303
+ /** Semantic color. @default 'primary' */
304
+ color?: ButtonColor;
305
+ /** Size token controlling width, height and padding. @default 'md' */
306
+ size?: ButtonSize;
307
+ /** Show a spinner and disable interaction. */
308
+ isLoading?: boolean;
309
+ /** Native button type. @default 'button' */
310
+ type?: 'button' | 'submit' | 'reset';
311
+ };
410
312
 
411
313
  /**
412
- * Text component - Renders semantic HTML elements based on variant
413
- *
414
- * **Variants:**
415
- * - `h1-h6`: Heading elements with appropriate styling
416
- * - `p`: Paragraph element with relaxed line height
417
- * - `span`: Inline text element (default)
418
- * - `label`: Label element with medium font weight
314
+ * Square icon-only button.
315
+ * `ariaLabel` is mandatory since there is no visible text.
419
316
  *
420
- * **Features:**
421
- * - Automatic HTML tag selection based on variant
422
- * - Theme-aware colors
423
- * - Text truncation with `maxLines`
424
- * - Underline support
425
- * - Preserve whitespace with `preserveWhitespace` prop
426
- * - Bold text with **double asterisks** syntax
317
+ * @example <IconButton icon={CloseIcon} ariaLabel={t('common.close')} />
318
+ * @example <IconButton icon={DeleteIcon} ariaLabel={t('actions.delete')} variant='outlined' color='error' />
319
+ * @example <IconButton icon={SaveIcon} ariaLabel={t('actions.save')} isLoading />
427
320
  */
428
- declare const Text: FC<TextProps>;
321
+ declare const IconButton: FC<IconButtonProps>;
429
322
 
430
- type StatusProps = {
431
- /** Text label to display */
432
- label?: string;
433
- /** Icon to display before the label */
434
- icon?: ReactNode;
435
- /** Status variant style */
436
- variant?: StatusVariant;
437
- /** Status color from theme */
438
- color?: StatusColor;
439
- /** Status size */
440
- size?: StatusSize;
441
- /** Gap between icon and text (theme spacing key) */
442
- gap?: keyof ThemeContract['spacing'];
443
- /** Border radius from theme */
444
- radius?: keyof ThemeContract['radius'];
445
- /** Disabled state */
323
+ type LinkUnderline = 'always' | 'hover' | 'none';
324
+
325
+ /** SVG icon component, e.g. imported via `?react` or taken from the `IconRegistry`. */
326
+ type LinkIcon = ComponentType<SVGProps<SVGSVGElement>>;
327
+ type LinkProps = AnchorHTMLAttributes<HTMLAnchorElement> & {
328
+ /** React 19 ref prop. */
329
+ ref?: Ref<HTMLAnchorElement>;
330
+ /** Controls when the underline is visible. @default 'hover' */
331
+ underline?: LinkUnderline;
332
+ /** Open in a new tab with `rel="noopener noreferrer"`. */
333
+ external?: boolean;
334
+ /** Prevent navigation and style as inactive. */
446
335
  disabled?: boolean;
447
- /** Accessibility label for screen readers */
448
- ariaLabel?: string;
449
- /** ID of element that labels this status */
450
- ariaLabelledBy?: string;
451
- /** ID of element that describes this status */
452
- ariaDescribedBy?: string;
453
- /** ARIA role */
454
- role?: string;
455
- /** Tab index for keyboard navigation */
456
- tabIndex?: number;
336
+ /** SVG icon rendered before the text. */
337
+ startIcon?: LinkIcon;
338
+ /** SVG icon rendered after the text. */
339
+ endIcon?: LinkIcon;
457
340
  };
458
341
 
459
342
  /**
460
- * Status component
461
- *
462
- * A compact element for displaying status, tags, or information.
463
- *
464
- * **Variants:**
465
- * - `filled`: Solid background (default)
466
- * - `outlined`: Border only
343
+ * Theme-aware anchor element with optional icons and underline control.
344
+ *
345
+ * @example <Link href='/about'>About</Link>
346
+ * @example <Link href='https://example.com' external>External site</Link>
347
+ * @example <Link href='/profile' underline='always' startIcon={UserIcon}>Profile</Link>
348
+ * @example <Link href='/terms' underline='none'>Terms</Link>
349
+ */
350
+ declare const Link: FC<LinkProps>;
351
+
352
+ /** SVG icon component used by badge icon slots. */
353
+ type BadgeIcon = ComponentType<SVGProps<SVGSVGElement>>;
354
+ /** Visual style of the badge surface. */
355
+ type BadgeVariant = 'filled' | 'outlined' | 'subtle' | 'subtleOutlined';
356
+ /** Semantic color intent of the badge. */
357
+ type BadgeColor = 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'info' | 'orange' | 'pink' | 'violet';
358
+ /** Size token controlling height, padding and font size. */
359
+ type BadgeSize = 'sm' | 'md' | 'lg';
360
+
361
+ type BadgeProps = HTMLAttributes<HTMLSpanElement> & {
362
+ ref?: Ref<HTMLSpanElement>;
363
+ /** Visual style of the badge surface. @default 'subtle' */
364
+ variant?: BadgeVariant;
365
+ /** Semantic color intent. @default 'default' */
366
+ color?: BadgeColor;
367
+ /** Size token controlling height, padding and font size. @default 'md' */
368
+ size?: BadgeSize;
369
+ /** Border radius token from the theme. Defaults to a pill shape. */
370
+ borderRadius?: keyof Theme['radius'];
371
+ /** SVG icon component rendered before the label (inherits the badge color). */
372
+ startIcon?: BadgeIcon;
373
+ /** SVG icon component rendered after the label (inherits the badge color). */
374
+ endIcon?: BadgeIcon;
375
+ /** @deprecated Use `startIcon` instead. */
376
+ icon?: BadgeIcon;
377
+ /** Render as a small colored dot indicator — children and icons are ignored. @default false */
378
+ dot?: boolean;
379
+ };
380
+
381
+ /**
382
+ * Compact label used to convey status, category or count information.
467
383
  *
468
- * **Colors:**
469
- * - `default`, `primary`, `success`, `warning`, `error`, `info`, `highlight`, `accent`, `new`, `rose`, `yellow`
384
+ * @example <Badge color='success'>Active</Badge>
385
+ * @example <Badge variant='outlined' color='error'>Critical</Badge>
386
+ * @example <Badge variant='filled' color='primary' size='sm' startIcon={StarIcon}>Featured</Badge>
387
+ * @example <Badge dot color='warning' />
470
388
  */
471
- declare const Status: FC<StatusProps>;
389
+ declare const Badge: FC<BadgeProps>;
472
390
 
473
- type AvatarProps = {
474
- /** Image source URL */
475
- image?: string;
391
+ type TooltipPlacement = 'top' | 'bottom' | 'left' | 'right';
392
+ interface TooltipProps {
393
+ /** Content that triggers the tooltip on hover/focus. */
394
+ children: ReactNode;
395
+ /** Text displayed inside the tooltip bubble. */
396
+ label: string;
397
+ /** Placement of the tooltip relative to the trigger element. @default 'right' */
398
+ placement?: TooltipPlacement;
399
+ /** When true, the tooltip will never show. @default false */
400
+ disabled?: boolean;
476
401
  /**
477
- * Fallback text to display when no image (initials, name, etc.)
478
- * Also used as the image `alt` text for accessibility.
402
+ * When true, the wrapper renders as `inline-flex` with `auto` width instead of
403
+ * full-width flex use this when the trigger is an inline element (e.g. an icon).
404
+ * @default false
479
405
  */
480
- label?: string;
406
+ inline?: boolean;
407
+ /**
408
+ * When true, renders a directional arrow on the bubble pointing toward the trigger.
409
+ * @default false
410
+ */
411
+ withArrow?: boolean;
481
412
  /**
482
- * Click handler. When provided, the avatar becomes interactive
483
- * with `role="button"` and keyboard support (Enter/Space).
413
+ * Maximum width of the tooltip bubble in pixels.
414
+ * @default 200
484
415
  */
485
- onClick?: (e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement>) => void;
486
- /** Size of the avatar */
487
- size?: AvatarSize;
488
- /** Text color for the label */
489
- color?: string;
490
- /** Border color */
491
- borderColor?: string;
492
- /** Background color */
493
- backgroundColor?: string;
416
+ width?: number;
494
417
  /**
495
- * Accessibility label for screen readers.
496
- * Defaults to `label` prop when not provided.
418
+ * When true (default), the tooltip is hidden as soon as the trigger is clicked.
419
+ * Set to `false` on purely informational triggers (e.g. InfoBubble) so the tooltip
420
+ * stays visible after a tap/click.
421
+ * @default true
497
422
  */
498
- ariaLabel?: string;
499
- /** Tab index for keyboard navigation (auto-set when onClick is provided) */
500
- tabIndex?: number;
501
- };
423
+ hideOnClick?: boolean;
424
+ /**
425
+ * When true (default), the tooltip is completely disabled on touch/mobile devices
426
+ * (`pointer: coarse`). Set to `false` for components like InfoBubble that should
427
+ * still be tappable on mobile.
428
+ * @default true
429
+ */
430
+ disableOnMobile?: boolean;
431
+ }
432
+
433
+ interface InfoBubbleProps {
434
+ /** Text displayed inside the tooltip bubble. */
435
+ label: string;
436
+ /** Placement of the tooltip relative to the info icon. @default 'top' */
437
+ placement?: TooltipPlacement;
438
+ /**
439
+ * Maximum width of the tooltip bubble in pixels.
440
+ * @default 200
441
+ */
442
+ width?: number;
443
+ /**
444
+ * When true, renders a directional arrow on the bubble.
445
+ * @default true
446
+ */
447
+ withArrow?: boolean;
448
+ }
502
449
 
503
450
  /**
504
- * Avatar component
505
- *
506
- * Displays a user's avatar with an optional image or fallback initials.
451
+ * InfoBubble
507
452
  *
508
- * **Accessibility:**
509
- * - When `onClick` is provided, the avatar becomes a focusable button
510
- * with keyboard support (Enter/Space activates the click)
511
- * - Provide `label` or `ariaLabel` for screen readers
512
- * - For decorative avatars, both can be omitted
453
+ * An info icon with an attached tooltip. Unlike the regular `Tooltip`, the
454
+ * tooltip is **not** disabled on mobile — users can tap the icon to read the
455
+ * information on touch devices.
513
456
  *
514
457
  * @example
515
458
  * ```tsx
516
- * // Static avatar with image
517
- * <Avatar image="/user.jpg" label="Jane Doe" />
459
+ * <InfoBubble label="This field is required for compliance." />
460
+ * ```
518
461
  *
519
- * // Interactive avatar (clickable)
520
- * <Avatar label="JD" onClick={() => openProfile()} ariaLabel="Open Jane's profile" />
462
+ * @example
463
+ * ```tsx
464
+ * <InfoBubble label="Detailed explanation" placement="right" withArrow={false} />
521
465
  * ```
522
466
  */
523
- declare const Avatar: FC<AvatarProps>;
467
+ declare const InfoBubble: FC<InfoBubbleProps>;
468
+
469
+ type IconProps = HTMLAttributes<HTMLDivElement> & {
470
+ ref?: Ref<HTMLDivElement>;
471
+ /** SVG component to render — import with `?react` (e.g. `import MyIcon from './my-icon.svg?react'`). */
472
+ icon: ComponentType<SVGProps<SVGSVGElement>>;
473
+ /** Size token mapped to `theme.fontSize`. Controls both width and height. @default 'md' */
474
+ size?: keyof Theme['fontSize'];
475
+ /** Sets CSS `stroke` + `color` on the SVG — use for standard line icons. */
476
+ strokeColor?: keyof Theme['colors'];
477
+ /** Sets CSS `fill` only on `fill="currentColor"` paths — leaves `fill="none"` untouched. */
478
+ fill?: keyof Theme['colors'];
479
+ /** Wrapper background color. */
480
+ backgroundColor?: keyof Theme['colors'];
481
+ /** Wrapper padding token. */
482
+ padding?: keyof Theme['spacing'];
483
+ /** Wrapper border-radius token. @default 'none' */
484
+ borderRadius?: keyof Theme['radius'];
485
+ };
486
+ type IconStyleParams = {
487
+ size?: keyof Theme['fontSize'];
488
+ strokeColor?: keyof Theme['colors'];
489
+ fill?: keyof Theme['colors'];
490
+ backgroundColor?: keyof Theme['colors'];
491
+ padding?: keyof Theme['spacing'];
492
+ borderRadius?: keyof Theme['radius'];
493
+ };
524
494
 
525
495
  /**
526
- * AvatarGroup component
496
+ * Renders an SVG icon inside a theme-aware wrapper.
527
497
  *
528
- * Groups multiple avatars with overlapping display and optional limit.
498
+ * @example <Icon icon={MenuIcon} size='md' strokeColor='primaryMain' />
499
+ * @example <Icon icon={CloseIcon} strokeColor='textInverse' backgroundColor='primaryMain' padding='sm' borderRadius='full' />
529
500
  */
530
- declare const AvatarGroup: FC<AvatarGroupProps>;
501
+ declare const Icon: FC<IconProps>;
531
502
 
532
- type AvatarGroupProps = {
533
- /** Avatar children */
534
- children: ReactNode;
535
- /** Maximum number of avatars to display */
536
- limit?: number;
537
- /** Size of the avatars in the group */
538
- size?: AvatarSize;
539
- };
503
+ /** Shape variant of the Skeleton placeholder. */
504
+ type SkeletonVariant = 'text' | 'circular' | 'rectangular' | 'rounded';
505
+ /**
506
+ * Animation applied to the Skeleton.
507
+ * - `'shimmer'` — sliding gradient highlight (default).
508
+ * - `false` — no animation (useful when `prefers-reduced-motion` is handled manually).
509
+ */
510
+ type SkeletonAnimation = 'shimmer' | false;
540
511
 
541
- type SkeletonProps = {
542
- width: CSSProperties['width'];
543
- height: CSSProperties['height'];
544
- borderRadius?: keyof ThemeContract['radius'];
512
+ type SkeletonProps = HTMLAttributes<HTMLSpanElement> & {
513
+ ref?: Ref<HTMLSpanElement>;
514
+ /** Shape of the placeholder: `'text'` | `'circular'` | `'rectangular'` | `'rounded'`. @default 'rounded' */
515
+ variant?: SkeletonVariant;
516
+ /** Loading animation: `'shimmer'` (default) or `false` to disable. */
517
+ animation?: SkeletonAnimation;
518
+ /** Explicit width; falls back to `100%` when omitted. */
519
+ width?: CSSProperties['width'];
520
+ /** Explicit height; falls back to the variant default when omitted. */
521
+ height?: CSSProperties['height'];
545
522
  };
546
523
 
524
+ /**
525
+ * Block-level placeholder rendered while content is loading.
526
+ *
527
+ * @example // Text line
528
+ * <Skeleton variant='text' width={200} />
529
+ *
530
+ * @example // Avatar
531
+ * <Skeleton variant='circular' width={40} height={40} />
532
+ *
533
+ * @example // Card thumbnail
534
+ * <Skeleton variant='rounded' width='100%' height={160} />
535
+ *
536
+ * @example // No animation
537
+ * <Skeleton variant='rectangular' width='100%' height={80} animation={false} />
538
+ */
547
539
  declare const Skeleton: FC<SkeletonProps>;
548
540
 
549
- type ButtonProps = {
550
- /** Button text label */
551
- label: string;
552
- /** Optional icon to display before label */
553
- startIcon?: ReactNode;
554
- /** Optional icon to display after label */
555
- endIcon?: ReactNode;
556
- /** Click handler */
557
- onClick?: (e: MouseEvent<HTMLButtonElement>) => void;
558
- /** Visual variant of the button */
559
- variant?: ButtonVariants;
560
- /** Button type attribute */
561
- type?: 'button' | 'submit';
562
- /** Active/pressed state */
563
- active?: boolean;
564
- /** Disabled state */
565
- disabled?: boolean;
566
- /** Custom text color (overrides variant color) */
567
- textColor?: keyof ThemeContract['colors'];
568
- /** Custom backgroundColor (overrides variant backgroundColor) */
569
- backgroundColor?: keyof ThemeContract['colors'];
570
- /** Custom hover backgroundColor (overrides variant hover backgroundColor) */
571
- hoverBackgroundColor?: keyof ThemeContract['colors'];
572
- /** Custom active backgroundColor (overrides variant active backgroundColor) */
573
- activeBackgroundColor?: keyof ThemeContract['colors'];
574
- /** Size of the button */
575
- size?: IconButtonSizes;
576
- /** Accessibility label for screen readers */
577
- ariaLabel?: string;
578
- /** ID of element that labels this button */
579
- ariaLabelledBy?: string;
580
- /** ID of element that describes this button */
581
- ariaDescribedBy?: string;
582
- /** ARIA role */
583
- role?: string;
584
- /** Tab index for keyboard navigation */
585
- tabIndex?: number;
586
- /** Whether the button is in a pressed/active state (for toggle buttons) */
587
- ariaPressed?: boolean;
588
- /** Whether the button is in a loading/busy state */
589
- ariaBusy?: boolean;
590
- /** Whether the button controls an expandable section */
591
- ariaExpanded?: boolean;
592
- /** Whether the button has a popup (menu, dialog, etc.) */
593
- ariaHasPopup?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';
594
- /** ID of the element controlled by this button */
595
- ariaControls?: string;
541
+ type TextVariants = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label' | 'strong';
542
+ type TextVariantStyle = {
543
+ /** HTML tag to render. */
544
+ tag: string;
545
+ /** CSS font-size value. */
546
+ fontSize: string;
547
+ /** CSS font-weight value. */
548
+ fontWeight: number;
549
+ /** CSS line-height value. */
550
+ lineHeight: number;
551
+ };
552
+
553
+ type TextProps = HTMLAttributes<HTMLElement> & {
554
+ ref?: Ref<HTMLElement>;
555
+ /** Semantic variant — determines the rendered HTML tag and baseline styles. @default 'span' */
556
+ variant?: TextVariants;
557
+ /** Override the rendered HTML tag while keeping variant styles (e.g. `variant="h1" as="h2"`). */
558
+ as?: string;
559
+ /** Theme color token — e.g. `'textPrimary'`, `'errorMain'`, `'linkHover'`. @default 'inherit' */
560
+ color?: keyof Theme['colors'];
561
+ /** Font size token — overrides the variant default. */
562
+ fontSize?: keyof Theme['fontSize'];
563
+ /** Font weight token — overrides the variant default. */
564
+ fontWeight?: keyof Theme['fontWeight'];
565
+ /** Line height token — overrides the variant default. */
566
+ lineHeight?: keyof Theme['lineHeight'];
567
+ /** CSS font-family value — use sparingly; prefer theme tokens. */
568
+ fontFamily?: string;
569
+ /** Maximum lines before ellipsis truncation. Uses `nowrap` for 1, `-webkit-line-clamp` for n > 1. */
570
+ maxLines?: number;
571
+ /** Truncate to one line with ellipsis. Shorthand for `maxLines={1}` — takes precedence. */
572
+ truncate?: boolean;
573
+ /** Underline text decoration. */
574
+ underline?: boolean;
575
+ /** Line-through text decoration. */
576
+ strikethrough?: boolean;
577
+ /** Italic font style. */
578
+ italic?: boolean;
579
+ /** Prevent text wrapping (`white-space: nowrap`). Ignored when `truncate` or `maxLines` is set. */
580
+ noWrap?: boolean;
581
+ /** Preserve whitespace and line breaks (`white-space: pre-wrap`). */
582
+ preserveWhitespace?: boolean;
583
+ /** Associates a `<label>` with an input — only meaningful when `variant` or `as` is `"label"`. */
584
+ htmlFor?: string;
585
+ /** Explicit CSS width applied as a style property (not an HTML attribute). */
586
+ width?: CSSProperties['width'];
587
+ /** CSS `text-transform` value. */
588
+ textTransform?: CSSProperties['textTransform'];
589
+ /** CSS `letter-spacing` value. */
590
+ letterSpacing?: CSSProperties['letterSpacing'];
591
+ /** CSS `text-align` value. */
592
+ textAlign?: CSSProperties['textAlign'];
593
+ };
594
+ type TextStyleParams = {
595
+ variant?: TextVariants;
596
+ color?: keyof Theme['colors'];
597
+ fontSize?: keyof Theme['fontSize'];
598
+ fontWeight?: keyof Theme['fontWeight'];
599
+ lineHeight?: keyof Theme['lineHeight'];
600
+ fontFamily?: string;
601
+ underline?: boolean;
602
+ strikethrough?: boolean;
603
+ italic?: boolean;
604
+ noWrap?: boolean;
605
+ preserveWhitespace?: boolean;
606
+ width?: CSSProperties['width'];
607
+ textTransform?: CSSProperties['textTransform'];
608
+ letterSpacing?: CSSProperties['letterSpacing'];
609
+ textAlign?: CSSProperties['textAlign'];
596
610
  };
597
611
 
598
612
  /**
599
- * Button component
613
+ * Renders a semantic HTML text element with theme-aware styling.
600
614
  *
601
- * **Variants:**
602
- * - `contained`: Solid background button (default)
603
- * - `outlined`: Border only button
604
- * - `text`: Text only button without background
605
- * - `destructive`: Danger/delete action button
606
- *
607
- * **Accessibility:**
608
- * - Use `ariaLabel` when the button has no visible text or the label is unclear
609
- * - Use `ariaPressed` for toggle buttons to indicate their state
610
- * - Use `ariaBusy` when the button triggers an async action
611
- * - Use `ariaExpanded` when the button controls a collapsible section
612
- * - Use `ariaControls` to reference the controlled element
615
+ * @example <Text variant='h1' color='text.primary'>Title</Text>
616
+ * @example <Text variant='p' maxLines={2}>Long content…</Text>
617
+ * @example <Text variant='h1' as='h2'>h1 styles, h2 semantics</Text>
618
+ * @example <Text variant='label' htmlFor='email'>Email</Text>
619
+ * @example <Text>Hello **world**!</Text> // Hello <strong>world</strong>!
613
620
  */
614
- declare const Button: FC<ButtonProps>;
621
+ declare const Text: FC<TextProps>;
615
622
 
616
- type IconButtonProps = {
617
- /** IconButton icon */
618
- icon?: ReactNode;
619
- /** Click handler */
620
- onClick?: (e: MouseEvent<HTMLButtonElement>) => void;
621
- /** Visual variant of the button */
622
- variant?: IconButtonVariants;
623
- /** Button type attribute */
624
- type?: 'button' | 'submit';
625
- /** Active/pressed state */
626
- active?: boolean;
627
- /** Disabled state */
628
- disabled?: boolean;
629
- /** Custom text/icon color (overrides variant color) */
630
- textColor?: keyof ThemeContract['colors'];
631
- /** Custom backgroundColor (overrides variant backgroundColor) */
632
- backgroundColor?: keyof ThemeContract['colors'];
633
- /** Custom hover backgroundColor (overrides variant hover backgroundColor) */
634
- hoverBackgroundColor?: keyof ThemeContract['colors'];
635
- /** Custom active backgroundColor (overrides variant active backgroundColor) */
636
- activeBackgroundColor?: keyof ThemeContract['colors'];
637
- /** Size of the icon button */
638
- size?: IconButtonSizes;
639
- /** Accessibility label for screen readers (strongly recommended for icon-only buttons) */
640
- ariaLabel?: string;
641
- /** ID of element that labels this button */
642
- ariaLabelledBy?: string;
643
- /** ID of element that describes this button */
644
- ariaDescribedBy?: string;
645
- /** ARIA role */
646
- role?: string;
647
- /** Tab index for keyboard navigation */
648
- tabIndex?: number;
649
- /** Whether the button is in a pressed/active state (for toggle buttons) */
650
- ariaPressed?: boolean;
651
- /** Whether the button is in a loading/busy state */
652
- ariaBusy?: boolean;
653
- /** Whether the button controls an expandable section */
654
- ariaExpanded?: boolean;
655
- /** Whether the button has a popup (menu, dialog, etc.) */
656
- ariaHasPopup?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';
657
- /** ID of the element controlled by this button */
658
- ariaControls?: string;
623
+ type FormProps = {
624
+ /** Form content — typically form field components. */
625
+ children: ReactNode;
626
+ /** Called when the form is submitted. Receives the native submit event. */
627
+ onSubmit: (event: FormEvent<HTMLFormElement>) => void;
628
+ /** Accessible name for the form. */
629
+ 'aria-label'?: string;
630
+ /** Id of an element that labels the form. */
631
+ 'aria-labelledby'?: string;
659
632
  };
660
633
 
661
634
  /**
662
- * IconButton component
663
- *
664
- * A button that displays only an icon without text.
665
- *
666
- * **⚠️ Accessibility:** Always provide an `ariaLabel` for icon-only buttons
667
- * so screen readers can describe the action.
635
+ * Thin wrapper around `<form>`. Prevents the default browser submit and
636
+ * delegates to the `onSubmit` callback.
668
637
  *
669
638
  * @example
670
- * ```tsx
671
- * <IconButton icon={<CloseIcon />} ariaLabel="Close dialog" onClick={onClose} />
672
- * ```
639
+ * <Form onSubmit={handleSubmit}>
640
+ * <TextField label="Email" />
641
+ * <Button type="submit">Send</Button>
642
+ * </Form>
673
643
  */
674
- declare const IconButton: FC<IconButtonProps>;
644
+ declare const Form: FC<FormProps>;
675
645
 
676
- type ButtonToggleProps = {
677
- /** Value to identify this toggle button */
678
- value: string;
679
- /** Button content (icon or text) */
680
- children: ReactNode;
681
- /** Click handler */
682
- onClick?: (e: MouseEvent<HTMLButtonElement>, value: string) => void;
683
- /** Active/pressed state */
684
- active?: boolean;
685
- /** Disabled state */
686
- disabled?: boolean;
687
- /** Custom text/icon color when active (default: primary) */
688
- activeTextColor?: keyof ThemeContract['colors'];
689
- /** Custom text/icon color when inactive (default: textSecondary) */
690
- inactiveTextColor?: keyof ThemeContract['colors'];
691
- /** Custom text/icon color (overrides activeTextColor and inactiveTextColor) */
692
- textColor?: keyof ThemeContract['colors'];
693
- /** Custom backgroundColor (overrides variant backgroundColor) */
694
- backgroundColor?: keyof ThemeContract['colors'];
695
- /** Custom hover backgroundColor (overrides variant hover backgroundColor) */
696
- hoverBackgroundColor?: keyof ThemeContract['colors'];
697
- /** Custom active backgroundColor (overrides variant active backgroundColor) */
698
- activeBackgroundColor?: keyof ThemeContract['colors'];
699
- /** Size of the button */
700
- size?: IconButtonSizes;
701
- /** Accessibility label for screen readers */
702
- ariaLabel?: string;
703
- /** ID of element that labels this button */
704
- ariaLabelledBy?: string;
705
- /** ID of element that describes this button */
706
- ariaDescribedBy?: string;
707
- /** ARIA role */
708
- role?: string;
709
- /** Tab index for keyboard navigation */
710
- tabIndex?: number;
646
+ type SwitchSize = 'sm' | 'md' | 'lg';
647
+ type SwitchColor = 'primary' | 'success' | 'error' | 'warning' | 'info' | 'neutral';
648
+
649
+ type SwitchProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> & {
650
+ ref?: Ref<HTMLInputElement>;
651
+ /** Visible label rendered next to the switch. */
652
+ label?: string;
653
+ /** Size variant. @default 'md' */
654
+ size?: SwitchSize;
655
+ /** Semantic color applied to the checked track. @default 'primary' */
656
+ color?: SwitchColor;
711
657
  };
712
658
 
713
659
  /**
714
- * ButtonToggle component
660
+ * Accessible toggle switch built on `<input type="checkbox" role="switch">`.
715
661
  *
716
- * A toggle button similar to IconButton but with active state.
717
- * Uses only the 'text' variant style.
718
- * Designed to be used within ButtonToggleGroup.
662
+ * Supports controlled (`checked` + `onChange`) and uncontrolled (`defaultChecked`) modes.
719
663
  *
720
- * **Colors:**
721
- * - Active: primary (default) - customizable via activeTextColor
722
- * - Inactive: textSecondary (default) - customizable via inactiveTextColor
664
+ * @example <Switch label='Enable notifications' defaultChecked />
665
+ * @example <Switch checked={isEnabled} onChange={(e) => setEnabled(e.target.checked)} color='success' size='lg' />
723
666
  */
724
- declare const ButtonToggle: FC<ButtonToggleProps>;
725
-
726
- type ButtonToggleGroupProps = {
727
- /** Current selected value */
728
- value?: string | null;
729
- /** Change handler for value selection */
730
- onChange?: (value: string | null) => void;
731
- /** Children ButtonToggle components */
732
- children: ReactNode;
733
- /** If true, only one button can be active at a time */
734
- exclusive?: boolean;
735
- /** If true, at least one button must always be active (clicking the active button won't deselect it) */
736
- required?: boolean;
737
- /** Size of all buttons in the group */
738
- size?: IconButtonSizes;
739
- /** Custom text/icon color when active (default: primary) - applied to all children */
740
- activeTextColor?: keyof ThemeContract['colors'];
741
- /** Custom text/icon color when inactive (default: textSecondary) - applied to all children */
742
- inactiveTextColor?: keyof ThemeContract['colors'];
743
- /** Accessibility label for the group */
744
- ariaLabel?: string;
745
- /** ARIA role for the group */
746
- role?: string;
667
+ declare const Switch: FC<SwitchProps>;
668
+
669
+ /** Size variant of the TextField. */
670
+ type TextFieldSize = 'sm' | 'md' | 'lg';
671
+ /** Semantic status of the TextField, affecting border and helper text color. */
672
+ type TextFieldStatus = 'default' | 'error' | 'success' | 'warning';
673
+
674
+ type TextFieldProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> & {
675
+ ref?: Ref<HTMLInputElement>;
676
+ /** Visible label rendered above the field. */
677
+ label?: string;
678
+ /** Helper text or validation message rendered below the field. */
679
+ helperText?: string;
680
+ /** Size variant controlling height, padding and font size. @default 'md' */
681
+ size?: TextFieldSize;
682
+ /** Semantic status affecting border and helper text color. @default 'default' */
683
+ status?: TextFieldStatus;
684
+ /** SVG icon component rendered on the left inside the field. */
685
+ startIcon?: ComponentType<SVGProps<SVGSVGElement>>;
686
+ /**
687
+ * Element rendered on the right inside the field (e.g. a clear button, unit label).
688
+ * When `type` is `'password'`, the visibility toggle is always appended after this.
689
+ */
690
+ endAction?: ReactNode;
747
691
  };
748
692
 
749
693
  /**
750
- * ButtonToggleGroup component
694
+ * Full-featured text input with label, helper text, icons and end actions.
751
695
  *
752
- * Groups multiple ButtonToggle components together in a row without gaps.
753
- * Manages exclusive selection (only one button can be active at a time).
696
+ * Supports all native input types. When `type` is `'password'`, a visibility
697
+ * toggle is automatically injected as an end action.
754
698
  *
755
- * **Default Colors:**
756
- * - Active buttons: primary
757
- * - Inactive buttons: textSecondary
699
+ * @example <TextField label="Email" placeholder="you@example.com" />
700
+ * @example <TextField label="Password" type="password" helperText="Min. 8 characters." />
701
+ * @example <TextField label="Name" status="error" helperText="This field is required." />
702
+ * @example <TextField label="Search" startIcon={SearchIcon} endAction={<ClearButton />} />
758
703
  */
759
- declare const ButtonToggleGroup: FC<ButtonToggleGroupProps>;
760
-
761
- type FormProps = {
762
- /** Form content (inputs, buttons, etc.) */
763
- children: ReactNode;
764
- /** Callback fired when the form is submitted (preventDefault is called automatically) */
765
- onSubmit?: (e: FormEvent) => void;
766
- /** Accessibility label for the form */
767
- ariaLabel?: string;
768
- };
769
-
770
- declare const _default$3: react.NamedExoticComponent<FormProps>;
704
+ declare const TextField: FC<TextFieldProps>;
771
705
 
772
- type InputProps = {
773
- /** The value of the input */
706
+ /** An option in the Select dropdown. */
707
+ type SelectOption = {
708
+ /** The value submitted or returned in onChange. */
774
709
  value: string;
775
- /** Callback fired when the value changes */
776
- onChange: (value: string) => void;
777
- /** Callback fired when the input receives focus */
778
- onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
779
- /** Callback fired when the input loses focus */
780
- onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
781
- /** Callback fired when the input is clicked */
782
- onClick?: (event: MouseEvent<HTMLInputElement>) => void;
783
- /** Label displayed above the input */
784
- label?: string;
785
- /** Whether the field is mandatory (displays an asterisk next to the label) */
786
- mandatory?: boolean;
787
- /** Placeholder text */
788
- placeholder?: string;
789
- /** Whether the input is disabled */
710
+ /** Display label shown in the trigger and menu. */
711
+ label: string;
712
+ /** Optional icon rendered before the label in the menu item. */
713
+ icon?: ComponentType<SVGProps<SVGSVGElement>>;
714
+ /** Whether the option cannot be selected. */
790
715
  disabled?: boolean;
791
- /** Input type */
792
- type?: 'text' | 'password' | 'email' | 'number';
793
- /** Accessibility label (defaults to `label` if not provided) */
794
- ariaLabel?: string;
795
- /** Icon to display before the input */
796
- startIcon?: ReactNode;
797
- /** Icon to display after the input */
798
- endIcon?: ReactNode;
799
- /** Custom width for the input */
800
- width?: CSSProperties['width'];
801
716
  /**
802
- * Error message to display below the input.
803
- * When provided, `aria-invalid="true"` and `aria-errormessage` are set automatically.
717
+ * Optional group key. Options sharing the same group key are visually grouped together.
718
+ * A MenuGroup with the group key as label is automatically created.
804
719
  */
805
- error?: string;
806
- /** Unique HTML id for the input element (required when using `error`) */
807
- id?: string;
720
+ group?: string;
808
721
  };
809
722
 
810
- declare const _default$2: react.MemoExoticComponent<react.ForwardRefExoticComponent<InputProps & react.RefAttributes<HTMLInputElement>>>;
811
-
812
- type TextAreaProps = {
813
- /** The value of the textarea */
814
- value: string;
815
- /** Callback fired when the value changes */
816
- onChange: (value: string) => void;
817
- /** Callback fired when the textarea receives focus */
818
- onFocus?: (event: FocusEvent<HTMLTextAreaElement>) => void;
819
- /** Callback fired when the textarea loses focus */
820
- onBlur?: (event: FocusEvent<HTMLTextAreaElement>) => void;
821
- /** Label displayed above the textarea */
723
+ type SelectProps = {
724
+ ref?: Ref<HTMLButtonElement>;
725
+ /** Currently selected value (controlled mode). */
726
+ value?: string;
727
+ /** Default value for uncontrolled mode. */
728
+ defaultValue?: string;
729
+ /** Called with the new value when the selection changes. */
730
+ onChange?: (value: string) => void;
731
+ /** List of options. */
732
+ options?: SelectOption[];
733
+ /** Label rendered above the trigger. */
822
734
  label?: string;
823
- /** Whether the field is mandatory (displays an asterisk next to the label) */
824
- mandatory?: boolean;
825
- /** Placeholder text */
735
+ /** Helper text or validation message rendered below the trigger. */
736
+ helperText?: string;
737
+ /** Placeholder shown when no option is selected. */
826
738
  placeholder?: string;
827
- /** Whether the textarea is disabled */
739
+ /** Size variant. @default 'md' */
740
+ size?: TextFieldSize;
741
+ /** Semantic status affecting border and helper text color. @default 'default' */
742
+ status?: TextFieldStatus;
743
+ /** Whether the select is disabled. */
828
744
  disabled?: boolean;
829
- /** Accessibility label (defaults to `label` if not provided) */
830
- ariaLabel?: string;
831
- /** Custom width for the textarea */
832
- width?: CSSProperties['width'];
833
- /** Minimum number of visible text lines (auto-expands with content) */
834
- minRows?: number;
835
- /** Maximum number of visible text lines (adds scroll when exceeded) */
836
- maxRows?: number;
837
- /**
838
- * Error message to display below the textarea.
839
- * When provided, `aria-invalid="true"` and `aria-errormessage` are set automatically.
840
- */
841
- error?: string;
842
- /** Unique HTML id for the textarea element (required when using `error`) */
745
+ /** Whether the field is required. */
746
+ required?: boolean;
747
+ /** Fixed width for the select. Defaults to 100% of its container. */
748
+ width?: string | number;
749
+ /** HTML id for the trigger button. */
843
750
  id?: string;
844
751
  };
845
752
 
846
- declare const _default$1: react.MemoExoticComponent<react.ForwardRefExoticComponent<TextAreaProps & react.RefAttributes<HTMLTextAreaElement>>>;
753
+ declare const Select: FC<SelectProps>;
847
754
 
848
- type SelectProps = {
849
- /**
850
- * The options to display in the select dropdown
851
- */
852
- options: SelectOption[];
853
- /**
854
- * The currently selected value (null to show placeholder)
855
- */
856
- value: string | number | null;
857
- /**
858
- * Callback when selection changes
859
- */
860
- onChange: (value: string | number | null) => void;
861
- /**
862
- * Label displayed above the select
863
- */
864
- label?: string;
865
- /**
866
- * Whether the field is mandatory (displays an asterisk next to the label)
867
- */
868
- mandatory?: boolean;
869
- /**
870
- * Placeholder text when no option is selected
871
- */
872
- placeholder?: string;
873
- /**
874
- * Whether the select is disabled
875
- */
876
- disabled?: boolean;
877
- /**
878
- * Width of the select
879
- */
880
- width?: string | number;
881
- /**
882
- * Error message to display below the select.
883
- * When provided, `aria-invalid="true"` and `aria-errormessage` are set automatically.
884
- */
885
- error?: string;
886
- /**
887
- * Unique HTML id for the select trigger (required when using `error`)
888
- */
889
- id?: string;
890
- /**
891
- * Accessibility label for screen readers (defaults to `label`)
892
- */
893
- ariaLabel?: string;
894
- };
895
-
896
- /**
897
- * Select component that uses Menu for dropdown
898
- *
899
- * **Accessibility:**
900
- * - Uses `role="combobox"` with `aria-expanded` and `aria-haspopup="listbox"`
901
- * - Keyboard support: Enter/Space opens, Escape closes
902
- * - When `error` is provided, `aria-invalid="true"` and `aria-errormessage` are set
903
- * - `mandatory` adds `aria-required="true"`
904
- *
905
- * @example
906
- * ```tsx
907
- * <Select
908
- * options={[{ value: 'fr', label: 'France' }]}
909
- * value={country}
910
- * onChange={setCountry}
911
- * label="Country"
912
- * mandatory
913
- * error={countryError}
914
- * />
915
- * ```
916
- */
917
- declare const Select: FC<SelectProps>;
918
-
919
- type DateFormat = 'dd/MM/yyyy' | 'MM/dd/yyyy' | 'yyyy-MM-dd';
920
- type DatePickerProps = {
921
- /** The selected date */
922
- value?: Date | null;
923
- /** Callback fired when the date changes */
924
- onChange: (date: Date | null) => void;
925
- /** Label displayed above the date picker */
926
- label?: string;
927
- /** Whether the field is mandatory (displays an asterisk next to the label) */
928
- mandatory?: boolean;
929
- /** Placeholder text */
930
- placeholder?: string;
931
- /** Whether the date picker is disabled */
932
- disabled?: boolean;
933
- /** Custom width for the date picker */
934
- width?: string | number;
935
- /** Minimum selectable date */
936
- minDate?: Date | null;
937
- /** Maximum selectable date */
938
- maxDate?: Date | null;
939
- /** Date format for display and input (default: 'dd/MM/yyyy') */
940
- dateFormat?: DateFormat;
941
- /** Locale for month/year display (default: 'fr-FR') */
942
- locale?: string;
943
- };
944
-
945
- declare const _default: react.NamedExoticComponent<DatePickerProps>;
946
-
947
- /**
948
- * SVG icon component type (compatible with Aurora-DS Icon)
949
- */
950
- type SvgIconComponent = ComponentType<SVGProps<SVGSVGElement>>;
951
- type FilePickerProps = {
952
- /**
953
- * Label for the input
954
- */
955
- label?: string;
956
- /**
957
- * Accepted file types (MIME types)
958
- * @example 'image/jpeg,image/png,image/webp'
959
- * @example 'application/pdf'
960
- * @example '.jpg,.png,.pdf'
961
- */
962
- accept?: string;
963
- /**
964
- * Preview content to display when a file is selected
965
- * Can be a URL string for images or a ReactNode for custom preview
966
- */
967
- preview?: string | ReactNode | null;
968
- /**
969
- * Whether the preview is an image URL
970
- * @default true when preview is a string
971
- */
972
- previewIsImage?: boolean;
973
- /**
974
- * Alt text for image preview
975
- */
976
- previewAlt?: string;
977
- /**
978
- * Error message to display
979
- */
980
- error?: string | null;
981
- /**
982
- * Callback when a file is selected
983
- */
984
- onSelect: (file: File | null) => void;
985
- /**
986
- * Callback when the file is cleared
987
- */
988
- onClear: () => void;
989
- /**
990
- * Whether the input is disabled
991
- */
992
- disabled?: boolean;
993
- /**
994
- * Placeholder text shown in the dropzone
995
- */
996
- placeholder?: string;
997
- /**
998
- * Hint text shown below the placeholder (e.g., accepted formats)
999
- */
1000
- hint?: string;
1001
- /**
1002
- * Icon component to display in the dropzone
1003
- * Should be an SVG component (e.g., from @resources/Icons)
1004
- */
1005
- icon?: SvgIconComponent;
1006
- /**
1007
- * Icon component to display on the clear button
1008
- * Should be an SVG component (e.g., from @resources/Icons)
1009
- */
1010
- clearIcon?: SvgIconComponent;
1011
- /**
1012
- * Aria label for the clear button
1013
- */
1014
- clearAriaLabel?: string;
1015
- /**
1016
- * Width of the FilePicker container
1017
- * @example '400px'
1018
- * @example '100%'
1019
- */
1020
- width?: CSSProperties['width'];
1021
- /**
1022
- * Height of the dropzone (when no preview)
1023
- * @example '200px'
1024
- * @default '120px'
1025
- */
1026
- dropzoneHeight?: CSSProperties['height'];
1027
- /**
1028
- * Max height of the preview image
1029
- * @example '300px'
1030
- * @default '200px'
1031
- */
1032
- previewMaxHeight?: CSSProperties['maxHeight'];
1033
- /**
1034
- * Max width of the preview image
1035
- * @example '400px'
1036
- * @default '100%'
1037
- */
1038
- previewMaxWidth?: CSSProperties['maxWidth'];
1039
- /**
1040
- * Object fit for the preview image
1041
- * @default 'cover'
1042
- */
1043
- previewObjectFit?: CSSProperties['objectFit'];
755
+ type BoxProps = HTMLAttributes<HTMLDivElement> & BoxStyleProps & {
756
+ ref?: Ref<HTMLDivElement>;
1044
757
  };
1045
-
1046
- /**
1047
- * Generic file picker component with drag-and-drop style interface.
1048
- * Supports custom preview, icons, and styling for use in external libraries.
1049
- *
1050
- * @example
1051
- * ```tsx
1052
- * // Basic usage with image
1053
- * <FilePicker
1054
- * label="Upload Image"
1055
- * accept="image/*"
1056
- * preview={imagePreview}
1057
- * placeholder="Click to upload"
1058
- * hint="JPEG, PNG or WebP"
1059
- * icon={PlusIcon}
1060
- * clearIcon={TrashIcon}
1061
- * onSelect={handleSelect}
1062
- * onClear={handleClear}
1063
- * />
1064
- * ```
1065
- */
1066
- declare const FilePicker: FC<FilePickerProps>;
1067
-
1068
- type ImagePickerProps = {
1069
- /**
1070
- * Label for the input
1071
- */
1072
- label?: string;
1073
- /**
1074
- * Preview URL of the selected image
1075
- */
1076
- preview: string | null;
1077
- /**
1078
- * Error message to display
1079
- */
1080
- error?: string | null;
1081
- /**
1082
- * Callback when a file is selected
1083
- */
1084
- onSelect: (file: File | null) => void;
1085
- /**
1086
- * Callback when the image is cleared
1087
- */
1088
- onClear: () => void;
1089
- /**
1090
- * Whether the input is disabled
1091
- */
1092
- disabled?: boolean;
1093
- /**
1094
- * Placeholder text shown in the dropzone
1095
- * @default 'Click to upload an image'
1096
- */
1097
- placeholder?: string;
1098
- /**
1099
- * Hint text shown below the placeholder
1100
- * @default 'JPEG, PNG or WebP'
1101
- */
1102
- hint?: string;
1103
- /**
1104
- * Alt text for image preview
1105
- * @default 'Image preview'
1106
- */
1107
- previewAlt?: string;
1108
- /**
1109
- * Aria label for the clear button
1110
- * @default 'Remove image'
1111
- */
1112
- clearAriaLabel?: string;
1113
- /**
1114
- * Width of the ImagePicker container
1115
- * @example '400px'
1116
- * @example '100%'
1117
- */
1118
- width?: CSSProperties['width'];
1119
- /**
1120
- * Height of the dropzone (when no preview)
1121
- * @example '200px'
1122
- * @default '120px'
1123
- */
1124
- dropzoneHeight?: CSSProperties['height'];
1125
- /**
1126
- * Max height of the preview image
1127
- * @example '300px'
1128
- * @default '200px'
1129
- */
1130
- previewMaxHeight?: CSSProperties['maxHeight'];
1131
- /**
1132
- * Max width of the preview image
1133
- * @example '400px'
1134
- * @default '100%'
1135
- */
1136
- previewMaxWidth?: CSSProperties['maxWidth'];
1137
- /**
1138
- * Object fit for the preview image
1139
- * @default 'cover'
1140
- */
1141
- previewObjectFit?: CSSProperties['objectFit'];
1142
- };
1143
-
1144
- /**
1145
- * Image picker component built on top of the generic FilePicker.
1146
- * Pre-configured for image uploads with JPEG, PNG, and WebP support.
1147
- *
1148
- * @example
1149
- * ```tsx
1150
- * <ImagePicker
1151
- * label="Profile Picture"
1152
- * preview={imageUrl}
1153
- * onSelect={handleImageSelect}
1154
- * onClear={handleImageClear}
1155
- * />
1156
- * ```
1157
- */
1158
- declare const ImagePicker: FC<ImagePickerProps>;
1159
-
1160
- type BoxProps = {
1161
- /** Box children elements */
1162
- children?: ReactNode;
1163
- /** Width of the box */
758
+ /** Style props accepted by Box — token-aware for spacing/color/radius/shadow/zIndex. */
759
+ type BoxStyleProps = {
760
+ display?: CSSProperties['display'];
1164
761
  width?: CSSProperties['width'];
1165
- /** Height of the box */
1166
762
  height?: CSSProperties['height'];
1167
- /** Minimum width */
1168
763
  minWidth?: CSSProperties['minWidth'];
1169
- /** Minimum height */
1170
- minHeight?: CSSProperties['minHeight'];
1171
- /** Maximum width */
1172
764
  maxWidth?: CSSProperties['maxWidth'];
1173
- /** Maximum height */
765
+ minHeight?: CSSProperties['minHeight'];
1174
766
  maxHeight?: CSSProperties['maxHeight'];
1175
- /** Padding inside the box (theme spacing key) */
1176
- padding?: keyof ThemeContract['spacing'];
1177
- /** Margin around the box (theme spacing key) */
1178
- margin?: keyof ThemeContract['spacing'];
1179
- /** Background color of the box */
1180
- backgroundColor?: keyof ThemeContract['colors'];
1181
- /** Border radius of the box */
1182
- radius?: keyof ThemeContract['radius'];
1183
- /** Display type */
1184
- display?: CSSProperties['display'];
1185
- /** Position type */
767
+ padding?: keyof Theme['spacing'];
768
+ paddingTop?: keyof Theme['spacing'];
769
+ paddingRight?: keyof Theme['spacing'];
770
+ paddingBottom?: keyof Theme['spacing'];
771
+ paddingLeft?: keyof Theme['spacing'];
772
+ /** Horizontal padding (left + right). */
773
+ px?: keyof Theme['spacing'];
774
+ /** Vertical padding (top + bottom). */
775
+ py?: keyof Theme['spacing'];
776
+ margin?: keyof Theme['spacing'];
777
+ marginTop?: keyof Theme['spacing'];
778
+ marginRight?: keyof Theme['spacing'];
779
+ marginBottom?: keyof Theme['spacing'];
780
+ marginLeft?: keyof Theme['spacing'];
781
+ /** Horizontal margin (left + right). */
782
+ mx?: keyof Theme['spacing'];
783
+ /** Vertical margin (top + bottom). */
784
+ my?: keyof Theme['spacing'];
785
+ gap?: keyof Theme['spacing'];
786
+ rowGap?: keyof Theme['spacing'];
787
+ columnGap?: keyof Theme['spacing'];
788
+ flexDirection?: CSSProperties['flexDirection'];
789
+ flexWrap?: CSSProperties['flexWrap'];
790
+ alignItems?: CSSProperties['alignItems'];
791
+ justifyContent?: CSSProperties['justifyContent'];
792
+ gridTemplateColumns?: CSSProperties['gridTemplateColumns'];
793
+ gridTemplateRows?: CSSProperties['gridTemplateRows'];
794
+ flex?: CSSProperties['flex'];
795
+ flexGrow?: CSSProperties['flexGrow'];
796
+ flexShrink?: CSSProperties['flexShrink'];
797
+ flexBasis?: CSSProperties['flexBasis'];
798
+ alignSelf?: CSSProperties['alignSelf'];
799
+ justifySelf?: CSSProperties['justifySelf'];
800
+ gridColumn?: CSSProperties['gridColumn'];
801
+ gridRow?: CSSProperties['gridRow'];
802
+ order?: CSSProperties['order'];
1186
803
  position?: CSSProperties['position'];
1187
- /** Top position */
1188
804
  top?: CSSProperties['top'];
1189
- /** Right position */
1190
805
  right?: CSSProperties['right'];
1191
- /** Bottom position */
1192
806
  bottom?: CSSProperties['bottom'];
1193
- /** Left position */
1194
807
  left?: CSSProperties['left'];
1195
- /** Overflow behavior */
808
+ inset?: CSSProperties['inset'];
809
+ zIndex?: keyof Theme['zIndex'];
1196
810
  overflow?: CSSProperties['overflow'];
1197
- /** Overflow X behavior */
1198
811
  overflowX?: CSSProperties['overflowX'];
1199
- /** Overflow Y behavior */
1200
812
  overflowY?: CSSProperties['overflowY'];
1201
- /** Border color */
1202
- borderColor?: keyof ThemeContract['colors'];
1203
- /** Border width */
1204
- borderWidth?: string;
1205
- /** Flex direction (when display is flex) */
1206
- flexDirection?: CSSProperties['flexDirection'];
1207
- /** Align items (when display is flex) */
1208
- alignItems?: CSSProperties['alignItems'];
1209
- /** Justify content (when display is flex) */
1210
- justifyContent?: CSSProperties['justifyContent'];
1211
- /** Gap between children (theme spacing key) */
1212
- gap?: keyof ThemeContract['spacing'];
1213
- /** Flex wrap */
1214
- flexWrap?: CSSProperties['flexWrap'];
1215
- /** Flex grow */
1216
- flexGrow?: CSSProperties['flexGrow'];
1217
- /** Flex shrink */
1218
- flexShrink?: CSSProperties['flexShrink'];
1219
- /** Flex basis */
1220
- flexBasis?: CSSProperties['flexBasis'];
1221
- /** Z-index */
1222
- zIndex?: CSSProperties['zIndex'];
1223
- /** Opacity */
1224
- opacity?: CSSProperties['opacity'];
1225
- /** Cursor */
813
+ backgroundColor?: keyof Theme['colors'];
814
+ color?: keyof Theme['colors'];
815
+ borderRadius?: keyof Theme['radius'];
816
+ boxShadow?: keyof Theme['shadows'];
817
+ border?: CSSProperties['border'];
818
+ borderColor?: keyof Theme['colors'];
819
+ borderWidth?: CSSProperties['borderWidth'];
820
+ borderStyle?: CSSProperties['borderStyle'];
821
+ textAlign?: CSSProperties['textAlign'];
1226
822
  cursor?: CSSProperties['cursor'];
1227
- /** Box shadow */
1228
- shadow?: keyof ThemeContract['shadows'];
1229
- /** Accessibility label for screen readers */
1230
- ariaLabel?: string;
1231
- /** ID of element that labels this box */
1232
- ariaLabelledBy?: string;
1233
- /** ID of element that describes this box */
1234
- ariaDescribedBy?: string;
1235
- /** ARIA role */
1236
- role?: string;
1237
- /** Tab index for keyboard navigation */
1238
- tabIndex?: number;
1239
- /** HTML id attribute */
1240
- id?: string;
1241
- /** onClick handler */
1242
- onClick?: () => void;
1243
- /** onMouseEnter handler */
1244
- onMouseEnter?: () => void;
1245
- /** onMouseLeave handler */
1246
- onMouseLeave?: () => void;
1247
- /** Drag over event handler */
1248
- onDragOver?: (event: DragEvent<HTMLDivElement>) => void;
1249
- /** Drag leave event handler */
1250
- onDragLeave?: (event: DragEvent<HTMLDivElement>) => void;
1251
- /** Drop event handler */
1252
- onDrop?: (event: DragEvent<HTMLDivElement>) => void;
1253
- /** Drag start event handler */
1254
- onDragStart?: (event: DragEvent<HTMLDivElement>) => void;
1255
- /** Drag end event handler */
1256
- onDragEnd?: (event: DragEvent<HTMLDivElement>) => void;
1257
- /** Drag enter event handler */
1258
- onDragEnter?: (event: DragEvent<HTMLDivElement>) => void;
1259
- /** Whether the element is draggable */
1260
- draggable?: boolean;
823
+ opacity?: CSSProperties['opacity'];
1261
824
  };
1262
825
 
1263
826
  /**
1264
- * Box component
827
+ * A plain `div` enriched with convenient, token-aware style props.
1265
828
  *
1266
- * A versatile container component that acts as a flexible div with extensive styling props.
1267
- * Perfect for layout composition, spacing control, and creating custom containers.
829
+ * Spacing / color / radius / shadow / z-index props accept theme tokens only
830
+ * (e.g. `padding='md'`, `backgroundColor='surfacePaper'`).
831
+ * Dimensions and position offsets accept any CSS value.
832
+ * All native `div` attributes are forwarded, and `ref` points to the element.
1268
833
  *
1269
- * **Common use cases:**
1270
- * - Layout containers with specific dimensions
1271
- * - Spacing and positioning elements
1272
- * - Creating flexible layouts with flexbox
1273
- * - Wrapping content with background colors or borders
1274
- *
1275
- * @example
1276
- * ```tsx
1277
- * <Box width="300px" height="200px" padding="md" backgroundColor="surface">
1278
- * Content here
1279
- * </Box>
1280
- * ```
834
+ * @example <Box padding='md' backgroundColor='surfacePaper' borderRadius='lg'>Content</Box>
835
+ * @example <Box display='flex' gap='sm' alignItems='center'>…</Box>
1281
836
  */
1282
837
  declare const Box: FC<BoxProps>;
1283
838
 
1284
- type StackProps = {
1285
- /** Stack children elements */
1286
- children: ReactNode;
1287
- /** Flex direction of the stack */
1288
- direction?: CSSProperties['flexDirection'];
1289
- /** Gap between children (theme spacing or CSS value) */
1290
- gap?: keyof ThemeContract['spacing'];
1291
- /** Width of the stack container */
1292
- width?: CSSProperties['width'];
1293
- /** Height of the stack container */
1294
- height?: CSSProperties['height'];
1295
- /** Alignment of items on the cross axis */
1296
- align?: CSSProperties['alignItems'];
1297
- /** Justification of items on the main axis */
1298
- justify?: CSSProperties['justifyContent'];
1299
- /** Whether items should wrap */
1300
- wrap?: CSSProperties['flexWrap'];
1301
- /** Padding inside the stack */
1302
- padding?: keyof ThemeContract['spacing'];
1303
- /** Accessibility label for screen readers */
1304
- ariaLabel?: string;
1305
- /** ID of element that labels this stack */
1306
- ariaLabelledBy?: string;
1307
- /** ID of element that describes this stack */
1308
- ariaDescribedBy?: string;
1309
- /** ARIA role */
1310
- role?: string;
1311
- /** Tab index for keyboard navigation */
1312
- tabIndex?: number;
839
+ type CardProps = HTMLAttributes<HTMLDivElement> & {
840
+ ref?: Ref<HTMLDivElement>;
841
+ /** Visual style. @default 'elevated' */
842
+ variant?: CardVariant;
843
+ /** Inner padding using a spacing token. @default 'none' */
844
+ padding?: keyof Theme['spacing'];
1313
845
  };
1314
846
 
1315
- /**
1316
- * Stack component
1317
- *
1318
- * A flexbox container for laying out children in a row or column.
1319
- *
1320
- * **Direction:**
1321
- * - `row`: Horizontal layout (default)
1322
- * - `column`: Vertical layout
1323
- */
1324
- declare const Stack: FC<StackProps>;
1325
-
1326
- type CardProps = {
1327
- /** Card children elements */
1328
- children: ReactNode;
1329
- /** Flex direction of the card content */
1330
- direction?: CSSProperties['flexDirection'];
1331
- /** Padding inside the card (theme spacing key) */
1332
- padding?: keyof ThemeContract['spacing'];
1333
- /** Width of the card */
1334
- width?: CSSProperties['width'];
1335
- /** Height of the card */
1336
- height?: CSSProperties['height'];
1337
- /** Maximum height of the card */
1338
- maxHeight?: CSSProperties['maxHeight'];
1339
- /** Gap between children (theme spacing key) */
1340
- gap?: keyof ThemeContract['spacing'];
1341
- /** Border radius of the card */
1342
- radius?: keyof ThemeContract['radius'];
1343
- /** Shadow depth of the card */
1344
- shadow?: keyof ThemeContract['shadows'];
1345
- /** Alignment of items on the cross axis */
1346
- align?: CSSProperties['alignItems'];
1347
- /** Justification of items on the main axis */
1348
- justify?: CSSProperties['justifyContent'];
1349
- /** Background color of the card */
1350
- backgroundColor?: keyof ThemeContract['colors'];
1351
- /** Border color of the card */
1352
- borderColor?: keyof ThemeContract['colors'];
1353
- /** Accessibility label for screen readers */
1354
- ariaLabel?: string;
1355
- /** ID of element that labels this card */
1356
- ariaLabelledBy?: string;
1357
- /** ID of element that describes this card */
1358
- ariaDescribedBy?: string;
1359
- /** ARIA role */
1360
- role?: string;
1361
- /** Tab index for keyboard navigation */
1362
- tabIndex?: number;
1363
- /** Drag over event handler */
1364
- onDragOver?: (event: DragEvent<HTMLDivElement>) => void;
1365
- /** Drag leave event handler */
1366
- onDragLeave?: (event: DragEvent<HTMLDivElement>) => void;
1367
- /** Drop event handler */
1368
- onDrop?: (event: DragEvent<HTMLDivElement>) => void;
1369
- /** Drag start event handler */
1370
- onDragStart?: (event: DragEvent<HTMLDivElement>) => void;
1371
- /** Drag end event handler */
1372
- onDragEnd?: (event: DragEvent<HTMLDivElement>) => void;
1373
- /** Drag enter event handler */
1374
- onDragEnter?: (event: DragEvent<HTMLDivElement>) => void;
1375
- /** Whether the element is draggable */
1376
- draggable?: boolean;
847
+ type CardHeaderProps = {
848
+ /** Main label of the card header. */
849
+ label: string;
850
+ /** Optional icon rendered before the label. */
851
+ icon?: ComponentType<SVGProps<SVGSVGElement>>;
852
+ /** Optional actions rendered on the right side (e.g. buttons, IconButton). */
853
+ actions?: ReactNode;
1377
854
  };
1378
855
 
1379
- /**
1380
- * Card component
1381
- *
1382
- * A container component with a background, border radius, and optional shadow.
1383
- * Uses a Stack layout internally for organizing children.
1384
- *
1385
- * **Direction:**
1386
- * - `column`: Vertical layout (default)
1387
- * - `row`: Horizontal layout
1388
- */
1389
- declare const Card: FC<CardProps>;
1390
-
1391
- type GridProps = {
1392
- /** Grid children elements */
856
+ type CardBodyProps = {
857
+ /** Card body content. */
1393
858
  children: ReactNode;
1394
- /** Number of columns. Acts as max columns when minChildWidth is set for responsive behavior. */
1395
- columns?: number;
1396
- /** Number of rows. */
1397
- rows?: number;
1398
- /** Gap between columns (theme spacing key) */
1399
- columnGap?: keyof ThemeContract['spacing'];
1400
- /** Gap between rows (theme spacing key) */
1401
- rowGap?: keyof ThemeContract['spacing'];
1402
- /** Width of the grid container */
1403
- width?: CSSProperties['width'];
1404
- /** Height of the grid container */
1405
- height?: CSSProperties['height'];
1406
- /** Minimum height of the grid container */
1407
- minHeight?: CSSProperties['minHeight'];
1408
- /** Alignment of items within their grid area (cross axis) */
1409
- alignItems?: CSSProperties['alignItems'];
1410
- /** Justification of items within their grid area (main axis) */
1411
- justifyItems?: CSSProperties['justifyItems'];
1412
- /** Alignment of the entire grid within its container (cross axis) */
1413
- alignContent?: CSSProperties['alignContent'];
1414
- /** Justification of the entire grid within its container (main axis) */
1415
- justifyContent?: CSSProperties['justifyContent'];
1416
- /** Padding inside the grid */
1417
- padding?: keyof ThemeContract['spacing'];
1418
- /** Minimum width for each grid child. Enables responsive auto-fill behavior. */
1419
- minChildWidth?: CSSProperties['width'];
1420
- /** Accessibility label for screen readers */
1421
- ariaLabel?: string;
1422
- /** ID of element that labels this grid */
1423
- ariaLabelledBy?: string;
1424
- /** ID of element that describes this grid */
1425
- ariaDescribedBy?: string;
1426
- /** ARIA role */
1427
- role?: string;
1428
- /** Tab index for keyboard navigation */
1429
- tabIndex?: number;
859
+ /** Vertical padding using a spacing token. @default 'md' */
860
+ py?: keyof Theme['spacing'];
861
+ /** Horizontal padding using a spacing token. @default 'md' */
862
+ px?: keyof Theme['spacing'];
1430
863
  };
1431
864
 
1432
- /**
1433
- * Grid component
1434
- *
1435
- * A CSS Grid container for laying out children in a two-dimensional grid.
1436
- *
1437
- * **Usage:**
1438
- * - Use `columns` to define the number of columns or a custom grid-template-columns value
1439
- * - Use `rows` to define the number of rows or a custom grid-template-rows value
1440
- * - Use `minChildWidth` for responsive auto-fill grids
1441
- * - Combine `columns` + `minChildWidth` for responsive grid with max columns limit
1442
- */
1443
- declare const Grid: FC<GridProps>;
1444
-
1445
- type SeparatorProps = {
1446
- /** Direction of the separator */
1447
- direction?: 'horizontal' | 'vertical';
1448
- /** Custom width (overrides default) */
1449
- width?: string | number;
1450
- /** Custom height (overrides default) */
1451
- height?: string | number;
1452
- /** Custom color (overrides default) */
1453
- color?: keyof ThemeContract['colors'];
865
+ type CardVariant = 'elevated' | 'outlined';
866
+ type CardComponent = FC<CardProps> & {
867
+ Header: FC<CardHeaderProps>;
868
+ Body: FC<CardBodyProps>;
1454
869
  };
1455
870
 
1456
- /**
1457
- * Separator component
1458
- *
1459
- * A simple separator line for horizontal or vertical division.
1460
- */
1461
- declare const Separator: FC<SeparatorProps>;
1462
-
1463
- type PageSectionProps = PropsWithChildren<{
1464
- /** Gap between child elements */
1465
- gap?: keyof ThemeContract['spacing'];
1466
- /** Horizontal padding around the section */
1467
- paddingHorizontal?: keyof ThemeContract['spacing'];
1468
- /** Vertical padding around the section */
1469
- paddingVertical?: keyof ThemeContract['spacing'];
1470
- /** Alignment of items within the section */
1471
- alignItems?: CSSProperties['alignItems'];
1472
- /** Maximum width of the section */
1473
- maxWidth?: CSSProperties['maxWidth'];
1474
- /** Minimum height of the section */
1475
- minHeight?: CSSProperties['minHeight'];
1476
- /** Accessibility label for screen readers */
1477
- ariaLabel?: string;
1478
- /** ID of element that labels this section */
1479
- ariaLabelledBy?: string;
1480
- /** ID of element that describes this section */
1481
- ariaDescribedBy?: string;
1482
- /** ARIA role */
1483
- role?: string;
1484
- /** Tab index for keyboard navigation */
1485
- tabIndex?: number;
1486
- }>;
871
+ declare const Card: CardComponent;
1487
872
 
1488
873
  /**
1489
- * PageSection component
1490
- *
1491
- * A layout component that provides consistent spacing and alignment for page sections.
1492
- * Supports customization of gap, padding, alignment, min height and max width.
874
+ * Extra CSS Grid props not covered by BoxProps.
875
+ * `columns` and `rows` are convenience shorthands:
876
+ * a number is expanded to `repeat(n, 1fr)`, a string is forwarded as-is.
1493
877
  */
1494
- declare const PageSection: FC<PageSectionProps>;
1495
-
1496
- type PageProps = {
1497
- /** Page content */
1498
- children: ReactNode;
1499
- /** Optional footer component */
1500
- footer?: ReactNode;
1501
- /** Maximum width of the page content (default: 100%) */
1502
- maxWidth?: CSSProperties['maxWidth'];
1503
- /** Background color */
1504
- backgroundColor?: CSSProperties['backgroundColor'];
1505
- /** Padding around the page */
1506
- padding?: CSSProperties['padding'];
1507
- /** Custom className for additional styling */
1508
- className?: string;
1509
- /** Accessibility label for screen readers */
1510
- ariaLabel?: string;
1511
- /** ID of element that labels this page */
1512
- ariaLabelledBy?: string;
1513
- /** ID of element that describes this page */
1514
- ariaDescribedBy?: string;
1515
- /** ARIA role */
1516
- role?: string;
1517
- /** Tab index for keyboard navigation */
1518
- tabIndex?: number;
878
+ type GridStyleProps = {
879
+ /** Shorthand for `gridTemplateColumns`. A number expands to `repeat(n, 1fr)`. */
880
+ columns?: number | CSSProperties['gridTemplateColumns'];
881
+ /** Shorthand for `gridTemplateRows`. A number expands to `repeat(n, 1fr)`. */
882
+ rows?: number | CSSProperties['gridTemplateRows'];
883
+ autoFlow?: CSSProperties['gridAutoFlow'];
884
+ autoColumns?: CSSProperties['gridAutoColumns'];
885
+ autoRows?: CSSProperties['gridAutoRows'];
886
+ alignContent?: CSSProperties['alignContent'];
887
+ justifyItems?: CSSProperties['justifyItems'];
888
+ placeItems?: CSSProperties['placeItems'];
889
+ placeContent?: CSSProperties['placeContent'];
1519
890
  };
1520
-
1521
- /**
1522
- * Page component
1523
- *
1524
- * A layout component that provides consistent page structure with optional footer.
1525
- * Supports customization of dimensions, background, and content constraints.
1526
- */
1527
- declare const Page: FC<PageProps>;
1528
-
1529
- type AccordionProps = {
1530
- /** Title displayed in the accordion header */
1531
- title: string;
1532
- /** Content to show/hide when accordion is expanded */
1533
- children: ReactNode;
1534
- /** Whether the accordion is expanded */
1535
- expanded?: boolean;
1536
- /** Default expanded state (for uncontrolled mode) */
1537
- defaultExpanded?: boolean;
1538
- /** Callback fired when the accordion expands or collapses */
1539
- onChange?: (expanded: boolean) => void;
1540
- /** Disabled state */
1541
- disabled?: boolean;
1542
- /** Optional icon to display before title */
1543
- icon?: ReactNode;
1544
- /** Optional background color */
1545
- backgroundColor?: keyof ThemeContract['colors'];
1546
- /** Optional width */
1547
- width?: CSSProperties['width'];
1548
- /** Padding for the accordion header */
1549
- headerPadding?: CSSProperties['padding'];
1550
- /** Padding for the accordion content */
1551
- contentPadding?: CSSProperties['padding'];
1552
- /** Accessibility label for screen readers */
1553
- ariaLabel?: string;
1554
- /** ID of element that labels this accordion */
1555
- ariaLabelledBy?: string;
1556
- /** ID of element that describes this accordion */
1557
- ariaDescribedBy?: string;
1558
- /** ARIA role */
1559
- role?: string;
1560
- /** Tab index for keyboard navigation */
1561
- tabIndex?: number;
891
+ type GridProps = Omit<BoxProps, 'display'> & GridStyleProps & {
892
+ /** Defaults to `'grid'`. */
893
+ display?: 'grid' | 'inline-grid';
1562
894
  };
1563
895
 
1564
896
  /**
1565
- * Accordion component
897
+ * A CSS Grid `Box` with convenience props for common grid patterns.
898
+ *
899
+ * Defaults to `display: grid`. The `columns` and `rows` shorthands accept either a
900
+ * number (expanded to `repeat(n, 1fr)`) or any valid CSS `grid-template-*` string.
901
+ * All `Box` style props remain available (`gap`, `rowGap`, `columnGap`,
902
+ * `gridTemplateColumns`, `gridTemplateRows`, `alignItems`, `justifyContent`, …).
1566
903
  *
1567
- * A collapsible container that can show/hide content.
1568
- * Supports controlled and uncontrolled modes.
904
+ * @example <Grid columns={3} gap='md'>…</Grid>
905
+ * @example <Grid columns='repeat(auto-fill, minmax(200px, 1fr))' gap='lg'>…</Grid>
906
+ * @example <Grid rows={2} autoFlow='column' gap='sm' alignItems='center'>…</Grid>
1569
907
  */
1570
- declare const Accordion: FC<AccordionProps>;
908
+ declare const Grid: FC<GridProps>;
1571
909
 
1572
- /**
1573
- * Alert component props
1574
- */
1575
- interface AlertProps {
1576
- /**
1577
- * Text content of the alert
1578
- */
1579
- text: string;
1580
- /**
1581
- * Variant of the alert determining its color and icon
1582
- * @default 'default'
1583
- */
1584
- variant?: AlertVariant;
1585
- /**
1586
- * Position of the alert on screen
1587
- * @default 'top-right'
1588
- */
1589
- position?: AlertPosition;
1590
- /**
1591
- * Whether the alert is visible
1592
- * @default false
1593
- */
1594
- isVisible?: boolean;
1595
- /**
1596
- * Vertical offset for stacking alerts (in pixels)
1597
- * @default 0
1598
- */
1599
- offsetY?: number;
1600
- /**
1601
- * Maximum width of the alert in pixels
1602
- * @default 300
1603
- */
1604
- maxWidth?: number;
1605
- /**
1606
- * Unique identifier for the alert
1607
- * @internal
1608
- */
1609
- alertId?: string;
1610
- /**
1611
- * Callback when alert height changes
1612
- * @internal
1613
- */
1614
- onHeightChange?: (alertId: string, height: number) => void;
1615
- }
910
+ type StackProps = BoxProps;
1616
911
 
1617
912
  /**
1618
- * Alert component - Display notifications with different variants
1619
- *
1620
- * **Variants:**
1621
- * - `default`: Standard alert with neutral styling
1622
- * - `info`: Informational alert with blue styling
1623
- * - `warning`: Warning alert with yellow/orange styling
1624
- * - `error`: Error alert with red styling
1625
- * - `success`: Success alert with green styling
913
+ * A flex `Box` for laying out children along a single axis.
1626
914
  *
1627
- * **Features:**
1628
- * - Auto-dismisses after 3 seconds
1629
- * - Positioned at screen corners
1630
- * - Supports stacking with offsetY
1631
- * - Icon based on variant
1632
- * - Smooth animations
1633
- * - Dynamic height calculation for proper stacking
915
+ * Defaults to `display: flex` and a vertical (`column`) direction. Every
916
+ * `Box` style prop is available (`gap`, `alignItems`, `justifyContent`, …),
917
+ * and `display` can still be overridden (e.g. `'inline-flex'`).
1634
918
  *
1635
- * **Accessibility:**
1636
- * - Uses `role="alert"` for screen reader announcements
1637
- * - Error alerts use `aria-live="assertive"` for urgent announcements
1638
- * - Other variants use `aria-live="polite"` to avoid interrupting users
1639
- *
1640
- * @example
1641
- * ```tsx
1642
- * <Alert
1643
- * text="Operation completed successfully"
1644
- * variant="success"
1645
- * position="top-right"
1646
- * isVisible={true}
1647
- * />
1648
- * ```
919
+ * @example <Stack gap='sm'>…</Stack>
920
+ * @example <Stack flexDirection='row' gap='md' alignItems='center' justifyContent='space-between'>…</Stack>
1649
921
  */
1650
- declare const Alert: FC<AlertProps>;
1651
-
1652
- type AnchorPosition = {
1653
- top: number;
1654
- left: number;
1655
- } | null;
1656
- type AnchorOrigin = 'left' | 'right';
922
+ declare const Stack: FC<StackProps>;
1657
923
 
1658
- type MenuProps = {
1659
- anchor: HTMLElement | null;
1660
- onClose: () => void;
1661
- children: ReactNode;
1662
- anchorOrigin?: AnchorOrigin;
924
+ type AlertProps = {
925
+ /** Visual style of the alert. @default 'default' */
926
+ variant?: AlertVariant;
927
+ /** Alert sub-components: Alert.Title and/or Alert.Body. */
928
+ children?: ReactNode;
929
+ /** Explicit width for the Alert. */
1663
930
  width?: CSSProperties['width'];
1664
- /**
1665
- * Désactive l'animation/transition d'apparition du menu
1666
- * @default false
1667
- */
1668
- disableAnimation?: boolean;
1669
931
  };
1670
932
 
1671
- declare const Menu: FC<MenuProps>;
1672
-
1673
- type MenuGroupProps = {
933
+ type AlertTitleProps = {
934
+ /** Title text displayed next to the variant icon. */
1674
935
  children: ReactNode;
1675
936
  };
1676
937
 
1677
- declare const MenuGroup: FC<MenuGroupProps>;
938
+ type AlertBodyProps = {
939
+ /** Alert message content. */
940
+ children: ReactNode;
941
+ };
1678
942
 
1679
- type MenuItemProps = {
1680
- label: string;
1681
- icon?: ReactNode;
1682
- onClick: () => void;
1683
- textColor?: keyof ThemeContract['colors'];
1684
- iconColor?: keyof ThemeContract['colors'];
1685
- /** If true, the menu item is highlighted as active */
1686
- active?: boolean;
943
+ type AlertVariant = 'default' | 'success' | 'error' | 'warning' | 'info';
944
+ type AlertComponent = FC<AlertProps> & {
945
+ Title: FC<AlertTitleProps>;
946
+ Body: FC<AlertBodyProps>;
1687
947
  };
1688
948
 
1689
- declare const MenuItem: FC<MenuItemProps>;
949
+ declare const Alert: AlertComponent;
1690
950
 
1691
- type ModalProps = {
1692
- isOpen: boolean;
951
+ type DialogProps = {
952
+ /** Whether the dialog is visible. */
953
+ open: boolean;
954
+ /** Called when the dialog should close (Escape key or close button). */
1693
955
  onClose: () => void;
1694
- label: string;
956
+ /** Whether clicking the backdrop closes the dialog. @default false */
957
+ closeOnBackdropClick?: boolean;
958
+ /** Maximum width of the dialog panel. Accepts numbers (px) or any CSS width value. @default '80vw' */
959
+ maxWidth?: number | string;
960
+ /** Maximum height of the dialog panel before the body scrolls. @default '80vh' */
961
+ maxHeight?: string;
962
+ /** Minimum width of the dialog panel. Accepts numbers (px) or any CSS width value. */
963
+ minWidth?: number | string;
964
+ /** Minimum height of the dialog panel. Accepts numbers (px) or any CSS height value. */
965
+ minHeight?: number | string;
966
+ /** Whether the dialog takes the full viewport height on mobile (bottom-sheet variant). @default false */
967
+ fullscreen?: boolean;
968
+ /** Accessible label — use when Dialog.Header is not present. */
969
+ 'aria-label'?: string;
970
+ /** Dialog content. Typically Dialog.Header + Dialog.Body. */
1695
971
  children: ReactNode;
1696
- isForm?: boolean;
1697
- action?: ButtonProps;
1698
972
  };
1699
973
 
1700
- /**
1701
- * Modal component
1702
- *
1703
- * An overlay dialog for focused interactions.
1704
- *
1705
- * **Accessibility:**
1706
- * - Uses `role="dialog"` and `aria-modal="true"` for screen readers
1707
- * - `aria-labelledby` links to the modal title
1708
- * - Focus is trapped inside the modal while it is open
1709
- * - Focus returns to the triggering element when closed
1710
- * - Escape key closes the modal
1711
- *
1712
- * @example
1713
- * ```tsx
1714
- * <Modal
1715
- * isOpen={isOpen}
1716
- * onClose={() => setIsOpen(false)}
1717
- * label="Confirm deletion"
1718
- * action={{ label: 'Delete', onClick: handleDelete }}
1719
- * >
1720
- * <Text>Are you sure you want to delete this item?</Text>
1721
- * </Modal>
1722
- * ```
1723
- */
1724
- declare const Modal: FC<ModalProps>;
1725
-
1726
- type DrawerItemProps = {
1727
- /** DrawerItem text label */
1728
- label: string;
1729
- /** Optional icon to display before label */
1730
- startIcon?: ReactNode;
1731
- /** Optional icon to display after label */
1732
- endIcon?: ReactNode;
1733
- /** Click handler */
1734
- onClick?: () => void;
1735
- /** Selected state */
1736
- selected?: boolean;
1737
- /** Disabled state */
1738
- disabled?: boolean;
1739
- /** Optional chip to display */
1740
- chip?: Omit<StatusProps, 'size' | 'disabled'>;
1741
- /** Accessibility label for screen readers */
1742
- ariaLabel?: string;
1743
- /** ID of element that labels this item */
1744
- ariaLabelledBy?: string;
1745
- /** ID of element that describes this item */
1746
- ariaDescribedBy?: string;
1747
- /** ARIA role */
1748
- role?: string;
1749
- /** Tab index for keyboard navigation */
1750
- tabIndex?: number;
974
+ type DialogHeaderProps = {
975
+ /** Dialog title displayed in the header. */
976
+ title: string;
977
+ /** Called when the close button is clicked. */
978
+ onClose: () => void;
1751
979
  };
1752
980
 
1753
- /**
1754
- * DrawerItem component
1755
- *
1756
- * A navigation item for use in drawers/sidebars.
1757
- * Similar to a text button with selected state support.
1758
- */
1759
- declare const DrawerItem: FC<DrawerItemProps>;
1760
-
1761
- /**
1762
- * Props for the Breadcrumb component
1763
- */
1764
- interface BreadcrumbProps extends ComponentPropsWithoutRef<'nav'> {
1765
- /**
1766
- * Maximum number of items to display (minimum 2).
1767
- * If exceeded, shows: first item + ellipsis + last (maxItems - 1) items
1768
- * Separators are automatically inserted between items.
1769
- * @example maxItems={3} with 6 items → Home > ... > Item5 > Item6
1770
- */
1771
- maxItems?: number;
1772
- }
1773
-
1774
- /**
1775
- * Breadcrumb component
1776
- * Navigation component for hierarchical page structures
1777
- *
1778
- * @param maxItems - Maximum number of items to display (minimum 2).
1779
- * If exceeded, shows: first item + ellipsis + last (maxItems - 1) items
1780
- * @param children
1781
- * @param props
1782
- */
1783
- declare const Breadcrumb: react.NamedExoticComponent<BreadcrumbProps>;
1784
-
1785
- /**
1786
- * Props for the BreadcrumbLink component
1787
- * Renders a clickable breadcrumb item (includes the li wrapper)
1788
- */
1789
- interface BreadcrumbLinkProps {
1790
- /**
1791
- * The text content of the link (required)
1792
- */
1793
- children: string;
1794
- /**
1795
- * Click handler for navigation (compatible with React Router)
1796
- */
1797
- onClick?: () => void;
1798
- }
1799
-
1800
- /**
1801
- * BreadcrumbLink component
1802
- * Renders a clickable breadcrumb item with a link
1803
- */
1804
- declare const BreadcrumbLink: react.NamedExoticComponent<BreadcrumbLinkProps>;
1805
-
1806
- /**
1807
- * Props for the BreadcrumbPage component
1808
- * Renders the current page in the breadcrumb (includes the li wrapper)
1809
- */
1810
- interface BreadcrumbPageProps {
1811
- /**
1812
- * The text content of the page (required)
1813
- */
1814
- children: string;
1815
- }
1816
-
1817
- /**
1818
- * BreadcrumbPage component
1819
- * Renders the current page (non-clickable) in the breadcrumb
1820
- */
1821
- declare const BreadcrumbPage: react.NamedExoticComponent<BreadcrumbPageProps>;
1822
-
1823
- /**
1824
- * Props for the BreadcrumbSeparator component
1825
- */
1826
- interface BreadcrumbSeparatorProps {
1827
- }
1828
-
1829
- /**
1830
- * BreadcrumbSeparator component
1831
- */
1832
- declare const BreadcrumbSeparator: FC<BreadcrumbSeparatorProps>;
1833
-
1834
- /**
1835
- * Props for the BreadcrumbEllipsis component
1836
- */
1837
- interface BreadcrumbEllipsisProps {
1838
- }
1839
-
1840
- /**
1841
- * BreadcrumbEllipsis component
1842
- * Renders an ellipsis item in the breadcrumb (includes the li wrapper)
1843
- */
1844
- declare const BreadcrumbEllipsis: FC<BreadcrumbEllipsisProps>;
1845
-
1846
- type TabsProps = {
1847
- /** Children TabItem components */
981
+ type DialogBodyProps = {
982
+ /** Body content of the dialog. */
1848
983
  children: ReactNode;
1849
- /** Currently active tab value or index */
1850
- activeTab?: string | number;
1851
- /** Width of the tabs container, default 100% */
1852
- width?: string;
1853
984
  };
1854
985
 
1855
- /**
1856
- * Tabs component for navigation between multiple sections
1857
- */
1858
- declare const Tabs: FC<TabsProps>;
1859
-
1860
- type TabItemProps = {
1861
- /** Label of the tab */
1862
- label?: string;
1863
- /** Start icon of the tab */
1864
- startIcon?: ReactElement;
1865
- /** End icon of the tab */
1866
- endIcon?: ReactElement;
1867
- /** Optional value associated with the tab */
1868
- value?: string | number;
1869
- /** Whether the tab is active */
1870
- isActive?: boolean;
1871
- /** Click handler */
1872
- onClick?: () => void;
986
+ type DialogComponent = FC<DialogProps> & {
987
+ Header: FC<DialogHeaderProps>;
988
+ Body: FC<DialogBodyProps>;
1873
989
  };
1874
990
 
1875
- /**
1876
- * TabItem component for use inside Tabs
1877
- */
1878
- declare const TabItem: FC<TabItemProps>;
991
+ declare const Dialog: DialogComponent;
1879
992
 
1880
- /**
1881
- * Props for the Pagination component
1882
- */
1883
- type PaginationProps = {
1884
- /** Current page number (1-indexed) */
1885
- currentPage: number;
1886
- /** Total number of pages */
1887
- totalPages: number;
1888
- /** Callback when page changes */
1889
- onPageChange: (page: number) => void;
1890
- /** Callback when clicking the previous button */
1891
- onPrevious?: (page: number) => void;
1892
- /** Callback when clicking the next button */
1893
- onNext?: (page: number) => void;
1894
- /** Maximum number of page buttons to display */
1895
- maxVisiblePages?: number;
1896
- /** Accessibility label for the pagination */
1897
- ariaLabel?: string;
993
+ type MenuProps = {
994
+ /** Whether the menu is visible. */
995
+ open: boolean;
996
+ /** Called when the menu should close (click outside or Escape key). */
997
+ onClose: () => void;
998
+ /** Reference element used to position the menu. */
999
+ anchorEl?: HTMLElement | null;
1000
+ /** Minimum width override. Defaults to the anchor element's width. */
1001
+ minWidth?: number | string;
1002
+ /** Maximum height before scrolling. @default '20rem' */
1003
+ maxHeight?: string;
1004
+ /** ARIA id for the listbox panel. */
1005
+ id?: string;
1006
+ /** Menu content MenuGroup and/or MenuItem. */
1007
+ children: ReactNode;
1898
1008
  };
1899
1009
 
1900
- /**
1901
- * Pagination component for navigating between pages
1902
- */
1903
- declare const Pagination: FC<PaginationProps>;
1904
-
1905
- /**
1906
- * Options for showing an alert
1907
- */
1908
- interface ShowAlertOptions {
1909
- /**
1910
- * Text content of the alert
1911
- */
1912
- text: string;
1913
- /**
1914
- * Variant of the alert
1915
- * @default 'default'
1916
- */
1917
- variant?: AlertVariant;
1918
- /**
1919
- * Position of the alert on screen
1920
- * @default 'top-right'
1921
- */
1922
- position?: AlertPosition;
1923
- /**
1924
- * Duration before auto-dismiss in milliseconds
1925
- * @default 3000
1926
- */
1927
- duration?: number;
1928
- /**
1929
- * Maximum width of the alert in pixels
1930
- * @default 300
1931
- */
1932
- maxWidth?: number;
1933
- }
1934
- /**
1935
- * Alert context value
1936
- */
1937
- interface AlertContextValue {
1938
- /**
1939
- * Show an alert
1940
- */
1941
- showAlert: (options: ShowAlertOptions) => void;
1942
- }
1943
- /**
1944
- * Alert provider props
1945
- */
1946
- interface AlertProviderProps {
1947
- children: React.ReactNode;
1948
- }
1949
-
1950
- /**
1951
- * Alert Provider Component
1952
- * Manages alert queue and renders alerts in a portal
1953
- */
1954
- declare const AlertProvider: FC<AlertProviderProps>;
1955
- /**
1956
- * Hook to access alert functionality
1957
- *
1958
- * @example
1959
- * ```tsx
1960
- * const { showAlert } = useAlert()
1961
- *
1962
- * showAlert({
1963
- * text: 'Operation completed',
1964
- * variant: 'success',
1965
- * position: 'top-right'
1966
- * })
1967
- * ```
1968
- */
1969
- declare const useAlert: () => AlertContextValue;
1970
-
1971
- type UseAnchorPositionParams = {
1972
- anchor: HTMLElement | null;
1973
- menuRef: RefObject<HTMLDivElement | null>;
1974
- anchorOrigin?: AnchorOrigin;
1975
- isVisible: boolean;
1010
+ type MenuGroupProps = {
1011
+ /** Optional label shown above the group items. */
1012
+ label?: string;
1013
+ /** Render a visual horizontal separator above this group. */
1014
+ divider?: boolean;
1015
+ /** MenuItem children. */
1016
+ children: ReactNode;
1976
1017
  };
1977
- /**
1978
- * Hook pour calculer la position d'un élément par rapport à son ancre
1979
- * @param anchor - Élément HTML servant d'ancre
1980
- * @param menuRef - Référence vers l'élément à positionner
1981
- * @param anchorOrigin - Origine de l'ancrage ('left' ou 'right')
1982
- * @param isVisible - Si l'élément est visible (pour recalculer la position)
1983
- */
1984
- declare const useAnchorPosition: ({ anchor, menuRef, anchorOrigin, isVisible }: UseAnchorPositionParams) => AnchorPosition;
1985
-
1986
- /**
1987
- * Gestion d'un click en dehors d'un ou plusieurs éléments
1988
- * @param refs Tableau de références à écouter
1989
- * @param onClickOutside Callback si clic à l'extérieur
1990
- * @param shouldTrigger Activation du comportement
1991
- */
1992
- declare const useClickOutside: (refs: RefObject<HTMLElement | null>[], onClickOutside: () => void, shouldTrigger?: boolean) => void;
1993
1018
 
1994
- type UseTransitionRenderReturnType = {
1995
- isVisible: boolean;
1996
- isFadingIn: boolean;
1019
+ type MenuItemProps = HTMLAttributes<HTMLLIElement> & {
1020
+ ref?: Ref<HTMLLIElement>;
1021
+ /** Display text of the item. */
1022
+ label: string;
1023
+ /** Optional SVG icon rendered before the label. */
1024
+ icon?: ComponentType<SVGProps<SVGSVGElement>>;
1025
+ /** Whether this item is currently selected. */
1026
+ selected?: boolean;
1027
+ /** Whether this item has keyboard focus (highlighted via arrow navigation). */
1028
+ focused?: boolean;
1029
+ /** Whether the item is non-interactive. */
1030
+ disabled?: boolean;
1997
1031
  };
1998
1032
 
1999
- /**
2000
- * Hook pour gérer les animations de transition lors des renders
2001
- * @param isOpen - État d'ouverture
2002
- * @param duration - Durée de la transition en ms
2003
- */
2004
- declare const useTransitionRender: (isOpen: boolean, duration?: number) => UseTransitionRenderReturnType;
2005
-
2006
- /**
2007
- * Default theme type for aurora-ds-components
2008
- */
2009
- type Theme = {
2010
- colors: ThemeColorContract;
2011
- spacing: ThemeSpacingContract;
2012
- radius: ThemeRadiusContract;
2013
- shadows: ThemeShadowsContract;
2014
- fontSize: ThemeFontSizeContract;
2015
- fontWeight: ThemeFontWeightContract;
2016
- lineHeight: ThemeLineHeightContract;
2017
- zIndex: ThemeZIndexContract;
2018
- transition: ThemeTransitionContract;
2019
- opacity: ThemeOpacityContract;
2020
- breakpoints: ThemeBreakpointsContract;
1033
+ type MenuComponent = FC<MenuProps> & {
1034
+ Item: FC<MenuItemProps>;
1035
+ Group: FC<MenuGroupProps>;
2021
1036
  };
2022
1037
 
1038
+ declare const Menu: MenuComponent;
1039
+
2023
1040
  /**
2024
- * Default module augmentation for @aurora-ds/components
2025
- *
2026
- * This provides the base theme structure for the library.
2027
- * Projects can override this to add custom tokens:
1041
+ * Tooltip
2028
1042
  *
2029
- * @example
2030
- * ```typescript
2031
- * // In your project: src/theme/theme.module.ts
2032
- * import type { Theme } from '@aurora-ds/components'
2033
- *
2034
- * // Extend the base Theme with your custom tokens
2035
- * interface MyTheme extends Theme {
2036
- * colors: Theme['colors'] & {
2037
- * link: string
2038
- * linkHover: string
2039
- * }
2040
- * }
1043
+ * A hover/focus-triggered tooltip rendered in a portal to avoid clipping
1044
+ * by parent `overflow: hidden` containers. Computes its fixed position from
1045
+ * the trigger element's bounding rect and clamps it to the viewport on all sides.
2041
1046
  *
2042
- * declare module '@aurora-ds/theme' {
2043
- * interface ThemeRegistry {
2044
- * theme: MyTheme // Override with your extended theme
2045
- * }
2046
- * }
2047
- * ```
2048
- */
2049
- declare module '@aurora-ds/theme' {
2050
- interface ThemeRegistry {
2051
- theme: Theme;
2052
- }
2053
- }
2054
-
2055
- /**
2056
- * Default theme for aurora-ds-components
1047
+ * **Placements:** `top` | `bottom` | `left` | `right` (default)
2057
1048
  *
2058
- * This theme is used by default if no custom theme is provided.
2059
- * You can override it by passing your own theme to ThemeProvider:
1049
+ * By default the tooltip is disabled on touch/mobile devices (`pointer: coarse`).
1050
+ * Set `disableOnMobile={false}` to keep it active on mobile (e.g. InfoBubble).
2060
1051
  *
2061
1052
  * @example
2062
1053
  * ```tsx
2063
- * import { ThemeProvider } from '@aurora-ds/theme'
2064
- * import { defaultTheme } from '@aurora-ds/components'
2065
- *
2066
- * // Use default theme
2067
- * <ThemeProvider theme={defaultTheme}>
2068
- * <App />
2069
- * </ThemeProvider>
2070
- *
2071
- * // Or extend/override it
2072
- * const myTheme = {
2073
- * ...defaultTheme,
2074
- * colors: {
2075
- * ...defaultTheme.colors,
2076
- * primary: '#FF0000', // Override primary color
2077
- * }
2078
- * }
1054
+ * <Tooltip label="Save document" placement="top">
1055
+ * <Button>Save</Button>
1056
+ * </Tooltip>
2079
1057
  * ```
2080
1058
  */
2081
- declare const defaultTheme: Theme;
1059
+ declare const Tooltip: FC<TooltipProps>;
1060
+
1061
+ declare const lightTheme: Theme;
1062
+
1063
+ declare const darkTheme: Theme;
2082
1064
 
2083
- export { Accordion, Alert, AlertProvider, Avatar, AvatarGroup, Box, Breadcrumb, BreadcrumbEllipsis, BreadcrumbLink, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonToggle, ButtonToggleGroup, Card, _default as DatePicker, DrawerItem, FilePicker, _default$3 as Form, Grid, Icon, IconButton, ImagePicker, _default$2 as Input, Menu, MenuGroup, MenuItem, Modal, Page, PageSection, Pagination, Select, Separator, Skeleton, Stack, Status, TabItem, Tabs, Text, _default$1 as TextArea, defaultTheme, useAlert, useAnchorPosition, useClickOutside, useTransitionRender };
2084
- export type { AccordionProps, AlertContextValue, AlertPosition, AlertProps, AlertProviderProps, AlertVariant, AnchorOrigin, AnchorPosition, AvatarGroupProps, AvatarProps, BoxProps, BreadcrumbEllipsisProps, BreadcrumbLinkProps, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparatorProps, ButtonProps, ButtonToggleGroupProps, ButtonToggleProps, ButtonVariantStyle, ButtonVariants, CardProps, DateFormat, DatePickerProps, DrawerItemProps, FilePickerProps, FormProps, GridProps, IconButtonProps, IconProps, ImagePickerProps, InputProps, MenuGroupProps, MenuItemProps, MenuProps, ModalProps, PageProps, PageSectionProps, PaginationProps, SelectOption, SelectProps, SeparatorProps, ShowAlertOptions, SkeletonProps, StackProps, StatusColor, StatusProps, StatusSize, StatusVariant, TabItemProps, TabsProps, TextAreaProps, TextProps, TextVariantStyle, TextVariants, Theme, ThemeBreakpointsContract, ThemeColorContract, ThemeContract, ThemeFontSizeContract, ThemeFontWeightContract, ThemeLineHeightContract, ThemeOpacityContract, ThemeRadiusContract, ThemeShadowsContract, ThemeSpacingContract, ThemeTransitionContract, ThemeZIndexContract, UseTransitionRenderReturnType };
1065
+ export { Alert, Badge, Box, Button, Card, Dialog, Form, Grid, Icon, IconButton, InfoBubble, Link, Menu, Select, Skeleton, Stack, Switch, Text, TextField, Tooltip, darkTheme, lightTheme };
1066
+ export type { AlertBodyProps, AlertProps, AlertTitleProps, AlertVariant, BadgeColor, BadgeIcon, BadgeProps, BadgeSize, BadgeVariant, BoxProps, ButtonColor, ButtonIcon, ButtonProps, ButtonSize, ButtonVariant, CardBodyProps, CardHeaderProps, CardProps, CardVariant, DialogBodyProps, DialogHeaderProps, DialogProps, FormProps, GridProps, GridStyleProps, IconButtonProps, IconProps, IconStyleParams, InfoBubbleProps, LinkIcon, LinkProps, LinkUnderline, MenuGroupProps, MenuItemProps, MenuProps, Palette, SelectOption, SelectProps, SkeletonAnimation, SkeletonProps, SkeletonVariant, StackProps, SwitchColor, SwitchProps, SwitchSize, TextFieldProps, TextFieldSize, TextFieldStatus, TextProps, TextStyleParams, TextVariantStyle, TextVariants, Theme, TooltipPlacement, TooltipProps };