@momo-webplatform/mobase-next 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/dist/index.d.mts +1712 -132
  2. package/dist/index.mjs +142 -1
  3. package/package.json +26 -11
  4. package/src/styles/globals.css +28 -27
  5. package/dist/chunk-7LRQ2WLZ.mjs +0 -1
  6. package/dist/components/blocks/BlogSection/BlogSection.d.mts +0 -17
  7. package/dist/components/blocks/BlogSection/BlogSection.mjs +0 -1
  8. package/dist/components/blocks/BlogSection/BlogSectionTemplate.d.mts +0 -15
  9. package/dist/components/blocks/BlogSection/BlogSectionTemplate.mjs +0 -1
  10. package/dist/components/blocks/BlogSection/index.d.mts +0 -14
  11. package/dist/components/blocks/BlogSection/index.mjs +0 -1
  12. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateOne.d.mts +0 -17
  13. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateOne.mjs +0 -1
  14. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateTwo.d.mts +0 -17
  15. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateTwo.mjs +0 -1
  16. package/dist/components/blocks/BlogSection/utils.d.mts +0 -49
  17. package/dist/components/blocks/BlogSection/utils.mjs +0 -0
  18. package/dist/components/blocks/CTASection/CTASection.d.mts +0 -17
  19. package/dist/components/blocks/CTASection/CTASection.mjs +0 -1
  20. package/dist/components/blocks/CTASection/CTASectionTemplate.d.mts +0 -18
  21. package/dist/components/blocks/CTASection/CTASectionTemplate.mjs +0 -1
  22. package/dist/components/blocks/CTASection/index.d.mts +0 -14
  23. package/dist/components/blocks/CTASection/index.mjs +0 -1
  24. package/dist/components/blocks/CTASection/utils.d.mts +0 -60
  25. package/dist/components/blocks/CTASection/utils.mjs +0 -0
  26. package/dist/components/blocks/FAQSection/FAQSection.d.mts +0 -17
  27. package/dist/components/blocks/FAQSection/FAQSection.mjs +0 -1
  28. package/dist/components/blocks/FAQSection/FAQTemplate.d.mts +0 -18
  29. package/dist/components/blocks/FAQSection/FAQTemplate.mjs +0 -1
  30. package/dist/components/blocks/FAQSection/index.d.mts +0 -14
  31. package/dist/components/blocks/FAQSection/index.mjs +0 -1
  32. package/dist/components/blocks/FAQSection/utils.d.mts +0 -36
  33. package/dist/components/blocks/FAQSection/utils.mjs +0 -0
  34. package/dist/components/blocks/FeatureSection/FeatureSection.d.mts +0 -17
  35. package/dist/components/blocks/FeatureSection/FeatureSection.mjs +0 -1
  36. package/dist/components/blocks/FeatureSection/FeatureTemlates.d.mts +0 -29
  37. package/dist/components/blocks/FeatureSection/FeatureTemlates.mjs +0 -1
  38. package/dist/components/blocks/FeatureSection/index.d.mts +0 -14
  39. package/dist/components/blocks/FeatureSection/index.mjs +0 -1
  40. package/dist/components/blocks/FeatureSection/utils.d.mts +0 -77
  41. package/dist/components/blocks/FeatureSection/utils.mjs +0 -0
  42. package/dist/components/blocks/GiftListSection/GiftListSection.d.mts +0 -17
  43. package/dist/components/blocks/GiftListSection/GiftListSection.mjs +0 -1
  44. package/dist/components/blocks/GiftListSection/GiftListSectionTemplate.d.mts +0 -17
  45. package/dist/components/blocks/GiftListSection/GiftListSectionTemplate.mjs +0 -1
  46. package/dist/components/blocks/GiftListSection/index.d.mts +0 -14
  47. package/dist/components/blocks/GiftListSection/index.mjs +0 -1
  48. package/dist/components/blocks/GiftListSection/utils.d.mts +0 -81
  49. package/dist/components/blocks/GiftListSection/utils.mjs +0 -0
  50. package/dist/components/blocks/HeroSection/HeroSection.d.mts +0 -18
  51. package/dist/components/blocks/HeroSection/HeroSection.mjs +0 -1
  52. package/dist/components/blocks/HeroSection/HeroSectionFeatures.d.mts +0 -31
  53. package/dist/components/blocks/HeroSection/HeroSectionFeatures.mjs +0 -1
  54. package/dist/components/blocks/HeroSection/HeroSectionMedia.d.mts +0 -17
  55. package/dist/components/blocks/HeroSection/HeroSectionMedia.mjs +0 -1
  56. package/dist/components/blocks/HeroSection/HeroSectionStats.d.mts +0 -19
  57. package/dist/components/blocks/HeroSection/HeroSectionStats.mjs +0 -1
  58. package/dist/components/blocks/HeroSection/HeroSectionTemplate.d.mts +0 -19
  59. package/dist/components/blocks/HeroSection/HeroSectionTemplate.mjs +0 -1
  60. package/dist/components/blocks/HeroSection/index.d.mts +0 -14
  61. package/dist/components/blocks/HeroSection/index.mjs +0 -1
  62. package/dist/components/blocks/HeroSection/utils.d.mts +0 -84
  63. package/dist/components/blocks/HeroSection/utils.mjs +0 -1
  64. package/dist/components/blocks/HowItWorksSection/HowItWorksSection.d.mts +0 -17
  65. package/dist/components/blocks/HowItWorksSection/HowItWorksSection.mjs +0 -1
  66. package/dist/components/blocks/HowItWorksSection/HowItWorksSectionTemplate.d.mts +0 -19
  67. package/dist/components/blocks/HowItWorksSection/HowItWorksSectionTemplate.mjs +0 -1
  68. package/dist/components/blocks/HowItWorksSection/index.d.mts +0 -14
  69. package/dist/components/blocks/HowItWorksSection/index.mjs +0 -1
  70. package/dist/components/blocks/HowItWorksSection/utils.d.mts +0 -47
  71. package/dist/components/blocks/HowItWorksSection/utils.mjs +0 -0
  72. package/dist/components/blocks/MetricsSection/MetricsSection.d.mts +0 -17
  73. package/dist/components/blocks/MetricsSection/MetricsSection.mjs +0 -1
  74. package/dist/components/blocks/MetricsSection/MetricsSectionTemplate.d.mts +0 -15
  75. package/dist/components/blocks/MetricsSection/MetricsSectionTemplate.mjs +0 -1
  76. package/dist/components/blocks/MetricsSection/index.d.mts +0 -14
  77. package/dist/components/blocks/MetricsSection/index.mjs +0 -1
  78. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateOne.d.mts +0 -17
  79. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateOne.mjs +0 -1
  80. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateTwo.d.mts +0 -17
  81. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateTwo.mjs +0 -1
  82. package/dist/components/blocks/MetricsSection/utils.d.mts +0 -38
  83. package/dist/components/blocks/MetricsSection/utils.mjs +0 -0
  84. package/dist/components/blocks/NewsSection/NewsSection.d.mts +0 -17
  85. package/dist/components/blocks/NewsSection/NewsSection.mjs +0 -1
  86. package/dist/components/blocks/NewsSection/NewsSectionTemplate.d.mts +0 -17
  87. package/dist/components/blocks/NewsSection/NewsSectionTemplate.mjs +0 -1
  88. package/dist/components/blocks/NewsSection/index.d.mts +0 -14
  89. package/dist/components/blocks/NewsSection/index.mjs +0 -1
  90. package/dist/components/blocks/NewsSection/utils.d.mts +0 -64
  91. package/dist/components/blocks/NewsSection/utils.mjs +0 -0
  92. package/dist/components/blocks/SocialProofSection/SocialProofSection.d.mts +0 -17
  93. package/dist/components/blocks/SocialProofSection/SocialProofSection.mjs +0 -1
  94. package/dist/components/blocks/SocialProofSection/SocialProofTemplates.d.mts +0 -17
  95. package/dist/components/blocks/SocialProofSection/SocialProofTemplates.mjs +0 -1
  96. package/dist/components/blocks/SocialProofSection/index.d.mts +0 -14
  97. package/dist/components/blocks/SocialProofSection/index.mjs +0 -1
  98. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate1.d.mts +0 -17
  99. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate1.mjs +0 -1
  100. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate2.d.mts +0 -17
  101. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate2.mjs +0 -1
  102. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate3.d.mts +0 -17
  103. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate3.mjs +0 -1
  104. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate4.d.mts +0 -17
  105. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate4.mjs +0 -18
  106. package/dist/components/blocks/SocialProofSection/utils.d.mts +0 -31
  107. package/dist/components/blocks/SocialProofSection/utils.mjs +0 -0
  108. package/dist/components/blocks/TestimonialSection/TestimonialSection.d.mts +0 -17
  109. package/dist/components/blocks/TestimonialSection/TestimonialSection.mjs +0 -1
  110. package/dist/components/blocks/TestimonialSection/index.d.mts +0 -14
  111. package/dist/components/blocks/TestimonialSection/index.mjs +0 -1
  112. package/dist/components/blocks/TestimonialSection/shared.d.mts +0 -29
  113. package/dist/components/blocks/TestimonialSection/shared.mjs +0 -1
  114. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateOne.d.mts +0 -17
  115. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateOne.mjs +0 -1
  116. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateThree.d.mts +0 -17
  117. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateThree.mjs +0 -1
  118. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateTwo.d.mts +0 -17
  119. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateTwo.mjs +0 -5
  120. package/dist/components/blocks/TestimonialSection/utils.d.mts +0 -37
  121. package/dist/components/blocks/TestimonialSection/utils.mjs +0 -1
  122. package/dist/components/blocks/action-button/action-button.d.mts +0 -15
  123. package/dist/components/blocks/action-button/action-button.mjs +0 -1
  124. package/dist/components/blocks/action-button/index.d.mts +0 -12
  125. package/dist/components/blocks/action-button/index.mjs +0 -1
  126. package/dist/components/blocks/action-button/utils.d.mts +0 -40
  127. package/dist/components/blocks/action-button/utils.mjs +0 -1
  128. package/dist/components/blocks/common-blocks/common-blocks.d.mts +0 -18
  129. package/dist/components/blocks/common-blocks/common-blocks.mjs +0 -1
  130. package/dist/components/blocks/common-blocks/index.d.mts +0 -13
  131. package/dist/components/blocks/common-blocks/index.mjs +0 -1
  132. package/dist/components/blocks/common-blocks/utils.d.mts +0 -90
  133. package/dist/components/blocks/common-blocks/utils.mjs +0 -0
  134. package/dist/components/blocks/dialog-qr/DialogQr.d.mts +0 -42
  135. package/dist/components/blocks/dialog-qr/DialogQr.mjs +0 -70
  136. package/dist/components/blocks/dialog-qr/index.d.mts +0 -8
  137. package/dist/components/blocks/dialog-qr/index.mjs +0 -1
  138. package/dist/components/blocks/footer/defaults.d.mts +0 -39
  139. package/dist/components/blocks/footer/defaults.mjs +0 -1
  140. package/dist/components/blocks/footer/footer-content.d.mts +0 -6
  141. package/dist/components/blocks/footer/footer-content.mjs +0 -5
  142. package/dist/components/blocks/footer/footer.d.mts +0 -6
  143. package/dist/components/blocks/footer/footer.mjs +0 -1
  144. package/dist/components/blocks/footer/index.d.mts +0 -5
  145. package/dist/components/blocks/footer/index.mjs +0 -1
  146. package/dist/components/blocks/footer/types.d.mts +0 -27
  147. package/dist/components/blocks/footer/types.mjs +0 -0
  148. package/dist/components/blocks/header-navigation/header-navigation.d.mts +0 -7
  149. package/dist/components/blocks/header-navigation/header-navigation.mjs +0 -5
  150. package/dist/components/blocks/header-navigation/index.d.mts +0 -4
  151. package/dist/components/blocks/header-navigation/index.mjs +0 -1
  152. package/dist/components/blocks/header-navigation/list-item-mobile.d.mts +0 -14
  153. package/dist/components/blocks/header-navigation/list-item-mobile.mjs +0 -1
  154. package/dist/components/blocks/header-navigation/list-item.d.mts +0 -14
  155. package/dist/components/blocks/header-navigation/list-item.mjs +0 -1
  156. package/dist/components/blocks/header-navigation/mobile-menu.d.mts +0 -11
  157. package/dist/components/blocks/header-navigation/mobile-menu.mjs +0 -1
  158. package/dist/components/blocks/header-navigation/nav-items-mobile.d.mts +0 -10
  159. package/dist/components/blocks/header-navigation/nav-items-mobile.mjs +0 -1
  160. package/dist/components/blocks/header-navigation/nav-items.d.mts +0 -11
  161. package/dist/components/blocks/header-navigation/nav-items.mjs +0 -1
  162. package/dist/components/blocks/header-navigation/types.d.mts +0 -44
  163. package/dist/components/blocks/header-navigation/types.mjs +0 -0
  164. package/dist/components/blocks/heading-group/HeadingGroup.d.mts +0 -97
  165. package/dist/components/blocks/heading-group/HeadingGroup.mjs +0 -1
  166. package/dist/components/blocks/heading-group/index.d.mts +0 -3
  167. package/dist/components/blocks/heading-group/index.mjs +0 -1
  168. package/dist/components/mobase/accordion.d.mts +0 -9
  169. package/dist/components/mobase/accordion.mjs +0 -1
  170. package/dist/components/mobase/alert-dialog.d.mts +0 -24
  171. package/dist/components/mobase/alert-dialog.mjs +0 -1
  172. package/dist/components/mobase/alert.d.mts +0 -14
  173. package/dist/components/mobase/alert.mjs +0 -1
  174. package/dist/components/mobase/aspect-ratio.d.mts +0 -8
  175. package/dist/components/mobase/aspect-ratio.mjs +0 -1
  176. package/dist/components/mobase/autocomplete.d.mts +0 -34
  177. package/dist/components/mobase/autocomplete.mjs +0 -1
  178. package/dist/components/mobase/avatar.d.mts +0 -14
  179. package/dist/components/mobase/avatar.mjs +0 -1
  180. package/dist/components/mobase/badge.d.mts +0 -15
  181. package/dist/components/mobase/badge.mjs +0 -1
  182. package/dist/components/mobase/breadcrumb.d.mts +0 -13
  183. package/dist/components/mobase/breadcrumb.mjs +0 -1
  184. package/dist/components/mobase/button-group.d.mts +0 -16
  185. package/dist/components/mobase/button-group.mjs +0 -1
  186. package/dist/components/mobase/button.d.mts +0 -22
  187. package/dist/components/mobase/button.mjs +0 -1
  188. package/dist/components/mobase/calendar.d.mts +0 -16
  189. package/dist/components/mobase/calendar.mjs +0 -1
  190. package/dist/components/mobase/card.d.mts +0 -14
  191. package/dist/components/mobase/card.mjs +0 -1
  192. package/dist/components/mobase/carousel.d.mts +0 -37
  193. package/dist/components/mobase/carousel.mjs +0 -1
  194. package/dist/components/mobase/checkbox.d.mts +0 -7
  195. package/dist/components/mobase/checkbox.mjs +0 -1
  196. package/dist/components/mobase/close-button.d.mts +0 -17
  197. package/dist/components/mobase/close-button.mjs +0 -1
  198. package/dist/components/mobase/combobox.d.mts +0 -29
  199. package/dist/components/mobase/combobox.mjs +0 -1
  200. package/dist/components/mobase/command.d.mts +0 -31
  201. package/dist/components/mobase/command.mjs +0 -1
  202. package/dist/components/mobase/date-picker.d.mts +0 -46
  203. package/dist/components/mobase/date-picker.mjs +0 -1
  204. package/dist/components/mobase/dialog.d.mts +0 -41
  205. package/dist/components/mobase/dialog.mjs +0 -1
  206. package/dist/components/mobase/drawer.d.mts +0 -46
  207. package/dist/components/mobase/drawer.mjs +0 -1
  208. package/dist/components/mobase/dropdown-menu.d.mts +0 -33
  209. package/dist/components/mobase/dropdown-menu.mjs +0 -1
  210. package/dist/components/mobase/empty.d.mts +0 -20
  211. package/dist/components/mobase/empty.mjs +0 -1
  212. package/dist/components/mobase/field.d.mts +0 -30
  213. package/dist/components/mobase/field.mjs +0 -1
  214. package/dist/components/mobase/form.d.mts +0 -7
  215. package/dist/components/mobase/form.mjs +0 -1
  216. package/dist/components/mobase/hitbox.d.mts +0 -19
  217. package/dist/components/mobase/hitbox.mjs +0 -1
  218. package/dist/components/mobase/horizontal-scroll.d.mts +0 -24
  219. package/dist/components/mobase/horizontal-scroll.mjs +0 -1
  220. package/dist/components/mobase/infinite-slider.d.mts +0 -19
  221. package/dist/components/mobase/infinite-slider.mjs +0 -1
  222. package/dist/components/mobase/input-group.d.mts +0 -27
  223. package/dist/components/mobase/input-group.mjs +0 -1
  224. package/dist/components/mobase/input-search.d.mts +0 -8
  225. package/dist/components/mobase/input-search.mjs +0 -1
  226. package/dist/components/mobase/input.d.mts +0 -34
  227. package/dist/components/mobase/input.mjs +0 -1
  228. package/dist/components/mobase/item.d.mts +0 -27
  229. package/dist/components/mobase/item.mjs +0 -1
  230. package/dist/components/mobase/kbd.d.mts +0 -6
  231. package/dist/components/mobase/kbd.mjs +0 -1
  232. package/dist/components/mobase/label.d.mts +0 -6
  233. package/dist/components/mobase/label.mjs +0 -1
  234. package/dist/components/mobase/logo.d.mts +0 -26
  235. package/dist/components/mobase/logo.mjs +0 -1
  236. package/dist/components/mobase/logos-carousel.d.mts +0 -15
  237. package/dist/components/mobase/logos-carousel.mjs +0 -27
  238. package/dist/components/mobase/marquee.d.mts +0 -16
  239. package/dist/components/mobase/marquee.mjs +0 -1
  240. package/dist/components/mobase/native-select.d.mts +0 -11
  241. package/dist/components/mobase/native-select.mjs +0 -1
  242. package/dist/components/mobase/navigation-menu.d.mts +0 -15
  243. package/dist/components/mobase/navigation-menu.mjs +0 -1
  244. package/dist/components/mobase/pagination.d.mts +0 -23
  245. package/dist/components/mobase/pagination.mjs +0 -1
  246. package/dist/components/mobase/popover.d.mts +0 -12
  247. package/dist/components/mobase/popover.mjs +0 -1
  248. package/dist/components/mobase/progress.d.mts +0 -10
  249. package/dist/components/mobase/progress.mjs +0 -1
  250. package/dist/components/mobase/radio-group.d.mts +0 -10
  251. package/dist/components/mobase/radio-group.mjs +0 -1
  252. package/dist/components/mobase/scroll-area.d.mts +0 -11
  253. package/dist/components/mobase/scroll-area.mjs +0 -1
  254. package/dist/components/mobase/select.d.mts +0 -21
  255. package/dist/components/mobase/select.mjs +0 -1
  256. package/dist/components/mobase/separator.d.mts +0 -6
  257. package/dist/components/mobase/separator.mjs +0 -1
  258. package/dist/components/mobase/skeleton.d.mts +0 -5
  259. package/dist/components/mobase/skeleton.mjs +0 -1
  260. package/dist/components/mobase/slider.d.mts +0 -6
  261. package/dist/components/mobase/slider.mjs +0 -1
  262. package/dist/components/mobase/sliding-number.d.mts +0 -10
  263. package/dist/components/mobase/sliding-number.mjs +0 -1
  264. package/dist/components/mobase/spinner.d.mts +0 -12
  265. package/dist/components/mobase/spinner.mjs +0 -1
  266. package/dist/components/mobase/switch.d.mts +0 -8
  267. package/dist/components/mobase/switch.mjs +0 -1
  268. package/dist/components/mobase/table.d.mts +0 -13
  269. package/dist/components/mobase/table.mjs +0 -1
  270. package/dist/components/mobase/tabs.d.mts +0 -14
  271. package/dist/components/mobase/tabs.mjs +0 -1
  272. package/dist/components/mobase/text-effect.d.mts +0 -30
  273. package/dist/components/mobase/text-effect.mjs +0 -2
  274. package/dist/components/mobase/textarea.d.mts +0 -10
  275. package/dist/components/mobase/textarea.mjs +0 -1
  276. package/dist/components/mobase/toast.d.mts +0 -14
  277. package/dist/components/mobase/toast.mjs +0 -1
  278. package/dist/components/mobase/tooltip.d.mts +0 -9
  279. package/dist/components/mobase/tooltip.mjs +0 -1
  280. package/dist/hooks/use-click-outside.d.mts +0 -6
  281. package/dist/hooks/use-click-outside.mjs +0 -1
  282. package/dist/hooks/use-copy-to-clipboard.d.mts +0 -9
  283. package/dist/hooks/use-copy-to-clipboard.mjs +0 -1
  284. package/dist/hooks/use-event-callback.d.mts +0 -19
  285. package/dist/hooks/use-event-callback.mjs +0 -1
  286. package/dist/hooks/use-event-listener.d.mts +0 -8
  287. package/dist/hooks/use-event-listener.mjs +0 -1
  288. package/dist/hooks/use-is-client.d.mts +0 -3
  289. package/dist/hooks/use-is-client.mjs +0 -1
  290. package/dist/hooks/use-is-momo-app.d.mts +0 -3
  291. package/dist/hooks/use-is-momo-app.mjs +0 -1
  292. package/dist/hooks/use-is-touch-device.d.mts +0 -7
  293. package/dist/hooks/use-is-touch-device.mjs +0 -1
  294. package/dist/hooks/use-isomorphic-layout-effect.d.mts +0 -5
  295. package/dist/hooks/use-isomorphic-layout-effect.mjs +0 -1
  296. package/dist/hooks/use-local-storage.d.mts +0 -5
  297. package/dist/hooks/use-local-storage.mjs +0 -1
  298. package/dist/hooks/use-mobile.d.mts +0 -3
  299. package/dist/hooks/use-mobile.mjs +0 -1
  300. package/dist/hooks/use-window-size.d.mts +0 -11
  301. package/dist/hooks/use-window-size.mjs +0 -1
  302. package/dist/lib/legacy-button-variant.d.mts +0 -13
  303. package/dist/lib/legacy-button-variant.mjs +0 -1
  304. package/dist/lib/media-ratio.d.mts +0 -6
  305. package/dist/lib/media-ratio.mjs +0 -1
  306. package/dist/lib/plain-text-from-html.d.mts +0 -6
  307. package/dist/lib/plain-text-from-html.mjs +0 -1
  308. package/dist/lib/qr-image-url.d.mts +0 -13
  309. package/dist/lib/qr-image-url.mjs +0 -1
  310. package/dist/lib/scroll-to-selector.d.mts +0 -9
  311. package/dist/lib/scroll-to-selector.mjs +0 -1
  312. package/dist/lib/testimonial-avatar.d.mts +0 -6
  313. package/dist/lib/testimonial-avatar.mjs +0 -1
  314. package/dist/lib/utils.d.mts +0 -5
  315. package/dist/lib/utils.mjs +0 -1
