@ui-sdk/web 0.0.0-stage → 0.1.0-beta.1

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 (467) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +10 -2
  3. package/browser/web/accordion.js +1 -0
  4. package/browser/web/alert-dialog.js +1 -0
  5. package/browser/web/autocomplete.js +1 -0
  6. package/browser/web/avatar.js +1 -0
  7. package/browser/web/button.js +1 -0
  8. package/browser/web/calendar.js +1 -0
  9. package/browser/web/carousel.js +1 -0
  10. package/browser/web/checkbox.js +1 -0
  11. package/browser/web/chunks/0eRGibL6.js +1 -0
  12. package/browser/web/chunks/2bIEUO6_.js +1 -0
  13. package/browser/web/chunks/5A9w2ULz.js +1 -0
  14. package/browser/web/chunks/5RSyydjV.js +1 -0
  15. package/browser/web/chunks/9pWTy2wl.js +1 -0
  16. package/browser/web/chunks/B0f2j6zz.js +1 -0
  17. package/browser/web/chunks/B1rux6br.js +1 -0
  18. package/browser/web/chunks/B3-APaNf.js +1 -0
  19. package/browser/web/chunks/B7EgSgjQ.js +1 -0
  20. package/browser/web/chunks/B8QcOzJU.js +1 -0
  21. package/browser/web/chunks/BFueEkwm.js +3 -0
  22. package/browser/web/chunks/BJj3oS29.js +1 -0
  23. package/browser/web/chunks/BNSvTCpr.js +1 -0
  24. package/browser/web/chunks/BPD0kAZB.js +1 -0
  25. package/browser/web/chunks/BQeduZqT.js +1 -0
  26. package/browser/web/chunks/B_CVFyiz.js +1 -0
  27. package/browser/web/chunks/B_ns1YHO.js +1 -0
  28. package/browser/web/chunks/BcwkVTsR.js +1 -0
  29. package/browser/web/chunks/BeaQ6TYM.js +1 -0
  30. package/browser/web/chunks/BgBB013u.js +1 -0
  31. package/browser/web/chunks/BgsKhHDm.js +1 -0
  32. package/browser/web/chunks/BjMcbuhi.js +9 -0
  33. package/browser/web/chunks/Bjiy_F2N.js +1 -0
  34. package/browser/web/chunks/BqScCLwv.js +1 -0
  35. package/browser/web/chunks/BqX3Utqx.js +1 -0
  36. package/browser/web/chunks/BtVkQf3z.js +1 -0
  37. package/browser/web/chunks/By30h-7B.js +1 -0
  38. package/browser/web/chunks/C1zqYpy2.js +1 -0
  39. package/browser/web/chunks/C436juFf.js +1 -0
  40. package/browser/web/chunks/C4_bULs1.js +1 -0
  41. package/browser/web/chunks/C4omqJEz.js +1 -0
  42. package/browser/web/chunks/C7tt0T3n.js +1 -0
  43. package/browser/web/chunks/C8w7s5dg.js +1 -0
  44. package/browser/web/chunks/CElY4erO.js +1 -0
  45. package/browser/web/chunks/CFODo-m2.js +1 -0
  46. package/browser/web/chunks/CL4wjam9.js +1 -0
  47. package/browser/web/chunks/CMg-8UVf.js +1 -0
  48. package/browser/web/chunks/COWKfakj.js +1 -0
  49. package/browser/web/chunks/CQBU0qZ4.js +1 -0
  50. package/browser/web/chunks/CV6uABgc.js +1 -0
  51. package/browser/web/chunks/C_SWFpWQ.js +1 -0
  52. package/browser/web/chunks/C_Uanbrl.js +1 -0
  53. package/browser/web/chunks/Ce_CSanC.js +1 -0
  54. package/browser/web/chunks/Cg-ZmRhS.js +1 -0
  55. package/browser/web/chunks/Cgf2wPI_.js +1 -0
  56. package/browser/web/chunks/Cuep_3Vf.js +1 -0
  57. package/browser/web/chunks/D02PaHn6.js +1 -0
  58. package/browser/web/chunks/D5LiaI5R.js +1 -0
  59. package/browser/web/chunks/D9UgVYvF.js +1 -0
  60. package/browser/web/chunks/DC08tnkE.js +2 -0
  61. package/browser/web/chunks/DG8YGSvu.js +1 -0
  62. package/browser/web/chunks/DIQd0FYD.js +1 -0
  63. package/browser/web/chunks/DMLqacE8.js +1 -0
  64. package/browser/web/chunks/DSUI3yI-.js +1 -0
  65. package/browser/web/chunks/DT3Hb76X.js +1 -0
  66. package/browser/web/chunks/DY75g3-W.js +1 -0
  67. package/browser/web/chunks/DZpNQKZ9.js +1 -0
  68. package/browser/web/chunks/Db-W1wrC.js +1 -0
  69. package/browser/web/chunks/Dc1xK3Ii.js +1 -0
  70. package/browser/web/chunks/DdF6awFs.js +1 -0
  71. package/browser/web/chunks/DdaCLml8.js +1 -0
  72. package/browser/web/chunks/Dh8MLjQO.js +1 -0
  73. package/browser/web/chunks/DiuslJRy.js +1 -0
  74. package/browser/web/chunks/DjRcw3Y0.js +1 -0
  75. package/browser/web/chunks/Djdv-16J.js +1 -0
  76. package/browser/web/chunks/DnFXe_lF.js +1 -0
  77. package/browser/web/chunks/DneGv1oC.js +1 -0
  78. package/browser/web/chunks/DsVxP-p-.js +1 -0
  79. package/browser/web/chunks/DwDilCo2.js +1 -0
  80. package/browser/web/chunks/DwV48AXv.js +1 -0
  81. package/browser/web/chunks/F37aF4-L.js +1 -0
  82. package/browser/web/chunks/LyB6XIbN.js +1 -0
  83. package/browser/web/chunks/NKnbYGjC.js +1 -0
  84. package/browser/web/chunks/Vk-rVi16.js +1 -0
  85. package/browser/web/chunks/XsM0J1Ex.js +1 -0
  86. package/browser/web/chunks/asSN9iEp.js +1 -0
  87. package/browser/web/chunks/c-AjHfdF.js +1 -0
  88. package/browser/web/chunks/dR-12TPY.js +1 -0
  89. package/browser/web/chunks/hR4xM0EC.js +1 -0
  90. package/browser/web/chunks/hqOaBxAg.js +1 -0
  91. package/browser/web/chunks/kMKqqeG4.js +1 -0
  92. package/browser/web/chunks/kXboBcfi.js +1 -0
  93. package/browser/web/chunks/l4aQIg22.js +1 -0
  94. package/browser/web/chunks/tJC0JSU4.js +1 -0
  95. package/browser/web/chunks/wHdS_QYM.js +1 -0
  96. package/browser/web/chunks/yv8dTvNI.js +1 -0
  97. package/browser/web/chunks/yw9M3nfi.js +1 -0
  98. package/browser/web/collapsible.js +1 -0
  99. package/browser/web/color-picker.js +1 -0
  100. package/browser/web/combobox.js +2 -0
  101. package/browser/web/command.js +1 -0
  102. package/browser/web/core.js +5 -0
  103. package/browser/web/date-input.js +1 -0
  104. package/browser/web/date-picker.js +1 -0
  105. package/browser/web/dialog.js +1 -0
  106. package/browser/web/drawer.js +1 -0
  107. package/browser/web/field.js +1 -0
  108. package/browser/web/file-input.js +1 -0
  109. package/browser/web/hover-card.js +1 -0
  110. package/browser/web/image-cropper.js +1 -0
  111. package/browser/web/input.js +1 -0
  112. package/browser/web/label.js +1 -0
  113. package/browser/web/listbox.js +1 -0
  114. package/browser/web/menu.js +1 -0
  115. package/browser/web/menubar.js +1 -0
  116. package/browser/web/meter.js +1 -0
  117. package/browser/web/navigation-menu.js +1 -0
  118. package/browser/web/number-input.js +1 -0
  119. package/browser/web/otp-input.js +2 -0
  120. package/browser/web/overlays.js +1 -0
  121. package/browser/web/pagination.js +1 -0
  122. package/browser/web/password-input.js +1 -0
  123. package/browser/web/popover.js +1 -0
  124. package/browser/web/preferences.js +1 -0
  125. package/browser/web/progress.js +1 -0
  126. package/browser/web/radio.js +1 -0
  127. package/browser/web/rating.js +1 -0
  128. package/browser/web/resizable.js +1 -0
  129. package/browser/web/scroll-area.js +1 -0
  130. package/browser/web/segmented-control.js +1 -0
  131. package/browser/web/select.js +1 -0
  132. package/browser/web/separator.js +1 -0
  133. package/browser/web/slider.js +1 -0
  134. package/browser/web/switch.js +1 -0
  135. package/browser/web/tabs.js +1 -0
  136. package/browser/web/textarea.js +1 -0
  137. package/browser/web/time-input.js +1 -0
  138. package/browser/web/timeline.js +1 -0
  139. package/browser/web/toast.js +1 -0
  140. package/browser/web/toggle.js +1 -0
  141. package/browser/web/token-input.js +8 -0
  142. package/browser/web/toolbar.js +1 -0
  143. package/browser/web/tooltip.js +1 -0
  144. package/browser/web/tree.js +1 -0
  145. package/browser/web/trigger-menu.js +4 -0
  146. package/browser/web/waterfall.js +1 -0
  147. package/browser/web.css +3378 -0
  148. package/browser/web.js +3 -0
  149. package/custom-elements.json +32315 -0
  150. package/dist/accordion.d.ts +2 -0
  151. package/dist/accordion.js +57 -0
  152. package/dist/action.d.ts +16 -0
  153. package/dist/action.js +39 -0
  154. package/dist/agent.d.ts +2 -0
  155. package/dist/agent.js +7 -0
  156. package/dist/autocomplete.d.ts +2 -0
  157. package/dist/autocomplete.js +120 -0
  158. package/dist/autoload.d.ts +18 -0
  159. package/dist/autoload.js +63 -0
  160. package/dist/avatar.d.ts +2 -0
  161. package/dist/avatar.js +27 -0
  162. package/dist/browser-core.d.ts +2 -0
  163. package/dist/browser-core.js +8 -0
  164. package/dist/button.d.ts +2 -0
  165. package/dist/button.js +35 -0
  166. package/dist/calendar.d.ts +23 -0
  167. package/dist/calendar.js +429 -0
  168. package/dist/carousel.d.ts +2 -0
  169. package/dist/carousel.js +54 -0
  170. package/dist/checkbox.d.ts +4 -0
  171. package/dist/checkbox.js +75 -0
  172. package/dist/collapsible.d.ts +2 -0
  173. package/dist/collapsible.js +28 -0
  174. package/dist/color-picker.d.ts +2 -0
  175. package/dist/color-picker.js +64 -0
  176. package/dist/combobox.d.ts +2 -0
  177. package/dist/combobox.js +334 -0
  178. package/dist/command.d.ts +2 -0
  179. package/dist/command.js +122 -0
  180. package/dist/date-input.d.ts +3 -0
  181. package/dist/date-input.js +87 -0
  182. package/dist/date-picker.d.ts +2 -0
  183. package/dist/date-picker.js +174 -0
  184. package/dist/default-text.d.ts +3 -0
  185. package/dist/default-text.js +24 -0
  186. package/dist/define-element.d.ts +404 -0
  187. package/dist/define-element.js +1489 -0
  188. package/dist/dialog.d.ts +3 -0
  189. package/dist/dialog.js +94 -0
  190. package/dist/drawer.d.ts +2 -0
  191. package/dist/drawer.js +96 -0
  192. package/dist/entries/accordion.d.ts +3 -0
  193. package/dist/entries/accordion.js +7 -0
  194. package/dist/entries/alert-dialog.d.ts +3 -0
  195. package/dist/entries/alert-dialog.js +13 -0
  196. package/dist/entries/autocomplete.d.ts +3 -0
  197. package/dist/entries/autocomplete.js +7 -0
  198. package/dist/entries/avatar.d.ts +2 -0
  199. package/dist/entries/avatar.js +3 -0
  200. package/dist/entries/button.d.ts +2 -0
  201. package/dist/entries/button.js +3 -0
  202. package/dist/entries/calendar.d.ts +3 -0
  203. package/dist/entries/calendar.js +7 -0
  204. package/dist/entries/carousel.d.ts +3 -0
  205. package/dist/entries/carousel.js +7 -0
  206. package/dist/entries/checkbox.d.ts +3 -0
  207. package/dist/entries/checkbox.js +15 -0
  208. package/dist/entries/collapsible.d.ts +3 -0
  209. package/dist/entries/collapsible.js +7 -0
  210. package/dist/entries/color-picker.d.ts +3 -0
  211. package/dist/entries/color-picker.js +7 -0
  212. package/dist/entries/combobox.d.ts +3 -0
  213. package/dist/entries/combobox.js +7 -0
  214. package/dist/entries/command.d.ts +3 -0
  215. package/dist/entries/command.js +7 -0
  216. package/dist/entries/date-input.d.ts +3 -0
  217. package/dist/entries/date-input.js +7 -0
  218. package/dist/entries/date-picker.d.ts +3 -0
  219. package/dist/entries/date-picker.js +7 -0
  220. package/dist/entries/dialog.d.ts +3 -0
  221. package/dist/entries/dialog.js +7 -0
  222. package/dist/entries/drawer.d.ts +3 -0
  223. package/dist/entries/drawer.js +8 -0
  224. package/dist/entries/field.d.ts +2 -0
  225. package/dist/entries/field.js +3 -0
  226. package/dist/entries/file-input.d.ts +3 -0
  227. package/dist/entries/file-input.js +13 -0
  228. package/dist/entries/hover-card.d.ts +3 -0
  229. package/dist/entries/hover-card.js +7 -0
  230. package/dist/entries/image-cropper.d.ts +3 -0
  231. package/dist/entries/image-cropper.js +7 -0
  232. package/dist/entries/input.d.ts +3 -0
  233. package/dist/entries/input.js +8 -0
  234. package/dist/entries/label.d.ts +2 -0
  235. package/dist/entries/label.js +3 -0
  236. package/dist/entries/listbox.d.ts +3 -0
  237. package/dist/entries/listbox.js +7 -0
  238. package/dist/entries/menu.d.ts +3 -0
  239. package/dist/entries/menu.js +7 -0
  240. package/dist/entries/menubar.d.ts +3 -0
  241. package/dist/entries/menubar.js +7 -0
  242. package/dist/entries/meter.d.ts +2 -0
  243. package/dist/entries/meter.js +3 -0
  244. package/dist/entries/navigation-menu.d.ts +3 -0
  245. package/dist/entries/navigation-menu.js +7 -0
  246. package/dist/entries/number-input.d.ts +3 -0
  247. package/dist/entries/number-input.js +7 -0
  248. package/dist/entries/otp-input.d.ts +3 -0
  249. package/dist/entries/otp-input.js +7 -0
  250. package/dist/entries/overlays.d.ts +2 -0
  251. package/dist/entries/overlays.js +3 -0
  252. package/dist/entries/pagination.d.ts +3 -0
  253. package/dist/entries/pagination.js +11 -0
  254. package/dist/entries/password-input.d.ts +3 -0
  255. package/dist/entries/password-input.js +7 -0
  256. package/dist/entries/popover.d.ts +3 -0
  257. package/dist/entries/popover.js +7 -0
  258. package/dist/entries/preferences.d.ts +3 -0
  259. package/dist/entries/preferences.js +13 -0
  260. package/dist/entries/progress.d.ts +2 -0
  261. package/dist/entries/progress.js +3 -0
  262. package/dist/entries/radio.d.ts +3 -0
  263. package/dist/entries/radio.js +7 -0
  264. package/dist/entries/rating.d.ts +3 -0
  265. package/dist/entries/rating.js +8 -0
  266. package/dist/entries/resizable.d.ts +3 -0
  267. package/dist/entries/resizable.js +11 -0
  268. package/dist/entries/scroll-area.d.ts +3 -0
  269. package/dist/entries/scroll-area.js +7 -0
  270. package/dist/entries/segmented-control.d.ts +3 -0
  271. package/dist/entries/segmented-control.js +7 -0
  272. package/dist/entries/select.d.ts +3 -0
  273. package/dist/entries/select.js +7 -0
  274. package/dist/entries/separator.d.ts +2 -0
  275. package/dist/entries/separator.js +3 -0
  276. package/dist/entries/slider.d.ts +3 -0
  277. package/dist/entries/slider.js +7 -0
  278. package/dist/entries/switch.d.ts +3 -0
  279. package/dist/entries/switch.js +7 -0
  280. package/dist/entries/tabs.d.ts +3 -0
  281. package/dist/entries/tabs.js +7 -0
  282. package/dist/entries/textarea.d.ts +3 -0
  283. package/dist/entries/textarea.js +7 -0
  284. package/dist/entries/time-input.d.ts +3 -0
  285. package/dist/entries/time-input.js +7 -0
  286. package/dist/entries/timeline.d.ts +3 -0
  287. package/dist/entries/timeline.js +7 -0
  288. package/dist/entries/toast.d.ts +2 -0
  289. package/dist/entries/toast.js +3 -0
  290. package/dist/entries/toggle.d.ts +3 -0
  291. package/dist/entries/toggle.js +12 -0
  292. package/dist/entries/token-input.d.ts +3 -0
  293. package/dist/entries/token-input.js +17 -0
  294. package/dist/entries/toolbar.d.ts +3 -0
  295. package/dist/entries/toolbar.js +7 -0
  296. package/dist/entries/tooltip.d.ts +3 -0
  297. package/dist/entries/tooltip.js +7 -0
  298. package/dist/entries/tree.d.ts +3 -0
  299. package/dist/entries/tree.js +17 -0
  300. package/dist/entries/trigger-menu.d.ts +3 -0
  301. package/dist/entries/trigger-menu.js +11 -0
  302. package/dist/entries/waterfall.d.ts +3 -0
  303. package/dist/entries/waterfall.js +11 -0
  304. package/dist/events.d.ts +1658 -0
  305. package/dist/events.js +0 -0
  306. package/dist/field.d.ts +2 -0
  307. package/dist/field.js +101 -0
  308. package/dist/file-input.d.ts +2 -0
  309. package/dist/file-input.js +140 -0
  310. package/dist/forward-attributes.d.ts +2 -0
  311. package/dist/forward-attributes.js +22 -0
  312. package/dist/history.d.ts +2 -0
  313. package/dist/history.js +11 -0
  314. package/dist/hover-card.d.ts +2 -0
  315. package/dist/hover-card.js +31 -0
  316. package/dist/image-cropper.d.ts +2 -0
  317. package/dist/image-cropper.js +66 -0
  318. package/dist/index.d.ts +66 -0
  319. package/dist/index.js +269 -0
  320. package/dist/input.d.ts +3 -0
  321. package/dist/input.js +69 -0
  322. package/dist/label.d.ts +2 -0
  323. package/dist/label.js +11 -0
  324. package/dist/list.d.ts +40 -0
  325. package/dist/list.js +192 -0
  326. package/dist/listbox.d.ts +2 -0
  327. package/dist/listbox.js +84 -0
  328. package/dist/menu.d.ts +4 -0
  329. package/dist/menu.js +295 -0
  330. package/dist/menubar.d.ts +4 -0
  331. package/dist/menubar.js +30 -0
  332. package/dist/meter.d.ts +2 -0
  333. package/dist/meter.js +22 -0
  334. package/dist/navigation-menu.d.ts +2 -0
  335. package/dist/navigation-menu.js +114 -0
  336. package/dist/number-input.d.ts +2 -0
  337. package/dist/number-input.js +73 -0
  338. package/dist/observe.d.ts +2 -0
  339. package/dist/observe.js +7 -0
  340. package/dist/otp-input.d.ts +2 -0
  341. package/dist/otp-input.js +72 -0
  342. package/dist/overlays.d.ts +13 -0
  343. package/dist/overlays.js +156 -0
  344. package/dist/pagination.d.ts +2 -0
  345. package/dist/pagination.js +127 -0
  346. package/dist/password-input.d.ts +2 -0
  347. package/dist/password-input.js +57 -0
  348. package/dist/popover.d.ts +2 -0
  349. package/dist/popover.js +64 -0
  350. package/dist/popup.d.ts +40 -0
  351. package/dist/popup.js +112 -0
  352. package/dist/preferences.d.ts +2 -0
  353. package/dist/preferences.js +56 -0
  354. package/dist/progress.d.ts +2 -0
  355. package/dist/progress.js +22 -0
  356. package/dist/radio.d.ts +2 -0
  357. package/dist/radio.js +33 -0
  358. package/dist/rating.d.ts +2 -0
  359. package/dist/rating.js +64 -0
  360. package/dist/resizable.d.ts +2 -0
  361. package/dist/resizable.js +42 -0
  362. package/dist/scroll-area.d.ts +2 -0
  363. package/dist/scroll-area.js +45 -0
  364. package/dist/segmented-control.d.ts +2 -0
  365. package/dist/segmented-control.js +28 -0
  366. package/dist/select.d.ts +2 -0
  367. package/dist/select.js +239 -0
  368. package/dist/separator.d.ts +2 -0
  369. package/dist/separator.js +11 -0
  370. package/dist/slider.d.ts +2 -0
  371. package/dist/slider.js +77 -0
  372. package/dist/tabs.d.ts +2 -0
  373. package/dist/tabs.js +37 -0
  374. package/dist/timeline.d.ts +2 -0
  375. package/dist/timeline.js +27 -0
  376. package/dist/toast.d.ts +20 -0
  377. package/dist/toast.js +177 -0
  378. package/dist/toggle.d.ts +3 -0
  379. package/dist/toggle.js +64 -0
  380. package/dist/token-input.d.ts +2 -0
  381. package/dist/token-input.js +103 -0
  382. package/dist/toolbar.d.ts +2 -0
  383. package/dist/toolbar.js +36 -0
  384. package/dist/tooltip.d.ts +2 -0
  385. package/dist/tooltip.js +35 -0
  386. package/dist/tree.d.ts +2 -0
  387. package/dist/tree.js +147 -0
  388. package/dist/trigger-menu.d.ts +2 -0
  389. package/dist/trigger-menu.js +133 -0
  390. package/dist/waterfall.d.ts +2 -0
  391. package/dist/waterfall.js +140 -0
  392. package/docs/README.md +89 -0
  393. package/docs/agents.md +1523 -0
  394. package/docs/components/accordion.md +1401 -0
  395. package/docs/components/alert-dialog.md +788 -0
  396. package/docs/components/autocomplete.md +1692 -0
  397. package/docs/components/avatar.md +261 -0
  398. package/docs/components/button.md +441 -0
  399. package/docs/components/calendar.md +1536 -0
  400. package/docs/components/carousel.md +1055 -0
  401. package/docs/components/checkbox.md +1045 -0
  402. package/docs/components/collapsible.md +535 -0
  403. package/docs/components/color-picker.md +651 -0
  404. package/docs/components/combobox.md +3274 -0
  405. package/docs/components/command.md +1431 -0
  406. package/docs/components/date-input.md +563 -0
  407. package/docs/components/date-picker.md +1136 -0
  408. package/docs/components/dialog.md +1360 -0
  409. package/docs/components/drawer.md +1201 -0
  410. package/docs/components/field.md +519 -0
  411. package/docs/components/file-input.md +617 -0
  412. package/docs/components/hover-card.md +486 -0
  413. package/docs/components/image-cropper.md +489 -0
  414. package/docs/components/input.md +327 -0
  415. package/docs/components/label.md +208 -0
  416. package/docs/components/listbox.md +1015 -0
  417. package/docs/components/menu.md +1212 -0
  418. package/docs/components/menubar.md +460 -0
  419. package/docs/components/meter.md +298 -0
  420. package/docs/components/navigation-menu.md +1573 -0
  421. package/docs/components/number-input.md +1087 -0
  422. package/docs/components/otp-input.md +558 -0
  423. package/docs/components/pagination.md +639 -0
  424. package/docs/components/password-input.md +649 -0
  425. package/docs/components/popover.md +1433 -0
  426. package/docs/components/preferences.md +243 -0
  427. package/docs/components/progress.md +406 -0
  428. package/docs/components/radio.md +855 -0
  429. package/docs/components/rating.md +431 -0
  430. package/docs/components/resizable.md +866 -0
  431. package/docs/components/scroll-area.md +898 -0
  432. package/docs/components/segmented-control.md +421 -0
  433. package/docs/components/select.md +1957 -0
  434. package/docs/components/separator.md +238 -0
  435. package/docs/components/slider.md +1018 -0
  436. package/docs/components/switch.md +583 -0
  437. package/docs/components/tabs.md +948 -0
  438. package/docs/components/textarea.md +331 -0
  439. package/docs/components/time-input.md +235 -0
  440. package/docs/components/timeline.md +622 -0
  441. package/docs/components/toast.md +1223 -0
  442. package/docs/components/toggle.md +522 -0
  443. package/docs/components/token-input.md +854 -0
  444. package/docs/components/toolbar.md +815 -0
  445. package/docs/components/tooltip.md +860 -0
  446. package/docs/components/tree.md +1243 -0
  447. package/docs/components/trigger-menu.md +1110 -0
  448. package/docs/components/waterfall.md +709 -0
  449. package/docs/controllers.md +66 -0
  450. package/docs/core.md +8027 -0
  451. package/docs/custom-parts.md +91 -0
  452. package/docs/first-component.md +88 -0
  453. package/docs/forms.md +125 -0
  454. package/docs/installation.md +141 -0
  455. package/docs/introduction.md +32 -0
  456. package/docs/lists-and-menus.md +166 -0
  457. package/docs/llms.txt +1566 -0
  458. package/docs/parts-and-composition.md +57 -0
  459. package/docs/popups.md +92 -0
  460. package/docs/rendering.md +71 -0
  461. package/docs/server-rendering.md +118 -0
  462. package/docs/state-and-events.md +134 -0
  463. package/docs/styling-and-animation.md +104 -0
  464. package/docs/utilities/async-options.md +332 -0
  465. package/docs/utilities/shortcuts.md +184 -0
  466. package/html-custom-data.json +14792 -0
  467. package/package.json +302 -3
