@julseb-lib/react 0.1.18 → 0.1.20

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 (649) hide show
  1. package/dist/chunk-AOKNHBEF.js +1 -0
  2. package/dist/chunk-AOKNHBEF.js.map +1 -0
  3. package/dist/chunk-F55MXC3Z.js +1 -0
  4. package/dist/chunk-F55MXC3Z.js.map +1 -0
  5. package/dist/chunk-IH6ET7Q6.js +1 -0
  6. package/dist/chunk-IH6ET7Q6.js.map +1 -0
  7. package/dist/chunk-OOIPIHXS.js +1 -0
  8. package/dist/chunk-OOIPIHXS.js.map +1 -0
  9. package/dist/chunk-ZL3Z7QC7.js +1 -0
  10. package/dist/chunk-ZL3Z7QC7.js.map +1 -0
  11. package/dist/global-Bck2LNL3.d.cts +1472 -0
  12. package/dist/global-Bck2LNL3.d.ts +1472 -0
  13. package/dist/index.cjs +11892 -0
  14. package/dist/index.cjs.map +1 -0
  15. package/dist/index.d.cts +3231 -0
  16. package/dist/index.d.ts +3231 -1
  17. package/dist/index.js +11732 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/types/components-items-props.cjs +19 -0
  20. package/dist/types/components-items-props.cjs.map +1 -0
  21. package/dist/types/components-items-props.d.cts +175 -0
  22. package/dist/{lib/types/components-items-props.ts → types/components-items-props.d.ts} +56 -65
  23. package/dist/types/components-items-props.js +2 -0
  24. package/dist/types/components-items-props.js.map +1 -0
  25. package/dist/types/components-props.cjs +19 -0
  26. package/dist/types/components-props.cjs.map +1 -0
  27. package/dist/types/components-props.d.cts +1119 -0
  28. package/dist/types/components-props.d.ts +1119 -0
  29. package/dist/types/components-props.js +2 -0
  30. package/dist/types/components-props.js.map +1 -0
  31. package/dist/types/global.cjs +19 -0
  32. package/dist/types/global.cjs.map +1 -0
  33. package/dist/types/global.d.cts +3 -0
  34. package/dist/types/global.d.ts +3 -0
  35. package/dist/types/global.js +2 -0
  36. package/dist/types/global.js.map +1 -0
  37. package/dist/types/index.cjs +19 -0
  38. package/dist/types/index.cjs.map +1 -0
  39. package/dist/types/index.d.cts +10 -0
  40. package/dist/types/index.d.ts +10 -0
  41. package/dist/types/index.js +6 -0
  42. package/dist/types/index.js.map +1 -0
  43. package/dist/types/require-at-least-one.cjs +19 -0
  44. package/dist/types/require-at-least-one.cjs.map +1 -0
  45. package/dist/types/require-at-least-one.d.cts +5 -0
  46. package/dist/types/require-at-least-one.d.ts +5 -0
  47. package/dist/types/require-at-least-one.js +2 -0
  48. package/dist/types/require-at-least-one.js.map +1 -0
  49. package/dist/types/tailwind.cjs +19 -0
  50. package/dist/types/tailwind.cjs.map +1 -0
  51. package/dist/types/tailwind.d.cts +3259 -0
  52. package/dist/types/tailwind.d.ts +3259 -0
  53. package/dist/types/tailwind.js +2 -0
  54. package/dist/types/tailwind.js.map +1 -0
  55. package/package.json +31 -47
  56. package/LICENSE +0 -21
  57. package/README.md +0 -206
  58. package/dist/julseb-lib-react.cjs.js +0 -17
  59. package/dist/julseb-lib-react.es.js +0 -8977
  60. package/dist/lib/Variables.ts +0 -202
  61. package/dist/lib/components/Accordion/Accordion.tsx +0 -73
  62. package/dist/lib/components/Accordion/AccordionContent.tsx +0 -55
  63. package/dist/lib/components/Accordion/AccordionItem.tsx +0 -66
  64. package/dist/lib/components/Accordion/AccordionTitle.tsx +0 -80
  65. package/dist/lib/components/Accordion/index.ts +0 -2
  66. package/dist/lib/components/Accordion/subtypes.ts +0 -26
  67. package/dist/lib/components/Accordion/types.ts +0 -37
  68. package/dist/lib/components/Alert/Alert.tsx +0 -57
  69. package/dist/lib/components/Alert/index.ts +0 -1
  70. package/dist/lib/components/Alert/types.ts +0 -8
  71. package/dist/lib/components/Aside/Aside.tsx +0 -58
  72. package/dist/lib/components/Aside/index.ts +0 -1
  73. package/dist/lib/components/Aside/types.ts +0 -6
  74. package/dist/lib/components/Autocomplete/Autocomplete.tsx +0 -222
  75. package/dist/lib/components/Autocomplete/index.ts +0 -1
  76. package/dist/lib/components/Autocomplete/types.ts +0 -35
  77. package/dist/lib/components/Avatar/Avatar.tsx +0 -93
  78. package/dist/lib/components/Avatar/AvatarFn.tsx +0 -44
  79. package/dist/lib/components/Avatar/index.ts +0 -1
  80. package/dist/lib/components/Avatar/types.ts +0 -37
  81. package/dist/lib/components/BackToTop/BackToTop.tsx +0 -96
  82. package/dist/lib/components/BackToTop/index.ts +0 -1
  83. package/dist/lib/components/BackToTop/types.ts +0 -9
  84. package/dist/lib/components/Badge/Badge.tsx +0 -61
  85. package/dist/lib/components/Badge/index.ts +0 -1
  86. package/dist/lib/components/Badge/types.ts +0 -7
  87. package/dist/lib/components/Breadcrumbs/Breadcrumbs.tsx +0 -72
  88. package/dist/lib/components/Breadcrumbs/index.ts +0 -1
  89. package/dist/lib/components/Breadcrumbs/types.ts +0 -5
  90. package/dist/lib/components/Burger/Burger.tsx +0 -110
  91. package/dist/lib/components/Burger/index.ts +0 -1
  92. package/dist/lib/components/Burger/types.ts +0 -11
  93. package/dist/lib/components/Button/Button.tsx +0 -109
  94. package/dist/lib/components/Button/index.ts +0 -1
  95. package/dist/lib/components/Button/types.ts +0 -30
  96. package/dist/lib/components/ButtonGroup/ButtonGroup.tsx +0 -126
  97. package/dist/lib/components/ButtonGroup/index.ts +0 -1
  98. package/dist/lib/components/ButtonGroup/types.ts +0 -28
  99. package/dist/lib/components/ButtonIcon/ButtonFn.tsx +0 -76
  100. package/dist/lib/components/ButtonIcon/ButtonIcon.tsx +0 -134
  101. package/dist/lib/components/ButtonIcon/index.ts +0 -1
  102. package/dist/lib/components/ButtonIcon/types.ts +0 -52
  103. package/dist/lib/components/CodeContainer/CodeContainer.tsx +0 -108
  104. package/dist/lib/components/CodeContainer/index.ts +0 -1
  105. package/dist/lib/components/CodeContainer/types.ts +0 -230
  106. package/dist/lib/components/Cover/Cover.tsx +0 -91
  107. package/dist/lib/components/Cover/index.ts +0 -1
  108. package/dist/lib/components/Cover/types.ts +0 -10
  109. package/dist/lib/components/DragList/DragList.tsx +0 -111
  110. package/dist/lib/components/DragList/DragListItem.tsx +0 -114
  111. package/dist/lib/components/DragList/index.ts +0 -2
  112. package/dist/lib/components/DragList/types.ts +0 -55
  113. package/dist/lib/components/Drawer/Drawer.tsx +0 -145
  114. package/dist/lib/components/Drawer/index.ts +0 -1
  115. package/dist/lib/components/Drawer/types.ts +0 -24
  116. package/dist/lib/components/Dropdown/Dropdown.tsx +0 -89
  117. package/dist/lib/components/Dropdown/DropdownItem.tsx +0 -49
  118. package/dist/lib/components/Dropdown/index.ts +0 -2
  119. package/dist/lib/components/Dropdown/types.ts +0 -35
  120. package/dist/lib/components/Fade/Fade.tsx +0 -62
  121. package/dist/lib/components/Fade/index.ts +0 -1
  122. package/dist/lib/components/Fade/types.ts +0 -3
  123. package/dist/lib/components/Fieldset/Fieldset.tsx +0 -85
  124. package/dist/lib/components/Fieldset/index.ts +0 -1
  125. package/dist/lib/components/Fieldset/types.ts +0 -15
  126. package/dist/lib/components/Flexbox/Flexbox.tsx +0 -99
  127. package/dist/lib/components/Flexbox/index.ts +0 -1
  128. package/dist/lib/components/Flexbox/types.ts +0 -23
  129. package/dist/lib/components/Footer/Footer.tsx +0 -103
  130. package/dist/lib/components/Footer/index.ts +0 -1
  131. package/dist/lib/components/Footer/types.ts +0 -54
  132. package/dist/lib/components/Form/Form.tsx +0 -83
  133. package/dist/lib/components/Form/index.ts +0 -1
  134. package/dist/lib/components/Form/types.ts +0 -32
  135. package/dist/lib/components/Grid/Grid.tsx +0 -98
  136. package/dist/lib/components/Grid/index.ts +0 -1
  137. package/dist/lib/components/Grid/types.ts +0 -20
  138. package/dist/lib/components/Header/Header.tsx +0 -241
  139. package/dist/lib/components/Header/HeaderSearch.tsx +0 -50
  140. package/dist/lib/components/Header/index.ts +0 -1
  141. package/dist/lib/components/Header/subtypes.ts +0 -28
  142. package/dist/lib/components/Header/types.ts +0 -57
  143. package/dist/lib/components/Highlight/Highlight.tsx +0 -45
  144. package/dist/lib/components/Highlight/index.ts +0 -1
  145. package/dist/lib/components/Highlight/types.ts +0 -9
  146. package/dist/lib/components/Hr/Hr.tsx +0 -48
  147. package/dist/lib/components/Hr/index.ts +0 -1
  148. package/dist/lib/components/Hr/types.ts +0 -8
  149. package/dist/lib/components/Image/Image.tsx +0 -92
  150. package/dist/lib/components/Image/index.ts +0 -1
  151. package/dist/lib/components/Image/types.ts +0 -25
  152. package/dist/lib/components/Input/Input.tsx +0 -130
  153. package/dist/lib/components/Input/classes.ts +0 -1
  154. package/dist/lib/components/Input/index.ts +0 -1
  155. package/dist/lib/components/Input/subtypes.ts +0 -173
  156. package/dist/lib/components/Input/templates/ColorInput.tsx +0 -44
  157. package/dist/lib/components/Input/templates/DateInput.tsx +0 -63
  158. package/dist/lib/components/Input/templates/FileInput.tsx +0 -42
  159. package/dist/lib/components/Input/templates/PasswordInput.tsx +0 -73
  160. package/dist/lib/components/Input/templates/SearchInput.tsx +0 -89
  161. package/dist/lib/components/Input/templates/SelectInput.tsx +0 -79
  162. package/dist/lib/components/Input/templates/TextInput.tsx +0 -58
  163. package/dist/lib/components/Input/templates/TextareaInput.tsx +0 -27
  164. package/dist/lib/components/Input/templates/TimeInput.tsx +0 -67
  165. package/dist/lib/components/Input/types.ts +0 -22
  166. package/dist/lib/components/InputCheck/InputCheck.tsx +0 -161
  167. package/dist/lib/components/InputCheck/index.ts +0 -1
  168. package/dist/lib/components/InputCheck/types.ts +0 -27
  169. package/dist/lib/components/InputComponents/InputButton.tsx +0 -31
  170. package/dist/lib/components/InputComponents/InputIcon.tsx +0 -28
  171. package/dist/lib/components/InputComponents/InputList.tsx +0 -53
  172. package/dist/lib/components/InputComponents/InputListItem.tsx +0 -68
  173. package/dist/lib/components/InputComponents/InputPrefix.tsx +0 -15
  174. package/dist/lib/components/InputComponents/InputSuffix.tsx +0 -15
  175. package/dist/lib/components/InputComponents/InputValidation.tsx +0 -32
  176. package/dist/lib/components/InputComponents/InputWithListWrapper.tsx +0 -29
  177. package/dist/lib/components/InputComponents/InputWrapper.tsx +0 -45
  178. package/dist/lib/components/InputComponents/classes.ts +0 -101
  179. package/dist/lib/components/InputComponents/index.ts +0 -11
  180. package/dist/lib/components/InputComponents/types.ts +0 -63
  181. package/dist/lib/components/InputContainer/InputContainer.tsx +0 -149
  182. package/dist/lib/components/InputContainer/index.ts +0 -1
  183. package/dist/lib/components/InputContainer/types.ts +0 -11
  184. package/dist/lib/components/InputCounter/InputCounter.tsx +0 -141
  185. package/dist/lib/components/InputCounter/index.ts +0 -1
  186. package/dist/lib/components/InputCounter/types.ts +0 -45
  187. package/dist/lib/components/InputImage/EmptyContainer.tsx +0 -17
  188. package/dist/lib/components/InputImage/HoverContainer.tsx +0 -21
  189. package/dist/lib/components/InputImage/InputImage.tsx +0 -104
  190. package/dist/lib/components/InputImage/index.ts +0 -1
  191. package/dist/lib/components/InputImage/subtypes.ts +0 -7
  192. package/dist/lib/components/InputImage/types.ts +0 -24
  193. package/dist/lib/components/InputPhone/InputPhone.tsx +0 -256
  194. package/dist/lib/components/InputPhone/index.ts +0 -1
  195. package/dist/lib/components/InputPhone/types.ts +0 -32
  196. package/dist/lib/components/InputPhone/utils/countries.ts +0 -646
  197. package/dist/lib/components/InputPhone/utils/flags/ac.svg +0 -76
  198. package/dist/lib/components/InputPhone/utils/flags/bq.svg +0 -5
  199. package/dist/lib/components/InputPhone/utils/flags/bv.svg +0 -13
  200. package/dist/lib/components/InputPhone/utils/flags/cefta.svg +0 -13
  201. package/dist/lib/components/InputPhone/utils/flags/cp.svg +0 -7
  202. package/dist/lib/components/InputPhone/utils/flags/cw.svg +0 -14
  203. package/dist/lib/components/InputPhone/utils/flags/dg.svg +0 -129
  204. package/dist/lib/components/InputPhone/utils/flags/ea.svg +0 -544
  205. package/dist/lib/components/InputPhone/utils/flags/eh.svg +0 -16
  206. package/dist/lib/components/InputPhone/utils/flags/es-ct.svg +0 -4
  207. package/dist/lib/components/InputPhone/utils/flags/es-ga.svg +0 -187
  208. package/dist/lib/components/InputPhone/utils/flags/eu.svg +0 -28
  209. package/dist/lib/components/InputPhone/utils/flags/gb-eng.svg +0 -5
  210. package/dist/lib/components/InputPhone/utils/flags/gb-nir.svg +0 -132
  211. package/dist/lib/components/InputPhone/utils/flags/gb-sct.svg +0 -4
  212. package/dist/lib/components/InputPhone/utils/flags/gb-wls.svg +0 -9
  213. package/dist/lib/components/InputPhone/utils/flags/hm.svg +0 -8
  214. package/dist/lib/components/InputPhone/utils/flags/ic.svg +0 -7
  215. package/dist/lib/components/InputPhone/utils/flags/sx.svg +0 -56
  216. package/dist/lib/components/InputPhone/utils/flags/ta.svg +0 -76
  217. package/dist/lib/components/InputPhone/utils/flags/tf.svg +0 -15
  218. package/dist/lib/components/InputPhone/utils/flags/um.svg +0 -15
  219. package/dist/lib/components/InputPhone/utils/flags/un.svg +0 -16
  220. package/dist/lib/components/InputPhone/utils/flags/xk.svg +0 -8
  221. package/dist/lib/components/InputPhone/utils/flags/xx.svg +0 -4
  222. package/dist/lib/components/InputPin/InputPin.tsx +0 -121
  223. package/dist/lib/components/InputPin/index.ts +0 -1
  224. package/dist/lib/components/InputPin/types.ts +0 -22
  225. package/dist/lib/components/InputSlider/InputSlider.tsx +0 -176
  226. package/dist/lib/components/InputSlider/index.ts +0 -1
  227. package/dist/lib/components/InputSlider/types.ts +0 -22
  228. package/dist/lib/components/Key/Key.tsx +0 -84
  229. package/dist/lib/components/Key/index.ts +0 -1
  230. package/dist/lib/components/Key/types.ts +0 -16
  231. package/dist/lib/components/Linkify/Linkify.tsx +0 -67
  232. package/dist/lib/components/Linkify/index.ts +0 -1
  233. package/dist/lib/components/Linkify/types.ts +0 -8
  234. package/dist/lib/components/ListGroup/ListGroup.tsx +0 -96
  235. package/dist/lib/components/ListGroup/ListGroupItem.tsx +0 -86
  236. package/dist/lib/components/ListGroup/ListGroupTitle.tsx +0 -84
  237. package/dist/lib/components/ListGroup/index.ts +0 -3
  238. package/dist/lib/components/ListGroup/types.ts +0 -69
  239. package/dist/lib/components/Loader/Loader.tsx +0 -38
  240. package/dist/lib/components/Loader/index.ts +0 -1
  241. package/dist/lib/components/Loader/templates/LoaderOne.tsx +0 -27
  242. package/dist/lib/components/Loader/templates/LoaderThree.tsx +0 -47
  243. package/dist/lib/components/Loader/templates/LoaderTwo.tsx +0 -61
  244. package/dist/lib/components/Loader/types.ts +0 -13
  245. package/dist/lib/components/Loader/utils/gen-border-bottom.ts +0 -95
  246. package/dist/lib/components/Main/Main.tsx +0 -63
  247. package/dist/lib/components/Main/index.ts +0 -1
  248. package/dist/lib/components/Main/types.ts +0 -12
  249. package/dist/lib/components/MarkdownContainer/MarkdownContainer.tsx +0 -50
  250. package/dist/lib/components/MarkdownContainer/index.ts +0 -1
  251. package/dist/lib/components/MarkdownContainer/types.ts +0 -8
  252. package/dist/lib/components/MarkdownEditor/MarkdownButtons.tsx +0 -42
  253. package/dist/lib/components/MarkdownEditor/MarkdownEditor.tsx +0 -186
  254. package/dist/lib/components/MarkdownEditor/MarkdownEditorTitles.tsx +0 -86
  255. package/dist/lib/components/MarkdownEditor/MarkdownViewButtons.tsx +0 -48
  256. package/dist/lib/components/MarkdownEditor/buttons/icons.tsx +0 -85
  257. package/dist/lib/components/MarkdownEditor/buttons/markdown-buttons.tsx +0 -176
  258. package/dist/lib/components/MarkdownEditor/index.ts +0 -1
  259. package/dist/lib/components/MarkdownEditor/types.ts +0 -42
  260. package/dist/lib/components/Masonry/Masonry.tsx +0 -83
  261. package/dist/lib/components/Masonry/index.ts +0 -1
  262. package/dist/lib/components/Masonry/types.ts +0 -8
  263. package/dist/lib/components/Masonry/utils.tsx +0 -28
  264. package/dist/lib/components/Meta/Meta.tsx +0 -125
  265. package/dist/lib/components/Meta/index.ts +0 -1
  266. package/dist/lib/components/Meta/types.ts +0 -35
  267. package/dist/lib/components/Modal/Modal.tsx +0 -107
  268. package/dist/lib/components/Modal/index.ts +0 -1
  269. package/dist/lib/components/Modal/types.ts +0 -21
  270. package/dist/lib/components/PageLayout/PageLayout.tsx +0 -64
  271. package/dist/lib/components/PageLayout/index.ts +0 -1
  272. package/dist/lib/components/PageLayout/types.ts +0 -29
  273. package/dist/lib/components/PageLoading/PageLoading.tsx +0 -64
  274. package/dist/lib/components/PageLoading/index.ts +0 -1
  275. package/dist/lib/components/PageLoading/types.ts +0 -13
  276. package/dist/lib/components/Pagination/Pagination.tsx +0 -163
  277. package/dist/lib/components/Pagination/PaginationButton.tsx +0 -65
  278. package/dist/lib/components/Pagination/index.ts +0 -2
  279. package/dist/lib/components/Pagination/types.ts +0 -56
  280. package/dist/lib/components/Paginator/Paginator.tsx +0 -136
  281. package/dist/lib/components/Paginator/index.ts +0 -1
  282. package/dist/lib/components/Paginator/types.ts +0 -16
  283. package/dist/lib/components/ProgressBar/ProgressBar.tsx +0 -87
  284. package/dist/lib/components/ProgressBar/index.ts +0 -1
  285. package/dist/lib/components/ProgressBar/types.ts +0 -14
  286. package/dist/lib/components/ProgressCircle/ProgressCircle.tsx +0 -146
  287. package/dist/lib/components/ProgressCircle/index.ts +0 -1
  288. package/dist/lib/components/ProgressCircle/types.ts +0 -31
  289. package/dist/lib/components/Rating/Rating.tsx +0 -116
  290. package/dist/lib/components/Rating/index.ts +0 -1
  291. package/dist/lib/components/Rating/types.ts +0 -25
  292. package/dist/lib/components/Section/Section.tsx +0 -51
  293. package/dist/lib/components/Section/index.ts +0 -1
  294. package/dist/lib/components/Section/types.ts +0 -5
  295. package/dist/lib/components/Select/Select.tsx +0 -191
  296. package/dist/lib/components/Select/index.ts +0 -1
  297. package/dist/lib/components/Select/types.ts +0 -23
  298. package/dist/lib/components/Skeleton/Skeleton.tsx +0 -57
  299. package/dist/lib/components/Skeleton/SkeletonCard.tsx +0 -60
  300. package/dist/lib/components/Skeleton/index.ts +0 -2
  301. package/dist/lib/components/Skeleton/types.ts +0 -27
  302. package/dist/lib/components/Slideshow/Slideshow.tsx +0 -324
  303. package/dist/lib/components/Slideshow/SlideshowButton.tsx +0 -63
  304. package/dist/lib/components/Slideshow/SlideshowPagination.tsx +0 -111
  305. package/dist/lib/components/Slideshow/index.ts +0 -1
  306. package/dist/lib/components/Slideshow/subtypes.ts +0 -62
  307. package/dist/lib/components/Slideshow/types.ts +0 -41
  308. package/dist/lib/components/SrOnly/SrOnly.tsx +0 -33
  309. package/dist/lib/components/SrOnly/index.ts +0 -1
  310. package/dist/lib/components/SrOnly/types.ts +0 -7
  311. package/dist/lib/components/Sticky/Sticky.tsx +0 -58
  312. package/dist/lib/components/Sticky/index.ts +0 -1
  313. package/dist/lib/components/Sticky/types.ts +0 -5
  314. package/dist/lib/components/Table/Table.tsx +0 -141
  315. package/dist/lib/components/Table/index.ts +0 -1
  316. package/dist/lib/components/Table/types.ts +0 -43
  317. package/dist/lib/components/Tabs/Tabs.tsx +0 -88
  318. package/dist/lib/components/Tabs/TabsButton.tsx +0 -73
  319. package/dist/lib/components/Tabs/TabsButtonsContainer.tsx +0 -58
  320. package/dist/lib/components/Tabs/TabsContainer.tsx +0 -49
  321. package/dist/lib/components/Tabs/TabsContent.tsx +0 -52
  322. package/dist/lib/components/Tabs/index.ts +0 -5
  323. package/dist/lib/components/Tabs/types.ts +0 -46
  324. package/dist/lib/components/Tag/Tag.tsx +0 -77
  325. package/dist/lib/components/Tag/index.ts +0 -1
  326. package/dist/lib/components/Tag/types.ts +0 -13
  327. package/dist/lib/components/Text/Text.tsx +0 -88
  328. package/dist/lib/components/Text/index.ts +0 -1
  329. package/dist/lib/components/Text/templates/Blockquote.tsx +0 -41
  330. package/dist/lib/components/Text/templates/Dl.tsx +0 -42
  331. package/dist/lib/components/Text/templates/Em.tsx +0 -40
  332. package/dist/lib/components/Text/templates/H1.tsx +0 -44
  333. package/dist/lib/components/Text/templates/H2.tsx +0 -44
  334. package/dist/lib/components/Text/templates/H3.tsx +0 -44
  335. package/dist/lib/components/Text/templates/H4.tsx +0 -44
  336. package/dist/lib/components/Text/templates/H5.tsx +0 -44
  337. package/dist/lib/components/Text/templates/H6.tsx +0 -41
  338. package/dist/lib/components/Text/templates/Ol.tsx +0 -41
  339. package/dist/lib/components/Text/templates/P.tsx +0 -40
  340. package/dist/lib/components/Text/templates/Small.tsx +0 -40
  341. package/dist/lib/components/Text/templates/Strong.tsx +0 -40
  342. package/dist/lib/components/Text/templates/Ul.tsx +0 -41
  343. package/dist/lib/components/Text/types.ts +0 -36
  344. package/dist/lib/components/Toast/Toast.tsx +0 -113
  345. package/dist/lib/components/Toast/ToastContainer.tsx +0 -43
  346. package/dist/lib/components/Toast/ToastFn.tsx +0 -236
  347. package/dist/lib/components/Toast/index.ts +0 -3
  348. package/dist/lib/components/Toast/types.ts +0 -18
  349. package/dist/lib/components/Toast/utils.ts +0 -9
  350. package/dist/lib/components/Tooltip/Tooltip.tsx +0 -197
  351. package/dist/lib/components/Tooltip/index.ts +0 -1
  352. package/dist/lib/components/Tooltip/types.ts +0 -23
  353. package/dist/lib/components/Wrapper/Wrapper.tsx +0 -75
  354. package/dist/lib/components/Wrapper/index.ts +0 -1
  355. package/dist/lib/components/Wrapper/types.ts +0 -12
  356. package/dist/lib/context/Theme.context.tsx +0 -66
  357. package/dist/lib/context/index.ts +0 -1
  358. package/dist/lib/hooks/index.ts +0 -15
  359. package/dist/lib/hooks/useClickOutside.tsx +0 -50
  360. package/dist/lib/hooks/useCopyToClipboard.tsx +0 -50
  361. package/dist/lib/hooks/useDebounce.tsx +0 -37
  362. package/dist/lib/hooks/useExportData.tsx +0 -78
  363. package/dist/lib/hooks/useFetch.tsx +0 -42
  364. package/dist/lib/hooks/useForm.tsx +0 -51
  365. package/dist/lib/hooks/useIsOverflow.ts +0 -61
  366. package/dist/lib/hooks/useKeyPress.tsx +0 -110
  367. package/dist/lib/hooks/useMaxWidth.tsx +0 -40
  368. package/dist/lib/hooks/useMergeRefs.ts +0 -45
  369. package/dist/lib/hooks/useMinWidth.tsx +0 -40
  370. package/dist/lib/hooks/usePaginatedData.tsx +0 -52
  371. package/dist/lib/hooks/usePagination.tsx +0 -75
  372. package/dist/lib/hooks/useTouchScreen.tsx +0 -34
  373. package/dist/lib/hooks/useTranslation.tsx +0 -58
  374. package/dist/lib/index.css +0 -539
  375. package/dist/lib/index.ts +0 -129
  376. package/dist/lib/lib-utils/get-highlighted-text.tsx +0 -30
  377. package/dist/lib/lib-utils/index.ts +0 -3
  378. package/dist/lib/lib-utils/transfom-search-keys.ts +0 -13
  379. package/dist/lib/lib-utils/use-keyboard-navigation.tsx +0 -79
  380. package/dist/lib/types/components-props.ts +0 -66
  381. package/dist/lib/types/global.ts +0 -853
  382. package/dist/lib/types/index.ts +0 -4
  383. package/dist/lib/types/require-at-least-one.ts +0 -7
  384. package/dist/lib/types/tailwind.ts +0 -9041
  385. package/dist/lib/utils/clsx.tsx +0 -6
  386. package/dist/lib/utils/design-tokens.ts +0 -784
  387. package/dist/lib/utils/gen-align.ts +0 -24
  388. package/dist/lib/utils/gen-bg-color.ts +0 -158
  389. package/dist/lib/utils/gen-border-color.ts +0 -110
  390. package/dist/lib/utils/gen-border-radius.ts +0 -13
  391. package/dist/lib/utils/gen-border.ts +0 -30
  392. package/dist/lib/utils/gen-box-shadow.ts +0 -12
  393. package/dist/lib/utils/gen-button-color.ts +0 -9
  394. package/dist/lib/utils/gen-gap.ts +0 -34
  395. package/dist/lib/utils/gen-justify.ts +0 -25
  396. package/dist/lib/utils/gen-link-color.ts +0 -29
  397. package/dist/lib/utils/gen-max-width.ts +0 -30
  398. package/dist/lib/utils/gen-object-fit.ts +0 -9
  399. package/dist/lib/utils/gen-ring-color.ts +0 -21
  400. package/dist/lib/utils/gen-text-align.ts +0 -10
  401. package/dist/lib/utils/gen-text-color.ts +0 -111
  402. package/dist/lib/utils/gen-vertical-align.ts +0 -12
  403. package/dist/lib/utils/index.ts +0 -19
  404. package/dist/lib/utils/linkify-text.tsx +0 -26
  405. package/dist/lib/utils/options-markdown.ts +0 -60
  406. package/dist/lib/utils/tools.ts +0 -15
  407. package/dist/react.css +0 -1
  408. package/dist/style.css +0 -539
  409. /package/dist/{lib/components/InputPhone/utils/flags/ad.svg → ad-HTL7GHRB.svg} +0 -0
  410. /package/dist/{lib/components/InputPhone/utils/flags/ae.svg → ae-ICAMTCAR.svg} +0 -0
  411. /package/dist/{lib/components/InputPhone/utils/flags/af.svg → af-MHFH5L72.svg} +0 -0
  412. /package/dist/{lib/components/InputPhone/utils/flags/ag.svg → ag-M7PMJTNC.svg} +0 -0
  413. /package/dist/{lib/components/InputPhone/utils/flags/ai.svg → ai-ETDR2GEU.svg} +0 -0
  414. /package/dist/{lib/components/InputPhone/utils/flags/al.svg → al-RBPPZBOR.svg} +0 -0
  415. /package/dist/{lib/components/InputPhone/utils/flags/am.svg → am-P5ZIE6XV.svg} +0 -0
  416. /package/dist/{lib/components/InputPhone/utils/flags/ao.svg → ao-IDQ66LVW.svg} +0 -0
  417. /package/dist/{lib/components/InputPhone/utils/flags/aq.svg → aq-M762DUH3.svg} +0 -0
  418. /package/dist/{lib/components/InputPhone/utils/flags/ar.svg → ar-DHRVFD4E.svg} +0 -0
  419. /package/dist/{lib/components/InputPhone/utils/flags/as.svg → as-ICEYFBWP.svg} +0 -0
  420. /package/dist/{lib/components/InputPhone/utils/flags/at.svg → at-P53PFVFI.svg} +0 -0
  421. /package/dist/{lib/components/InputPhone/utils/flags/au.svg → au-OMD4QESS.svg} +0 -0
  422. /package/dist/{lib/components/InputPhone/utils/flags/aw.svg → aw-P7SRGNOX.svg} +0 -0
  423. /package/dist/{lib/components/InputPhone/utils/flags/ax.svg → ax-V7XPB664.svg} +0 -0
  424. /package/dist/{lib/components/InputPhone/utils/flags/az.svg → az-JZV3NJUP.svg} +0 -0
  425. /package/dist/{lib/components/InputPhone/utils/flags/ba.svg → ba-POV77HGO.svg} +0 -0
  426. /package/dist/{lib/components/InputPhone/utils/flags/bb.svg → bb-WTDUG7VT.svg} +0 -0
  427. /package/dist/{lib/components/InputPhone/utils/flags/bd.svg → bd-HMCXBQD3.svg} +0 -0
  428. /package/dist/{lib/components/InputPhone/utils/flags/be.svg → be-Y7RGT6WN.svg} +0 -0
  429. /package/dist/{lib/components/InputPhone/utils/flags/bf.svg → bf-IFOTMWPV.svg} +0 -0
  430. /package/dist/{lib/components/InputPhone/utils/flags/bg.svg → bg-QKOWF4RG.svg} +0 -0
  431. /package/dist/{lib/components/InputPhone/utils/flags/bh.svg → bh-F7YG7A6Z.svg} +0 -0
  432. /package/dist/{lib/components/InputPhone/utils/flags/bi.svg → bi-HWA2SSM7.svg} +0 -0
  433. /package/dist/{lib/components/InputPhone/utils/flags/bj.svg → bj-SVZPUB6C.svg} +0 -0
  434. /package/dist/{lib/components/InputPhone/utils/flags/bl.svg → bl-QXYAF6ZV.svg} +0 -0
  435. /package/dist/{lib/components/InputPhone/utils/flags/bm.svg → bm-VAEN3IKJ.svg} +0 -0
  436. /package/dist/{lib/components/InputPhone/utils/flags/bn.svg → bn-CK5FI4T5.svg} +0 -0
  437. /package/dist/{lib/components/InputPhone/utils/flags/bo.svg → bo-HY4TLIQH.svg} +0 -0
  438. /package/dist/{lib/components/InputPhone/utils/flags/br.svg → br-E7SKW6QV.svg} +0 -0
  439. /package/dist/{lib/components/InputPhone/utils/flags/bs.svg → bs-5UC4R4TW.svg} +0 -0
  440. /package/dist/{lib/components/InputPhone/utils/flags/bt.svg → bt-ILNGCG6V.svg} +0 -0
  441. /package/dist/{lib/components/InputPhone/utils/flags/bw.svg → bw-GTCF3QZV.svg} +0 -0
  442. /package/dist/{lib/components/InputPhone/utils/flags/by.svg → by-I2PKD7MG.svg} +0 -0
  443. /package/dist/{lib/components/InputPhone/utils/flags/bz.svg → bz-ZSRW2FFJ.svg} +0 -0
  444. /package/dist/{lib/components/InputPhone/utils/flags/ca.svg → ca-WZPQPA7E.svg} +0 -0
  445. /package/dist/{lib/components/InputPhone/utils/flags/cc.svg → cc-F56DXRNZ.svg} +0 -0
  446. /package/dist/{lib/components/InputPhone/utils/flags/cd.svg → cd-WTKKN7EX.svg} +0 -0
  447. /package/dist/{lib/components/InputPhone/utils/flags/cf.svg → cf-TPKKXILK.svg} +0 -0
  448. /package/dist/{lib/components/InputPhone/utils/flags/cg.svg → cg-CKR7RUC4.svg} +0 -0
  449. /package/dist/{lib/components/InputPhone/utils/flags/ch.svg → ch-USJZZOGC.svg} +0 -0
  450. /package/dist/{lib/components/InputPhone/utils/flags/ci.svg → ci-KFEINJVJ.svg} +0 -0
  451. /package/dist/{lib/components/InputPhone/utils/flags/ck.svg → ck-ATMQHHMA.svg} +0 -0
  452. /package/dist/{lib/components/InputPhone/utils/flags/cl.svg → cl-WMTRWE2W.svg} +0 -0
  453. /package/dist/{lib/components/InputPhone/utils/flags/cm.svg → cm-2BN3OVZK.svg} +0 -0
  454. /package/dist/{lib/components/InputPhone/utils/flags/cn.svg → cn-GFQJIK3L.svg} +0 -0
  455. /package/dist/{lib/components/InputPhone/utils/flags/co.svg → co-NN4OA66V.svg} +0 -0
  456. /package/dist/{lib/components/InputPhone/utils/flags/cr.svg → cr-ZQEISEUX.svg} +0 -0
  457. /package/dist/{lib/components/InputPhone/utils/flags/cu.svg → cu-5GWMND5O.svg} +0 -0
  458. /package/dist/{lib/components/InputPhone/utils/flags/cv.svg → cv-LWSGBQVT.svg} +0 -0
  459. /package/dist/{lib/components/InputPhone/utils/flags/cx.svg → cx-XOUJ6BDY.svg} +0 -0
  460. /package/dist/{lib/components/InputPhone/utils/flags/cy.svg → cy-ELWYQW3B.svg} +0 -0
  461. /package/dist/{lib/components/InputPhone/utils/flags/cz.svg → cz-PSDLWGGB.svg} +0 -0
  462. /package/dist/{lib/components/InputPhone/utils/flags/de.svg → de-UZ33VXB7.svg} +0 -0
  463. /package/dist/{lib/components/InputPhone/utils/flags/dj.svg → dj-6OAOTLZI.svg} +0 -0
  464. /package/dist/{lib/components/InputPhone/utils/flags/dk.svg → dk-JMBRHM34.svg} +0 -0
  465. /package/dist/{lib/components/InputPhone/utils/flags/dm.svg → dm-VNRMBZBS.svg} +0 -0
  466. /package/dist/{lib/components/InputPhone/utils/flags/do.svg → do-BKI25VAP.svg} +0 -0
  467. /package/dist/{lib/components/InputPhone/utils/flags/dz.svg → dz-5TGC2F6O.svg} +0 -0
  468. /package/dist/{lib/components/InputPhone/utils/flags/ec.svg → ec-RVY2TDQY.svg} +0 -0
  469. /package/dist/{lib/components/InputPhone/utils/flags/ee.svg → ee-ESNNK5FI.svg} +0 -0
  470. /package/dist/{lib/components/InputPhone/utils/flags/eg.svg → eg-33P6HVEE.svg} +0 -0
  471. /package/dist/{lib/components/InputPhone/utils/flags/er.svg → er-24JCI44Y.svg} +0 -0
  472. /package/dist/{lib/components/InputPhone/utils/flags/es.svg → es-W6LDJAST.svg} +0 -0
  473. /package/dist/{lib/components/InputPhone/utils/flags/et.svg → et-3S4LEFBY.svg} +0 -0
  474. /package/dist/{lib/components/InputPhone/utils/flags/fi.svg → fi-S5EH7BG6.svg} +0 -0
  475. /package/dist/{lib/components/InputPhone/utils/flags/fj.svg → fj-YBL3EYQL.svg} +0 -0
  476. /package/dist/{lib/components/InputPhone/utils/flags/fk.svg → fk-GOTRGUW5.svg} +0 -0
  477. /package/dist/{lib/components/InputPhone/utils/flags/fm.svg → fm-W22Q42MJ.svg} +0 -0
  478. /package/dist/{lib/components/InputPhone/utils/flags/fo.svg → fo-XAEBEWGY.svg} +0 -0
  479. /package/dist/{lib/components/InputPhone/utils/flags/fr.svg → fr-ZVO4L2CN.svg} +0 -0
  480. /package/dist/{lib/components/InputPhone/utils/flags/ga.svg → ga-YVFEOFTR.svg} +0 -0
  481. /package/dist/{lib/components/InputPhone/utils/flags/gb.svg → gb-SC7363TA.svg} +0 -0
  482. /package/dist/{lib/components/InputPhone/utils/flags/gd.svg → gd-DFU7DED6.svg} +0 -0
  483. /package/dist/{lib/components/InputPhone/utils/flags/ge.svg → ge-YE7BR7QF.svg} +0 -0
  484. /package/dist/{lib/components/InputPhone/utils/flags/gf.svg → gf-NI4GFY3X.svg} +0 -0
  485. /package/dist/{lib/components/InputPhone/utils/flags/gg.svg → gg-7VUU64IM.svg} +0 -0
  486. /package/dist/{lib/components/InputPhone/utils/flags/gh.svg → gh-SZBUUZXW.svg} +0 -0
  487. /package/dist/{lib/components/InputPhone/utils/flags/gi.svg → gi-CXD7K7GM.svg} +0 -0
  488. /package/dist/{lib/components/InputPhone/utils/flags/gl.svg → gl-PA2YIJP7.svg} +0 -0
  489. /package/dist/{lib/components/InputPhone/utils/flags/gm.svg → gm-7ZOEQWBQ.svg} +0 -0
  490. /package/dist/{lib/components/InputPhone/utils/flags/gn.svg → gn-MSN2M353.svg} +0 -0
  491. /package/dist/{lib/components/InputPhone/utils/flags/gp.svg → gp-JP5TO4OX.svg} +0 -0
  492. /package/dist/{lib/components/InputPhone/utils/flags/gq.svg → gq-EYN2DF4Z.svg} +0 -0
  493. /package/dist/{lib/components/InputPhone/utils/flags/gr.svg → gr-YRG5TXUI.svg} +0 -0
  494. /package/dist/{lib/components/InputPhone/utils/flags/gs.svg → gs-EDOECKEF.svg} +0 -0
  495. /package/dist/{lib/components/InputPhone/utils/flags/gt.svg → gt-VFMRVU7E.svg} +0 -0
  496. /package/dist/{lib/components/InputPhone/utils/flags/gu.svg → gu-AXDHACWU.svg} +0 -0
  497. /package/dist/{lib/components/InputPhone/utils/flags/gw.svg → gw-F747MFB6.svg} +0 -0
  498. /package/dist/{lib/components/InputPhone/utils/flags/gy.svg → gy-C6UGO63R.svg} +0 -0
  499. /package/dist/{lib/components/InputPhone/utils/flags/hk.svg → hk-PPVUELHH.svg} +0 -0
  500. /package/dist/{lib/components/InputPhone/utils/flags/hn.svg → hn-IXKFBHL3.svg} +0 -0
  501. /package/dist/{lib/components/InputPhone/utils/flags/hr.svg → hr-7ORLAYLN.svg} +0 -0
  502. /package/dist/{lib/components/InputPhone/utils/flags/ht.svg → ht-HCNXZLPJ.svg} +0 -0
  503. /package/dist/{lib/components/InputPhone/utils/flags/hu.svg → hu-C3DDGX7P.svg} +0 -0
  504. /package/dist/{lib/components/InputPhone/utils/flags/id.svg → id-JSWZPKEB.svg} +0 -0
  505. /package/dist/{lib/components/InputPhone/utils/flags/ie.svg → ie-QFERZM3U.svg} +0 -0
  506. /package/dist/{lib/components/InputPhone/utils/flags/il.svg → il-4AZPYABU.svg} +0 -0
  507. /package/dist/{lib/components/InputPhone/utils/flags/im.svg → im-TRGBU2MA.svg} +0 -0
  508. /package/dist/{lib/components/InputPhone/utils/flags/in.svg → in-QNJVAXMN.svg} +0 -0
  509. /package/dist/{lib/components/InputPhone/utils/flags/io.svg → io-ZTEO44HB.svg} +0 -0
  510. /package/dist/{lib/components/InputPhone/utils/flags/iq.svg → iq-7FWRTP5Y.svg} +0 -0
  511. /package/dist/{lib/components/InputPhone/utils/flags/ir.svg → ir-7QU34OGP.svg} +0 -0
  512. /package/dist/{lib/components/InputPhone/utils/flags/is.svg → is-VFU3W27Q.svg} +0 -0
  513. /package/dist/{lib/components/InputPhone/utils/flags/it.svg → it-SGJZRZTG.svg} +0 -0
  514. /package/dist/{lib/components/InputPhone/utils/flags/je.svg → je-ASNHCFDM.svg} +0 -0
  515. /package/dist/{lib/components/InputPhone/utils/flags/jm.svg → jm-WELCOSBK.svg} +0 -0
  516. /package/dist/{lib/components/InputPhone/utils/flags/jo.svg → jo-4N4SRXFU.svg} +0 -0
  517. /package/dist/{lib/components/InputPhone/utils/flags/jp.svg → jp-IJJOLX65.svg} +0 -0
  518. /package/dist/{lib/components/InputPhone/utils/flags/ke.svg → ke-ZX6MQKG6.svg} +0 -0
  519. /package/dist/{lib/components/InputPhone/utils/flags/kg.svg → kg-RCELGYWY.svg} +0 -0
  520. /package/dist/{lib/components/InputPhone/utils/flags/kh.svg → kh-Z4TCRAR5.svg} +0 -0
  521. /package/dist/{lib/components/InputPhone/utils/flags/ki.svg → ki-4XP6EOEF.svg} +0 -0
  522. /package/dist/{lib/components/InputPhone/utils/flags/km.svg → km-UWFN6S3G.svg} +0 -0
  523. /package/dist/{lib/components/InputPhone/utils/flags/kn.svg → kn-QZWT5L2Z.svg} +0 -0
  524. /package/dist/{lib/components/InputPhone/utils/flags/kp.svg → kp-UEJKAESN.svg} +0 -0
  525. /package/dist/{lib/components/InputPhone/utils/flags/kr.svg → kr-37HGZWST.svg} +0 -0
  526. /package/dist/{lib/components/InputPhone/utils/flags/kw.svg → kw-DW7MW6JR.svg} +0 -0
  527. /package/dist/{lib/components/InputPhone/utils/flags/ky.svg → ky-UE77ZKNR.svg} +0 -0
  528. /package/dist/{lib/components/InputPhone/utils/flags/kz.svg → kz-235M425O.svg} +0 -0
  529. /package/dist/{lib/components/InputPhone/utils/flags/la.svg → la-RJEPE22E.svg} +0 -0
  530. /package/dist/{lib/components/InputPhone/utils/flags/lb.svg → lb-EWVZKLTE.svg} +0 -0
  531. /package/dist/{lib/components/InputPhone/utils/flags/lc.svg → lc-SHXL3I23.svg} +0 -0
  532. /package/dist/{lib/components/InputPhone/utils/flags/li.svg → li-FRDARPUJ.svg} +0 -0
  533. /package/dist/{lib/components/InputPhone/utils/flags/lk.svg → lk-24DJYERD.svg} +0 -0
  534. /package/dist/{lib/components/InputPhone/utils/flags/lr.svg → lr-NOV6G2QP.svg} +0 -0
  535. /package/dist/{lib/components/InputPhone/utils/flags/ls.svg → ls-DQYSLKA4.svg} +0 -0
  536. /package/dist/{lib/components/InputPhone/utils/flags/lt.svg → lt-X5H273BZ.svg} +0 -0
  537. /package/dist/{lib/components/InputPhone/utils/flags/lu.svg → lu-Y7CETSZZ.svg} +0 -0
  538. /package/dist/{lib/components/InputPhone/utils/flags/lv.svg → lv-UD2OKAKZ.svg} +0 -0
  539. /package/dist/{lib/components/InputPhone/utils/flags/ly.svg → ly-HXZ3F2PC.svg} +0 -0
  540. /package/dist/{lib/components/InputPhone/utils/flags/ma.svg → ma-VSPIMR33.svg} +0 -0
  541. /package/dist/{lib/components/InputPhone/utils/flags/mc.svg → mc-IV2TK64Y.svg} +0 -0
  542. /package/dist/{lib/components/InputPhone/utils/flags/md.svg → md-Z2KRCTSL.svg} +0 -0
  543. /package/dist/{lib/components/InputPhone/utils/flags/me.svg → me-GJ5HAC7T.svg} +0 -0
  544. /package/dist/{lib/components/InputPhone/utils/flags/mf.svg → mf-PY7OO34H.svg} +0 -0
  545. /package/dist/{lib/components/InputPhone/utils/flags/mg.svg → mg-7XGP7WEH.svg} +0 -0
  546. /package/dist/{lib/components/InputPhone/utils/flags/mh.svg → mh-7N2SSCJ3.svg} +0 -0
  547. /package/dist/{lib/components/InputPhone/utils/flags/mk.svg → mk-4CGYETXE.svg} +0 -0
  548. /package/dist/{lib/components/InputPhone/utils/flags/ml.svg → ml-REJ3NIH6.svg} +0 -0
  549. /package/dist/{lib/components/InputPhone/utils/flags/mm.svg → mm-G72WDHIA.svg} +0 -0
  550. /package/dist/{lib/components/InputPhone/utils/flags/mn.svg → mn-QUEB3DP2.svg} +0 -0
  551. /package/dist/{lib/components/InputPhone/utils/flags/mo.svg → mo-7RMY33IW.svg} +0 -0
  552. /package/dist/{lib/components/InputPhone/utils/flags/mp.svg → mp-QLHHVVHP.svg} +0 -0
  553. /package/dist/{lib/components/InputPhone/utils/flags/mq.svg → mq-S4653T2D.svg} +0 -0
  554. /package/dist/{lib/components/InputPhone/utils/flags/mr.svg → mr-ZBDE3KJQ.svg} +0 -0
  555. /package/dist/{lib/components/InputPhone/utils/flags/ms.svg → ms-HE6BUCKD.svg} +0 -0
  556. /package/dist/{lib/components/InputPhone/utils/flags/mt.svg → mt-DUA34F2Z.svg} +0 -0
  557. /package/dist/{lib/components/InputPhone/utils/flags/mu.svg → mu-ZHDOJ3TI.svg} +0 -0
  558. /package/dist/{lib/components/InputPhone/utils/flags/mv.svg → mv-6NYHRQLF.svg} +0 -0
  559. /package/dist/{lib/components/InputPhone/utils/flags/mw.svg → mw-AXRAJH26.svg} +0 -0
  560. /package/dist/{lib/components/InputPhone/utils/flags/mx.svg → mx-MSPV6RQM.svg} +0 -0
  561. /package/dist/{lib/components/InputPhone/utils/flags/my.svg → my-AIY7QQBP.svg} +0 -0
  562. /package/dist/{lib/components/InputPhone/utils/flags/mz.svg → mz-3322L3KQ.svg} +0 -0
  563. /package/dist/{lib/components/InputPhone/utils/flags/na.svg → na-EASCPZHA.svg} +0 -0
  564. /package/dist/{lib/components/InputPhone/utils/flags/nc.svg → nc-JJHA6YCG.svg} +0 -0
  565. /package/dist/{lib/components/InputPhone/utils/flags/ne.svg → ne-NIQVZJOH.svg} +0 -0
  566. /package/dist/{lib/components/InputPhone/utils/flags/nf.svg → nf-6GXJMQE5.svg} +0 -0
  567. /package/dist/{lib/components/InputPhone/utils/flags/ng.svg → ng-5QXHJYS4.svg} +0 -0
  568. /package/dist/{lib/components/InputPhone/utils/flags/ni.svg → ni-HNZBL5LK.svg} +0 -0
  569. /package/dist/{lib/components/InputPhone/utils/flags/nl.svg → nl-QVISKFUO.svg} +0 -0
  570. /package/dist/{lib/components/InputPhone/utils/flags/no.svg → no-JTVUCTCT.svg} +0 -0
  571. /package/dist/{lib/components/InputPhone/utils/flags/np.svg → np-UCBDZ5AR.svg} +0 -0
  572. /package/dist/{lib/components/InputPhone/utils/flags/nr.svg → nr-LG6XA46Y.svg} +0 -0
  573. /package/dist/{lib/components/InputPhone/utils/flags/nu.svg → nu-4OUEUAXX.svg} +0 -0
  574. /package/dist/{lib/components/InputPhone/utils/flags/nz.svg → nz-T2NE6YVO.svg} +0 -0
  575. /package/dist/{lib/components/InputPhone/utils/flags/om.svg → om-6JFK3PR4.svg} +0 -0
  576. /package/dist/{lib/components/InputPhone/utils/flags/pa.svg → pa-AT6O5EL5.svg} +0 -0
  577. /package/dist/{lib/components/InputPhone/utils/flags/pe.svg → pe-WVRRE6RF.svg} +0 -0
  578. /package/dist/{lib/components/InputPhone/utils/flags/pf.svg → pf-DLKFAUUG.svg} +0 -0
  579. /package/dist/{lib/components/InputPhone/utils/flags/pg.svg → pg-R7GWNRSB.svg} +0 -0
  580. /package/dist/{lib/components/InputPhone/utils/flags/ph.svg → ph-QSRFK225.svg} +0 -0
  581. /package/dist/{lib/components/InputPhone/utils/flags/pk.svg → pk-FR3SZ2RO.svg} +0 -0
  582. /package/dist/{lib/components/InputPhone/utils/flags/pl.svg → pl-JSSZW3KY.svg} +0 -0
  583. /package/dist/{lib/components/InputPhone/utils/flags/pm.svg → pm-HA37R6HR.svg} +0 -0
  584. /package/dist/{lib/components/InputPhone/utils/flags/pn.svg → pn-4N36OSZ7.svg} +0 -0
  585. /package/dist/{lib/components/InputPhone/utils/flags/pr.svg → pr-NNQH4LK7.svg} +0 -0
  586. /package/dist/{lib/components/InputPhone/utils/flags/ps.svg → ps-OYLD266F.svg} +0 -0
  587. /package/dist/{lib/components/InputPhone/utils/flags/pt.svg → pt-EJEEXNOR.svg} +0 -0
  588. /package/dist/{lib/components/InputPhone/utils/flags/pw.svg → pw-AJH6MUWT.svg} +0 -0
  589. /package/dist/{lib/components/InputPhone/utils/flags/py.svg → py-BBGVETQS.svg} +0 -0
  590. /package/dist/{lib/components/InputPhone/utils/flags/qa.svg → qa-O6NUQ5WE.svg} +0 -0
  591. /package/dist/{lib/components/InputPhone/utils/flags/re.svg → re-UHLBILVM.svg} +0 -0
  592. /package/dist/{lib/components/InputPhone/utils/flags/ro.svg → ro-YBPUPSYC.svg} +0 -0
  593. /package/dist/{lib/components/InputPhone/utils/flags/rs.svg → rs-RTTQJKCP.svg} +0 -0
  594. /package/dist/{lib/components/InputPhone/utils/flags/ru.svg → ru-NVSR5C27.svg} +0 -0
  595. /package/dist/{lib/components/InputPhone/utils/flags/rw.svg → rw-L6HQTLZM.svg} +0 -0
  596. /package/dist/{lib/components/InputPhone/utils/flags/sa.svg → sa-5NCCG3JM.svg} +0 -0
  597. /package/dist/{lib/components/InputPhone/utils/flags/sb.svg → sb-ESFASP4O.svg} +0 -0
  598. /package/dist/{lib/components/InputPhone/utils/flags/sc.svg → sc-V2MOTRIU.svg} +0 -0
  599. /package/dist/{lib/components/InputPhone/utils/flags/sd.svg → sd-ALVTXIOB.svg} +0 -0
  600. /package/dist/{lib/components/InputPhone/utils/flags/se.svg → se-3UJAVTP2.svg} +0 -0
  601. /package/dist/{lib/components/InputPhone/utils/flags/sg.svg → sg-PNK4IWVH.svg} +0 -0
  602. /package/dist/{lib/components/InputPhone/utils/flags/sh.svg → sh-LSKBPKHJ.svg} +0 -0
  603. /package/dist/{lib/components/InputPhone/utils/flags/si.svg → si-DU3RWKLO.svg} +0 -0
  604. /package/dist/{lib/components/InputPhone/utils/flags/sj.svg → sj-EOPZSLCL.svg} +0 -0
  605. /package/dist/{lib/components/InputPhone/utils/flags/sk.svg → sk-Z5T3FAV3.svg} +0 -0
  606. /package/dist/{lib/components/InputPhone/utils/flags/sl.svg → sl-DE7XOWOL.svg} +0 -0
  607. /package/dist/{lib/components/InputPhone/utils/flags/sm.svg → sm-OSI7YZKX.svg} +0 -0
  608. /package/dist/{lib/components/InputPhone/utils/flags/sn.svg → sn-KYWABXNT.svg} +0 -0
  609. /package/dist/{lib/components/InputPhone/utils/flags/so.svg → so-TUA5RNVD.svg} +0 -0
  610. /package/dist/{lib/components/InputPhone/utils/flags/sr.svg → sr-HMODPFV5.svg} +0 -0
  611. /package/dist/{lib/components/InputPhone/utils/flags/ss.svg → ss-R7O73JRT.svg} +0 -0
  612. /package/dist/{lib/components/InputPhone/utils/flags/st.svg → st-NPWJIGHE.svg} +0 -0
  613. /package/dist/{lib/components/InputPhone/utils/flags/sv.svg → sv-NIXV2SRX.svg} +0 -0
  614. /package/dist/{lib/components/InputPhone/utils/flags/sy.svg → sy-HTLBFL4F.svg} +0 -0
  615. /package/dist/{lib/components/InputPhone/utils/flags/sz.svg → sz-FMNXHOEQ.svg} +0 -0
  616. /package/dist/{lib/components/InputPhone/utils/flags/tc.svg → tc-P6VEJX7T.svg} +0 -0
  617. /package/dist/{lib/components/InputPhone/utils/flags/td.svg → td-DN372MP5.svg} +0 -0
  618. /package/dist/{lib/components/InputPhone/utils/flags/tg.svg → tg-5ZT7ZDBZ.svg} +0 -0
  619. /package/dist/{lib/components/InputPhone/utils/flags/th.svg → th-WAHAQKQK.svg} +0 -0
  620. /package/dist/{lib/components/InputPhone/utils/flags/tj.svg → tj-MG5ALKXM.svg} +0 -0
  621. /package/dist/{lib/components/InputPhone/utils/flags/tk.svg → tk-G765JUVP.svg} +0 -0
  622. /package/dist/{lib/components/InputPhone/utils/flags/tl.svg → tl-UF7AWZC6.svg} +0 -0
  623. /package/dist/{lib/components/InputPhone/utils/flags/tm.svg → tm-LGSUDTBO.svg} +0 -0
  624. /package/dist/{lib/components/InputPhone/utils/flags/tn.svg → tn-MJPTN7EW.svg} +0 -0
  625. /package/dist/{lib/components/InputPhone/utils/flags/to.svg → to-4IPHWATD.svg} +0 -0
  626. /package/dist/{lib/components/InputPhone/utils/flags/tr.svg → tr-KC7PK4TT.svg} +0 -0
  627. /package/dist/{lib/components/InputPhone/utils/flags/tt.svg → tt-IVVKXXFH.svg} +0 -0
  628. /package/dist/{lib/components/InputPhone/utils/flags/tv.svg → tv-HASL2ZPX.svg} +0 -0
  629. /package/dist/{lib/components/InputPhone/utils/flags/tw.svg → tw-Z2QVHLNU.svg} +0 -0
  630. /package/dist/{lib/components/InputPhone/utils/flags/tz.svg → tz-FVI6D4BP.svg} +0 -0
  631. /package/dist/{lib/components/InputPhone/utils/flags/ua.svg → ua-6L6MVDVK.svg} +0 -0
  632. /package/dist/{lib/components/InputPhone/utils/flags/ug.svg → ug-F73JMZTS.svg} +0 -0
  633. /package/dist/{lib/components/InputPhone/utils/flags/us.svg → us-VPPAAERF.svg} +0 -0
  634. /package/dist/{lib/components/InputPhone/utils/flags/uy.svg → uy-FJ6XTJUV.svg} +0 -0
  635. /package/dist/{lib/components/InputPhone/utils/flags/uz.svg → uz-FR2J6ZTX.svg} +0 -0
  636. /package/dist/{lib/components/InputPhone/utils/flags/va.svg → va-ZQHHJQ33.svg} +0 -0
  637. /package/dist/{lib/components/InputPhone/utils/flags/vc.svg → vc-F4EKLJYW.svg} +0 -0
  638. /package/dist/{lib/components/InputPhone/utils/flags/ve.svg → ve-TXPQADML.svg} +0 -0
  639. /package/dist/{lib/components/InputPhone/utils/flags/vg.svg → vg-R3B6II5K.svg} +0 -0
  640. /package/dist/{lib/components/InputPhone/utils/flags/vi.svg → vi-7RSQ7357.svg} +0 -0
  641. /package/dist/{lib/components/InputPhone/utils/flags/vn.svg → vn-BMRRXIMR.svg} +0 -0
  642. /package/dist/{lib/components/InputPhone/utils/flags/vu.svg → vu-FZQPUNU3.svg} +0 -0
  643. /package/dist/{lib/components/InputPhone/utils/flags/wf.svg → wf-EYVXQET4.svg} +0 -0
  644. /package/dist/{lib/components/InputPhone/utils/flags/ws.svg → ws-PVUKQ4PE.svg} +0 -0
  645. /package/dist/{lib/components/InputPhone/utils/flags/ye.svg → ye-NQNPF5YD.svg} +0 -0
  646. /package/dist/{lib/components/InputPhone/utils/flags/yt.svg → yt-TGBAMUTW.svg} +0 -0
  647. /package/dist/{lib/components/InputPhone/utils/flags/za.svg → za-HZOQXCXO.svg} +0 -0
  648. /package/dist/{lib/components/InputPhone/utils/flags/zm.svg → zm-NM4WJ5NQ.svg} +0 -0
  649. /package/dist/{lib/components/InputPhone/utils/flags/zw.svg → zw-MIQGG7RP.svg} +0 -0