package/dist/index.d.mts CHANGED
@@ -1,137 +1,1717 @@
1
- export { Button, ButtonProps, buttonVariants } from './components/mobase/button.mjs';
2
- export { CloseButton, CloseButtonProps, CloseButtonSize } from './components/mobase/close-button.mjs';
3
- export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants } from './components/mobase/button-group.mjs';
4
- export { Input, InputControl, InputControlProps, InputProps, InputSize } from './components/mobase/input.mjs';
5
- export { SearchInput, SearchInputProps } from './components/mobase/input-search.mjs';
6
- export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea } from './components/mobase/input-group.mjs';
7
- export { Spinner, SpinnerProps } from './components/mobase/spinner.mjs';
8
- export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from './components/mobase/tooltip.mjs';
9
- export { Kbd, KbdGroup } from './components/mobase/kbd.mjs';
10
- export { Tabs, TabsContent, TabsList, TabsTrigger, tabsListVariants } from './components/mobase/tabs.mjs';
11
- export { HorizontalContent, HorizontalNext, HorizontalPrevious, HorizontalScroll, HorizontalScrollProps } from './components/mobase/horizontal-scroll.mjs';
12
- export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, navigationMenuTriggerStyle } from './components/mobase/navigation-menu.mjs';
13
- export { HeaderNavigation } from './components/blocks/header-navigation/header-navigation.mjs';
14
- export { Footer } from './components/blocks/footer/footer.mjs';
15
- export { FooterContent } from './components/blocks/footer/footer-content.mjs';
16
- export { footerAppDownloads, footerCertificationBadge, footerDefaultPrimaryMenu, footerDefaultSecondaryMenu, footerHelpGuideUrl, footerLogoSrc, footerMoMoText, footerQrDownloadImage, footerSocialItems, footerSupportAddress } from './components/blocks/footer/defaults.mjs';
17
- export { FooterAppDownloadItem, FooterData, FooterItem, FooterProps, FooterSocialItem } from './components/blocks/footer/types.mjs';
18
- export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from './components/mobase/table.mjs';
19
- export { Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle } from './components/mobase/field.mjs';
20
- export { Label } from './components/mobase/label.mjs';
21
- export { Separator } from './components/mobase/separator.mjs';
22
- export { Badge, BadgeProps, BadgeSize, badgeVariants } from './components/mobase/badge.mjs';
23
- export { Skeleton } from './components/mobase/skeleton.mjs';
24
- export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from './components/mobase/card.mjs';
25
- export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from './components/mobase/dropdown-menu.mjs';
26
- export { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger } from './components/mobase/popover.mjs';
27
- export { Select, SelectContent, SelectContentProps, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectTriggerProps, SelectTriggerSize, SelectValue } from './components/mobase/select.mjs';
28
- export { ScrollArea, ScrollBar } from './components/mobase/scroll-area.mjs';
29
- export { NativeSelect, NativeSelectOptGroup, NativeSelectOption } from './components/mobase/native-select.mjs';
30
- export { AnchoredToastProvider, ToastPosition, ToastProvider, ToastProviderProps, anchoredToastManager, toastManager } from './components/mobase/toast.mjs';
31
- export { Textarea, TextareaProps } from './components/mobase/textarea.mjs';
32
- export { Logo, LogoProps } from './components/mobase/logo.mjs';
33
- export { Checkbox, CheckboxProps } from './components/mobase/checkbox.mjs';
34
- export { Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, useComboboxAnchor } from './components/mobase/combobox.mjs';
35
- export { Command, CommandCollection, CommandCreateHandle, CommandDialog, CommandDialogBackdrop, CommandDialogPopup, CommandDialogPortal, CommandDialogTrigger, CommandDialogViewport, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut } from './components/mobase/command.mjs';
36
- export { RadioGroup, RadioGroupItem, RadioGroupItemProps, RadioGroupProps } from './components/mobase/radio-group.mjs';
37
- export { Switch } from './components/mobase/switch.mjs';
38
- export { Slider } from './components/mobase/slider.mjs';
39
- export { Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue } from './components/mobase/progress.mjs';
40
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from './components/mobase/accordion.mjs';
41
- export { Alert, AlertAction, AlertDescription, AlertTitle } from './components/mobase/alert.mjs';
42
- export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from './components/mobase/alert-dialog.mjs';
43
- export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyProps, EmptyTitle, emptyVariants } from './components/mobase/empty.mjs';
44
- export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle } from './components/mobase/item.mjs';
45
- export { Hitbox } from './components/mobase/hitbox.mjs';
46
- export { Form } from './components/mobase/form.mjs';
47
- export { AspectRatio } from './components/mobase/aspect-ratio.mjs';
48
- export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage } from './components/mobase/avatar.mjs';
49
- export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from './components/mobase/breadcrumb.mjs';
50
- export { Carousel, CarouselApi, CarouselContent, CarouselDots, CarouselItem, CarouselNext, CarouselPrevious, useCarousel } from './components/mobase/carousel.mjs';
51
- export { Dialog, DialogOverlay as DialogBackdrop, DialogClose, DialogContent, DialogCreateHandle, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPanel, DialogContent as DialogPopup, DialogPopupSize, DialogPortal, DialogTitle, DialogTrigger, DialogViewport, DialogViewportPlacement } from './components/mobase/dialog.mjs';
52
- export { Drawer, DrawerBackdrop, DrawerBar, DrawerClose, DrawerContent, DrawerCreateHandle, DrawerDescription, DrawerFooter, DrawerHeader, DrawerPanel, DrawerPopup, DrawerPortal, DrawerSwipeArea, DrawerTitle, DrawerTrigger, DrawerViewport } from './components/mobase/drawer.mjs';
53
- export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from './components/mobase/pagination.mjs';
54
- export { Calendar, CalendarDayButton } from './components/mobase/calendar.mjs';
55
- export { DatePicker, DatePickerPreset, DatePickerProps, DatePickerSize, DateRangePicker, DateRangePickerProps } from './components/mobase/date-picker.mjs';
56
- export { Autocomplete, AutocompleteClear, AutocompleteCollection, AutocompleteEmpty, AutocompleteGroup, AutocompleteGroupLabel, AutocompleteInput, AutocompleteItem, AutocompleteList, AutocompletePopup, AutocompleteRow, AutocompleteSeparator, AutocompleteStatus, AutocompleteTrigger, AutocompleteValue, useAutocompleteFilter } from './components/mobase/autocomplete.mjs';
57
- export { PerType, PresetType, TextEffect, TextEffectProps } from './components/mobase/text-effect.mjs';
58
- export { SlidingNumber } from './components/mobase/sliding-number.mjs';
59
- export { Marquee, MarqueeContent, MarqueeContentProps, MarqueeFade, MarqueeFadeProps, MarqueeItem, MarqueeItemProps, MarqueeProps } from './components/mobase/marquee.mjs';
60
- export { default as LogosCarousel, LogosCarouselProps } from './components/mobase/logos-carousel.mjs';
61
- export { HeroSection } from './components/blocks/HeroSection/HeroSection.mjs';
62
- export { HeroContentProps } from './components/blocks/HeroSection/utils.mjs';
63
- export { GiftListSection } from './components/blocks/GiftListSection/GiftListSection.mjs';
64
- export { GiftListItemData, GiftListSectionProps } from './components/blocks/GiftListSection/utils.mjs';
65
- export { FeatureSection } from './components/blocks/FeatureSection/FeatureSection.mjs';
66
- export { FeatureSectionProps } from './components/blocks/FeatureSection/utils.mjs';
67
- export { MetricsSection } from './components/blocks/MetricsSection/MetricsSection.mjs';
68
- export { MetricsSectionProps } from './components/blocks/MetricsSection/utils.mjs';
69
- export { CTASection } from './components/blocks/CTASection/CTASection.mjs';
70
- export { CTABlockData, CTAMedia, CTASectionProps } from './components/blocks/CTASection/utils.mjs';
71
- export { HowItWorksSection } from './components/blocks/HowItWorksSection/HowItWorksSection.mjs';
72
- export { HowItWorksData, HowItWorksSectionProps } from './components/blocks/HowItWorksSection/utils.mjs';
73
- export { BlogSection } from './components/blocks/BlogSection/BlogSection.mjs';
74
- export { BlogItemProps, BlogSectionProps, DataBlogProps } from './components/blocks/BlogSection/utils.mjs';
75
- export { NewsSection } from './components/blocks/NewsSection/NewsSection.mjs';
76
- export { DataHorizontalScrollProps, DataNewsProps, NewsItemProps, NewsSectionProps } from './components/blocks/NewsSection/utils.mjs';
77
- export { FAQSection } from './components/blocks/FAQSection/FAQSection.mjs';
78
- export { ContentsProps, DataFAQProps, FAQSectionProps } from './components/blocks/FAQSection/utils.mjs';
79
- export { SocialProofSection } from './components/blocks/SocialProofSection/SocialProofSection.mjs';
80
- export { BrandData, SocialProofSectionProps } from './components/blocks/SocialProofSection/utils.mjs';
81
- export { TestimonialSection } from './components/blocks/TestimonialSection/TestimonialSection.mjs';
82
- export { TestimonialData, TestimonialSectionProps, getColorForIndex, getInitials, randomColors } from './components/blocks/TestimonialSection/utils.mjs';
83
- export { InfiniteSlider, InfiniteSliderProps } from './components/mobase/infinite-slider.mjs';
84
- export { TESTIMONIAL_AVATAR_FALLBACK_BACKGROUNDS, getInitialsFromName, getTestimonialAvatarColorClass } from './lib/testimonial-avatar.mjs';
85
- export { plainTextFromHtml } from './lib/plain-text-from-html.mjs';
86
- export { useClickOutside } from './hooks/use-click-outside.mjs';
87
- export { useIsMobile } from './hooks/use-mobile.mjs';
88
- export { useCopyToClipboard } from './hooks/use-copy-to-clipboard.mjs';
89
- export { useIsMomoApp } from './hooks/use-is-momo-app.mjs';
90
- export { default as useLocalStorage } from './hooks/use-local-storage.mjs';
91
- export { useIsClient } from './hooks/use-is-client.mjs';
92
- export { useIsTouchDevice } from './hooks/use-is-touch-device.mjs';
93
- export { default as useWindowSize } from './hooks/use-window-size.mjs';
94
- export { cn } from './lib/utils.mjs';
95
- export { scrollToSelector } from './lib/scroll-to-selector.mjs';
96
- export { convertMediaRatio } from './lib/media-ratio.mjs';
97
- export { BuildQrCodeImageUrlOptions, buildQrCodeImageUrl } from './lib/qr-image-url.mjs';
98
- export { LegacyMobaseButtonVariantName, MobaseButtonVariant, mapLegacyMobaseButtonVariant } from './lib/legacy-button-variant.mjs';
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as class_variance_authority_types from 'class-variance-authority/types';
3
+ import { Button as Button$1 } from '@base-ui/react/button';
4
+ import { VariantProps } from 'class-variance-authority';
5
+ import * as React$1 from 'react';
6
+ import React__default, { ReactNode, ComponentProps, Ref, HTMLAttributes, ReactElement, RefObject, Dispatch, SetStateAction } from 'react';
7
+ import { useRender } from '@base-ui/react/use-render';
8
+ import { Separator as Separator$1 } from '@base-ui/react/separator';
9
+ import { Tooltip as Tooltip$1 } from '@base-ui/react/tooltip';
10
+ import { Tabs as Tabs$1 } from '@base-ui/react/tabs';
11
+ import { NavigationMenu as NavigationMenu$1 } from '@base-ui/react/navigation-menu';
12
+ import { Field as Field$1 } from '@base-ui/react/field';
13
+ import { Menu } from '@base-ui/react/menu';
14
+ import { Popover as Popover$1 } from '@base-ui/react/popover';
15
+ import { Select as Select$1 } from '@base-ui/react/select';
16
+ import { ScrollArea as ScrollArea$1 } from '@base-ui/react/scroll-area';
99
17
  export { ScrollArea as ScrollAreaPrimitive } from '@base-ui/react/scroll-area';