@@ -0,0 +1,1658 @@
1
+ import type { PreferenceLike } from "@ui-sdk/core";
2
+ import type { TreeAnnouncement, TreeCheckedChangeReason, TreeController, TreeExpandedChangeReason, TreeItemData, TreeValueChangeReason } from "@ui-sdk/core/tree";
3
+ import type { AccordionController, AccordionValueChangeReason } from "@ui-sdk/core/accordion";
4
+ import type { CheckboxCheckedChangeReason, CheckboxController, CheckboxGroupController, CheckboxGroupValueChangeReason } from "@ui-sdk/core/checkbox";
5
+ import type { SwitchCheckedChangeReason, SwitchController } from "@ui-sdk/core/switch";
6
+ import type { CollapsibleController, CollapsibleOpenChangeReason } from "@ui-sdk/core/collapsible";
7
+ import type { FileInputController, FileInputOptions, FileInputValueChangeDetails, FileInputValueChangeReason, FileRejection } from "@ui-sdk/core/file-input";
8
+ import type { AlertDialogController, AlertDialogOpenChangeReason, AlertDialogPayloadChangeReason, DialogController, DialogDismissAttemptDetails, DialogOpenChangeDetails, DialogPayloadChangeReason } from "@ui-sdk/core/dialog";
9
+ import type { DrawerController, DrawerDismissReason, DrawerOpenChangeReason, DrawerOptions, DrawerPayloadChangeReason, DrawerSnapPointChangeReason, SnapPoint } from "@ui-sdk/core/drawer";
10
+ import type { MenuCheckedChangeDetails, MenuData, MenuController, MenuDismissReason, MenuOpenChangeReason, MenuPayloadChangeReason, MenuValueChangeDetails } from "@ui-sdk/core/menu";
11
+ import type { HoverCardController, HoverCardOpenChangeReason, HoverCardPayloadChangeReason } from "@ui-sdk/core/hover-card";
12
+ import type { ImageCrop, ImageCropperController, ImageCropperCropChangeDetails, ImageCropperCropCommitDetails } from "@ui-sdk/core/image-cropper";
13
+ import type { NavigationMenuController, NavigationMenuValueChangeReason } from "@ui-sdk/core/navigation-menu";
14
+ import type { InputController, InputValueChangeReason } from "@ui-sdk/core/input";
15
+ import type { NumberInputController, NumberInputOptions, NumberInputValueChangeReason } from "@ui-sdk/core/number-input";
16
+ import type { OTPInputController, OTPInputValueChangeReason } from "@ui-sdk/core/otp-input";
17
+ import type { SliderController, SliderOptions, SliderValueChangeDetails, SliderValueCommitDetails } from "@ui-sdk/core/slider";
18
+ import type { PaginationController, PaginationPageChangeReason } from "@ui-sdk/core/pagination";
19
+ import type { CalendarAnchorChangeReason, CalendarController, CalendarFocusedChangeReason, CalendarMonthChangeReason, CalendarValue, CalendarValueChangeReason, DateMatchers, ISOMonth } from "@ui-sdk/core/calendar";
20
+ import type { ISODate } from "@ui-sdk/core/date";
21
+ import type { DatePickerController, DatePickerDismissReason, DatePickerMonthChangeReason, DatePickerOpenChangeReason, DatePickerValue, DatePickerValueChangeReason } from "@ui-sdk/core/date-picker";
22
+ import type { DateInputController, DateInputValueChangeReason } from "@ui-sdk/core/date-input";
23
+ import type { TimeInputController, TimeInputValueChangeReason } from "@ui-sdk/core/time-input";
24
+ import type { CarouselController, CarouselPageChangeReason, CarouselPlayingChangeReason } from "@ui-sdk/core/carousel";
25
+ import type { PasswordInputController, PasswordInputVisibleChangeReason } from "@ui-sdk/core/password-input";
26
+ import type { ListboxController, ListboxOptions, ListboxValueChangeReason } from "@ui-sdk/core/listbox";
27
+ import type { AvatarLoadingStatus, AvatarLoadingStatusChangeReason } from "@ui-sdk/core/avatar";
28
+ import type { GaugeOptions } from "@ui-sdk/core/renderer";
29
+ import type { MeterOptions } from "@ui-sdk/core/meter";
30
+ import type { PopoverController, PopoverDismissReason, PopoverOpenChangeReason, PopoverPayloadChangeReason } from "@ui-sdk/core/popover";
31
+ import type { RadioGroupController, RadioGroupValueChangeReason } from "@ui-sdk/core/radio";
32
+ import type { RatingController, RatingOptions, RatingValueChangeReason } from "@ui-sdk/core/rating";
33
+ import type { ScrollAreaController } from "@ui-sdk/core/scroll-area";
34
+ import type { SegmentedControlController, SegmentedControlValueChangeReason } from "@ui-sdk/core/segmented-control";
35
+ import type { SeparatorOptions } from "@ui-sdk/core/separator";
36
+ import type { label } from "@ui-sdk/core/label";
37
+ import type { SelectController, SelectDismissReason, SelectOpenChangeReason, SelectOptions, SelectQueryChangeReason, SelectValueChangeReason } from "@ui-sdk/core/select";
38
+ import type { ColorPickerController, ColorPickerValueChangeDetails, ColorPickerValueCommitDetails } from "@ui-sdk/core/color-picker";
39
+ import type { ComboboxController, ComboboxDismissReason, ComboboxOpenChangeReason, ComboboxOptions, ComboboxQueryChangeReason, ComboboxValueChangeReason } from "@ui-sdk/core/combobox";
40
+ import type { ListData, ListHighlightDetails } from "@ui-sdk/core/select";
41
+ import type { AutocompleteController, AutocompleteDismissReason, AutocompleteOpenChangeReason, AutocompleteOptions, AutocompleteValueChangeReason } from "@ui-sdk/core/autocomplete";
42
+ import type { CommandController, CommandData, CommandOptions, CommandPagesChangeReason, CommandQueryChangeReason, CommandValueChangeReason } from "@ui-sdk/core/command";
43
+ import type { UndoStackOptions, Token, TokenCodec, TokenInputController, TokenInputValue, TokenInputValueChangeDetails } from "@ui-sdk/core/token-input";
44
+ import type { TextEditorAdapter, TriggerDefinition, TriggerMenuController, TriggerMenuDismissReason, TriggerMenuOpenChangeReason, TriggerMenuQueryChangeReason, TriggerMenuSelectDetails } from "@ui-sdk/core/trigger-menu";
45
+ import type { ResizableController, ResizableLayoutChangeReason, ResizableStorage } from "@ui-sdk/core/resizable";
46
+ import type { TabsController, TabsValueChangeReason } from "@ui-sdk/core/tabs";
47
+ import type { ToggleController, ToggleGroupController, ToggleGroupValueChangeReason, TogglePressedChangeReason } from "@ui-sdk/core/toggle";
48
+ import type { Toast, Toaster } from "@ui-sdk/core/toast";
49
+ import type { Overlays } from "@ui-sdk/core/overlays";
50
+ import type { OverlayHostToastOptions } from "./overlays.js";
51
+ import type { ToolbarController } from "@ui-sdk/core/toolbar";
52
+ import type { TimelineController } from "@ui-sdk/core/timeline";
53
+ import type { MenubarController } from "@ui-sdk/core/menubar";
54
+ import type { TooltipController, TooltipOpenChangeReason, TooltipPayloadChangeReason } from "@ui-sdk/core/tooltip";
55
+ import type { accordion } from "@ui-sdk/core/accordion";
56
+ import type { alertDialog } from "@ui-sdk/core/alert-dialog";
57
+ import type { autocomplete } from "@ui-sdk/core/autocomplete";
58
+ import type { avatar } from "@ui-sdk/core/avatar";
59
+ import type { button } from "@ui-sdk/core/button";
60
+ import type { calendar } from "@ui-sdk/core/calendar";
61
+ import type { carousel } from "@ui-sdk/core/carousel";
62
+ import type { checkbox, checkboxGroup } from "@ui-sdk/core/checkbox";
63
+ import type { timeline } from "@ui-sdk/core/timeline";
64
+ import type { collapsible } from "@ui-sdk/core/collapsible";
65
+ import type { colorPicker } from "@ui-sdk/core/color-picker";
66
+ import type { combobox } from "@ui-sdk/core/combobox";
67
+ import type { command } from "@ui-sdk/core/command";
68
+ import type { dateInput } from "@ui-sdk/core/date-input";
69
+ import type { datePicker } from "@ui-sdk/core/date-picker";
70
+ import type { timeInput } from "@ui-sdk/core/time-input";
71
+ import type { dialog } from "@ui-sdk/core/dialog";
72
+ import type { drawer } from "@ui-sdk/core/drawer";
73
+ import type { field, fieldGroup, fieldSet } from "@ui-sdk/core/field";
74
+ import type { fileInput } from "@ui-sdk/core/file-input";
75
+ import type { hoverCard } from "@ui-sdk/core/hover-card";
76
+ import type { imageCropper } from "@ui-sdk/core/image-cropper";
77
+ import type { input, inputGroup, textarea } from "@ui-sdk/core/input";
78
+ import type { listbox } from "@ui-sdk/core/listbox";
79
+ import type { menu } from "@ui-sdk/core/menu";
80
+ import type { menubar } from "@ui-sdk/core/menubar";
81
+ import type { meter } from "@ui-sdk/core/meter";
82
+ import type { navigationMenu } from "@ui-sdk/core/navigation-menu";
83
+ import type { numberInput } from "@ui-sdk/core/number-input";
84
+ import type { otpInput } from "@ui-sdk/core/otp-input";
85
+ import type { pagination } from "@ui-sdk/core/pagination";
86
+ import type { passwordInput } from "@ui-sdk/core/password-input";
87
+ import type { popover } from "@ui-sdk/core/popover";
88
+ import type { progress } from "@ui-sdk/core/progress";
89
+ import type { radioGroup } from "@ui-sdk/core/radio";
90
+ import type { rating } from "@ui-sdk/core/rating";
91
+ import type { resizable } from "@ui-sdk/core/resizable";
92
+ import type { scrollArea } from "@ui-sdk/core/scroll-area";
93
+ import type { segmentedControl } from "@ui-sdk/core/segmented-control";
94
+ import type { select } from "@ui-sdk/core/select";
95
+ import type { slider } from "@ui-sdk/core/slider";
96
+ import type { switchPrimitive } from "@ui-sdk/core/switch";
97
+ import type { tabs } from "@ui-sdk/core/tabs";
98
+ import type { toastRegion } from "@ui-sdk/core/toast";
99
+ import type { toggle, toggleGroup } from "@ui-sdk/core/toggle";
100
+ import type { tokenInput } from "@ui-sdk/core/token-input";
101
+ import type { toolbar } from "@ui-sdk/core/toolbar";
102
+ import type { tooltip } from "@ui-sdk/core/tooltip";
103
+ import type { tree } from "@ui-sdk/core/tree";
104
+ import type { waterfall, WaterfallController, WaterfallDataItem, WaterfallExpandedChangeReason, WaterfallValueChangeReason } from "@ui-sdk/core/waterfall";
105
+ import type { triggerMenu } from "@ui-sdk/core/trigger-menu";
106
+ import type { UiActionDetail } from "./action.js";
107
+ import type { ToastContent } from "./toast.js";
108
+ import type { ChangeDetails, CommitDetails, DismissAttemptDetails, DismissAttemptReason, OptionsOf, Primitive, PropsOf, SlotName, TypesOf } from "@ui-sdk/core";
109
+ type DistributiveOmit<T, K extends PropertyKey> = T extends unknown ? Omit<T, K> : never;
110
+ /**
111
+ * What a change event carries in `detail`: the new `value`, and the change
112
+ * details without `cancel`. Call `preventDefault()` to cancel the change.
113
+ * Checking `detail.reason` narrows `detail.event`, like in the other frameworks.
114
+ * @stable
115
+ */
116
+ type UiChangeDetail<Value, Details extends {
117
+ reason: string;
118
+ }> = DistributiveOmit<Details, "cancel" | "canceled"> & {
119
+ value: Value;
120
+ };
121
+ /**
122
+ * A change event, like `openchange` or `valuechange`.
123
+ * @stable
124
+ */
125
+ type UiChangeEvent<Value, Reason extends string = string> = CustomEvent<UiChangeDetail<Value, ChangeDetails<Reason>>>;
126
+ /**
127
+ * A change event whose details carry more than the shared fields, like a menu's `checkedchange`.
128
+ * @stable
129
+ */
130
+ type UiDetailedChangeEvent<Value, Details extends {
131
+ reason: string;
132
+ }> = CustomEvent<UiChangeDetail<Value, Details>>;
133
+ /**
134
+ * An `openchangecomplete` event: whether it opened or closed, once any animation finished.
135
+ * @stable
136
+ */
137
+ type UiOpenChangeCompleteEvent = CustomEvent<{
138
+ value: boolean;
139
+ }>;
140
+ /**
141
+ * A `dismissattempt` event: `dismissible` refused a dismissal, with its `reason` and `event` in `detail`.
142
+ * @stable
143
+ */
144
+ type UiDismissAttemptEvent<Reason extends DismissAttemptReason> = CustomEvent<DismissAttemptDetails<Reason>>;
145
+ /**
146
+ * An element's attribute options as properties, like `loop` on `<ui-tabs>`:
147
+ * each option an attribute can hold, besides the ones the element types
148
+ * itself (`Own`) and the ones every element already has, like `dir`.
149
+ * Booleans read true or false; the rest read undefined without the attribute.
150
+ * @stable
151
+ */
152
+ type AttributeProperties<P extends Primitive, Own extends string = never> = {
153
+ -readonly [K in keyof OptionsOf<P> & string as K extends Own | keyof HTMLElement | "id" | `on${string}` ? never : NonNullable<OptionsOf<P>[K]> extends string | number | boolean | readonly string[] ? K : never]-?: NonNullable<OptionsOf<P>[K]> extends boolean ? boolean : OptionsOf<P>[K] | undefined;
154
+ };
155
+ type AttributeValue<T> = [
156
+ Extract<T, string | number | boolean | readonly string[]>
157
+ ] extends [never] ? string : Extract<T, string | number | boolean | readonly string[]>;
158
+ /**
159
+ * A part element's props as properties, like `disabled` on `<ui-tabs-tab>`:
160
+ * the props its attributes hold (`Attributes`), each reflected like a root's
161
+ * options, and the values only a property can hold (`Properties`), like a
162
+ * trigger's `payload`. Booleans read true or false; the rest read undefined until set.
163
+ * @experimental
164
+ */
165
+ type PartProperties<P extends Primitive, S extends SlotName<P>, Attributes extends keyof PropsOf<P, S> & string, Properties extends keyof PropsOf<P, S> & string> = {
166
+ -readonly [K in Attributes]-?: NonNullable<PropsOf<P, S>[K]> extends boolean ? boolean : AttributeValue<PropsOf<P, S>[K]> | undefined;
167
+ } & {
168
+ -readonly [K in Properties]-?: PropsOf<P, S>[K] | undefined;
169
+ };
170
+ type ArgumentsDetail<Value, Rest extends unknown[]> = Rest extends [] ? [Value] extends [{
171
+ reason: string;
172
+ }] ? DistributiveOmit<Value, "cancel" | "canceled"> : {
173
+ value: Value;
174
+ } : Rest[0] extends infer Details extends {
175
+ reason: string;
176
+ } ? UiChangeDetail<Value, Details> : DistributiveOmit<NonNullable<Rest[0]>, "cancel" | "canceled"> & {
177
+ value: Value;
178
+ };
179
+ type CallbackDetail<Callback> = Callback extends (value: infer Value, ...rest: infer Rest) => infer Result ? unknown extends Result ? ArgumentsDetail<Value, Rest> & Pick<UiActionDetail, "waitUntil"> : [Extract<Result, PromiseLike<unknown>>] extends [never] ? ArgumentsDetail<Value, Rest> : ArgumentsDetail<Value, Rest> & Pick<UiActionDetail, "waitUntil"> : never;
180
+ /**
181
+ * The events a part fires, one for each of its slot's callbacks, named like
182
+ * a root's: `onOpenChange` fires `openchange`, like an accordion item's.
183
+ * @experimental
184
+ */
185
+ type PartEvents<P extends Primitive, S extends SlotName<P>> = {
186
+ [K in keyof PropsOf<P, S> & string as K extends `on${infer Name extends Capitalize<string>}` ? Lowercase<Name> : never]-?: CustomEvent<CallbackDetail<NonNullable<PropsOf<P, S>[K]>>>;
187
+ };
188
+ type ActionEvents = {
189
+ action: CustomEvent<UiActionDetail>;
190
+ };
191
+ /**
192
+ * The element of a primitive's part, like `<ui-tabs-tab>` for the tabs'
193
+ * `tab` slot, with its props as properties (see `PartProperties`) and typed
194
+ * events (`PartEvents`, unless the element fires others itself).
195
+ * @experimental
196
+ */
197
+ type UiPartElement<P extends Primitive, S extends SlotName<P>, Attributes extends keyof PropsOf<P, S> & string = never, Properties extends keyof PropsOf<P, S> & string = never, Events = PartEvents<P, S>> = UiElement<Events> & PartProperties<P, S, Attributes, Properties>;
198
+ interface FormAssociatedMembers {
199
+ /** The form it belongs to, like a native input's. */
200
+ readonly form: HTMLFormElement | null;
201
+ /** The labels that name it, like a native input's. */
202
+ readonly labels: NodeList;
203
+ name: string;
204
+ /** Whether its value is valid, and why not, like a native input's. */
205
+ readonly validity: ValidityState;
206
+ /** The message the browser shows while its value isn't valid, else an empty string. */
207
+ readonly validationMessage: string;
208
+ /** Whether its value is checked when its form submits: false while it's disabled or read-only. */
209
+ readonly willValidate: boolean;
210
+ /** Whether its value is valid. When it isn't, fires `invalid` on it. */
211
+ checkValidity(): boolean;
212
+ /** Whether its value is valid. When it isn't, fires `invalid` on it and shows the browser's message. */
213
+ reportValidity(): boolean;
214
+ /** Makes its value invalid with this message, or valid again with an empty string. */
215
+ setCustomValidity(message: string): void;
216
+ }
217
+ type FormControlProperties<P extends Primitive, Own extends string = never> = FormAssociatedMembers & AttributeProperties<P, Own | keyof FormAssociatedMembers>;
218
+ /**
219
+ * An element with typed listeners for its own events, like `openchange`, on
220
+ * top of the usual DOM events.
221
+ * @stable
222
+ */
223
+ interface UiElement<Events> extends HTMLElement {
224
+ addEventListener<K extends keyof Events>(type: K, listener: (this: this, event: Events[K]) => unknown, options?: boolean | AddEventListenerOptions): void;
225
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: this, event: HTMLElementEventMap[K]) => unknown, options?: boolean | AddEventListenerOptions): void;
226
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
227
+ removeEventListener<K extends keyof Events>(type: K, listener: (this: this, event: Events[K]) => unknown, options?: boolean | EventListenerOptions): void;
228
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: this, event: HTMLElementEventMap[K]) => unknown, options?: boolean | EventListenerOptions): void;
229
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
230
+ }
231
+ type OpenEvents<Reason extends string> = {
232
+ openchange: UiChangeEvent<boolean, Reason>;
233
+ openchangecomplete: UiOpenChangeCompleteEvent;
234
+ };
235
+ /**
236
+ * The events of `<ui-popover>`. `payloadchange` fires when another trigger's payload reaches the content.
237
+ * @stable
238
+ */
239
+ type PopoverEvents<Payload = unknown> = OpenEvents<PopoverOpenChangeReason> & {
240
+ payloadchange: UiChangeEvent<Payload | undefined, PopoverPayloadChangeReason>;
241
+ dismissattempt: UiDismissAttemptEvent<PopoverDismissReason>;
242
+ };
243
+ /**
244
+ * `<ui-popover>`: `open`, the controller's methods on `api`, and typed events. `Payload` types its payload.
245
+ * @stable
246
+ */
247
+ interface UiPopoverElement<Payload = unknown> extends UiElement<PopoverEvents<Payload>>, AttributeProperties<typeof popover, "api" | "controller" | "open"> {
248
+ open: boolean;
249
+ api: PopoverController<Payload>;
250
+ controller?: PopoverController<any>;
251
+ }
252
+ /**
253
+ * The events of `<ui-tooltip>`. `payloadchange` fires when another trigger's payload reaches the content.
254
+ * @stable
255
+ */
256
+ type TooltipEvents<Payload = unknown> = OpenEvents<TooltipOpenChangeReason> & {
257
+ payloadchange: UiChangeEvent<Payload | undefined, TooltipPayloadChangeReason>;
258
+ };
259
+ /**
260
+ * `<ui-tooltip>`: `open`, the controller's methods on `api`, and typed events. `Payload` types its payload.
261
+ * @stable
262
+ */
263
+ interface UiTooltipElement<Payload = unknown> extends UiElement<TooltipEvents<Payload>>, AttributeProperties<typeof tooltip, "api" | "controller" | "open"> {
264
+ open: boolean;
265
+ api: TooltipController<Payload>;
266
+ controller?: TooltipController<any>;
267
+ }
268
+ /**
269
+ * The events of `<ui-hover-card>`. `payloadchange` fires when another trigger's payload reaches the content.
270
+ * @stable
271
+ */
272
+ type HoverCardEvents<Payload = unknown> = OpenEvents<HoverCardOpenChangeReason> & {
273
+ payloadchange: UiChangeEvent<Payload | undefined, HoverCardPayloadChangeReason>;
274
+ };
275
+ /**
276
+ * `<ui-hover-card>`: `open`, the controller's methods on `api`, and typed events. `Payload` types its payload.
277
+ * @stable
278
+ */
279
+ interface UiHoverCardElement<Payload = unknown> extends UiElement<HoverCardEvents<Payload>>, AttributeProperties<typeof hoverCard, "api" | "controller" | "open"> {
280
+ open: boolean;
281
+ api: HoverCardController<Payload>;
282
+ controller?: HoverCardController<any>;
283
+ }
284
+ /**
285
+ * The events of `<ui-menu>`. Checkbox and radio items report through it too. `payloadchange` fires
286
+ * when another trigger's payload reaches the content.
287
+ * @stable
288
+ */
289
+ type MenuEvents<Payload = unknown> = OpenEvents<MenuOpenChangeReason> & {
290
+ payloadchange: UiChangeEvent<Payload | undefined, MenuPayloadChangeReason>;
291
+ /** An item ran, with its value. Pass a Promise to `waitUntil()` to keep it pending, and the menu open, until it settles. */
292
+ action: CustomEvent<{
293
+ value: string;
294
+ event?: Event;
295
+ waitUntil: (promise: Promise<unknown>) => void;
296
+ }>;
297
+ checkedchange: UiDetailedChangeEvent<boolean, MenuCheckedChangeDetails>;
298
+ valuechange: UiDetailedChangeEvent<string, MenuValueChangeDetails>;
299
+ dismissattempt: UiDismissAttemptEvent<MenuDismissReason>;
300
+ };
301
+ /**
302
+ * `<ui-menu>`: `open`, the controller's methods on `api`, and typed events. `Payload` types its payload.
303
+ * @stable
304
+ */
305
+ interface UiMenuElement<Payload = unknown> extends UiElement<MenuEvents<Payload>>, AttributeProperties<typeof menu, "api" | "controller" | "items" | "open"> {
306
+ open: boolean;
307
+ /** The menu as data. Renders the content for you. */
308
+ items?: MenuData;
309
+ api: MenuController<Payload>;
310
+ controller?: MenuController<any>;
311
+ }
312
+ /**
313
+ * `<ui-menu-sub>`: `open`, the controller's methods on `api`, and typed events. It takes none of the root menu's popup options.
314
+ * @stable
315
+ */
316
+ interface UiMenuSubElement extends UiElement<MenuEvents>, AttributeProperties<typeof menu, "container" | "dismissible" | "modal" | "open" | "presentation" | "shortcuts"> {
317
+ open: boolean;
318
+ api: MenuController;
319
+ }
320
+ /**
321
+ * The events of `<ui-dialog>`. `openchange` carries the `returnValue` of what closed it, and
322
+ * `payloadchange` fires when another trigger's payload reaches the content.
323
+ * @stable
324
+ */
325
+ type DialogEvents<Payload = unknown> = {
326
+ openchange: UiDetailedChangeEvent<boolean, DialogOpenChangeDetails>;
327
+ openchangecomplete: UiOpenChangeCompleteEvent;
328
+ payloadchange: UiChangeEvent<Payload | undefined, DialogPayloadChangeReason>;
329
+ dismissattempt: CustomEvent<DialogDismissAttemptDetails>;
330
+ };
331
+ /**
332
+ * `<ui-dialog>`: `open`, the controller's methods on `api`, and typed events. `Payload` types its payload.
333
+ * @stable
334
+ */
335
+ interface UiDialogElement<Payload = unknown> extends UiElement<DialogEvents<Payload>>, AttributeProperties<typeof dialog, "api" | "controller" | "open"> {
336
+ open: boolean;
337
+ api: DialogController<Payload>;
338
+ controller?: DialogController<any, any>;
339
+ }
340
+ /**
341
+ * The events of `<ui-alert-dialog>`. `payloadchange` fires when it opens with another payload.
342
+ * @stable
343
+ */
344
+ type AlertDialogEvents<Payload = unknown> = {
345
+ openchange: UiDetailedChangeEvent<boolean, DialogOpenChangeDetails<AlertDialogOpenChangeReason>>;
346
+ openchangecomplete: UiOpenChangeCompleteEvent;
347
+ payloadchange: UiChangeEvent<Payload | undefined, AlertDialogPayloadChangeReason>;
348
+ dismissattempt: CustomEvent<DialogDismissAttemptDetails>;
349
+ };
350
+ /**
351
+ * `<ui-alert-dialog>`: `open`, the controller's methods on `api`, and typed events. `Payload` types its payload.
352
+ * @stable
353
+ */
354
+ interface UiAlertDialogElement<Payload = unknown> extends UiElement<AlertDialogEvents<Payload>>, AttributeProperties<typeof alertDialog, "api" | "controller" | "open"> {
355
+ open: boolean;
356
+ api: AlertDialogController<Payload>;
357
+ controller?: AlertDialogController<any, any>;
358
+ }
359
+ /**
360
+ * The events of `<ui-drawer>`. `snappointchange` fires when it moves to another snap point.
361
+ * @stable
362
+ */
363
+ type DrawerEvents<Payload = unknown> = {
364
+ openchange: UiDetailedChangeEvent<boolean, DialogOpenChangeDetails<DrawerOpenChangeReason>>;
365
+ openchangecomplete: UiOpenChangeCompleteEvent;
366
+ payloadchange: UiChangeEvent<Payload | undefined, DrawerPayloadChangeReason>;
367
+ snappointchange: UiChangeEvent<SnapPoint, DrawerSnapPointChangeReason>;
368
+ dismissattempt: UiDismissAttemptEvent<DrawerDismissReason>;
369
+ };
370
+ /**
371
+ * `<ui-drawer>`: `open` and `snapPoint`, the controller's methods on `api`, and typed events. `Payload` types its payload.
372
+ * @stable
373
+ */
374
+ interface UiDrawerElement<Payload = unknown> extends UiElement<DrawerEvents<Payload>>, Pick<DrawerOptions, "physics" | "snapPoints">, AttributeProperties<typeof drawer, "api" | "controller" | "open" | "snapPoint"> {
375
+ open: boolean;
376
+ snapPoint: SnapPoint | null;
377
+ api: DrawerController<Payload>;
378
+ controller?: DrawerController<any, any>;
379
+ }
380
+ /**
381
+ * The events of `<ui-collapsible>`.
382
+ * @stable
383
+ */
384
+ type CollapsibleEvents = OpenEvents<CollapsibleOpenChangeReason>;
385
+ /**
386
+ * `<ui-collapsible>`: `open` and typed events.
387
+ * @stable
388
+ */
389
+ interface UiCollapsibleElement extends UiElement<CollapsibleEvents>, AttributeProperties<typeof collapsible, "api" | "open"> {
390
+ open: boolean;
391
+ api: CollapsibleController;
392
+ }
393
+ /**
394
+ * The events of `<ui-accordion>`. Items report `openchange` and `openchangecomplete` on themselves, which the accordion hears with `{ capture: true }`.
395
+ * @stable
396
+ */
397
+ type AccordionEvents = OpenEvents<AccordionValueChangeReason> & {
398
+ valuechange: UiChangeEvent<string[], AccordionValueChangeReason>;
399
+ };
400
+ /**
401
+ * `<ui-accordion>`: `value` and typed events.
402
+ * @stable
403
+ */
404
+ interface UiAccordionElement extends UiElement<AccordionEvents>, AttributeProperties<typeof accordion, "api" | "value"> {
405
+ value: string[];
406
+ api: AccordionController;
407
+ }
408
+ /**
409
+ * The events of `<ui-tabs>`.
410
+ * @stable
411
+ */
412
+ type TabsEvents = {
413
+ valuechange: UiChangeEvent<string | null, TabsValueChangeReason>;
414
+ };
415
+ /**
416
+ * `<ui-tabs>`: `value` and typed events.
417
+ * @stable
418
+ */
419
+ interface UiTabsElement extends UiElement<TabsEvents>, AttributeProperties<typeof tabs, "api" | "value"> {
420
+ value: string | null;
421
+ api: TabsController;
422
+ }
423
+ /**
424
+ * The events of `<ui-navigation-menu>`.
425
+ * @stable
426
+ */
427
+ type NavigationMenuEvents = {
428
+ valuechange: UiChangeEvent<string | null, NavigationMenuValueChangeReason>;
429
+ openchangecomplete: UiOpenChangeCompleteEvent;
430
+ };
431
+ /**
432
+ * `<ui-navigation-menu>`: `value`, the controller's methods on `api`, and typed events.
433
+ * @stable
434
+ */
435
+ interface UiNavigationMenuElement extends UiElement<NavigationMenuEvents>, AttributeProperties<typeof navigationMenu, "api" | "controller" | "value"> {
436
+ value: string | null;
437
+ api: NavigationMenuController;
438
+ controller?: NavigationMenuController;
439
+ }
440
+ /**
441
+ * The events of `<ui-resizable>`.
442
+ * @stable
443
+ */
444
+ type ResizableEvents = {
445
+ layoutchange: UiChangeEvent<number[], ResizableLayoutChangeReason>;
446
+ layoutcommit: UiDetailedChangeEvent<number[], CommitDetails<ResizableLayoutChangeReason>>;
447
+ };
448
+ /**
449
+ * `<ui-resizable>`: `layout`, the controller's methods on `api`, and typed events.
450
+ * @stable
451
+ */
452
+ interface UiResizableElement extends UiElement<ResizableEvents>, AttributeProperties<typeof resizable, "api" | "controller" | "layout" | "storage"> {
453
+ layout: number[];
454
+ /** Where `auto-save-id` saves, instead of `localStorage`. */
455
+ storage?: ResizableStorage;
456
+ api: ResizableController;
457
+ controller?: ResizableController;
458
+ }
459
+ /**
460
+ * The events of `<ui-checkbox>`.
461
+ * @stable
462
+ */
463
+ type CheckboxEvents = {
464
+ checkedchange: UiChangeEvent<boolean | "indeterminate", CheckboxCheckedChangeReason>;
465
+ };
466
+ /**
467
+ * `<ui-checkbox>`: `checked`, the controller's methods on `api`, form members like a native input, and typed events.
468
+ * @stable
469
+ */
470
+ interface UiCheckboxElement extends UiElement<CheckboxEvents>, FormControlProperties<typeof checkbox, "api" | "checked"> {
471
+ checked: boolean | "indeterminate";
472
+ api: CheckboxController;
473
+ }
474
+ /**
475
+ * The events of `<ui-switch>`. A switch is never indeterminate.
476
+ * @stable
477
+ */
478
+ type SwitchEvents = {
479
+ checkedchange: UiChangeEvent<boolean, SwitchCheckedChangeReason>;
480
+ };
481
+ /**
482
+ * `<ui-switch>`: `checked`, the controller's methods on `api`, form members like a native input, and typed events.
483
+ * @stable
484
+ */
485
+ interface UiSwitchElement extends UiElement<SwitchEvents>, FormControlProperties<typeof switchPrimitive, "api" | "checked"> {
486
+ checked: boolean;
487
+ api: SwitchController;
488
+ }
489
+ /**
490
+ * The events of `<ui-checkbox-group>`.
491
+ * @stable
492
+ */
493
+ type CheckboxGroupEvents = {
494
+ valuechange: UiChangeEvent<string[], CheckboxGroupValueChangeReason>;
495
+ };
496
+ /**
497
+ * `<ui-checkbox-group>`: `value`, form members like a native input, and typed events.
498
+ * @stable
499
+ */
500
+ interface UiCheckboxGroupElement extends UiElement<CheckboxGroupEvents>, FormControlProperties<typeof checkboxGroup, "api" | "value"> {
501
+ value: string[];
502
+ api: CheckboxGroupController;
503
+ }
504
+ /**
505
+ * The events of `<ui-radio-group>`.
506
+ * @stable
507
+ */
508
+ type RadioGroupEvents = {
509
+ valuechange: UiChangeEvent<string | null, RadioGroupValueChangeReason>;
510
+ };
511
+ /**
512
+ * `<ui-radio-group>`: `value`, form members like a native input, and typed events.
513
+ * @stable
514
+ */
515
+ interface UiRadioGroupElement extends UiElement<RadioGroupEvents>, FormControlProperties<typeof radioGroup, "api" | "value"> {
516
+ value: string | null;
517
+ api: RadioGroupController;
518
+ }
519
+ /**
520
+ * `<ui-radio>`: `value` and `disabled`, and form members like a native radio. Its group's `name` names the value.
521
+ * @stable
522
+ */
523
+ interface UiRadioElement extends UiPartElement<typeof radioGroup, "root", "value" | "disabled">, Omit<FormAssociatedMembers, "name"> {
524
+ }
525
+ /**
526
+ * The events of `<ui-rating>`.
527
+ * @experimental
528
+ */
529
+ type RatingEvents = {
530
+ valuechange: UiChangeEvent<number | null, RatingValueChangeReason>;
531
+ };
532
+ /**
533
+ * `<ui-rating>`: `value`, `getValueLabel`, form members like a native input, and typed events.
534
+ * @experimental
535
+ */
536
+ interface UiRatingElement extends UiElement<RatingEvents>, FormControlProperties<typeof rating, "api" | "value">, Pick<RatingOptions, "getValueLabel"> {
537
+ value: number | null;
538
+ api: RatingController;
539
+ }
540
+ /**
541
+ * The events of `<ui-segmented-control>`.
542
+ * @experimental
543
+ */
544
+ type SegmentedControlEvents = {
545
+ valuechange: UiChangeEvent<string | null, SegmentedControlValueChangeReason>;
546
+ };
547
+ /**
548
+ * `<ui-segmented-control>`: `value`, form members like a native input, and typed events.
549
+ * @experimental
550
+ */
551
+ interface UiSegmentedControlElement extends UiElement<SegmentedControlEvents>, FormControlProperties<typeof segmentedControl, "api" | "value"> {
552
+ value: string | null;
553
+ api: SegmentedControlController;
554
+ }
555
+ /**
556
+ * `<ui-segmented-control-item>`: `value` and `disabled`, and form members like a native radio.
557
+ * Its control's `name` names the value.
558
+ * @experimental
559
+ */
560
+ interface UiSegmentedControlItemElement extends UiPartElement<typeof segmentedControl, "item", "value" | "disabled">, Omit<FormAssociatedMembers, "name"> {
561
+ }
562
+ /**
563
+ * The events of `<ui-input>` and `<ui-textarea>`.
564
+ * @stable
565
+ */
566
+ type InputEvents = {
567
+ valuechange: UiChangeEvent<string, InputValueChangeReason>;
568
+ };
569
+ /**
570
+ * `<ui-input>`: `value`, the controller's methods on `api`, and typed events.
571
+ * @stable
572
+ */
573
+ interface UiInputElement extends UiElement<InputEvents>, AttributeProperties<typeof input, "api" | "value"> {
574
+ value: string;
575
+ api: InputController;
576
+ }
577
+ /**
578
+ * `<ui-textarea>`: `value`, `autoResize`, `submitShortcut`, the controller's methods on `api`, and typed events.
579
+ * @stable
580
+ */
581
+ interface UiTextareaElement extends UiElement<InputEvents>, AttributeProperties<typeof textarea, "api" | "value"> {
582
+ value: string;
583
+ api: InputController;
584
+ }
585
+ /**
586
+ * The events of `<ui-password-input>`.
587
+ * @stable
588
+ */
589
+ type PasswordInputEvents = {
590
+ valuechange: UiChangeEvent<string, InputValueChangeReason>;
591
+ visiblechange: UiChangeEvent<boolean, PasswordInputVisibleChangeReason>;
592
+ };
593
+ /**
594
+ * `<ui-password-input>`: `value` and `visible`, the controller's methods on `api`, and typed events.
595
+ * @stable
596
+ */
597
+ interface UiPasswordInputElement extends UiElement<PasswordInputEvents>, AttributeProperties<typeof passwordInput, "api" | "controller" | "value" | "visible"> {
598
+ value: string;
599
+ visible: boolean;
600
+ api: PasswordInputController;
601
+ controller?: PasswordInputController;
602
+ }
603
+ /**
604
+ * The events of `<ui-listbox>`.
605
+ * @stable
606
+ */
607
+ type ListboxEvents = {
608
+ valuechange: UiChangeEvent<unknown, ListboxValueChangeReason>;
609
+ highlight: UiHighlightEvent;
610
+ };
611
+ /**
612
+ * `<ui-listbox>`: `value`, rich options, the controller's methods on `api`, form members like a native input, and typed events.
613
+ * @stable
614
+ */
615
+ interface UiListboxElement extends UiElement<ListboxEvents>, Pick<ListboxOptions<unknown>, "itemToValue" | "isItemEqualToValue">, FormControlProperties<typeof listbox, "api" | "controller" | "items" | "value"> {
616
+ /** The selected value. A string names an item by its key, comma-separated with `multiple`. */
617
+ value: unknown;
618
+ /** The items as data. Renders them for you. */
619
+ items?: ListData<unknown>;
620
+ api: ListboxController<unknown, boolean>;
621
+ controller?: ListboxController<any, any>;
622
+ }
623
+ /**
624
+ * The events of `<ui-carousel>`.
625
+ * @stable
626
+ */
627
+ type CarouselEvents = {
628
+ pagechange: UiChangeEvent<number, CarouselPageChangeReason>;
629
+ /** The slides came to rest on a page: `detail.value`. */
630
+ pagechangecomplete: CustomEvent<{
631
+ value: number;
632
+ }>;
633
+ playingchange: UiChangeEvent<boolean, CarouselPlayingChangeReason>;
634
+ };
635
+ /**
636
+ * `<ui-carousel>`: `page` and `playing`, the controller's methods on `api`, and typed events.
637
+ * @stable
638
+ */
639
+ interface UiCarouselElement extends UiElement<CarouselEvents>, AttributeProperties<typeof carousel, "api" | "controller" | "page" | "playing"> {
640
+ page: number;
641
+ playing: boolean;
642
+ api: CarouselController;
643
+ controller?: CarouselController;
644
+ }
645
+ /**
646
+ * The events of `<ui-pagination>`.
647
+ * @stable
648
+ */
649
+ type PaginationEvents = {
650
+ pagechange: UiChangeEvent<number, PaginationPageChangeReason>;
651
+ };
652
+ /**
653
+ * `<ui-pagination>`: `page`, the controller's methods on `api`, and typed events.
654
+ * @stable
655
+ */
656
+ interface UiPaginationElement extends UiElement<PaginationEvents>, AttributeProperties<typeof pagination, "api" | "controller" | "getHref" | "page"> {
657
+ page: number;
658
+ api: PaginationController;
659
+ controller?: PaginationController;
660
+ /** The URL of a page. With it, wrap links instead of buttons. */
661
+ getHref?: (page: number) => string;
662
+ }
663
+ /**
664
+ * The events of `<ui-calendar>`.
665
+ * @stable
666
+ */
667
+ type CalendarEvents = {
668
+ valuechange: UiChangeEvent<CalendarValue, CalendarValueChangeReason>;
669
+ monthchange: UiChangeEvent<ISOMonth, CalendarMonthChangeReason>;
670
+ focusedchange: UiChangeEvent<ISODate, CalendarFocusedChangeReason>;
671
+ anchorchange: UiChangeEvent<ISODate | null, CalendarAnchorChangeReason>;
672
+ };
673
+ /**
674
+ * `<ui-calendar>`: `value` and `month`, the controller's methods on `api`, and typed events.
675
+ * @stable
676
+ */
677
+ interface UiCalendarElement extends UiElement<CalendarEvents>, AttributeProperties<typeof calendar, "api" | "controller" | "month" | "unavailable" | "value"> {
678
+ value: CalendarValue;
679
+ month: ISOMonth;
680
+ api: CalendarController;
681
+ controller?: CalendarController;
682
+ /** Dates that can't be picked, as any matcher, like `{ weekday: [0, 6] }`. The attribute takes a list of dates. */
683
+ unavailable?: DateMatchers;
684
+ }
685
+ /**
686
+ * The events of `<ui-date-picker>`.
687
+ * @stable
688
+ */
689
+ type DatePickerEvents = OpenEvents<DatePickerOpenChangeReason> & {
690
+ valuechange: UiChangeEvent<DatePickerValue, DatePickerValueChangeReason>;
691
+ monthchange: UiChangeEvent<ISOMonth, DatePickerMonthChangeReason>;
692
+ dismissattempt: UiDismissAttemptEvent<DatePickerDismissReason>;
693
+ };
694
+ /**
695
+ * `<ui-date-picker>`: `value`, `month` and `open`, the controller's methods on `api`, form members like a native input, and typed events.
696
+ * @stable
697
+ */
698
+ interface UiDatePickerElement extends UiElement<DatePickerEvents>, FormControlProperties<typeof datePicker, "api" | "controller" | "month" | "open" | "unavailable" | "value"> {
699
+ value: DatePickerValue;
700
+ month: ISOMonth;
701
+ open: boolean;
702
+ api: DatePickerController;
703
+ controller?: DatePickerController;
704
+ /** Dates that can't be picked, as any matcher, like `{ weekday: [0, 6] }`. The attribute takes a list of dates. */
705
+ unavailable?: DateMatchers;
706
+ }
707
+ /**
708
+ * The events of `<ui-date-input>`. `valuechange` fires as a whole value forms, and with `null` as one empties.
709
+ * @stable
710
+ */
711
+ type DateInputEvents = {
712
+ valuechange: UiChangeEvent<string | null, DateInputValueChangeReason>;
713
+ };
714
+ /**
715
+ * `<ui-date-input>`: `value`, the controller's methods on `api`, form members like a native input, and typed events.
716
+ * @stable
717
+ */
718
+ interface UiDateInputElement extends UiElement<DateInputEvents>, FormControlProperties<typeof dateInput, "api" | "controller" | "unavailable" | "value"> {
719
+ value: string | null;
720
+ api: DateInputController;
721
+ controller?: DateInputController;
722
+ /** Dates that can't be chosen, as any matcher, like `{ weekday: [0, 6] }`. The attribute takes a list of dates. */
723
+ unavailable?: DateMatchers;
724
+ }
725
+ /**
726
+ * The events of `<ui-time-input>`. `valuechange` fires as a whole time forms, and with `null` as one empties.
727
+ * @stable
728
+ */
729
+ type TimeInputEvents = {
730
+ valuechange: UiChangeEvent<string | null, TimeInputValueChangeReason>;
731
+ };
732
+ /**
733
+ * `<ui-time-input>`: `value`, the controller's methods on `api`, form members like a native input, and typed events.
734
+ * @stable
735
+ */
736
+ interface UiTimeInputElement extends UiElement<TimeInputEvents>, FormControlProperties<typeof timeInput, "api" | "controller" | "value"> {
737
+ value: string | null;
738
+ api: TimeInputController;
739
+ controller?: TimeInputController;
740
+ }
741
+ /**
742
+ * The events of `<ui-otp-input>`. `valuecommit` fires when a change fills every slot.
743
+ * @stable
744
+ */
745
+ type OTPInputEvents = {
746
+ valuechange: UiChangeEvent<string, OTPInputValueChangeReason>;
747
+ valuecommit: UiDetailedChangeEvent<string, CommitDetails<OTPInputValueChangeReason>>;
748
+ };
749
+ /**
750
+ * `<ui-otp-input>`: `value`, the controller's methods on `api`, and typed events.
751
+ * @stable
752
+ */
753
+ interface UiOTPInputElement extends UiElement<OTPInputEvents>, AttributeProperties<typeof otpInput, "api" | "value"> {
754
+ value: string;
755
+ api: OTPInputController;
756
+ }
757
+ /**
758
+ * The events of `<ui-slider>`. `valuechange` fires on every step of a drag, and `valuecommit` once the interaction ends.
759
+ * @stable
760
+ */
761
+ type SliderEvents = {
762
+ valuechange: UiDetailedChangeEvent<number | number[], SliderValueChangeDetails>;
763
+ valuecommit: UiDetailedChangeEvent<number | number[], SliderValueCommitDetails>;
764
+ };
765
+ /**
766
+ * `<ui-slider>`: `value`, the controller's methods on `api`, form members like a native input, and typed events.
767
+ * @stable
768
+ */
769
+ interface UiSliderElement extends UiElement<SliderEvents>, Pick<SliderOptions, "format">, FormControlProperties<typeof slider, "api" | "controller" | "value"> {
770
+ value: number | number[];
771
+ api: SliderController;
772
+ controller?: SliderController;
773
+ }
774
+ /**
775
+ * The events of `<ui-color-picker>`. `valuechange` fires on every step of a drag, and `valuecommit` once the interaction ends.
776
+ * @experimental
777
+ */
778
+ type ColorPickerEvents = {
779
+ valuechange: UiDetailedChangeEvent<string, ColorPickerValueChangeDetails>;
780
+ valuecommit: UiDetailedChangeEvent<string, ColorPickerValueCommitDetails>;
781
+ };
782
+ /**
783
+ * `<ui-color-picker>`: `value`, the controller's methods on `api`, form members like a native input, and typed events.
784
+ * @experimental
785
+ */
786
+ interface UiColorPickerElement extends UiElement<ColorPickerEvents>, FormControlProperties<typeof colorPicker, "api" | "controller" | "value"> {
787
+ value: string;
788
+ api: ColorPickerController;
789
+ controller?: ColorPickerController;
790
+ }
791
+ /**
792
+ * The events of `<ui-number-input>`. `valuechange` fires on every change, and `valuecommit` once the interaction ends.
793
+ * @stable
794
+ */
795
+ type NumberInputEvents = {
796
+ valuechange: UiChangeEvent<number | null, NumberInputValueChangeReason>;
797
+ valuecommit: UiDetailedChangeEvent<number | null, CommitDetails<NumberInputValueChangeReason>>;
798
+ };
799
+ /**
800
+ * `<ui-number-input>`: `value`, the controller's methods on `api`, form members like a native input, and typed events.
801
+ * @stable
802
+ */
803
+ interface UiNumberInputElement extends UiElement<NumberInputEvents>, Pick<NumberInputOptions, "format">, FormControlProperties<typeof numberInput, "api" | "controller" | "value"> {
804
+ value: number | null;
805
+ api: NumberInputController;
806
+ controller?: NumberInputController;
807
+ }
808
+ /**
809
+ * `<ui-progress>`: the options attributes can't hold, as properties.
810
+ * @stable
811
+ */
812
+ interface UiGaugeElement extends HTMLElement, AttributeProperties<typeof progress>, Pick<GaugeOptions, "format" | "getValueLabel"> {
813
+ }
814
+ /**
815
+ * `<ui-meter>`: the options attributes can't hold, as properties.
816
+ * @stable
817
+ */
818
+ interface UiMeterElement extends HTMLElement, AttributeProperties<typeof meter>, Pick<MeterOptions, "format" | "getValueLabel"> {
819
+ }
820
+ /**
821
+ * `<ui-separator>`: `orientation` and `decorative` as properties.
822
+ * @stable
823
+ */
824
+ interface UiSeparatorElement extends HTMLElement, Pick<SeparatorOptions, "orientation">, Required<Pick<SeparatorOptions, "decorative">> {
825
+ }
826
+ /**
827
+ * `<ui-label>`: its options as properties.
828
+ * @experimental
829
+ */
830
+ interface UiLabelElement extends HTMLElement, AttributeProperties<typeof label> {
831
+ }
832
+ /**
833
+ * `<ui-field>`: `invalid` as a property, three-way like the attribute.
834
+ * @stable
835
+ */
836
+ interface UiFieldElement extends HTMLElement, AttributeProperties<typeof field, "invalid"> {
837
+ /**
838
+ * `true` shows the field invalid, `false` shows no errors whatever the
839
+ * browser thinks, and `undefined` hands it back to the browser's own
840
+ * validation. It reflects the `invalid` attribute: `""`, `"false"` or none.
841
+ */
842
+ invalid: boolean | undefined;
843
+ }
844
+ /**
845
+ * `<ui-field-set>`: `disabled` as a property.
846
+ * @stable
847
+ */
848
+ interface UiFieldSetElement extends HTMLElement, AttributeProperties<typeof fieldSet> {
849
+ }
850
+ /**
851
+ * `<ui-field-group>`: its options as properties.
852
+ * @stable
853
+ */
854
+ interface UiFieldGroupElement extends HTMLElement, AttributeProperties<typeof fieldGroup> {
855
+ }
856
+ /**
857
+ * `<ui-input-group>`: its options as properties.
858
+ * @stable
859
+ */
860
+ interface UiInputGroupElement extends HTMLElement, AttributeProperties<typeof inputGroup> {
861
+ }
862
+ /**
863
+ * `<ui-scroll-area>`: the controller's methods on `api`, like `el.api.scrollToEnd()`.
864
+ * @stable
865
+ */
866
+ interface UiScrollAreaElement extends HTMLElement, AttributeProperties<typeof scrollArea, "api" | "controller"> {
867
+ api: ScrollAreaController;
868
+ controller?: ScrollAreaController;
869
+ }
870
+ /**
871
+ * The events of `<ui-avatar>`.
872
+ * @stable
873
+ */
874
+ type AvatarEvents = {
875
+ loadingstatuschange: UiChangeEvent<AvatarLoadingStatus, AvatarLoadingStatusChangeReason>;
876
+ };
877
+ /**
878
+ * `<ui-avatar>`: typed events.
879
+ * @stable
880
+ */
881
+ interface UiAvatarElement extends UiElement<AvatarEvents>, AttributeProperties<typeof avatar, "api" | "pressed"> {
882
+ }
883
+ /**
884
+ * The events of `<ui-image-cropper>`. `cropchange` fires on every step of a drag, and `cropcommit` once the interaction ends.
885
+ * @experimental
886
+ */
887
+ type ImageCropperEvents = {
888
+ cropchange: UiDetailedChangeEvent<Required<ImageCrop>, ImageCropperCropChangeDetails>;
889
+ cropcommit: UiDetailedChangeEvent<Required<ImageCrop>, ImageCropperCropCommitDetails>;
890
+ };
891
+ /**
892
+ * `<ui-image-cropper>`: `crop`, the controller's methods on `api`, and typed events.
893
+ * @experimental
894
+ */
895
+ interface UiImageCropperElement extends UiElement<ImageCropperEvents>, AttributeProperties<typeof imageCropper, "api" | "controller" | "crop"> {
896
+ crop: Required<ImageCrop> | null;
897
+ api: ImageCropperController;
898
+ controller?: ImageCropperController;
899
+ }
900
+ /**
901
+ * The events of `<ui-button>`.
902
+ * @stable
903
+ */
904
+ type ButtonEvents = ActionEvents;
905
+ /**
906
+ * `<ui-button>`: typed events.
907
+ * @stable
908
+ */
909
+ interface UiButtonElement extends UiElement<ButtonEvents>, AttributeProperties<typeof button, "api" | "pressed"> {
910
+ }
911
+ /**
912
+ * The events of `<ui-toggle>`.
913
+ * @stable
914
+ */
915
+ type ToggleEvents = {
916
+ pressedchange: UiChangeEvent<boolean, TogglePressedChangeReason>;
917
+ };
918
+ /**
919
+ * `<ui-toggle>`: `pressed`, the controller's methods on `api`, and typed events.
920
+ * @stable
921
+ */
922
+ interface UiToggleElement extends UiElement<ToggleEvents>, AttributeProperties<typeof toggle, "api" | "pressed"> {
923
+ pressed: boolean;
924
+ api: ToggleController;
925
+ }
926
+ /**
927
+ * The events of `<ui-toggle-group>`. Its toggles' `pressedchange` events reach it with `{ capture: true }`.
928
+ * @stable
929
+ */
930
+ type ToggleGroupEvents = ToggleEvents & {
931
+ valuechange: UiChangeEvent<string[], ToggleGroupValueChangeReason>;
932
+ };
933
+ /**
934
+ * `<ui-toggle-group>`: `value`, the controller's methods on `api`, and typed events.
935
+ * @stable
936
+ */
937
+ interface UiToggleGroupElement extends UiElement<ToggleGroupEvents>, AttributeProperties<typeof toggleGroup, "api" | "value"> {
938
+ value: string[];
939
+ api: ToggleGroupController;
940
+ }
941
+ /**
942
+ * `<ui-toolbar>`: the controller's methods on `api`.
943
+ * @stable
944
+ */
945
+ interface UiToolbarElement extends UiElement<{}>, AttributeProperties<typeof toolbar> {
946
+ api: ToolbarController;
947
+ }
948
+ /**
949
+ * `<ui-timeline>`: the controller's methods on `api`, and the `controller` it follows.
950
+ * @experimental
951
+ */
952
+ interface UiTimelineElement extends UiElement<{}>, AttributeProperties<typeof timeline> {
953
+ api: TimelineController;
954
+ controller?: TimelineController;
955
+ }
956
+ /**
957
+ * `<ui-toast-region>`: the toaster it shows, how toasts rendered from data look, and `api` to focus or pause it.
958
+ * @stable
959
+ */
960
+ interface UiToastRegionElement extends UiElement<{}>, AttributeProperties<typeof toastRegion> {
961
+ /** Moves focus to the region, and pauses or resumes its toasts' timers for a reason. */
962
+ api: Pick<TypesOf<typeof toastRegion>["api"], "focus" | "pause" | "resume">;
963
+ toaster?: Toaster<ToastContent>;
964
+ /**
965
+ * Runs for each toast element when it shows and after every update, with the toast, to fill a
966
+ * template from the toast's `data`.
967
+ */
968
+ renderToast?: (toast: Toast<ToastContent>, el: HTMLElement) => void;
969
+ }
970
+ /**
971
+ * `<ui-preferences>`: the preferences it shows on their attributes.
972
+ * @experimental
973
+ */
974
+ interface UiPreferencesElement extends HTMLElement {
975
+ /** The preferences to show, from `createPreference` or `createColorScheme`. */
976
+ preferences: readonly PreferenceLike[];
977
+ }
978
+ /**
979
+ * `<ui-overlay-host>`: the registry it renders, and how its toast regions look.
980
+ * @stable
981
+ */
982
+ interface UiOverlayHostElement extends HTMLElement {
983
+ /** The registry whose toasts and confirms it renders. The shared one by default. */
984
+ overlays?: Overlays;
985
+ /** What it sets on the toast regions it renders. */
986
+ toast?: OverlayHostToastOptions;
987
+ }
988
+ /**
989
+ * `<ui-menubar>`: the controller's methods on `api`. Its menus fire their own events.
990
+ * @stable
991
+ */
992
+ interface UiMenubarElement extends UiElement<{}>, AttributeProperties<typeof menubar> {
993
+ api: MenubarController;
994
+ }
995
+ /**
996
+ * A `highlight` event: the highlighted item's value, or `null`, with its index among the visible items.
997
+ * @stable
998
+ */
999
+ type UiHighlightEvent = CustomEvent<ListHighlightDetails & {
1000
+ value: unknown;
1001
+ }>;
1002
+ /**
1003
+ * A `loadmore` event: the highlight or scrolling reached the last item, so the next page can load.
1004
+ * @stable
1005
+ */
1006
+ type UiLoadMoreEvent = CustomEvent<{}>;
1007
+ /**
1008
+ * The events of `<ui-select>`.
1009
+ * @stable
1010
+ */
1011
+ type SelectEvents = OpenEvents<SelectOpenChangeReason> & {
1012
+ valuechange: UiChangeEvent<unknown, SelectValueChangeReason>;
1013
+ querychange: UiChangeEvent<string, SelectQueryChangeReason>;
1014
+ highlight: UiHighlightEvent;
1015
+ loadmore: UiLoadMoreEvent;
1016
+ dismissattempt: UiDismissAttemptEvent<SelectDismissReason>;
1017
+ };
1018
+ /**
1019
+ * `<ui-select>`: `open`, `value`, `query`, rich options, the controller's methods on `api`, form members like a native input, and typed events.
1020
+ * @stable
1021
+ */
1022
+ interface UiSelectElement extends UiElement<SelectEvents>, Pick<SelectOptions<unknown>, "itemToValue" | "itemToLabel" | "isItemEqualToValue" | "filter" | "emptyItems" | "announcement">, FormControlProperties<typeof select, "announcement" | "emptyItems" | "filter" | "api" | "controller" | "items" | "open" | "query" | "value"> {
1023
+ open: boolean;
1024
+ /** The selected value. A string names an item by its key, comma-separated with `multiple`. */
1025
+ value: unknown;
1026
+ /** The text in the search field. */
1027
+ query: string;
1028
+ /** The items as data. Renders the content for you. */
1029
+ items?: ListData<unknown>;
1030
+ api: SelectController<unknown, boolean>;
1031
+ controller?: SelectController<any, any>;
1032
+ }
1033
+ /**
1034
+ * The events of `<ui-combobox>`.
1035
+ * @stable
1036
+ */
1037
+ type ComboboxEvents = OpenEvents<ComboboxOpenChangeReason> & {
1038
+ valuechange: UiChangeEvent<unknown, ComboboxValueChangeReason>;
1039
+ querychange: UiChangeEvent<string, ComboboxQueryChangeReason>;
1040
+ highlight: UiHighlightEvent;
1041
+ loadmore: UiLoadMoreEvent;
1042
+ /** The create part was chosen, with the text. Pass a Promise to `waitUntil()` to keep it pending until it settles. */
1043
+ create: CustomEvent<{
1044
+ value: string;
1045
+ waitUntil: (promise: Promise<unknown>) => void;
1046
+ }>;
1047
+ dismissattempt: UiDismissAttemptEvent<ComboboxDismissReason>;
1048
+ };
1049
+ /**
1050
+ * `<ui-combobox>`: `open`, `value`, `query`, rich options, the controller's methods on `api`, form members like a native input, and typed events.
1051
+ * @stable
1052
+ */
1053
+ interface UiComboboxElement extends UiElement<ComboboxEvents>, Pick<ComboboxOptions<unknown>, "itemToValue" | "itemToLabel" | "isItemEqualToValue" | "filter" | "emptyItems" | "announcement">, FormControlProperties<typeof combobox, "announcement" | "emptyItems" | "filter" | "api" | "controller" | "items" | "open" | "query" | "value"> {
1054
+ open: boolean;
1055
+ /** The selected value. A string names an item by its key, comma-separated with `multiple`. */
1056
+ value: unknown;
1057
+ /** The input's text. */
1058
+ query: string;
1059
+ /** The items as data. Renders the list for you. */
1060
+ items?: ListData<unknown>;
1061
+ api: ComboboxController<unknown, boolean>;
1062
+ controller?: ComboboxController<any, any>;
1063
+ }
1064
+ /**
1065
+ * The events of `<ui-autocomplete>`.
1066
+ * @stable
1067
+ */
1068
+ type AutocompleteEvents = OpenEvents<AutocompleteOpenChangeReason> & {
1069
+ valuechange: UiChangeEvent<string, AutocompleteValueChangeReason>;
1070
+ highlight: UiHighlightEvent;
1071
+ loadmore: UiLoadMoreEvent;
1072
+ /** Enter with nothing highlighted, or a choice with `submit-on-select`. It doesn't bubble. Cancel it to keep the form from submitting. */
1073
+ submit: CustomEvent<{
1074
+ value: string;
1075
+ }>;
1076
+ dismissattempt: UiDismissAttemptEvent<AutocompleteDismissReason>;
1077
+ };
1078
+ /**
1079
+ * `<ui-autocomplete>`: `open`, `value`, rich options, the controller's methods on `api`, and typed events.
1080
+ * @stable
1081
+ */
1082
+ interface UiAutocompleteElement extends UiElement<AutocompleteEvents>, Pick<AutocompleteOptions, "filter" | "emptyItems" | "announcement">, AttributeProperties<typeof autocomplete, "announcement" | "emptyItems" | "filter" | "api" | "controller" | "items" | "open" | "value"> {
1083
+ open: boolean;
1084
+ /** The text. */
1085
+ value: string;
1086
+ /** The suggestions as data. Renders the list for you. */
1087
+ items?: ListData<string>;
1088
+ api: AutocompleteController;
1089
+ controller?: AutocompleteController;
1090
+ }
1091
+ /**
1092
+ * The events of `<ui-command>`.
1093
+ * @stable
1094
+ */
1095
+ type CommandEvents = {
1096
+ valuechange: UiChangeEvent<string | null, CommandValueChangeReason>;
1097
+ querychange: UiChangeEvent<string, CommandQueryChangeReason>;
1098
+ pageschange: UiChangeEvent<string[], CommandPagesChangeReason>;
1099
+ loadmore: UiLoadMoreEvent;
1100
+ /** A command ran, with its value. Pass a Promise to `waitUntil()` to keep it pending until it settles. */
1101
+ action: CustomEvent<{
1102
+ value: string;
1103
+ waitUntil: (promise: Promise<unknown>) => void;
1104
+ }>;
1105
+ };
1106
+ /**
1107
+ * `<ui-command>`: `value`, `query`, `pages`, rich options, the controller's methods on `api`, and typed events.
1108
+ * @stable
1109
+ */
1110
+ interface UiCommandElement extends UiElement<CommandEvents>, Pick<CommandOptions, "filter" | "emptyItems" | "announcement">, AttributeProperties<typeof command, "announcement" | "emptyItems" | "filter" | "api" | "controller" | "items" | "pages" | "query" | "value"> {
1111
+ /** The highlighted command's value. */
1112
+ value: string | null;
1113
+ /** The search text. */
1114
+ query: string;
1115
+ /** The stack of open pages. */
1116
+ pages: string[];
1117
+ /** The commands as data. Renders the list for you. */
1118
+ items?: CommandData;
1119
+ api: CommandController;
1120
+ controller?: CommandController;
1121
+ }
1122
+ /**
1123
+ * The events of `<ui-token-input>`. The submit shortcut submits its form, whose `submit` event hears it.
1124
+ * @stable
1125
+ */
1126
+ type TokenInputEvents = {
1127
+ valuechange: UiDetailedChangeEvent<TokenInputValue, TokenInputValueChangeDetails>;
1128
+ };
1129
+ /**
1130
+ * `<ui-token-input>`: `value`, rich options as properties, the controller's methods on `api`, form members like a native input, and typed events.
1131
+ * @stable
1132
+ */
1133
+ interface UiTokenInputElement extends UiElement<TokenInputEvents>, FormControlProperties<typeof tokenInput, "api" | "codec" | "controller" | "defaultValue" | "getTokenDescription" | "history" | "renderToken" | "value"> {
1134
+ /** The value: text and tokens. Setting a string parses it with the codec. */
1135
+ get value(): TokenInputValue;
1136
+ set value(value: TokenInputValue | string);
1137
+ /** The value at first, which a form reset returns to. The `value` attribute sets it as codec text. */
1138
+ defaultValue?: TokenInputValue;
1139
+ /** Undo history: how many steps it keeps, and how long a typing pause starts a new step. */
1140
+ history?: UndoStackOptions;
1141
+ /** How tokens become text and back. */
1142
+ codec?: TokenCodec;
1143
+ /** What a token says to screen readers besides its label. */
1144
+ getTokenDescription?: (token: Token) => string;
1145
+ /** Renders a token's content into its host. Without it, a `<template>` child is cloned per token. */
1146
+ renderToken?: (token: Token, host: HTMLElement) => void;
1147
+ api: Omit<TokenInputController, "editor">;
1148
+ controller?: TokenInputController;
1149
+ }
1150
+ /**
1151
+ * The events of `<ui-trigger-menu>`.
1152
+ * @stable
1153
+ */
1154
+ type TriggerMenuEvents = {
1155
+ /** `detail.trigger` is the text that opened it, or null when it closes. */
1156
+ openchange: UiDetailedChangeEvent<boolean, ChangeDetails<TriggerMenuOpenChangeReason> & {
1157
+ trigger: string | null;
1158
+ }>;
1159
+ openchangecomplete: UiOpenChangeCompleteEvent;
1160
+ querychange: UiDetailedChangeEvent<string, ChangeDetails<TriggerMenuQueryChangeReason> & {
1161
+ trigger: string;
1162
+ argument?: string;
1163
+ }>;
1164
+ /**
1165
+ * An item was chosen. `preventDefault()` skips the insertion, and `detail.waitUntil(promise)` inserts a pending token.
1166
+ * Not `select`, which the field fires for selected text.
1167
+ */
1168
+ itemselect: CustomEvent<Omit<TriggerMenuSelectDetails<string>, "preventDefault" | "defaultPrevented"> & {
1169
+ value: string;
1170
+ }>;
1171
+ dismissattempt: UiDismissAttemptEvent<TriggerMenuDismissReason>;
1172
+ };
1173
+ /**
1174
+ * `<ui-trigger-menu>`: `open`, `triggers` and `editor` properties, the controller's methods on `api`, and typed events.
1175
+ * @stable
1176
+ */
1177
+ interface UiTriggerMenuElement extends UiElement<TriggerMenuEvents>, AttributeProperties<typeof triggerMenu, "api" | "controller" | "editor" | "open" | "triggers"> {
1178
+ open: boolean;
1179
+ /** The texts that open the menu, and what each one lists. */
1180
+ triggers?: TriggerDefinition<string>[];
1181
+ /** The editor, for editors without a part of their own. A token input around the menu sets it. */
1182
+ editor?: TextEditorAdapter;
1183
+ api: TriggerMenuController;
1184
+ controller?: TriggerMenuController;
1185
+ }
1186
+ /**
1187
+ * The events of `<ui-tree>`.
1188
+ * @stable
1189
+ */
1190
+ type TreeEvents = {
1191
+ valuechange: UiChangeEvent<string | string[] | null, TreeValueChangeReason>;
1192
+ expandedchange: UiChangeEvent<string[], TreeExpandedChangeReason>;
1193
+ checkedchange: UiChangeEvent<string[], TreeCheckedChangeReason>;
1194
+ /** The keyboard moved focus to an item, with its row among the items that show, from 0. */
1195
+ highlight: CustomEvent<{
1196
+ value: string;
1197
+ index: number;
1198
+ event?: Event;
1199
+ }>;
1200
+ /** An item was pressed, or Enter was pressed on it, with its value and the event behind it. Pass a Promise to `waitUntil()` to keep it pending until it settles. */
1201
+ action: CustomEvent<{
1202
+ value: string;
1203
+ event?: Event;
1204
+ waitUntil: (promise: Promise<unknown>) => void;
1205
+ }>;
1206
+ };
1207
+ /**
1208
+ * `<ui-tree>`: `value`, `expanded`, `checked`, rich options, the controller's methods on `api`, and typed events.
1209
+ * @stable
1210
+ */
1211
+ interface UiTreeElement extends UiElement<TreeEvents>, AttributeProperties<typeof tree, "announcement" | "api" | "checked" | "controller" | "expanded" | "items" | "loadChildren" | "paths" | "value"> {
1212
+ /** The selected value, a list with `mode="multiple"`. */
1213
+ value: string | string[] | null;
1214
+ /** The expanded branches. */
1215
+ expanded: string[];
1216
+ /** The checked items, as `check-strategy` reports them. */
1217
+ checked: string[];
1218
+ /** The items as data. Renders them for you. */
1219
+ items?: TreeItemData[];
1220
+ /** Items from file paths. Renders them for you. */
1221
+ paths?: readonly string[];
1222
+ /** Loads a branch's children the first time it expands while it has none. */
1223
+ loadChildren?: (value: string, details: {
1224
+ signal: AbortSignal;
1225
+ }) => void | Promise<unknown>;
1226
+ /** What screen readers hear when a branch expands, collapses, starts loading or fails to load. */
1227
+ announcement?: (change: TreeAnnouncement) => string | null | undefined;
1228
+ api: TreeController;
1229
+ controller?: TreeController;
1230
+ }
1231
+ /**
1232
+ * The events of `<ui-waterfall>`.
1233
+ * @experimental
1234
+ */
1235
+ type WaterfallEvents = {
1236
+ valuechange: UiChangeEvent<string | null, WaterfallValueChangeReason>;
1237
+ expandedchange: UiChangeEvent<string[], WaterfallExpandedChangeReason>;
1238
+ /** The keyboard moved focus to a row, with its place among the rows that show, from 0. */
1239
+ highlight: CustomEvent<{
1240
+ value: string;
1241
+ index: number;
1242
+ event?: Event;
1243
+ }>;
1244
+ };
1245
+ /**
1246
+ * `<ui-waterfall>`: `value`, `expanded`, `items` and the other rich options, the controller's methods on `api`, and typed events.
1247
+ * @experimental
1248
+ */
1249
+ interface UiWaterfallElement extends UiElement<WaterfallEvents>, AttributeProperties<typeof waterfall, "api" | "controller" | "expanded" | "format" | "getBarLabel" | "items" | "range" | "value"> {
1250
+ /** The selected span's value, or `null`. */
1251
+ value: string | null;
1252
+ /** The expanded spans' values. */
1253
+ expanded: string[];
1254
+ /** The spans. Without rows of its own, the waterfall renders a row for each. */
1255
+ items: WaterfallDataItem[];
1256
+ /** The stretch of time the axis shows, as `[start, end]` in milliseconds. */
1257
+ range?: [number, number];
1258
+ /** How times read: `Intl.NumberFormat` options for milliseconds, or a function of them. */
1259
+ format?: Intl.NumberFormatOptions | ((value: number) => string);
1260
+ /** What screen readers hear for a span's bar. */
1261
+ getBarLabel?: (item: WaterfallDataItem, details: {
1262
+ start: string;
1263
+ duration: string;
1264
+ }) => string;
1265
+ api: WaterfallController;
1266
+ controller?: WaterfallController;
1267
+ }
1268
+ declare global {
1269
+ interface HTMLElementTagNameMap {
1270
+ "ui-popover": UiPopoverElement;
1271
+ "ui-tooltip": UiTooltipElement;
1272
+ "ui-hover-card": UiHoverCardElement;
1273
+ "ui-image-cropper": UiImageCropperElement;
1274
+ "ui-menu": UiMenuElement;
1275
+ "ui-menu-sub": UiMenuSubElement;
1276
+ "ui-dialog": UiDialogElement;
1277
+ "ui-alert-dialog": UiAlertDialogElement;
1278
+ "ui-drawer": UiDrawerElement;
1279
+ "ui-collapsible": UiCollapsibleElement;
1280
+ "ui-accordion": UiAccordionElement;
1281
+ "ui-tabs": UiTabsElement;
1282
+ "ui-navigation-menu": UiNavigationMenuElement;
1283
+ "ui-resizable": UiResizableElement;
1284
+ "ui-checkbox": UiCheckboxElement;
1285
+ "ui-timeline": UiTimelineElement;
1286
+ "ui-switch": UiSwitchElement;
1287
+ "ui-checkbox-group": UiCheckboxGroupElement;
1288
+ "ui-radio-group": UiRadioGroupElement;
1289
+ "ui-radio": UiRadioElement;
1290
+ "ui-rating": UiRatingElement;
1291
+ "ui-segmented-control": UiSegmentedControlElement;
1292
+ "ui-segmented-control-item": UiSegmentedControlItemElement;
1293
+ "ui-input": UiInputElement;
1294
+ "ui-input-group": UiInputGroupElement;
1295
+ "ui-textarea": UiTextareaElement;
1296
+ "ui-password-input": UiPasswordInputElement;
1297
+ "ui-pagination": UiPaginationElement;
1298
+ "ui-calendar": UiCalendarElement;
1299
+ "ui-calendar-weeks": HTMLElement;
1300
+ "ui-date-input": UiDateInputElement;
1301
+ "ui-time-input": UiTimeInputElement;
1302
+ "ui-date-picker": UiDatePickerElement;
1303
+ "ui-carousel": UiCarouselElement;
1304
+ "ui-listbox": UiListboxElement;
1305
+ "ui-button": UiButtonElement;
1306
+ "ui-toggle": UiToggleElement;
1307
+ "ui-toggle-group": UiToggleGroupElement;
1308
+ "ui-toolbar": UiToolbarElement;
1309
+ "ui-menubar": UiMenubarElement;
1310
+ "ui-select": UiSelectElement;
1311
+ "ui-color-picker": UiColorPickerElement;
1312
+ "ui-combobox": UiComboboxElement;
1313
+ "ui-command": UiCommandElement;
1314
+ "ui-autocomplete": UiAutocompleteElement;
1315
+ "ui-trigger-menu": UiTriggerMenuElement;
1316
+ "ui-token-input": UiTokenInputElement;
1317
+ "ui-file-input": UiFileInputElement;
1318
+ "ui-scroll-area": UiScrollAreaElement;
1319
+ "ui-tree": UiTreeElement;
1320
+ "ui-waterfall": UiWaterfallElement;
1321
+ "ui-toast-region": UiToastRegionElement;
1322
+ "ui-overlay-host": UiOverlayHostElement;
1323
+ "ui-preferences": UiPreferencesElement;
1324
+ "ui-meter": UiMeterElement;
1325
+ "ui-separator": UiSeparatorElement;
1326
+ "ui-progress": UiGaugeElement;
1327
+ "ui-field": UiFieldElement;
1328
+ "ui-label": UiLabelElement;
1329
+ "ui-field-set": UiFieldSetElement;
1330
+ "ui-field-group": UiFieldGroupElement;
1331
+ "ui-slider": UiSliderElement;
1332
+ "ui-number-input": UiNumberInputElement;
1333
+ "ui-otp-input": UiOTPInputElement;
1334
+ "ui-avatar": UiAvatarElement;
1335
+ "ui-accordion-item": UiPartElement<typeof accordion, "item", "value" | "disabled">;
1336
+ "ui-accordion-header": UiPartElement<typeof accordion, "header">;
1337
+ "ui-accordion-trigger": UiPartElement<typeof accordion, "trigger", "disabled">;
1338
+ "ui-accordion-panel": UiPartElement<typeof accordion, "panel", "keepMounted" | "hiddenUntilFound">;
1339
+ "ui-alert-dialog-trigger": UiPartElement<typeof alertDialog, "trigger", "disabled" | "focusableWhenDisabled" | "shortcut", "payload">;
1340
+ "ui-alert-dialog-close": UiPartElement<typeof alertDialog, "close", "value", never, ActionEvents>;
1341
+ "ui-alert-dialog-shortcut": UiPartElement<typeof alertDialog, "shortcut", "shortcut">;
1342
+ "ui-alert-dialog-backdrop": UiPartElement<typeof alertDialog, "backdrop">;
1343
+ "ui-alert-dialog-content": UiPartElement<typeof alertDialog, "content", "container" | "initialFocus" | "finalFocus" | "keepMounted">;
1344
+ "ui-alert-dialog-title": UiPartElement<typeof alertDialog, "title">;
1345
+ "ui-alert-dialog-description": UiPartElement<typeof alertDialog, "description">;
1346
+ "ui-autocomplete-label": UiPartElement<typeof autocomplete, "label">;
1347
+ "ui-autocomplete-input": UiPartElement<typeof autocomplete, "input">;
1348
+ "ui-autocomplete-trigger": UiPartElement<typeof autocomplete, "trigger">;
1349
+ "ui-autocomplete-clear": UiPartElement<typeof autocomplete, "clear", "keepMounted">;
1350
+ "ui-autocomplete-content": UiPartElement<typeof autocomplete, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "container" | "anchor" | "keepMounted">;
1351
+ "ui-autocomplete-list": UiPartElement<typeof autocomplete, "list">;
1352
+ "ui-autocomplete-item": UiPartElement<typeof autocomplete, "item", "value" | "label" | "keywords" | "disabled" | "index">;
1353
+ "ui-autocomplete-item-text": UiPartElement<typeof autocomplete, "item-text">;
1354
+ "ui-autocomplete-item-icon": UiPartElement<typeof autocomplete, "item-icon", "mirror">;
1355
+ "ui-autocomplete-group": UiPartElement<typeof autocomplete, "group">;
1356
+ "ui-autocomplete-group-label": UiPartElement<typeof autocomplete, "group-label">;
1357
+ "ui-autocomplete-separator": UiPartElement<typeof autocomplete, "separator">;
1358
+ "ui-autocomplete-empty": UiPartElement<typeof autocomplete, "empty">;
1359
+ "ui-autocomplete-status": UiPartElement<typeof autocomplete, "status">;
1360
+ "ui-autocomplete-arrow": UiPartElement<typeof autocomplete, "arrow">;
1361
+ "ui-avatar-fallback": UiPartElement<typeof avatar, "fallback", "delay">;
1362
+ "ui-calendar-heading": UiPartElement<typeof calendar, "heading">;
1363
+ "ui-calendar-previous": UiPartElement<typeof calendar, "previous">;
1364
+ "ui-calendar-next": UiPartElement<typeof calendar, "next">;
1365
+ "ui-calendar-month-select": UiPartElement<typeof calendar, "month-select">;
1366
+ "ui-calendar-year-select": UiPartElement<typeof calendar, "year-select">;
1367
+ "ui-calendar-grid": UiPartElement<typeof calendar, "grid", "offset">;
1368
+ "ui-calendar-weekdays": UiPartElement<typeof calendar, "weekdays">;
1369
+ "ui-calendar-weekday": UiPartElement<typeof calendar, "weekday", "index">;
1370
+ "ui-calendar-week": UiPartElement<typeof calendar, "week">;
1371
+ "ui-calendar-day": UiPartElement<typeof calendar, "day", "value">;
1372
+ "ui-carousel-viewport": UiPartElement<typeof carousel, "viewport">;
1373
+ "ui-carousel-content": UiPartElement<typeof carousel, "content">;
1374
+ "ui-carousel-item": UiPartElement<typeof carousel, "item">;
1375
+ "ui-carousel-previous": UiPartElement<typeof carousel, "previous">;
1376
+ "ui-carousel-next": UiPartElement<typeof carousel, "next">;
1377
+ "ui-carousel-play-toggle": UiPartElement<typeof carousel, "play-toggle">;
1378
+ "ui-carousel-indicator-group": UiPartElement<typeof carousel, "indicator-group">;
1379
+ "ui-carousel-indicator": UiPartElement<typeof carousel, "indicator", "page">;
1380
+ "ui-checkbox-indicator": UiPartElement<typeof checkbox, "indicator", "keepMounted">;
1381
+ "ui-timeline-item": UiPartElement<typeof timeline, "item", "value" | "status">;
1382
+ "ui-timeline-marker": UiPartElement<typeof timeline, "marker">;
1383
+ "ui-timeline-connector": UiPartElement<typeof timeline, "connector">;
1384
+ "ui-timeline-time": UiPartElement<typeof timeline, "time">;
1385
+ "ui-timeline-title": UiPartElement<typeof timeline, "title">;
1386
+ "ui-timeline-description": UiPartElement<typeof timeline, "description">;
1387
+ "ui-collapsible-trigger": UiPartElement<typeof collapsible, "trigger">;
1388
+ "ui-collapsible-panel": UiPartElement<typeof collapsible, "panel", "keepMounted" | "hiddenUntilFound">;
1389
+ "ui-combobox-label": UiPartElement<typeof combobox, "label">;
1390
+ "ui-combobox-input": UiPartElement<typeof combobox, "input">;
1391
+ "ui-combobox-trigger": UiPartElement<typeof combobox, "trigger">;
1392
+ "ui-combobox-clear": UiPartElement<typeof combobox, "clear", "keepMounted">;
1393
+ "ui-combobox-content": UiPartElement<typeof combobox, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "container" | "anchor" | "keepMounted">;
1394
+ "ui-combobox-list": UiPartElement<typeof combobox, "list">;
1395
+ "ui-combobox-item": UiPartElement<typeof combobox, "item", "label" | "keywords" | "disabled" | "index" | "value">;
1396
+ "ui-combobox-item-indicator": UiPartElement<typeof combobox, "item-indicator", "keepMounted">;
1397
+ "ui-combobox-item-icon": UiPartElement<typeof combobox, "item-icon", "mirror">;
1398
+ "ui-combobox-value-icon": UiPartElement<typeof combobox, "value-icon">;
1399
+ "ui-combobox-group": UiPartElement<typeof combobox, "group">;
1400
+ "ui-combobox-group-label": UiPartElement<typeof combobox, "group-label">;
1401
+ "ui-combobox-separator": UiPartElement<typeof combobox, "separator">;
1402
+ "ui-combobox-create": UiPartElement<typeof combobox, "create", "minLength", never, {}>;
1403
+ "ui-combobox-empty": UiPartElement<typeof combobox, "empty">;
1404
+ "ui-combobox-status": UiPartElement<typeof combobox, "status">;
1405
+ "ui-combobox-chips": UiPartElement<typeof combobox, "chips">;
1406
+ "ui-combobox-chip": UiPartElement<typeof combobox, "chip", "value">;
1407
+ "ui-combobox-chips-overflow": UiPartElement<typeof combobox, "chips-overflow">;
1408
+ "ui-combobox-item-text": UiPartElement<typeof combobox, "item-text">;
1409
+ "ui-combobox-select-all": UiPartElement<typeof combobox, "select-all">;
1410
+ "ui-combobox-chip-remove": UiPartElement<typeof combobox, "chip-remove">;
1411
+ "ui-combobox-arrow": UiPartElement<typeof combobox, "arrow">;
1412
+ "ui-command-input": UiPartElement<typeof command, "input">;
1413
+ "ui-command-list": UiPartElement<typeof command, "list">;
1414
+ "ui-command-item-text": UiPartElement<typeof command, "item-text">;
1415
+ "ui-command-item": UiPartElement<typeof command, "item", "value" | "label" | "keywords" | "disabled" | "shortcut" | "page" | "index">;
1416
+ "ui-command-shortcut": UiPartElement<typeof command, "shortcut", "shortcut">;
1417
+ "ui-command-page": UiPartElement<typeof command, "page", "value">;
1418
+ "ui-command-item-icon": UiPartElement<typeof command, "item-icon", "mirror">;
1419
+ "ui-command-group": UiPartElement<typeof command, "group">;
1420
+ "ui-command-group-label": UiPartElement<typeof command, "group-label">;
1421
+ "ui-command-separator": UiPartElement<typeof command, "separator">;
1422
+ "ui-command-empty": UiPartElement<typeof command, "empty">;
1423
+ "ui-command-status": UiPartElement<typeof command, "status">;
1424
+ "ui-date-input-segment": UiPartElement<typeof dateInput, "segment", "segment">;
1425
+ "ui-time-input-segment": UiPartElement<typeof timeInput, "segment", "segment">;
1426
+ "ui-date-picker-input": UiPartElement<typeof datePicker, "input", "end">;
1427
+ "ui-date-picker-trigger": UiPartElement<typeof datePicker, "trigger">;
1428
+ "ui-date-picker-content": UiPartElement<typeof datePicker, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "container" | "anchor" | "finalFocus" | "keepMounted">;
1429
+ "ui-date-picker-hint": UiPartElement<typeof datePicker, "hint">;
1430
+ "ui-date-picker-clear": UiPartElement<typeof datePicker, "clear">;
1431
+ "ui-date-picker-preset": UiPartElement<typeof datePicker, "preset", "value">;
1432
+ "ui-dialog-trigger": UiPartElement<typeof dialog, "trigger", "disabled" | "focusableWhenDisabled" | "shortcut", "payload">;
1433
+ "ui-dialog-close": UiPartElement<typeof dialog, "close", "value", never, ActionEvents>;
1434
+ "ui-dialog-shortcut": UiPartElement<typeof dialog, "shortcut", "shortcut">;
1435
+ "ui-dialog-backdrop": UiPartElement<typeof dialog, "backdrop">;
1436
+ "ui-dialog-content": UiPartElement<typeof dialog, "content", "container" | "initialFocus" | "finalFocus" | "keepMounted">;
1437
+ "ui-dialog-title": UiPartElement<typeof dialog, "title">;
1438
+ "ui-dialog-description": UiPartElement<typeof dialog, "description">;
1439
+ "ui-drawer-trigger": UiPartElement<typeof drawer, "trigger", "disabled" | "focusableWhenDisabled" | "shortcut", "payload">;
1440
+ "ui-drawer-close": UiPartElement<typeof drawer, "close", "value", never, ActionEvents>;
1441
+ "ui-drawer-shortcut": UiPartElement<typeof drawer, "shortcut", "shortcut">;
1442
+ "ui-drawer-backdrop": UiPartElement<typeof drawer, "backdrop">;
1443
+ "ui-drawer-viewport": UiPartElement<typeof drawer, "viewport">;
1444
+ "ui-drawer-content": UiPartElement<typeof drawer, "content", "container" | "initialFocus" | "finalFocus" | "keepMounted">;
1445
+ "ui-drawer-handle": UiPartElement<typeof drawer, "handle">;
1446
+ "ui-drawer-outlet": UiPartElement<typeof drawer, "outlet", never, "keyframes">;
1447
+ "ui-drawer-title": UiPartElement<typeof drawer, "title">;
1448
+ "ui-drawer-description": UiPartElement<typeof drawer, "description">;
1449
+ "ui-field-label": UiPartElement<typeof field, "label">;
1450
+ "ui-field-description": UiPartElement<typeof field, "description">;
1451
+ "ui-field-error": UiPartElement<typeof field, "error", "match">;
1452
+ "ui-field-legend": UiPartElement<typeof fieldSet, "legend">;
1453
+ "ui-file-input-trigger": UiPartElement<typeof fileInput, "trigger">;
1454
+ "ui-file-input-dropzone": UiPartElement<typeof fileInput, "dropzone", "target" | "pasteTarget">;
1455
+ "ui-file-input-list": UiPartElement<typeof fileInput, "list">;
1456
+ "ui-file-input-item": UiPartElement<typeof fileInput, "item", never, "file">;
1457
+ "ui-file-input-item-remove": UiPartElement<typeof fileInput, "item-remove">;
1458
+ "ui-hover-card-trigger": UiPartElement<typeof hoverCard, "trigger", never, "payload">;
1459
+ "ui-image-cropper-viewport": UiPartElement<typeof imageCropper, "viewport">;
1460
+ "ui-image-cropper-image": UiPartElement<typeof imageCropper, "image">;
1461
+ "ui-image-cropper-selection": UiPartElement<typeof imageCropper, "selection">;
1462
+ "ui-image-cropper-grid": UiPartElement<typeof imageCropper, "grid">;
1463
+ "ui-image-cropper-handle": UiPartElement<typeof imageCropper, "handle", "position">;
1464
+ "ui-image-cropper-zoom": UiPartElement<typeof imageCropper, "zoom">;
1465
+ "ui-image-cropper-rotate": UiPartElement<typeof imageCropper, "rotate">;
1466
+ "ui-image-cropper-flip": UiPartElement<typeof imageCropper, "flip", "direction">;
1467
+ "ui-hover-card-content": UiPartElement<typeof hoverCard, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "container" | "arrowPadding" | "anchor" | "keepMounted">;
1468
+ "ui-hover-card-arrow": UiPartElement<typeof hoverCard, "arrow">;
1469
+ "ui-input-clear": UiPartElement<typeof inputGroup, "clear">;
1470
+ "ui-listbox-item": UiPartElement<typeof listbox, "item", "value" | "label" | "disabled" | "index">;
1471
+ "ui-listbox-item-indicator": UiPartElement<typeof listbox, "item-indicator", "keepMounted">;
1472
+ "ui-listbox-item-icon": UiPartElement<typeof listbox, "item-icon", "mirror">;
1473
+ "ui-listbox-group": UiPartElement<typeof listbox, "group">;
1474
+ "ui-listbox-group-label": UiPartElement<typeof listbox, "group-label">;
1475
+ "ui-listbox-separator": UiPartElement<typeof listbox, "separator">;
1476
+ "ui-menu-trigger": UiPartElement<typeof menu, "trigger", "disabled" | "focusableWhenDisabled" | "shortcut", "payload">;
1477
+ "ui-menu-context-trigger": UiPartElement<typeof menu, "context-trigger", "disabled", "payload">;
1478
+ "ui-menu-content": UiPartElement<typeof menu, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "anchor" | "container" | "finalFocus" | "keepMounted">;
1479
+ "ui-menu-sub-content": UiPartElement<typeof menu, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "anchor" | "keepMounted">;
1480
+ "ui-menu-sub-trigger": UiPartElement<typeof menu, "trigger", "disabled" | "focusableWhenDisabled" | "shortcut", "payload">;
1481
+ "ui-menu-item": UiPartElement<typeof menu, "item", "value" | "label" | "disabled" | "destructive" | "shortcut" | "closeOnSelect">;
1482
+ "ui-menu-checkbox-item": UiPartElement<typeof menu, "checkbox-item", "value" | "label" | "disabled" | "checked" | "defaultChecked" | "closeOnSelect">;
1483
+ "ui-menu-radio-group": UiPartElement<typeof menu, "radio-group", "value" | "defaultValue">;
1484
+ "ui-menu-radio-item": UiPartElement<typeof menu, "radio-item", "value" | "label" | "disabled" | "closeOnSelect">;
1485
+ "ui-menu-item-indicator": UiPartElement<typeof menu, "item-indicator", "keepMounted">;
1486
+ "ui-menu-group": UiPartElement<typeof menu, "group">;
1487
+ "ui-menu-group-label": UiPartElement<typeof menu, "group-label">;
1488
+ "ui-menu-separator": UiPartElement<typeof menu, "separator">;
1489
+ "ui-menu-shortcut": UiPartElement<typeof menu, "shortcut">;
1490
+ "ui-menu-item-icon": UiPartElement<typeof menu, "item-icon", "mirror">;
1491
+ "ui-meter-track": UiPartElement<typeof meter, "track">;
1492
+ "ui-meter-indicator": UiPartElement<typeof meter, "indicator">;
1493
+ "ui-meter-label": UiPartElement<typeof meter, "label">;
1494
+ "ui-meter-value": UiPartElement<typeof meter, "value">;
1495
+ "ui-navigation-menu-list": UiPartElement<typeof navigationMenu, "list">;
1496
+ "ui-navigation-menu-item": UiPartElement<typeof navigationMenu, "item", "value">;
1497
+ "ui-navigation-menu-trigger": UiPartElement<typeof navigationMenu, "trigger", "disabled">;
1498
+ "ui-navigation-menu-content": UiPartElement<typeof navigationMenu, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "anchor" | "keepMounted" | "hiddenUntilFound">;
1499
+ "ui-navigation-menu-link": UiPartElement<typeof navigationMenu, "link", "current" | "closeOnSelect">;
1500
+ "ui-navigation-menu-link-icon": UiPartElement<typeof navigationMenu, "link-icon", "mirror">;
1501
+ "ui-navigation-menu-viewport": UiPartElement<typeof navigationMenu, "viewport", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "anchor">;
1502
+ "ui-navigation-menu-indicator": UiPartElement<typeof navigationMenu, "indicator">;
1503
+ "ui-number-input-group": UiPartElement<typeof numberInput, "group">;
1504
+ "ui-number-input-control": UiPartElement<typeof numberInput, "control">;
1505
+ "ui-number-input-increment": UiPartElement<typeof numberInput, "increment", "disabled">;
1506
+ "ui-number-input-decrement": UiPartElement<typeof numberInput, "decrement", "disabled">;
1507
+ "ui-number-input-scrub-area": UiPartElement<typeof numberInput, "scrub-area", "orientation" | "pixelsPerStep">;
1508
+ "ui-number-input-scrub-area-cursor": UiPartElement<typeof numberInput, "scrub-area-cursor">;
1509
+ "ui-otp-input-control": UiPartElement<typeof otpInput, "control">;
1510
+ "ui-otp-input-group": UiPartElement<typeof otpInput, "group">;
1511
+ "ui-otp-input-slot": UiPartElement<typeof otpInput, "slot", "index">;
1512
+ "ui-otp-input-separator": UiPartElement<typeof otpInput, "separator">;
1513
+ "ui-toast": UiPartElement<typeof toastRegion, "root">;
1514
+ "ui-toast-title": UiPartElement<typeof toastRegion, "title">;
1515
+ "ui-toast-description": UiPartElement<typeof toastRegion, "description">;
1516
+ "ui-toast-action": UiPartElement<typeof toastRegion, "action", "dismiss", never, ActionEvents>;
1517
+ "ui-toast-close": UiPartElement<typeof toastRegion, "close", never, never, ActionEvents>;
1518
+ "ui-pagination-list": UiPartElement<typeof pagination, "list">;
1519
+ "ui-pagination-item": UiPartElement<typeof pagination, "item">;
1520
+ "ui-pagination-link": UiPartElement<typeof pagination, "link", "page">;
1521
+ "ui-pagination-previous": UiPartElement<typeof pagination, "previous">;
1522
+ "ui-pagination-next": UiPartElement<typeof pagination, "next">;
1523
+ "ui-pagination-first": UiPartElement<typeof pagination, "first">;
1524
+ "ui-pagination-last": UiPartElement<typeof pagination, "last">;
1525
+ "ui-pagination-ellipsis": UiPartElement<typeof pagination, "ellipsis">;
1526
+ "ui-password-input-toggle": UiPartElement<typeof passwordInput, "toggle">;
1527
+ "ui-popover-trigger": UiPartElement<typeof popover, "trigger", "disabled" | "focusableWhenDisabled" | "shortcut", "payload">;
1528
+ "ui-popover-close": UiPartElement<typeof popover, "close">;
1529
+ "ui-popover-shortcut": UiPartElement<typeof popover, "shortcut", "shortcut">;
1530
+ "ui-popover-content": UiPartElement<typeof popover, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "container" | "arrowPadding" | "anchor" | "initialFocus" | "finalFocus" | "keepMounted">;
1531
+ "ui-popover-title": UiPartElement<typeof popover, "title">;
1532
+ "ui-popover-description": UiPartElement<typeof popover, "description">;
1533
+ "ui-popover-arrow": UiPartElement<typeof popover, "arrow">;
1534
+ "ui-progress-track": UiPartElement<typeof progress, "track">;
1535
+ "ui-progress-indicator": UiPartElement<typeof progress, "indicator">;
1536
+ "ui-progress-label": UiPartElement<typeof progress, "label">;
1537
+ "ui-progress-value": UiPartElement<typeof progress, "value">;
1538
+ "ui-radio-indicator": UiPartElement<typeof radioGroup, "indicator", "keepMounted">;
1539
+ "ui-rating-item": UiPartElement<typeof rating, "item", "index">;
1540
+ "ui-rating-radio": UiPartElement<typeof rating, "radio", "value" | "disabled">;
1541
+ "ui-resizable-panel": UiPartElement<typeof resizable, "panel", "defaultSize" | "minSize" | "maxSize" | "collapsible" | "collapsedSize">;
1542
+ "ui-resizable-handle": UiPartElement<typeof resizable, "handle", "disabled">;
1543
+ "ui-scroll-area-viewport": UiPartElement<typeof scrollArea, "viewport">;
1544
+ "ui-scroll-area-content": UiPartElement<typeof scrollArea, "content">;
1545
+ "ui-scroll-area-scrollbar": UiPartElement<typeof scrollArea, "scrollbar", "orientation">;
1546
+ "ui-scroll-area-thumb": UiPartElement<typeof scrollArea, "thumb">;
1547
+ "ui-scroll-area-corner": UiPartElement<typeof scrollArea, "corner">;
1548
+ "ui-scroll-area-scroll-to-end": UiPartElement<typeof scrollArea, "scroll-to-end">;
1549
+ "ui-select-label": UiPartElement<typeof select, "label">;
1550
+ "ui-select-trigger": UiPartElement<typeof select, "trigger", "disabled">;
1551
+ "ui-select-value": UiPartElement<typeof select, "value", "placeholder" | "maxLabels", "getMoreLabel">;
1552
+ "ui-select-clear": UiPartElement<typeof select, "clear", "keepMounted">;
1553
+ "ui-select-content": UiPartElement<typeof select, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "container" | "anchor" | "alignItemWithTrigger" | "keepMounted">;
1554
+ "ui-select-list": UiPartElement<typeof select, "list">;
1555
+ "ui-select-input": UiPartElement<typeof select, "input">;
1556
+ "ui-select-empty": UiPartElement<typeof select, "empty">;
1557
+ "ui-select-status": UiPartElement<typeof select, "status">;
1558
+ "ui-select-item-text": UiPartElement<typeof select, "item-text">;
1559
+ "ui-select-select-all": UiPartElement<typeof select, "select-all">;
1560
+ "ui-select-item": UiPartElement<typeof select, "item", "label" | "disabled" | "index", "value">;
1561
+ "ui-select-item-indicator": UiPartElement<typeof select, "item-indicator", "keepMounted">;
1562
+ "ui-select-item-icon": UiPartElement<typeof select, "item-icon", "mirror">;
1563
+ "ui-select-value-icon": UiPartElement<typeof select, "value-icon">;
1564
+ "ui-select-group": UiPartElement<typeof select, "group">;
1565
+ "ui-select-group-label": UiPartElement<typeof select, "group-label">;
1566
+ "ui-select-separator": UiPartElement<typeof select, "separator">;
1567
+ "ui-select-arrow": UiPartElement<typeof select, "arrow">;
1568
+ "ui-color-picker-area": UiPartElement<typeof colorPicker, "area", "x" | "y">;
1569
+ "ui-color-picker-area-thumb": UiPartElement<typeof colorPicker, "area-thumb">;
1570
+ "ui-color-picker-area-canvas": UiPartElement<typeof colorPicker, "area-canvas">;
1571
+ "ui-color-picker-slider": UiPartElement<typeof colorPicker, "slider", "channel" | "orientation">;
1572
+ "ui-color-picker-slider-thumb": UiPartElement<typeof colorPicker, "slider-thumb">;
1573
+ "ui-color-picker-input": UiPartElement<typeof colorPicker, "input">;
1574
+ "ui-color-picker-channel-input": UiPartElement<typeof colorPicker, "channel-input", "channel">;
1575
+ "ui-color-picker-swatch": UiPartElement<typeof colorPicker, "swatch">;
1576
+ "ui-color-picker-eye-dropper": UiPartElement<typeof colorPicker, "eye-dropper">;
1577
+ "ui-color-picker-swatches": UiPartElement<typeof colorPicker, "swatches">;
1578
+ "ui-color-picker-swatch-item": UiPartElement<typeof colorPicker, "swatch-item", "value">;
1579
+ "ui-slider-control": UiPartElement<typeof slider, "control">;
1580
+ "ui-slider-track": UiPartElement<typeof slider, "track">;
1581
+ "ui-slider-indicator": UiPartElement<typeof slider, "indicator">;
1582
+ "ui-slider-thumb": UiPartElement<typeof slider, "thumb", "index">;
1583
+ "ui-slider-thumb-input": UiPartElement<typeof slider, "thumb-input">;
1584
+ "ui-slider-value": UiPartElement<typeof slider, "value">;
1585
+ "ui-switch-thumb": UiPartElement<typeof switchPrimitive, "thumb">;
1586
+ "ui-segmented-control-indicator": UiPartElement<typeof segmentedControl, "indicator">;
1587
+ "ui-tabs-list": UiPartElement<typeof tabs, "list">;
1588
+ "ui-tabs-tab": UiPartElement<typeof tabs, "tab", "value" | "disabled">;
1589
+ "ui-tabs-tab-icon": UiPartElement<typeof tabs, "tab-icon", "mirror">;
1590
+ "ui-tabs-indicator": UiPartElement<typeof tabs, "indicator">;
1591
+ "ui-tabs-panel": UiPartElement<typeof tabs, "panel", "value" | "keepMounted" | "hiddenUntilFound">;
1592
+ "ui-toggle-icon": UiPartElement<typeof toggle, "icon", "mirror">;
1593
+ "ui-token-input-editor": UiPartElement<typeof tokenInput, "editor", "placeholder">;
1594
+ "ui-token-input-token": UiPartElement<typeof tokenInput, "token", "token">;
1595
+ "ui-token-input-token-remove": UiPartElement<typeof tokenInput, "token-remove", "token">;
1596
+ "ui-toolbar-button": UiPartElement<typeof toolbar, "button", "disabled" | "focusableWhenDisabled">;
1597
+ "ui-toolbar-input": UiPartElement<typeof toolbar, "input", "disabled" | "focusableWhenDisabled">;
1598
+ "ui-toolbar-link": UiPartElement<typeof toolbar, "link">;
1599
+ "ui-toolbar-group": UiPartElement<typeof toolbar, "group", "disabled">;
1600
+ "ui-toolbar-separator": UiPartElement<typeof toolbar, "separator">;
1601
+ "ui-tooltip-trigger": UiPartElement<typeof tooltip, "trigger", never, "payload">;
1602
+ "ui-tooltip-content": UiPartElement<typeof tooltip, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "container" | "arrowPadding" | "anchor">;
1603
+ "ui-tooltip-arrow": UiPartElement<typeof tooltip, "arrow">;
1604
+ "ui-tooltip-shortcut": UiPartElement<typeof tooltip, "shortcut", "shortcut">;
1605
+ "ui-tree-item": UiPartElement<typeof tree, "item", "value" | "branch" | "disabled" | "label">;
1606
+ "ui-tree-item-label": UiPartElement<typeof tree, "label">;
1607
+ "ui-tree-item-indicator": UiPartElement<typeof tree, "indicator">;
1608
+ "ui-tree-item-checkbox": UiPartElement<typeof tree, "checkbox">;
1609
+ "ui-tree-group": UiPartElement<typeof tree, "group", "keepMounted" | "hiddenUntilFound">;
1610
+ "ui-waterfall-header-row": UiPartElement<typeof waterfall, "header-row">;
1611
+ "ui-waterfall-column-header": UiPartElement<typeof waterfall, "column-header">;
1612
+ "ui-waterfall-axis": UiPartElement<typeof waterfall, "axis", "maxTicks">;
1613
+ "ui-waterfall-tick": UiPartElement<typeof waterfall, "tick", "time">;
1614
+ "ui-waterfall-mark": UiPartElement<typeof waterfall, "mark", "time">;
1615
+ "ui-waterfall-row": UiPartElement<typeof waterfall, "row", "value">;
1616
+ "ui-waterfall-row-header": UiPartElement<typeof waterfall, "row-header">;
1617
+ "ui-waterfall-indicator": UiPartElement<typeof waterfall, "indicator">;
1618
+ "ui-waterfall-cell": UiPartElement<typeof waterfall, "cell">;
1619
+ "ui-waterfall-bar": UiPartElement<typeof waterfall, "bar">;
1620
+ "ui-trigger-menu-input": UiPartElement<typeof triggerMenu, "input">;
1621
+ "ui-trigger-menu-content": UiPartElement<typeof triggerMenu, "content", "side" | "align" | "sideOffset" | "alignOffset" | "collisionPadding" | "arrowPadding" | "container" | "anchor" | "keepMounted">;
1622
+ "ui-trigger-menu-list": UiPartElement<typeof triggerMenu, "list">;
1623
+ "ui-trigger-menu-item": UiPartElement<typeof triggerMenu, "item", "value" | "label" | "keywords" | "disabled", never, {}>;
1624
+ "ui-trigger-menu-item-icon": UiPartElement<typeof triggerMenu, "item-icon", "mirror">;
1625
+ "ui-trigger-menu-group": UiPartElement<typeof triggerMenu, "group">;
1626
+ "ui-trigger-menu-group-label": UiPartElement<typeof triggerMenu, "group-label">;
1627
+ "ui-trigger-menu-separator": UiPartElement<typeof triggerMenu, "separator">;
1628
+ "ui-trigger-menu-empty": UiPartElement<typeof triggerMenu, "empty">;
1629
+ "ui-trigger-menu-status": UiPartElement<typeof triggerMenu, "status">;
1630
+ "ui-trigger-menu-hint": UiPartElement<typeof triggerMenu, "hint">;
1631
+ }
1632
+ }
1633
+ /**
1634
+ * The events of `<ui-file-input>`: `valuechange` carries the files in
1635
+ * `detail.value`, with what changed beside them, and `reject` the files that
1636
+ * failed the checks.
1637
+ * @stable
1638
+ */
1639
+ type FileInputEvents = {
1640
+ valuechange: UiDetailedChangeEvent<File[], FileInputValueChangeDetails>;
1641
+ reject: UiDetailedChangeEvent<FileRejection[], CommitDetails<FileInputValueChangeReason>>;
1642
+ };
1643
+ /**
1644
+ * `<ui-file-input>`: the files as `value`, the controller's methods on `api`, form members like a native input, and typed events.
1645
+ * @stable
1646
+ */
1647
+ interface UiFileInputElement extends UiElement<FileInputEvents>, FormControlProperties<typeof fileInput, "announcement" | "api" | "controller" | "defaultValue" | "validate" | "value"> {
1648
+ value: readonly File[];
1649
+ api: FileInputController;
1650
+ controller?: FileInputController;
1651
+ /** A check of your own. Return a reason to reject the file. */
1652
+ validate?: FileInputOptions["validate"];
1653
+ /** What screen readers hear after a change. Return null for nothing. */
1654
+ announcement?: FileInputOptions["announcement"];
1655
+ /** The files at first, which a form reset returns to. Set it before the element connects. */
1656
+ defaultValue?: File[];
1657
+ }
1658
+ export { type AttributeProperties, type AccordionEvents, type AlertDialogEvents, type AutocompleteEvents, type AvatarEvents, type ButtonEvents, type CalendarEvents, type CarouselEvents, type CheckboxEvents, type CheckboxGroupEvents, type CollapsibleEvents, type ColorPickerEvents, type ComboboxEvents, type CommandEvents, type DateInputEvents, type DatePickerEvents, type DialogEvents, type DrawerEvents, type FileInputEvents, type HoverCardEvents, type ImageCropperEvents, type InputEvents, type ListboxEvents, type MenuEvents, type NavigationMenuEvents, type NumberInputEvents, type OTPInputEvents, type TimeInputEvents, type PaginationEvents, type PartEvents, type PartProperties, type PasswordInputEvents, type PopoverEvents, type RadioGroupEvents, type RatingEvents, type ResizableEvents, type SegmentedControlEvents, type SelectEvents, type SliderEvents, type SwitchEvents, type TabsEvents, type ToggleEvents, type ToggleGroupEvents, type TokenInputEvents, type TooltipEvents, type TreeEvents, type TriggerMenuEvents, type UiAccordionElement, type UiAlertDialogElement, type UiAutocompleteElement, type UiAvatarElement, type UiButtonElement, type UiCalendarElement, type UiCarouselElement, type UiChangeDetail, type UiChangeEvent, type UiCheckboxElement, type UiCheckboxGroupElement, type UiTimelineElement, type UiCollapsibleElement, type UiColorPickerElement, type UiComboboxElement, type UiCommandElement, type UiDateInputElement, type UiDatePickerElement, type UiDetailedChangeEvent, type UiDialogElement, type UiDismissAttemptEvent, type UiDrawerElement, type UiElement, type UiFieldElement, type UiFieldGroupElement, type UiFieldSetElement, type UiFileInputElement, type UiGaugeElement, type UiHighlightEvent, type UiHoverCardElement, type UiImageCropperElement, type UiInputElement, type UiInputGroupElement, type UiLabelElement, type UiListboxElement, type UiLoadMoreEvent, type UiMenubarElement, type UiMenuElement, type UiMenuSubElement, type UiMeterElement, type UiNavigationMenuElement, type UiNumberInputElement, type UiOpenChangeCompleteEvent, type UiOTPInputElement, type UiTimeInputElement, type UiOverlayHostElement, type UiPaginationElement, type UiPartElement, type UiPasswordInputElement, type UiPopoverElement, type UiPreferencesElement, type UiRadioElement, type UiRadioGroupElement, type UiRatingElement, type UiResizableElement, type UiScrollAreaElement, type UiSegmentedControlElement, type UiSegmentedControlItemElement, type UiSelectElement, type UiSeparatorElement, type UiSliderElement, type UiSwitchElement, type UiTabsElement, type UiTextareaElement, type UiToastRegionElement, type UiToggleElement, type UiToggleGroupElement, type UiTokenInputElement, type UiToolbarElement, type UiTooltipElement, type UiTreeElement, type UiTriggerMenuElement, type UiWaterfallElement, type WaterfallEvents, };