@@ -0,0 +1,3231 @@
1
+ import { c as LibColorsHover, ag as CssTextAlign, L as LibColors, a as LibColorsShort, b as LibAllColors, e as LibOverlays, f as LibAllColorsAndOverlays, l as LibSpacers, al as CssAlignContent, aj as CssAlignItems, ak as CssJustifyContent, ai as CssJustifyItems, F as LibMaxWidth, m as LibRadiuses, ao as CssObjectFit, v as LibButtonVariantExtended, k as LibShadows, ah as CssVerticalAlign, ae as DispatchState, a6 as TranslateLang, ab as ReactChildren, q as LibThemeNames, ac as ReactElement, t as LibLoaderVariant } from './global-Bck2LNL3.cjs';
2
+ export { aw as designTokens } from './global-Bck2LNL3.cjs';
3
+ import * as react_jsx_runtime from 'react/jsx-runtime';
4
+ import { ClassNameValue } from 'tailwind-merge';
5
+ import { MarkdownToJSX } from 'markdown-to-jsx';
6
+ import { LibMdEditorOptions } from './types/components-items-props.cjs';
7
+ export { addDay, addMonth, addYear, calculateAverage, calculateTotalSum, capitalize, convertDate, convertDateShort, convertPrice, convertToEmail, convertYoutube, deleteDuplicates, detectLanguage, disableScroll, emailRegex, enableScroll, filterObject, formatDate, formatHour, generateNumbers, getFirstName, getInitials, getLastName, getNextDay, getPercentage, getRandom, getRandomAvatar, getRandomDate, getRandomNumber, getRandomString, getRandomTime, getTimeNow, getToday, getTomorrow, getYesterday, hexToRgb, passwordRegex, rgbToHex, scrollToTop, slugify, sortByFrequency, stringifyPx, toCamelCase, toConstantCase, toDotCase, toKebabCase, toPascalCase, toPathCase, toSentenceCase, toSnakeCase, toTitleCase, unslugify, uuid } from '@julseb-lib/utils';
8
+ import * as react from 'react';
9
+ import { RefObject, ChangeEvent, RefCallback, Ref, FC as FC$1 } from 'react';
10
+ import { ILibText, ILibWrapper, ILibMain, ILibAside, ILibSection, ILibGrid, ILibFlexbox, ILibKey, ILibHighlight, ILibLinkify, ILibHr, ILibSkeleton, ILibSkeletonCard, ILibTooltip, ILibImage, ILibMasonry, ILibBadge, ILibAvatar, ILibLoader, ILibBurger, ILibButton, ILibButtonIcon, ILibButtonGroup, ILibTag, ILibInputContainer, ILibInput, ILibInputImage, ILibInputCheck, ILibInputPhone, ILibInputCounter, ILibInputSlider, ILibSelect, ILibAutocomplete, ILibRating, ILibInputPin, ILibFieldset, ILibForm, ILibListGroup, ILibListGroupTitle, ILibListGroupItem, ILibBreadcrumbs, ILibAccordion, ILibAccordionItem, ILibDropdown, ILibDropdownItem, ILibToast, ILibAlert, ILibModal, ILibDragList, ILibDragListItem, ILibPagination, ILibPaginationButton, ILibPaginator, ILibProgressBar, ILibProgressCircle, ILibTabs, ILibTabsContainer, ILibTabsButtonsContainer, ILibTabsButton, ILibTabContent, ILibSlideshow, ILibCover, ILibTable, ILibPageLoading, ILibSticky, ILibMarkdownEditor, ILibMarkdownContainer, ILibCodeContainer, ILibFade, ILibBackToTop, ILibDrawer, ILibHeader, ILibFooter, ILibMeta, ILibPageLayout, ILibSrOnly } from './types/components-props.cjs';
11
+ import * as react_toastify from 'react-toastify';
12
+ import { ToastContainerProps, ToastOptions } from 'react-toastify';
13
+ import 'csstype';
14
+ import 'fuse.js';
15
+ import 'react-syntax-highlighter';
16
+ import './types/require-at-least-one.cjs';
17
+
18
+ declare const URL_REGEX: RegExp;
19
+ declare const linkifyText: (text: string, blank?: boolean) => (string | react_jsx_runtime.JSX.Element)[];
20
+
21
+ declare const genLinkColor: Record<LibColorsHover, string>;
22
+ declare const genButtonColor: Record<LibColorsHover, string>;
23
+
24
+ declare const genTextAlign: Record<CssTextAlign, string>;
25
+
26
+ declare const genTextColor: Record<LibColors, string>;
27
+ declare const genTextColorShort: Record<LibColorsShort, string>;
28
+ declare const genTextColorHover: Record<LibColorsHover, string>;
29
+ declare const genTextAllColor: Record<LibAllColors, string>;
30
+
31
+ declare const genBgColor: Record<LibColors, string>;
32
+ declare const genBgColorShort: Record<LibColorsShort, string>;
33
+ declare const genBgColor50: Record<Exclude<LibColorsShort, "black" | "transparent" | "background" | "current">, string>;
34
+ declare const genBgColorHover: Record<LibColorsHover, string>;
35
+ declare const genBgColorGhostHover: Record<LibColorsHover, string>;
36
+ declare const genBgOverlay: Record<LibOverlays, string>;
37
+ declare const genBgAllColors: Record<LibAllColors, string>;
38
+ declare const genBgAllColorsAndOverlays: Record<LibAllColorsAndOverlays, string>;
39
+
40
+ declare const genBorderColor: Record<LibColors, string>;
41
+ declare const genBorderColorShort: Record<LibColorsShort, string>;
42
+ declare const genBorderColorHover: Record<LibColorsHover, string>;
43
+ declare const genBorderAllColors: Record<LibAllColors, string>;
44
+
45
+ declare const genGap: Record<LibSpacers, string>;
46
+ declare const genRowGap: Record<LibSpacers, string>;
47
+ declare const genColGap: Record<LibSpacers, string>;
48
+
49
+ declare const clsx: (...classes: Array<ClassNameValue>) => string;
50
+
51
+ declare const genAlignContent: Record<CssAlignContent, string>;
52
+ declare const genAlignItems: Record<CssAlignItems, string>;
53
+
54
+ declare const genJustifyContent: Record<CssJustifyContent, string>;
55
+ declare const genJustifyItems: Record<CssJustifyItems, string>;
56
+
57
+ declare const genMaxWidth: Record<LibMaxWidth, string>;
58
+
59
+ declare const genBorderRadius: Record<LibRadiuses, string>;
60
+
61
+ declare const genObjectFit: Record<CssObjectFit, string>;
62
+
63
+ declare const genButtonDisabled: Record<LibButtonVariantExtended, string>;
64
+
65
+ declare const genBoxShadow: Record<LibShadows, string>;
66
+
67
+ declare const genVAlign: Record<CssVerticalAlign, string>;
68
+
69
+ declare const libOptionsMarkdown: MarkdownToJSX.Options;
70
+ declare const libMarkdownEditorOptions: LibMdEditorOptions;
71
+
72
+ declare const genRingColor: Record<LibColorsHover, string>;
73
+ declare const genRingColorChildren: Record<LibColorsHover, string>;
74
+
75
+ type Event = MouseEvent | TouchEvent;
76
+ /**
77
+ * Hook to trigger a function when clicking outside a referenced element.
78
+ *
79
+ * @hook
80
+ *
81
+ * @example
82
+ * const ref = useRef<HTMLDivElement>(null)
83
+ * useClickOutside(ref, () => {
84
+ * console.log('Clicked outside!')
85
+ * setIsOpen(false)
86
+ * })
87
+ *
88
+ * @template T - HTML element type that extends HTMLElement
89
+ * @param {RefObject<T>} ref - React ref object pointing to the target element
90
+ * @param {function} handler - Callback function to execute when clicking outside the element
91
+ * @param {Event} handler.event - The mouse or touch event that triggered the outside click
92
+ *
93
+ * @returns {void} This hook doesn't return anything
94
+ *
95
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useClickOutside
96
+ */
97
+ declare const useClickOutside: <T extends HTMLElement = HTMLElement>(ref: RefObject<T>, handler: (event: Event) => void) => void;
98
+
99
+ type CopiedValue = string | null;
100
+ type CopyFn = (text: string) => Promise<boolean>;
101
+ /**
102
+ * Hook to copy text to clipboard and track the copied value state.
103
+ *
104
+ * @hook
105
+ *
106
+ * @example
107
+ * const [copiedText, copy] = useCopyToClipboard()
108
+ *
109
+ * const handleCopy = async () => {
110
+ * const success = await copy('Hello, World!')
111
+ * if (success) {
112
+ * console.log('Copied:', copiedText)
113
+ * }
114
+ * }
115
+ *
116
+ * @returns {[CopiedValue, CopyFn]} Array containing the last copied text and copy function
117
+ * @returns {string | null} returns[0] - The last successfully copied text, or null if no text copied or copy failed
118
+ * @returns {function} returns[1] - Async function to copy text to clipboard
119
+ * @returns {string} returns[1].text - Text to copy to clipboard
120
+ * @returns {Promise<boolean>} returns[1].Promise - Promise that resolves to true if copy succeeded, false otherwise
121
+ *
122
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useCopyToClipboard
123
+ */
124
+ declare const useCopyToClipboard: () => [CopiedValue, CopyFn];
125
+
126
+ /**
127
+ * Hook to delay the update of a value until after a specified delay period has passed without changes.
128
+ *
129
+ * @hook
130
+ *
131
+ * @example
132
+ * const [searchTerm, setSearchTerm] = useState('')
133
+ * const debouncedSearchTerm = useDebounce(searchTerm, 500)
134
+ *
135
+ * useEffect(() => {
136
+ * if (debouncedSearchTerm) {
137
+ * // Perform search API call
138
+ * searchAPI(debouncedSearchTerm)
139
+ * }
140
+ * }, [debouncedSearchTerm])
141
+ *
142
+ * @template T - Type of the value being debounced
143
+ * @param {T} value - The value to debounce
144
+ * @param {number} [delay=1000] - Delay in milliseconds before updating the debounced value
145
+ *
146
+ * @returns {T} The debounced value that updates after the delay period
147
+ *
148
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useDebounce
149
+ */
150
+ declare const useDebounce: <T>(value: T, delay?: number) => T;
151
+
152
+ /**
153
+ * Hook to export data to JSON or CSV format with automatic file download functionality.
154
+ *
155
+ * @hook
156
+ *
157
+ * @example
158
+ * const { exportToJson, exportToCsv } = useExportData()
159
+ *
160
+ * // Export to JSON
161
+ * const users = [{ id: 1, name: 'John' }, { id: 2, name: 'Jane' }]
162
+ * exportToJson(users, 'users-data')
163
+ *
164
+ * // Export to CSV
165
+ * const headers = ['ID', 'Name']
166
+ * exportToCsv(users, 'users-data', headers)
167
+ *
168
+ * @template T - Type of the data objects being exported
169
+ *
170
+ * @returns {object} Object containing export functions
171
+ * @returns {function} returns.exportToJson - Function to export data as JSON file
172
+ * @returns {Array<T>} returns.exportToJson.data - Array of data objects to export
173
+ * @returns {string} returns.exportToJson.fileName - Name for the downloaded file (without extension)
174
+ * @returns {function} returns.exportToCsv - Function to export data as CSV file
175
+ * @returns {Array<T>} returns.exportToCsv.data - Array of data objects to export
176
+ * @returns {string} returns.exportToCsv.fileName - Name for the downloaded file (without extension)
177
+ * @returns {Array<string>} returns.exportToCsv.headers - Array of column headers for the CSV file
178
+ *
179
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useExportData
180
+ */
181
+ declare const useExportData: <T>() => {
182
+ exportToCsv: (data: Array<T>, fileName: string, headers: Array<string>) => void;
183
+ exportToJson: (data: Array<T>, fileName: string) => void;
184
+ };
185
+
186
+ /**
187
+ * Hook to fetch data from a Promise with loading and error state management.
188
+ *
189
+ * @hook
190
+ *
191
+ * @example
192
+ * const { response, error, loading } = useFetch(
193
+ * fetch('/api/users').then(res => res.json()),
194
+ * [userId]
195
+ * )
196
+ *
197
+ * if (loading) return <div>Loading...</div>
198
+ * if (error) return <div>Error: {error.message}</div>
199
+ * return <div>{response?.name}</div>
200
+ *
201
+ * @template T - Type of the data returned by the fetch function
202
+ * @param {Promise<T>} fetchFunction - Promise that resolves to the data to be fetched
203
+ * @param {any} [dependencies] - Dependency array to trigger re-fetching when values change
204
+ *
205
+ * @returns {object} Object containing fetch state
206
+ * @returns {T | null} returns.response - The fetched data, or null if not yet loaded or failed
207
+ * @returns {any} returns.error - Error object if the fetch failed, undefined otherwise
208
+ * @returns {boolean} returns.loading - Whether the fetch operation is currently in progress
209
+ *
210
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useFetch
211
+ */
212
+ declare const useFetch: <T>(fetchFunction: Promise<T>, dependencies?: any) => {
213
+ readonly response: T | null;
214
+ readonly error: any;
215
+ readonly loading: boolean;
216
+ };
217
+
218
+ /**
219
+ * Hook to manage form state with input handling, validation, and submission functionality.
220
+ *
221
+ * @hook
222
+ *
223
+ * @example
224
+ * interface FormData {
225
+ * email: string
226
+ * password: string
227
+ * }
228
+ *
229
+ * const { formData, handleInputs, resetForm, handleSubmit } = useForm<FormData>(
230
+ * { email: '', password: '' },
231
+ * (data) => console.log('Form submitted:', data)
232
+ * )
233
+ *
234
+ * @template T - Type of the form data object
235
+ * @param {T} [initialState={}] - Initial state of the form data
236
+ * @param {function} [onSubmit] - Optional callback function called on form submission
237
+ * @param {T} onSubmit.formData - The current form data when submitted
238
+ *
239
+ * @returns {object} Object containing form state and handlers
240
+ * @returns {T} returns.formData - Current form data state
241
+ * @returns {function} returns.handleInputs - Function to handle input changes
242
+ * @returns {ChangeEvent<HTMLInputElement>} returns.handleInputs.e - Input change event
243
+ * @returns {function} returns.resetForm - Function to reset form to initial state
244
+ * @returns {function} returns.handleSubmit - Function to handle form submission
245
+ * @returns {ChangeEvent<HTMLFormElement>} returns.handleSubmit.e - Form submit event
246
+ *
247
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useForm
248
+ */
249
+ declare const useForm: <T>(initialState?: T, onSubmit?: (formData: T) => void) => {
250
+ formData: T;
251
+ handleInputs: (e: ChangeEvent<HTMLInputElement>) => void;
252
+ resetForm: () => void;
253
+ handleSubmit: (e: ChangeEvent<HTMLFormElement>) => void;
254
+ };
255
+
256
+ /**
257
+ * Hook to detect if an element is overflowing its container bounds with optional callback functionality.
258
+ *
259
+ * @hook
260
+ *
261
+ * @example
262
+ * const ref = useRef<HTMLDivElement>(null)
263
+ * const isOverflow = useIsOverflow(ref, {
264
+ * callback: (overflow) => console.log('Overflow detected:', overflow),
265
+ * check: 'width'
266
+ * })
267
+ *
268
+ * if (isOverflow) {
269
+ * // Handle overflow state
270
+ * }
271
+ *
272
+ * @param {RefObject<HTMLElement>} ref - React ref object pointing to the element to check for overflow
273
+ * @param {object} [options] - Configuration options for overflow detection
274
+ * @param {RefCallback<boolean>} [options.callback] - Callback function called when overflow state changes
275
+ * @param {"width" | "height"} [options.check="width"] - Which dimension to check for overflow
276
+ *
277
+ * @returns {boolean | undefined} Whether the element is overflowing, or undefined if not yet determined
278
+ *
279
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useIsOverflow
280
+ */
281
+ declare const useIsOverflow: (ref: RefObject<HTMLElement>, options?: {
282
+ callback: RefCallback<boolean>;
283
+ check?: "width" | "height";
284
+ }) => boolean | undefined;
285
+
286
+ /**
287
+ * Hook to trigger functions on specific key press events with support for modifier keys and exclusions.
288
+ *
289
+ * @hook
290
+ *
291
+ * @example
292
+ * // Single key press
293
+ * useKeyPress('Escape', () => setIsOpen(false))
294
+ *
295
+ * // Modifier key combination
296
+ * useKeyPress(['Control', 'KeyS'], () => saveDocument())
297
+ *
298
+ * // With excluded keys
299
+ * useKeyPress('Enter', handleSubmit, ['Shift'])
300
+ *
301
+ * @param {string | Array<string>} keyCodes - Single key code or array of key codes for combinations
302
+ * @param {function} callback - Function to execute when the key combination is pressed
303
+ * @param {Array<string>} [excludeKeys] - Array of modifier keys to exclude from triggering the callback
304
+ *
305
+ * @returns {void} This hook doesn't return anything
306
+ *
307
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useKeyPress
308
+ */
309
+ declare const useKeyPress: (keyCodes: string | Array<string>, callback: () => void, excludeKeys?: Array<string>) => void;
310
+
311
+ /**
312
+ * Hook to detect if the viewport width is smaller than or equal to a specified width breakpoint.
313
+ *
314
+ * @hook
315
+ *
316
+ * @example
317
+ * const isMobile = useMaxWidth(768)
318
+ * const isTablet = useMaxWidth(1024)
319
+ *
320
+ * if (isMobile) {
321
+ * // Render mobile layout
322
+ * }
323
+ *
324
+ * @param {number} width - The maximum width breakpoint to check against
325
+ *
326
+ * @returns {boolean} Whether the current viewport width is smaller than or equal to the specified width
327
+ *
328
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useMaxWidth
329
+ */
330
+ declare const useMaxWidth: (width: number) => boolean;
331
+
332
+ /**
333
+ * Hook to merge multiple refs into a single ref callback for use on a single element.
334
+ *
335
+ * @hook
336
+ *
337
+ * @example
338
+ * const ref1 = useRef<HTMLDivElement>(null)
339
+ * const ref2 = useRef<HTMLDivElement>(null)
340
+ * const mergedRef = useMergeRefs([ref1, ref2])
341
+ *
342
+ * return <div ref={mergedRef}>Content</div>
343
+ *
344
+ * @template Instance - Type of the element instance being referenced
345
+ * @param {Array<Ref<Instance> | undefined>} refs - Array of refs to merge together
346
+ *
347
+ * @returns {RefCallback<Instance> | null} Merged ref callback or null if all refs are null/undefined
348
+ *
349
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useMergeRefs
350
+ */
351
+ declare const useMergeRefs: <Instance>(refs: Array<Ref<Instance> | undefined>) => RefCallback<Instance> | null;
352
+
353
+ /**
354
+ * Hook to detect if the viewport width is greater than or equal to a specified width breakpoint.
355
+ *
356
+ * @hook
357
+ *
358
+ * @example
359
+ * const isDesktop = useMinWidth(1024)
360
+ * const isTablet = useMinWidth(768)
361
+ *
362
+ * if (isDesktop) {
363
+ * // Render desktop layout
364
+ * }
365
+ *
366
+ * @param {number} width - The minimum width breakpoint to check against
367
+ *
368
+ * @returns {boolean} Whether the current viewport width is greater than or equal to the specified width
369
+ *
370
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useMinWidth
371
+ */
372
+ declare const useMinWidth: (width: number) => boolean;
373
+
374
+ interface IUsePaginatedData<T> {
375
+ paginatedData: Array<T>;
376
+ totalPages: number;
377
+ }
378
+ /**
379
+ * Hook to paginate data with URL parameter integration for use with Pagination or Paginator components.
380
+ *
381
+ * @hook
382
+ *
383
+ * @example
384
+ * const users = [{ id: 1, name: 'John' }, { id: 2, name: 'Jane' }, ...]
385
+ * const { paginatedData, totalPages } = usePaginatedData(users, 1, 10)
386
+ *
387
+ * return (
388
+ * <div>
389
+ * {paginatedData.map(user => <UserCard key={user.id} user={user} />)}
390
+ * <Pagination totalPages={totalPages} />
391
+ * </div>
392
+ * )
393
+ *
394
+ * @template T - Type of the data items being paginated
395
+ * @param {Array<T>} data - Array of data to paginate
396
+ * @param {number} page - Current page number (1-indexed)
397
+ * @param {number} [defaultLimit=20] - Number of items per page
398
+ *
399
+ * @returns {object} Object containing paginated data and pagination info
400
+ * @returns {Array<T>} returns.paginatedData - Current page's data items
401
+ * @returns {number} returns.totalPages - Total number of pages based on data length and limit
402
+ *
403
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#usePaginatedData
404
+ */
405
+ declare const usePaginatedData: <T>(data: Array<T>, page: number, defaultLimit?: number) => IUsePaginatedData<T>;
406
+
407
+ interface ILibUsePaginationNavigation {
408
+ currentPage: number;
409
+ setCurrentPage: DispatchState<number>;
410
+ totalPages?: number;
411
+ }
412
+ /**
413
+ * Hook to manage pagination navigation with URL parameter integration and automatic scrolling.
414
+ *
415
+ * @hook
416
+ *
417
+ * @example
418
+ * const [currentPage, setCurrentPage] = useState(1)
419
+ * const { handlePrev, handleNext, handlePage } = usePagination({
420
+ * currentPage,
421
+ * setCurrentPage,
422
+ * totalPages: 10
423
+ * })
424
+ *
425
+ * return (
426
+ * <div>
427
+ * <button onClick={handlePrev}>Previous</button>
428
+ * <button onClick={() => handlePage(5)}>Go to page 5</button>
429
+ * <button onClick={handleNext}>Next</button>
430
+ * </div>
431
+ * )
432
+ *
433
+ * @param {object} params - Configuration object for pagination
434
+ * @param {number} params.currentPage - Current active page number
435
+ * @param {DispatchState<number>} params.setCurrentPage - State setter function for current page
436
+ * @param {number} [params.totalPages] - Total number of pages available
437
+ *
438
+ * @returns {object} Object containing pagination navigation functions
439
+ * @returns {function} returns.handlePrev - Function to navigate to the previous page
440
+ * @returns {function} returns.handleNext - Function to navigate to the next page
441
+ * @returns {function} returns.handlePage - Function to navigate to a specific page number
442
+ * @returns {number} returns.handlePage.n - Page number to navigate to
443
+ *
444
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#usePagination
445
+ */
446
+ declare const usePagination: ({ currentPage, setCurrentPage, totalPages, }: ILibUsePaginationNavigation) => {
447
+ handlePrev: () => void;
448
+ handleNext: () => void;
449
+ handlePage: (n: number) => void;
450
+ };
451
+
452
+ /**
453
+ * Hook to detect if the current device supports touch screen interaction.
454
+ *
455
+ * @hook
456
+ *
457
+ * @example
458
+ * const isTouchScreen = useTouchScreen()
459
+ *
460
+ * if (isTouchScreen) {
461
+ * // Render touch-optimized UI
462
+ * return <TouchOptimizedComponent />
463
+ * }
464
+ *
465
+ * return <DesktopComponent />
466
+ *
467
+ * @returns {boolean} Whether the current device supports touch screen interaction
468
+ *
469
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useTouchScreen
470
+ */
471
+ declare const useTouchScreen: () => boolean;
472
+
473
+ /**
474
+ * Hook to detect the language and return translated content with language switching functionality.
475
+ *
476
+ * @hook
477
+ *
478
+ * @example
479
+ * const translations = {
480
+ * en: { greeting: 'Hello', goodbye: 'Goodbye' },
481
+ * fr: { greeting: 'Bonjour', goodbye: 'Au revoir' },
482
+ * es: { greeting: 'Hola', goodbye: 'Adiós' }
483
+ * }
484
+ *
485
+ * const { translate, setLanguage, language, languages } = useTranslation(translations)
486
+ *
487
+ * return (
488
+ * <div>
489
+ * <p>{translate('greeting')}</p>
490
+ * <button onClick={() => setLanguage('fr')}>Switch to French</button>
491
+ * </div>
492
+ * )
493
+ *
494
+ * @param {TranslateLang} translations - Object containing translations for each language
495
+ * @param {object} translations[language] - Translation object for a specific language
496
+ * @param {string} translations[language][key] - Translated string for a specific key
497
+ *
498
+ * @returns {object} Object containing translation utilities
499
+ * @returns {function} returns.translate - Function to get translated text for a given key
500
+ * @returns {string} returns.translate.key - Translation key to look up
501
+ * @returns {function} returns.setLanguage - Function to change the current language
502
+ * @returns {string} returns.setLanguage.lang - Language code to switch to
503
+ * @returns {string} returns.language - Current active language code
504
+ * @returns {Array<string>} returns.languages - Array of available language codes
505
+ *
506
+ * @see https://doc-julseb-lib-react.vercel.app/helpers/hooks#useTranslation
507
+ */
508
+ declare const useTranslation: (translations: TranslateLang) => {
509
+ translate: (key: string) => string;
510
+ setLanguage: react.Dispatch<react.SetStateAction<string>>;
511
+ language: string;
512
+ languages: string[];
513
+ };
514
+
515
+ declare enum COLORS {
516
+ /** #EFF6FF */ PRIMARY_50 = "var(--color-primary-50)",
517
+ /** #DBEAFE */ PRIMARY_100 = "var(--color-primary-100)",
518
+ /** #BFDBFE */ PRIMARY_200 = "var(--color-primary-200)",
519
+ /** #93C5FD */ PRIMARY_300 = "var(--color-primary-300)",
520
+ /** #60A5FA */ PRIMARY_400 = "var(--color-primary-400)",
521
+ /** #3B82F6 */ PRIMARY_500 = "var(--color-primary-500)",
522
+ /** #2563EB */ PRIMARY_600 = "var(--color-primary-600)",
523
+ /** #1D4ED8 */ PRIMARY_700 = "var(--color-primary-700)",
524
+ /** #1E40AF */ PRIMARY_800 = "var(--color-primary-800)",
525
+ /** #1E3A8A */ PRIMARY_900 = "var(--color-primary-900)",
526
+ /** #172554 */ PRIMARY_950 = "var(--color-primary-950)",
527
+ /** #ECFEFF */ SECONDARY_50 = "var(--color-secondary-50)",
528
+ /** #CFFAFE */ SECONDARY_100 = "var(--color-secondary-100)",
529
+ /** #A5F3FC */ SECONDARY_200 = "var(--color-secondary-200)",
530
+ /** #67E8F9 */ SECONDARY_300 = "var(--color-secondary-300)",
531
+ /** #22D3EE */ SECONDARY_400 = "var(--color-secondary-400)",
532
+ /** #06B6D4 */ SECONDARY_500 = "var(--color-secondary-500)",
533
+ /** #0891B2 */ SECONDARY_600 = "var(--color-secondary-600)",
534
+ /** #0E7490 */ SECONDARY_700 = "var(--color-secondary-700)",
535
+ /** #155E75 */ SECONDARY_800 = "var(--color-secondary-800)",
536
+ /** #164E63 */ SECONDARY_900 = "var(--color-secondary-900)",
537
+ /** #083344 */ SECONDARY_950 = "var(--color-secondary-950)",
538
+ /** #F0FDF4 */ SUCCESS_50 = "var(--color-success-50)",
539
+ /** #DCFCE7 */ SUCCESS_100 = "var(--color-success-100)",
540
+ /** #BBF7D0 */ SUCCESS_200 = "var(--color-success-200)",
541
+ /** #86EFAC */ SUCCESS_300 = "var(--color-success-300)",
542
+ /** #4ADE80 */ SUCCESS_400 = "var(--color-success-400)",
543
+ /** #22C55E */ SUCCESS_500 = "var(--color-success-500)",
544
+ /** #16A34A */ SUCCESS_600 = "var(--color-success-600)",
545
+ /** #15803D */ SUCCESS_700 = "var(--color-success-700)",
546
+ /** #166534 */ SUCCESS_800 = "var(--color-success-800)",
547
+ /** #14532D */ SUCCESS_900 = "var(--color-success-900)",
548
+ /** #052E16 */ SUCCESS_950 = "var(--color-success-950)",
549
+ /** #FEF2F2 */ DANGER_50 = "var(--color-danger-50)",
550
+ /** #FEE2E2 */ DANGER_100 = "var(--color-danger-100)",
551
+ /** #FECACA */ DANGER_200 = "var(--color-danger-200)",
552
+ /** #FCA5A5 */ DANGER_300 = "var(--color-danger-300)",
553
+ /** #F87171 */ DANGER_400 = "var(--color-danger-400)",
554
+ /** #EF4444 */ DANGER_500 = "var(--color-danger-500)",
555
+ /** #DC2626 */ DANGER_600 = "var(--color-danger-600)",
556
+ /** #B91C1C */ DANGER_700 = "var(--color-danger-700)",
557
+ /** #991B1B */ DANGER_800 = "var(--color-danger-800)",
558
+ /** #7F1D1D */ DANGER_900 = "var(--color-danger-900)",
559
+ /** #450A0A */ DANGER_950 = "var(--color-danger-950)",
560
+ /** #FFFBEB */ WARNING_50 = "var(--color-warning-50)",
561
+ /** #FEF3C7 */ WARNING_100 = "var(--color-warning-100)",
562
+ /** #FDE68A */ WARNING_200 = "var(--color-warning-200)",
563
+ /** #FCD34D */ WARNING_300 = "var(--color-warning-300)",
564
+ /** #FBBF24 */ WARNING_400 = "var(--color-warning-400)",
565
+ /** #F59E0B */ WARNING_500 = "var(--color-warning-500)",
566
+ /** #D97706 */ WARNING_600 = "var(--color-warning-600)",
567
+ /** #B45309 */ WARNING_700 = "var(--color-warning-700)",
568
+ /** #92400E */ WARNING_800 = "var(--color-warning-800)",
569
+ /** #78350F */ WARNING_900 = "var(--color-warning-900)",
570
+ /** #451A03 */ WARNING_950 = "var(--color-warning-950)",
571
+ /** #FAFAFA */ GRAY_50 = "var(--color-gray-50)",
572
+ /** #F5F5F5 */ GRAY_100 = "var(--color-gray-100)",
573
+ /** #E5E5E5 */ GRAY_200 = "var(--color-gray-200)",
574
+ /** #D4D4D4 */ GRAY_300 = "var(--color-gray-300)",
575
+ /** #A3A3A3 */ GRAY_400 = "var(--color-gray-400)",
576
+ /** #737373 */ GRAY_500 = "var(--color-gray-500)",
577
+ /** #525252 */ GRAY_600 = "var(--color-gray-600)",
578
+ /** #404040 */ GRAY_700 = "var(--color-gray-700)",
579
+ /** #262626 */ GRAY_800 = "var(--color-gray-800)",
580
+ /** #171717 */ GRAY_900 = "var(--color-gray-900)",
581
+ /** #0A0A0A */ GRAY_950 = "var(--color-gray-950)",
582
+ /** #000000 */ BLACK = "var(--color-black)",
583
+ /** #FFFFFF */ WHITE = "var(--color-white)",
584
+ TRANSPARENT = "transparent",
585
+ CURRENT_COLOR = "currentColor"
586
+ }
587
+ declare enum OVERLAYS {
588
+ /** rgba(0, 0, 0, 0.5) */ BLACK_50 = "var(--color-overlay-black-50)",
589
+ /** rgba(0, 0, 0, 0.8) */ BLACK_80 = "var(--color-overlay-black-80)",
590
+ /** rgba(255, 255, 255, 0.5) */ WHITE_50 = "var(--color-overlay-white-50)",
591
+ /** rgba(69, 35, 35, 0.8) */ WHITE_80 = "var(--color-overlay-white-80)",
592
+ /** linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.56) 100%) */ GRADIENT_BLACK = "var(--color-overlay-gradient-black)",
593
+ /** linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 255, 255, 0.35) 100%) */ GRADIENT_WHITE = "var(--color-overlay-gradient-white)"
594
+ }
595
+ declare enum FONT_FAMILIES {
596
+ /** Primary font family for body text */ SANS = "var(--font-sans)",
597
+ /** Font family for code and monospaced text */ MONO = "var(--font-mono)"
598
+ }
599
+ declare enum FONT_SIZES {
600
+ /** 5rem */ DISPLAY_H1 = "var(--text-display-h1)",
601
+ /** 4rem */ DISPLAY_H2 = "var(--text-display-h2)",
602
+ /** 3.5rem */ DISPLAY_H3 = "var(--text-display-h3)",
603
+ /** 3rem */ DISPLAY_H4 = "var(--text-display-h4)",
604
+ /** 2.5rem */ DISPLAY_H5 = "var(--text-display-h5)",
605
+ /** 2.5rem */ H1 = "var(--text-h1)",
606
+ /** 2rem */ H2 = "var(--text-h2)",
607
+ /** 1.8rem */ H3 = "var(--text-h3)",
608
+ /** 1.5rem */ H4 = "var(--text-h4)",
609
+ /** 1.3rem */ H5 = "var(--text-h5)",
610
+ /** 1.1rem */ H6 = "var(--text-h6)",
611
+ /** 1rem */ BODY = "var(--text-body)",
612
+ /** 0.875rem */ SMALL = "var(--text-small)"
613
+ }
614
+ declare enum FONT_WEIGHTS {
615
+ /** 100 */ THIN = "var(--font-weight-thin)",
616
+ /** 200 */ EXTRA_LIGHT = "var(--font-weight-extralight)",
617
+ /** 300 */ LIGHT = "var(--font-weight-light)",
618
+ /** 400 */ NORMAL = "var(--font-weight-normal)",
619
+ /** 500 */ MEDIUM = "var(--font-weight-medium)",
620
+ /** 600 */ SEMI_BOLD = "var(--font-weight-semibold)",
621
+ /** 700 */ BOLD = "var(--font-weight-bold)",
622
+ /** 800 */ EXTRA_BOLD = "var(--font-weight-extrabold)",
623
+ /** 900 */ BLACK = "var(--font-weight-black)"
624
+ }
625
+ declare enum LINE_HEIGHTS {
626
+ /** 1 */ NONE = "var(--line-height-none)",
627
+ /** 1.25 */ TIGHT = "var(--line-height-tight)",
628
+ /** 1.375 */ SNUG = "var(--line-height-snug)",
629
+ /** 1.5 */ NORMAL = "var(--line-height-normal)",
630
+ /** 1.625 */ RELAXED = "var(--line-height-relaxed)",
631
+ /** 2 */ LOOSE = "var(--line-height-loose)",
632
+ /** 0.75rem (12px) */ _3 = "var(--line-height-3)",
633
+ /** 1rem (16px) */ _4 = "var(--line-height-4)",
634
+ /** 1.25rem (20px) */ _5 = "var(--line-height-5)",
635
+ /** 1.5rem (24px) */ _6 = "var(--line-height-6)",
636
+ /** 1.75rem (28px) */ _7 = "var(--line-height-7)",
637
+ /** 2rem (32px) */ _8 = "var(--line-height-8)",
638
+ /** 2.25rem (36px) */ _9 = "var(--line-height-9)",
639
+ /** 2.5rem (40px) */ _10 = "var(--line-height-10)"
640
+ }
641
+ declare enum SHADOWS {
642
+ /** 0 1px 2px 0 rgba(0, 0, 0, 0.05) */ "2XS" = "var(--shadow-2xs)",
643
+ /** 0 1px 2px 0 rgba(0, 0, 0, 0.05) */ XS = "var(--shadow-xs)",
644
+ /** 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06) */ SM = "var(--shadow-sm)",
645
+ /** 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06) */ MD = "var(--shadow-md)",
646
+ /** 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) */ LG = "var(--shadow-lg)",
647
+ /** 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) */ XL = "var(--shadow-xl)",
648
+ /** 0 25px 50px -12px rgba(0, 0, 0, 0.25) */ "2XL" = "var(--shadow-2xl)",
649
+ /** inset 0 2px 4px 0 rgb(0 0 0 / 0.06) */ INNER = "var(--shadow-inner)",
650
+ /** none */ NONE = "var(--shadow-none)"
651
+ }
652
+ declare enum INSET_SHADOWS {
653
+ }
654
+ declare enum DROP_SHADOWS {
655
+ }
656
+ declare enum TEXT_SHADOWS {
657
+ }
658
+ declare enum SPACERS {
659
+ /** 48px */ "2XL" = "var(--spacer-2xl)",
660
+ /** 32px */ XL = "var(--spacer-xl)",
661
+ /** 24px */ LG = "var(--spacer-lg)",
662
+ /** 16px */ MD = "var(--spacer-md)",
663
+ /** 12px */ SM = "var(--spacer-sm)",
664
+ /** 8px */ XS = "var(--spacer-xs)",
665
+ /** 4px */ "2XS" = "var(--spacer-2xs)"
666
+ }
667
+ declare enum RADIUS {
668
+ /** 0px */ NONE = "var(--radius-none)",
669
+ /** */ XS = "var(--radius-xs)",
670
+ /** 0.125rem (2px) */ SM = "var(--radius-sm)",
671
+ /** 0.25rem (4px) */ DEFAULT = "var(--radius)",
672
+ /** 0.375rem (6px) */ MD = "var(--radius-md)",
673
+ /** 0.5rem (8px) */ LG = "var(--radius-lg)",
674
+ /** 0.75rem (12px) */ XL = "var(--radius-xl)",
675
+ /** 1rem (16px) */ "2XL" = "var(--radius-2xl)",
676
+ /** 1.5rem (24px) */ "3XL" = "var(--radius-3xl)",
677
+ /** */ "4XL" = "var(--radius-4xl)",
678
+ /** 9999px */ FULL = "var(--radius-full)"
679
+ }
680
+ declare enum LAYOUTS {
681
+ /** 600px */ MAIN_DEFAULT = "var(--main-default)",
682
+ /** 800px */ MAIN_LARGE = "var(--main-large)",
683
+ /** 400px */ MAIN_FORM = "var(--main-form)",
684
+ /** 100% */ MAIN_FULL = "var(--main-full)",
685
+ /** 250px */ ASIDE_DEFAULT = "var(--aside-default)",
686
+ /** 200px */ ASIDE_SMALL = "var(--aside-small)"
687
+ }
688
+ declare enum TRANSITIONS {
689
+ /** all 200ms ease */ SHORT = "var(--transition-short)",
690
+ /** all 500ms ease */ LONG = "var(--transition-long)",
691
+ /** all 500ms cubic-bezier(0.25, 0.75, 0, 0.66) */ BEZIER = "var(--transition-bezier)"
692
+ }
693
+ declare enum MEDIA {
694
+ BREAKPOINT_TABLET_LARGE = "(max-width: 1024px)",
695
+ BREAKPOINT_TABLET_SMALL = "(max-width: 768px)",
696
+ BREAKPOINT_MOBILE = "(max-width: 600px)",
697
+ TOUCH = "(hover: none) and (pointer: coarse)",
698
+ HOVER = "(hover: hover)",
699
+ PREFERS_LIGHT = "(prefers-color-scheme: light)",
700
+ PREFERS_DARK = "(prefers-color-scheme: dark)"
701
+ }
702
+ declare const ICON_MULTIPLIER: 0.6;
703
+ declare const INPUT_HEIGHT: 32;
704
+
705
+ type ILibThemeContext = {
706
+ theme: LibThemeNames;
707
+ setTheme: DispatchState<LibThemeNames>;
708
+ switchTheme: () => void;
709
+ };
710
+ interface ILibThemeProvider {
711
+ children?: ReactChildren;
712
+ }
713
+ declare const ThemeProviderWrapper: ({ children }: ILibThemeProvider) => react_jsx_runtime.JSX.Element;
714
+ /**
715
+ * Custom hook to access the theme context.
716
+ *
717
+ * @returns {ILibThemeContext} The current theme, a setter for the theme, and a function to toggle between light and dark themes.
718
+ * @example
719
+ * const { theme, setTheme, switchTheme } = useLibTheme()
720
+ */
721
+ declare const useLibTheme: () => ILibThemeContext;
722
+
723
+ declare const TEXT_BASE_CLASSES: string;
724
+ /**
725
+ * Text component for rendering semantic HTML text elements with consistent styles.
726
+ *
727
+ * Renders the appropriate semantic element based on the `tag` prop, such as headings, paragraphs, lists, blockquotes, etc.
728
+ *
729
+ * @component
730
+ * @example
731
+ * <Text tag="h2">Section title</Text>
732
+ * <Text tag="p">Paragraph content</Text>
733
+ * <Text tag="ul">
734
+ * <li>Item 1</li>
735
+ * <li>Item 2</li>
736
+ * </Text>
737
+ *
738
+ * @extends HTMLHeadingElement & HTMLParagraphElement & HTMLQuoteElement & HTMLDListElement & HTMLOListElement & HTMLUListElement
739
+ *
740
+ * @prop {object} props - Component props.
741
+ * @prop {ElementType} [props.element="p"] - The HTML element or React component to render.
742
+ * @prop {"h1"|"h2"|"h3"|"h4"|"h5"|"h6"|"p"|"small"|"strong"|"em"|"blockquote"|"ul"|"ol"|"dl"} [props.tag="p"] - The semantic HTML tag to render.
743
+ * @prop {string} [props.color="currentColor"] - Any color from the library.
744
+ * @prop {"red"|"orange"|"amber"|"yellow"|"lime"|"green"|"emerald"|"teal"|"cyan"|"sky"|"blue"|"indigo"|"violet"|"purple"|"fuchsia"|"pink"|"rose"|"slate"} [props.linkColor="blue"] - Any hover color.
745
+ * @prop {"text-left"|"text-center"|"text-right"|"text-justify"|"text-start"|"text-end"} [props.textAlign="left"] - Text alignment.
746
+ * @prop {boolean} [props.display=false] - Whether to use display block.
747
+ * @prop {string} [props.className] - Additional class names to apply.
748
+ * @prop {RefObject<any>} [props.ref] - Ref for the rendered element.
749
+ * @prop {ReactNode} props.children - Text content.
750
+ * @prop {object} [props.rest] - Additional props spread to the rendered element.
751
+ *
752
+ * @returns {JSX.Element} The rendered text element.
753
+ *
754
+ * @see https://doc-julseb-lib-react.vercel.app/styles/text
755
+ */
756
+ declare const Text: FC$1<ILibText>;
757
+
758
+ /**
759
+ * Wrapper component for providing a responsive layout container.
760
+ *
761
+ * @component
762
+ * @example
763
+ * <Wrapper>
764
+ * <Main>Content</Main>
765
+ * </Wrapper>
766
+ *
767
+ * @extends HTMLDivElement
768
+ *
769
+ * @prop {object} props - Component props.
770
+ * @prop {string} [props.className] - Additional class names to apply.
771
+ * @prop {ElementType} [props.element="section"] - The HTML element or React component to render as the wrapper container.
772
+ * @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the wrapper container.
773
+ * @prop {ReactNode} props.children - Wrapper content.
774
+ * @prop {"px"|"full"|"screen"|"dvh"|"dvw"|"lvh"|"lvw"|"svw"|"svh"|"auto"|"min"|"max"|"fit"|"lh"|} [props.minHeight="svh"] - Minimum height class (uses Tailwind min-h-* utilities).
775
+ * @prop {string} [props.backgroundColor="background"] - Any color from the library.
776
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.gap="lg"] - Gap between children (uses library spacers).
777
+ * @prop {object} [props.rest] - Additional props spread to the container.
778
+ *
779
+ * @returns {JSX.Element} The rendered wrapper container.
780
+ *
781
+ * @see https://doc-julseb-lib-react.vercel.app/styles/wrapper
782
+ */
783
+ declare const Wrapper: FC$1<ILibWrapper>;
784
+
785
+ /**
786
+ * Main component for rendering the primary content area.
787
+ *
788
+ * @component
789
+ *
790
+ * @example
791
+ * <Main size="large" gap="xl" backgroundColor="white">
792
+ * <p>Main content</p>
793
+ * </Main>
794
+ *
795
+ * @prop {object} props - Component props.
796
+ * @prop {string} [props.className] - Additional class names to apply.
797
+ * @prop {ElementType} [props.element="main"] - The HTML element or React component to render as the main container.
798
+ * @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the main container.
799
+ * @prop {ReactNode} props.children - Main content.
800
+ * @prop {"default"|"large"|"form"} [props.size="default"] - Main width size.
801
+ * @prop {string} [props.backgroundColor="white"] - Any color from the library.
802
+ * @prop {"2xl"|"xl"|"lg"|"md"|"sm"|"xs"|"2xs"} [props.gap="lg"] - Gap between children (uses spacer tokens).
803
+ * @prop {object} [props.rest] - Additional props spread to the container.
804
+ *
805
+ * @returns {JSX.Element} The rendered main container.
806
+ *
807
+ * @see https://doc-julseb-lib-react.vercel.app/styles/main
808
+ */
809
+ declare const Main: FC$1<ILibMain>;
810
+
811
+ /**
812
+ * Aside component for rendering a sidebar or secondary content area.
813
+ *
814
+ * @component
815
+ * @example
816
+ * <Aside size="small" backgroundColor="white">
817
+ * <p>Sidebar content</p>
818
+ * </Aside>
819
+ *
820
+ * @prop {object} props - Component props.
821
+ * @prop {string} [props.className] - Additional class names to apply.
822
+ * @prop {ElementType} [props.element="aside"] - The HTML element or React component to render as the aside container.
823
+ * @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the aside container.
824
+ * @prop {ReactNode} props.children - Aside content.
825
+ * @prop {"default"|"small"} [props.size="default"] - Aside width size.
826
+ * @prop {string} [props.backgroundColor="white"] - Any color from the library.
827
+ * @prop {object} [props.rest] - Additional props spread to the container.
828
+ *
829
+ * @returns {JSX.Element} The rendered aside container.
830
+ *
831
+ * @see https://doc-julseb-lib-react.vercel.app/styles/aside
832
+ */
833
+ declare const Aside: FC$1<ILibAside>;
834
+
835
+ /**
836
+ * Section component for grouping related content in a flexible layout.
837
+ *
838
+ * @component
839
+ * @example
840
+ * <Section gap="lg">
841
+ * <h2>Section title</h2>
842
+ * <p>Section content</p>
843
+ * </Section>
844
+ *
845
+ * @prop {object} props - Component props.
846
+ * @prop {string} [props.className] - Additional class names to apply.
847
+ * @prop {ElementType} [props.element="section"] - The HTML element or React component to render as the section container.
848
+ * @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the section container.
849
+ * @prop {ReactNode} props.children - Section content.
850
+ * @prop {"2xl"|"xl"|"lg"|"md"|"sm"|"xs"|"2xs"|"0px"} [props.gap="md"] - Gap between children (uses spacer tokens).
851
+ * @prop {object} [props.rest] - Additional props spread to the container.
852
+ *
853
+ * @returns {JSX.Element} The rendered section container.
854
+ *
855
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/section
856
+ */
857
+ declare const Section: FC$1<ILibSection>;
858
+
859
+ /**
860
+ * Grid component for flexible CSS grid layouts.
861
+ *
862
+ * @component
863
+ * @example
864
+ * <Grid cols={3} gap="md">
865
+ * <div>Item 1</div>
866
+ * <div>Item 2</div>
867
+ * <div>Item 3</div>
868
+ * </Grid>
869
+ *
870
+ * @prop {object} props - Component props.
871
+ * @prop {string} [props.className] - Additional class names to apply.
872
+ * @prop {ElementType} [props.element="div"] - The HTML element or React component to render as the grid container.
873
+ * @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the grid container.
874
+ * @prop {ReactNode} props.children - Grid content.
875
+ * @prop {boolean} [props.inline] - Use inline-grid instead of grid.
876
+ * @prop {1|2|3|4|5|6|7|8|9|10|11|12} [props.cols=1] - Number of columns (1-12).
877
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.gap="0px"] - Gap between rows and columns (can use spacer tokens).
878
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.rowGap="0px"] - Row gap (can use spacer tokens).
879
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.colGap="0px"] - Column gap (can use spacer tokens).
880
+ * @prop {"start"|"end"|"end-safe"|"center"|"center-sage"|"space-between"|"space-around"|"space-evenly"|"stretch"|"baseline"|"normal"} [props.justifyContent="start"] - Justify content property.
881
+ * @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"stretch"|"normal"} [props.justifyItems="stretch"] - Justify items property.
882
+ * @prop {"normal"|"center"|"start"|"end"|"space-between"|"space-around"|"space-evenly"|"baseline"|"stretch"} [props.alignContent="start"] - Align content property.
883
+ * @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"baseline"|"baseline-start"|"stretch"} [props.alignItems="stretch"] - Align items property.
884
+ * @prop {object} [props.rest] - Additional props spread to the container.
885
+ *
886
+ * @returns {JSX.Element} The rendered grid container.
887
+ *
888
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/grid
889
+ */
890
+ declare const Grid: FC$1<ILibGrid>;
891
+
892
+ /**
893
+ * Flexbox component for flexible layouts using CSS flexbox.
894
+ *
895
+ * @component
896
+ * @example
897
+ * <Flexbox flexDirection="row" gap="md">
898
+ * <div>Item 1</div>
899
+ * <div>Item 2</div>
900
+ * </Flexbox>
901
+ *
902
+ * @prop {object} props - Component props.
903
+ * @prop {string} [props.className] - Additional class names to apply.
904
+ * @prop {ElementType} [props.element="div"] - The HTML element or React component to render as the flex container.
905
+ * @prop {RefObject<HTMLDivElement>} [props.ref] - Ref for the flex container.
906
+ * @prop {ReactNode} props.children - Flexbox content.
907
+ * @prop {boolean} [props.inline] - Use inline-flex instead of flex.
908
+ * @prop {"row"|"row-reverse"|"col"|"col-reverse"} [props.flexDirection="row"] - Flex direction.
909
+ * @prop {"nowrap"|"wrap"|"wrap-reverse"} [props.flexWrap="nowrap"] - Flex wrap.
910
+ * @prop {"start"|"end"|"end-safe"|"center"|"center-sage"|"space-between"|"space-around"|"space-evenly"|"stretch"|"baseline"|"normal"} [props.justifyContent="start"] - Justify content property.
911
+ * @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"baseline"|"baseline-start"|"stretch"} [props.alignItems="stretch"] - Align items property.
912
+ * @prop {"start"|"end"|"end-safe"|"center"|"center-safe"|"stretch"|"normal"} [props.justifyItems="stretch"] - Justify items property.
913
+ * @prop {"normal"|"center"|"start"|"end"|"space-between"|"space-around"|"space-evenly"|"baseline"|"stretch"} [props.alignContent="normal"] - Align content property.
914
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.gap="0px"] - Gap between items (can use spacer tokens).
915
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.colGap="0px"] - Column gap (can use spacer tokens).
916
+ * @prop {"2xs"|"xs"|"sm"|"md"|"lg"|"xl"|"2xl"|"0px"} [props.rowGap="0px"] - Row gap (can use spacer tokens).
917
+ * @prop {object} [props.rest] - Additional props spread to the container.
918
+ *
919
+ * @returns {JSX.Element} The rendered flexbox container.
920
+ *
921
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/flexbox
922
+ */
923
+ declare const Flexbox: FC$1<ILibFlexbox>;
924
+
925
+ /**
926
+ * Key component for displaying keyboard keys or shortcuts.
927
+ *
928
+ * @component
929
+ *
930
+ * @example
931
+ * <Key keys={["Ctrl", "C"]} size="large" accentColor="blue" />
932
+ *
933
+ * @prop {Array<string>} keys - The list of keys to display.
934
+ * @prop {boolean} [withSeparator] - If true, displays a separator between keys.
935
+ * @prop {"default" | "large" | "form"} [size] - The size of the key component.
936
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray"} [accentColor] - Accent color for the key, excluding black, white, transparent, background, and current.
937
+ *
938
+ * @returns {JSX.Element} The rendered Key component.
939
+ *
940
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/key
941
+ */
942
+ declare const Key: FC$1<ILibKey>;
943
+
944
+ /**
945
+ * Highlight component for emphasizing parts of text.
946
+ *
947
+ * @component
948
+ *
949
+ * @example
950
+ * <Highlight highlightedText="important" highlightClasses="bg-yellow-200" />
951
+ *
952
+ * @prop {string} highlightedText - The substring to highlight within the children.
953
+ * @prop {CSSProperties} [highlightStyle] - Inline style to apply to the highlighted text.
954
+ * @prop {string} [highlightClasses] - Additional class names to apply to the highlighted text.
955
+ *
956
+ * @returns {JSX.Element} The rendered Highlight component.
957
+ *
958
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/highlight
959
+ */
960
+ declare const Highlight: FC$1<ILibHighlight>;
961
+
962
+ /**
963
+ * Linkify component that automatically detects URLs in the provided text and wraps them in anchor tags.
964
+ *
965
+ * @component
966
+ *
967
+ * @example
968
+ * <Linkify>
969
+ * Visit https://github.com for more information.
970
+ * </Linkify>
971
+ *
972
+ * @extends ILibText
973
+ *
974
+ * @prop {string} [props.className] - Additional class names to apply to the container element.
975
+ * @prop {ElementType} [props.element=Text] - The HTML element or React component to render as the container. Default is `Text`.
976
+ * @prop {RefObject<HTMLHeadingElement | HTMLParagraphElement | HTMLQuoteElement | HTMLDListElement | HTMLOListElement | HTMLUListElement>} [props.ref] - Ref for the container element.
977
+ * @prop {string} props.children - The text content to parse and linkify.
978
+ * @prop {boolean} [props.blank] - If true, links open in a new tab (`_blank`). Default is `false`.
979
+ * @prop {string} [props.linkClasses] - Additional class names to apply to the generated anchor tags.
980
+ * @prop {object} [props.rest] - Additional props spread to the container element.
981
+ *
982
+ * @returns {ReactElement} The rendered Linkify component with URLs converted to clickable links.
983
+ *
984
+ * @see https://doc-julseb-lib-react.vercel.app/components/linkify
985
+ */
986
+ declare const Linkify: FC$1<ILibLinkify>;
987
+
988
+ /**
989
+ * Hr component for rendering a horizontal rule with custom color, width, and border radius.
990
+ *
991
+ * @component
992
+ *
993
+ * @example
994
+ * <Hr maxWidth="lg" color="gray-200" isRounded />
995
+ *
996
+ * @extends HTMLHrElement
997
+ *
998
+ * @prop {"3xs" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "6xl" | "7xl" | "none" | "px" | "full" | "dvw" | "dvh" | "lvw" | "lvh" | "svw" | "svh" | "screen" | "min" | "max" | "fit"} [maxWidth="full"] - Maximum width of the hr.
999
+ * @prop {string} [color="gray-200"] - Background color of the hr.
1000
+ * @prop {boolean} [isRounded] - If true, the hr will have fully rounded borders.
1001
+ *
1002
+ * @returns {JSX.Element} The rendered Hr component.
1003
+ *
1004
+ * @see https://doc-julseb-lib-react.vercel.app/components/hr
1005
+ */
1006
+ declare const Hr: FC$1<ILibHr>;
1007
+
1008
+ /**
1009
+ * Skeleton component for displaying a loading placeholder.
1010
+ *
1011
+ * @component
1012
+ * @extends HTMLDivElement
1013
+ *
1014
+ * @example
1015
+ * <Skeleton backgroundColor="gray-100" borderRadius="lg" animation="pulse" />
1016
+ *
1017
+ * @prop {LibAllColors} [backgroundColor] - Background color of the skeleton.
1018
+ * @prop {LibRadiuses} [borderRadius] - Border radius of the skeleton.
1019
+ * @prop {LibSkeletonAnimation} [animation] - Animation style for the skeleton. Possible values: "pulse", "shine".
1020
+ *
1021
+ * @returns {JSX.Element} The rendered Skeleton component.
1022
+ *
1023
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/skeleton
1024
+ */
1025
+ declare const Skeleton: FC$1<ILibSkeleton>;
1026
+
1027
+ /**
1028
+ * SkeletonCard component for displaying a loading placeholder in the shape of a card.
1029
+ *
1030
+ * @component
1031
+ * @extends HTMLDivElement
1032
+ *
1033
+ * @example
1034
+ * <SkeletonCard isShiny backgroundColor="gray-100" borderRadius="lg" gap="md" />
1035
+ *
1036
+ * @prop {boolean} [inline] - Use inline-flex instead of flex for the skeleton card.
1037
+ * @prop {CssFlexDirection} [flexDirection] - Flex direction for the skeleton card content.
1038
+ * @prop {CssFlexWrap} [flexWrap] - Flex wrap for the skeleton card content.
1039
+ * @prop {CssJustifyContent} [justifyContent] - Justify content property for the skeleton card content.
1040
+ * @prop {CssAlignItems} [alignItems] - Align items property for the skeleton card content.
1041
+ * @prop {CssJustifyItems} [justifyItems] - Justify items property for the skeleton card content.
1042
+ * @prop {CssAlignContent} [alignContent] - Align content property for the skeleton card content.
1043
+ * @prop {LibSpacers} [gap] - Gap between skeleton card children.
1044
+ * @prop {LibSpacers} [colGap] - Column gap between skeleton card children.
1045
+ * @prop {LibSpacers} [rowGap] - Row gap between skeleton card children.
1046
+ * @prop {LibAllColors} [backgroundColor] - Background color of the skeleton card.
1047
+ * @prop {LibRadiuses} [borderRadius] - Border radius of the skeleton card.
1048
+ * @prop {boolean} [isShiny] - If true, applies a shiny animation to the skeleton card.
1049
+ *
1050
+ * @returns {JSX.Element} The rendered SkeletonCard component.
1051
+ *
1052
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/skeletoncard
1053
+ */
1054
+ declare const SkeletonCard: FC<ILibSkeletonCard>;
1055
+
1056
+ /**
1057
+ * Tooltip component for displaying contextual information on hover or click interactions.
1058
+ *
1059
+ * @component
1060
+ *
1061
+ * @example
1062
+ * <Tooltip
1063
+ * tooltip="This is a helpful tooltip"
1064
+ * position="top"
1065
+ * trigger="hover"
1066
+ * backgroundColor="black-80"
1067
+ * textColor="white"
1068
+ * >
1069
+ * <button>Hover me</button>
1070
+ * </Tooltip>
1071
+ *
1072
+ * @extends HTMLDivElement
1073
+ *
1074
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tooltip container.
1075
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
1076
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tooltip container element.
1077
+ * @prop {React.ReactNode} [props.children] - The element that triggers the tooltip on interaction.
1078
+ * @prop {string} [props.tooltip] - The tooltip text content to display.
1079
+ * @prop {"top" | "bottom" | "left" | "right"} [props.position="top"] - Position of the tooltip relative to the trigger element.
1080
+ * @prop {boolean} [props.hideArrow] - Whether to hide the tooltip arrow pointer.
1081
+ * @prop {"hover" | "click"} [props.trigger="hover"] - Event that triggers the tooltip display.
1082
+ * @prop {LibAllColorsAndOverlays} [props.backgroundColor="black-80"] - Background color for the tooltip.
1083
+ * @prop {LibAllColors} [props.textColor="white"] - Text color for the tooltip content.
1084
+ * @prop {LibSpacers} [props.offset="xs"] - Distance offset between tooltip and trigger element.
1085
+ * @prop {string} [props.tooltipClasses] - Additional CSS classes for the tooltip element.
1086
+ * @prop {React.CSSProperties} [props.tooltipStyle] - Additional inline styles for the tooltip element.
1087
+ * @prop {function} [props.onClick] - Click event handler for the trigger element.
1088
+ * @prop {function} [props.onMouseEnter] - Mouse enter event handler for the trigger element.
1089
+ * @prop {function} [props.onMouseLeave] - Mouse leave event handler for the trigger element.
1090
+ *
1091
+ * @returns {JSX.Element} The rendered Tooltip component.
1092
+ *
1093
+ * @see https://doc-julseb-lib-react.vercel.app/components/tooltip
1094
+ */
1095
+ declare const Tooltip: FC$1<ILibTooltip>;
1096
+
1097
+ /**
1098
+ * Image component for displaying images with optional styling, captions, and accessibility features.
1099
+ *
1100
+ * @component
1101
+ *
1102
+ * @example
1103
+ * <Image src="https://example.com/image.jpg" alt="Example image" borderRadius="lg" fit="cover" caption="Example caption" />
1104
+ *
1105
+ * @extends HTMLImageElement
1106
+ *
1107
+ * @prop {string} [className] - Additional class names to apply to the image or figure element.
1108
+ * @prop {React.RefObject<HTMLImageElement | HTMLFigureElement>} [ref] - Ref for the image or figure element.
1109
+ * @prop {string | { text: string, backgroundColor?: LibAllColorsAndOverlays, textColor?: LibAllColors, imgClasses?: string, captionClasses?: string }} [caption] - Caption for the image. Can be a string or an object with text and optional styling.
1110
+ * @prop {LibRadiuses} [borderRadius] - Border radius for the image or figure.
1111
+ * @prop {"contain" | "cover" | "fill" | "none" | "scale-down"} [fit] - How the image should fit within its container.
1112
+ *
1113
+ * @returns {JSX.Element} The rendered Image component.
1114
+ *
1115
+ * @see https://doc-julseb-lib-react.vercel.app/layouts/image
1116
+ */
1117
+ declare const Image: FC$1<ILibImage>;
1118
+
1119
+ /**
1120
+ * Masonry component for displaying content in a responsive masonry grid layout.
1121
+ *
1122
+ * @component
1123
+ *
1124
+ * @example
1125
+ * <Masonry col={3} gap="md">
1126
+ * <div>Item 1</div>
1127
+ * <div>Item 2</div>
1128
+ * <div>Item 3</div>
1129
+ * </Masonry>
1130
+ *
1131
+ * @extends HTMLDivElement
1132
+ *
1133
+ * @prop {string} [props.className] - Additional class names to apply.
1134
+ * @prop {ElementType} [props.element="div"] - The HTML element or React component to render as the container.
1135
+ * @prop {React.RefObject<HTMLDivElement>} [props.ref] - Ref for the container element.
1136
+ * @prop {React.ReactNode[]} [props.children=[]] - The content to display in the masonry grid.
1137
+ * @prop {number} [props.col=4] - Number of columns in the masonry grid.
1138
+ * @prop {"2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl"} [props.gap="lg"] - Gap between grid items.
1139
+ *
1140
+ * @returns {JSX.Element} The rendered Masonry component.
1141
+ *
1142
+ * @see https://doc-julseb-lib-react.vercel.app/components/masonry
1143
+ */
1144
+ declare const Masonry: FC$1<ILibMasonry>;
1145
+
1146
+ /**
1147
+ * Badge component for displaying a colored label or status.
1148
+ *
1149
+ * @component
1150
+ *
1151
+ * @example
1152
+ * <Badge backgroundColor="primary" contentColor="white" borderRadius="full">New</Badge>
1153
+ *
1154
+ * @extends HTMLSpanElement
1155
+ *
1156
+ * @prop {string} [props.className] - Additional CSS classes to apply to the badge.
1157
+ * @prop {keyof JSX.IntrinsicElements} [props.element="span"] - The HTML element to render as the badge.
1158
+ * @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the badge element.
1159
+ * @prop {React.ReactNode} [props.children] - Content to display inside the badge.
1160
+ * @prop {LibAllColors} [props.color="primary"] - Background color of the badge.
1161
+ * @prop {LibAllColors} [props.contentColor="white"] - Text color of the badge.
1162
+ * @prop {LibRadius} [props.borderRadius="full"] - Border radius of the badge.
1163
+ * @prop {any} [props.rest] - Additional props spread to the badge element.
1164
+ *
1165
+ * @returns {JSX.Element} The rendered Badge component.
1166
+ *
1167
+ * @see https://doc-julseb-lib-react.vercel.app/components/badge
1168
+ */
1169
+ declare const Badge: FC$1<ILibBadge>;
1170
+
1171
+ /**
1172
+ * Avatar component for displaying a user image, initials, or icon, with optional badge and custom styles.
1173
+ *
1174
+ * @component
1175
+ *
1176
+ * @example
1177
+ * <Avatar backgroundColor="primary" contentColor="white" borderRadius="full" badge="New">JS</Avatar>
1178
+ *
1179
+ * @extends HTMLSpanElement
1180
+ *
1181
+ * @prop {string} [props.className] - Additional CSS classes to apply to the avatar.
1182
+ * @prop {keyof JSX.IntrinsicElements} [props.element="span"] - The HTML element to render as the avatar.
1183
+ * @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the avatar element.
1184
+ * @prop {React.ReactNode} [props.children] - Content to display inside the avatar (image, initials, or icon).
1185
+ * @prop {string | { content?: React.ReactNode; backgroundColor?: string; contentColor?: string; className?: string }} [props.badge] - Badge to display on the avatar, can be a string or an object with content and colors.
1186
+ * @prop {React.CSSProperties} [props.containerStyle] - Inline styles for the avatar container.
1187
+ * @prop {string} [props.containerClassName] - Additional CSS classes for the avatar container.
1188
+ * @prop {string} [props.borderRadius] - Border radius of the avatar.
1189
+ * @prop {string} [props.borderColor] - Border color of the avatar.
1190
+ * @prop {string} [props.backgroundColor] - Background color of the avatar.
1191
+ * @prop {string} [props.contentColor] - Text color of the avatar.
1192
+ * @prop {any} [props.rest] - Additional props spread to the avatar element.
1193
+ *
1194
+ * @returns {JSX.Element} The rendered Avatar component.
1195
+ *
1196
+ * @see https://doc-julseb-lib-react.vercel.app/components/avatar
1197
+ */
1198
+ declare const Avatar: FC$1<ILibAvatar>;
1199
+
1200
+ /**
1201
+ * Loader component for displaying a loading indicator with multiple style variants and color options.
1202
+ *
1203
+ * @component
1204
+ *
1205
+ * @example
1206
+ * <Loader variant={2} color="primary" />
1207
+ *
1208
+ * @extends HTMLSpanElement
1209
+ *
1210
+ * @prop {1 | 2 | 3} [props.variant=1] Possible values: 1, 2, 3. - Loader variant style.
1211
+ * @prop {string} [props.color="primary"] Any color from the library. - Loader color.
1212
+ * @prop {string} [props.className] - Additional CSS classes to apply to the loader.
1213
+ * @prop {keyof JSX.IntrinsicElements} [props.element="span"] - The HTML element to render as the loader.
1214
+ * @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the loader element.
1215
+ * @prop {any} [props.rest] - Additional props spread to the loader element.
1216
+ *
1217
+ * @returns {JSX.Element} The rendered Loader component.
1218
+ *
1219
+ * @see https://doc-julseb-lib-react.vercel.app/components/loader
1220
+ */
1221
+ declare const Loader: FC$1<ILibLoader>;
1222
+
1223
+ /**
1224
+ * Burger component for displaying a hamburger menu icon with open/closed states and hover effects.
1225
+ *
1226
+ * @component
1227
+ *
1228
+ * @example
1229
+ * <Burger
1230
+ * isOpen={isMenuOpen}
1231
+ * color="primary"
1232
+ * onClick={toggleMenu}
1233
+ * />
1234
+ *
1235
+ * @extends HTMLButtonElement
1236
+ *
1237
+ * @prop {string} [props.className] - Additional CSS classes to apply to the burger.
1238
+ * @prop {keyof JSX.IntrinsicElements} [props.element="button"] - The HTML element to render as the burger.
1239
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the burger element.
1240
+ * @prop {string} [props.role="button"] - ARIA role for accessibility.
1241
+ * @prop {string} [props.aria-label="Burger"] - ARIA label for accessibility.
1242
+ * @prop {boolean} [props.isOpen] - Whether the burger menu is open or closed.
1243
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color of the burger lines.
1244
+ * @prop {string} [props.type="button"] - Button type attribute.
1245
+ * @prop {boolean} [props.noHover] - Whether to disable hover effects.
1246
+ * @prop {any} [props.rest] - Additional props spread to the burger element.
1247
+ *
1248
+ * @returns {JSX.Element} The rendered Burger component.
1249
+ *
1250
+ * @see https://doc-julseb-lib-react.vercel.app/components/burger
1251
+ */
1252
+ declare const Burger: FC$1<ILibBurger>;
1253
+
1254
+ /**
1255
+ * Button component for user interactions with multiple variants, colors, and loading states.
1256
+ *
1257
+ * @component
1258
+ *
1259
+ * @example
1260
+ * <Button variant="plain" color="primary" size="default">Click me</Button>
1261
+ *
1262
+ * @extends HTMLButtonElement
1263
+ *
1264
+ * @prop {string} [props.className] - Additional CSS classes to apply to the button.
1265
+ * @prop {keyof JSX.IntrinsicElements} [props.element="button"] - The HTML element to render as the button.
1266
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
1267
+ * @prop {React.ReactNode} [props.children] - Content to display inside the button.
1268
+ * @prop {"plain" | "ghost" | "outline" | "transparent"} [props.variant="plain"] - Button variant style.
1269
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Button color theme.
1270
+ * @prop {"default" | "small"} [props.size="default"] - Button size.
1271
+ * @prop {boolean} [props.isLoading] - Whether the button is in a loading state.
1272
+ * @prop {1 | 2 | 3} [props.loaderVariant] - Loader variant to display when loading.
1273
+ * @prop {boolean} [props.disabled] - Whether the button is disabled.
1274
+ * @prop {any} [props.rest] - Additional props spread to the button element.
1275
+ *
1276
+ * @returns {JSX.Element} The rendered Button component.
1277
+ *
1278
+ * @see https://doc-julseb-lib-react.vercel.app/components/button
1279
+ */
1280
+ declare const Button: FC$1<ILibButton>;
1281
+
1282
+ /**
1283
+ * ButtonIcon component for displaying an icon button with optional tooltip and loading states.
1284
+ *
1285
+ * @component
1286
+ *
1287
+ * @example
1288
+ * <ButtonIcon
1289
+ * icon={<BiUser />}
1290
+ * color="primary"
1291
+ * variant="plain"
1292
+ * tooltip="User profile"
1293
+ * showTooltip
1294
+ * />
1295
+ *
1296
+ * @extends HTMLButtonElement
1297
+ *
1298
+ * @prop {string} [props.className] - Additional CSS classes to apply to the button.
1299
+ * @prop {keyof JSX.IntrinsicElements} [props.element="button"] - The HTML element to render as the button.
1300
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
1301
+ * @prop {React.ReactNode} [props.icon] - Icon element to display inside the button.
1302
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Button color theme.
1303
+ * @prop {string} [props.borderRadius="full"] - Border radius of the button.
1304
+ * @prop {"plain" | "ghost" | "outline" | "transparent"} [props.variant="plain"] - Button variant style.
1305
+ * @prop {boolean} [props.isLoading] - Whether the button is in a loading state.
1306
+ * @prop {1 | 2 | 3} [props.loaderVariant=1] - Loader variant to display when loading.
1307
+ * @prop {string} [props.loaderClasses] - Additional CSS classes for the loader.
1308
+ * @prop {string} [props.tooltip] - Tooltip text to display.
1309
+ * @prop {boolean | object} [props.showTooltip] - Whether to show tooltip or tooltip configuration object.
1310
+ * @prop {React.CSSProperties} [props.containerStyle] - Inline styles for the container.
1311
+ * @prop {string} [props.containerClasses] - Additional CSS classes for the container.
1312
+ * @prop {string} [props.aria-label] - ARIA label for accessibility, defaults to tooltip value.
1313
+ * @prop {string} [props.type="button"] - Button type attribute.
1314
+ * @prop {any} [props.rest] - Additional props spread to the button element.
1315
+ *
1316
+ * @returns {JSX.Element} The rendered ButtonIcon component.
1317
+ *
1318
+ * @see https://doc-julseb-lib-react.vercel.app/components/button-icon
1319
+ */
1320
+ declare const ButtonIcon: FC$1<ILibButtonIcon>;
1321
+
1322
+ /**
1323
+ * ButtonGroup component for displaying a group of related buttons with consistent styling and optional separators.
1324
+ *
1325
+ * @component
1326
+ *
1327
+ * @example
1328
+ * <ButtonGroup
1329
+ * buttons={[
1330
+ * { id: "1", buttonContent: "Save" },
1331
+ * { id: "2", buttonContent: "Cancel" }
1332
+ * ]}
1333
+ * variant="plain"
1334
+ * color="primary"
1335
+ * />
1336
+ *
1337
+ * @extends ILibFlexbox
1338
+ *
1339
+ * @prop {string} [props.className] - Additional CSS classes to apply to the button group.
1340
+ * @prop {React.ComponentType} [props.element=Flexbox] - The component to render as the container element.
1341
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the button group element.
1342
+ * @prop {React.ReactNode} [props.children] - Content to display inside the button group when not using buttons prop.
1343
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color theme for the button group.
1344
+ * @prop {"plain" | "ghost" | "outline" | "transparent"} [props.variant="plain"] - Visual variant style of the button group.
1345
+ * @prop {string} [props.borderRadius="md"] - Border radius of the button group container.
1346
+ * @prop {"default" | "small"} [props.size="default"] - Size of the buttons in the group.
1347
+ * @prop {Array<LibButtonGroupButtonItem>} [props.buttons] - Array of button items to render in the group.
1348
+ * @prop {any} [props.rest] - Additional props spread to the container element.
1349
+ *
1350
+ * @returns {JSX.Element} The rendered ButtonGroup component.
1351
+ *
1352
+ * @see https://doc-julseb-lib-react.vercel.app/components/button-group
1353
+ */
1354
+ declare const ButtonGroup: FC$1<ILibButtonGroup>;
1355
+
1356
+ /**
1357
+ * Tag component for displaying labeled content with customizable colors, variants, and styling options.
1358
+ *
1359
+ * @component
1360
+ *
1361
+ * @example
1362
+ * <Tag color="primary" variant="plain">
1363
+ * New Feature
1364
+ * </Tag>
1365
+ * <Tag color="success" variant="outline" borderRadius="md">
1366
+ * Approved
1367
+ * </Tag>
1368
+ *
1369
+ * @extends HTMLSpanElement
1370
+ *
1371
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tag container.
1372
+ * @prop {React.ElementType} [props.element="span"] - HTML element type to render as the container.
1373
+ * @prop {React.Ref<HTMLSpanElement>} [props.ref] - Ref to the tag element.
1374
+ * @prop {React.ReactNode} [props.children] - Content to display inside the tag.
1375
+ * @prop {LibAllColors} [props.color="primary"] - Background or border color of the tag.
1376
+ * @prop {LibAllColors} [props.contentColor] - Text color of the tag content.
1377
+ * @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius="full"] - Border radius size of the tag.
1378
+ * @prop {"plain" | "outline"} [props.variant="plain"] - Visual style variant of the tag.
1379
+ *
1380
+ * @returns {JSX.Element} The rendered Tag component.
1381
+ *
1382
+ * @see https://doc-julseb-lib-react.vercel.app/components/tag
1383
+ */
1384
+ declare const Tag: FC$1<ILibTag>;
1385
+
1386
+ /**
1387
+ * InputContainer component for wrapping input elements with labels, helper text, validation messages, and character counters.
1388
+ *
1389
+ * @component
1390
+ *
1391
+ * @example
1392
+ * <InputContainer
1393
+ * label="Email"
1394
+ * helper="Enter your email address"
1395
+ * validation={{ status: true, message: "Valid email" }}
1396
+ * >
1397
+ * <input type="email" />
1398
+ * </InputContainer>
1399
+ *
1400
+ * @extends HTMLDivElement
1401
+ *
1402
+ * @prop {string} [props.className] - Additional CSS classes to apply to the container.
1403
+ * @prop {React.ComponentType | string} [props.element="div"] - The HTML element or component to render as the container.
1404
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the container element.
1405
+ * @prop {React.ReactNode} [props.children] - Input elements or other content to display inside the container.
1406
+ * @prop {string} [props.label] - Label text to display above the input.
1407
+ * @prop {string} [props.labelComment] - Additional comment text next to the label in gray italic text.
1408
+ * @prop {string} [props.helper] - Helper text to display below the label.
1409
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the container.
1410
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object with status, message, and custom icons.
1411
+ * @prop {string | number} [props.value] - Current value for character counter calculation.
1412
+ * @prop {boolean | object} [props.counter] - Whether to show character counter or counter configuration.
1413
+ * @prop {number} [props.maxLength] - Maximum character length for counter display.
1414
+ * @prop {boolean} [props.hasListOpen] - Whether a dropdown list is open (adds z-index styling).
1415
+ * @prop {string} [props.id] - Unique identifier to associate label with input element.
1416
+ * @prop {any} [props.rest] - Additional props spread to the container element.
1417
+ *
1418
+ * @returns {JSX.Element} The rendered InputContainer component or just children if no wrapper content is needed.
1419
+ *
1420
+ * @see https://doc-julseb-lib-react.vercel.app/components/input
1421
+ */
1422
+ declare const InputContainer: FC$1<ILibInputContainer>;
1423
+
1424
+ /**
1425
+ * Input component with multiple types and variants for form data collection.
1426
+ *
1427
+ * @component
1428
+ *
1429
+ * @example
1430
+ * <Input type="text" label="Name" placeholder="Enter your name" />
1431
+ * <Input type="email" label="Email" validation={{ status: true }} />
1432
+ * <Input type="select" label="Country">
1433
+ * <option value="us">United States</option>
1434
+ * <option value="ca">Canada</option>
1435
+ * </Input>
1436
+ *
1437
+ * @extends HTMLInputElement
1438
+ *
1439
+ * @prop {string} [props.className] - Additional CSS classes to apply to the input.
1440
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
1441
+ * @prop {string} [props.id] - Unique identifier for the input element.
1442
+ * @prop {string} [props.label] - Label text to display above the input.
1443
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1444
+ * @prop {string} [props.helper] - Helper text to display below the label.
1445
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
1446
+ * @prop {"color" | "date" | "datetime-local" | "month" | "week" | "file" | "password" | "search" | "email" | "number" | "tel" | "text" | "url" | "time" | "select" | "textarea"} [props.type="text"] - Type of input to render.
1447
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1448
+ * @prop {string | number} [props.value] - Current value of the input.
1449
+ * @prop {boolean | object} [props.counter] - Whether to show character counter or counter configuration.
1450
+ * @prop {number} [props.maxLength] - Maximum number of characters allowed.
1451
+ * @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input.
1452
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input.
1453
+ * @prop {React.ReactNode} [props.icon] - Icon element to display inside the input.
1454
+ * @prop {string} [props.placeholder] - Placeholder text for the input.
1455
+ * @prop {boolean} [props.disabled] - Whether the input is disabled.
1456
+ * @prop {React.ReactNode} [props.children] - Child elements for select and textarea types.
1457
+ * @prop {any} [props.rest] - Additional props spread to the input element.
1458
+ *
1459
+ * @returns {JSX.Element} The rendered Input component.
1460
+ *
1461
+ * @see https://doc-julseb-lib-react.vercel.app/components/input
1462
+ */
1463
+ declare const Input: FC$1<ILibInput>;
1464
+
1465
+ /**
1466
+ * InputImage component for uploading and displaying image files with hover interactions and validation states.
1467
+ *
1468
+ * @component
1469
+ *
1470
+ * @example
1471
+ * <InputImage
1472
+ * id="profile-image"
1473
+ * label="Profile Picture"
1474
+ * value={imageUrl}
1475
+ * icons={{ upload: <BiUpload />, edit: <BiEdit /> }}
1476
+ * />
1477
+ *
1478
+ * @extends HTMLInputElement
1479
+ *
1480
+ * @prop {string} [props.className] - Additional CSS classes to apply to the input image container.
1481
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the label element.
1482
+ * @prop {string} [props.label] - Label text to display above the input.
1483
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1484
+ * @prop {string} [props.helper] - Helper text to display below the label.
1485
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
1486
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1487
+ * @prop {string} [props.value] - Current image URL or base64 string value.
1488
+ * @prop {object} [props.icons] - Icon configuration object for upload and edit states.
1489
+ * @prop {"none" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "full"} [props.borderRadius="md"] - Border radius of the image container.
1490
+ * @prop {boolean} [props.disabled] - Whether the input is disabled.
1491
+ * @prop {string} [props.id] - Unique identifier for the input element.
1492
+ * @prop {any} [props.rest] - Additional props spread to the file input element.
1493
+ *
1494
+ * @returns {JSX.Element} The rendered InputImage component.
1495
+ *
1496
+ * @see https://doc-julseb-lib-react.vercel.app/components/input-image
1497
+ */
1498
+ declare const InputImage: FC$1<ILibInputImage>;
1499
+
1500
+ /**
1501
+ * InputCheck component for creating interactive checkbox, radio, and toggle inputs with multiple visual variants.
1502
+ *
1503
+ * @component
1504
+ *
1505
+ * @example
1506
+ * <InputCheck id="terms" type="checkbox">
1507
+ * I agree to the terms and conditions
1508
+ * </InputCheck>
1509
+ * <InputCheck id="newsletter" type="checkbox" variant="tile">
1510
+ * Subscribe to newsletter
1511
+ * </InputCheck>
1512
+ * <InputCheck id="notifications" variant="toggle">
1513
+ * Enable notifications
1514
+ * </InputCheck>
1515
+ *
1516
+ * @extends HTMLInputElement
1517
+ *
1518
+ * @prop {string} [props.className] - Additional CSS classes to apply to the input check container.
1519
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the label element.
1520
+ * @prop {React.ReactNode} [props.children] - Content to display next to the input check.
1521
+ * @prop {string} [props.id] - Unique identifier for the input element.
1522
+ * @prop {"checkbox" | "radio"} [props.type="checkbox"] - Type of input check to render.
1523
+ * @prop {React.ReactElement} [props.iconCheck=<BiCheck size={16} />] - Icon element to display in checkbox variant.
1524
+ * @prop {"tile" | "toggle" | "selector"} [props.variant] - Visual variant style of the input check.
1525
+ * @prop {boolean} [props.validation] - Validation state for error styling.
1526
+ * @prop {boolean} [props.disabled] - Whether the input check is disabled.
1527
+ * @prop {boolean} [props.checked] - Whether the input check is checked (controlled).
1528
+ * @prop {boolean} [props.defaultChecked] - Whether the input check is initially checked (uncontrolled).
1529
+ * @prop {any} [props.rest] - Additional props spread to the input element.
1530
+ *
1531
+ * @returns {JSX.Element} The rendered InputCheck component.
1532
+ *
1533
+ * @see https://doc-julseb-lib-react.vercel.app/components/input-check
1534
+ */
1535
+ declare const InputCheck: FC$1<ILibInputCheck>;
1536
+
1537
+ /**
1538
+ * InputPhone component for phone number input with country selection dropdown and search functionality.
1539
+ *
1540
+ * @component
1541
+ *
1542
+ * @example
1543
+ * <InputPhone
1544
+ * id="phone"
1545
+ * label="Phone Number"
1546
+ * selectedCountry={selectedCountry}
1547
+ * setSelectedCountry={setSelectedCountry}
1548
+ * defaultCountry="us"
1549
+ * />
1550
+ *
1551
+ * @extends HTMLInputElement
1552
+ *
1553
+ * @prop {string} [props.className] - Additional CSS classes to apply to the input phone container.
1554
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
1555
+ * @prop {object} [props.selectedCountry] - Currently selected country object with code, name, flag, and dial_code.
1556
+ * @prop {function} [props.setSelectedCountry] - Function to update the selected country state.
1557
+ * @prop {string} [props.defaultCountry="fr"] - Default country code to display when no country is selected.
1558
+ * @prop {object} [props.icons] - Icon configuration object for customizing dropdown caret icon.
1559
+ * @prop {string} [props.searchPlaceholder="Search country..."] - Placeholder text for the country search input.
1560
+ * @prop {"up" | "down"} [props.listDirection="down"] - Direction for the dropdown list to appear.
1561
+ * @prop {string} [props.countryButtonAriaLabel="Select country"] - Aria label for the country selection button.
1562
+ * @prop {string} [props.textNoResult="Your search did not return any result."] - Text to display when no search results are found.
1563
+ * @prop {string} [props.id] - Unique identifier for the input element.
1564
+ * @prop {string} [props.label] - Label text to display above the input.
1565
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1566
+ * @prop {string} [props.helper] - Helper text to display below the label.
1567
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the input.
1568
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1569
+ * @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input.
1570
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input.
1571
+ * @prop {any} [props.rest] - Additional props spread to the input element.
1572
+ *
1573
+ * @returns {JSX.Element} The rendered InputPhone component.
1574
+ *
1575
+ * @see https://doc-julseb-lib-react.vercel.app/components/input-phone
1576
+ */
1577
+ declare const InputPhone: FC$1<ILibInputPhone>;
1578
+
1579
+ /**
1580
+ * InputCounter component for numeric input with increment/decrement buttons and optional display-only mode.
1581
+ *
1582
+ * @component
1583
+ *
1584
+ * @example
1585
+ * <InputCounter
1586
+ * value={count}
1587
+ * setValue={setCount}
1588
+ * min={0}
1589
+ * max={10}
1590
+ * label="Quantity"
1591
+ * />
1592
+ * <InputCounter
1593
+ * value={amount}
1594
+ * setValue={setAmount}
1595
+ * noInput
1596
+ * buttonsColor="secondary"
1597
+ * />
1598
+ *
1599
+ * @extends HTMLInputElement
1600
+ *
1601
+ * @prop {string} [props.className] - Additional CSS classes to apply to the counter container.
1602
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input or span element.
1603
+ * @prop {number} [props.value] - Current numeric value of the counter.
1604
+ * @prop {function} [props.setValue] - Function to update the counter value.
1605
+ * @prop {"plain" | "ghost" | "outline" | "transparent"} [props.buttonVariant] - Visual variant style of the increment/decrement buttons.
1606
+ * @prop {object} [props.icons] - Icon configuration object with minus and plus icons.
1607
+ * @prop {object} [props.labelButtons] - Aria labels and tooltip text for the buttons.
1608
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "black" | "white"} [props.buttonsColor="primary"] - Color theme of the increment/decrement buttons.
1609
+ * @prop {boolean} [props.showButtonsTooltip] - Whether to show tooltips on button hover.
1610
+ * @prop {boolean} [props.noInput] - Whether to display value as text instead of editable input.
1611
+ * @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input field.
1612
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input field.
1613
+ * @prop {string} [props.label] - Label text to display above the counter.
1614
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1615
+ * @prop {string} [props.helper] - Helper text to display below the label.
1616
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the counter.
1617
+ * @prop {string} [props.id] - Unique identifier for the input element.
1618
+ * @prop {number} [props.min=1] - Minimum allowed value for the counter.
1619
+ * @prop {number} [props.max=100] - Maximum allowed value for the counter.
1620
+ * @prop {number} [props.step=1] - Increment/decrement step value.
1621
+ * @prop {any} [props.rest] - Additional props spread to the input or span element.
1622
+ *
1623
+ * @returns {JSX.Element} The rendered InputCounter component.
1624
+ *
1625
+ * @see https://doc-julseb-lib-react.vercel.app/components/input-counter
1626
+ */
1627
+ declare const InputCounter: FC$1<ILibInputCounter>;
1628
+
1629
+ /**
1630
+ * InputSlider component for creating range input sliders with customizable appearance, tooltips, and min/max value display.
1631
+ *
1632
+ * @component
1633
+ *
1634
+ * @example
1635
+ * <InputSlider
1636
+ * value={50}
1637
+ * min={0}
1638
+ * max={100}
1639
+ * label="Volume"
1640
+ * showValue="hover"
1641
+ * showMinMax
1642
+ * />
1643
+ *
1644
+ * @extends HTMLInputElement
1645
+ *
1646
+ * @prop {string} [props.className] - Additional CSS classes to apply to the slider container.
1647
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
1648
+ * @prop {string} [props.label] - Label text to display above the slider.
1649
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1650
+ * @prop {string} [props.helper] - Helper text to display below the label.
1651
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the slider.
1652
+ * @prop {string} [props.id] - Unique identifier for the input element.
1653
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1654
+ * @prop {boolean} [props.showMinMax] - Whether to display min and max values on the sides of the slider.
1655
+ * @prop {"never" | "always" | "hover"} [props.showValue="never"] - When to show the current value tooltip.
1656
+ * @prop {number} [props.min=0] - Minimum value for the slider range.
1657
+ * @prop {number} [props.max=100] - Maximum value for the slider range.
1658
+ * @prop {number} [props.value] - Current value of the slider.
1659
+ * @prop {any} [props.rest] - Additional props spread to the input element.
1660
+ *
1661
+ * @returns {JSX.Element} The rendered InputSlider component.
1662
+ *
1663
+ * @see https://doc-julseb-lib-react.vercel.app/components/input-slider
1664
+ */
1665
+ declare const InputSlider: FC$1<ILibInputSlider>;
1666
+
1667
+ /**
1668
+ * Select component for creating dropdown selection inputs with keyboard navigation, validation states, and customizable styling.
1669
+ *
1670
+ * @component
1671
+ *
1672
+ * @example
1673
+ * <Select
1674
+ * value={selectedValue}
1675
+ * setValue={setSelectedValue}
1676
+ * options={["Option 1", "Option 2", "Option 3"]}
1677
+ * label="Choose an option"
1678
+ * placeholder="Select..."
1679
+ * />
1680
+ *
1681
+ * @extends HTMLButtonElement
1682
+ *
1683
+ * @prop {string} [props.className] - Additional CSS classes to apply to the select container.
1684
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
1685
+ * @prop {string} [props.value] - Currently selected value.
1686
+ * @prop {function} [props.setValue] - Function to update the selected value.
1687
+ * @prop {string[]} [props.options] - Array of options to display in the dropdown.
1688
+ * @prop {"up" | "down"} [props.listDirection] - Direction for the dropdown list to appear.
1689
+ * @prop {object} [props.icons] - Icon configuration object with left icon and caret icon.
1690
+ * @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the select input.
1691
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme of the select input.
1692
+ * @prop {string} [props.label] - Label text to display above the select.
1693
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1694
+ * @prop {string} [props.helper] - Helper text to display below the label.
1695
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the select.
1696
+ * @prop {string} [props.id] - Unique identifier for the select element.
1697
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1698
+ * @prop {boolean} [props.disabled] - Whether the select is disabled.
1699
+ * @prop {any} [props.rest] - Additional props spread to the button element.
1700
+ *
1701
+ * @returns {JSX.Element} The rendered Select component.
1702
+ *
1703
+ * @see https://doc-julseb-lib-react.vercel.app/components/select
1704
+ */
1705
+ declare const Select: FC$1<ILibSelect>;
1706
+
1707
+ /**
1708
+ * Autocomplete component for text input with fuzzy search functionality, keyboard navigation, and customizable dropdown results.
1709
+ *
1710
+ * @component
1711
+ *
1712
+ * @example
1713
+ * <Autocomplete
1714
+ * value={searchValue}
1715
+ * setValue={setSearchValue}
1716
+ * listResults={["React", "Vue", "Angular", "Svelte"]}
1717
+ * label="Framework"
1718
+ * placeholder="Search frameworks..."
1719
+ * focusKeys={["cmd+k"]}
1720
+ * />
1721
+ *
1722
+ * @extends HTMLInputElement
1723
+ *
1724
+ * @prop {string} [props.className] - Additional CSS classes to apply to the autocomplete container.
1725
+ * @prop {React.Ref<HTMLInputElement>} [props.ref] - Ref to the input element.
1726
+ * @prop {string} [props.label] - Label text to display above the autocomplete.
1727
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1728
+ * @prop {string} [props.helper] - Helper text to display below the label.
1729
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the autocomplete.
1730
+ * @prop {string} [props.value] - Current input value for searching.
1731
+ * @prop {function} [props.setValue] - Function to update the input value.
1732
+ * @prop {"rounded" | "pill"} [props.inputVariant] - Visual variant of the input field.
1733
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input field.
1734
+ * @prop {string} [props.id] - Unique identifier for the input element.
1735
+ * @prop {string[]} [props.listResults] - Array of items to search through and display as results.
1736
+ * @prop {"up" | "down"} [props.listDirection] - Direction for the dropdown results to appear.
1737
+ * @prop {object} [props.fuzzyOptions={}] - Configuration options for Fuse.js fuzzy search.
1738
+ * @prop {object} [props.icons] - Icon configuration object with left icon and clear icon.
1739
+ * @prop {string[]} [props.focusKeys=[""]] - Array of keyboard shortcuts to focus the input.
1740
+ * @prop {boolean} [props.showKeys] - Whether to display the keyboard shortcut keys.
1741
+ * @prop {string} [props.textNoResult="No result."] - Text to display when no search results are found.
1742
+ * @prop {boolean} [props.disabled] - Whether the autocomplete is disabled.
1743
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1744
+ * @prop {any} [props.rest] - Additional props spread to the input element.
1745
+ *
1746
+ * @returns {JSX.Element} The rendered Autocomplete component.
1747
+ *
1748
+ * @see https://doc-julseb-lib-react.vercel.app/components/autocomplete
1749
+ */
1750
+ declare const Autocomplete: FC$1<ILibAutocomplete>;
1751
+
1752
+ /**
1753
+ * Rating component for displaying and selecting star ratings with customizable icons, read-only mode, and validation states.
1754
+ *
1755
+ * @component
1756
+ *
1757
+ * @example
1758
+ * <Rating
1759
+ * rating={3}
1760
+ * setRating={setRating}
1761
+ * label="Rate this product"
1762
+ * />
1763
+ * <Rating
1764
+ * rating={4}
1765
+ * readOnly
1766
+ * icons={{ default: <BiHeart />, checked: <BiSolidHeart /> }}
1767
+ * />
1768
+ *
1769
+ * @extends HTMLDivElement
1770
+ *
1771
+ * @prop {string} [props.className] - Additional CSS classes to apply to the rating container.
1772
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the rating container div element.
1773
+ * @prop {number} [props.rating] - Current rating value (1-5 stars).
1774
+ * @prop {function} [props.setRating] - Function to update the rating value when not in read-only mode.
1775
+ * @prop {object} [props.icons] - Icon configuration object with default and checked icon variants.
1776
+ * @prop {boolean} [props.readOnly] - Whether the rating is in read-only mode (no interaction).
1777
+ * @prop {string} [props.label] - Label text to display above the rating.
1778
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1779
+ * @prop {string} [props.helper] - Helper text to display below the label.
1780
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the rating.
1781
+ * @prop {string} [props.id] - Unique identifier for the rating element.
1782
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1783
+ * @prop {any} [props.rest] - Additional props spread to the rating container.
1784
+ *
1785
+ * @returns {JSX.Element} The rendered Rating component.
1786
+ *
1787
+ * @see https://doc-julseb-lib-react.vercel.app/components/rating
1788
+ */
1789
+ declare const Rating: FC$1<ILibRating>;
1790
+
1791
+ /**
1792
+ * InputPin component for creating PIN code or verification code inputs with multiple individual input fields.
1793
+ *
1794
+ * @component
1795
+ *
1796
+ * @example
1797
+ * <InputPin
1798
+ * values={{ pin1: "", pin2: "", pin3: "", pin4: "" }}
1799
+ * setValues={setValues}
1800
+ * label="Enter PIN Code"
1801
+ * hideValues
1802
+ * />
1803
+ *
1804
+ * @extends HTMLDivElement
1805
+ *
1806
+ * @prop {string} [props.className] - Additional CSS classes to apply to the pin input container.
1807
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the pin input container div element.
1808
+ * @prop {string} [props.label] - Label text to display above the pin inputs.
1809
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1810
+ * @prop {string} [props.helper] - Helper text to display below the label.
1811
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the pin inputs.
1812
+ * @prop {string} [props.id] - Unique identifier for the pin input container.
1813
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1814
+ * @prop {object} [props.values] - Object containing the current values for each pin input field.
1815
+ * @prop {function} [props.setValues] - Function to update the pin input values.
1816
+ * @prop {string[]} [props.placeholders] - Array of placeholder texts for each pin input field.
1817
+ * @prop {boolean} [props.hideValues] - Whether to hide the input values (password mode).
1818
+ * @prop {boolean} [props.disabled] - Whether the pin inputs are disabled.
1819
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme of the input fields.
1820
+ * @prop {any} [props.rest] - Additional props spread to the pin input container.
1821
+ *
1822
+ * @returns {JSX.Element} The rendered InputPin component.
1823
+ *
1824
+ * @see https://doc-julseb-lib-react.vercel.app/components/input-pin
1825
+ */
1826
+ declare const InputPin: FC$1<ILibInputPin>;
1827
+
1828
+ /**
1829
+ * Fieldset component for grouping related form controls with a legend, validation states, and customizable styling.
1830
+ *
1831
+ * @component
1832
+ *
1833
+ * @example
1834
+ * <Fieldset
1835
+ * legend="Personal Information"
1836
+ * label="User Details"
1837
+ * borderRadius="lg"
1838
+ * >
1839
+ * <Input label="First Name" />
1840
+ * <Input label="Last Name" />
1841
+ * <Input label="Email" />
1842
+ * </Fieldset>
1843
+ *
1844
+ * @extends HTMLFieldSetElement
1845
+ *
1846
+ * @prop {string} [props.className] - Additional CSS classes to apply to the fieldset container.
1847
+ * @prop {React.Ref<HTMLFieldSetElement>} [props.ref] - Ref to the fieldset element.
1848
+ * @prop {React.ReactNode} [props.children] - Form controls and content to display inside the fieldset.
1849
+ * @prop {string} [props.label] - Label text to display above the fieldset.
1850
+ * @prop {string} [props.labelComment] - Additional comment text next to the label.
1851
+ * @prop {string} [props.helper] - Helper text to display below the label.
1852
+ * @prop {string} [props.helperBottom] - Helper text to display at the bottom of the fieldset.
1853
+ * @prop {string} [props.id] - Unique identifier for the fieldset element.
1854
+ * @prop {LibValidation} [props.validation] - Validation state and configuration object.
1855
+ * @prop {string} [props.legend] - Legend text to display as the fieldset title.
1856
+ * @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius="md"] - Border radius size for the fieldset.
1857
+ * @prop {any} [props.rest] - Additional props spread to the fieldset element.
1858
+ *
1859
+ * @returns {JSX.Element} The rendered Fieldset component.
1860
+ *
1861
+ * @see https://doc-julseb-lib-react.vercel.app/components/fieldset
1862
+ */
1863
+ declare const Fieldset: FC$1<ILibFieldset>;
1864
+
1865
+ /**
1866
+ * Form component for creating forms with built-in submit and secondary action buttons, loading states, and validation support.
1867
+ *
1868
+ * @component
1869
+ *
1870
+ * @example
1871
+ * <Form
1872
+ * buttonPrimary="Submit"
1873
+ * buttonSecondary={{ content: "Cancel", onClick: handleCancel }}
1874
+ * isLoading={isSubmitting}
1875
+ * disabled={!isValid}
1876
+ * >
1877
+ * <Input label="Name" value={name} setValue={setName} />
1878
+ * <Input label="Email" value={email} setValue={setEmail} />
1879
+ * </Form>
1880
+ *
1881
+ * @extends HTMLFormElement
1882
+ *
1883
+ * @prop {string} [props.className] - Additional CSS classes to apply to the form container.
1884
+ * @prop {React.Ref<HTMLFormElement>} [props.ref] - Ref to the form element.
1885
+ * @prop {React.ReactNode} [props.children] - Form fields and content to display inside the form.
1886
+ * @prop {boolean} [props.isLoading] - Whether the form is in a loading state (shows loader on primary button).
1887
+ * @prop {boolean} [props.disabled] - Whether the form and its primary button are disabled.
1888
+ * @prop {string} [props.buttonPrimary] - Text content for the primary submit button.
1889
+ * @prop {object} [props.buttonSecondary] - Configuration object for the secondary button with content and additional props.
1890
+ * @prop {1 | 2 | 3} [props.loaderVariant] - Type of loader animation to display on the primary button when loading.
1891
+ * @prop {any} [props.rest] - Additional props spread to the form element.
1892
+ *
1893
+ * @returns {JSX.Element} The rendered Form component.
1894
+ *
1895
+ * @see https://doc-julseb-lib-react.vercel.app/components/form
1896
+ */
1897
+ declare const Form: FC$1<ILibForm>;
1898
+
1899
+ /**
1900
+ * ListGroup component for displaying a structured list of items with optional title, numbering, and separators.
1901
+ *
1902
+ * @component
1903
+ *
1904
+ * @example
1905
+ * <ListGroup
1906
+ * title="My List"
1907
+ * items={[
1908
+ * { title: "Item 1", body: "Description 1" },
1909
+ * { title: "Item 2", body: "Description 2" }
1910
+ * ]}
1911
+ * showNumbers
1912
+ * />
1913
+ *
1914
+ * @extends HTMLDivElement
1915
+ *
1916
+ * @prop {string} [props.className] - Additional CSS classes to apply to the list group container.
1917
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
1918
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the list group container element.
1919
+ * @prop {React.ReactNode} [props.children] - Child components to render inside the list group.
1920
+ * @prop {string | object} [props.title] - Title text or configuration object for the list group header.
1921
+ * @prop {boolean} [props.noSeparator] - Whether to hide separators between list items.
1922
+ * @prop {boolean} [props.showNumbers] - Whether to display numbers next to each list item.
1923
+ * @prop {Array} [props.items] - Array of item objects to render as list items.
1924
+ *
1925
+ * @returns {JSX.Element} The rendered ListGroup component.
1926
+ *
1927
+ * @see https://doc-julseb-lib-react.vercel.app/components/list-group
1928
+ */
1929
+ declare const ListGroup: FC$1<ILibListGroup>;
1930
+
1931
+ /**
1932
+ * ListGroupTitle component for rendering a styled header/title for list groups with optional fixed positioning and shadow effects.
1933
+ *
1934
+ * @component
1935
+ *
1936
+ * @example
1937
+ * <ListGroupTitle
1938
+ * isFixed
1939
+ * shadow="lg"
1940
+ * listRef={listRef}
1941
+ * >
1942
+ * My List Title
1943
+ * </ListGroupTitle>
1944
+ *
1945
+ * @extends HTMLDivElement
1946
+ *
1947
+ * @prop {string} [props.className] - Additional CSS classes to apply to the title container.
1948
+ * @prop {React.ElementType} [props.element=Text] - HTML element type to render as the container.
1949
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the title element.
1950
+ * @prop {React.ReactNode} [props.children] - Content to display inside the title.
1951
+ * @prop {boolean} [props.isFixed] - Whether the title should be sticky positioned at the top.
1952
+ * @prop {"xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "inner" | "none"} [props.shadow] - Shadow variant to apply when scrolled.
1953
+ * @prop {React.RefObject} [props.listRef] - Ref to the scrollable list container for scroll detection.
1954
+ * @prop {boolean} [props.noSeparator] - Whether to hide the bottom border separator.
1955
+ *
1956
+ * @returns {JSX.Element} The rendered ListGroupTitle component.
1957
+ *
1958
+ * @see https://doc-julseb-lib-react.vercel.app/components/list-group
1959
+ */
1960
+ declare const ListGroupTitle: FC$1<ILibListGroupTitle>;
1961
+
1962
+ /**
1963
+ * ListGroupItem component for rendering individual items within a list group with optional numbering, content, and separators.
1964
+ *
1965
+ * @component
1966
+ *
1967
+ * @example
1968
+ * <ListGroupItem
1969
+ * title="Item Title"
1970
+ * body="Item description"
1971
+ * number={1}
1972
+ * contentRight={<Button>Action</Button>}
1973
+ * />
1974
+ *
1975
+ * @extends HTMLDivElement
1976
+ *
1977
+ * @prop {string} [props.className] - Additional CSS classes to apply to the list item container.
1978
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
1979
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the list item container element.
1980
+ * @prop {React.ReactNode} [props.children] - Child components to render inside the list item.
1981
+ * @prop {string} [props.title] - Title text to display for the list item.
1982
+ * @prop {string} [props.body] - Body text or description to display below the title.
1983
+ * @prop {React.ReactNode} [props.contentRight] - Content to display on the right side of the list item.
1984
+ * @prop {boolean} [props.noSeparator] - Whether to hide the separator border between list items.
1985
+ * @prop {number} [props.number] - Number to display before the title when using numbered lists.
1986
+ *
1987
+ * @returns {JSX.Element} The rendered ListGroupItem component.
1988
+ *
1989
+ * @see https://doc-julseb-lib-react.vercel.app/components/list-group
1990
+ */
1991
+ declare const ListGroupItem: FC$1<ILibListGroupItem>;
1992
+
1993
+ /**
1994
+ * Breadcrumbs component for displaying navigational breadcrumb trails with customizable separators and flexible content.
1995
+ *
1996
+ * @component
1997
+ *
1998
+ * @example
1999
+ * <Breadcrumbs separator=">">
2000
+ * <Link to="/">Home</Link>
2001
+ * <Link to="/products">Products</Link>
2002
+ * <Text>Current Page</Text>
2003
+ * </Breadcrumbs>
2004
+ *
2005
+ * @extends HTMLDivElement
2006
+ *
2007
+ * @prop {string} [props.className] - Additional CSS classes to apply to the breadcrumbs container.
2008
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2009
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the breadcrumbs container element.
2010
+ * @prop {React.ReactNode} [props.children] - Navigation items to display in the breadcrumb trail.
2011
+ * @prop {string | React.ReactNode} [props.separator="/"] - Separator to display between breadcrumb items.
2012
+ * @prop {any} [props.rest] - Additional props spread to the container element.
2013
+ *
2014
+ * @returns {JSX.Element} The rendered Breadcrumbs component.
2015
+ *
2016
+ * @see https://doc-julseb-lib-react.vercel.app/components/breadcrumbs
2017
+ */
2018
+ declare const Breadcrumbs: FC$1<ILibBreadcrumbs>;
2019
+
2020
+ /**
2021
+ * Accordion component for creating collapsible content sections with customizable styling and expandable items.
2022
+ *
2023
+ * @component
2024
+ *
2025
+ * @example
2026
+ * <Accordion
2027
+ * variant="rounded"
2028
+ * icon="plus"
2029
+ * items={[
2030
+ * { title: "Section 1", content: <p>Content 1</p>, defaultOpen: true },
2031
+ * { title: "Section 2", content: <p>Content 2</p> }
2032
+ * ]}
2033
+ * />
2034
+ *
2035
+ * @extends ILibAccordion
2036
+ *
2037
+ * @prop {string} [props.className] - Additional CSS classes to apply to the accordion container.
2038
+ * @prop {React.ReactNode} [props.children] - Child AccordionItem components to render when not using items prop.
2039
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the accordion container element.
2040
+ * @prop {"basic" | "rounded"} [props.variant="basic"] - Visual style variant of the accordion.
2041
+ * @prop {"plus" | "chevron"} [props.icon="plus"] - Type of icon to display for expand/collapse indicators.
2042
+ * @prop {Array} [props.items] - Array of accordion items with title, content, and defaultOpen properties.
2043
+ *
2044
+ * @returns {JSX.Element} The rendered Accordion component.
2045
+ *
2046
+ * @see https://doc-julseb-lib-react.vercel.app/components/accordion
2047
+ */
2048
+ declare const Accordion: FC$1<ILibAccordion>;
2049
+
2050
+ /**
2051
+ * AccordionItem component for creating individual collapsible sections with title, content, and customizable styling.
2052
+ *
2053
+ * @component
2054
+ *
2055
+ * @example
2056
+ * <AccordionItem
2057
+ * title="Section Title"
2058
+ * icon="plus"
2059
+ * variant="rounded"
2060
+ * defaultOpen={false}
2061
+ * >
2062
+ * <p>This is the accordion content that can be expanded or collapsed.</p>
2063
+ * </AccordionItem>
2064
+ *
2065
+ * @extends HTMLDivElement
2066
+ *
2067
+ * @prop {React.ReactNode} [props.title] - Title content to display in the accordion header.
2068
+ * @prop {"plus" | "chevron"} [props.icon="chevron"] - Type of icon to display for expand/collapse indicator.
2069
+ * @prop {"basic" | "rounded"} [props.variant="basic"] - Visual style variant of the accordion item.
2070
+ * @prop {boolean} [props.defaultOpen=false] - Whether the accordion should be open by default.
2071
+ *
2072
+ * @returns {JSX.Element} The rendered AccordionItem component.
2073
+ *
2074
+ * @see https://doc-julseb-lib-react.vercel.app/components/accordion
2075
+ */
2076
+ declare const AccordionItem: FC$1<ILibAccordionItem>;
2077
+
2078
+ /**
2079
+ * Dropdown component for creating contextual menus and popover content with customizable positioning and animations.
2080
+ *
2081
+ * @component
2082
+ *
2083
+ * @example
2084
+ * <Dropdown
2085
+ * isOpen={isOpen}
2086
+ * setIsOpen={setIsOpen}
2087
+ * direction="down"
2088
+ * shadow="lg"
2089
+ * items={[
2090
+ * { content: "Profile", onClick: handleProfile },
2091
+ * { content: "Settings", onClick: handleSettings },
2092
+ * { content: "Logout", onClick: handleLogout }
2093
+ * ]}
2094
+ * />
2095
+ *
2096
+ * @extends HTMLDivElement
2097
+ *
2098
+ * @prop {string} [props.className] - Additional CSS classes to apply to the dropdown container.
2099
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2100
+ * @prop {React.ReactNode} [props.children] - Child DropdownItem components to render when not using items prop.
2101
+ * @prop {boolean} [props.isOpen] - Whether the dropdown is currently visible.
2102
+ * @prop {function} [props.setIsOpen] - Function to control the dropdown open/closed state.
2103
+ * @prop {"up" | "down"} [props.direction="down"] - Direction for the dropdown to appear relative to its trigger.
2104
+ * @prop {"xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "inner" | "none"} [props.shadow] - Shadow variant to apply when dropdown is open.
2105
+ * @prop {Array} [props.items] - Array of dropdown item objects with content and click handlers.
2106
+ * @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius="md"] - Border radius size for the dropdown container.
2107
+ *
2108
+ * @returns {JSX.Element} The rendered Dropdown component.
2109
+ *
2110
+ * @see https://doc-julseb-lib-react.vercel.app/components/dropdown
2111
+ */
2112
+ declare const Dropdown: FC$1<ILibDropdown>;
2113
+
2114
+ /**
2115
+ * DropdownItem component for rendering individual items within dropdown menus with hover states and customizable content.
2116
+ *
2117
+ * @component
2118
+ *
2119
+ * @example
2120
+ * <DropdownItem onClick={handleClick}>
2121
+ * Menu Item
2122
+ * </DropdownItem>
2123
+ * <DropdownItem element="a" href="/profile">
2124
+ * Profile
2125
+ * </DropdownItem>
2126
+ *
2127
+ * @extends HTMLButtonElement
2128
+ *
2129
+ * @prop {string} [props.className] - Additional CSS classes to apply to the dropdown item.
2130
+ * @prop {React.ElementType} [props.element="button"] - HTML element type to render as the item container.
2131
+ * @prop {React.ReactNode} [props.children] - Content to display inside the dropdown item.
2132
+ *
2133
+ * @returns {JSX.Element} The rendered DropdownItem component.
2134
+ *
2135
+ * @see https://doc-julseb-lib-react.vercel.app/components/dropdown
2136
+ */
2137
+ declare const DropdownItem: FC$1<ILibDropdownItem>;
2138
+
2139
+ /**
2140
+ * Toast component for displaying temporary notification messages with different status types and optional close functionality.
2141
+ *
2142
+ * @component
2143
+ *
2144
+ * @example
2145
+ * <Toast
2146
+ * title="Success!"
2147
+ * body="Your changes have been saved."
2148
+ * status="success"
2149
+ * closeToast={handleClose}
2150
+ * />
2151
+ *
2152
+ * @extends HTMLDivElement
2153
+ *
2154
+ * @prop {string} [props.className] - Additional CSS classes to apply to the toast container.
2155
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2156
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the toast element.
2157
+ * @prop {React.ReactNode} [props.body] - Body content to display below the title.
2158
+ * @prop {React.ReactNode} [props.title] - Title content to display in the toast header.
2159
+ * @prop {"success" | "error" | "warning" | "info" | "loading"} [props.status="success"] - Status type that determines the toast appearance and behavior.
2160
+ * @prop {boolean} [props.hideCloseButton] - Whether to hide the close button in the toast.
2161
+ * @prop {function} [props.closeToast] - Function to call when the close button is clicked.
2162
+ * @prop {React.ReactElement} [props.iconClose] - Custom icon for the close button.
2163
+ * @prop {1 | 2 | 3} [props.loaderVariant] - Variant of the loader shown when status is "loading".
2164
+ *
2165
+ * @returns {JSX.Element} The rendered Toast component.
2166
+ *
2167
+ * @see https://doc-julseb-lib-react.vercel.app/components/toast
2168
+ */
2169
+ declare const Toast: FC$1<ILibToast>;
2170
+
2171
+ /**
2172
+ * ToastContainer component for managing and displaying toast notifications with customizable positioning and behavior.
2173
+ *
2174
+ * @component
2175
+ *
2176
+ * @example
2177
+ * <ToastContainer
2178
+ * position="top-right"
2179
+ * autoClose={5000}
2180
+ * hideProgressBar={false}
2181
+ * />
2182
+ *
2183
+ * @extends ToastContainerProps from "react-toastify"
2184
+ *
2185
+ * @prop {string} [props.className] - Additional CSS classes to apply to the toast container.
2186
+ * @prop {"top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right"} [props.position="bottom-right"] - Position where toasts will appear on the screen.
2187
+ * @prop {number | false} [props.autoClose] - Time in milliseconds before toasts auto-close, or false to disable.
2188
+ * @prop {boolean} [props.hideProgressBar] - Whether to hide the progress bar on toasts.
2189
+ * @prop {boolean} [props.newestOnTop] - Whether to display newest toasts at the top.
2190
+ * @prop {boolean} [props.closeOnClick] - Whether toasts close when clicked.
2191
+ * @prop {boolean} [props.rtl] - Whether to use right-to-left layout.
2192
+ * @prop {boolean} [props.pauseOnFocusLoss] - Whether to pause toast timers when window loses focus.
2193
+ * @prop {boolean} [props.draggable] - Whether toasts can be dragged to dismiss.
2194
+ * @prop {boolean} [props.pauseOnHover] - Whether to pause toast timers on hover.
2195
+ * @prop {"default" | "colored" | "dark"} [props.theme] - Visual theme for the toast container.
2196
+ * @prop {number} [props.limit] - Maximum number of toasts to display at once.
2197
+ *
2198
+ * @returns {JSX.Element} The rendered ToastContainer component.
2199
+ *
2200
+ * @see https://doc-julseb-lib-react.vercel.app/components/toast
2201
+ */
2202
+ declare const ToastContainer: FC$1<ToastContainerProps>;
2203
+
2204
+ /**
2205
+ * Toast utility functions for displaying different types of notification messages with customizable options and automatic styling.
2206
+ *
2207
+ * @namespace toast
2208
+ *
2209
+ * @example
2210
+ * // Success toast
2211
+ * toast.success("Operation completed!", {
2212
+ * body: "Your changes have been saved.",
2213
+ * duration: 5000
2214
+ * })
2215
+ *
2216
+ * // Error toast
2217
+ * toast.error("Something went wrong!", {
2218
+ * body: "Please try again later."
2219
+ * })
2220
+ *
2221
+ * // Close all toasts
2222
+ * toast.close()
2223
+ *
2224
+ * @prop {function} success - Display a success toast notification with green styling.
2225
+ * @prop {function} error - Display an error toast notification with red styling.
2226
+ * @prop {function} warning - Display a warning toast notification with yellow styling.
2227
+ * @prop {function} info - Display an info toast notification with blue styling.
2228
+ * @prop {function} loading - Display a loading toast notification with gray styling.
2229
+ * @prop {function} close - Close/dismiss all active toast notifications.
2230
+ *
2231
+ * @see https://doc-julseb-lib-react.vercel.app/components/toast
2232
+ */
2233
+ declare const toast: {
2234
+ success: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
2235
+ duration?: number;
2236
+ iconClose?: ReactElement;
2237
+ }) => react_toastify.Id;
2238
+ error: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
2239
+ duration?: number;
2240
+ iconClose?: ReactElement;
2241
+ }) => react_toastify.Id;
2242
+ warning: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
2243
+ duration?: number;
2244
+ iconClose?: ReactElement;
2245
+ }) => react_toastify.Id;
2246
+ info: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
2247
+ duration?: number;
2248
+ iconClose?: ReactElement;
2249
+ }) => react_toastify.Id;
2250
+ loading: (title: string, options?: Omit<ILibToast, "status" | "closeToast" | "title"> & Omit<ToastOptions, "icon" | "closeButton" | "style" | "autoClose" | "className" | "progressClassName"> & {
2251
+ duration?: number;
2252
+ iconClose?: ReactElement;
2253
+ loaderVariant?: LibLoaderVariant;
2254
+ }) => react_toastify.Id;
2255
+ close: () => void;
2256
+ };
2257
+
2258
+ /**
2259
+ * Alert component for displaying informational messages with customizable colors and styling.
2260
+ *
2261
+ * @component
2262
+ *
2263
+ * @example
2264
+ * <Alert color="success">
2265
+ * Operation completed successfully!
2266
+ * </Alert>
2267
+ * <Alert color="danger">
2268
+ * <Text>Error occurred</Text>
2269
+ * <Text>Please try again</Text>
2270
+ * </Alert>
2271
+ *
2272
+ * @extends HTMLDivElement
2273
+ *
2274
+ * @prop {string} [props.className] - Additional CSS classes to apply to the alert container.
2275
+ * @prop {React.ElementType} [props.element=typeof children === "string" ? Text : "div"] - HTML element type to render as the container.
2276
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the alert element.
2277
+ * @prop {React.ReactNode} [props.children] - Content to display inside the alert.
2278
+ * @prop {LibAllColors} [props.color="primary"] - Color theme for the alert background and border.
2279
+ *
2280
+ * @returns {JSX.Element} The rendered Alert component.
2281
+ *
2282
+ * @see https://doc-julseb-lib-react.vercel.app/components/alert
2283
+ */
2284
+ declare const Alert: FC$1<ILibAlert>;
2285
+
2286
+ /**
2287
+ * Modal component for displaying overlay content with backdrop, close functionality, and keyboard navigation support.
2288
+ *
2289
+ * @component
2290
+ *
2291
+ * @example
2292
+ * <Modal
2293
+ * isOpen={isOpen}
2294
+ * setIsOpen={setIsOpen}
2295
+ * labelClose="Close dialog"
2296
+ * >
2297
+ * <div className="bg-white p-6 rounded-lg">
2298
+ * <h2>Modal Content</h2>
2299
+ * <p>This is a modal dialog.</p>
2300
+ * </div>
2301
+ * </Modal>
2302
+ *
2303
+ * @extends HTMLDivElement
2304
+ *
2305
+ * @prop {string} [props.className] - Additional CSS classes to apply to the modal container.
2306
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2307
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the modal element.
2308
+ * @prop {React.ReactNode} [props.children] - Content to display inside the modal.
2309
+ * @prop {boolean} [props.isOpen] - Whether the modal is currently visible.
2310
+ * @prop {function} [props.setIsOpen] - Function to control the modal open/closed state.
2311
+ * @prop {boolean} [props.disableEsc] - Whether to disable closing the modal with the Escape key.
2312
+ * @prop {boolean} [props.hideCloseButton] - Whether to hide the close button in the modal.
2313
+ * @prop {React.ReactNode} [props.closeIcon=<BiX size={32} />] - Custom close icon for the modal.
2314
+ * @prop {string} [props.labelClose="Close modal"] - Aria label for the close button.
2315
+ *
2316
+ * @returns {JSX.Element} The rendered Modal component.
2317
+ *
2318
+ * @see https://doc-julseb-lib-react.vercel.app/components/modal
2319
+ */
2320
+ declare const Modal: FC$1<ILibModal>;
2321
+
2322
+ /**
2323
+ * DragList component for creating draggable and reorderable lists with customizable items and separators.
2324
+ *
2325
+ * @component
2326
+ *
2327
+ * @example
2328
+ * <DragList
2329
+ * items={dragItems}
2330
+ * setItems={setDragItems}
2331
+ * iconDrag={<GripVertical />}
2332
+ * hideSeparator={false}
2333
+ * />
2334
+ *
2335
+ * @extends HTMLDivElement
2336
+ *
2337
+ * @prop {string} [props.className] - Additional CSS classes to apply to the drag list container.
2338
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2339
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the drag list element.
2340
+ * @prop {React.ReactNode} [props.children] - Child components to render when not using items prop.
2341
+ * @prop {React.ReactNode} [props.iconDrag] - Icon to display as the drag handle for each item.
2342
+ * @prop {"xs" | "sm" | "md" | "lg" | "xl" | "full"} [props.borderRadius] - Border radius size for the drag list container.
2343
+ * @prop {Array} [props.items] - Array of draggable items with id, title, and body properties.
2344
+ * @prop {function} [props.setItems] - Function to update the items array when items are reordered.
2345
+ * @prop {boolean} [props.hideSeparator] - Whether to hide separators between draggable items.
2346
+ *
2347
+ * @returns {JSX.Element} The rendered DragList component.
2348
+ *
2349
+ * @see https://doc-julseb-lib-react.vercel.app/components/drag-list
2350
+ */
2351
+ declare const DragList: FC$1<ILibDragList>;
2352
+
2353
+ /**
2354
+ * DragListItem component for rendering individual draggable items within a drag list with drag handles and content.
2355
+ *
2356
+ * @component
2357
+ *
2358
+ * @example
2359
+ * <DragListItem
2360
+ * item={{ id: "1", title: "Item Title", body: "Item description" }}
2361
+ * index={0}
2362
+ * handleDragStart={handleDragStart}
2363
+ * handleDragOver={handleDragOver}
2364
+ * iconDrag={<GripVertical />}
2365
+ * />
2366
+ *
2367
+ * @extends HTMLDivElement
2368
+ *
2369
+ * @prop {string} [props.className] - Additional CSS classes to apply to the drag list item.
2370
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2371
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the drag list item element.
2372
+ * @prop {React.ReactNode} [props.children] - Child components to render when not using item prop.
2373
+ * @prop {number} [props.index] - Index position of the item in the drag list.
2374
+ * @prop {React.ReactNode} [props.iconDrag=<BiDotsVerticalRounded size={24} />] - Icon to display as the drag handle.
2375
+ * @prop {function} [props.handleDragStart] - Function called when drag operation starts.
2376
+ * @prop {function} [props.handleDragOver] - Function called when dragging over this item.
2377
+ * @prop {object} [props.item] - Item object containing id, title, and body properties.
2378
+ * @prop {string} [props.id] - Unique identifier for the drag list item.
2379
+ * @prop {string} [props.iconLabel="Drag"] - Aria label for the drag handle button.
2380
+ *
2381
+ * @returns {JSX.Element} The rendered DragListItem component.
2382
+ *
2383
+ * @see https://doc-julseb-lib-react.vercel.app/components/drag-list
2384
+ */
2385
+ declare const DragListItem: FC$1<ILibDragListItem>;
2386
+
2387
+ /**
2388
+ * Pagination component for navigating through multiple pages of content with customizable styling and navigation controls.
2389
+ *
2390
+ * @component
2391
+ *
2392
+ * @example
2393
+ * <Pagination
2394
+ * currentPage={currentPage}
2395
+ * setCurrentPage={setCurrentPage}
2396
+ * totalPages={20}
2397
+ * accentColor="primary"
2398
+ * pageLimit={5}
2399
+ * />
2400
+ *
2401
+ * @extends HTMLDivElement
2402
+ *
2403
+ * @prop {string} [props.className] - Additional CSS classes to apply to the pagination container.
2404
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2405
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the pagination element.
2406
+ * @prop {React.ReactNode} [props.children] - Child components to render when not using totalPages prop.
2407
+ * @prop {LibAllColors} [props.accentColor="primary"] - Color theme for active page and hover states.
2408
+ * @prop {number} [props.totalPages] - Total number of pages available for navigation.
2409
+ * @prop {object} [props.icons] - Custom icons for previous and next navigation buttons.
2410
+ * @prop {React.ReactNode} [props.icons.prev] - Custom icon for the previous page button.
2411
+ * @prop {React.ReactNode} [props.icons.next] - Custom icon for the next page button.
2412
+ * @prop {number} [props.pageLimit=5] - Maximum number of page buttons to display at once.
2413
+ * @prop {number} [props.currentPage] - Current active page number.
2414
+ * @prop {function} [props.setCurrentPage] - Function to update the current page state.
2415
+ *
2416
+ * @returns {JSX.Element} The rendered Pagination component.
2417
+ *
2418
+ * @see https://doc-julseb-lib-react.vercel.app/components/pagination
2419
+ */
2420
+ declare const Pagination: FC$1<ILibPagination>;
2421
+
2422
+ /**
2423
+ * PaginationButton component for rendering individual page navigation buttons with active states and styling.
2424
+ *
2425
+ * @component
2426
+ *
2427
+ * @example
2428
+ * <PaginationButton
2429
+ * accentColor="primary"
2430
+ * isActive={currentPage === 5}
2431
+ * onClick={() => handlePage(5)}
2432
+ * >
2433
+ * 5
2434
+ * </PaginationButton>
2435
+ *
2436
+ * @extends HTMLButtonElement
2437
+ *
2438
+ * @prop {string} [props.className] - Additional CSS classes to apply to the pagination button.
2439
+ * @prop {React.ElementType} [props.element="button"] - HTML element type to render as the container.
2440
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the pagination button element.
2441
+ * @prop {React.ReactNode} [props.children] - Content to display inside the button (usually page number).
2442
+ * @prop {LibAllColors} [props.accentColor="primary"] - Color theme for active and hover states.
2443
+ * @prop {boolean} [props.isActive] - Whether this button represents the current active page.
2444
+ * @prop {boolean} [props.readOnly] - Whether the button is in read-only mode (non-interactive).
2445
+ *
2446
+ * @returns {JSX.Element} The rendered PaginationButton component.
2447
+ *
2448
+ * @see https://doc-julseb-lib-react.vercel.app/components/pagination
2449
+ */
2450
+ declare const PaginationButton: FC$1<ILibPaginationButton>;
2451
+
2452
+ /**
2453
+ * Paginator component for simple page navigation with input field and next/previous buttons.
2454
+ *
2455
+ * @component
2456
+ *
2457
+ * @example
2458
+ * <Paginator
2459
+ * currentPage={currentPage}
2460
+ * setCurrentPage={setCurrentPage}
2461
+ * totalPages={20}
2462
+ * texts={{ page: "Page", of: "of" }}
2463
+ * labels={{ prev: "Previous", next: "Next" }}
2464
+ * />
2465
+ *
2466
+ * @extends HTMLDivElement
2467
+ *
2468
+ * @prop {string} [props.className] - Additional CSS classes to apply to the paginator container.
2469
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2470
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the paginator element.
2471
+ * @prop {number} [props.totalPages] - Total number of pages available for navigation.
2472
+ * @prop {number} [props.currentPage] - Current active page number.
2473
+ * @prop {function} [props.setCurrentPage] - Function to update the current page state.
2474
+ * @prop {boolean} [props.noInput] - Whether to hide the page input field and show read-only text.
2475
+ * @prop {object} [props.texts] - Custom text labels for page display.
2476
+ * @prop {string} [props.texts.page="Page"] - Text label for "Page".
2477
+ * @prop {string} [props.texts.of="of"] - Text label for "of".
2478
+ * @prop {object} [props.icons] - Custom icons for navigation buttons.
2479
+ * @prop {React.ReactNode} [props.icons.prev] - Custom icon for the previous page button.
2480
+ * @prop {React.ReactNode} [props.icons.next] - Custom icon for the next page button.
2481
+ * @prop {object} [props.labels] - Custom aria labels and tooltips for navigation buttons.
2482
+ * @prop {string} [props.labels.prev="Previous"] - Label for the previous page button.
2483
+ * @prop {string} [props.labels.next="Next"] - Label for the next page button.
2484
+ * @prop {boolean} [props.hideButtonsTooltip] - Whether to hide tooltips on navigation buttons.
2485
+ * @prop {function} [props.handlePrev] - Custom handler for previous page navigation.
2486
+ * @prop {function} [props.handleNext] - Custom handler for next page navigation.
2487
+ * @prop {function} [props.handlePage] - Custom handler for direct page navigation.
2488
+ *
2489
+ * @returns {JSX.Element} The rendered Paginator component.
2490
+ *
2491
+ * @see https://doc-julseb-lib-react.vercel.app/components/paginator
2492
+ */
2493
+ declare const Paginator: FC$1<ILibPaginator>;
2494
+
2495
+ /**
2496
+ * ProgressBar component for displaying progress with customizable colors and animations using a meter element.
2497
+ *
2498
+ * @component
2499
+ *
2500
+ * @example
2501
+ * <ProgressBar
2502
+ * value={75}
2503
+ * color="primary"
2504
+ * max={100}
2505
+ * />
2506
+ *
2507
+ * @extends HTMLMeterElement
2508
+ *
2509
+ * @prop {string} [props.className] - Additional CSS classes to apply to the progress bar.
2510
+ * @prop {React.Ref<HTMLMeterElement>} [props.ref] - Ref to the progress bar element.
2511
+ * @prop {number} [props.value] - Current progress value.
2512
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color theme for the progress bar fill.
2513
+ * @prop {boolean} [props.noAnimation] - Whether to disable the progress animation.
2514
+ * @prop {number} [props.min=0] - Minimum value for the progress bar.
2515
+ * @prop {number} [props.max=100] - Maximum value for the progress bar.
2516
+ * @prop {string} [props.id] - Unique identifier for the progress bar element.
2517
+ *
2518
+ * @returns {JSX.Element} The rendered ProgressBar component.
2519
+ *
2520
+ * @see https://doc-julseb-lib-react.vercel.app/components/progress-bar
2521
+ */
2522
+ declare const ProgressBar: FC$1<ILibProgressBar>;
2523
+
2524
+ /**
2525
+ * ProgressCircle component for displaying circular progress with customizable colors and smooth animations using SVG.
2526
+ *
2527
+ * @component
2528
+ *
2529
+ * @example
2530
+ * <ProgressCircle
2531
+ * value={75}
2532
+ * color="primary"
2533
+ * size={120}
2534
+ * showValue
2535
+ * />
2536
+ *
2537
+ * @extends HTMLDivElement
2538
+ *
2539
+ * @prop {string} [props.className] - Additional CSS classes to apply to the progress circle.
2540
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2541
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the progress circle element.
2542
+ * @prop {number} [props.value] - Current progress value (0-100).
2543
+ * @prop {number} [props.size=48] - Size of the progress circle in pixels.
2544
+ * @prop {number} [props.strokeWidth=4] - Width of the progress stroke.
2545
+ * @prop {boolean} [props.noAnimation] - Whether to disable the progress animation.
2546
+ * @prop {"primary" | "secondary" | "success" | "danger" | "warning" | "gray" | "white"} [props.color="primary"] - Color theme for the progress circle stroke.
2547
+ * @prop {boolean} [props.showValue] - Whether to display the percentage value in the center.
2548
+ * @prop {React.ReactNode} [props.icon] - Custom icon to display in the center instead of value.
2549
+ *
2550
+ * @returns {JSX.Element} The rendered ProgressCircle component.
2551
+ *
2552
+ * @see https://doc-julseb-lib-react.vercel.app/components/progress-circle
2553
+ */
2554
+ declare const ProgressCircle: FC$1<ILibProgressCircle>;
2555
+
2556
+ /**
2557
+ * Tabs component for creating tabbed interfaces with automatic state management and customizable styling.
2558
+ *
2559
+ * @component
2560
+ *
2561
+ * @example
2562
+ * const tabItems = [
2563
+ * { title: "Tab 1", content: "Content for tab 1" },
2564
+ * { title: "Tab 2", content: "Content for tab 2" },
2565
+ * { title: "Tab 3", content: "Content for tab 3" }
2566
+ * ]
2567
+ *
2568
+ * <Tabs
2569
+ * items={tabItems}
2570
+ * justify="stretch"
2571
+ * variant="rounded"
2572
+ * activeTab={0}
2573
+ * />
2574
+ *
2575
+ * @extends HTMLDivElement
2576
+ *
2577
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tabs container.
2578
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2579
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tabs container element.
2580
+ * @prop {Array<LibTabItem>} [props.items] - Array of tab items containing title and content for each tab.
2581
+ * @prop {"start" | "stretch"} [props.justify="start"] - Justification for positioning tabs within their container.
2582
+ * @prop {"basic" | "rounded"} [props.variant="basic"] - Visual variant for styling the tab buttons.
2583
+ * @prop {number} [props.activeTab=0] - Index of the initially active tab.
2584
+ *
2585
+ * @returns {JSX.Element} The rendered Tabs component.
2586
+ *
2587
+ * @see https://doc-julseb-lib-react.vercel.app/components/tabs
2588
+ */
2589
+ declare const Tabs: FC$1<ILibTabs>;
2590
+
2591
+ /**
2592
+ * TabsContainer component for wrapping tab navigation and content panels with customizable styling.
2593
+ *
2594
+ * @component
2595
+ *
2596
+ * @example
2597
+ * <TabsContainer>
2598
+ * <TabsButtonsContainer>
2599
+ * <TabsButton>Tab 1</TabsButton>
2600
+ * <TabsButton>Tab 2</TabsButton>
2601
+ * </TabsButtonsContainer>
2602
+ * <TabsContent>Content 1</TabsContent>
2603
+ * <TabsContent>Content 2</TabsContent>
2604
+ * </TabsContainer>
2605
+ *
2606
+ * @extends HTMLDivElement
2607
+ *
2608
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tabs container.
2609
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2610
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tabs container element.
2611
+ * @prop {React.ReactNode} [props.children] - Child components (typically TabsNav and TabsContent).
2612
+ *
2613
+ * @returns {JSX.Element} The rendered TabsContainer component.
2614
+ *
2615
+ * @see https://doc-julseb-lib-react.vercel.app/components/tabs
2616
+ */
2617
+ declare const TabsContainer: FC$1<ILibTabsContainer>;
2618
+
2619
+ /**
2620
+ * TabsButtonsContainer component for wrapping tab navigation buttons with customizable layout and styling.
2621
+ *
2622
+ * @component
2623
+ *
2624
+ * @example
2625
+ * <TabsButtonsContainer justify="stretch" variant="rounded">
2626
+ * <TabsButton>Tab 1</TabsButton>
2627
+ * <TabsButton>Tab 2</TabsButton>
2628
+ * <TabsButton>Tab 3</TabsButton>
2629
+ * </TabsButtonsContainer>
2630
+ *
2631
+ * @extends HTMLDivElement
2632
+ *
2633
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tabs buttons container.
2634
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2635
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tabs buttons container element.
2636
+ * @prop {React.ReactNode} [props.children] - Child components (typically TabsButton components).
2637
+ * @prop {"start" | "stretch"} [props.justify="start"] - Justification for positioning tabs within their container.
2638
+ * @prop {"basic" | "rounded"} [props.variant="basic"] - Visual variant for styling the tab buttons.
2639
+ *
2640
+ * @returns {JSX.Element} The rendered TabsButtonsContainer component.
2641
+ *
2642
+ * @see https://doc-julseb-lib-react.vercel.app/components/tabs
2643
+ */
2644
+ declare const TabsButtonsContainer: FC$1<ILibTabsButtonsContainer>;
2645
+
2646
+ /**
2647
+ * TabsButton component for individual tab navigation buttons with active states and customizable styling.
2648
+ *
2649
+ * @component
2650
+ *
2651
+ * @example
2652
+ * <TabsButton
2653
+ * isActive={activeTab === 'tab1'}
2654
+ * onClick={() => setActiveTab('tab1')}
2655
+ * variant="rounded"
2656
+ * >
2657
+ * Tab 1
2658
+ * </TabsButton>
2659
+ *
2660
+ * @extends HTMLButtonElement
2661
+ *
2662
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tab button.
2663
+ * @prop {React.ElementType} [props.element="button"] - HTML element type to render as the container.
2664
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the tab button element.
2665
+ * @prop {React.ReactNode} [props.children] - Content to display inside the tab button.
2666
+ * @prop {"start" | "stretch"} [props.justify="start"] - Justification for positioning the button content.
2667
+ * @prop {"basic" | "rounded"} [props.variant="basic"] - Visual variant for styling the tab button.
2668
+ * @prop {boolean} [props.isActive] - Whether this tab button is currently active/selected.
2669
+ * @prop {function} [props.onClick] - Click handler function for tab selection.
2670
+ *
2671
+ * @returns {JSX.Element} The rendered TabsButton component.
2672
+ *
2673
+ * @see https://doc-julseb-lib-react.vercel.app/components/tabs
2674
+ */
2675
+ declare const TabsButton: FC$1<ILibTabsButton>;
2676
+
2677
+ /**
2678
+ * TabsContent component for displaying individual tab panel content with conditional rendering based on active state.
2679
+ *
2680
+ * @component
2681
+ *
2682
+ * @example
2683
+ * <TabsContent isActive={activeTab === 'tab1'}>
2684
+ * <h3>Tab 1 Content</h3>
2685
+ * <p>This is the content for the first tab.</p>
2686
+ * </TabsContent>
2687
+ *
2688
+ * @extends HTMLDivElement
2689
+ *
2690
+ * @prop {string} [props.className] - Additional CSS classes to apply to the tab content container.
2691
+ * @prop {React.ElementType} [props.element] - HTML element type to render as the container. Defaults to Text if children is string, otherwise "div".
2692
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the tab content element.
2693
+ * @prop {React.ReactNode} [props.children] - Content to display inside the tab panel.
2694
+ * @prop {boolean} [props.isActive] - Whether this tab content is currently active/visible.
2695
+ *
2696
+ * @returns {JSX.Element} The rendered TabsContent component.
2697
+ *
2698
+ * @see https://doc-julseb-lib-react.vercel.app/components/tabs
2699
+ */
2700
+ declare const TabsContent: FC$1<ILibTabContent>;
2701
+
2702
+ /**
2703
+ * Slideshow component for displaying images or content with navigation controls, pagination, and touch/swipe support.
2704
+ *
2705
+ * @component
2706
+ *
2707
+ * @example
2708
+ * <Slideshow
2709
+ * images={["image1.jpg", "image2.jpg", "image3.jpg"]}
2710
+ * controls={{ prev: <BiChevronLeft />, next: <BiChevronRight /> }}
2711
+ * pagination={{ type: "dots", position: "outside" }}
2712
+ * options={{ autoPlay: 3000, speed: 500 }}
2713
+ * imgFit="cover"
2714
+ * borderRadius="md"
2715
+ * />
2716
+ *
2717
+ * @extends HTMLDivElement
2718
+ *
2719
+ * @prop {string} [props.className] - Additional CSS classes to apply to the slideshow container.
2720
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2721
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the slideshow element.
2722
+ * @prop {React.ReactNode} [props.children] - Child components to display as slides when not using images prop.
2723
+ * @prop {"cover" | "contain" | "fill"} [props.imgFit="cover"] - Object fit property for images in the slideshow.
2724
+ * @prop {object} [props.controls] - Configuration object for navigation control buttons.
2725
+ * @prop {boolean} [props.hideControls=false] - Whether to hide the navigation control buttons.
2726
+ * @prop {ILibPaginationOptions} [props.options] - Configuration options for autoplay timing and transition speed.
2727
+ * @prop {string[]} [props.images] - Array of image URLs to display in the slideshow.
2728
+ * @prop {object} [props.pagination] - Configuration object for pagination indicators and behavior.
2729
+ * @prop {boolean} [props.hidePagination] - Whether to hide the pagination indicators.
2730
+ * @prop {LibBorderRadius} [props.borderRadius] - Border radius variant for the slideshow container.
2731
+ *
2732
+ * @returns {JSX.Element} The rendered Slideshow component.
2733
+ *
2734
+ * @see https://doc-julseb-lib-react.vercel.app/components/slideshow
2735
+ */
2736
+ declare const Slideshow: FC$1<ILibSlideshow>;
2737
+
2738
+ /**
2739
+ * Cover component for creating full-screen layouts with background images, overlays, and content positioning.
2740
+ *
2741
+ * @component
2742
+ *
2743
+ * @example
2744
+ * <Cover
2745
+ * img="/images/hero-bg.jpg"
2746
+ * alt="Hero background"
2747
+ * overlay="gradient-black"
2748
+ * alignItems="center"
2749
+ * justifyContent="center"
2750
+ * >
2751
+ * <Text tag="h1" display className="text-white">
2752
+ * Welcome to our site
2753
+ * </Text>
2754
+ * </Cover>
2755
+ *
2756
+ * @extends ILibFlexbox
2757
+ *
2758
+ * @prop {string} [props.className] - Additional CSS classes to apply to the cover container.
2759
+ * @prop {React.ElementType} [props.element=Flexbox] - HTML element type to render as the container.
2760
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the cover element.
2761
+ * @prop {string} [props.img] - URL of the background image to display.
2762
+ * @prop {string} [props.alt] - Alt text for the background image.
2763
+ * @prop {LibBgOverlay} [props.overlay] - Overlay variant to apply over the background image.
2764
+ * @prop {React.ReactNode} [props.children] - Content to display over the background image.
2765
+ *
2766
+ * @returns {JSX.Element} The rendered Cover component.
2767
+ *
2768
+ * @see https://doc-julseb-lib-react.vercel.app/components/cover
2769
+ */
2770
+ declare const Cover: FC$1<ILibCover>;
2771
+
2772
+ /**
2773
+ * Table component for creating structured data tables with customizable styling, variants, and automatic link detection.
2774
+ *
2775
+ * @component
2776
+ *
2777
+ * @example
2778
+ * <Table
2779
+ * variant="bordered"
2780
+ * headers={["Name", "Email", "Role"]}
2781
+ * data={[
2782
+ * ["John Doe", "john@example.com", "Admin"],
2783
+ * ["Jane Smith", "jane@example.com", "User"]
2784
+ * ]}
2785
+ * footers={["Total: 2 users", "", ""]}
2786
+ * linkify
2787
+ * />
2788
+ *
2789
+ * @extends HTMLTableElement
2790
+ *
2791
+ * @prop {string} [props.className] - Additional CSS classes to apply to the table.
2792
+ * @prop {React.Ref<HTMLTableElement>} [props.ref] - Ref to the table element.
2793
+ * @prop {React.ReactNode} [props.children] - Table content when not using data prop.
2794
+ * @prop {"bordered" | "stripped" | "border-bottom"} [props.variant="bordered"] - Visual variant for table styling.
2795
+ * @prop {"align-baseline" | "align-top" | "align-middle" | "align-bottom" | "align-text-top" | "align-text-bottom" | "align-sub" | "align-super"} [props.vAlign="align-top"] - Vertical alignment for table cells.
2796
+ * @prop {"left" | "center" | "right" | "justify"} [props.textAlign="left"] - Text alignment for table content.
2797
+ * @prop {boolean} [props.linkify] - Whether to automatically convert URLs in text to clickable links.
2798
+ * @prop {boolean} [props.blank] - Whether links should open in new tab when linkify is enabled.
2799
+ * @prop {Array<React.ReactNode>} [props.headers] - Array of header content for table columns.
2800
+ * @prop {Array<React.ReactNode>} [props.footers] - Array of footer content for table columns.
2801
+ * @prop {Array<Array<React.ReactNode>>} [props.data] - 2D array of table data for automatic table generation.
2802
+ *
2803
+ * @returns {JSX.Element} The rendered Table component.
2804
+ *
2805
+ * @see https://doc-julseb-lib-react.vercel.app/components/table
2806
+ */
2807
+ declare const Table: FC$1<ILibTable>;
2808
+
2809
+ /**
2810
+ * PageLoading component for displaying a full-screen loading overlay with customizable background and loader.
2811
+ *
2812
+ * @component
2813
+ *
2814
+ * @example
2815
+ * <PageLoading
2816
+ * backgroundColor="primary-500"
2817
+ * loaderColor="white"
2818
+ * loaderVariant={2}
2819
+ * stopScrolling
2820
+ * />
2821
+ *
2822
+ * @extends HTMLDivElement
2823
+ *
2824
+ * @prop {string} [props.className] - Additional CSS classes to apply to the page loading container.
2825
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2826
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the page loading element.
2827
+ * @prop {LibColors} [props.backgroundColor="primary-500"] - Background color for the loading overlay.
2828
+ * @prop {LibColorsShort} [props.loaderColor="white"] - Color of the loading spinner.
2829
+ * @prop {1 | 2 | 3} [props.loaderVariant=1] - Visual variant of the loading spinner.
2830
+ * @prop {boolean} [props.stopScrolling] - Whether to disable page scrolling while loading is visible.
2831
+ *
2832
+ * @returns {JSX.Element} The rendered PageLoading component.
2833
+ *
2834
+ * @see https://doc-julseb-lib-react.vercel.app/components/page-loading
2835
+ */
2836
+ declare const PageLoading: FC$1<ILibPageLoading>;
2837
+
2838
+ /**
2839
+ * Sticky component for creating elements that stick to a specified position during scroll.
2840
+ *
2841
+ * @component
2842
+ *
2843
+ * @example
2844
+ * <Sticky top="md">
2845
+ * <nav>Navigation content</nav>
2846
+ * </Sticky>
2847
+ *
2848
+ * @extends HTMLDivElement
2849
+ *
2850
+ * @prop {string} [props.className] - Additional CSS classes to apply to the sticky container.
2851
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2852
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the sticky element.
2853
+ * @prop {React.ReactNode} [props.children] - Content to be positioned sticky.
2854
+ * @prop {"0px" | "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl"} [props.top="sm"] - Distance from top when sticky positioning is active.
2855
+ *
2856
+ * @returns {JSX.Element} The rendered Sticky component.
2857
+ *
2858
+ * @see https://doc-julseb-lib-react.vercel.app/components/sticky
2859
+ */
2860
+ declare const Sticky: FC$1<ILibSticky>;
2861
+
2862
+ /**
2863
+ * MarkdownEditor component for creating rich text content with live preview and customizable toolbar.
2864
+ *
2865
+ * @component
2866
+ *
2867
+ * @example
2868
+ * <MarkdownEditor
2869
+ * value={content}
2870
+ * setValue={setContent}
2871
+ * label="Article Content"
2872
+ * defaultView="live"
2873
+ * options={{
2874
+ * bold: true,
2875
+ * italic: true,
2876
+ * code: true,
2877
+ * editorPreview: true
2878
+ * }}
2879
+ * />
2880
+ *
2881
+ * @extends HTMLTextAreaElement
2882
+ *
2883
+ * @prop {string} [props.className] - Additional CSS classes to apply to the textarea.
2884
+ * @prop {React.Ref<HTMLTextAreaElement>} [props.ref] - Ref to the textarea element.
2885
+ * @prop {string} [props.value] - Current markdown content value.
2886
+ * @prop {function} [props.setValue] - Function to update the markdown content.
2887
+ * @prop {string} [props.label] - Label text for the editor.
2888
+ * @prop {string} [props.labelComment] - Additional comment text for the label.
2889
+ * @prop {string} [props.helper] - Helper text displayed above the editor.
2890
+ * @prop {string} [props.helperBottom] - Helper text displayed below the editor.
2891
+ * @prop {LibValidation} [props.validation] - Validation state and messages.
2892
+ * @prop {"light" | "dark"} [props.inputBackground] - Background theme for the editor.
2893
+ * @prop {string} [props.id] - HTML id attribute for the textarea.
2894
+ * @prop {"code" | "live" | "preview"} [props.defaultView="live"] - Initial view mode for the editor.
2895
+ * @prop {LibMarkdownEditorOptions} [props.options] - Configuration for which toolbar buttons to show.
2896
+ * @prop {string} [props.textButtonTitles="Titles"] - Text for the titles dropdown button.
2897
+ * @prop {object} [props.icons] - Custom icons for toolbar buttons.
2898
+ *
2899
+ * @returns {JSX.Element} The rendered MarkdownEditor component.
2900
+ *
2901
+ * @see https://doc-julseb-lib-react.vercel.app/components/markdown-editor
2902
+ */
2903
+ declare const MarkdownEditor: FC$1<ILibMarkdownEditor>;
2904
+
2905
+ /**
2906
+ * MarkdownContainer component for rendering markdown content with customizable parsing options and styling.
2907
+ *
2908
+ * @component
2909
+ *
2910
+ * @example
2911
+ * <MarkdownContainer>
2912
+ * # Hello World
2913
+ * This is **bold** and *italic* text.
2914
+ * </MarkdownContainer>
2915
+ *
2916
+ * @extends HTMLDivElement
2917
+ *
2918
+ * @prop {string} [props.className] - Additional CSS classes to apply to the markdown container.
2919
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the markdown container element.
2920
+ * @prop {string} [props.children] - Markdown content to parse and render.
2921
+ * @prop {object} [props.options=libOptionsMarkdown] - Markdown parsing options and configurations.
2922
+ *
2923
+ * @returns {JSX.Element} The rendered MarkdownContainer component.
2924
+ *
2925
+ * @see https://doc-julseb-lib-react.vercel.app/components/markdown-container
2926
+ */
2927
+ declare const MarkdownContainer: FC$1<ILibMarkdownContainer>;
2928
+
2929
+ /**
2930
+ * CodeContainer component for displaying syntax-highlighted code with optional copy functionality.
2931
+ *
2932
+ * @component
2933
+ *
2934
+ * @example
2935
+ * <CodeContainer>
2936
+ * const hello = "world";
2937
+ * console.log(hello);
2938
+ * </CodeContainer>
2939
+ *
2940
+ * @extends HTMLDivElement
2941
+ *
2942
+ * @prop {string} [props.className] - Additional CSS classes to apply to the code container.
2943
+ * @prop {React.ElementType} [props.element] - HTML element type to render as the container.
2944
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the code container element.
2945
+ * @prop {React.ReactNode} [props.children] - Code content to display and highlight.
2946
+ * @prop {object} [props.highlighterProps] - Additional props to pass to the syntax highlighter.
2947
+ * @prop {LibAllColors} [props.textColor] - Text color for the code content.
2948
+ * @prop {LibAllColors} [props.backgroundColor] - Background color for the code content.
2949
+ * @prop {object} [props.style=atomOneDark] - Custom styles for the syntax highlighter.
2950
+ * @prop {boolean} [props.hideCopyButton] - Whether to hide the copy to clipboard button.
2951
+ * @prop {object} [props.tooltipTexts] - Custom tooltip texts for copy button states.
2952
+ * @prop {object} [props.icons] - Custom icons for copy button states.
2953
+ *
2954
+ * @returns {JSX.Element} The rendered CodeContainer component.
2955
+ *
2956
+ * @see https://doc-julseb-lib-react.vercel.app/components/code-container
2957
+ */
2958
+ declare const CodeContainer: FC$1<ILibCodeContainer>;
2959
+
2960
+ /**
2961
+ * Fade component for creating smooth fade-in animations when elements enter the viewport.
2962
+ *
2963
+ * @component
2964
+ *
2965
+ * @example
2966
+ * <Fade>
2967
+ * <h1>This content will fade in when visible</h1>
2968
+ * </Fade>
2969
+ *
2970
+ * @extends HTMLDivElement
2971
+ *
2972
+ * @prop {string} [props.className] - Additional CSS classes to apply to the fade container.
2973
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
2974
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the fade element.
2975
+ * @prop {React.ReactNode} [props.children] - Content to animate with fade effect.
2976
+ *
2977
+ * @returns {JSX.Element} The rendered Fade component.
2978
+ *
2979
+ * @see https://doc-julseb-lib-react.vercel.app/components/fade
2980
+ */
2981
+ declare const Fade: FC$1<ILibFade>;
2982
+
2983
+ /**
2984
+ * BackToTop component for providing a smooth scroll-to-top functionality with customizable styling and positioning.
2985
+ *
2986
+ * @component
2987
+ *
2988
+ * @example
2989
+ * <BackToTop
2990
+ * color="primary"
2991
+ * tooltip="Back to top"
2992
+ * showTooltip={{ position: "left" }}
2993
+ * />
2994
+ *
2995
+ * @extends ILibButtonIcon
2996
+ *
2997
+ * @prop {string} [props.className] - Additional CSS classes to apply to the back-to-top button.
2998
+ * @prop {React.Ref<HTMLButtonElement>} [props.ref] - Ref to the button element.
2999
+ * @prop {React.ReactElement} [props.icon=<BiUpArrowAlt />] - Custom icon for the back-to-top button.
3000
+ * @prop {LibColorsShort} [props.color="primary"] - Color theme for the button styling.
3001
+ * @prop {string} [props.tooltip="Back to top"] - Tooltip text displayed on hover.
3002
+ * @prop {LibTooltipPositionOptions} [props.showTooltip] - Configuration for tooltip positioning and styling.
3003
+ *
3004
+ * @returns {JSX.Element} The rendered BackToTop component.
3005
+ *
3006
+ * @see https://doc-julseb-lib-react.vercel.app/components/back-to-top
3007
+ */
3008
+ declare const BackToTop: FC$1<ILibBackToTop>;
3009
+
3010
+ /**
3011
+ * Drawer component for creating slide-out panels with customizable positioning, styling, and overlay functionality.
3012
+ *
3013
+ * @component
3014
+ *
3015
+ * @example
3016
+ * <Drawer
3017
+ * isOpen={isDrawerOpen}
3018
+ * setIsOpen={setIsDrawerOpen}
3019
+ * position="right"
3020
+ * backgroundColor="primary"
3021
+ * contentColor="white"
3022
+ * >
3023
+ * <h2>Drawer Content</h2>
3024
+ * <p>This is the drawer content.</p>
3025
+ * </Drawer>
3026
+ *
3027
+ * @extends HTMLDivElement
3028
+ *
3029
+ * @prop {string} [props.className] - Additional CSS classes to apply to the drawer container.
3030
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
3031
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the drawer element.
3032
+ * @prop {React.ReactNode} [props.children] - Content to display inside the drawer.
3033
+ * @prop {boolean} [props.isOpen] - Whether the drawer is currently open.
3034
+ * @prop {function} [props.setIsOpen] - Function to control the drawer's open/closed state.
3035
+ * @prop {"left" | "right"} [props.position="right"] - Position of the drawer relative to the viewport.
3036
+ * @prop {boolean} [props.enableScrollingOpen] - Whether to allow page scrolling when drawer is open.
3037
+ * @prop {boolean} [props.disableEsc] - Whether to disable closing the drawer with the Escape key.
3038
+ * @prop {LibAllColors} [props.backgroundColor="primary"] - Background color for the drawer content area.
3039
+ * @prop {LibAllColors} [props.contentColor="white"] - Text color for the drawer content.
3040
+ * @prop {LibAllColors} [props.linksColor="white"] - Color for links and buttons within the drawer.
3041
+ * @prop {LibSpacers} [props.gap="md"] - Gap between child elements in the drawer.
3042
+ * @prop {number} [props.maxWidth=400] - Maximum width of the drawer in pixels.
3043
+ * @prop {LibAllColorsAndOverlays} [props.overlayColor="black-80"] - Background color for the overlay behind the drawer.
3044
+ * @prop {boolean} [props.hideCloseButton] - Whether to hide the close button in the drawer.
3045
+ *
3046
+ * @returns {JSX.Element} The rendered Drawer component.
3047
+ *
3048
+ * @see https://doc-julseb-lib-react.vercel.app/components/drawer
3049
+ */
3050
+ declare const Drawer: FC$1<ILibDrawer>;
3051
+
3052
+ /**
3053
+ * Header component for creating responsive navigation headers with customizable positioning, mobile menu variants, and search functionality.
3054
+ *
3055
+ * @component
3056
+ *
3057
+ * @example
3058
+ * <Header
3059
+ * logo={<img src="/logo.png" alt="Logo" />}
3060
+ * burgerPosition="right"
3061
+ * navDesktopPosition="right"
3062
+ * navMobileVariant="drawer"
3063
+ * backgroundColor="primary"
3064
+ * textColor="white"
3065
+ * >
3066
+ * <nav>
3067
+ * <a href="/">Home</a>
3068
+ * <a href="/about">About</a>
3069
+ * </nav>
3070
+ * </Header>
3071
+ *
3072
+ * @extends HTMLDivElement
3073
+ *
3074
+ * @prop {string} [props.className] - Additional CSS classes to apply to the header container.
3075
+ * @prop {React.ElementType} [props.element="header"] - HTML element type to render as the container.
3076
+ * @prop {React.Ref<HTMLDivElement>} [props.ref] - Ref to the header element.
3077
+ * @prop {React.ReactNode} [props.logo] - Logo content to display in the header.
3078
+ * @prop {"left" | "right"} [props.burgerPosition="right"] - Position of the burger menu button.
3079
+ * @prop {LibColorsHover | object} [props.burgerColor="white"] - Color for the burger menu button, can be a single color or object with open/closed states.
3080
+ * @prop {React.ReactNode} [props.children] - Content to display in the navigation area.
3081
+ * @prop {"left" | "right"} [props.navDesktopPosition="right"] - Position of the navigation on desktop screens.
3082
+ * @prop {"drawer" | "fullscreen"} [props.navMobileVariant="drawer"] - Variant for mobile navigation display.
3083
+ * @prop {boolean} [props.enableScrollingOpen] - Whether to allow page scrolling when mobile menu is open.
3084
+ * @prop {React.ReactNode} [props.search] - Search component to display in the header.
3085
+ * @prop {"relative" | "absolute" | "fixed"} [props.position="relative"] - CSS position property for the header.
3086
+ * @prop {boolean | number} [props.hideOnScroll] - Whether to hide header on scroll, or scroll threshold in pixels.
3087
+ * @prop {Array<React.ReactNode>} [props.links] - Array of link elements for navigation.
3088
+ * @prop {React.ReactNode} [props.nav] - Navigation content to display.
3089
+ * @prop {LibAllColors} [props.backgroundColor="primary"] - Background color for the header.
3090
+ * @prop {LibAllColors} [props.textColor="white"] - Text color for header content.
3091
+ * @prop {LibColorsHover} [props.linkColor="white"] - Color for navigation links.
3092
+ *
3093
+ * @returns {JSX.Element} The rendered Header component.
3094
+ *
3095
+ * @see https://doc-julseb-lib-react.vercel.app/components/header
3096
+ */
3097
+ declare const Header: FC$1<ILibHeader>;
3098
+
3099
+ /**
3100
+ * Footer component for displaying a page footer with logo, links, and customizable layout options.
3101
+ *
3102
+ * @component
3103
+ *
3104
+ * @example
3105
+ * <Footer
3106
+ * logo={<img src="/logo.png" alt="Logo" />}
3107
+ * direction="horizontal"
3108
+ * linksSeparator="dot"
3109
+ * items={[
3110
+ * <a href="/privacy">Privacy</a>,
3111
+ * <a href="/terms">Terms</a>,
3112
+ * <a href="/contact">Contact</a>
3113
+ * ]}
3114
+ * />
3115
+ *
3116
+ * @extends ILibFooter
3117
+ *
3118
+ * @prop {string} [props.className] - Additional CSS classes to apply to the footer container.
3119
+ * @prop {React.ElementType} [props.element="footer"] - HTML element type to render as the container.
3120
+ * @prop {React.Ref<any>} [props.ref] - Ref to the footer element.
3121
+ * @prop {React.ReactNode} [props.children] - Child elements to display in the footer links section.
3122
+ * @prop {boolean} [props.hideSeparator] - Whether to hide the top border separator line.
3123
+ * @prop {boolean} [props.hideLinksSeparator] - Whether to hide separators between footer links.
3124
+ * @prop {"dot" | "dash"} [props.linksSeparator="dot"] - Type of separator to display between links.
3125
+ * @prop {Array<React.ReactNode>} [props.items] - Array of footer link items to display.
3126
+ * @prop {React.ReactNode} [props.logo] - Logo element to display in the footer.
3127
+ * @prop {"horizontal" | "vertical"} [props.direction="horizontal"] - Layout direction for footer content.
3128
+ * @prop {LibAllColors} [props.linksSeparatorColor="gray-500"] - Color for the separator between links.
3129
+ *
3130
+ * @returns {JSX.Element} The rendered Footer component.
3131
+ *
3132
+ * @see https://doc-julseb-lib-react.vercel.app/components/footer
3133
+ */
3134
+ declare const Footer: FC$1<ILibFooter>;
3135
+
3136
+ /**
3137
+ * Meta component for managing HTML head metadata including SEO, Open Graph, and Twitter Card properties.
3138
+ *
3139
+ * @component
3140
+ *
3141
+ * @example
3142
+ * <Meta
3143
+ * title="My Website"
3144
+ * description="A description of my website"
3145
+ * favicon="/favicon.ico"
3146
+ * cover="/og-image.jpg"
3147
+ * siteName="My Site"
3148
+ * author="John Doe"
3149
+ * url="https://mywebsite.com"
3150
+ * />
3151
+ *
3152
+ * @prop {React.ReactNode} [props.children] - Additional meta tags or head elements to include.
3153
+ * @prop {string} [props.title] - Page title for the document and social media.
3154
+ * @prop {string} [props.favicon] - URL path to the favicon icon file.
3155
+ * @prop {string} [props.description] - Page description for SEO and social media.
3156
+ * @prop {string} [props.generator] - Name of the generator used to create the page.
3157
+ * @prop {string[]} [props.keywords] - Array of keywords for SEO purposes.
3158
+ * @prop {string} [props.author] - Author name for the page content.
3159
+ * @prop {string} [props.authorUrl] - URL to the author's profile or website.
3160
+ * @prop {string} [props.publisher] - Publisher name for the content.
3161
+ * @prop {string} [props.type] - Open Graph type (e.g., "website", "article").
3162
+ * @prop {string} [props.cover] - URL to the cover image for social media sharing.
3163
+ * @prop {string} [props.siteName] - Name of the website or application.
3164
+ * @prop {string} [props.language] - Language locale code (e.g., "en-US").
3165
+ * @prop {string} [props.url] - Canonical URL of the page.
3166
+ * @prop {string} [props.email] - Contact email address.
3167
+ * @prop {string} [props.creator] - Creator name for the content.
3168
+ * @prop {string} [props.manifest] - URL path to the web app manifest file.
3169
+ * @prop {string} [props.category] - Category classification for the content.
3170
+ * @prop {string} [props.twitterCard] - Twitter Card type (e.g., "summary", "summary_large_image").
3171
+ *
3172
+ * @returns {JSX.Element} The rendered Meta component with HTML head elements.
3173
+ *
3174
+ * @see https://doc-julseb-lib-react.vercel.app/components/meta
3175
+ */
3176
+ declare const Meta: FC$1<ILibMeta>;
3177
+
3178
+ /**
3179
+ * PageLayout component for creating a complete page structure with optional header, footer, wrapper, and meta tags.
3180
+ *
3181
+ * @component
3182
+ *
3183
+ * @example
3184
+ * <PageLayout
3185
+ * meta={{ title: "My Page", description: "Page description" }}
3186
+ * header={{ logo: <Logo />, nav: <Nav /> }}
3187
+ * footer={{ logo: <Logo />, items: [<Link href="/privacy">Privacy</Link>] }}
3188
+ * wrapperProps={{ maxWidth: "px" }}
3189
+ * mainProps={{ className: "large" }}
3190
+ * >
3191
+ * <h1>Page Content</h1>
3192
+ * </PageLayout>
3193
+ *
3194
+ * @prop {React.ReactNode} [props.children] - The main content to be rendered inside the page layout.
3195
+ * @prop {ILibMeta} [props.meta] - Meta component props for HTML head metadata including SEO and social media tags.
3196
+ * @prop {ILibHeader} [props.header] - Header component props for displaying the page header with logo and navigation.
3197
+ * @prop {ILibWrapper} [props.wrapperProps] - Wrapper component props for controlling the page container styling and layout.
3198
+ * @prop {ILibMain} [props.mainProps] - Main component props for styling the main content area.
3199
+ * @prop {ILibFooter} [props.footer] - Footer component props for displaying the page footer with links and logo.
3200
+ * @prop {boolean} [props.noWrapper] - Whether to skip rendering the Wrapper component around the main content.
3201
+ * @prop {boolean} [props.noMain] - Whether to skip rendering the Main component wrapper around children.
3202
+ *
3203
+ * @returns {JSX.Element} The rendered PageLayout component with complete page structure.
3204
+ *
3205
+ * @see https://doc-julseb-lib-react.vercel.app/components/page-layout
3206
+ */
3207
+ declare const PageLayout: FC$1<ILibPageLayout>;
3208
+
3209
+ /**
3210
+ * SrOnly component for creating screen reader only content that is visually hidden but accessible to assistive technologies.
3211
+ *
3212
+ * @component
3213
+ *
3214
+ * @example
3215
+ * <SrOnly>
3216
+ * This text is only visible to screen readers
3217
+ * </SrOnly>
3218
+ *
3219
+ * @extends ILibSrOnly
3220
+ *
3221
+ * @prop {React.ElementType} [props.element="div"] - HTML element type to render as the container.
3222
+ * @prop {React.Ref<any>} [props.ref] - Ref to the sr-only element.
3223
+ * @prop {React.ReactNode} [props.children] - Content to be hidden visually but accessible to screen readers.
3224
+ *
3225
+ * @returns {JSX.Element} The rendered SrOnly component with screen reader accessible content.
3226
+ *
3227
+ * @see https://doc-julseb-lib-react.vercel.app/components/sr-only
3228
+ */
3229
+ declare const SrOnly: FC$1<ILibSrOnly>;
3230
+
3231
+ export { Accordion, AccordionItem, Alert, Aside, Autocomplete, Avatar, BackToTop, Badge, Breadcrumbs, Burger, Button, ButtonGroup, ButtonIcon, COLORS, CodeContainer, Cover, DROP_SHADOWS, DragList, DragListItem, Drawer, Dropdown, DropdownItem, FONT_FAMILIES, FONT_SIZES, FONT_WEIGHTS, Fade, Fieldset, Flexbox, Footer, Form, Grid, Header, Highlight, Hr, ICON_MULTIPLIER, INPUT_HEIGHT, INSET_SHADOWS, Image, Input, InputCheck, InputContainer, InputCounter, InputImage, InputPhone, InputPin, InputSlider, Key, LAYOUTS, LINE_HEIGHTS, Linkify, ListGroup, ListGroupItem, ListGroupTitle, Loader, MEDIA, Main, MarkdownContainer, MarkdownEditor, Masonry, Meta, Modal, OVERLAYS, PageLayout, PageLoading, Pagination, PaginationButton, Paginator, ProgressBar, ProgressCircle, RADIUS, Rating, SHADOWS, SPACERS, Section, Select, Skeleton, SkeletonCard, Slideshow, SrOnly, Sticky, TEXT_BASE_CLASSES, TEXT_SHADOWS, TRANSITIONS, Table, Tabs, TabsButton, TabsButtonsContainer, TabsContainer, TabsContent, Tag, Text, ThemeProviderWrapper, Toast, ToastContainer, Tooltip, URL_REGEX, Wrapper, clsx, genAlignContent, genAlignItems, genBgAllColors, genBgAllColorsAndOverlays, genBgColor, genBgColor50, genBgColorGhostHover, genBgColorHover, genBgColorShort, genBgOverlay, genBorderAllColors, genBorderColor, genBorderColorHover, genBorderColorShort, genBorderRadius, genBoxShadow, genButtonColor, genButtonDisabled, genColGap, genGap, genJustifyContent, genJustifyItems, genLinkColor, genMaxWidth, genObjectFit, genRingColor, genRingColorChildren, genRowGap, genTextAlign, genTextAllColor, genTextColor, genTextColorHover, genTextColorShort, genVAlign, libMarkdownEditorOptions, libOptionsMarkdown, linkifyText, toast, useClickOutside, useCopyToClipboard, useDebounce, useExportData, useFetch, useForm, useIsOverflow, useKeyPress, useLibTheme, useMaxWidth, useMergeRefs, useMinWidth, usePaginatedData, usePagination, useTouchScreen, useTranslation };