18
+ import { Toast } from '@base-ui/react/toast';
100
19
  export { Toast as ToastPrimitive } from '@base-ui/react/toast';
20
+ import { Checkbox as Checkbox$1 } from '@base-ui/react/checkbox';
21
+ import { Combobox as Combobox$1 } from '@base-ui/react';
22
+ import { Dialog as Dialog$1 } from '@base-ui/react/dialog';
101
23
  export { Dialog as CommandDialogPrimitive, Dialog as DialogPrimitive } from '@base-ui/react/dialog';
24
+ import { Autocomplete as Autocomplete$1 } from '@base-ui/react/autocomplete';
25
+ export { Autocomplete as AutocompletePrimitive } from '@base-ui/react/autocomplete';
26
+ import { Radio } from '@base-ui/react/radio';
27
+ import { RadioGroup as RadioGroup$1 } from '@base-ui/react/radio-group';
28
+ import { Switch as Switch$1 } from '@base-ui/react/switch';
29
+ import { Slider as Slider$1 } from '@base-ui/react/slider';
30
+ import { NumberField as NumberField$1 } from '@base-ui/react/number-field';
31
+ import { OTPFieldPreview } from '@base-ui/react/otp-field';
32
+ import { Progress as Progress$1 } from '@base-ui/react/progress';
33
+ import { Accordion as Accordion$1 } from '@base-ui/react/accordion';
34
+ import { AlertDialog as AlertDialog$1 } from '@base-ui/react/alert-dialog';
35
+ import { Form as Form$1 } from '@base-ui/react/form';
102
36
  export { Form as FormPrimitive } from '@base-ui/react/form';
37
+ import { Avatar as Avatar$1 } from '@base-ui/react/avatar';
38
+ import useEmblaCarousel, { UseEmblaCarouselType } from 'embla-carousel-react';
39
+ import { Drawer as Drawer$1 } from '@base-ui/react/drawer';
103
40
  export { Drawer as DrawerPrimitive } from '@base-ui/react/drawer';
104
- export { Autocomplete as AutocompletePrimitive } from '@base-ui/react/autocomplete';
105
- import 'react/jsx-runtime';
106
- import 'class-variance-authority/types';
107
- import '@base-ui/react/button';
108
- import 'class-variance-authority';
109
- import 'react';
110
- import '@base-ui/react/use-render';
111
- import '@base-ui/react/tooltip';
112
- import '@base-ui/react/tabs';
113
- import '@base-ui/react/navigation-menu';
114
- import './components/blocks/header-navigation/types.mjs';
115
- import '@base-ui/react/field';
116
- import '@base-ui/react/separator';
117
- import '@base-ui/react/menu';
118
- import '@base-ui/react/popover';
119
- import '@base-ui/react/select';
120
- import '@base-ui/react/checkbox';
121
- import '@base-ui/react';
122
- import '@base-ui/react/radio';
123
- import '@base-ui/react/radio-group';
124
- import '@base-ui/react/switch';
125
- import '@base-ui/react/slider';
126
- import '@base-ui/react/progress';
127
- import '@base-ui/react/accordion';
128
- import '@base-ui/react/alert-dialog';
129
- import '@base-ui/react/avatar';
130
- import 'embla-carousel-react';
131
- import 'react-day-picker';
132
- import 'motion/react';
133
- import 'react-fast-marquee';
134
- import './components/blocks/common-blocks/utils.mjs';
135
- import './components/blocks/action-button/utils.mjs';
136
- import './components/blocks/dialog-qr/DialogQr.mjs';
137
- import 'clsx';
41
+ import { DayPicker, DayButton, Locale, DateRange } from 'react-day-picker';
42
+ import { Variants, Transition } from 'motion/react';
43
+ import { MarqueeProps as MarqueeProps$1 } from 'react-fast-marquee';
44
+ import { ClassValue } from 'clsx';
45
+
46
+ type ButtonShape = "rounded" | "square";
47
+ declare const buttonVariants: (props?: ({
48
+ variant?: "link" | "default" | "outline" | "secondary" | "tertiary" | "ghost" | "destructive" | null | undefined;
49
+ size?: "xs" | "sm" | "default" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
50
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
51
+ type ButtonProps = Omit<Button$1.Props, "prefix" | "suffix"> & VariantProps<typeof buttonVariants> & {
52
+ loading?: boolean;
53
+ shape?: ButtonShape;
54
+ /** Renders before children (e.g. icon). Use for leading icon: `<Button prefix={<ArrowLeft />}>Upload</Button>` */
55
+ prefix?: ReactNode;
56
+ /** Renders after children (e.g. icon). Use for trailing icon. */
57
+ suffix?: ReactNode;
58
+ /** Umami tracking button event */
59
+ dataUmamiEvent?: string;
60
+ /** Umami tracking button event text (button label) */
61
+ dataUmamiEventText?: string;
62
+ };
63
+ declare function Button({ loading, prefix, suffix, variant, size, shape, className, children, disabled, dataUmamiEvent, dataUmamiEventText, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
64
+
65
+ type CloseButtonSize = "xs" | "sm" | "default" | "lg";
66
+ type CloseButtonProps = Omit<ComponentProps<typeof Button>, "variant" | "size"> & {
67
+ /** Hit target / icon scale; maps to icon button sizes in the design system. */
68
+ size?: CloseButtonSize;
69
+ /** Replaces the default X icon. */
70
+ children?: ReactNode;
71
+ };
72
+ declare function CloseButton({ className, size, children, "aria-label": ariaLabel, type, ...props }: CloseButtonProps): react_jsx_runtime.JSX.Element;
73
+
74
+ declare function Separator({ className, orientation, ...props }: Separator$1.Props): react_jsx_runtime.JSX.Element;
75
+
76
+ declare const buttonGroupVariants: (props?: ({
77
+ orientation?: "horizontal" | "vertical" | null | undefined;
78
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
79
+ declare function ButtonGroup({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants>): react_jsx_runtime.JSX.Element;
80
+ declare function ButtonGroupText({ className, render, ...props }: useRender.ComponentProps<"div">): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
81
+ declare function ButtonGroupSeparator({ className, orientation, ...props }: React.ComponentProps<typeof Separator>): react_jsx_runtime.JSX.Element;
82
+
83
+ type InputSize$1 = "sm" | "default" | "lg";
84
+ /**
85
+ * Bare input control (no wrapper / prefix / suffix / clear button).
86
+ * Dùng trong `Input` và các composite như `InputGroupInput` để giữ cùng style nền.
87
+ */
88
+ type InputControlProps = Omit<ComponentProps<"input">, "size"> & {
89
+ size?: InputSize$1;
90
+ };
91
+ declare function InputControl({ size, className, ...props }: InputControlProps): react_jsx_runtime.JSX.Element;
92
+ /** Strip DOM `prefix` / `suffix` so Mobase can use those names for `ReactNode` slots (native typing is string). */
93
+ type InputProps = Omit<ComponentProps<"input">, "size" | "prefix" | "suffix"> & {
94
+ /** Mobase size (height); distinct from the native input `size` attribute. */
95
+ size?: InputSize$1;
96
+ prefix?: ReactNode;
97
+ suffix?: ReactNode;
98
+ /**
99
+ * When `true` (default), the prefix gets Mobase addon styling (padding, subtle text, icon size).
100
+ * When `false`, only the raw node is wrapped so you can fully control appearance.
101
+ */
102
+ prefixStyling?: boolean;
103
+ /**
104
+ * When `true` (default), the suffix gets Mobase addon styling.
105
+ * When `false`, only the raw node is wrapped so you can fully control appearance.
106
+ */
107
+ suffixStyling?: boolean;
108
+ /** When `true`, shows a clear control before the suffix (`data-slot="input-clear-button"`). */
109
+ clearButton?: boolean;
110
+ };
111
+ declare function Input({ size, className, prefix, suffix, prefixStyling, suffixStyling, disabled, clearButton, value: valueProp, defaultValue, onChange, onKeyDown, ...props }: InputProps): react_jsx_runtime.JSX.Element;
112
+
113
+ type SearchInputProps = ComponentProps<typeof Input>;
114
+ declare function SearchInput({ clearButton, ...props }: SearchInputProps): react_jsx_runtime.JSX.Element;
115
+
116
+ type InputSize = "sm" | "default" | "lg";
117
+ declare function InputGroup({ className, size, ...props }: React$1.ComponentProps<"div"> & {
118
+ size?: InputSize;
119
+ }): react_jsx_runtime.JSX.Element;
120
+ declare const inputGroupAddonVariants: (props?: ({
121
+ align?: "inline-start" | "inline-end" | "block-start" | "block-end" | null | undefined;
122
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
123
+ declare function InputGroupAddon({ className, align, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof inputGroupAddonVariants>): react_jsx_runtime.JSX.Element;
124
+ declare const inputGroupButtonVariants: (props?: ({
125
+ size?: "xs" | "sm" | "icon-xs" | "icon-sm" | null | undefined;
126
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
127
+ declare function InputGroupButton({ className, type, variant, size, ...props }: Omit<React$1.ComponentProps<typeof Button>, "size" | "type"> & VariantProps<typeof inputGroupButtonVariants> & {
128
+ type?: "button" | "submit" | "reset";
129
+ }): react_jsx_runtime.JSX.Element;
130
+ declare function InputGroupText({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
131
+ declare function InputGroupInput({ className, ...props }: InputControlProps): react_jsx_runtime.JSX.Element;
132
+ declare function InputGroupTextarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
133
+
134
+ type SizeVariant = "xs" | "sm" | "default" | "lg" | "xl";
135
+ type SpeedVariant = "slow" | "normal" | "fast";
136
+ interface SpinnerProps extends Omit<React$1.ComponentPropsWithoutRef<"svg">, "display" | "opacity"> {
137
+ size?: SizeVariant;
138
+ speed?: SpeedVariant;
139
+ className?: string;
140
+ }
141
+ declare const Spinner: React$1.ForwardRefExoticComponent<SpinnerProps & React$1.RefAttributes<SVGSVGElement>>;
142
+
143
+ declare function TooltipProvider({ delay, ...props }: Tooltip$1.Provider.Props): react_jsx_runtime.JSX.Element;
144
+ declare function Tooltip({ ...props }: Tooltip$1.Root.Props): react_jsx_runtime.JSX.Element;
145
+ declare function TooltipTrigger({ ...props }: Tooltip$1.Trigger.Props): react_jsx_runtime.JSX.Element;
146
+ declare function TooltipContent({ className, side, sideOffset, align, alignOffset, children, ...props }: Tooltip$1.Popup.Props & Pick<Tooltip$1.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset">): react_jsx_runtime.JSX.Element;
147
+
148
+ declare function Kbd({ className, ...props }: React.ComponentProps<"kbd">): react_jsx_runtime.JSX.Element;
149
+ declare function KbdGroup({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
150
+
151
+ declare function Tabs({ className, orientation, ...props }: Tabs$1.Root.Props): react_jsx_runtime.JSX.Element;
152
+ declare const tabsListVariants: (props?: ({
153
+ variant?: "default" | "line" | null | undefined;
154
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
155
+ declare function TabsList({ className, variant, ...props }: Tabs$1.List.Props & VariantProps<typeof tabsListVariants>): react_jsx_runtime.JSX.Element;
156
+ declare function TabsTrigger({ className, ...props }: Tabs$1.Tab.Props): react_jsx_runtime.JSX.Element;
157
+ declare function TabsContent({ className, ...props }: Tabs$1.Panel.Props): react_jsx_runtime.JSX.Element;
158
+
159
+ interface HorizontalScrollProps {
160
+ showGradientOverlay?: boolean;
161
+ gradientOverlayColor?: string;
162
+ className?: string;
163
+ children?: React.ReactNode;
164
+ }
165
+ declare function HorizontalScroll({ showGradientOverlay, gradientOverlayColor, className, children, }: HorizontalScrollProps): react_jsx_runtime.JSX.Element;
166
+ interface HorizontalContentProps {
167
+ className?: string;
168
+ children: React.ReactNode;
169
+ }
170
+ declare function HorizontalContent({ className, children }: HorizontalContentProps): react_jsx_runtime.JSX.Element;
171
+ type HorizontalNavProps = React.ComponentProps<typeof Button>;
172
+ declare function HorizontalPrevious({ className, children, size, variant, ...props }: HorizontalNavProps): react_jsx_runtime.JSX.Element | null;
173
+ declare function HorizontalNext({ className, children, size, variant, ...props }: HorizontalNavProps): react_jsx_runtime.JSX.Element | null;
174
+
175
+ declare function NavigationMenu({ align, className, children, ...props }: NavigationMenu$1.Root.Props & Pick<NavigationMenu$1.Positioner.Props, "align">): react_jsx_runtime.JSX.Element;
176
+ declare function NavigationMenuList({ className, ...props }: React.ComponentPropsWithRef<typeof NavigationMenu$1.List>): react_jsx_runtime.JSX.Element;
177
+ declare function NavigationMenuItem({ className, ...props }: React.ComponentPropsWithRef<typeof NavigationMenu$1.Item>): react_jsx_runtime.JSX.Element;
178
+ declare const navigationMenuTriggerStyle: (props?: class_variance_authority_types.ClassProp | undefined) => string;
179
+ declare function NavigationMenuTrigger({ className, children, ...props }: NavigationMenu$1.Trigger.Props): react_jsx_runtime.JSX.Element;
180
+ declare function NavigationMenuContent({ className, ...props }: NavigationMenu$1.Content.Props): react_jsx_runtime.JSX.Element;
181
+ declare function NavigationMenuPositioner({ className, side, sideOffset, align, alignOffset, ...props }: NavigationMenu$1.Positioner.Props): react_jsx_runtime.JSX.Element;
182
+ declare function NavigationMenuLink({ className, ...props }: NavigationMenu$1.Link.Props): react_jsx_runtime.JSX.Element;
183
+ declare function NavigationMenuIndicator({ className, ...props }: React.ComponentPropsWithRef<typeof NavigationMenu$1.Icon>): react_jsx_runtime.JSX.Element;
184
+
185
+ interface HeaderNavigationSubItem {
186
+ id?: number;
187
+ title: string;
188
+ icon: string;
189
+ url: string;
190
+ description: string;
191
+ newTab: boolean;
192
+ }
193
+ interface HeaderNavigationItemWithDropdown {
194
+ id: number;
195
+ title: string;
196
+ hasDropdown: true;
197
+ dropDownCompact: boolean;
198
+ url?: string | null;
199
+ subMenu: HeaderNavigationSubItem[];
200
+ }
201
+ interface HeaderNavigationItemLink {
202
+ id: number;
203
+ title: string;
204
+ hasDropdown: false;
205
+ url: string;
206
+ newTab: boolean;
207
+ }
208
+ type HeaderNavigationMenuItem = HeaderNavigationItemWithDropdown | HeaderNavigationItemLink;
209
+ interface HeaderNavigationServiceInfo {
210
+ logo?: string;
211
+ name?: ReactNode;
212
+ url: string;
213
+ }
214
+ /** Maps to Base UI positioner `align` (`start` | `end` | `center`). */
215
+ type HeaderNavigationDropdownAlign = "left" | "right" | "center";
216
+ interface HeaderNavigationProps {
217
+ className?: string;
218
+ dataMenu: HeaderNavigationMenuItem[];
219
+ serviceInfo?: HeaderNavigationServiceInfo;
220
+ /** Extra actions on the right (e.g. CTA). */
221
+ navigationRight?: ReactNode;
222
+ /** Show legacy "Tải Ví MoMo" QR download action. */
223
+ hasDownloadApp?: boolean;
224
+ isSticky?: boolean;
225
+ alignDropdown?: HeaderNavigationDropdownAlign;
226
+ /** Default home logo (MoMo marketing asset in the legacy component). */
227
+ isLogoVisible?: boolean;
228
+ }
229
+
230
+ declare function HeaderNavigation({ className, dataMenu, serviceInfo, navigationRight, hasDownloadApp, isSticky, alignDropdown, isLogoVisible, }: HeaderNavigationProps): react_jsx_runtime.JSX.Element;
231
+
232
+ interface FooterItem {
233
+ title: string;
234
+ url: string;
235
+ icon?: string | null;
236
+ newTab: boolean;
237
+ }
238
+ interface FooterData {
239
+ heading: string;
240
+ lists: FooterItem[];
241
+ }
242
+ interface FooterSocialItem {
243
+ name: string;
244
+ image: string;
245
+ link: string;
246
+ }
247
+ interface FooterAppDownloadItem {
248
+ name: string;
249
+ image: string;
250
+ link: string;
251
+ }
252
+ interface FooterProps {
253
+ className?: string;
254
+ primaryMenu?: FooterData;
255
+ secondaryMenu?: FooterData;
256
+ }
257
+
258
+ declare function Footer({ className, primaryMenu, secondaryMenu }: FooterProps): react_jsx_runtime.JSX.Element;
259
+
260
+ declare function FooterContent({ primaryMenu, secondaryMenu, }: Pick<FooterProps, "primaryMenu" | "secondaryMenu">): react_jsx_runtime.JSX.Element;
261
+
262
+ /** Default primary column — from legacy `FooterItemsDefault`. */
263
+ declare const footerDefaultPrimaryMenu: FooterData;
264
+ /** Default secondary column — from legacy `SERVICES_DEFAULT` (image → icon). */
265
+ declare const footerDefaultSecondaryMenu: FooterData;
266
+ declare const footerSupportAddress = "L\u1EA7u 6, To\u00E0 nh\u00E0 Ph\u00FA M\u1EF9 H\u01B0ng, s\u1ED1 8 Ho\u00E0ng V\u0103n Th\u00E1i, khu ph\u1ED1 1, Ph\u01B0\u1EDDng T\u00E2n Ph\u00FA, Qu\u1EADn 7, Th\u00E0nh ph\u1ED1 H\u1ED3 Ch\u00ED Minh";
267
+ declare const footerMoMoText: {
268
+ readonly business: {
269
+ readonly phone: "1900636652";
270
+ readonly phoneFormat: "1900 636 652 (Phí 1.000đ/phút)";
271
+ readonly email: "merchant.care@momo.vn";
272
+ };
273
+ readonly support: {
274
+ readonly hotline: "1900545441";
275
+ readonly hotlineFormat: "1900 5454 41";
276
+ readonly phoneExt1: "02873065555";
277
+ readonly phoneExt1Format: "028.7306.5555";
278
+ readonly phoneExt2: "02899995555";
279
+ readonly phoneExt2Format: "028.9999.5555";
280
+ readonly phoneExt3: "02855555555";
281
+ readonly phoneExt3Format: "028.5555.5555";
282
+ readonly email: "hotro@momo.vn";
283
+ };
284
+ };
285
+ declare const footerSocialItems: FooterSocialItem[];
286
+ declare const footerAppDownloads: FooterAppDownloadItem[];
287
+ declare const footerQrDownloadImage = "https://homepage.momocdn.net/img/momo-upload-api-230627140125-638234712853800898.jpg";
288
+ declare const footerLogoSrc = "https://homepage.momocdn.net/fileuploads/svg/momo-file-240411162904.svg";
289
+ declare const footerCertificationBadge: {
290
+ readonly href: "http://online.gov.vn/Home/AppDetails/163";
291
+ readonly imageSrc: "https://homepage.momocdn.net/blogscontents/momo-upload-api-210629153623-637605777831780706.png";
292
+ readonly width: 119;
293
+ readonly height: 45;
294
+ };
295
+ declare const footerHelpGuideUrl = "https://www.momo.vn/huong-dan/huong-dan-gui-yeu-cau-ho-tro-bang-tinh-nang-tro-giup";
296
+
297
+ declare function Table({ className, ...props }: React$1.ComponentProps<"table">): react_jsx_runtime.JSX.Element;
298
+ declare function TableHeader({ className, ...props }: React$1.ComponentProps<"thead">): react_jsx_runtime.JSX.Element;
299
+ declare function TableBody({ className, ...props }: React$1.ComponentProps<"tbody">): react_jsx_runtime.JSX.Element;
300
+ declare function TableFooter({ className, ...props }: React$1.ComponentProps<"tfoot">): react_jsx_runtime.JSX.Element;
301
+ declare function TableRow({ className, ...props }: React$1.ComponentProps<"tr">): react_jsx_runtime.JSX.Element;
302
+ declare function TableHead({ className, ...props }: React$1.ComponentProps<"th">): react_jsx_runtime.JSX.Element;
303
+ declare function TableCell({ className, ...props }: React$1.ComponentProps<"td">): react_jsx_runtime.JSX.Element;
304
+ declare function TableCaption({ className, ...props }: React$1.ComponentProps<"caption">): react_jsx_runtime.JSX.Element;
305
+
306
+ declare function Label$1({ className, ...props }: ComponentProps<"label">): react_jsx_runtime.JSX.Element;
307
+ declare function FieldSet({ className, ...props }: ComponentProps<"fieldset">): react_jsx_runtime.JSX.Element;
308
+ declare function FieldLegend({ className, variant, ...props }: ComponentProps<"legend"> & {
309
+ variant?: "legend" | "label";
310
+ }): react_jsx_runtime.JSX.Element;
311
+ declare function FieldGroup({ className, ...props }: ComponentProps<"div">): react_jsx_runtime.JSX.Element;
312
+ declare const fieldVariants: (props?: ({
313
+ orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
314
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
315
+ declare function Field({ className, orientation, ...props }: Field$1.Root.Props & VariantProps<typeof fieldVariants>): react_jsx_runtime.JSX.Element;
316
+ declare function FieldContent({ className, ...props }: ComponentProps<"div">): react_jsx_runtime.JSX.Element;
317
+ declare function FieldLabel({ className, ...props }: ComponentProps<typeof Label$1>): react_jsx_runtime.JSX.Element;
318
+ declare function FieldTitle({ className, ...props }: ComponentProps<"div">): react_jsx_runtime.JSX.Element;
319
+ declare function FieldDescription({ className, ...props }: ComponentProps<"p">): react_jsx_runtime.JSX.Element;
320
+ declare function FieldSeparator({ children, className, ...props }: ComponentProps<"div"> & {
321
+ children?: React.ReactNode;
322
+ }): react_jsx_runtime.JSX.Element;
323
+ declare function FieldError({ className, children, errors, ...props }: ComponentProps<"div"> & {
324
+ errors?: ({
325
+ message?: string;
326
+ } | undefined)[];
327
+ }): react_jsx_runtime.JSX.Element | null;
328
+
329
+ declare function Label({ className, ...props }: React$1.ComponentProps<"label">): react_jsx_runtime.JSX.Element;
330
+
331
+ type BadgeSize = "sm" | "default" | "lg";
332
+ declare const badgeVariants: (props?: ({
333
+ variant?: "link" | "default" | "outline" | "secondary" | "ghost" | "destructive" | null | undefined;
334
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
335
+ type BadgeProps = useRender.ComponentProps<"span"> & VariantProps<typeof badgeVariants> & {
336
+ size?: BadgeSize;
337
+ };
338
+ declare function Badge({ className, variant, size, render, ...props }: BadgeProps): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
339
+
340
+ declare function Skeleton({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
341
+
342
+ declare function Card({ className, size, ...props }: React$1.ComponentProps<"div"> & {
343
+ size?: "default" | "sm";
344
+ }): react_jsx_runtime.JSX.Element;
345
+ declare function CardHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
346
+ declare function CardTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
347
+ declare function CardDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
348
+ declare function CardAction({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
349
+ declare function CardContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
350
+ declare function CardFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
351
+
352
+ declare function DropdownMenu({ ...props }: Menu.Root.Props): react_jsx_runtime.JSX.Element;
353
+ declare function DropdownMenuPortal({ ...props }: Menu.Portal.Props): react_jsx_runtime.JSX.Element;
354
+ declare function DropdownMenuTrigger({ ...props }: Menu.Trigger.Props): react_jsx_runtime.JSX.Element;
355
+ declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, ...props }: Menu.Popup.Props & Pick<Menu.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset">): react_jsx_runtime.JSX.Element;
356
+ declare function DropdownMenuGroup({ ...props }: Menu.Group.Props): react_jsx_runtime.JSX.Element;
357
+ /** Must be used inside `DropdownMenuGroup` — Base UI `GroupLabel` requires `Menu.Group` context. */
358
+ declare function DropdownMenuLabel({ className, inset, ...props }: Menu.GroupLabel.Props & {
359
+ inset?: boolean;
360
+ }): react_jsx_runtime.JSX.Element;
361
+ declare function DropdownMenuItem({ className, inset, variant, ...props }: Menu.Item.Props & {
362
+ inset?: boolean;
363
+ variant?: "default" | "destructive";
364
+ }): react_jsx_runtime.JSX.Element;
365
+ declare function DropdownMenuSub({ ...props }: Menu.SubmenuRoot.Props): react_jsx_runtime.JSX.Element;
366
+ declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: Menu.SubmenuTrigger.Props & {
367
+ inset?: boolean;
368
+ }): react_jsx_runtime.JSX.Element;
369
+ declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: ComponentProps<typeof DropdownMenuContent>): react_jsx_runtime.JSX.Element;
370
+ declare function DropdownMenuCheckboxItem({ className, children, checked, inset, ...props }: Menu.CheckboxItem.Props & {
371
+ inset?: boolean;
372
+ }): react_jsx_runtime.JSX.Element;
373
+ declare function DropdownMenuRadioGroup({ ...props }: Menu.RadioGroup.Props): react_jsx_runtime.JSX.Element;
374
+ declare function DropdownMenuRadioItem({ className, children, inset, ...props }: Menu.RadioItem.Props & {
375
+ inset?: boolean;
376
+ }): react_jsx_runtime.JSX.Element;
377
+ declare function DropdownMenuSeparator({ className, ...props }: Menu.Separator.Props): react_jsx_runtime.JSX.Element;
378
+ declare function DropdownMenuShortcut({ className, ...props }: ComponentProps<"span">): react_jsx_runtime.JSX.Element;
379
+
380
+ declare function Popover({ ...props }: Popover$1.Root.Props): react_jsx_runtime.JSX.Element;
381
+ declare function PopoverTrigger({ ...props }: Popover$1.Trigger.Props): react_jsx_runtime.JSX.Element;
382
+ declare function PopoverContent({ className, align, alignOffset, side, sideOffset, collisionAvoidance, ...props }: Popover$1.Popup.Props & Pick<Popover$1.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset" | "collisionAvoidance">): react_jsx_runtime.JSX.Element;
383
+ declare function PopoverHeader({ className, ...props }: ComponentProps<"div">): react_jsx_runtime.JSX.Element;
384
+ declare function PopoverTitle({ className, ...props }: Popover$1.Title.Props): react_jsx_runtime.JSX.Element;
385
+ declare function PopoverDescription({ className, ...props }: Popover$1.Description.Props): react_jsx_runtime.JSX.Element;
386
+
387
+ type SelectTriggerSize = "sm" | "default" | "lg";
388
+ declare const Select: typeof Select$1.Root;
389
+ declare function SelectGroup({ className, ...props }: Select$1.Group.Props): react_jsx_runtime.JSX.Element;
390
+ declare function SelectValue({ className, ...props }: Select$1.Value.Props): react_jsx_runtime.JSX.Element;
391
+ type SelectTriggerProps = Omit<Select$1.Trigger.Props, "size"> & {
392
+ size?: SelectTriggerSize;
393
+ };
394
+ declare function SelectTrigger({ className, size, children, ...props }: SelectTriggerProps): react_jsx_runtime.JSX.Element;
395
+ type SelectContentProps = Select$1.Popup.Props & Pick<Select$1.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset" | "alignItemWithTrigger">;
396
+ declare function SelectContent({ className, children, side, sideOffset, align, alignOffset, alignItemWithTrigger, ...props }: SelectContentProps): react_jsx_runtime.JSX.Element;
397
+ declare function SelectLabel({ className, ...props }: Select$1.GroupLabel.Props): react_jsx_runtime.JSX.Element;
398
+ declare function SelectItem({ className, children, ...props }: Select$1.Item.Props): react_jsx_runtime.JSX.Element;
399
+ declare function SelectSeparator({ className, ...props }: Select$1.Separator.Props): react_jsx_runtime.JSX.Element;
400
+ declare function SelectScrollUpButton({ className, ...props }: ComponentProps<typeof Select$1.ScrollUpArrow>): react_jsx_runtime.JSX.Element;
401
+ declare function SelectScrollDownButton({ className, ...props }: ComponentProps<typeof Select$1.ScrollDownArrow>): react_jsx_runtime.JSX.Element;
402
+
403
+ declare function ScrollArea({ className, children, scrollFade, scrollbarGutter, ...props }: ScrollArea$1.Root.Props & {
404
+ scrollFade?: boolean;
405
+ scrollbarGutter?: boolean;
406
+ }): React__default.ReactElement;
407
+ declare function ScrollBar({ className, orientation, ...props }: ScrollArea$1.Scrollbar.Props): React__default.ReactElement;
408
+
409
+ type NativeSelectProps = Omit<React$1.ComponentProps<"select">, "size"> & {
410
+ size?: "sm" | "default";
411
+ };
412
+ declare function NativeSelect({ className, size, ...props }: NativeSelectProps): react_jsx_runtime.JSX.Element;
413
+ declare function NativeSelectOption({ ...props }: React$1.ComponentProps<"option">): react_jsx_runtime.JSX.Element;
414
+ declare function NativeSelectOptGroup({ className, ...props }: React$1.ComponentProps<"optgroup">): react_jsx_runtime.JSX.Element;
415
+
416
+ declare const toastManager: ReturnType<typeof Toast.createToastManager>;
417
+ declare const anchoredToastManager: ReturnType<typeof Toast.createToastManager>;
418
+ type ToastPosition = "top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right";
419
+ interface ToastProviderProps extends Toast.Provider.Props {
420
+ position?: ToastPosition;
421
+ }
422
+ declare function ToastProvider({ children, position, ...props }: ToastProviderProps): React__default.ReactElement;
423
+ declare function AnchoredToastProvider({ children, ...props }: Toast.Provider.Props): React__default.ReactElement;
424
+
425
+ type TextareaProps = Omit<ComponentProps<"textarea">, "size"> & {
426
+ size?: InputSize$1;
427
+ };
428
+ declare function Textarea({ size, className, disabled, ...props }: TextareaProps): react_jsx_runtime.JSX.Element;
429
+
430
+ interface LogoProps extends React$1.SVGProps<SVGSVGElement> {
431
+ /**
432
+ * Size preset (height). Use className for custom dimensions.
433
+ * - `xxsmall` (16px) — smallest
434
+ * - `xsmall` (20px)
435
+ * - `small` (24px)
436
+ * - `medium` (32px) — default, most common
437
+ * - `large` (40px)
438
+ * - `xlarge` (48px)
439
+ */
440
+ size?: "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge";
441
+ /**
442
+ * `default` = full logo (icon + wordmark), `symbol` = wordmark only (MOMO text).
443
+ */
444
+ variant?: "default" | "symbol";
445
+ shape?: "none" | "square" | "circle";
446
+ /**
447
+ * `inverse` = swap brand pink and white (e.g. white background, pink icon/text).
448
+ */
449
+ appearance?: "default" | "inverse";
450
+ }
451
+ declare const Logo: React$1.ForwardRefExoticComponent<Omit<LogoProps, "ref"> & React$1.RefAttributes<SVGSVGElement>>;
452
+
453
+ type CheckboxProps = Checkbox$1.Root.Props;
454
+ declare function Checkbox({ className, ...props }: CheckboxProps): react_jsx_runtime.JSX.Element;
455
+
456
+ declare const Combobox: typeof Combobox$1.Root;
457
+ declare function ComboboxValue({ ...props }: Combobox$1.Value.Props): react_jsx_runtime.JSX.Element;
458
+ declare function ComboboxTrigger({ className, children, ...props }: Combobox$1.Trigger.Props): react_jsx_runtime.JSX.Element;
459
+ declare function ComboboxInput({ size, className, children, disabled, showTrigger, showClear, ...props }: Omit<Combobox$1.Input.Props, "size"> & {
460
+ showTrigger?: boolean;
461
+ showClear?: boolean;
462
+ size?: InputSize$1;
463
+ }): react_jsx_runtime.JSX.Element;
464
+ declare function ComboboxContent({ className, side, sideOffset, align, alignOffset, anchor, ...props }: Combobox$1.Popup.Props & Pick<Combobox$1.Positioner.Props, "side" | "align" | "sideOffset" | "alignOffset" | "anchor">): react_jsx_runtime.JSX.Element;
465
+ declare function ComboboxList({ className, ...props }: Combobox$1.List.Props): react_jsx_runtime.JSX.Element;
466
+ declare function ComboboxItem({ className, children, ...props }: Combobox$1.Item.Props): react_jsx_runtime.JSX.Element;
467
+ declare function ComboboxGroup({ className, ...props }: Combobox$1.Group.Props): react_jsx_runtime.JSX.Element;
468
+ declare function ComboboxLabel({ className, ...props }: Combobox$1.GroupLabel.Props): react_jsx_runtime.JSX.Element;
469
+ declare function ComboboxCollection({ ...props }: Combobox$1.Collection.Props): react_jsx_runtime.JSX.Element;
470
+ declare function ComboboxEmpty({ className, ...props }: Combobox$1.Empty.Props): react_jsx_runtime.JSX.Element;
471
+ declare function ComboboxSeparator({ className, ...props }: Combobox$1.Separator.Props): react_jsx_runtime.JSX.Element;
472
+ declare function ComboboxChips({ className, ...props }: React$1.ComponentPropsWithRef<typeof Combobox$1.Chips> & Combobox$1.Chips.Props): react_jsx_runtime.JSX.Element;
473
+ declare function ComboboxChip({ className, children, showRemove, ...props }: Combobox$1.Chip.Props & {
474
+ showRemove?: boolean;
475
+ }): react_jsx_runtime.JSX.Element;
476
+ declare function ComboboxChipsInput({ className, ...props }: Combobox$1.Input.Props): react_jsx_runtime.JSX.Element;
477
+ declare function useComboboxAnchor(): React$1.RefObject<HTMLDivElement | null>;
478
+
479
+ declare const Autocomplete: typeof Autocomplete$1.Root;
480
+ declare function AutocompleteInput({ size, className, children, disabled, showTrigger, showClear, startAddon, triggerProps, clearProps, ...props }: Omit<Autocomplete$1.Input.Props, "size"> & {
481
+ showTrigger?: boolean;
482
+ showClear?: boolean;
483
+ startAddon?: ReactNode;
484
+ size?: InputSize$1;
485
+ ref?: Ref<HTMLInputElement>;
486
+ triggerProps?: Autocomplete$1.Trigger.Props;
487
+ clearProps?: Autocomplete$1.Clear.Props;
488
+ }): react_jsx_runtime.JSX.Element;
489
+ declare function AutocompleteTrigger({ className, children, ...props }: Autocomplete$1.Trigger.Props): react_jsx_runtime.JSX.Element;
490
+ declare function AutocompleteClear({ className, ...props }: Autocomplete$1.Clear.Props): react_jsx_runtime.JSX.Element;
491
+ declare function AutocompletePopup({ className, children, side, sideOffset, align, alignOffset, anchor, portalProps, ...props }: Autocomplete$1.Popup.Props & Pick<Autocomplete$1.Positioner.Props, "side" | "align" | "sideOffset" | "alignOffset" | "anchor"> & {
492
+ portalProps?: Autocomplete$1.Portal.Props;
493
+ }): react_jsx_runtime.JSX.Element;
494
+ declare function AutocompleteList({ className, ...props }: Autocomplete$1.List.Props): react_jsx_runtime.JSX.Element;
495
+ declare function AutocompleteItem({ className, children, ...props }: Autocomplete$1.Item.Props): react_jsx_runtime.JSX.Element;
496
+ declare function AutocompleteGroup({ className, ...props }: Autocomplete$1.Group.Props): react_jsx_runtime.JSX.Element;
497
+ declare function AutocompleteGroupLabel({ className, ...props }: Autocomplete$1.GroupLabel.Props): react_jsx_runtime.JSX.Element;
498
+ declare function AutocompleteCollection({ ...props }: Autocomplete$1.Collection.Props): react_jsx_runtime.JSX.Element;
499
+ declare function AutocompleteEmpty({ className, ...props }: Autocomplete$1.Empty.Props): react_jsx_runtime.JSX.Element;
500
+ declare function AutocompleteSeparator({ className, ...props }: Autocomplete$1.Separator.Props): react_jsx_runtime.JSX.Element;
501
+ declare function AutocompleteRow({ className, ...props }: Autocomplete$1.Row.Props): react_jsx_runtime.JSX.Element;
502
+ declare function AutocompleteValue({ ...props }: Autocomplete$1.Value.Props): react_jsx_runtime.JSX.Element;
503
+ declare function AutocompleteStatus({ className, ...props }: Autocomplete$1.Status.Props): react_jsx_runtime.JSX.Element;
504
+ declare const useAutocompleteFilter: typeof Autocomplete$1.useFilter;
505
+
506
+ declare const CommandDialog: typeof Dialog$1.Root;
507
+ declare const CommandDialogPortal: typeof Dialog$1.Portal;
508
+ declare const CommandCreateHandle: typeof Dialog$1.createHandle;
509
+ declare function CommandDialogTrigger(props: Dialog$1.Trigger.Props): React$1.ReactElement;
510
+ declare function CommandDialogBackdrop({ className, ...props }: Dialog$1.Backdrop.Props): React$1.ReactElement;
511
+ declare function CommandDialogViewport({ className, ...props }: Dialog$1.Viewport.Props): React$1.ReactElement;
512
+ declare function CommandDialogPopup({ className, children, portalProps, ...props }: Dialog$1.Popup.Props & {
513
+ portalProps?: Dialog$1.Portal.Props;
514
+ }): React$1.ReactElement;
515
+ declare function Command({ autoHighlight, keepHighlight, ...props }: React$1.ComponentProps<typeof Autocomplete>): React$1.ReactElement;
516
+ declare function CommandInput({ className, placeholder, ...props }: React$1.ComponentProps<typeof AutocompleteInput>): React$1.ReactElement;
517
+ declare function CommandList({ className, ...props }: React$1.ComponentProps<typeof AutocompleteList>): React$1.ReactElement;
518
+ declare function CommandEmpty({ className, ...props }: React$1.ComponentProps<typeof AutocompleteEmpty>): React$1.ReactElement;
519
+ declare function CommandPanel({ className, ...props }: React$1.ComponentProps<"div">): React$1.ReactElement;
520
+ declare function CommandGroup({ className, ...props }: React$1.ComponentProps<typeof AutocompleteGroup>): React$1.ReactElement;
521
+ declare function CommandGroupLabel({ className, ...props }: React$1.ComponentProps<typeof AutocompleteGroupLabel>): React$1.ReactElement;
522
+ declare function CommandCollection({ ...props }: React$1.ComponentProps<typeof AutocompleteCollection>): React$1.ReactElement;
523
+ declare function CommandItem({ className, ...props }: React$1.ComponentProps<typeof AutocompleteItem>): React$1.ReactElement;
524
+ declare function CommandSeparator({ className, ...props }: React$1.ComponentProps<typeof AutocompleteSeparator>): React$1.ReactElement;
525
+ declare function CommandShortcut({ className, ...props }: React$1.ComponentProps<"kbd">): React$1.ReactElement;
526
+ declare function CommandFooter({ className, ...props }: React$1.ComponentProps<"div">): React$1.ReactElement;
527
+
528
+ type RadioGroupProps = RadioGroup$1.Props;
529
+ type RadioGroupItemProps = Radio.Root.Props;
530
+ declare function RadioGroup({ className, ...props }: RadioGroupProps): react_jsx_runtime.JSX.Element;
531
+ declare function RadioGroupItem({ className, ...props }: RadioGroupItemProps): react_jsx_runtime.JSX.Element;
532
+
533
+ declare function Switch({ className, size, ...props }: Switch$1.Root.Props & {
534
+ size?: "sm" | "default";
535
+ }): react_jsx_runtime.JSX.Element;
536
+
537
+ declare function Slider({ className, defaultValue, value, min, max, ...props }: Slider$1.Root.Props): react_jsx_runtime.JSX.Element;
538
+
539
+ type NumberFieldSize = "sm" | "default" | "lg";
540
+ type NumberFieldProps = NumberField$1.Root.Props & {
541
+ size?: NumberFieldSize;
542
+ };
543
+ declare function NumberField({ className, size, ...props }: NumberFieldProps): react_jsx_runtime.JSX.Element;
544
+ declare function NumberFieldGroup({ className, ...props }: NumberField$1.Group.Props): react_jsx_runtime.JSX.Element;
545
+ declare function NumberFieldInput({ className, ...props }: NumberField$1.Input.Props): react_jsx_runtime.JSX.Element;
546
+ declare function NumberFieldDecrement({ className, children, ...props }: NumberField$1.Decrement.Props): react_jsx_runtime.JSX.Element;
547
+ declare function NumberFieldIncrement({ className, children, ...props }: NumberField$1.Increment.Props): react_jsx_runtime.JSX.Element;
548
+ type NumberFieldScrubAreaProps = NumberField$1.ScrubArea.Props & {
549
+ label?: React$1.ReactNode;
550
+ };
551
+ declare function NumberFieldScrubArea({ className, children, label, ...props }: NumberFieldScrubAreaProps): react_jsx_runtime.JSX.Element;
552
+
553
+ type OTPFieldSize = "sm" | "default" | "lg";
554
+ type OTPFieldProps = OTPFieldPreview.Root.Props & {
555
+ size?: OTPFieldSize;
556
+ };
557
+ declare function OTPField({ className, size, validationType, ...props }: OTPFieldProps): react_jsx_runtime.JSX.Element;
558
+ declare function OTPFieldInput({ className, ...props }: OTPFieldPreview.Input.Props): react_jsx_runtime.JSX.Element;
559
+ declare function OTPFieldSeparator({ className, orientation, ...props }: OTPFieldPreview.Separator.Props): react_jsx_runtime.JSX.Element;
560
+
561
+ declare function Progress({ className, children, value, ...props }: Progress$1.Root.Props): react_jsx_runtime.JSX.Element;
562
+ declare function ProgressTrack({ className, ...props }: Progress$1.Track.Props): react_jsx_runtime.JSX.Element;
563
+ declare function ProgressIndicator({ className, ...props }: Progress$1.Indicator.Props): react_jsx_runtime.JSX.Element;
564
+ declare function ProgressLabel({ className, ...props }: Progress$1.Label.Props): react_jsx_runtime.JSX.Element;
565
+ declare function ProgressValue({ className, ...props }: Progress$1.Value.Props): react_jsx_runtime.JSX.Element;
566
+
567
+ declare function Accordion({ className, ...props }: Accordion$1.Root.Props): react_jsx_runtime.JSX.Element;
568
+ declare function AccordionItem({ className, ...props }: Accordion$1.Item.Props): react_jsx_runtime.JSX.Element;
569
+ declare function AccordionTrigger({ className, children, ...props }: Accordion$1.Trigger.Props): react_jsx_runtime.JSX.Element;
570
+ declare function AccordionContent({ className, children, ...props }: Accordion$1.Panel.Props): react_jsx_runtime.JSX.Element;
571
+
572
+ declare const alertVariants: (props?: ({
573
+ variant?: "default" | "destructive" | null | undefined;
574
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
575
+ declare function Alert({ className, variant, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof alertVariants>): react_jsx_runtime.JSX.Element;
576
+ declare function AlertTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
577
+ declare function AlertDescription({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
578
+ declare function AlertAction({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
579
+
580
+ declare function AlertDialog({ ...props }: AlertDialog$1.Root.Props): react_jsx_runtime.JSX.Element;
581
+ declare function AlertDialogTrigger({ ...props }: AlertDialog$1.Trigger.Props): react_jsx_runtime.JSX.Element;
582
+ declare function AlertDialogPortal({ ...props }: AlertDialog$1.Portal.Props): react_jsx_runtime.JSX.Element;
583
+ declare function AlertDialogOverlay({ className, ...props }: AlertDialog$1.Backdrop.Props): react_jsx_runtime.JSX.Element;
584
+ declare function AlertDialogContent({ className, size, ...props }: AlertDialog$1.Popup.Props & {
585
+ size?: "default" | "sm";
586
+ }): react_jsx_runtime.JSX.Element;
587
+ declare function AlertDialogHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
588
+ declare function AlertDialogFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
589
+ declare function AlertDialogMedia({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
590
+ declare function AlertDialogTitle({ className, ...props }: React$1.ComponentProps<typeof AlertDialog$1.Title>): react_jsx_runtime.JSX.Element;
591
+ declare function AlertDialogDescription({ className, ...props }: React$1.ComponentProps<typeof AlertDialog$1.Description>): react_jsx_runtime.JSX.Element;
592
+ declare function AlertDialogAction({ className, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
593
+ declare function AlertDialogCancel({ className, variant, size, ...props }: AlertDialog$1.Close.Props & Pick<React$1.ComponentProps<typeof Button>, "variant" | "size">): react_jsx_runtime.JSX.Element;
594
+
595
+ declare function Empty({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
596
+ declare function EmptyHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
597
+ declare const emptyMediaVariants: (props?: ({
598
+ variant?: "default" | "icon" | null | undefined;
599
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
600
+ declare function EmptyMedia({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof emptyMediaVariants>): react_jsx_runtime.JSX.Element;
601
+ declare function EmptyTitle({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
602
+ declare function EmptyDescription({ className, ...props }: React.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
603
+ declare function EmptyContent({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
604
+
605
+ declare function ItemGroup({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
606
+ declare function ItemSeparator({ className, ...props }: React$1.ComponentProps<typeof Separator>): react_jsx_runtime.JSX.Element;
607
+ declare const itemVariants: (props?: ({
608
+ variant?: "default" | "outline" | "muted" | null | undefined;
609
+ size?: "xs" | "sm" | "default" | null | undefined;
610
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
611
+ declare function Item({ className, variant, size, render, ...props }: useRender.ComponentProps<"div"> & VariantProps<typeof itemVariants>): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
612
+ declare const itemMediaVariants: (props?: ({
613
+ variant?: "default" | "image" | "icon" | null | undefined;
614
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
615
+ declare function ItemMedia({ className, variant, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): react_jsx_runtime.JSX.Element;
616
+ declare function ItemContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
617
+ declare function ItemTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
618
+ declare function ItemDescription({ className, ...props }: React$1.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
619
+ declare function ItemActions({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
620
+ declare function ItemHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
621
+ declare function ItemFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
622
+
623
+ type Size = "default" | "sm" | "lg";
624
+ type DynamicSize = Size | (string & {});
625
+ declare const hitboxVariants: (props?: ({
626
+ size?: "sm" | "default" | "lg" | "dynamic" | null | undefined;
627
+ position?: "bottom" | "left" | "right" | "top" | "horizontal" | "vertical" | "all" | null | undefined;
628
+ radius?: "sm" | "lg" | "none" | "md" | "full" | null | undefined;
629
+ debug?: boolean | null | undefined;
630
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
631
+ interface HitboxProps extends useRender.ComponentProps<"div">, Omit<VariantProps<typeof hitboxVariants>, "size"> {
632
+ size?: DynamicSize;
633
+ }
634
+ declare function Hitbox(props: HitboxProps): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
635
+
636
+ declare function Form({ className, ...props }: Form$1.Props): React__default.ReactElement;
637
+
638
+ declare function AspectRatio({ ratio, className, ...props }: ComponentProps<"div"> & {
639
+ ratio: number;
640
+ }): react_jsx_runtime.JSX.Element;
641
+
642
+ declare function Avatar({ className, size, ...props }: Avatar$1.Root.Props & {
643
+ size?: "default" | "sm" | "lg";
644
+ }): react_jsx_runtime.JSX.Element;
645
+ declare function AvatarImage({ className, ...props }: Avatar$1.Image.Props): react_jsx_runtime.JSX.Element;
646
+ declare function AvatarFallback({ className, ...props }: Avatar$1.Fallback.Props): react_jsx_runtime.JSX.Element;
647
+ declare function AvatarBadge({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
648
+ declare function AvatarGroup({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
649
+ declare function AvatarGroupCount({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
650
+
651
+ declare function Breadcrumb({ className, ...props }: React$1.ComponentProps<"nav">): react_jsx_runtime.JSX.Element;
652
+ declare function BreadcrumbList({ className, ...props }: React$1.ComponentProps<"ol">): react_jsx_runtime.JSX.Element;
653
+ declare function BreadcrumbItem({ className, ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
654
+ declare function BreadcrumbLink({ className, render, ...props }: useRender.ComponentProps<"a">): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
655
+ declare function BreadcrumbPage({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
656
+ declare function BreadcrumbSeparator({ children, className, ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
657
+ declare function BreadcrumbEllipsis({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
658
+
659
+ type CarouselApi = UseEmblaCarouselType[1];
660
+ type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
661
+ type CarouselOptions = UseCarouselParameters[0];
662
+ type CarouselPlugin = UseCarouselParameters[1];
663
+ interface CarouselProps {
664
+ opts?: CarouselOptions;
665
+ plugins?: CarouselPlugin;
666
+ orientation?: "horizontal" | "vertical";
667
+ setApi?: (api: CarouselApi) => void;
668
+ }
669
+ type CarouselContextProps = {
670
+ carouselRef: ReturnType<typeof useEmblaCarousel>[0];
671
+ api: ReturnType<typeof useEmblaCarousel>[1];
672
+ scrollPrev: () => void;
673
+ scrollNext: () => void;
674
+ canScrollPrev: boolean;
675
+ canScrollNext: boolean;
676
+ } & CarouselProps;
677
+ declare function useCarousel(): CarouselContextProps;
678
+ declare function Carousel({ orientation, opts, setApi, plugins, className, children, ...props }: React$1.ComponentProps<"div"> & CarouselProps): react_jsx_runtime.JSX.Element;
679
+ declare function CarouselContent({ className, classNameContent, ...props }: React$1.ComponentProps<"div"> & {
680
+ classNameContent?: string;
681
+ }): react_jsx_runtime.JSX.Element;
682
+ declare function CarouselItem({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
683
+ declare function CarouselPrevious({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
684
+ declare function CarouselNext({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
685
+ declare function CarouselDots({ className }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element | null;
686
+
687
+ declare const DialogCreateHandle: typeof Dialog$1.createHandle;
688
+ declare const Dialog: typeof Dialog$1.Root;
689
+ declare const DialogPortal: typeof Dialog$1.Portal;
690
+ declare function DialogTrigger(props: Dialog$1.Trigger.Props): React__default.ReactElement;
691
+ declare function DialogClose(props: Dialog$1.Close.Props): React__default.ReactElement;
692
+ declare function DialogBackdrop({ className, ...props }: Dialog$1.Backdrop.Props): React__default.ReactElement;
693
+ declare const dialogPopupSizeVariants: (props?: ({
694
+ size?: "xs" | "sm" | "lg" | "xl" | "md" | "2xl" | "3xl" | "4xl" | "5xl" | "cover" | "full" | null | undefined;
695
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
696
+ type DialogPopupSize = NonNullable<VariantProps<typeof dialogPopupSizeVariants>["size"]>;
697
+ declare const dialogViewportPlacementVariants: (props?: ({
698
+ placement?: "bottom" | "top" | "center" | "auto" | null | undefined;
699
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
700
+ type DialogViewportPlacement = NonNullable<VariantProps<typeof dialogViewportPlacementVariants>["placement"]>;
701
+ declare function DialogViewport({ className, placement, ...props }: Dialog$1.Viewport.Props & {
702
+ placement?: DialogViewportPlacement;
703
+ }): React__default.ReactElement;
704
+ declare function DialogPopup({ className, children, showCloseButton, bottomStickOnMobile, placement, size, closeProps, portalProps, ...props }: Dialog$1.Popup.Props & {
705
+ showCloseButton?: boolean;
706
+ bottomStickOnMobile?: boolean;
707
+ placement?: DialogViewportPlacement;
708
+ size?: DialogPopupSize;
709
+ closeProps?: Dialog$1.Close.Props;
710
+ portalProps?: Dialog$1.Portal.Props;
711
+ }): React__default.ReactElement;
712
+ declare function DialogHeader({ className, render, ...props }: useRender.ComponentProps<"div">): React__default.ReactElement;
713
+ declare function DialogFooter({ className, render, ...props }: useRender.ComponentProps<"div">): React__default.ReactElement;
714
+ declare function DialogTitle({ className, ...props }: Dialog$1.Title.Props): React__default.ReactElement;
715
+ declare function DialogDescription({ className, ...props }: Dialog$1.Description.Props): React__default.ReactElement;
716
+ declare function DialogPanel({ className, scrollFade, render, ...props }: useRender.ComponentProps<"div"> & {
717
+ scrollFade?: boolean;
718
+ }): React__default.ReactElement;
719
+
720
+ type DrawerPosition = "right" | "left" | "top" | "bottom";
721
+ declare const DrawerCreateHandle: typeof Drawer$1.createHandle;
722
+ declare function Drawer({ swipeDirection, position, ...props }: Drawer$1.Root.Props & {
723
+ position?: DrawerPosition;
724
+ }): React__default.ReactElement;
725
+ declare const DrawerPortal: typeof Drawer$1.Portal;
726
+ declare function DrawerTrigger(props: Drawer$1.Trigger.Props): React__default.ReactElement;
727
+ declare function DrawerClose(props: Drawer$1.Close.Props): React__default.ReactElement;
728
+ declare function DrawerSwipeArea({ className, position: positionProp, ...props }: Drawer$1.SwipeArea.Props & {
729
+ position?: DrawerPosition;
730
+ }): React__default.ReactElement;
731
+ declare function DrawerBackdrop({ className, ...props }: Drawer$1.Backdrop.Props): React__default.ReactElement;
732
+ declare function DrawerViewport({ className, position, variant, ...props }: Drawer$1.Viewport.Props & {
733
+ position?: DrawerPosition;
734
+ variant?: "default" | "straight" | "inset";
735
+ }): React__default.ReactElement;
736
+ declare function DrawerPopup({ className, children, showCloseButton, position: positionProp, variant, showBar, ...props }: Drawer$1.Popup.Props & {
737
+ showCloseButton?: boolean;
738
+ position?: DrawerPosition;
739
+ variant?: "default" | "straight" | "inset";
740
+ showBar?: boolean;
741
+ }): React__default.ReactElement;
742
+ declare function DrawerHeader({ className, allowSelection, render, ...props }: useRender.ComponentProps<"div"> & {
743
+ allowSelection?: boolean;
744
+ }): React__default.ReactElement;
745
+ declare function DrawerFooter({ className, allowSelection, render, ...props }: useRender.ComponentProps<"div"> & {
746
+ allowSelection?: boolean;
747
+ }): React__default.ReactElement;
748
+ declare function DrawerTitle({ className, ...props }: Drawer$1.Title.Props): React__default.ReactElement;
749
+ declare function DrawerDescription({ className, ...props }: Drawer$1.Description.Props): React__default.ReactElement;
750
+ declare function DrawerPanel({ className, scrollFade, scrollable, allowSelection, render, ...props }: useRender.ComponentProps<"div"> & {
751
+ scrollFade?: boolean;
752
+ scrollable?: boolean;
753
+ allowSelection?: boolean;
754
+ }): React__default.ReactElement;
755
+ declare function DrawerBar({ className, position: positionProp, render, ...props }: useRender.ComponentProps<"div"> & {
756
+ position?: DrawerPosition;
757
+ }): React__default.ReactElement;
758
+ declare const DrawerContent: typeof Drawer$1.Content;
759
+
760
+ declare function Pagination({ className, ...props }: React$1.ComponentProps<"nav">): react_jsx_runtime.JSX.Element;
761
+ declare function PaginationContent({ className, ...props }: React$1.ComponentProps<"ul">): react_jsx_runtime.JSX.Element;
762
+ declare function PaginationItem({ ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
763
+ type PaginationLinkProps = {
764
+ isActive?: boolean;
765
+ } & Pick<React$1.ComponentProps<typeof Button>, "size"> & React$1.ComponentProps<"a">;
766
+ declare function PaginationLink({ className, isActive, size, ...props }: PaginationLinkProps): react_jsx_runtime.JSX.Element;
767
+ declare function PaginationPrevious({ className, text, ...props }: React$1.ComponentProps<typeof PaginationLink> & {
768
+ text?: string;
769
+ }): react_jsx_runtime.JSX.Element;
770
+ declare function PaginationNext({ className, text, ...props }: React$1.ComponentProps<typeof PaginationLink> & {
771
+ text?: string;
772
+ }): react_jsx_runtime.JSX.Element;
773
+ declare function PaginationEllipsis({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
774
+
775
+ declare function Calendar({ className, classNames, showOutsideDays, captionLayout, buttonVariant, locale, formatters, components, ...props }: React$1.ComponentProps<typeof DayPicker> & {
776
+ buttonVariant?: React$1.ComponentProps<typeof Button>["variant"];
777
+ }): react_jsx_runtime.JSX.Element;
778
+ declare function CalendarDayButton({ className, day, modifiers, locale, ...props }: React$1.ComponentProps<typeof DayButton> & {
779
+ locale?: Partial<Locale>;
780
+ }): react_jsx_runtime.JSX.Element;
781
+
782
+ /** Trigger scale; maps to Mobase `Button` `size` (`sm` / `default` / `lg`). */
783
+ type DatePickerSize = "sm" | "default" | "lg";
784
+ type CalendarProps = React$1.ComponentProps<typeof Calendar>;
785
+ type OmitSelectionProps = Omit<CalendarProps, "mode" | "selected" | "onSelect" | "required">;
786
+ interface DatePickerPreset {
787
+ label: string;
788
+ date: Date;
789
+ }
790
+ type DatePickerProps = OmitSelectionProps & {
791
+ className?: string;
792
+ placeholder?: string;
793
+ value?: Date;
794
+ defaultValue?: Date;
795
+ onValueChange?: (date: Date | undefined) => void;
796
+ presets?: DatePickerPreset[];
797
+ locale?: Locale;
798
+ /** Trigger height; `Button` `size`: `sm`, `default`, or `lg`. */
799
+ size?: DatePickerSize;
800
+ /** `date-fns` format string for the trigger label. Default: MMMM dd, yyyy */
801
+ dateFormat?: string;
802
+ };
803
+ declare function DatePicker({ className, placeholder, value, defaultValue, onValueChange, presets, locale, disabled, size, dateFormat, captionLayout, ...calendarProps }: DatePickerProps): react_jsx_runtime.JSX.Element;
804
+ type DateRangePickerProps = OmitSelectionProps & {
805
+ className?: string;
806
+ placeholder?: string;
807
+ value?: DateRange;
808
+ defaultValue?: DateRange;
809
+ onValueChange?: (range: DateRange | undefined) => void;
810
+ locale?: Locale;
811
+ /** Trigger height; `Button` `size`: `sm`, `default`, or `lg`. */
812
+ size?: DatePickerSize;
813
+ /** `date-fns` format string for each boundary in the trigger. Default: MMMM dd, yyyy */
814
+ dateFormat?: string;
815
+ };
816
+ declare function DateRangePicker({ className, placeholder, value, defaultValue, onValueChange, locale, disabled, size, dateFormat, captionLayout, ...calendarProps }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
817
+
818
+ type PresetType = 'blur' | 'fade-in-blur' | 'scale' | 'fade' | 'slide';
819
+ type PerType = 'word' | 'char' | 'line';
820
+ interface TextEffectProps {
821
+ children: string;
822
+ per?: PerType;
823
+ as?: keyof React__default.JSX.IntrinsicElements;
824
+ variants?: {
825
+ container?: Variants;
826
+ item?: Variants;
827
+ };
828
+ className?: string;
829
+ preset?: PresetType;
830
+ delay?: number;
831
+ speedReveal?: number;
832
+ speedSegment?: number;
833
+ trigger?: boolean;
834
+ onAnimationComplete?: () => void;
835
+ onAnimationStart?: () => void;
836
+ segmentWrapperClassName?: string;
837
+ containerTransition?: Transition;
838
+ segmentTransition?: Transition;
839
+ style?: React__default.CSSProperties;
840
+ }
841
+ declare function TextEffect({ children, per, as, variants, className, preset, delay, speedReveal, speedSegment, trigger, onAnimationComplete, onAnimationStart, segmentWrapperClassName, containerTransition, segmentTransition, style, }: TextEffectProps): react_jsx_runtime.JSX.Element;
842
+
843
+ interface SlidingNumberProps {
844
+ value: number;
845
+ padStart?: boolean;
846
+ decimalSeparator?: string;
847
+ }
848
+ declare function SlidingNumber({ value, padStart, decimalSeparator, }: SlidingNumberProps): react_jsx_runtime.JSX.Element;
849
+
850
+ type MarqueeProps = HTMLAttributes<HTMLDivElement>;
851
+ declare function Marquee({ className, ...props }: MarqueeProps): react_jsx_runtime.JSX.Element;
852
+ type MarqueeContentProps = MarqueeProps$1;
853
+ declare function MarqueeContent({ loop, autoFill, pauseOnHover, ...props }: MarqueeContentProps): react_jsx_runtime.JSX.Element;
854
+ type MarqueeFadeProps = HTMLAttributes<HTMLDivElement> & {
855
+ side: "left" | "right";
856
+ };
857
+ declare function MarqueeFade({ className, side, ...props }: MarqueeFadeProps): react_jsx_runtime.JSX.Element;
858
+ type MarqueeItemProps = HTMLAttributes<HTMLDivElement>;
859
+ declare function MarqueeItem({ className, ...props }: MarqueeItemProps): react_jsx_runtime.JSX.Element;
860
+
861
+ interface LogosCarouselProps {
862
+ children: React$1.ReactNode;
863
+ stagger?: number;
864
+ count?: number;
865
+ className?: string;
866
+ duration?: number;
867
+ interval?: number;
868
+ initialDelay?: number;
869
+ }
870
+ declare function LogosCarousel({ children, stagger, count, className, duration, interval, initialDelay, }: LogosCarouselProps): react_jsx_runtime.JSX.Element | null;
871
+
872
+ interface DialogQrProps extends Omit<React$1.ComponentProps<typeof Dialog>, "children"> {
873
+ /**
874
+ * The title of the dialog QR.
875
+ */
876
+ title?: string;
877
+ /**
878
+ * The short title of the step 3 in dialog QR.
879
+ */
880
+ shortTitle?: string;
881
+ /**
882
+ * The image URL for the QR code.
883
+ */
884
+ qrImage?: string;
885
+ /**
886
+ * The link associated with the QR code.
887
+ */
888
+ qrLink?: string;
889
+ /**
890
+ * The logo image URL for the QR code.
891
+ */
892
+ logoQr?: string;
893
+ /**
894
+ * Indicates whether the QR code is all in one.
895
+ */
896
+ isQrForAll?: boolean;
897
+ className?: string;
898
+ /**
899
+ * Optional override for step list (left side).
900
+ */
901
+ children?: React$1.ReactNode;
902
+ }
903
+ declare function DialogQr({ className, children, title, shortTitle, qrImage, qrLink, logoQr, isQrForAll, ...props }: DialogQrProps): react_jsx_runtime.JSX.Element;
904
+
905
+ interface QRPaymentProps extends React$1.ComponentProps<"div"> {
906
+ loading?: boolean;
907
+ isExpriedQR: Date | string | number | boolean;
908
+ qrLink: string;
909
+ qrImage?: string;
910
+ logoQr?: string;
911
+ titleOrder?: string;
912
+ dateExpired?: Date | string | number;
913
+ priceOrder?: number | string;
914
+ isAIOQR?: boolean;
915
+ isHideGuidePayment?: boolean;
916
+ }
917
+ interface PaymentGuideProps {
918
+ isQrForAll?: boolean;
919
+ shortTitle?: string;
920
+ className?: string;
921
+ }
922
+ interface PaymentGuideDialogProps {
923
+ children: React$1.ReactElement;
924
+ title?: string;
925
+ isQrForAll?: boolean;
926
+ shortTitle?: string;
927
+ open?: boolean;
928
+ onOpenChange?: (open: boolean) => void;
929
+ }
930
+ declare function PaymentGuide({ isQrForAll, shortTitle, className }: PaymentGuideProps): react_jsx_runtime.JSX.Element;
931
+ declare function PaymentGuideDialog({ children, title, isQrForAll, shortTitle, open, onOpenChange, }: PaymentGuideDialogProps): react_jsx_runtime.JSX.Element;
932
+ declare function QRCodeScanBox({ isQrForAll, qrImage, qrLink, logoQr, expired, loading, onQrLoaded, dateExpired, priceOrder, titleOrder, isHideGuidePayment, }: {
933
+ isQrForAll?: boolean;
934
+ qrImage?: string;
935
+ qrLink: string;
936
+ logoQr?: string;
937
+ expired?: boolean;
938
+ loading?: boolean;
939
+ onQrLoaded?: () => void;
940
+ dateExpired?: Date | string | number;
941
+ priceOrder?: number | string;
942
+ titleOrder?: string;
943
+ isHideGuidePayment?: boolean;
944
+ }): react_jsx_runtime.JSX.Element;
945
+ declare function QRPayment({ loading, isExpriedQR, qrLink, qrImage, logoQr, dateExpired, priceOrder, titleOrder, className, isAIOQR, isHideGuidePayment, ...props }: QRPaymentProps): react_jsx_runtime.JSX.Element;
946
+
947
+ type LegacyActionButtonVariant = "primary" | "secondary" | "outline" | "tonal" | "danger" | "transparent";
948
+ interface ActionButtonProps extends Omit<ButtonProps, "disabled" | "loading" | "variant"> {
949
+ /**
950
+ * Action to be performed when the button is clicked.
951
+ */
952
+ action?: string | (() => void) | undefined;
953
+ /**
954
+ * Opens a new tab when href link.
955
+ */
956
+ newTab?: boolean;
957
+ /**
958
+ * Offset top when use button scroll to element.
959
+ */
960
+ offset?: number;
961
+ /**
962
+ * Props to pass to the DialogQr component. If this prop is provided, the button will open a dialog with a QR code. qrLink in DialogQrProps is required.
963
+ */
964
+ dialogQrProps?: Partial<DialogQrProps>;
965
+ /**
966
+ * Button variant. Supports both legacy block variants and current Mobase button variants.
967
+ */
968
+ variant?: LegacyActionButtonVariant | ButtonProps["variant"];
969
+ /**
970
+ * Legacy loading prop from Mobase website blocks.
971
+ */
972
+ isLoading?: boolean;
973
+ /**
974
+ * Legacy disabled prop from Mobase website blocks.
975
+ */
976
+ isDisabled?: boolean;
977
+ /**
978
+ * Current Mobase button loading prop.
979
+ */
980
+ loading?: ButtonProps["loading"];
981
+ /**
982
+ * Current Mobase button disabled prop.
983
+ */
984
+ disabled?: ButtonProps["disabled"];
985
+ /**
986
+ * CSS class to be appended to the root element.
987
+ */
988
+ className?: string;
989
+ /**
990
+ * The content for button.
991
+ */
992
+ children?: ReactNode;
993
+ /**
994
+ * Callback fired when tracking event is pushed.
995
+ */
996
+ onPushTrackingEvent?: () => void;
997
+ }
998
+
999
+ interface HeadingBlockProps {
1000
+ /**
1001
+ * ALign the heading.
1002
+ */
1003
+ align?: "center" | "left" | "right";
1004
+ /**
1005
+ * The tagline content.
1006
+ */
1007
+ tagline?: string;
1008
+ /**
1009
+ * The title content.
1010
+ */
1011
+ title?: string;
1012
+ /**
1013
+ * The description content.
1014
+ */
1015
+ description?: string;
1016
+ /**
1017
+ * HTML Tag heading. Default is "h2".
1018
+ */
1019
+ tagHeading?: "h1" | "h2";
1020
+ /**
1021
+ * The color scheme of the heading block.
1022
+ */
1023
+ colorScheme?: "pink" | "black" | "white";
1024
+ /**
1025
+ * The size of the heading.
1026
+ */
1027
+ sizeHeading?: "small" | "large";
1028
+ /**
1029
+ * CSS class to be appended to the root element heading.
1030
+ */
1031
+ className?: string;
1032
+ }
1033
+ interface dataButton extends ActionButtonProps {
1034
+ /**
1035
+ * Button name.
1036
+ */
1037
+ btnName: string;
1038
+ }
1039
+ interface ButtonsBlockProps {
1040
+ /**
1041
+ * CSS class to be appended to the root element.
1042
+ */
1043
+ className?: string;
1044
+ /**
1045
+ * ALign the button.
1046
+ */
1047
+ align?: "center" | "left" | "right";
1048
+ /**
1049
+ * Button is full width in mobile.
1050
+ */
1051
+ isFullInMobile?: boolean;
1052
+ /**
1053
+ * Button group data.
1054
+ */
1055
+ buttons?: dataButton[];
1056
+ }
1057
+ interface SectionBlockProps {
1058
+ /**
1059
+ * Id of the section.
1060
+ */
1061
+ idSection?: string | undefined;
1062
+ /**
1063
+ * CSS class to be appended to the root element.
1064
+ */
1065
+ className?: string;
1066
+ /**
1067
+ * Input the color code or image url according to CSS syntax.
1068
+ */
1069
+ background?: string;
1070
+ /**
1071
+ * The children of the section.
1072
+ */
1073
+ children?: React.ReactNode;
1074
+ /**
1075
+ * When true, disables all loop animations (InfiniteSlider, HorizontalScroll nav, Carousel).
1076
+ * Use in editor environments like Puck to prevent performance issues.
1077
+ * @default false
1078
+ */
1079
+ editorMode?: boolean;
1080
+ }
1081
+
1082
+ interface HeroContentProps extends SectionBlockProps {
1083
+ /**
1084
+ * The template of the hero section.
1085
+ */
1086
+ template?: 1 | 2 | 3;
1087
+ /**
1088
+ * The data heading of the hero section.
1089
+ */
1090
+ dataHeading?: HeadingBlockProps;
1091
+ /**
1092
+ * The array of feature items displayed in the hero section.
1093
+ */
1094
+ dataFeatures?: HeroContentListFeatureProps[];
1095
+ /**
1096
+ * The data buttons of the hero section.
1097
+ */
1098
+ dataButtons?: ButtonsBlockProps;
1099
+ /**
1100
+ * Key statistics displayed below the heading.
1101
+ */
1102
+ dataStats?: HeroContentListStats[];
1103
+ /**
1104
+ * The media (image or YouTube video) of the hero section.
1105
+ */
1106
+ dataMedia?: HeroContentMediaProps;
1107
+ /**
1108
+ * Custom component to replace the default media slot.
1109
+ * Useful for embedding interactive widgets, app mockups, etc.
1110
+ */
1111
+ advancedComponent?: React.ReactNode;
1112
+ }
1113
+ interface HeroContentListFeatureProps {
1114
+ /** Feature label — supports HTML string via html-react-parser. */
1115
+ name?: string;
1116
+ /** Optional image/icon URL replacing the default check icon. */
1117
+ image?: string;
1118
+ }
1119
+ interface HeroContentListStats {
1120
+ /**
1121
+ * Numeric (or string) value of the stat, e.g. 30 or "30+".
1122
+ */
1123
+ value?: number | string;
1124
+ /**
1125
+ * Short suffix appended immediately after value, e.g. "M+".
1126
+ */
1127
+ suffix?: string;
1128
+ /**
1129
+ * Unit label shown after suffix, e.g. "người dùng".
1130
+ */
1131
+ unit?: string;
1132
+ /**
1133
+ * Supporting description below the value.
1134
+ */
1135
+ description?: string;
1136
+ }
1137
+ interface HeroContentMediaProps {
1138
+ /** Image or video thumbnail URL. */
1139
+ src: string;
1140
+ /** Aspect ratio as number (e.g. 16/9) or string (e.g. "16/9"). */
1141
+ ratio?: string | number;
1142
+ /** Callback when the play button is clicked. */
1143
+ onClickFC?: () => void;
1144
+ /** Extra class on the media wrapper div. */
1145
+ className?: string;
1146
+ /** Extra class on the inner img element. */
1147
+ classNameMedia?: string;
1148
+ /** YouTube video ID — enables the play-button overlay dialog. */
1149
+ youtubeId?: string;
1150
+ /** Media type constant: TYPE_MEDIA_IMAGE (1) | TYPE_MEDIA_VIDEO (2). */
1151
+ type?: number | null;
1152
+ /** Alt text for the image. */
1153
+ alt?: string;
1154
+ }
1155
+
1156
+ declare const HERO_SECTION_DEFAULT_BACKGROUND: string;
1157
+ declare function HeroSection({ template, idSection, dataHeading, dataButtons, dataFeatures, dataStats, dataMedia, className, background, advancedComponent, editorMode, }: HeroContentProps): react_jsx_runtime.JSX.Element;
1158
+
1159
+ interface GiftListItemData {
1160
+ /**
1161
+ * Service name of gift card.
1162
+ */
1163
+ serviceName?: string;
1164
+ /**
1165
+ * Gift card title.
1166
+ */
1167
+ title: string;
1168
+ /**
1169
+ * Short description of gift card.
1170
+ */
1171
+ description?: string;
1172
+ /**
1173
+ * Gift thumbnail url (square image).
1174
+ */
1175
+ thumbnail?: string;
1176
+ /**
1177
+ * Gift tag content.
1178
+ */
1179
+ tag?: string;
1180
+ /**
1181
+ * Mark card as featured item.
1182
+ */
1183
+ isFeatured?: boolean;
1184
+ /**
1185
+ * Gift action button text.
1186
+ */
1187
+ btnName?: string;
1188
+ /**
1189
+ * Gift action button url. When set (non-empty), the CTA uses a link with this target.
1190
+ * When empty or omitted but `btnName` is set, the CTA opens the detail modal instead.
1191
+ */
1192
+ btnLink?: string;
1193
+ /**
1194
+ * Open action button in new tab.
1195
+ */
1196
+ newTab?: boolean;
1197
+ /**
1198
+ * When true, clicking the card (outside the CTA) opens the detail modal. Does not affect CTA:
1199
+ * CTA follows `btnLink` (navigate) vs no `btnLink` (open modal).
1200
+ */
1201
+ useModal?: boolean;
1202
+ /**
1203
+ * Short description displayed in modal.
1204
+ */
1205
+ content?: string;
1206
+ }
1207
+ interface GiftListSectionProps extends SectionBlockProps {
1208
+ /**
1209
+ * The template of the section.
1210
+ */
1211
+ template?: 1;
1212
+ /**
1213
+ * The data heading of the section.
1214
+ */
1215
+ dataHeading?: HeadingBlockProps;
1216
+ /**
1217
+ * The data buttons of the section.
1218
+ */
1219
+ dataButtons?: ButtonsBlockProps;
1220
+ /**
1221
+ * The array data gift list of the section.
1222
+ */
1223
+ dataGiftList?: GiftListItemData[];
1224
+ }
1225
+
1226
+ declare function GiftListSection({ template, className, idSection, background, dataHeading, dataButtons, dataGiftList, editorMode, }: GiftListSectionProps): react_jsx_runtime.JSX.Element;
1227
+
1228
+ interface BannerData {
1229
+ /**
1230
+ * The image source.
1231
+ */
1232
+ src?: string;
1233
+ /**
1234
+ * The image alt.
1235
+ */
1236
+ alt?: string;
1237
+ /**
1238
+ * The image ratio.
1239
+ */
1240
+ ratio?: number;
1241
+ }
1242
+ interface FeatureData {
1243
+ /**
1244
+ * Feature name.
1245
+ */
1246
+ name?: string;
1247
+ /**
1248
+ * Feature description.
1249
+ */
1250
+ description?: string;
1251
+ /**
1252
+ * Feature image.
1253
+ */
1254
+ image?: string;
1255
+ /**
1256
+ * Feature button name.
1257
+ */
1258
+ btnName?: string;
1259
+ /**
1260
+ * Feature button link.
1261
+ */
1262
+ btnLink?: string;
1263
+ /**
1264
+ * Feature button use new tab.
1265
+ */
1266
+ newTab?: boolean;
1267
+ }
1268
+ interface FeatureSectionProps extends SectionBlockProps {
1269
+ /**
1270
+ * The template of the feature section.
1271
+ */
1272
+ template?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11;
1273
+ /**
1274
+ * The data heading of the feature section.
1275
+ */
1276
+ dataHeading?: HeadingBlockProps;
1277
+ /**
1278
+ * The array data features of the feature section.
1279
+ */
1280
+ dataFeatures?: FeatureData[];
1281
+ /**
1282
+ * The data buttons of the feature section.
1283
+ */
1284
+ dataButtons?: ButtonsBlockProps;
1285
+ /**
1286
+ * The data banner of the feature section.
1287
+ */
1288
+ dataBanner?: BannerData;
1289
+ }
1290
+
1291
+ declare const FeatureSection: ({ template, background, className, idSection, dataHeading, dataFeatures, dataButtons, dataBanner, editorMode, }: FeatureSectionProps) => react_jsx_runtime.JSX.Element;
1292
+
1293
+ interface DataMetricsProps {
1294
+ metricValue: string;
1295
+ metricTitle: string;
1296
+ metricDescription?: string;
1297
+ }
1298
+ interface MetricsSectionProps extends SectionBlockProps {
1299
+ /**
1300
+ * The template of the metrics section.
1301
+ * The template value must be a positive integer greater than 0.
1302
+ */
1303
+ template?: (number & {
1304
+ __type?: "PositiveInteger";
1305
+ }) | 1;
1306
+ /**
1307
+ * The data heading of the metrics section.
1308
+ */
1309
+ dataHeading: HeadingBlockProps;
1310
+ /**
1311
+ * The array data metrics of the metrics section.
1312
+ */
1313
+ dataMetrics: DataMetricsProps[];
1314
+ dataButtons?: ButtonsBlockProps;
1315
+ }
1316
+
1317
+ declare const MetricsSection: ({ idSection, dataHeading, dataMetrics, dataButtons, background, className, template, editorMode, }: MetricsSectionProps) => react_jsx_runtime.JSX.Element;
1318
+
1319
+ interface CTAMedia {
1320
+ /**
1321
+ * The image source.
1322
+ */
1323
+ src?: string;
1324
+ /**
1325
+ * The image alt text.
1326
+ */
1327
+ alt?: string;
1328
+ /**
1329
+ * The image aspect ratio (width / height). Defaults to 4/3.
1330
+ */
1331
+ ratio?: number;
1332
+ }
1333
+ interface CTABlockData {
1334
+ /**
1335
+ * Override the background color or image of the CTA block.
1336
+ * Accepts any CSS background value (color, gradient, url()).
1337
+ */
1338
+ background?: string;
1339
+ }
1340
+ interface CTASectionProps extends SectionBlockProps {
1341
+ /**
1342
+ * Layout template variant.
1343
+ * - `1` — centered content on a light background (default).
1344
+ * - `2` — split layout: text on the left, media image on the right, on a primary background.
1345
+ */
1346
+ template?: 1 | 2;
1347
+ /**
1348
+ * Heading block data (tagline, title, description).
1349
+ */
1350
+ dataHeading?: HeadingBlockProps;
1351
+ /**
1352
+ * CTA block styling data (custom background).
1353
+ */
1354
+ dataCTA?: CTABlockData;
1355
+ /**
1356
+ * Button group data.
1357
+ */
1358
+ dataButtons?: ButtonsBlockProps;
1359
+ /**
1360
+ * Media (image) data used in template 2.
1361
+ */
1362
+ dataMedia?: CTAMedia;
1363
+ }
1364
+ type CTASectionData = CTABlockData;
1365
+
1366
+ declare function CTASection({ template, background, className, idSection, dataHeading, dataCTA, dataButtons, dataMedia, editorMode, }: CTASectionProps): react_jsx_runtime.JSX.Element;
1367
+
1368
+ interface HowItWorksData {
1369
+ /**
1370
+ * Image banner `src` or icon (`svg` string or React `svg` element) of the step.
1371
+ */
1372
+ image?: string | ReactElement;
1373
+ /**
1374
+ * Title of the step.
1375
+ */
1376
+ title: string;
1377
+ /**
1378
+ * Description of the step.
1379
+ */
1380
+ description?: string;
1381
+ }
1382
+ interface HowItWorksSectionProps extends SectionBlockProps {
1383
+ /**
1384
+ * The template of the section.
1385
+ */
1386
+ template?: 1 | 2 | 3;
1387
+ /**
1388
+ * The data heading of the section.
1389
+ */
1390
+ dataHeading?: HeadingBlockProps;
1391
+ /**
1392
+ * The array data steps of the section.
1393
+ */
1394
+ dataHowItWorks?: HowItWorksData[];
1395
+ /**
1396
+ * The data buttons of the section.
1397
+ */
1398
+ dataButtons?: ButtonsBlockProps;
1399
+ }
1400
+
1401
+ declare function HowItWorksSection({ template, background, className, idSection, dataHeading, dataHowItWorks, dataButtons, editorMode, }: HowItWorksSectionProps): react_jsx_runtime.JSX.Element;
1402
+
1403
+ interface StepItemProps {
1404
+ /**
1405
+ * The title of the step item.
1406
+ */
1407
+ title: string;
1408
+ /**
1409
+ * The content of the step item.
1410
+ */
1411
+ content?: string;
1412
+ /**
1413
+ * The image of the step item.
1414
+ */
1415
+ image?: string;
1416
+ }
1417
+ interface GuideDataProps {
1418
+ /**
1419
+ * The title of the guide item.
1420
+ */
1421
+ title: string;
1422
+ /**
1423
+ * The description of the guide item.
1424
+ */
1425
+ description?: string;
1426
+ /**
1427
+ * The avatar image of the guide item. Image size: 540x960 or 540x1168. If not provided, the image in step first will be used.
1428
+ */
1429
+ avatar?: string;
1430
+ /**
1431
+ * The array of step.
1432
+ */
1433
+ stepList: StepItemProps[];
1434
+ }
1435
+ interface GuideSectionProps extends SectionBlockProps {
1436
+ /**
1437
+ * The template of the section.
1438
+ */
1439
+ template?: 1;
1440
+ /**
1441
+ * The data heading of the section.
1442
+ */
1443
+ dataHeading?: HeadingBlockProps;
1444
+ /**
1445
+ * The data guides of the section.
1446
+ */
1447
+ dataGuide?: GuideDataProps[];
1448
+ /**
1449
+ * The data horizontal scroll of the guide section.
1450
+ */
1451
+ dataHorizontalScroll?: HorizontalScrollProps;
1452
+ /**
1453
+ * The data buttons of the section.
1454
+ */
1455
+ dataButtons?: ButtonsBlockProps;
1456
+ /**
1457
+ * Show mockup mobile in banner.
1458
+ */
1459
+ mockup?: "default" | "small" | "none";
1460
+ /**
1461
+ * Show UI step.
1462
+ */
1463
+ isStep?: boolean;
1464
+ }
1465
+
1466
+ declare function GuideSection({ idSection, dataHeading, dataGuide, dataHorizontalScroll, dataButtons, className, background, template, mockup, isStep, editorMode, }: GuideSectionProps): react_jsx_runtime.JSX.Element;
1467
+
1468
+ interface BlogItemProps {
1469
+ id: number;
1470
+ title: string;
1471
+ totalViews?: string;
1472
+ thumbnailMobile: string;
1473
+ thumbnailDesktop: string;
1474
+ url: string;
1475
+ category?: string;
1476
+ categoryUrl?: string;
1477
+ description?: string;
1478
+ }
1479
+ interface DataBlogProps {
1480
+ title: string;
1481
+ blogList: BlogItemProps[];
1482
+ classNameItem?: string;
1483
+ isShowBtn?: boolean;
1484
+ btnUrl?: string;
1485
+ btnName?: string;
1486
+ isNewTab?: boolean;
1487
+ isLoading?: boolean;
1488
+ dataUmamiEvent?: string;
1489
+ }
1490
+ interface DataHorizontalScrollProps$2 {
1491
+ showGradientOverlay?: boolean;
1492
+ gradientOverlayColor?: string;
1493
+ className?: string;
1494
+ }
1495
+ interface BlogSectionProps extends SectionBlockProps {
1496
+ template?: 1 | 2;
1497
+ dataHeading: HeadingBlockProps;
1498
+ dataHorizontalScroll?: DataHorizontalScrollProps$2;
1499
+ dataBlog: DataBlogProps[];
1500
+ onClickModal?: (id: number) => void;
1501
+ onClickLoadMore?: (tabIndex: number) => void;
1502
+ }
1503
+
1504
+ declare function BlogSection({ dataHeading, dataHorizontalScroll, dataBlog, idSection, className, background, template, onClickModal, onClickLoadMore, editorMode, }: BlogSectionProps): react_jsx_runtime.JSX.Element;
1505
+
1506
+ interface NewsItemProps {
1507
+ /** The id of the news item. */
1508
+ id: number;
1509
+ /** The title of the news item. */
1510
+ title: string;
1511
+ /** The date time of the news item. */
1512
+ dateTime?: string;
1513
+ /** Thumbnail for small viewports. */
1514
+ thumbnailMobile: string;
1515
+ /** Thumbnail for desktop. */
1516
+ thumbnailDesktop: string;
1517
+ /** The url of the news item. */
1518
+ url: string;
1519
+ /** The category of the news item. */
1520
+ category?: string;
1521
+ /** The category url of the news item. */
1522
+ categoryUrl?: string;
1523
+ }
1524
+ interface DataNewsProps {
1525
+ /** The title of the news group (tab label). */
1526
+ title: string;
1527
+ /** The array of news items. */
1528
+ newsList: NewsItemProps[];
1529
+ /** The class name of the news item. */
1530
+ classNameItem?: string;
1531
+ /** Show the CTA button. Default false. */
1532
+ isShowBtn?: boolean;
1533
+ /** The url of the button. */
1534
+ btnUrl?: string;
1535
+ /** The name of the button. Default "Xem thêm". */
1536
+ btnName?: string;
1537
+ /** Open the button in a new tab. Default false. */
1538
+ isNewTab?: boolean;
1539
+ /** Loading state for load-more. Default false. */
1540
+ isLoading?: boolean;
1541
+ /** Umami tracking event name for the load more button. */
1542
+ dataUmamiEvent?: string;
1543
+ }
1544
+ interface DataHorizontalScrollProps$1 {
1545
+ showGradientOverlay?: boolean;
1546
+ gradientOverlayColor?: string;
1547
+ className?: string;
1548
+ }
1549
+ interface NewsSectionProps extends SectionBlockProps {
1550
+ template?: 1;
1551
+ dataHeading: HeadingBlockProps;
1552
+ dataHorizontalScroll?: DataHorizontalScrollProps$1;
1553
+ dataNews: DataNewsProps[];
1554
+ onClickModal?: (id: number) => void;
1555
+ onClickLoadMore?: (tabIndex: number) => void;
1556
+ }
1557
+
1558
+ declare function NewsSection({ idSection, dataHeading, dataHorizontalScroll, dataNews, className, background, template, onClickModal, onClickLoadMore, editorMode, }: NewsSectionProps): react_jsx_runtime.JSX.Element;
1559
+
1560
+ interface ContentsProps {
1561
+ title: string;
1562
+ description: string;
1563
+ }
1564
+ interface DataFAQProps {
1565
+ title: string;
1566
+ isActiveFistQuestion?: boolean;
1567
+ contents: ContentsProps[];
1568
+ }
1569
+ interface DataHorizontalScrollProps {
1570
+ showGradientOverlay?: boolean;
1571
+ gradientOverlayColor?: string;
1572
+ className?: string;
1573
+ }
1574
+ interface FAQSectionProps extends SectionBlockProps {
1575
+ template?: 1 | 2;
1576
+ dataHeading?: HeadingBlockProps;
1577
+ dataFAQ: DataFAQProps[];
1578
+ dataButtons?: ButtonsBlockProps;
1579
+ dataHorizontalScroll?: DataHorizontalScrollProps;
1580
+ }
1581
+
1582
+ declare function FAQSection({ dataHeading, dataFAQ, className, background, idSection, dataButtons, dataHorizontalScroll, template, editorMode, }: FAQSectionProps): react_jsx_runtime.JSX.Element;
1583
+
1584
+ interface BrandData {
1585
+ name?: string;
1586
+ logo?: string;
1587
+ url?: string;
1588
+ newTab?: boolean;
1589
+ }
1590
+ interface SocialProofSectionProps extends SectionBlockProps {
1591
+ template?: 1 | 2 | 3 | 4;
1592
+ dataHeading?: HeadingBlockProps;
1593
+ dataBrands?: BrandData[];
1594
+ dataButtons?: ButtonsBlockProps;
1595
+ /** Desktop horizontal gap between logos (template 1 only). Mobile uses fixed spacing. */
1596
+ spaceX?: "20px" | "28px" | "36px" | "40px" | "48px" | "56px" | "64px" | "80px";
1597
+ /** Scroll snap on mobile (template 1 and 2). */
1598
+ isScrollSnap?: boolean;
1599
+ }
1600
+
1601
+ declare function SocialProofSection({ template, background, className, idSection, dataHeading, dataBrands, dataButtons, spaceX, isScrollSnap, editorMode, }: SocialProofSectionProps): react_jsx_runtime.JSX.Element;
1602
+
1603
+ interface TestimonialData {
1604
+ avatar?: string;
1605
+ name?: string;
1606
+ position?: string;
1607
+ shortTitle?: string;
1608
+ description?: string;
1609
+ /** 1–5; 0 hides stars */
1610
+ rating?: number;
1611
+ date?: string;
1612
+ }
1613
+ interface TestimonialSectionProps extends SectionBlockProps {
1614
+ template?: 1 | 2 | 3;
1615
+ dataHeading?: HeadingBlockProps;
1616
+ dataTestimonials?: TestimonialData[];
1617
+ dataButtons?: ButtonsBlockProps;
1618
+ }
1619
+ declare const randomColors: string[];
1620
+ /** Supports `getInitials("Jane Doe")` or legacy `getInitials({ name })`. */
1621
+ declare function getInitials(nameOrOpts: string | {
1622
+ name?: string;
1623
+ }): string;
1624
+ declare function getColorForIndex(index: number, colors?: readonly string[]): string;
1625
+
1626
+ declare function TestimonialSection({ template, background, className, idSection, dataHeading, dataTestimonials, dataButtons, editorMode, }: TestimonialSectionProps): react_jsx_runtime.JSX.Element;
1627
+
1628
+ type InfiniteSliderProps = {
1629
+ children: React.ReactNode;
1630
+ gap?: number;
1631
+ speed?: number;
1632
+ speedOnHover?: number;
1633
+ direction?: "horizontal" | "vertical";
1634
+ reverse?: boolean;
1635
+ className?: string;
1636
+ /** Extra classes on the inner motion track (e.g. `w-full` for vertical columns). */
1637
+ classNameMotion?: string;
1638
+ };
1639
+ /**
1640
+ * Infinite marquee using Motion — used by testimonial rails and similar blocks.
1641
+ */
1642
+ declare function InfiniteSlider({ children, gap, speed, speedOnHover, direction, reverse, className, classNameMotion, }: InfiniteSliderProps): react_jsx_runtime.JSX.Element;
1643
+
1644
+ /** Background classes for initials avatars (MoMo palette tokens, cycles by index). */
1645
+ declare const TESTIMONIAL_AVATAR_FALLBACK_BACKGROUNDS: readonly ["bg-pink-7", "bg-blue-7", "bg-green-7", "bg-amber-7", "bg-purple-7", "bg-teal-7", "bg-red-7", "bg-primary"];
1646
+ declare function getInitialsFromName(name: string): string;
1647
+ declare function getTestimonialAvatarColorClass(index: number): string;
1648
+
1649
+ /**
1650
+ * Best-effort plain text for `alt` and similar when CMS fields may contain HTML.
1651
+ */
1652
+ declare function plainTextFromHtml(html: string, maxLength?: number): string;
1653
+
1654
+ type ClickOutsideEvent = MouseEvent | TouchEvent;
1655
+ declare function useClickOutside(refs: RefObject<HTMLElement | null>[], onClickOutside: (event: ClickOutsideEvent) => void): void;
1656
+
1657
+ declare function useIsMobile(): boolean;
1658
+
1659
+ declare function useCopyToClipboard({ timeout, onCopy, }?: {
1660
+ timeout?: number;
1661
+ onCopy?: () => void;
1662
+ }): {
1663
+ isCopied: boolean;
1664
+ copyToClipboard: (value: string) => Promise<boolean>;
1665
+ };
1666
+
1667
+ declare function useIsMomoApp(): boolean;
1668
+
1669
+ declare function useLocalStorage<T>(key: string, initialValue: T | (() => T)): [T, Dispatch<SetStateAction<T>>];
1670
+
1671
+ declare function useIsClient(): boolean;
1672
+
1673
+ /**
1674
+ * Hook to detect if the current device has touch capabilities.
1675
+ * Safe for SSR - returns `false` during server-side rendering.
1676
+ */
1677
+ declare function useIsTouchDevice(): boolean;
1678
+
1679
+ interface WindowSize {
1680
+ width: number | undefined;
1681
+ height: number | undefined;
1682
+ }
1683
+ /**
1684
+ * Hook that returns the current window dimensions.
1685
+ * Safe for SSR - returns `undefined` for width and height during server-side rendering.
1686
+ */
1687
+ declare function useWindowSize(): WindowSize;
1688
+
1689
+ declare function cn(...inputs: ClassValue[]): string;
1690
+ declare function stripHtml(html?: string): string;
1691
+
1692
+ /**
1693
+ * Scrolls the viewport so the element matching `selector` sits near the top,
1694
+ * minus `offset` pixels. No-op if the element is missing.
1695
+ *
1696
+ * **Chỉ dùng trên client** (gọi từ `onClick`, `useEffect`, v.v.) — không gọi trong RSC.
1697
+ */
1698
+ declare function scrollToSelector(selector: string, offset?: number): void;
1699
+
1700
+ /**
1701
+ * Chuẩn hoá `ratio` từ CMS (số hoặc chuỗi `"16/9"`) thành một số dương cho `AspectRatio` / layout.
1702
+ */
1703
+ declare function convertMediaRatio(ratio: string | number | undefined): number;
1704
+
1705
+ interface BuildQrCodeImageUrlOptions {
1706
+ /** Kích thước ảnh vuông (pixel). Mặc định 240. */
1707
+ size?: number;
1708
+ /** Nếu có, trả về URL này thay vì tạo từ `qrLink`. */
1709
+ qrImage?: string;
1710
+ }
1711
+ /**
1712
+ * Trả về URL ảnh QR để hiển thị (`<img src={...} />`).
1713
+ * Mặc định dùng dịch vụ công khai; có thể truyền `qrImage` để dùng ảnh tự host.
1714
+ */
1715
+ declare function buildQrCodeImageUrl(qrLink: string, options?: BuildQrCodeImageUrlOptions): string;
1716
+
1717
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AnchoredToastProvider, AspectRatio, Autocomplete, AutocompleteClear, AutocompleteCollection, AutocompleteEmpty, AutocompleteGroup, AutocompleteGroupLabel, AutocompleteInput, AutocompleteItem, AutocompleteList, AutocompletePopup, AutocompleteRow, AutocompleteSeparator, AutocompleteStatus, AutocompleteTrigger, AutocompleteValue, Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, type BadgeProps, type BadgeSize, type BlogItemProps, BlogSection, type BlogSectionProps, type BrandData, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, type BuildQrCodeImageUrlOptions, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, type ButtonProps, type CTABlockData, type CTAMedia, CTASection, type CTASectionData, type CTASectionProps, Calendar, CalendarDayButton, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, type CarouselApi, CarouselContent, CarouselDots, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, type CheckboxProps, CloseButton, type CloseButtonProps, type CloseButtonSize, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandCreateHandle, CommandDialog, CommandDialogBackdrop, CommandDialogPopup, CommandDialogPortal, CommandDialogTrigger, CommandDialogViewport, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, type ContentsProps, type DataBlogProps, type DataFAQProps, type DataHorizontalScrollProps$1 as DataHorizontalScrollProps, type DataNewsProps, DatePicker, type DatePickerPreset, type DatePickerProps, type DatePickerSize, DateRangePicker, type DateRangePickerProps, Dialog, DialogBackdrop, DialogClose, DialogPopup as DialogContent, DialogCreateHandle, DialogDescription, DialogFooter, DialogHeader, DialogBackdrop as DialogOverlay, DialogPanel, DialogPopup, type DialogPopupSize, DialogPortal, DialogQr, type DialogQrProps, DialogTitle, DialogTrigger, DialogViewport, type DialogViewportPlacement, Drawer, DrawerBackdrop, DrawerBar, DrawerClose, DrawerContent, DrawerCreateHandle, DrawerDescription, DrawerFooter, DrawerHeader, DrawerPanel, DrawerPopup, DrawerPortal, DrawerSwipeArea, DrawerTitle, DrawerTrigger, DrawerViewport, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, FAQSection, type FAQSectionProps, FeatureSection, type FeatureSectionProps, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, Footer, type FooterAppDownloadItem, FooterContent, type FooterData, type FooterItem, type FooterProps, type FooterSocialItem, Form, type GiftListItemData, GiftListSection, type GiftListSectionProps, type GuideDataProps, GuideSection, type GuideSectionProps, HERO_SECTION_DEFAULT_BACKGROUND, HeaderNavigation, type HeaderNavigationDropdownAlign, type HeaderNavigationItemLink, type HeaderNavigationItemWithDropdown, type HeaderNavigationMenuItem, type HeaderNavigationProps, type HeaderNavigationServiceInfo, type HeaderNavigationSubItem, type HeroContentListFeatureProps, type HeroContentListStats, type HeroContentMediaProps, type HeroContentProps, HeroSection, Hitbox, HorizontalContent, HorizontalNext, HorizontalPrevious, HorizontalScroll, type HorizontalScrollProps, type HowItWorksData, HowItWorksSection, type HowItWorksSectionProps, InfiniteSlider, type InfiniteSliderProps, Input, InputControl, type InputControlProps, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, type InputProps, type InputSize$1 as InputSize, Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, Kbd, KbdGroup, Label, Logo, type LogoProps, LogosCarousel, type LogosCarouselProps, Marquee, MarqueeContent, type MarqueeContentProps, MarqueeFade, type MarqueeFadeProps, MarqueeItem, type MarqueeItemProps, type MarqueeProps, MetricsSection, type MetricsSectionProps, NativeSelect, NativeSelectOptGroup, NativeSelectOption, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, type NewsItemProps, NewsSection, type NewsSectionProps, NumberField, NumberFieldDecrement, NumberFieldGroup, NumberFieldIncrement, NumberFieldInput, type NumberFieldProps, NumberFieldScrubArea, type NumberFieldScrubAreaProps, type NumberFieldSize, OTPField, OTPFieldInput, type OTPFieldProps, OTPFieldSeparator, type OTPFieldSize, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PaymentGuide, PaymentGuideDialog, type PaymentGuideDialogProps, type PaymentGuideProps, type PerType, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, type PresetType, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, QRCodeScanBox, QRPayment, type QRPaymentProps, RadioGroup, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, ScrollArea, ScrollBar, SearchInput, type SearchInputProps, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, type SelectTriggerProps, type SelectTriggerSize, SelectValue, Separator, Skeleton, Slider, SlidingNumber, SocialProofSection, type SocialProofSectionProps, Spinner, type SpinnerProps, type StepItemProps, Switch, TESTIMONIAL_AVATAR_FALLBACK_BACKGROUNDS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TestimonialData, TestimonialSection, type TestimonialSectionProps, TextEffect, type TextEffectProps, Textarea, type TextareaProps, type ToastPosition, ToastProvider, type ToastProviderProps, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, anchoredToastManager, badgeVariants, buildQrCodeImageUrl, buttonGroupVariants, buttonVariants, cn, convertMediaRatio, footerAppDownloads, footerCertificationBadge, footerDefaultPrimaryMenu, footerDefaultSecondaryMenu, footerHelpGuideUrl, footerLogoSrc, footerMoMoText, footerQrDownloadImage, footerSocialItems, footerSupportAddress, getColorForIndex, getInitials, getInitialsFromName, getTestimonialAvatarColorClass, navigationMenuTriggerStyle, plainTextFromHtml, randomColors, scrollToSelector, stripHtml, tabsListVariants, toastManager, useAutocompleteFilter, useCarousel, useClickOutside, useComboboxAnchor, useCopyToClipboard, useIsClient, useIsMobile, useIsMomoApp, useIsTouchDevice, useLocalStorage, useWindowSize };