@fluentui/web-components 3.0.0-rc.2 → 3.0.0-rc.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (679) hide show
  1. package/CHANGELOG.md +177 -2
  2. package/custom-elements.json +9653 -9708
  3. package/dist/esm/accordion/accordion.d.ts +11 -8
  4. package/dist/esm/accordion/accordion.definition.js +2 -2
  5. package/dist/esm/accordion/accordion.definition.js.map +1 -1
  6. package/dist/esm/accordion/accordion.js +47 -46
  7. package/dist/esm/accordion/accordion.js.map +1 -1
  8. package/dist/esm/accordion/accordion.options.d.ts +7 -1
  9. package/dist/esm/accordion/accordion.options.js +7 -0
  10. package/dist/esm/accordion/accordion.options.js.map +1 -1
  11. package/dist/esm/accordion/accordion.styles.js +1 -1
  12. package/dist/esm/accordion/accordion.styles.js.map +1 -1
  13. package/dist/esm/accordion/index.d.ts +1 -0
  14. package/dist/esm/accordion/index.js +1 -0
  15. package/dist/esm/accordion/index.js.map +1 -1
  16. package/dist/esm/accordion-item/accordion-item.base.d.ts +0 -8
  17. package/dist/esm/accordion-item/accordion-item.base.js +3 -12
  18. package/dist/esm/accordion-item/accordion-item.base.js.map +1 -1
  19. package/dist/esm/accordion-item/accordion-item.d.ts +2 -4
  20. package/dist/esm/accordion-item/accordion-item.definition.js +2 -2
  21. package/dist/esm/accordion-item/accordion-item.definition.js.map +1 -1
  22. package/dist/esm/accordion-item/accordion-item.js +1 -1
  23. package/dist/esm/accordion-item/accordion-item.js.map +1 -1
  24. package/dist/esm/accordion-item/accordion-item.options.d.ts +17 -1
  25. package/dist/esm/accordion-item/accordion-item.options.js +19 -0
  26. package/dist/esm/accordion-item/accordion-item.options.js.map +1 -1
  27. package/dist/esm/accordion-item/accordion-item.styles.js +1 -1
  28. package/dist/esm/accordion-item/accordion-item.styles.js.map +1 -1
  29. package/dist/esm/accordion-item/accordion-item.template.js +7 -7
  30. package/dist/esm/accordion-item/accordion-item.template.js.map +1 -1
  31. package/dist/esm/accordion-item/index.d.ts +1 -0
  32. package/dist/esm/accordion-item/index.js +1 -0
  33. package/dist/esm/accordion-item/index.js.map +1 -1
  34. package/dist/esm/anchor-button/anchor-button.base.d.ts +1 -1
  35. package/dist/esm/anchor-button/anchor-button.base.js +9 -6
  36. package/dist/esm/anchor-button/anchor-button.base.js.map +1 -1
  37. package/dist/esm/anchor-button/anchor-button.d.ts +1 -2
  38. package/dist/esm/anchor-button/anchor-button.definition.js +2 -2
  39. package/dist/esm/anchor-button/anchor-button.definition.js.map +1 -1
  40. package/dist/esm/anchor-button/anchor-button.js +1 -1
  41. package/dist/esm/anchor-button/anchor-button.js.map +1 -1
  42. package/dist/esm/anchor-button/anchor-button.options.d.ts +7 -1
  43. package/dist/esm/anchor-button/anchor-button.options.js +7 -0
  44. package/dist/esm/anchor-button/anchor-button.options.js.map +1 -1
  45. package/dist/esm/anchor-button/anchor-button.styles.js +4 -3
  46. package/dist/esm/anchor-button/anchor-button.styles.js.map +1 -1
  47. package/dist/esm/anchor-button/anchor-button.template.js +1 -1
  48. package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
  49. package/dist/esm/anchor-button/index.d.ts +1 -0
  50. package/dist/esm/anchor-button/index.js +1 -0
  51. package/dist/esm/anchor-button/index.js.map +1 -1
  52. package/dist/esm/avatar/avatar.base.d.ts +64 -10
  53. package/dist/esm/avatar/avatar.base.js +100 -27
  54. package/dist/esm/avatar/avatar.base.js.map +1 -1
  55. package/dist/esm/avatar/avatar.definition.js +2 -2
  56. package/dist/esm/avatar/avatar.definition.js.map +1 -1
  57. package/dist/esm/avatar/avatar.options.d.ts +7 -1
  58. package/dist/esm/avatar/avatar.options.js +7 -0
  59. package/dist/esm/avatar/avatar.options.js.map +1 -1
  60. package/dist/esm/avatar/avatar.styles.js +25 -8
  61. package/dist/esm/avatar/avatar.styles.js.map +1 -1
  62. package/dist/esm/avatar/avatar.template.js +4 -3
  63. package/dist/esm/avatar/avatar.template.js.map +1 -1
  64. package/dist/esm/avatar/index.d.ts +1 -0
  65. package/dist/esm/avatar/index.js +1 -0
  66. package/dist/esm/avatar/index.js.map +1 -1
  67. package/dist/esm/badge/badge.d.ts +1 -1
  68. package/dist/esm/badge/badge.definition.js +2 -2
  69. package/dist/esm/badge/badge.definition.js.map +1 -1
  70. package/dist/esm/badge/badge.js +1 -1
  71. package/dist/esm/badge/badge.js.map +1 -1
  72. package/dist/esm/badge/badge.options.d.ts +12 -3
  73. package/dist/esm/badge/badge.options.js +7 -0
  74. package/dist/esm/badge/badge.options.js.map +1 -1
  75. package/dist/esm/badge/badge.styles.js +5 -4
  76. package/dist/esm/badge/badge.styles.js.map +1 -1
  77. package/dist/esm/badge/badge.template.js +1 -1
  78. package/dist/esm/badge/badge.template.js.map +1 -1
  79. package/dist/esm/badge/index.d.ts +3 -3
  80. package/dist/esm/badge/index.js +3 -3
  81. package/dist/esm/badge/index.js.map +1 -1
  82. package/dist/esm/button/button.base.d.ts +15 -1
  83. package/dist/esm/button/button.base.js +28 -26
  84. package/dist/esm/button/button.base.js.map +1 -1
  85. package/dist/esm/button/button.d.ts +1 -1
  86. package/dist/esm/button/button.definition.js +2 -2
  87. package/dist/esm/button/button.definition.js.map +1 -1
  88. package/dist/esm/button/button.js +1 -1
  89. package/dist/esm/button/button.js.map +1 -1
  90. package/dist/esm/button/button.options.d.ts +8 -2
  91. package/dist/esm/button/button.options.js +7 -0
  92. package/dist/esm/button/button.options.js.map +1 -1
  93. package/dist/esm/button/button.styles.js +5 -3
  94. package/dist/esm/button/button.styles.js.map +1 -1
  95. package/dist/esm/button/button.template.d.ts +3 -3
  96. package/dist/esm/button/button.template.js +1 -1
  97. package/dist/esm/button/button.template.js.map +1 -1
  98. package/dist/esm/button/index.d.ts +1 -0
  99. package/dist/esm/button/index.js +1 -0
  100. package/dist/esm/button/index.js.map +1 -1
  101. package/dist/esm/checkbox/checkbox.definition.js +2 -2
  102. package/dist/esm/checkbox/checkbox.definition.js.map +1 -1
  103. package/dist/esm/checkbox/checkbox.options.d.ts +6 -0
  104. package/dist/esm/checkbox/checkbox.options.js +7 -0
  105. package/dist/esm/checkbox/checkbox.options.js.map +1 -1
  106. package/dist/esm/checkbox/checkbox.styles.js +4 -3
  107. package/dist/esm/checkbox/checkbox.styles.js.map +1 -1
  108. package/dist/esm/checkbox/index.d.ts +1 -0
  109. package/dist/esm/checkbox/index.js +1 -0
  110. package/dist/esm/checkbox/index.js.map +1 -1
  111. package/dist/esm/compound-button/compound-button.definition.js +2 -2
  112. package/dist/esm/compound-button/compound-button.definition.js.map +1 -1
  113. package/dist/esm/compound-button/compound-button.options.d.ts +7 -1
  114. package/dist/esm/compound-button/compound-button.options.js +7 -0
  115. package/dist/esm/compound-button/compound-button.options.js.map +1 -1
  116. package/dist/esm/compound-button/compound-button.styles.js +4 -3
  117. package/dist/esm/compound-button/compound-button.styles.js.map +1 -1
  118. package/dist/esm/compound-button/compound-button.template.d.ts +3 -1
  119. package/dist/esm/compound-button/compound-button.template.js +8 -3
  120. package/dist/esm/compound-button/compound-button.template.js.map +1 -1
  121. package/dist/esm/compound-button/index.d.ts +1 -0
  122. package/dist/esm/compound-button/index.js +1 -0
  123. package/dist/esm/compound-button/index.js.map +1 -1
  124. package/dist/esm/counter-badge/counter-badge.base.d.ts +55 -0
  125. package/dist/esm/counter-badge/counter-badge.base.js +84 -0
  126. package/dist/esm/counter-badge/counter-badge.base.js.map +1 -0
  127. package/dist/esm/counter-badge/counter-badge.d.ts +5 -57
  128. package/dist/esm/counter-badge/counter-badge.definition.js +2 -2
  129. package/dist/esm/counter-badge/counter-badge.definition.js.map +1 -1
  130. package/dist/esm/counter-badge/counter-badge.js +6 -76
  131. package/dist/esm/counter-badge/counter-badge.js.map +1 -1
  132. package/dist/esm/counter-badge/counter-badge.options.d.ts +26 -12
  133. package/dist/esm/counter-badge/counter-badge.options.js +15 -4
  134. package/dist/esm/counter-badge/counter-badge.options.js.map +1 -1
  135. package/dist/esm/counter-badge/counter-badge.styles.js +1 -1
  136. package/dist/esm/counter-badge/counter-badge.styles.js.map +1 -1
  137. package/dist/esm/counter-badge/counter-badge.template.d.ts +9 -1
  138. package/dist/esm/counter-badge/counter-badge.template.js +15 -7
  139. package/dist/esm/counter-badge/counter-badge.template.js.map +1 -1
  140. package/dist/esm/counter-badge/index.d.ts +4 -3
  141. package/dist/esm/counter-badge/index.js +4 -3
  142. package/dist/esm/counter-badge/index.js.map +1 -1
  143. package/dist/esm/define-all.d.ts +42 -0
  144. package/dist/esm/define-all.js +43 -0
  145. package/dist/esm/define-all.js.map +1 -0
  146. package/dist/esm/dialog/dialog.d.ts +59 -11
  147. package/dist/esm/dialog/dialog.definition.js +2 -2
  148. package/dist/esm/dialog/dialog.definition.js.map +1 -1
  149. package/dist/esm/dialog/dialog.js +90 -33
  150. package/dist/esm/dialog/dialog.js.map +1 -1
  151. package/dist/esm/dialog/dialog.options.d.ts +7 -1
  152. package/dist/esm/dialog/dialog.options.js +7 -0
  153. package/dist/esm/dialog/dialog.options.js.map +1 -1
  154. package/dist/esm/dialog/dialog.styles.js +4 -3
  155. package/dist/esm/dialog/dialog.styles.js.map +1 -1
  156. package/dist/esm/dialog/dialog.template.js +5 -3
  157. package/dist/esm/dialog/dialog.template.js.map +1 -1
  158. package/dist/esm/dialog/index.d.ts +1 -0
  159. package/dist/esm/dialog/index.js +1 -0
  160. package/dist/esm/dialog/index.js.map +1 -1
  161. package/dist/esm/dialog-body/dialog-body.definition.js +2 -2
  162. package/dist/esm/dialog-body/dialog-body.definition.js.map +1 -1
  163. package/dist/esm/dialog-body/dialog-body.js +1 -1
  164. package/dist/esm/dialog-body/dialog-body.js.map +1 -1
  165. package/dist/esm/dialog-body/dialog-body.options.d.ts +6 -0
  166. package/dist/esm/dialog-body/dialog-body.options.js +8 -0
  167. package/dist/esm/dialog-body/dialog-body.options.js.map +1 -0
  168. package/dist/esm/dialog-body/dialog-body.styles.js +1 -1
  169. package/dist/esm/dialog-body/dialog-body.styles.js.map +1 -1
  170. package/dist/esm/dialog-body/index.d.ts +1 -0
  171. package/dist/esm/dialog-body/index.js +1 -0
  172. package/dist/esm/dialog-body/index.js.map +1 -1
  173. package/dist/esm/divider/divider.definition.js +2 -2
  174. package/dist/esm/divider/divider.definition.js.map +1 -1
  175. package/dist/esm/divider/divider.options.d.ts +7 -1
  176. package/dist/esm/divider/divider.options.js +8 -1
  177. package/dist/esm/divider/divider.options.js.map +1 -1
  178. package/dist/esm/divider/divider.styles.js +5 -3
  179. package/dist/esm/divider/divider.styles.js.map +1 -1
  180. package/dist/esm/divider/index.d.ts +1 -0
  181. package/dist/esm/divider/index.js +1 -0
  182. package/dist/esm/divider/index.js.map +1 -1
  183. package/dist/esm/drawer/drawer.d.ts +62 -23
  184. package/dist/esm/drawer/drawer.definition.js +2 -2
  185. package/dist/esm/drawer/drawer.definition.js.map +1 -1
  186. package/dist/esm/drawer/drawer.js +91 -54
  187. package/dist/esm/drawer/drawer.js.map +1 -1
  188. package/dist/esm/drawer/drawer.options.d.ts +7 -1
  189. package/dist/esm/drawer/drawer.options.js +7 -0
  190. package/dist/esm/drawer/drawer.options.js.map +1 -1
  191. package/dist/esm/drawer/drawer.styles.js +1 -1
  192. package/dist/esm/drawer/drawer.styles.js.map +1 -1
  193. package/dist/esm/drawer/drawer.template.js +5 -3
  194. package/dist/esm/drawer/drawer.template.js.map +1 -1
  195. package/dist/esm/drawer/index.d.ts +1 -0
  196. package/dist/esm/drawer/index.js +1 -0
  197. package/dist/esm/drawer/index.js.map +1 -1
  198. package/dist/esm/drawer-body/drawer-body.definition.js +2 -2
  199. package/dist/esm/drawer-body/drawer-body.definition.js.map +1 -1
  200. package/dist/esm/drawer-body/drawer-body.js +1 -1
  201. package/dist/esm/drawer-body/drawer-body.js.map +1 -1
  202. package/dist/esm/drawer-body/drawer-body.options.d.ts +6 -0
  203. package/dist/esm/drawer-body/drawer-body.options.js +8 -0
  204. package/dist/esm/drawer-body/drawer-body.options.js.map +1 -0
  205. package/dist/esm/drawer-body/drawer-body.styles.js +1 -1
  206. package/dist/esm/drawer-body/drawer-body.styles.js.map +1 -1
  207. package/dist/esm/drawer-body/index.d.ts +1 -0
  208. package/dist/esm/drawer-body/index.js +1 -0
  209. package/dist/esm/drawer-body/index.js.map +1 -1
  210. package/dist/esm/dropdown/dropdown.base.d.ts +6 -0
  211. package/dist/esm/dropdown/dropdown.base.js +47 -25
  212. package/dist/esm/dropdown/dropdown.base.js.map +1 -1
  213. package/dist/esm/dropdown/dropdown.definition.js +2 -2
  214. package/dist/esm/dropdown/dropdown.definition.js.map +1 -1
  215. package/dist/esm/dropdown/dropdown.options.d.ts +6 -0
  216. package/dist/esm/dropdown/dropdown.options.js +7 -0
  217. package/dist/esm/dropdown/dropdown.options.js.map +1 -1
  218. package/dist/esm/dropdown/dropdown.styles.js +2 -0
  219. package/dist/esm/dropdown/dropdown.styles.js.map +1 -1
  220. package/dist/esm/dropdown/index.d.ts +1 -0
  221. package/dist/esm/dropdown/index.js +1 -0
  222. package/dist/esm/dropdown/index.js.map +1 -1
  223. package/dist/esm/field/field.base.js +1 -1
  224. package/dist/esm/field/field.base.js.map +1 -1
  225. package/dist/esm/field/field.definition.js +2 -2
  226. package/dist/esm/field/field.definition.js.map +1 -1
  227. package/dist/esm/field/field.options.d.ts +6 -0
  228. package/dist/esm/field/field.options.js +7 -0
  229. package/dist/esm/field/field.options.js.map +1 -1
  230. package/dist/esm/field/index.d.ts +1 -0
  231. package/dist/esm/field/index.js +1 -0
  232. package/dist/esm/field/index.js.map +1 -1
  233. package/dist/esm/fluent-design-system.js +1 -1
  234. package/dist/esm/fluent-design-system.js.map +1 -1
  235. package/dist/esm/image/image.definition.js +2 -2
  236. package/dist/esm/image/image.definition.js.map +1 -1
  237. package/dist/esm/image/image.options.d.ts +7 -1
  238. package/dist/esm/image/image.options.js +7 -0
  239. package/dist/esm/image/image.options.js.map +1 -1
  240. package/dist/esm/image/index.d.ts +1 -0
  241. package/dist/esm/image/index.js +1 -0
  242. package/dist/esm/image/index.js.map +1 -1
  243. package/dist/esm/index-all-rollup.d.ts +2 -0
  244. package/dist/esm/index-all-rollup.js +9 -0
  245. package/dist/esm/index-all-rollup.js.map +1 -0
  246. package/dist/esm/index-rollup.d.ts +1 -44
  247. package/dist/esm/index-rollup.js +6 -44
  248. package/dist/esm/index-rollup.js.map +1 -1
  249. package/dist/esm/index.d.ts +8 -11
  250. package/dist/esm/index.js +6 -8
  251. package/dist/esm/index.js.map +1 -1
  252. package/dist/esm/label/index.d.ts +1 -0
  253. package/dist/esm/label/index.js +1 -0
  254. package/dist/esm/label/index.js.map +1 -1
  255. package/dist/esm/label/label.definition.js +2 -2
  256. package/dist/esm/label/label.definition.js.map +1 -1
  257. package/dist/esm/label/label.options.d.ts +7 -1
  258. package/dist/esm/label/label.options.js +7 -0
  259. package/dist/esm/label/label.options.js.map +1 -1
  260. package/dist/esm/label/label.styles.js +1 -1
  261. package/dist/esm/label/label.styles.js.map +1 -1
  262. package/dist/esm/link/index.d.ts +1 -0
  263. package/dist/esm/link/index.js +1 -0
  264. package/dist/esm/link/index.js.map +1 -1
  265. package/dist/esm/link/link.definition.js +2 -2
  266. package/dist/esm/link/link.definition.js.map +1 -1
  267. package/dist/esm/link/link.options.d.ts +7 -1
  268. package/dist/esm/link/link.options.js +7 -0
  269. package/dist/esm/link/link.options.js.map +1 -1
  270. package/dist/esm/link/link.styles.js +5 -3
  271. package/dist/esm/link/link.styles.js.map +1 -1
  272. package/dist/esm/listbox/index.d.ts +1 -0
  273. package/dist/esm/listbox/index.js +1 -0
  274. package/dist/esm/listbox/index.js.map +1 -1
  275. package/dist/esm/listbox/listbox.d.ts +12 -7
  276. package/dist/esm/listbox/listbox.definition.js +2 -2
  277. package/dist/esm/listbox/listbox.definition.js.map +1 -1
  278. package/dist/esm/listbox/listbox.js +27 -17
  279. package/dist/esm/listbox/listbox.js.map +1 -1
  280. package/dist/esm/listbox/listbox.options.d.ts +6 -0
  281. package/dist/esm/listbox/listbox.options.js +7 -0
  282. package/dist/esm/listbox/listbox.options.js.map +1 -1
  283. package/dist/esm/listbox/listbox.template.js +2 -3
  284. package/dist/esm/listbox/listbox.template.js.map +1 -1
  285. package/dist/esm/menu/index.d.ts +1 -0
  286. package/dist/esm/menu/index.js +1 -0
  287. package/dist/esm/menu/index.js.map +1 -1
  288. package/dist/esm/menu/menu.d.ts +31 -15
  289. package/dist/esm/menu/menu.definition.js +2 -2
  290. package/dist/esm/menu/menu.definition.js.map +1 -1
  291. package/dist/esm/menu/menu.js +78 -79
  292. package/dist/esm/menu/menu.js.map +1 -1
  293. package/dist/esm/menu/menu.options.d.ts +6 -0
  294. package/dist/esm/menu/menu.options.js +8 -0
  295. package/dist/esm/menu/menu.options.js.map +1 -0
  296. package/dist/esm/menu/menu.styles.js +1 -1
  297. package/dist/esm/menu/menu.styles.js.map +1 -1
  298. package/dist/esm/menu-button/index.d.ts +1 -0
  299. package/dist/esm/menu-button/index.js +1 -0
  300. package/dist/esm/menu-button/index.js.map +1 -1
  301. package/dist/esm/menu-button/menu-button.definition.js +2 -2
  302. package/dist/esm/menu-button/menu-button.definition.js.map +1 -1
  303. package/dist/esm/menu-button/menu-button.options.d.ts +7 -1
  304. package/dist/esm/menu-button/menu-button.options.js +7 -0
  305. package/dist/esm/menu-button/menu-button.options.js.map +1 -1
  306. package/dist/esm/menu-item/index.d.ts +1 -0
  307. package/dist/esm/menu-item/index.js +1 -0
  308. package/dist/esm/menu-item/index.js.map +1 -1
  309. package/dist/esm/menu-item/menu-item.d.ts +3 -1
  310. package/dist/esm/menu-item/menu-item.definition.js +2 -2
  311. package/dist/esm/menu-item/menu-item.definition.js.map +1 -1
  312. package/dist/esm/menu-item/menu-item.js +23 -12
  313. package/dist/esm/menu-item/menu-item.js.map +1 -1
  314. package/dist/esm/menu-item/menu-item.options.d.ts +7 -1
  315. package/dist/esm/menu-item/menu-item.options.js +7 -0
  316. package/dist/esm/menu-item/menu-item.options.js.map +1 -1
  317. package/dist/esm/menu-item/menu-item.styles.js +5 -3
  318. package/dist/esm/menu-item/menu-item.styles.js.map +1 -1
  319. package/dist/esm/menu-item/menu-item.template.js +3 -2
  320. package/dist/esm/menu-item/menu-item.template.js.map +1 -1
  321. package/dist/esm/menu-list/index.d.ts +2 -0
  322. package/dist/esm/menu-list/index.js +2 -0
  323. package/dist/esm/menu-list/index.js.map +1 -1
  324. package/dist/esm/menu-list/menu-list.base.d.ts +57 -0
  325. package/dist/esm/menu-list/menu-list.base.js +152 -0
  326. package/dist/esm/menu-list/menu-list.base.js.map +1 -0
  327. package/dist/esm/menu-list/menu-list.d.ts +6 -69
  328. package/dist/esm/menu-list/menu-list.definition.js +2 -2
  329. package/dist/esm/menu-list/menu-list.definition.js.map +1 -1
  330. package/dist/esm/menu-list/menu-list.js +18 -237
  331. package/dist/esm/menu-list/menu-list.js.map +1 -1
  332. package/dist/esm/menu-list/menu-list.options.d.ts +6 -0
  333. package/dist/esm/menu-list/menu-list.options.js +8 -0
  334. package/dist/esm/menu-list/menu-list.options.js.map +1 -0
  335. package/dist/esm/menu-list/menu-list.styles.js +1 -1
  336. package/dist/esm/menu-list/menu-list.styles.js.map +1 -1
  337. package/dist/esm/menu-list/menu-list.template.js +1 -5
  338. package/dist/esm/menu-list/menu-list.template.js.map +1 -1
  339. package/dist/esm/message-bar/index.d.ts +1 -0
  340. package/dist/esm/message-bar/index.js +1 -0
  341. package/dist/esm/message-bar/index.js.map +1 -1
  342. package/dist/esm/message-bar/message-bar.d.ts +2 -1
  343. package/dist/esm/message-bar/message-bar.definition.js +2 -1
  344. package/dist/esm/message-bar/message-bar.definition.js.map +1 -1
  345. package/dist/esm/message-bar/message-bar.js +2 -1
  346. package/dist/esm/message-bar/message-bar.js.map +1 -1
  347. package/dist/esm/message-bar/message-bar.options.d.ts +12 -3
  348. package/dist/esm/message-bar/message-bar.options.js +13 -3
  349. package/dist/esm/message-bar/message-bar.options.js.map +1 -1
  350. package/dist/esm/message-bar/message-bar.template.d.ts +3 -3
  351. package/dist/esm/message-bar/message-bar.template.js +3 -3
  352. package/dist/esm/option/index.d.ts +1 -0
  353. package/dist/esm/option/index.js +1 -0
  354. package/dist/esm/option/index.js.map +1 -1
  355. package/dist/esm/option/option.definition.js +2 -2
  356. package/dist/esm/option/option.definition.js.map +1 -1
  357. package/dist/esm/option/option.js +1 -1
  358. package/dist/esm/option/option.js.map +1 -1
  359. package/dist/esm/option/option.options.d.ts +6 -0
  360. package/dist/esm/option/option.options.js +7 -0
  361. package/dist/esm/option/option.options.js.map +1 -1
  362. package/dist/esm/patterns/start-end.d.ts +1 -1
  363. package/dist/esm/patterns/start-end.js +1 -1
  364. package/dist/esm/patterns/start-end.js.map +1 -1
  365. package/dist/esm/progress-bar/index.d.ts +1 -0
  366. package/dist/esm/progress-bar/index.js +1 -0
  367. package/dist/esm/progress-bar/index.js.map +1 -1
  368. package/dist/esm/progress-bar/progress-bar.base.d.ts +35 -8
  369. package/dist/esm/progress-bar/progress-bar.base.js +41 -20
  370. package/dist/esm/progress-bar/progress-bar.base.js.map +1 -1
  371. package/dist/esm/progress-bar/progress-bar.d.ts +8 -2
  372. package/dist/esm/progress-bar/progress-bar.definition.js +2 -2
  373. package/dist/esm/progress-bar/progress-bar.definition.js.map +1 -1
  374. package/dist/esm/progress-bar/progress-bar.js.map +1 -1
  375. package/dist/esm/progress-bar/progress-bar.options.d.ts +7 -1
  376. package/dist/esm/progress-bar/progress-bar.options.js +7 -0
  377. package/dist/esm/progress-bar/progress-bar.options.js.map +1 -1
  378. package/dist/esm/progress-bar/progress-bar.styles.js +5 -3
  379. package/dist/esm/progress-bar/progress-bar.styles.js.map +1 -1
  380. package/dist/esm/radio/index.d.ts +1 -0
  381. package/dist/esm/radio/index.js +1 -0
  382. package/dist/esm/radio/index.js.map +1 -1
  383. package/dist/esm/radio/radio.d.ts +1 -1
  384. package/dist/esm/radio/radio.definition.js +2 -2
  385. package/dist/esm/radio/radio.definition.js.map +1 -1
  386. package/dist/esm/radio/radio.js +1 -1
  387. package/dist/esm/radio/radio.options.d.ts +15 -0
  388. package/dist/esm/radio/radio.options.js +19 -1
  389. package/dist/esm/radio/radio.options.js.map +1 -1
  390. package/dist/esm/radio/radio.styles.js +4 -3
  391. package/dist/esm/radio/radio.styles.js.map +1 -1
  392. package/dist/esm/radio/radio.template.js +1 -1
  393. package/dist/esm/radio/radio.template.js.map +1 -1
  394. package/dist/esm/radio-group/index.d.ts +2 -0
  395. package/dist/esm/radio-group/index.js +2 -0
  396. package/dist/esm/radio-group/index.js.map +1 -1
  397. package/dist/esm/radio-group/radio-group.base.d.ts +272 -0
  398. package/dist/esm/radio-group/radio-group.base.js +438 -0
  399. package/dist/esm/radio-group/radio-group.base.js.map +1 -0
  400. package/dist/esm/radio-group/radio-group.d.ts +8 -273
  401. package/dist/esm/radio-group/radio-group.definition.js +2 -2
  402. package/dist/esm/radio-group/radio-group.definition.js.map +1 -1
  403. package/dist/esm/radio-group/radio-group.js +20 -492
  404. package/dist/esm/radio-group/radio-group.js.map +1 -1
  405. package/dist/esm/radio-group/radio-group.options.d.ts +7 -1
  406. package/dist/esm/radio-group/radio-group.options.js +8 -1
  407. package/dist/esm/radio-group/radio-group.options.js.map +1 -1
  408. package/dist/esm/radio-group/radio-group.styles.js +1 -1
  409. package/dist/esm/radio-group/radio-group.styles.js.map +1 -1
  410. package/dist/esm/radio-group/radio-group.template.js +3 -3
  411. package/dist/esm/radio-group/radio-group.template.js.map +1 -1
  412. package/dist/esm/rating-display/index.d.ts +1 -0
  413. package/dist/esm/rating-display/index.js +1 -0
  414. package/dist/esm/rating-display/index.js.map +1 -1
  415. package/dist/esm/rating-display/rating-display.base.d.ts +11 -1
  416. package/dist/esm/rating-display/rating-display.base.js +24 -11
  417. package/dist/esm/rating-display/rating-display.base.js.map +1 -1
  418. package/dist/esm/rating-display/rating-display.definition.js +2 -2
  419. package/dist/esm/rating-display/rating-display.definition.js.map +1 -1
  420. package/dist/esm/rating-display/rating-display.options.d.ts +7 -1
  421. package/dist/esm/rating-display/rating-display.options.js +7 -0
  422. package/dist/esm/rating-display/rating-display.options.js.map +1 -1
  423. package/dist/esm/rating-display/rating-display.styles.js +5 -3
  424. package/dist/esm/rating-display/rating-display.styles.js.map +1 -1
  425. package/dist/esm/slider/index.d.ts +1 -0
  426. package/dist/esm/slider/index.js +1 -0
  427. package/dist/esm/slider/index.js.map +1 -1
  428. package/dist/esm/slider/slider-utilities.d.ts +1 -1
  429. package/dist/esm/slider/slider-utilities.js +2 -1
  430. package/dist/esm/slider/slider-utilities.js.map +1 -1
  431. package/dist/esm/slider/slider.d.ts +9 -4
  432. package/dist/esm/slider/slider.definition.js +2 -2
  433. package/dist/esm/slider/slider.definition.js.map +1 -1
  434. package/dist/esm/slider/slider.js +55 -35
  435. package/dist/esm/slider/slider.js.map +1 -1
  436. package/dist/esm/slider/slider.options.d.ts +9 -2
  437. package/dist/esm/slider/slider.options.js +8 -1
  438. package/dist/esm/slider/slider.options.js.map +1 -1
  439. package/dist/esm/slider/slider.styles.js +5 -3
  440. package/dist/esm/slider/slider.styles.js.map +1 -1
  441. package/dist/esm/spinner/index.d.ts +1 -0
  442. package/dist/esm/spinner/index.js +1 -0
  443. package/dist/esm/spinner/index.js.map +1 -1
  444. package/dist/esm/spinner/spinner.definition.js +2 -2
  445. package/dist/esm/spinner/spinner.definition.js.map +1 -1
  446. package/dist/esm/spinner/spinner.options.d.ts +7 -1
  447. package/dist/esm/spinner/spinner.options.js +7 -0
  448. package/dist/esm/spinner/spinner.options.js.map +1 -1
  449. package/dist/esm/spinner/spinner.styles.js +5 -3
  450. package/dist/esm/spinner/spinner.styles.js.map +1 -1
  451. package/dist/esm/styles/index.d.ts +2 -1
  452. package/dist/esm/styles/index.js +2 -1
  453. package/dist/esm/styles/index.js.map +1 -1
  454. package/dist/esm/styles/partials/badge.partials.d.ts +2 -1
  455. package/dist/esm/styles/partials/badge.partials.js +3 -2
  456. package/dist/esm/styles/partials/badge.partials.js.map +1 -1
  457. package/dist/esm/switch/index.d.ts +1 -0
  458. package/dist/esm/switch/index.js +1 -0
  459. package/dist/esm/switch/index.js.map +1 -1
  460. package/dist/esm/switch/switch.d.ts +1 -1
  461. package/dist/esm/switch/switch.definition.js +2 -2
  462. package/dist/esm/switch/switch.definition.js.map +1 -1
  463. package/dist/esm/switch/switch.options.d.ts +7 -1
  464. package/dist/esm/switch/switch.options.js +7 -0
  465. package/dist/esm/switch/switch.options.js.map +1 -1
  466. package/dist/esm/switch/switch.styles.js +4 -3
  467. package/dist/esm/switch/switch.styles.js.map +1 -1
  468. package/dist/esm/switch/switch.template.js +1 -1
  469. package/dist/esm/switch/switch.template.js.map +1 -1
  470. package/dist/esm/tab/index.d.ts +1 -0
  471. package/dist/esm/tab/index.js +1 -0
  472. package/dist/esm/tab/index.js.map +1 -1
  473. package/dist/esm/tab/tab.d.ts +15 -1
  474. package/dist/esm/tab/tab.definition.js +2 -2
  475. package/dist/esm/tab/tab.definition.js.map +1 -1
  476. package/dist/esm/tab/tab.js +26 -2
  477. package/dist/esm/tab/tab.js.map +1 -1
  478. package/dist/esm/tab/tab.options.d.ts +6 -0
  479. package/dist/esm/tab/tab.options.js +7 -0
  480. package/dist/esm/tab/tab.options.js.map +1 -1
  481. package/dist/esm/tab/tab.styles.js +23 -3
  482. package/dist/esm/tab/tab.styles.js.map +1 -1
  483. package/dist/esm/tab/tab.template.js +2 -2
  484. package/dist/esm/tab/tab.template.js.map +1 -1
  485. package/dist/esm/tablist/index.d.ts +1 -0
  486. package/dist/esm/tablist/index.js +1 -0
  487. package/dist/esm/tablist/index.js.map +1 -1
  488. package/dist/esm/tablist/tablist.base.d.ts +15 -46
  489. package/dist/esm/tablist/tablist.base.js +114 -209
  490. package/dist/esm/tablist/tablist.base.js.map +1 -1
  491. package/dist/esm/tablist/tablist.d.ts +7 -74
  492. package/dist/esm/tablist/tablist.definition.js +2 -2
  493. package/dist/esm/tablist/tablist.definition.js.map +1 -1
  494. package/dist/esm/tablist/tablist.js +22 -132
  495. package/dist/esm/tablist/tablist.js.map +1 -1
  496. package/dist/esm/tablist/tablist.options.d.ts +7 -1
  497. package/dist/esm/tablist/tablist.options.js +8 -1
  498. package/dist/esm/tablist/tablist.options.js.map +1 -1
  499. package/dist/esm/tablist/tablist.styles.js +83 -65
  500. package/dist/esm/tablist/tablist.styles.js.map +1 -1
  501. package/dist/esm/tablist/tablist.template.js +5 -1
  502. package/dist/esm/tablist/tablist.template.js.map +1 -1
  503. package/dist/esm/text/index.d.ts +1 -0
  504. package/dist/esm/text/index.js +1 -0
  505. package/dist/esm/text/index.js.map +1 -1
  506. package/dist/esm/text/text.definition.js +2 -2
  507. package/dist/esm/text/text.definition.js.map +1 -1
  508. package/dist/esm/text/text.options.d.ts +7 -1
  509. package/dist/esm/text/text.options.js +7 -0
  510. package/dist/esm/text/text.options.js.map +1 -1
  511. package/dist/esm/text/text.styles.js +1 -1
  512. package/dist/esm/text/text.styles.js.map +1 -1
  513. package/dist/esm/text-input/index.d.ts +1 -0
  514. package/dist/esm/text-input/index.js +1 -0
  515. package/dist/esm/text-input/index.js.map +1 -1
  516. package/dist/esm/text-input/text-input.base.js +12 -5
  517. package/dist/esm/text-input/text-input.base.js.map +1 -1
  518. package/dist/esm/text-input/text-input.definition.js +2 -2
  519. package/dist/esm/text-input/text-input.definition.js.map +1 -1
  520. package/dist/esm/text-input/text-input.options.d.ts +6 -0
  521. package/dist/esm/text-input/text-input.options.js +7 -0
  522. package/dist/esm/text-input/text-input.options.js.map +1 -1
  523. package/dist/esm/text-input/text-input.template.d.ts +1 -1
  524. package/dist/esm/text-input/text-input.template.js +2 -8
  525. package/dist/esm/text-input/text-input.template.js.map +1 -1
  526. package/dist/esm/textarea/index.d.ts +1 -0
  527. package/dist/esm/textarea/index.js +1 -0
  528. package/dist/esm/textarea/index.js.map +1 -1
  529. package/dist/esm/textarea/textarea.base.d.ts +12 -3
  530. package/dist/esm/textarea/textarea.base.js +43 -25
  531. package/dist/esm/textarea/textarea.base.js.map +1 -1
  532. package/dist/esm/textarea/textarea.definition.js +2 -2
  533. package/dist/esm/textarea/textarea.definition.js.map +1 -1
  534. package/dist/esm/textarea/textarea.options.d.ts +6 -0
  535. package/dist/esm/textarea/textarea.options.js +7 -0
  536. package/dist/esm/textarea/textarea.options.js.map +1 -1
  537. package/dist/esm/textarea/textarea.styles.js +4 -3
  538. package/dist/esm/textarea/textarea.styles.js.map +1 -1
  539. package/dist/esm/textarea/textarea.template.js +1 -1
  540. package/dist/esm/textarea/textarea.template.js.map +1 -1
  541. package/dist/esm/theme/design-tokens.d.ts +115 -0
  542. package/dist/esm/theme/design-tokens.js +115 -0
  543. package/dist/esm/theme/design-tokens.js.map +1 -1
  544. package/dist/esm/theme/index.d.ts +1 -1
  545. package/dist/esm/theme/index.js +1 -1
  546. package/dist/esm/theme/index.js.map +1 -1
  547. package/dist/esm/theme/set-theme.d.ts +2 -7
  548. package/dist/esm/theme/set-theme.js +2 -9
  549. package/dist/esm/theme/set-theme.js.map +1 -1
  550. package/dist/esm/toggle-button/index.d.ts +1 -0
  551. package/dist/esm/toggle-button/index.js +1 -0
  552. package/dist/esm/toggle-button/index.js.map +1 -1
  553. package/dist/esm/toggle-button/toggle-button.definition.js +2 -2
  554. package/dist/esm/toggle-button/toggle-button.definition.js.map +1 -1
  555. package/dist/esm/toggle-button/toggle-button.options.d.ts +8 -2
  556. package/dist/esm/toggle-button/toggle-button.options.js +7 -0
  557. package/dist/esm/toggle-button/toggle-button.options.js.map +1 -1
  558. package/dist/esm/toggle-button/toggle-button.styles.js +4 -3
  559. package/dist/esm/toggle-button/toggle-button.styles.js.map +1 -1
  560. package/dist/esm/tooltip/index.d.ts +1 -0
  561. package/dist/esm/tooltip/index.js +1 -0
  562. package/dist/esm/tooltip/index.js.map +1 -1
  563. package/dist/esm/tooltip/tooltip.d.ts +2 -2
  564. package/dist/esm/tooltip/tooltip.definition.js +2 -2
  565. package/dist/esm/tooltip/tooltip.definition.js.map +1 -1
  566. package/dist/esm/tooltip/tooltip.js +3 -3
  567. package/dist/esm/tooltip/tooltip.js.map +1 -1
  568. package/dist/esm/tooltip/tooltip.options.d.ts +6 -0
  569. package/dist/esm/tooltip/tooltip.options.js +7 -0
  570. package/dist/esm/tooltip/tooltip.options.js.map +1 -1
  571. package/dist/esm/tree/index.d.ts +1 -0
  572. package/dist/esm/tree/index.js +1 -0
  573. package/dist/esm/tree/index.js.map +1 -1
  574. package/dist/esm/tree/tree.base.d.ts +13 -28
  575. package/dist/esm/tree/tree.base.js +37 -106
  576. package/dist/esm/tree/tree.base.js.map +1 -1
  577. package/dist/esm/tree/tree.d.ts +13 -2
  578. package/dist/esm/tree/tree.definition.js +2 -2
  579. package/dist/esm/tree/tree.definition.js.map +1 -1
  580. package/dist/esm/tree/tree.js +31 -2
  581. package/dist/esm/tree/tree.js.map +1 -1
  582. package/dist/esm/tree/tree.options.d.ts +6 -0
  583. package/dist/esm/tree/tree.options.js +8 -0
  584. package/dist/esm/tree/tree.options.js.map +1 -0
  585. package/dist/esm/tree/tree.template.js +2 -3
  586. package/dist/esm/tree/tree.template.js.map +1 -1
  587. package/dist/esm/tree-item/index.d.ts +1 -0
  588. package/dist/esm/tree-item/index.js +1 -0
  589. package/dist/esm/tree-item/index.js.map +1 -1
  590. package/dist/esm/tree-item/tree-item.base.d.ts +21 -5
  591. package/dist/esm/tree-item/tree-item.base.js +46 -18
  592. package/dist/esm/tree-item/tree-item.base.js.map +1 -1
  593. package/dist/esm/tree-item/tree-item.definition.js +2 -2
  594. package/dist/esm/tree-item/tree-item.definition.js.map +1 -1
  595. package/dist/esm/tree-item/tree-item.options.d.ts +6 -0
  596. package/dist/esm/tree-item/tree-item.options.js +7 -0
  597. package/dist/esm/tree-item/tree-item.options.js.map +1 -1
  598. package/dist/esm/tree-item/tree-item.template.js +1 -1
  599. package/dist/esm/tree-item/tree-item.template.js.map +1 -1
  600. package/dist/esm/utils/direction.d.ts +13 -1
  601. package/dist/esm/utils/direction.js +8 -1
  602. package/dist/esm/utils/direction.js.map +1 -1
  603. package/dist/esm/utils/focusable-element.js +2 -1
  604. package/dist/esm/utils/focusable-element.js.map +1 -1
  605. package/dist/esm/utils/focusgroup.d.ts +22 -0
  606. package/dist/esm/utils/focusgroup.js +42 -0
  607. package/dist/esm/utils/focusgroup.js.map +1 -0
  608. package/dist/esm/utils/index.d.ts +2 -1
  609. package/dist/esm/utils/index.js +2 -1
  610. package/dist/esm/utils/index.js.map +1 -1
  611. package/dist/esm/utils/numbers.d.ts +5 -0
  612. package/dist/esm/utils/numbers.js +9 -0
  613. package/dist/esm/utils/numbers.js.map +1 -0
  614. package/dist/esm/utils/orientation.d.ts +13 -0
  615. package/dist/esm/utils/orientation.js +10 -0
  616. package/dist/esm/utils/orientation.js.map +1 -0
  617. package/dist/esm/utils/request-idle-callback.d.ts +15 -0
  618. package/dist/esm/utils/request-idle-callback.js +11 -10
  619. package/dist/esm/utils/request-idle-callback.js.map +1 -1
  620. package/dist/esm/utils/typings.d.ts +12 -0
  621. package/dist/esm/utils/typings.js +21 -1
  622. package/dist/esm/utils/typings.js.map +1 -1
  623. package/dist/web-components-all.js +14974 -0
  624. package/dist/web-components-all.min.js +47 -0
  625. package/dist/web-components.d.ts +1176 -1213
  626. package/dist/web-components.js +7775 -7302
  627. package/dist/web-components.min.js +29 -565
  628. package/package.json +23 -10
  629. package/dist/esm/tab-panel/define.d.ts +0 -1
  630. package/dist/esm/tab-panel/define.js +0 -7
  631. package/dist/esm/tab-panel/define.js.map +0 -1
  632. package/dist/esm/tab-panel/index.d.ts +0 -4
  633. package/dist/esm/tab-panel/index.js +0 -5
  634. package/dist/esm/tab-panel/index.js.map +0 -1
  635. package/dist/esm/tab-panel/tab-panel.bench.d.ts +0 -3
  636. package/dist/esm/tab-panel/tab-panel.bench.js +0 -13
  637. package/dist/esm/tab-panel/tab-panel.bench.js.map +0 -1
  638. package/dist/esm/tab-panel/tab-panel.d.ts +0 -8
  639. package/dist/esm/tab-panel/tab-panel.definition.d.ts +0 -5
  640. package/dist/esm/tab-panel/tab-panel.definition.js +0 -13
  641. package/dist/esm/tab-panel/tab-panel.definition.js.map +0 -1
  642. package/dist/esm/tab-panel/tab-panel.js +0 -9
  643. package/dist/esm/tab-panel/tab-panel.js.map +0 -1
  644. package/dist/esm/tab-panel/tab-panel.styles.d.ts +0 -1
  645. package/dist/esm/tab-panel/tab-panel.styles.js +0 -12
  646. package/dist/esm/tab-panel/tab-panel.styles.js.map +0 -1
  647. package/dist/esm/tab-panel/tab-panel.template.d.ts +0 -7
  648. package/dist/esm/tab-panel/tab-panel.template.js +0 -13
  649. package/dist/esm/tab-panel/tab-panel.template.js.map +0 -1
  650. package/dist/esm/tabs/define.d.ts +0 -1
  651. package/dist/esm/tabs/define.js +0 -7
  652. package/dist/esm/tabs/define.js.map +0 -1
  653. package/dist/esm/tabs/index.d.ts +0 -6
  654. package/dist/esm/tabs/index.js +0 -6
  655. package/dist/esm/tabs/index.js.map +0 -1
  656. package/dist/esm/tabs/tabs.base.d.ts +0 -90
  657. package/dist/esm/tabs/tabs.base.js +0 -279
  658. package/dist/esm/tabs/tabs.base.js.map +0 -1
  659. package/dist/esm/tabs/tabs.bench.d.ts +0 -3
  660. package/dist/esm/tabs/tabs.bench.js +0 -32
  661. package/dist/esm/tabs/tabs.bench.js.map +0 -1
  662. package/dist/esm/tabs/tabs.d.ts +0 -100
  663. package/dist/esm/tabs/tabs.definition.d.ts +0 -5
  664. package/dist/esm/tabs/tabs.definition.js +0 -13
  665. package/dist/esm/tabs/tabs.definition.js.map +0 -1
  666. package/dist/esm/tabs/tabs.js +0 -180
  667. package/dist/esm/tabs/tabs.js.map +0 -1
  668. package/dist/esm/tabs/tabs.options.d.ts +0 -32
  669. package/dist/esm/tabs/tabs.options.js +0 -16
  670. package/dist/esm/tabs/tabs.options.js.map +0 -1
  671. package/dist/esm/tabs/tabs.styles.d.ts +0 -1
  672. package/dist/esm/tabs/tabs.styles.js +0 -230
  673. package/dist/esm/tabs/tabs.styles.js.map +0 -1
  674. package/dist/esm/tabs/tabs.template.d.ts +0 -8
  675. package/dist/esm/tabs/tabs.template.js +0 -19
  676. package/dist/esm/tabs/tabs.template.js.map +0 -1
  677. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.d.ts +0 -124
  678. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js +0 -142
  679. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js.map +0 -1
@@ -1,14 +1,10 @@
1
1
  import { CaptureType } from '@microsoft/fast-element';
2
2
  import { CSSDirective } from '@microsoft/fast-element';
3
- import { Direction } from '@microsoft/fast-web-utilities';
4
3
  import { ElementStyles } from '@microsoft/fast-element';
5
4
  import { ElementViewTemplate } from '@microsoft/fast-element';
6
5
  import { FASTElement } from '@microsoft/fast-element';
7
6
  import { FASTElementDefinition } from '@microsoft/fast-element';
8
- import type { HostBehavior } from '@microsoft/fast-element';
9
- import type { HostController } from '@microsoft/fast-element';
10
7
  import { HTMLDirective } from '@microsoft/fast-element';
11
- import { Orientation } from '@microsoft/fast-web-utilities';
12
8
  import { SyntheticViewTemplate } from '@microsoft/fast-element';
13
9
  import { ViewTemplate } from '@microsoft/fast-element';
14
10
 
@@ -33,7 +29,7 @@ export declare class Accordion extends FASTElement {
33
29
  * HTML attribute: expand-mode
34
30
  */
35
31
  expandmode: AccordionExpandMode;
36
- expandmodeChanged(prev: AccordionExpandMode, next: AccordionExpandMode): void;
32
+ expandmodeChanged(prev: AccordionExpandMode | undefined, next: AccordionExpandMode): void;
37
33
  /**
38
34
  * @internal
39
35
  */
@@ -46,6 +42,11 @@ export declare class Accordion extends FASTElement {
46
42
  * @internal
47
43
  */
48
44
  slottedAccordionItemsChanged(oldValue: HTMLElement[], newValue: HTMLElement[]): void;
45
+ /**
46
+ * Guard flag to prevent re-entrant calls to setSingleExpandMode.
47
+ * @internal
48
+ */
49
+ private _isAdjusting;
49
50
  /**
50
51
  * Watch for changes to the slotted accordion items `disabled` and `expanded` attributes
51
52
  * @internal
@@ -54,37 +55,35 @@ export declare class Accordion extends FASTElement {
54
55
  private activeItemIndex;
55
56
  /**
56
57
  * Find the first expanded item in the accordion
57
- * @returns {void}
58
58
  */
59
59
  private findExpandedItem;
60
60
  /**
61
61
  * Resets event listeners and sets the `accordionItems` property
62
62
  * then rebinds event listeners to each non-disabled item
63
- * @returns {void}
64
63
  */
65
64
  private setItems;
66
65
  /**
67
66
  * Checks if the accordion is in single expand mode
68
- * @returns {boolean}
67
+ * @returns true if the accordion is in single expand mode.
69
68
  */
70
69
  private isSingleExpandMode;
71
70
  /**
72
71
  * Controls the behavior of the accordion in single expand mode
73
- * @param expandedItem The item to expand in single expand mode
74
- * @returns {void}
72
+ * @param expandedItem - The item to expand in single expand mode
75
73
  */
76
74
  private setSingleExpandMode;
77
75
  /**
78
76
  * Removes event listeners from the previous accordion items
79
- * @param oldValue An array of the previous accordion items
77
+ * @param oldValue - An array of the previous accordion items
80
78
  */
81
79
  private removeItemListeners;
82
80
  /**
83
81
  * Changes the expanded state of the accordion item
84
- * @param evt Click event
82
+ * @param evt - Click event
85
83
  * @returns
86
84
  */
87
85
  private expandedChangedHandler;
86
+ connectedCallback(): void;
88
87
  }
89
88
 
90
89
  /**
@@ -817,14 +816,6 @@ export declare class BaseAccordionItem extends FASTElement {
817
816
  * HTML attribute: disabled
818
817
  */
819
818
  disabled: boolean;
820
- /**
821
- * The item ID
822
- *
823
- * @public
824
- * @remarks
825
- * HTML Attribute: id
826
- */
827
- id: string;
828
819
  /**
829
820
  * @internal
830
821
  */
@@ -960,7 +951,7 @@ export declare class BaseAnchor extends FASTElement {
960
951
  keydownHandler(e: KeyboardEvent): boolean | void;
961
952
  /**
962
953
  * Handles navigation based on input
963
- * If the metaKey is pressed, opens the href in a new window, if false, uses the click on the proxy
954
+ * If a modified activation requests a new tab, opens the href in a new window.
964
955
  * @internal
965
956
  */
966
957
  private handleNavigation;
@@ -980,16 +971,50 @@ export declare class BaseAnchor extends FASTElement {
980
971
  */
981
972
  export declare class BaseAvatar extends FASTElement {
982
973
  /**
983
- * Signal to remove event listeners when the component is disconnected.
974
+ * Reference to the default slot element.
984
975
  *
985
976
  * @internal
986
977
  */
987
- private abortSignal?;
978
+ defaultSlot: HTMLSlotElement;
988
979
  /**
989
- * Reference to the default slot element.
980
+ * Handles changes to the default slot element reference.
981
+ *
982
+ * Toggles the `has-slotted` class on the slot element for browsers that do not
983
+ * support the `:has-slotted` CSS selector. Defers cleanup using
984
+ * `Updates.enqueue` to avoid DOM mutations during hydration that could
985
+ * corrupt binding markers.
986
+ *
990
987
  * @internal
991
988
  */
992
- defaultSlot: HTMLSlotElement;
989
+ defaultSlotChanged(): void;
990
+ /**
991
+ * Reference to the monogram element that displays generated initials.
992
+ *
993
+ * @internal
994
+ */
995
+ monogram: HTMLElement;
996
+ /**
997
+ * Updates the monogram text content when the ref is captured.
998
+ *
999
+ * @internal
1000
+ */
1001
+ protected monogramChanged(): void;
1002
+ /**
1003
+ * The slotted content nodes assigned to the default slot.
1004
+ *
1005
+ * @internal
1006
+ */
1007
+ slottedDefaults: Node[];
1008
+ /**
1009
+ * Handles changes to the slotted default content.
1010
+ *
1011
+ * Normalizes the DOM, toggles the `has-slotted` class on the default slot element
1012
+ * for browsers that do not support the `:has-slotted` CSS selector, and removes
1013
+ * empty text nodes from the default slot to keep the DOM clean.
1014
+ *
1015
+ * @internal
1016
+ */
1017
+ protected slottedDefaultsChanged(): void;
993
1018
  /**
994
1019
  * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
995
1020
  *
@@ -1004,24 +1029,44 @@ export declare class BaseAvatar extends FASTElement {
1004
1029
  * HTML Attribute: name
1005
1030
  */
1006
1031
  name?: string | undefined;
1032
+ /**
1033
+ * Handles changes to the name attribute.
1034
+ * @internal
1035
+ */
1036
+ protected nameChanged(): void;
1007
1037
  /**
1008
1038
  * Provide custom initials rather than one generated via the name
1009
1039
  *
1010
1040
  * @public
1011
1041
  * @remarks
1012
- * HTML Attribute: name
1042
+ * HTML Attribute: initials
1013
1043
  */
1014
1044
  initials?: string | undefined;
1015
- connectedCallback(): void;
1045
+ /**
1046
+ * Handles changes to the initials attribute.
1047
+ * @internal
1048
+ */
1049
+ protected initialsChanged(): void;
1016
1050
  constructor();
1017
- disconnectedCallback(): void;
1018
1051
  /**
1019
- * Removes any empty text nodes from the default slot when the slotted content changes.
1052
+ * Generates and sets the initials for the template.
1053
+ * Subclasses should override this to provide custom initials logic.
1054
+ *
1055
+ * @internal
1056
+ */
1057
+ generateInitials(): string | void;
1058
+ /**
1059
+ * Updates the monogram element's text content with the generated initials.
1060
+ *
1061
+ * @internal
1062
+ */
1063
+ protected updateMonogram(): void;
1064
+ /**
1065
+ * Normalizes the DOM and removes empty text nodes from the default slot.
1020
1066
  *
1021
- * @param e - The event object
1022
1067
  * @internal
1023
1068
  */
1024
- slotchangeHandler(): void;
1069
+ protected cleanupSlottedContent(): void;
1025
1070
  }
1026
1071
 
1027
1072
  /**
@@ -1060,7 +1105,15 @@ export declare class BaseButton extends FASTElement {
1060
1105
  * HTML Attribute: `disabled`
1061
1106
  */
1062
1107
  disabled: boolean;
1063
- protected disabledChanged(): void;
1108
+ /**
1109
+ * Handles changes to the disabled attribute. If the button is disabled, it
1110
+ * should not be focusable.
1111
+ *
1112
+ * @param previous - the previous disabled value
1113
+ * @param next - the new disabled value
1114
+ * @internal
1115
+ */
1116
+ disabledChanged(): void;
1064
1117
  /**
1065
1118
  * Indicates that the button is focusable while disabled.
1066
1119
  *
@@ -1250,6 +1303,12 @@ export declare class BaseButton extends FASTElement {
1250
1303
  * @public
1251
1304
  */
1252
1305
  resetForm(): void;
1306
+ /**
1307
+ * Sets the `tabindex` attribute based on the disabled state of the button.
1308
+ *
1309
+ * @internal
1310
+ */
1311
+ protected setTabIndex(): void;
1253
1312
  /**
1254
1313
  * Submits the associated form.
1255
1314
  *
@@ -1555,6 +1614,61 @@ export declare class BaseCheckbox extends FASTElement {
1555
1614
  toggleChecked(force?: boolean): void;
1556
1615
  }
1557
1616
 
1617
+ /**
1618
+ * The base class used for constructing a fluent-counter-badge custom element.
1619
+ * Contains the count-related state and display logic, without any visual
1620
+ * appearance attributes.
1621
+ *
1622
+ * @public
1623
+ */
1624
+ export declare class BaseCounterBadge extends FASTElement {
1625
+ /**
1626
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
1627
+ *
1628
+ * @internal
1629
+ */
1630
+ elementInternals: ElementInternals;
1631
+ /**
1632
+ * The count to be displayed in the badge.
1633
+ *
1634
+ * @public
1635
+ * @remarks
1636
+ * HTML Attribute: `count`
1637
+ */
1638
+ count: number;
1639
+ /**
1640
+ * The maximum count to be displayed before showing the overflow count (e.g. "99+").
1641
+ *
1642
+ * @public
1643
+ * @remarks
1644
+ * HTML Attribute: `overflow-count`
1645
+ */
1646
+ overflowCount: number;
1647
+ /**
1648
+ * Whether to show the badge when the count is zero. By default, the badge will be hidden when the count is zero.
1649
+ *
1650
+ * @public
1651
+ * @remarks
1652
+ * HTML Attribute: `show-zero`
1653
+ */
1654
+ showZero: boolean;
1655
+ /**
1656
+ * Whether to display the badge as a dot. When true, the badge will be displayed as a dot and the count will not be
1657
+ * shown.
1658
+ *
1659
+ * @public
1660
+ * @remarks
1661
+ * HTML Attribute: `dot`
1662
+ */
1663
+ dot: boolean;
1664
+ /**
1665
+ * The value to be displayed in the badge, which is determined by the `count`, `overflow-count`, and `show-zero` attributes.
1666
+ *
1667
+ * @public
1668
+ */
1669
+ get displayValue(): string | undefined;
1670
+ }
1671
+
1558
1672
  /**
1559
1673
  * A Divider Custom HTML Element.
1560
1674
  * A divider groups sections of content to create visual rhythm and hierarchy. Use dividers along with spacing and headers to organize content in your layout.
@@ -2019,6 +2133,11 @@ export declare class BaseDropdown extends FASTElement {
2019
2133
  * @public
2020
2134
  */
2021
2135
  inputHandler(e: InputEvent): boolean | void;
2136
+ /**
2137
+ * Guard flag to prevent reentrant calls to `insertControl`.
2138
+ * @internal
2139
+ */
2140
+ private _insertingControl;
2022
2141
  /**
2023
2142
  * Inserts the control element based on the dropdown type.
2024
2143
  *
@@ -2083,6 +2202,7 @@ export declare class BaseDropdown extends FASTElement {
2083
2202
  * @internal
2084
2203
  */
2085
2204
  protected updateFreeformOption(value?: string): void;
2205
+ connectedCallback(): void;
2086
2206
  disconnectedCallback(): void;
2087
2207
  /**
2088
2208
  * When anchor positioning isn't supported, an intersection observer is used to flip the listbox when it hits the
@@ -2215,6 +2335,62 @@ export declare class BaseField extends FASTElement {
2215
2335
  setValidationStates(): void;
2216
2336
  }
2217
2337
 
2338
+ /**
2339
+ * A Base MenuList Custom HTML Element.
2340
+ * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#menu | ARIA menu }.
2341
+ *
2342
+ * @public
2343
+ */
2344
+ export declare class BaseMenuList extends FASTElement {
2345
+ /**
2346
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2347
+ *
2348
+ * @internal
2349
+ */
2350
+ elementInternals: ElementInternals;
2351
+ /**
2352
+ * @internal
2353
+ */
2354
+ items: HTMLElement[];
2355
+ protected itemsChanged(oldValue: HTMLElement[], newValue: HTMLElement[]): void;
2356
+ protected menuChildren: HTMLElement[] | undefined;
2357
+ protected menuItems: MenuItem[] | undefined;
2358
+ private static focusableElementRoles;
2359
+ constructor();
2360
+ /**
2361
+ * @internal
2362
+ */
2363
+ connectedCallback(): void;
2364
+ /**
2365
+ * @internal
2366
+ */
2367
+ disconnectedCallback(): void;
2368
+ /**
2369
+ * @internal
2370
+ */
2371
+ readonly isNestedMenu: () => boolean;
2372
+ /**
2373
+ * Focuses the first item in the menu.
2374
+ *
2375
+ * @public
2376
+ */
2377
+ focus(): void;
2378
+ private static elementIndent;
2379
+ protected setItems(): void;
2380
+ /**
2381
+ * Method for Observable changes to the hidden attribute of child elements
2382
+ */
2383
+ handleChange(source: any, propertyName: string): void;
2384
+ /**
2385
+ * Handle change from child MenuItem element and set radio group behavior
2386
+ */
2387
+ private changedMenuItemHandler;
2388
+ /**
2389
+ * check if the item is a menu item
2390
+ */
2391
+ protected isMenuItemElement(el: Element): el is MenuItem;
2392
+ }
2393
+
2218
2394
  /**
2219
2395
  * A Progress HTML Element.
2220
2396
  * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#progressbar | ARIA progressbar }.
@@ -2222,8 +2398,17 @@ export declare class BaseField extends FASTElement {
2222
2398
  * @public
2223
2399
  */
2224
2400
  export declare class BaseProgressBar extends FASTElement {
2225
- /** @internal */
2226
- indicator: HTMLElement;
2401
+ /**
2402
+ * Reference to the indicator element which visually represents the progress.
2403
+ *
2404
+ * @internal
2405
+ */
2406
+ indicator?: HTMLElement;
2407
+ /**
2408
+ * Updates the indicator width after the element is connected to the DOM via the template.
2409
+ * @internal
2410
+ */
2411
+ protected indicatorChanged(): void;
2227
2412
  /**
2228
2413
  * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2229
2414
  *
@@ -2232,8 +2417,11 @@ export declare class BaseProgressBar extends FASTElement {
2232
2417
  elementInternals: ElementInternals;
2233
2418
  /**
2234
2419
  * The validation state of the progress bar
2235
- * @public
2420
+ * The validation state of the progress bar
2421
+ *
2236
2422
  * HTML Attribute: `validation-state`
2423
+ *
2424
+ * @public
2237
2425
  */
2238
2426
  validationState: ProgressBarValidationState | null;
2239
2427
  /**
@@ -2244,8 +2432,11 @@ export declare class BaseProgressBar extends FASTElement {
2244
2432
  validationStateChanged(prev: ProgressBarValidationState | undefined, next: ProgressBarValidationState | undefined): void;
2245
2433
  /**
2246
2434
  * The value of the progress
2247
- * @internal
2435
+ * The value of the progress
2436
+ *
2248
2437
  * HTML Attribute: `value`
2438
+ *
2439
+ * @internal
2249
2440
  */
2250
2441
  value?: number;
2251
2442
  /**
@@ -2256,8 +2447,11 @@ export declare class BaseProgressBar extends FASTElement {
2256
2447
  protected valueChanged(prev: number | undefined, next: number | undefined): void;
2257
2448
  /**
2258
2449
  * The minimum value
2259
- * @internal
2450
+ * The minimum value
2451
+ *
2260
2452
  * HTML Attribute: `min`
2453
+ *
2454
+ * @internal
2261
2455
  */
2262
2456
  min?: number;
2263
2457
  /**
@@ -2269,8 +2463,11 @@ export declare class BaseProgressBar extends FASTElement {
2269
2463
  protected minChanged(prev: number | undefined, next: number | undefined): void;
2270
2464
  /**
2271
2465
  * The maximum value
2272
- * @internal
2466
+ * The maximum value
2467
+ *
2273
2468
  * HTML Attribute: `max`
2469
+ *
2470
+ * @internal
2274
2471
  */
2275
2472
  max?: number;
2276
2473
  /**
@@ -2282,313 +2479,295 @@ export declare class BaseProgressBar extends FASTElement {
2282
2479
  */
2283
2480
  protected maxChanged(prev: number | undefined, next: number | undefined): void;
2284
2481
  constructor();
2285
- connectedCallback(): void;
2286
- private setIndicatorWidth;
2482
+ /**
2483
+ * Sets the width of the indicator element based on the value, min, and max
2484
+ * properties. If the browser supports `width: attr(value)`, this method does
2485
+ * nothing and allows CSS to handle the width.
2486
+ *
2487
+ * @internal
2488
+ */
2489
+ protected setIndicatorWidth(): void;
2287
2490
  }
2288
2491
 
2289
2492
  /**
2290
- * The base class used for constructing a fluent-rating-display custom element
2291
- *
2292
- * @slot icon - SVG element used as the rating icon
2493
+ * A Base Radio Group Custom HTML Element.
2494
+ * Implements the {@link https://w3c.github.io/aria/#radiogroup | ARIA `radiogroup` role}.
2293
2495
  *
2294
2496
  * @public
2295
2497
  */
2296
- export declare class BaseRatingDisplay extends FASTElement {
2297
- private numberFormatter;
2498
+ export declare class BaseRadioGroup extends FASTElement {
2499
+ private isNavigating;
2298
2500
  /**
2299
- * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2501
+ * The index of the checked radio, scoped to the enabled radios.
2300
2502
  *
2301
2503
  * @internal
2302
2504
  */
2303
- elementInternals: ElementInternals;
2304
- /** @internal */
2305
- iconSlot: HTMLSlotElement;
2306
- protected defaultCustomIconViewBox: string;
2505
+ protected checkedIndex: number;
2307
2506
  /**
2308
- * The element that displays the rating icons.
2507
+ * Sets the checked state of the nearest enabled radio when the `checkedIndex` changes.
2508
+ *
2509
+ * @param prev - the previous index
2510
+ * @param next - the current index
2309
2511
  * @internal
2310
2512
  */
2311
- display: HTMLElement;
2513
+ protected checkedIndexChanged(prev: number | undefined, next: number): void;
2312
2514
  /**
2313
- * The number of ratings.
2314
- *
2315
- * @public
2316
- * @remarks
2317
- * HTML Attribute: `count`
2515
+ * Indicates that the value has been changed by the user.
2318
2516
  */
2319
- count?: number;
2517
+ private dirtyState;
2320
2518
  /**
2321
- * The `viewBox` attribute of the icon <svg> element.
2519
+ * Disables the radio group and child radios.
2322
2520
  *
2323
2521
  * @public
2324
2522
  * @remarks
2325
- * HTML Attribute: `icon-view-box`
2326
- * @deprecated Add `viewBox` attribute on the custom SVG directly.
2523
+ * HTML Attribute: `disabled`
2327
2524
  */
2328
- iconViewBox?: string;
2525
+ disabled: boolean;
2329
2526
  /**
2330
- * The maximum possible value of the rating.
2331
- * This attribute determines the number of icons displayed.
2332
- * Must be a whole number greater than 1.
2527
+ * Sets the `disabled` attribute on all child radios when the `disabled` property changes.
2333
2528
  *
2334
- * @public
2335
- * @remarks
2336
- * HTML Attribute: `max`
2529
+ * @param prev - the previous disabled value
2530
+ * @param next - the current disabled value
2531
+ * @internal
2337
2532
  */
2338
- max?: number;
2339
- protected maxChanged(): void;
2533
+ protected disabledChanged(prev?: boolean, next?: boolean): void;
2340
2534
  /**
2341
- * The value of the rating.
2535
+ * The value of the checked radio.
2342
2536
  *
2343
2537
  * @public
2344
2538
  * @remarks
2345
2539
  * HTML Attribute: `value`
2346
2540
  */
2347
- value?: number;
2348
- protected valueChanged(): void;
2349
- constructor();
2350
- connectedCallback(): void;
2541
+ initialValue?: string;
2351
2542
  /**
2352
- * Returns "count" as string, formatted according to the locale.
2543
+ * Sets the matching radio to checked when the value changes. If no radio matches the value, no radio will be checked.
2353
2544
  *
2354
- * @internal
2545
+ * @param prev - the previous value
2546
+ * @param next - the current value
2355
2547
  */
2356
- get formattedCount(): string;
2357
- /** @internal */
2358
- handleSlotChange(): void;
2359
- protected renderSlottedIcon(svg: SVGSVGElement | null): void;
2360
- protected setCustomPropertyValue(propertyName: PropertyNameForCalculation): void;
2361
- }
2362
-
2363
- /**
2364
- * The base class used for constructing a fluent-spinner custom element
2365
- * @public
2366
- */
2367
- export declare class BaseSpinner extends FASTElement {
2548
+ initialValueChanged(prev: string | undefined, next: string | undefined): void;
2368
2549
  /**
2369
- * The internal {@link https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2550
+ * The name of the radio group.
2370
2551
  *
2371
- * @internal
2552
+ * @public
2553
+ * @remarks
2554
+ * HTML Attribute: `name`
2372
2555
  */
2373
- elementInternals: ElementInternals;
2374
- constructor();
2375
- }
2376
-
2377
- /**
2378
- * A Tablist element that wraps a collection of tab elements
2379
- * @public
2380
- */
2381
- export declare class BaseTablist extends FASTElement {
2556
+ name: string;
2382
2557
  /**
2383
- * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2558
+ * Sets the `name` attribute on all child radios when the `name` property changes.
2384
2559
  *
2385
2560
  * @internal
2386
2561
  */
2387
- elementInternals: ElementInternals;
2562
+ protected nameChanged(prev: string | undefined, next: string | undefined): void;
2388
2563
  /**
2389
- * Used for disabling all click and keyboard events for the tabs, child tab elements.
2564
+ * The orientation of the group.
2565
+ *
2390
2566
  * @public
2391
2567
  * @remarks
2392
- * HTML Attribute: disabled.
2568
+ * HTML Attribute: `orientation`
2393
2569
  */
2394
- disabled: boolean;
2570
+ orientation?: RadioGroupOrientation;
2395
2571
  /**
2396
- * Handles disabled changes
2397
- * @param prev - previous value
2398
- * @param next - next value
2572
+ * Sets the ariaOrientation attribute when the orientation changes.
2399
2573
  *
2574
+ * @param prev - the previous orientation
2575
+ * @param next - the current orientation
2400
2576
  * @internal
2401
2577
  */
2402
- protected disabledChanged(prev: boolean, next: boolean): void;
2578
+ orientationChanged(prev: RadioGroupOrientation | undefined, next: RadioGroupOrientation | undefined): void;
2403
2579
  /**
2404
- * The orientation
2580
+ * The collection of all child radios.
2581
+ *
2405
2582
  * @public
2406
- * @remarks
2407
- * HTML Attribute: orientation
2408
2583
  */
2409
- orientation: TablistOrientation;
2584
+ radios: Radio[];
2410
2585
  /**
2411
- * @internal
2586
+ * Updates the enabled radios collection when properties on the child radios change.
2587
+ *
2588
+ * @param prev - the previous radios
2589
+ * @param next - the current radios
2412
2590
  */
2413
- protected orientationChanged(prev: TablistOrientation, next: TablistOrientation): void;
2591
+ radiosChanged(prev: Radio[] | undefined, next: Radio[] | undefined): void;
2414
2592
  /**
2415
- * The id of the active tab
2593
+ * Indicates whether the radio group is required.
2416
2594
  *
2417
2595
  * @public
2418
2596
  * @remarks
2419
- * HTML Attribute: activeid
2597
+ * HTML Attribute: `required`
2420
2598
  */
2421
- activeid: string;
2599
+ required: boolean;
2422
2600
  /**
2423
- * @internal
2601
+ *
2602
+ * @param prev - the previous required value
2603
+ * @param next - the current required value
2424
2604
  */
2425
- protected activeidChanged(oldValue: string, newValue: string): void;
2605
+ requiredChanged(prev: boolean, next: boolean): void;
2426
2606
  /**
2427
- * Content slotted in the tab slot.
2607
+ * The collection of radios that are slotted into the default slot.
2608
+ *
2428
2609
  * @internal
2429
2610
  */
2430
- slottedTabs: Node[];
2611
+ slottedRadios: Radio[];
2431
2612
  /**
2432
- * Updates the tabs property when content in the tabs slot changes.
2433
- * @internal
2613
+ * Updates the radios collection when the slotted radios change.
2614
+ *
2615
+ * @param prev - the previous slotted radios
2616
+ * @param next - the current slotted radios
2434
2617
  */
2435
- slottedTabsChanged(prev: Node[] | undefined, next: Node[] | undefined): void;
2618
+ slottedRadiosChanged(prev: Radio[] | undefined, next: Radio[]): void;
2436
2619
  /**
2620
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2621
+ *
2437
2622
  * @internal
2438
2623
  */
2439
- tabs: Tab[];
2624
+ elementInternals: ElementInternals;
2440
2625
  /**
2626
+ * A collection of child radios that are not disabled.
2627
+ *
2441
2628
  * @internal
2442
2629
  */
2443
- protected tabsChanged(): void;
2630
+ get enabledRadios(): Radio[];
2444
2631
  /**
2445
- * A reference to the active tab
2632
+ * The form-associated flag.
2633
+ * @see {@link https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-face-example | Form-associated custom elements}
2634
+ *
2446
2635
  * @public
2447
2636
  */
2448
- activetab: Tab;
2449
- private prevActiveTabIndex;
2450
- private activeTabIndex;
2451
- private tabIds;
2452
- private tabPanelMap;
2453
- private change;
2454
- private getActiveIndex;
2637
+ static formAssociated: boolean;
2455
2638
  /**
2456
- * Function that is invoked whenever the selected tab or the tab collection changes.
2639
+ * The fallback validation message, taken from a native checkbox `<input>` element.
2457
2640
  *
2458
- * @public
2641
+ * @internal
2642
+ */
2643
+ private _validationFallbackMessage;
2644
+ /**
2645
+ * The validation message. Uses the browser's default validation message for native checkboxes if not otherwise
2646
+ * specified (e.g., via `setCustomValidity`).
2647
+ *
2648
+ * @internal
2459
2649
  */
2460
- protected setTabs(): void;
2461
- private getTabIds;
2462
- private setComponent;
2463
- private handleTabClick;
2464
- private isHorizontal;
2465
- private handleTabKeyDown;
2650
+ get validationMessage(): string;
2466
2651
  /**
2467
- * The adjust method for FASTTabs
2652
+ * The element's validity state.
2653
+ *
2468
2654
  * @public
2469
2655
  * @remarks
2470
- * This method allows the active index to be adjusted by numerical increments
2656
+ * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/validity | `ElementInternals.validity`} property.
2471
2657
  */
2472
- adjust(adjustment: number): void;
2473
- private activateTabByIndex;
2474
- private focusTab;
2658
+ get validity(): ValidityState;
2475
2659
  /**
2476
- * @internal
2660
+ * The current value of the checked radio.
2661
+ *
2662
+ * @public
2477
2663
  */
2478
- connectedCallback(): void;
2479
- }
2480
-
2481
- /**
2482
- * A Tabs component that wraps a collection of tab and tab panel elements.
2483
- *
2484
- * @deprecated - use tablist instead
2485
- */
2486
- declare class BaseTabs extends FASTElement {
2664
+ get value(): string | null;
2665
+ set value(next: string | null);
2487
2666
  /**
2488
- * The orientation
2489
- * @public
2490
- * @remarks
2491
- * HTML Attribute: orientation
2667
+ * Sets the checked state of all radios when any radio emits a `change` event.
2668
+ *
2669
+ * @param e - the change event
2492
2670
  */
2493
- orientation: TabsOrientation;
2671
+ changeHandler(e: Event): boolean | void;
2494
2672
  /**
2673
+ * Checks the radio at the specified index.
2674
+ *
2675
+ * @param index - the index of the radio to check
2495
2676
  * @internal
2496
2677
  */
2497
- orientationChanged(): void;
2678
+ checkRadio(index?: number, shouldEmit?: boolean): void;
2498
2679
  /**
2499
- * The id of the active tab
2680
+ * Checks the validity of the element and returns the result.
2500
2681
  *
2501
2682
  * @public
2502
2683
  * @remarks
2503
- * HTML Attribute: activeid
2504
- */
2505
- activeid: string;
2506
- /**
2507
- * @internal
2684
+ * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/checkValidity | `HTMLInputElement.checkValidity()`} method.
2508
2685
  */
2509
- activeidChanged(oldValue: string, newValue: string): void;
2686
+ checkValidity(): boolean;
2510
2687
  /**
2688
+ * Handles click events for the radio group.
2689
+ *
2690
+ * @param e - the click event
2511
2691
  * @internal
2512
2692
  */
2513
- tabs: HTMLElement[];
2693
+ clickHandler(e: MouseEvent): boolean | void;
2694
+ constructor();
2514
2695
  /**
2696
+ * Focuses the checked radio or the first enabled radio.
2697
+ *
2515
2698
  * @internal
2516
2699
  */
2517
- tabsChanged(): void;
2700
+ focus(): void;
2701
+ formResetCallback(): void;
2518
2702
  /**
2703
+ * Enables tabbing through the radio group when the group receives focus.
2704
+ *
2705
+ * @param e - the focus event
2519
2706
  * @internal
2520
2707
  */
2521
- tabpanels: HTMLElement[];
2708
+ focusinHandler(e: FocusEvent): boolean | void;
2522
2709
  /**
2710
+ * Handles keydown events for the radio group.
2711
+ *
2712
+ * @param e - the keyboard event
2523
2713
  * @internal
2524
2714
  */
2525
- tabpanelsChanged(): void;
2715
+ keydownHandler(e: KeyboardEvent): boolean | void;
2526
2716
  /**
2527
- * A reference to the active tab
2528
- * @public
2717
+ *
2718
+ * @param e - the disabled event
2529
2719
  */
2530
- activetab: HTMLElement;
2531
- private prevActiveTabIndex;
2532
- private activeTabIndex;
2533
- private tabIds;
2534
- private tabpanelIds;
2535
- private change;
2536
- private isDisabledElement;
2537
- private isHiddenElement;
2538
- private isFocusableElement;
2539
- private getActiveIndex;
2720
+ disabledRadioHandler(e: CustomEvent): void;
2540
2721
  /**
2541
- * Function that is invoked whenever the selected tab or the tab collection changes.
2722
+ * Reports the validity of the element.
2542
2723
  *
2543
2724
  * @public
2725
+ * @remarks
2726
+ * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/reportValidity | `HTMLInputElement.reportValidity()`} method.
2544
2727
  */
2545
- protected setTabs(): void;
2546
- private setTabPanels;
2547
- private getTabIds;
2548
- private getTabPanelIds;
2549
- private setComponent;
2550
- private handleTabClick;
2551
- private isHorizontal;
2552
- private handleTabKeyDown;
2728
+ reportValidity(): boolean;
2553
2729
  /**
2554
- * The adjust method for FASTTabs
2555
- * @public
2556
- * @remarks
2557
- * This method allows the active index to be adjusted by numerical increments
2730
+ * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/setFormValue | `ElementInternals.setFormValue()`} method.
2731
+ *
2732
+ * @internal
2558
2733
  */
2559
- adjust(adjustment: number): void;
2560
- private adjustForward;
2561
- private adjustBackward;
2562
- private moveToTabByIndex;
2563
- private focusTab;
2734
+ setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;
2564
2735
  /**
2736
+ * Sets the validity of the element.
2737
+ *
2738
+ * @param flags - Validity flags to set.
2739
+ * @param message - Optional message to supply. If not provided, the element's `validationMessage` will be used.
2740
+ * @param anchor - Optional anchor to use for the validation message.
2741
+ *
2565
2742
  * @internal
2743
+ * @remarks
2744
+ * RadioGroup validation is reported through the individual Radio elements rather than the RadioGroup itself.
2745
+ * This is necessary because:
2746
+ * 1. Each Radio is form-associated (extends BaseCheckbox which has `formAssociated = true`)
2747
+ * 2. Browser validation UIs and screen readers announce validation against individual form controls
2748
+ * 3. For groups like RadioGroup, the browser needs to report the error on a specific member of the group
2749
+ * 4. We anchor the error to the first Radio so it receives focus and announcement
2750
+ *
2751
+ * When the group is invalid (required but no selection):
2752
+ * - Only the first Radio gets the invalid state with the validation message
2753
+ * - Other Radios are kept valid since selecting any of them would satisfy the requirement
2754
+ *
2755
+ * When the group becomes valid (user selects any Radio):
2756
+ * - All Radios are cleared back to valid state
2757
+ * - This allows form submission to proceed
2566
2758
  */
2567
- connectedCallback(): void;
2759
+ setValidity(flags?: Partial<ValidityState>, message?: string, anchor?: HTMLElement): void;
2568
2760
  }
2569
2761
 
2570
2762
  /**
2571
- * A Text Area Custom HTML Element.
2572
- * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea | `<textarea>`} element.
2763
+ * The base class used for constructing a fluent-rating-display custom element
2573
2764
  *
2574
- * @slot - The default content/value of the component.
2575
- * @slot label - The content for the `<label>`, it should be a `<fluent-label>` element.
2576
- * @csspart label - The `<label>` element.
2577
- * @csspart root - The container element of the `<textarea>` element.
2578
- * @csspart control - The internal `<textarea>` element.
2579
- * @fires change - Fires after the control loses focus, if the content has changed.
2580
- * @fires select - Fires when the `select()` method is called.
2765
+ * @slot icon - SVG element used as the rating icon
2581
2766
  *
2582
2767
  * @public
2583
2768
  */
2584
- export declare class BaseTextArea extends FASTElement {
2585
- /**
2586
- * The form-associated flag.
2587
- * @see {@link https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-face-example | Form-associated custom elements}
2588
- *
2589
- * @public
2590
- */
2591
- static readonly formAssociated = true;
2769
+ export declare class BaseRatingDisplay extends FASTElement {
2770
+ private numberFormatter;
2592
2771
  /**
2593
2772
  * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2594
2773
  *
@@ -2596,53 +2775,249 @@ export declare class BaseTextArea extends FASTElement {
2596
2775
  */
2597
2776
  elementInternals: ElementInternals;
2598
2777
  /**
2599
- * The `<label>` element.
2600
- * @internal
2601
- */
2602
- labelEl: HTMLLabelElement;
2603
- /**
2604
- * The `<textarea>` element.
2605
- * @internal
2606
- */
2607
- controlEl: HTMLTextAreaElement;
2608
- /**
2778
+ * Reference to the slot element used for the rating icon.
2779
+ *
2609
2780
  * @internal
2610
2781
  */
2611
- autoSizerEl?: HTMLDivElement;
2782
+ iconSlot: HTMLSlotElement;
2612
2783
  /**
2613
- * The list of nodes that are assigned to the default slot.
2784
+ * Updates the icon when the referenced slot is bound in the template.
2785
+ *
2614
2786
  * @internal
2615
2787
  */
2616
- defaultSlottedNodes: Node[];
2617
- protected defaultSlottedNodesChanged(): void;
2618
- private filteredLabelSlottedNodes;
2788
+ iconSlotChanged(): void;
2789
+ protected defaultCustomIconViewBox: string;
2619
2790
  /**
2620
- * The list of nodes that are assigned to the `label` slot.
2791
+ * The element that displays the rating icons.
2621
2792
  * @internal
2622
2793
  */
2623
- labelSlottedNodes: Label[];
2624
- protected labelSlottedNodesChanged(): void;
2625
- private userInteracted;
2626
- private autoSizerObserver?;
2627
- private controlElAttrObserver;
2628
- private preConnectControlEl;
2794
+ display: HTMLElement;
2629
2795
  /**
2630
- * Indicates the element's autocomplete state.
2631
- * @see The {@link https://developer.mozilla.org/docs/Web/HTML/Attributes/autocomplete | `autocomplete`} attribute
2796
+ * The number of ratings.
2632
2797
  *
2633
2798
  * @public
2634
2799
  * @remarks
2635
- * HTML Attribute: `autocomplete`
2800
+ * HTML Attribute: `count`
2636
2801
  */
2637
- autocomplete?: TextAreaAutocomplete;
2802
+ count?: number;
2638
2803
  /**
2639
- * Indicates whether the element’s block size (height) should be automatically changed based on the content.
2640
- * Note: When this property’s value is set to be `true`, the element should not have a fixed block-size
2641
- * defined in CSS. Instead, use `min-height` or `min-block-size`.
2804
+ * The `viewBox` attribute of the icon <svg> element.
2642
2805
  *
2643
2806
  * @public
2644
2807
  * @remarks
2645
- * HTML Attribute: `auto-resize`
2808
+ * HTML Attribute: `icon-view-box`
2809
+ * @deprecated Add `viewBox` attribute on the custom SVG directly.
2810
+ */
2811
+ iconViewBox?: string;
2812
+ /**
2813
+ * The maximum possible value of the rating.
2814
+ * This attribute determines the number of icons displayed.
2815
+ * Must be a whole number greater than 1.
2816
+ *
2817
+ * @public
2818
+ * @remarks
2819
+ * HTML Attribute: `max`
2820
+ */
2821
+ max?: number;
2822
+ protected maxChanged(): void;
2823
+ /**
2824
+ * The value of the rating.
2825
+ *
2826
+ * @public
2827
+ * @remarks
2828
+ * HTML Attribute: `value`
2829
+ */
2830
+ value?: number;
2831
+ protected valueChanged(): void;
2832
+ constructor();
2833
+ connectedCallback(): void;
2834
+ /**
2835
+ * Returns "count" as string, formatted according to the locale.
2836
+ *
2837
+ * @internal
2838
+ */
2839
+ get formattedCount(): string;
2840
+ /** @internal */
2841
+ handleSlotChange(): void;
2842
+ protected renderSlottedIcon(svg: SVGSVGElement | null): void;
2843
+ protected setCustomPropertyValue(propertyName: PropertyNameForCalculation): void;
2844
+ }
2845
+
2846
+ /**
2847
+ * The base class used for constructing a fluent-spinner custom element
2848
+ * @public
2849
+ */
2850
+ export declare class BaseSpinner extends FASTElement {
2851
+ /**
2852
+ * The internal {@link https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2853
+ *
2854
+ * @internal
2855
+ */
2856
+ elementInternals: ElementInternals;
2857
+ constructor();
2858
+ }
2859
+
2860
+ /**
2861
+ * A Tablist element that wraps a collection of tab elements
2862
+ * @public
2863
+ */
2864
+ export declare class BaseTablist extends FASTElement {
2865
+ /**
2866
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2867
+ *
2868
+ * @internal
2869
+ */
2870
+ elementInternals: ElementInternals;
2871
+ /**
2872
+ * Used for disabling all click and keyboard events for the tabs, child tab elements.
2873
+ * @public
2874
+ * @remarks
2875
+ * HTML Attribute: disabled.
2876
+ */
2877
+ disabled: boolean;
2878
+ /** @internal */
2879
+ protected disabledChanged(prev: boolean, next: boolean): void;
2880
+ /**
2881
+ * The orientation
2882
+ * @public
2883
+ * @remarks
2884
+ * HTML Attribute: orientation
2885
+ */
2886
+ orientation: TablistOrientation;
2887
+ protected orientationChanged(prev: TablistOrientation, next: TablistOrientation): void;
2888
+ /**
2889
+ * The id of the active tab
2890
+ *
2891
+ * @public
2892
+ * @remarks
2893
+ * HTML Attribute: activeid
2894
+ */
2895
+ activeid: string;
2896
+ /** @internal */
2897
+ protected activeidChanged(oldValue: string, newValue: string): void;
2898
+ /**
2899
+ * Content slotted in the tab slot.
2900
+ * @internal
2901
+ */
2902
+ slottedTabs: Node[];
2903
+ /** @internal */
2904
+ protected slottedTabsChanged(prev: Node[] | undefined, next: Node[] | undefined): void;
2905
+ /** @internal */
2906
+ tabs: Tab[];
2907
+ /** @internal */
2908
+ protected tabsChanged(prev: Tab[] | undefined, next: Tab[] | undefined): void;
2909
+ /**
2910
+ * A reference to the active tab
2911
+ * @public
2912
+ */
2913
+ activetab: Tab;
2914
+ private tabPanelMap;
2915
+ private change;
2916
+ /**
2917
+ * Function that is invoked whenever the selected tab or the tab collection changes.
2918
+ */
2919
+ protected setTabs({ connectToPanel, forceDisabled }?: {
2920
+ connectToPanel?: boolean | undefined;
2921
+ forceDisabled?: boolean | undefined;
2922
+ }): void;
2923
+ /** @internal */
2924
+ handleFocusIn(event: FocusEvent): void;
2925
+ private changeTab;
2926
+ constructor();
2927
+ /**
2928
+ * @internal
2929
+ */
2930
+ connectedCallback(): void;
2931
+ }
2932
+
2933
+ /**
2934
+ * A Text Area Custom HTML Element.
2935
+ * Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea | `<textarea>`} element.
2936
+ *
2937
+ * @slot - The default content/value of the component.
2938
+ * @slot label - The content for the `<label>`, it should be a `<fluent-label>` element.
2939
+ * @csspart label - The `<label>` element.
2940
+ * @csspart root - The container element of the `<textarea>` element.
2941
+ * @csspart control - The internal `<textarea>` element.
2942
+ * @fires change - Fires after the control loses focus, if the content has changed.
2943
+ * @fires select - Fires when the `select()` method is called.
2944
+ *
2945
+ * @public
2946
+ */
2947
+ export declare class BaseTextArea extends FASTElement {
2948
+ /**
2949
+ * The form-associated flag.
2950
+ * @see {@link https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-face-example | Form-associated custom elements}
2951
+ *
2952
+ * @public
2953
+ */
2954
+ static readonly formAssociated = true;
2955
+ /**
2956
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
2957
+ *
2958
+ * @internal
2959
+ */
2960
+ elementInternals: ElementInternals;
2961
+ /**
2962
+ * The `<label>` element.
2963
+ * @internal
2964
+ */
2965
+ labelEl: HTMLLabelElement;
2966
+ /**
2967
+ * The root container element.
2968
+ * @internal
2969
+ */
2970
+ rootEl: HTMLDivElement;
2971
+ /**
2972
+ * The `<textarea>` element.
2973
+ * @internal
2974
+ */
2975
+ controlEl: HTMLTextAreaElement;
2976
+ /**
2977
+ * Sets up a mutation observer to watch for changes to the control element's
2978
+ * attributes that could affect validity, and binds an input event listener to detect user interaction.
2979
+ *
2980
+ * @internal
2981
+ */
2982
+ protected controlElChanged(): void;
2983
+ /**
2984
+ * @internal
2985
+ */
2986
+ autoSizerEl?: HTMLDivElement;
2987
+ /**
2988
+ * The list of nodes that are assigned to the default slot.
2989
+ * @internal
2990
+ */
2991
+ defaultSlottedNodes: Node[];
2992
+ protected defaultSlottedNodesChanged(): void;
2993
+ private filteredLabelSlottedNodes;
2994
+ /**
2995
+ * The list of nodes that are assigned to the `label` slot.
2996
+ * @internal
2997
+ */
2998
+ labelSlottedNodes: Label[];
2999
+ protected labelSlottedNodesChanged(): void;
3000
+ private userInteracted;
3001
+ private autoSizerObserver?;
3002
+ private controlElAttrObserver;
3003
+ private preConnectControlEl;
3004
+ /**
3005
+ * Indicates the element's autocomplete state.
3006
+ * @see The {@link https://developer.mozilla.org/docs/Web/HTML/Attributes/autocomplete | `autocomplete`} attribute
3007
+ *
3008
+ * @public
3009
+ * @remarks
3010
+ * HTML Attribute: `autocomplete`
3011
+ */
3012
+ autocomplete?: TextAreaAutocomplete;
3013
+ /**
3014
+ * Indicates whether the element’s block size (height) should be automatically changed based on the content.
3015
+ * Note: When this property’s value is set to be `true`, the element should not have a fixed block-size
3016
+ * defined in CSS. Instead, use `min-height` or `min-block-size`.
3017
+ *
3018
+ * @public
3019
+ * @remarks
3020
+ * HTML Attribute: `auto-resize`
2646
3021
  */
2647
3022
  autoResize: boolean;
2648
3023
  protected autoResizeChanged(): void;
@@ -2889,13 +3264,10 @@ export declare class BaseTextArea extends FASTElement {
2889
3264
  * @public
2890
3265
  */
2891
3266
  select(): void;
2892
- private setDefaultValue;
2893
- private bindEvents;
2894
3267
  /**
2895
3268
  * Gets the content inside the light DOM, if any HTML element is present, use its `outerHTML` value.
2896
3269
  */
2897
3270
  private getContent;
2898
- private observeControlElAttrs;
2899
3271
  private setDisabledSideEffect;
2900
3272
  private toggleUserValidityState;
2901
3273
  private maybeCreateAutoSizerEl;
@@ -3320,12 +3692,6 @@ export declare class BaseTree extends FASTElement {
3320
3692
  * @public
3321
3693
  */
3322
3694
  currentSelected: HTMLElement | null;
3323
- /**
3324
- * The tree item that is designated to be in the tab queue.
3325
- *
3326
- * @internal
3327
- */
3328
- private currentFocused;
3329
3695
  /**
3330
3696
  * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
3331
3697
  *
@@ -3334,6 +3700,13 @@ export declare class BaseTree extends FASTElement {
3334
3700
  elementInternals: ElementInternals;
3335
3701
  /** @internal */
3336
3702
  defaultSlot: HTMLSlotElement;
3703
+ /**
3704
+ * Calls the slot change handler when the `defaultSlot` reference is updated
3705
+ * by the template binding.
3706
+ *
3707
+ * @internal
3708
+ */
3709
+ defaultSlotChanged(): void;
3337
3710
  constructor();
3338
3711
  /** @internal */
3339
3712
  childTreeItems: BaseTreeItem[];
@@ -3349,18 +3722,6 @@ export declare class BaseTree extends FASTElement {
3349
3722
  * @internal
3350
3723
  */
3351
3724
  keydownHandler(e: KeyboardEvent): boolean | void;
3352
- /**
3353
- * Handle focus events
3354
- *
3355
- * @internal
3356
- */
3357
- focusHandler(e: FocusEvent): void;
3358
- /**
3359
- * Handle blur events
3360
- *
3361
- * @internal
3362
- */
3363
- blurHandler(e: FocusEvent): void;
3364
3725
  /**
3365
3726
  * Handles click events bubbling up
3366
3727
  *
@@ -3374,17 +3735,13 @@ export declare class BaseTree extends FASTElement {
3374
3735
  * @internal
3375
3736
  */
3376
3737
  changeHandler(e: Event): boolean | void;
3377
- /**
3378
- * checks if there are any nested tree items
3379
- */
3380
- private getValidFocusableItem;
3381
- private getVisibleNodes;
3382
- /**
3383
- * Move focus to a tree item based on its offset from the provided item
3384
- */
3385
- private focusNextNode;
3386
3738
  /** @internal */
3387
3739
  handleDefaultSlotChange(): void;
3740
+ /**
3741
+ * All descendant tree items in DOM order, recursively flattened from
3742
+ * `childTreeItems`.
3743
+ */
3744
+ protected get descendantTreeItems(): BaseTreeItem[];
3388
3745
  }
3389
3746
 
3390
3747
  declare class BaseTreeItem extends FASTElement {
@@ -3396,11 +3753,21 @@ declare class BaseTreeItem extends FASTElement {
3396
3753
  elementInternals: ElementInternals;
3397
3754
  /** @internal */
3398
3755
  itemSlot: HTMLSlotElement;
3756
+ /**
3757
+ * Calls the slot change handler when the `itemSlot` reference is updated
3758
+ * by the template binding.
3759
+ *
3760
+ * @internal
3761
+ */
3762
+ itemSlotChanged(): void;
3399
3763
  constructor();
3400
3764
  /**
3401
3765
  * When true, the control will be appear expanded by user interaction.
3402
- * @public
3766
+ * When true, the control will be appear expanded by user interaction.
3767
+ *
3403
3768
  * HTML Attribute: `expanded`
3769
+ *
3770
+ * @public
3404
3771
  */
3405
3772
  expanded: boolean;
3406
3773
  /**
@@ -3428,8 +3795,11 @@ declare class BaseTreeItem extends FASTElement {
3428
3795
  protected selectedChanged(prev: boolean, next: boolean): void;
3429
3796
  /**
3430
3797
  * When true, the control has no child tree items
3431
- * @public
3798
+ * When true, the control has no child tree items
3799
+ *
3432
3800
  * HTML Attribute: empty
3801
+ *
3802
+ * @public
3433
3803
  */
3434
3804
  empty: boolean;
3435
3805
  private styles;
@@ -3448,7 +3818,6 @@ declare class BaseTreeItem extends FASTElement {
3448
3818
  * @public
3449
3819
  */
3450
3820
  childTreeItemsChanged(): void;
3451
- connectedCallback(): void;
3452
3821
  /**
3453
3822
  * Updates the childrens indent
3454
3823
  *
@@ -3466,56 +3835,90 @@ declare class BaseTreeItem extends FASTElement {
3466
3835
  */
3467
3836
  toggleExpansion(): void;
3468
3837
  /**
3469
- * Whether the tree is nested
3838
+ * Whether the tree item is nested
3470
3839
  * @internal
3471
3840
  */
3472
3841
  get isNestedItem(): boolean;
3473
- protected updateTabindexBySelected(): void;
3842
+ /**
3843
+ * Whether the tree item is nested in a collapsed tree item.
3844
+ * @internal
3845
+ */
3846
+ get isHidden(): boolean;
3474
3847
  /** @internal */
3475
3848
  handleItemSlotChange(): void;
3476
3849
  }
3477
3850
 
3478
3851
  /**
3479
- * CSS custom property value for the {@link @fluentui/tokens#borderRadiusCircular | `borderRadiusCircular`} design token.
3852
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadius2XLarge | `borderRadius2XLarge`} design token.
3480
3853
  * @public
3481
3854
  */
3482
- export declare const borderRadiusCircular = "var(--borderRadiusCircular)";
3855
+ export declare const borderRadius2XLarge = "var(--borderRadius2XLarge)";
3483
3856
 
3484
3857
  /**
3485
- * CSS custom property value for the {@link @fluentui/tokens#borderRadiusLarge | `borderRadiusLarge`} design token.
3858
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadius3XLarge | `borderRadius3XLarge`} design token.
3486
3859
  * @public
3487
3860
  */
3488
- export declare const borderRadiusLarge = "var(--borderRadiusLarge)";
3861
+ export declare const borderRadius3XLarge = "var(--borderRadius3XLarge)";
3489
3862
 
3490
3863
  /**
3491
- * CSS custom property value for the {@link @fluentui/tokens#borderRadiusMedium | `borderRadiusMedium`} design token.
3864
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadius4XLarge | `borderRadius4XLarge`} design token.
3492
3865
  * @public
3493
3866
  */
3494
- export declare const borderRadiusMedium = "var(--borderRadiusMedium)";
3867
+ export declare const borderRadius4XLarge = "var(--borderRadius4XLarge)";
3495
3868
 
3496
3869
  /**
3497
- * CSS custom property value for the {@link @fluentui/tokens#borderRadiusNone | `borderRadiusNone`} design token.
3870
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadius5XLarge | `borderRadius5XLarge`} design token.
3498
3871
  * @public
3499
3872
  */
3500
- export declare const borderRadiusNone = "var(--borderRadiusNone)";
3873
+ export declare const borderRadius5XLarge = "var(--borderRadius5XLarge)";
3501
3874
 
3502
3875
  /**
3503
- * CSS custom property value for the {@link @fluentui/tokens#borderRadiusSmall | `borderRadiusSmall`} design token.
3876
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadius6XLarge | `borderRadius6XLarge`} design token.
3504
3877
  * @public
3505
3878
  */
3506
- export declare const borderRadiusSmall = "var(--borderRadiusSmall)";
3879
+ export declare const borderRadius6XLarge = "var(--borderRadius6XLarge)";
3507
3880
 
3508
3881
  /**
3509
- * CSS custom property value for the {@link @fluentui/tokens#borderRadiusXLarge | `borderRadiusXLarge`} design token.
3882
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadiusCircular | `borderRadiusCircular`} design token.
3510
3883
  * @public
3511
3884
  */
3512
- export declare const borderRadiusXLarge = "var(--borderRadiusXLarge)";
3885
+ export declare const borderRadiusCircular = "var(--borderRadiusCircular)";
3513
3886
 
3514
3887
  /**
3515
- * A Button Custom HTML Element.
3516
- * Based on BaseButton and includes style and layout specific attributes
3517
- *
3518
- * @tag fluent-button
3888
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadiusLarge | `borderRadiusLarge`} design token.
3889
+ * @public
3890
+ */
3891
+ export declare const borderRadiusLarge = "var(--borderRadiusLarge)";
3892
+
3893
+ /**
3894
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadiusMedium | `borderRadiusMedium`} design token.
3895
+ * @public
3896
+ */
3897
+ export declare const borderRadiusMedium = "var(--borderRadiusMedium)";
3898
+
3899
+ /**
3900
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadiusNone | `borderRadiusNone`} design token.
3901
+ * @public
3902
+ */
3903
+ export declare const borderRadiusNone = "var(--borderRadiusNone)";
3904
+
3905
+ /**
3906
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadiusSmall | `borderRadiusSmall`} design token.
3907
+ * @public
3908
+ */
3909
+ export declare const borderRadiusSmall = "var(--borderRadiusSmall)";
3910
+
3911
+ /**
3912
+ * CSS custom property value for the {@link @fluentui/tokens#borderRadiusXLarge | `borderRadiusXLarge`} design token.
3913
+ * @public
3914
+ */
3915
+ export declare const borderRadiusXLarge = "var(--borderRadiusXLarge)";
3916
+
3917
+ /**
3918
+ * A Button Custom HTML Element.
3919
+ * Based on BaseButton and includes style and layout specific attributes
3920
+ *
3921
+ * @tag fluent-button
3519
3922
  *
3520
3923
  * @public
3521
3924
  */
@@ -3652,7 +4055,7 @@ export declare type ButtonSize = ValuesOf<typeof ButtonSize>;
3652
4055
  *
3653
4056
  * @public
3654
4057
  */
3655
- export declare const ButtonTemplate: ElementViewTemplate<Button>;
4058
+ export declare const ButtonTemplate: ElementViewTemplate<BaseButton>;
3656
4059
 
3657
4060
  /**
3658
4061
  * Button type values.
@@ -4189,6 +4592,36 @@ export declare const colorNeutralBackground5Selected = "var(--colorNeutralBackgr
4189
4592
  */
4190
4593
  export declare const colorNeutralBackground6 = "var(--colorNeutralBackground6)";
4191
4594
 
4595
+ /**
4596
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackground7 | `colorNeutralBackground7`} design token.
4597
+ * @public
4598
+ */
4599
+ export declare const colorNeutralBackground7 = "var(--colorNeutralBackground7)";
4600
+
4601
+ /**
4602
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackground7Hover | `colorNeutralBackground7Hover`} design token.
4603
+ * @public
4604
+ */
4605
+ export declare const colorNeutralBackground7Hover = "var(--colorNeutralBackground7Hover)";
4606
+
4607
+ /**
4608
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackground7Pressed | `colorNeutralBackground7Pressed`} design token.
4609
+ * @public
4610
+ */
4611
+ export declare const colorNeutralBackground7Pressed = "var(--colorNeutralBackground7Pressed)";
4612
+
4613
+ /**
4614
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackground7Selected | `colorNeutralBackground7Selected`} design token.
4615
+ * @public
4616
+ */
4617
+ export declare const colorNeutralBackground7Selected = "var(--colorNeutralBackground7Selected)";
4618
+
4619
+ /**
4620
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackground8 | `colorNeutralBackground8`} design token.
4621
+ * @public
4622
+ */
4623
+ export declare const colorNeutralBackground8 = "var(--colorNeutralBackground8)";
4624
+
4192
4625
  /**
4193
4626
  * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundAlpha | `colorNeutralBackgroundAlpha`} design token.
4194
4627
  * @public
@@ -4207,6 +4640,12 @@ export declare const colorNeutralBackgroundAlpha2 = "var(--colorNeutralBackgroun
4207
4640
  */
4208
4641
  export declare const colorNeutralBackgroundDisabled = "var(--colorNeutralBackgroundDisabled)";
4209
4642
 
4643
+ /**
4644
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundDisabled2 | `colorNeutralBackgroundDisabled2`} design token.
4645
+ * @public
4646
+ */
4647
+ export declare const colorNeutralBackgroundDisabled2 = "var(--colorNeutralBackgroundDisabled2)";
4648
+
4210
4649
  /**
4211
4650
  * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundInverted | `colorNeutralBackgroundInverted`} design token.
4212
4651
  * @public
@@ -4219,6 +4658,24 @@ export declare const colorNeutralBackgroundInverted = "var(--colorNeutralBackgro
4219
4658
  */
4220
4659
  export declare const colorNeutralBackgroundInvertedDisabled = "var(--colorNeutralBackgroundInvertedDisabled)";
4221
4660
 
4661
+ /**
4662
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundInvertedHover | `colorNeutralBackgroundInvertedHover`} design token.
4663
+ * @public
4664
+ */
4665
+ export declare const colorNeutralBackgroundInvertedHover = "var(--colorNeutralBackgroundInvertedHover)";
4666
+
4667
+ /**
4668
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundInvertedPressed | `colorNeutralBackgroundInvertedPressed`} design token.
4669
+ * @public
4670
+ */
4671
+ export declare const colorNeutralBackgroundInvertedPressed = "var(--colorNeutralBackgroundInvertedPressed)";
4672
+
4673
+ /**
4674
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundInvertedSelected | `colorNeutralBackgroundInvertedSelected`} design token.
4675
+ * @public
4676
+ */
4677
+ export declare const colorNeutralBackgroundInvertedSelected = "var(--colorNeutralBackgroundInvertedSelected)";
4678
+
4222
4679
  /**
4223
4680
  * CSS custom property value for the {@link @fluentui/tokens#colorNeutralBackgroundStatic | `colorNeutralBackgroundStatic`} design token.
4224
4681
  * @public
@@ -4399,6 +4856,30 @@ export declare const colorNeutralForeground3Selected = "var(--colorNeutralForegr
4399
4856
  */
4400
4857
  export declare const colorNeutralForeground4 = "var(--colorNeutralForeground4)";
4401
4858
 
4859
+ /**
4860
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralForeground5 | `colorNeutralForeground5`} design token.
4861
+ * @public
4862
+ */
4863
+ export declare const colorNeutralForeground5 = "var(--colorNeutralForeground5)";
4864
+
4865
+ /**
4866
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralForeground5Hover | `colorNeutralForeground5Hover`} design token.
4867
+ * @public
4868
+ */
4869
+ export declare const colorNeutralForeground5Hover = "var(--colorNeutralForeground5Hover)";
4870
+
4871
+ /**
4872
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralForeground5Pressed | `colorNeutralForeground5Pressed`} design token.
4873
+ * @public
4874
+ */
4875
+ export declare const colorNeutralForeground5Pressed = "var(--colorNeutralForeground5Pressed)";
4876
+
4877
+ /**
4878
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralForeground5Selected | `colorNeutralForeground5Selected`} design token.
4879
+ * @public
4880
+ */
4881
+ export declare const colorNeutralForeground5Selected = "var(--colorNeutralForeground5Selected)";
4882
+
4402
4883
  /**
4403
4884
  * CSS custom property value for the {@link @fluentui/tokens#colorNeutralForegroundDisabled | `colorNeutralForegroundDisabled`} design token.
4404
4885
  * @public
@@ -4573,6 +5054,30 @@ export declare const colorNeutralStroke2 = "var(--colorNeutralStroke2)";
4573
5054
  */
4574
5055
  export declare const colorNeutralStroke3 = "var(--colorNeutralStroke3)";
4575
5056
 
5057
+ /**
5058
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStroke4 | `colorNeutralStroke4`} design token.
5059
+ * @public
5060
+ */
5061
+ export declare const colorNeutralStroke4 = "var(--colorNeutralStroke4)";
5062
+
5063
+ /**
5064
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStroke4Hover | `colorNeutralStroke4Hover`} design token.
5065
+ * @public
5066
+ */
5067
+ export declare const colorNeutralStroke4Hover = "var(--colorNeutralStroke4Hover)";
5068
+
5069
+ /**
5070
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStroke4Pressed | `colorNeutralStroke4Pressed`} design token.
5071
+ * @public
5072
+ */
5073
+ export declare const colorNeutralStroke4Pressed = "var(--colorNeutralStroke4Pressed)";
5074
+
5075
+ /**
5076
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStroke4Selected | `colorNeutralStroke4Selected`} design token.
5077
+ * @public
5078
+ */
5079
+ export declare const colorNeutralStroke4Selected = "var(--colorNeutralStroke4Selected)";
5080
+
4576
5081
  /**
4577
5082
  * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStrokeAccessible | `colorNeutralStrokeAccessible`} design token.
4578
5083
  * @public
@@ -4615,6 +5120,12 @@ export declare const colorNeutralStrokeAlpha2 = "var(--colorNeutralStrokeAlpha2)
4615
5120
  */
4616
5121
  export declare const colorNeutralStrokeDisabled = "var(--colorNeutralStrokeDisabled)";
4617
5122
 
5123
+ /**
5124
+ * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStrokeDisabled2 | `colorNeutralStrokeDisabled2`} design token.
5125
+ * @public
5126
+ */
5127
+ export declare const colorNeutralStrokeDisabled2 = "var(--colorNeutralStrokeDisabled2)";
5128
+
4618
5129
  /**
4619
5130
  * CSS custom property value for the {@link @fluentui/tokens#colorNeutralStrokeInvertedDisabled | `colorNeutralStrokeInvertedDisabled`} design token.
4620
5131
  * @public
@@ -5945,24 +6456,20 @@ export declare const CompoundButtonStyles: ElementStyles;
5945
6456
 
5946
6457
  /**
5947
6458
  * The template for the Button component.
6459
+ *
5948
6460
  * @public
5949
6461
  */
5950
6462
  export declare const CompoundButtonTemplate: ElementViewTemplate<CompoundButton>;
5951
6463
 
5952
6464
  /**
5953
- * The base class used for constructing a fluent-badge custom element
6465
+ * A CounterBadge Custom HTML Element.
6466
+ * Based on BaseCounterBadge and includes style and layout specific attributes.
5954
6467
  *
5955
6468
  * @tag fluent-counter-badge
5956
6469
  *
5957
6470
  * @public
5958
6471
  */
5959
- export declare class CounterBadge extends FASTElement {
5960
- /**
5961
- * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
5962
- *
5963
- * @internal
5964
- */
5965
- elementInternals: ElementInternals;
6472
+ export declare class CounterBadge extends BaseCounterBadge {
5966
6473
  /**
5967
6474
  * The appearance the badge should have.
5968
6475
  *
@@ -5995,60 +6502,14 @@ export declare class CounterBadge extends FASTElement {
5995
6502
  * HTML Attribute: size
5996
6503
  */
5997
6504
  size?: CounterBadgeSize;
5998
- /**
5999
- * The count the badge should have.
6000
- *
6001
- * @public
6002
- * @remarks
6003
- * HTML Attribute: count
6004
- */
6005
- count: number;
6006
- protected countChanged(): void;
6007
- /**
6008
- * Max number to be displayed
6009
- *
6010
- * @public
6011
- * @remarks
6012
- * HTML Attribute: overflow-count
6013
- */
6014
- overflowCount: number;
6015
- protected overflowCountChanged(): void;
6016
- /**
6017
- * If the badge should be shown when count is 0
6018
- *
6019
- * @public
6020
- * @remarks
6021
- * HTML Attribute: show-zero
6022
- */
6023
- showZero: boolean;
6024
- /**
6025
- * If a dot should be displayed without the count
6026
- *
6027
- * @public
6028
- * @remarks
6029
- * HTML Attribute: dot
6030
- */
6031
- dot: boolean;
6032
- /**
6033
- * @internal
6034
- * Function to set the count
6035
- * This is the default slotted content for the counter badge
6036
- * If children are slotted, that will override the value returned
6037
- */
6038
- setCount(): string | void;
6039
6505
  }
6040
6506
 
6041
- /**
6042
- * Mark internal because exporting class and interface of the same name
6043
- * confuses API extractor.
6044
- * TODO: Below will be unnecessary when Badge class gets updated
6045
- * @internal
6046
- */
6047
6507
  export declare interface CounterBadge extends StartEnd {
6048
6508
  }
6049
6509
 
6050
6510
  /**
6051
- * CounterBadgeAppearance constants
6511
+ * Values for the `appearance` attribute on CounterBadge elements.
6512
+ *
6052
6513
  * @public
6053
6514
  */
6054
6515
  export declare const CounterBadgeAppearance: {
@@ -6057,13 +6518,14 @@ export declare const CounterBadgeAppearance: {
6057
6518
  };
6058
6519
 
6059
6520
  /**
6060
- * A CounterBadge can have an appearance of filled or ghost
6521
+ * Type for the `appearance` attribute on CounterBadge elements, based on the CounterBadgeAppearance constants.
6061
6522
  * @public
6062
6523
  */
6063
6524
  export declare type CounterBadgeAppearance = ValuesOf<typeof CounterBadgeAppearance>;
6064
6525
 
6065
6526
  /**
6066
- * CounterBadgeColor constants
6527
+ * Values for the `color` attribute on CounterBadge elements.
6528
+ *
6067
6529
  * @public
6068
6530
  */
6069
6531
  export declare const CounterBadgeColor: {
@@ -6078,7 +6540,7 @@ export declare const CounterBadgeColor: {
6078
6540
  };
6079
6541
 
6080
6542
  /**
6081
- * A CounterBadge can be one of preset colors
6543
+ * Type for the `color` attribute on CounterBadge elements, based on the CounterBadgeColor constants.
6082
6544
  * @public
6083
6545
  */
6084
6546
  export declare type CounterBadgeColor = ValuesOf<typeof CounterBadgeColor>;
@@ -6091,7 +6553,8 @@ export declare type CounterBadgeColor = ValuesOf<typeof CounterBadgeColor>;
6091
6553
  export declare const CounterBadgeDefinition: FASTElementDefinition<typeof CounterBadge>;
6092
6554
 
6093
6555
  /**
6094
- * A CounterBadge shape can be circular or rounded.
6556
+ * Values for the `shape` attribute on CounterBadge elements.
6557
+ *
6095
6558
  * @public
6096
6559
  */
6097
6560
  export declare const CounterBadgeShape: {
@@ -6100,13 +6563,15 @@ export declare const CounterBadgeShape: {
6100
6563
  };
6101
6564
 
6102
6565
  /**
6103
- * A CounterBadge can be one of preset colors
6566
+ * Type for the `shape` attribute on CounterBadge elements, based on the CounterBadgeShape constants.
6567
+ *
6104
6568
  * @public
6105
6569
  */
6106
6570
  export declare type CounterBadgeShape = ValuesOf<typeof CounterBadgeShape>;
6107
6571
 
6108
6572
  /**
6109
- * A CounterBadge can be square, circular or rounded.
6573
+ * Values for the `size` attribute on CounterBadge elements.
6574
+ *
6110
6575
  * @public
6111
6576
  */
6112
6577
  export declare const CounterBadgeSize: {
@@ -6119,7 +6584,8 @@ export declare const CounterBadgeSize: {
6119
6584
  };
6120
6585
 
6121
6586
  /**
6122
- * A CounterBadge can be on of several preset sizes.
6587
+ * Type for the `size` attribute on CounterBadge elements, based on the CounterBadgeSize constants.
6588
+ *
6123
6589
  * @public
6124
6590
  */
6125
6591
  export declare type CounterBadgeSize = ValuesOf<typeof CounterBadgeSize>;
@@ -6130,7 +6596,15 @@ export declare type CounterBadgeSize = ValuesOf<typeof CounterBadgeSize>;
6130
6596
  export declare const CounterBadgeStyles: ElementStyles;
6131
6597
 
6132
6598
  /**
6133
- * The template for the Counter Badge component.
6599
+ * The tag name for the counter badge element.
6600
+ *
6601
+ * @public
6602
+ */
6603
+ export declare const CounterBadgeTagName: "fluent-counter-badge";
6604
+
6605
+ /**
6606
+ * The template for the fluent-counter-badge component.
6607
+ *
6134
6608
  * @public
6135
6609
  */
6136
6610
  export declare const CounterBadgeTemplate: ElementViewTemplate<CounterBadge>;
@@ -6195,12 +6669,6 @@ export declare const curveEasyEaseMax = "var(--curveEasyEaseMax)";
6195
6669
  */
6196
6670
  export declare const curveLinear = "var(--curveLinear)";
6197
6671
 
6198
- /**
6199
- * This can be used to construct a behavior to apply a prefers color scheme: dark only stylesheet.
6200
- * @public
6201
- */
6202
- export declare const darkModeStylesheetBehavior: (styles: ElementStyles) => MatchMediaStyleSheetBehavior;
6203
-
6204
6672
  /**
6205
6673
  * A Dialog Custom HTML Element.
6206
6674
  *
@@ -6210,53 +6678,101 @@ export declare const darkModeStylesheetBehavior: (styles: ElementStyles) => Matc
6210
6678
  */
6211
6679
  export declare class Dialog extends FASTElement {
6212
6680
  /**
6213
- * @public
6214
6681
  * The dialog element
6682
+ *
6683
+ * @public
6215
6684
  */
6216
6685
  dialog: HTMLDialogElement;
6217
6686
  /**
6218
- * @public
6219
6687
  * The ID of the element that describes the dialog
6688
+ *
6689
+ * @public
6220
6690
  */
6221
6691
  ariaDescribedby?: string;
6222
6692
  /**
6223
- * @public
6224
6693
  * The ID of the element that labels the dialog
6694
+ *
6695
+ * @public
6225
6696
  */
6226
6697
  ariaLabelledby?: string;
6227
6698
  /**
6699
+ * The label of the dialog
6700
+ *
6228
6701
  * @public
6702
+ */
6703
+ ariaLabel: string | null;
6704
+ /**
6229
6705
  * The type of the dialog modal
6706
+ *
6707
+ * @public
6230
6708
  */
6231
6709
  type: DialogType;
6232
- protected typeChanged(prev: DialogType | undefined, next: DialogType | undefined): void;
6233
- /** @internal */
6710
+ /**
6711
+ * The `aria-describedby` attribute value for the dialog, which is determined by the `ariaDescribedby` property. This
6712
+ * is used to ensure that the dialog's accessible description is properly announced by assistive technologies.
6713
+ *
6714
+ * @internal
6715
+ */
6716
+ get dialogDescribedby(): string | undefined;
6717
+ /**
6718
+ * The `aria-label` attribute value for the dialog, which is determined by the `ariaLabel` property. This is used to
6719
+ * ensure that the dialog's accessible name is properly announced by assistive technologies.
6720
+ *
6721
+ * @internal
6722
+ */
6723
+ get dialogLabel(): string | null | undefined;
6724
+ /**
6725
+ * The `aria-labelledby` attribute value for the dialog, which is determined by the `ariaLabelledby` property. This is
6726
+ * used to ensure that the dialog's accessible name is properly announced by assistive technologies.
6727
+ *
6728
+ * @internal
6729
+ */
6730
+ get dialogLabelledby(): string | undefined;
6731
+ /**
6732
+ * The modal state of the dialog, which is determined by the `type` property. If the dialog is not a non-modal dialog,
6733
+ * the modal state will be true, otherwise it will be undefined.
6734
+ *
6735
+ * @internal
6736
+ */
6737
+ get dialogModal(): boolean | undefined;
6738
+ /**
6739
+ * The role of the dialog, which is determined by the `type` property. If the dialog is an alert dialog, the role will
6740
+ * be 'alertdialog', otherwise it will be undefined.
6741
+ *
6742
+ * @internal
6743
+ */
6744
+ get dialogRole(): string | undefined;
6234
6745
  connectedCallback(): void;
6235
6746
  /**
6236
- * @public
6237
6747
  * Method to emit an event before the dialog's open state changes
6238
6748
  * HTML spec proposal: https://github.com/whatwg/html/issues/9733
6749
+ *
6750
+ * @public
6239
6751
  */
6240
- emitBeforeToggle: () => void;
6752
+ emitBeforeToggle(): void;
6241
6753
  /**
6242
- * @public
6243
6754
  * Method to emit an event after the dialog's open state changes
6244
6755
  * HTML spec proposal: https://github.com/whatwg/html/issues/9733
6756
+ *
6757
+ * @public
6245
6758
  */
6246
6759
  emitToggle: () => void;
6247
6760
  /**
6248
- * @public
6249
6761
  * Method to show the dialog
6762
+ *
6763
+ * @public
6250
6764
  */
6251
6765
  show(): void;
6252
6766
  /**
6253
- * @public
6254
6767
  * Method to hide the dialog
6768
+ *
6769
+ * @public
6255
6770
  */
6256
6771
  hide(): void;
6257
6772
  /**
6258
- * @public
6259
6773
  * Handles click events on the dialog overlay for light-dismiss
6774
+ *
6775
+ * @public
6260
6776
  * @param event - The click event
6261
6777
  * @returns boolean
6262
6778
  */
@@ -6333,6 +6849,21 @@ export declare const DialogType: {
6333
6849
 
6334
6850
  export declare type DialogType = ValuesOf<typeof DialogType>;
6335
6851
 
6852
+ /**
6853
+ * Expose ltr and rtl strings
6854
+ * @public
6855
+ */
6856
+ export declare const Direction: {
6857
+ readonly ltr: "ltr";
6858
+ readonly rtl: "rtl";
6859
+ };
6860
+
6861
+ /**
6862
+ * The direction type
6863
+ * @public
6864
+ */
6865
+ export declare type Direction = (typeof Direction)[keyof typeof Direction];
6866
+
6336
6867
  /**
6337
6868
  * Applies a CSS display property.
6338
6869
  * Also adds CSS rules to not display the element when the [hidden] attribute is applied to the element.
@@ -6465,11 +6996,11 @@ export declare const DividerTemplate: ElementViewTemplate<Divider>;
6465
6996
  *
6466
6997
  * @extends FASTElement
6467
6998
  *
6468
- * @attr {DrawerType} type - Determines whether the drawer should be displayed as modal, non-modal, or alert.
6469
- * @attr {DrawerPosition} position - Sets the position of the drawer (start/end).
6470
- * @attr {DrawerSize} size - Sets the size of the drawer (small/medium/large).
6471
- * @attr {string} ariaDescribedby - The ID of the element that describes the drawer.
6472
- * @attr {string} ariaLabelledby - The ID of the element that labels the drawer.
6999
+ * @attr type - Determines whether the drawer should be displayed as modal, non-modal, or alert.
7000
+ * @attr position - Sets the position of the drawer (start/end).
7001
+ * @attr size - Sets the size of the drawer (small/medium/large).
7002
+ * @attr ariaDescribedby - The ID of the element that describes the drawer.
7003
+ * @attr ariaLabelledby - The ID of the element that labels the drawer.
6473
7004
  *
6474
7005
  * @csspart dialog - The dialog element of the drawer.
6475
7006
  *
@@ -6490,30 +7021,33 @@ export declare const DividerTemplate: ElementViewTemplate<Divider>;
6490
7021
  * @tag fluent-drawer
6491
7022
  */
6492
7023
  export declare class Drawer extends FASTElement {
6493
- protected roleAttrObserver: MutationObserver;
6494
7024
  /**
6495
- * @public
6496
7025
  * Determines whether the drawer should be displayed as modal or non-modal
6497
7026
  * When rendered as a modal, an overlay is applied over the rest of the view.
7027
+ *
7028
+ * @public
6498
7029
  */
6499
7030
  type: DrawerType;
6500
- protected typeChanged(): void;
6501
7031
  /**
6502
- * @public
6503
7032
  * The ID of the element that labels the drawer.
7033
+ *
7034
+ * @public
6504
7035
  */
6505
7036
  ariaLabelledby?: string;
6506
7037
  /**
6507
- * @public
6508
7038
  * The ID of the element that describes the drawer.
7039
+ *
7040
+ * @public
6509
7041
  */
6510
7042
  ariaDescribedby?: string;
6511
- /**""
7043
+ /**
7044
+ * Sets the position of the drawer (start/end).
7045
+ *
6512
7046
  * @public
6513
7047
  * @defaultValue start
6514
- * Sets the position of the drawer (start/end).
6515
7048
  */
6516
7049
  position: DrawerPosition;
7050
+ role: string | null;
6517
7051
  /**
6518
7052
  * @public
6519
7053
  * @defaultValue medium
@@ -6521,34 +7055,71 @@ export declare class Drawer extends FASTElement {
6521
7055
  */
6522
7056
  size: DrawerSize;
6523
7057
  /**
6524
- * @public
6525
7058
  * The dialog element.
7059
+ *
7060
+ * @public
6526
7061
  */
6527
7062
  dialog: HTMLDialogElement;
6528
- /** @internal */
6529
- connectedCallback(): void;
6530
- /** @internal */
6531
- disconnectedCallback(): void;
6532
7063
  /**
6533
- * @public
6534
- * Method to emit an event after the dialog's open state changes
6535
- * HTML spec proposal: https://github.com/whatwg/html/issues/9733
7064
+ * The `aria-describedby` attribute value for the dialog, which is determined by the `ariaDescribedby` property. This
7065
+ * is used to ensure that the dialog's accessible description is properly announced by assistive technologies.
7066
+ *
7067
+ * @internal
6536
7068
  */
6537
- emitToggle: () => void;
7069
+ get dialogDescribedby(): string | undefined;
6538
7070
  /**
6539
- * @public
6540
- * Method to emit an event before the dialog's open state changes
6541
- * HTML spec proposal: https://github.com/whatwg/html/issues/9733
7071
+ * The `aria-label` attribute value for the dialog, which is determined by the `ariaLabel` property. This is used to
7072
+ * ensure that the dialog's accessible name is properly announced by assistive technologies.
7073
+ *
7074
+ * @internal
6542
7075
  */
6543
- emitBeforeToggle: () => void;
7076
+ get dialogLabel(): string | null | undefined;
7077
+ /**
7078
+ * The `aria-labelledby` attribute value for the dialog, which is determined by the `ariaLabelledby` property. This is
7079
+ * used to ensure that the dialog's accessible name is properly announced by assistive technologies.
7080
+ *
7081
+ * @internal
7082
+ */
7083
+ get dialogLabelledby(): string | undefined;
7084
+ /**
7085
+ * The modal state of the dialog, which is determined by the `type` property. If the dialog is not a non-modal dialog,
7086
+ * the modal state will be true, otherwise it will be undefined.
7087
+ *
7088
+ * @internal
7089
+ */
7090
+ get dialogModal(): boolean | undefined;
7091
+ /**
7092
+ * The role of the dialog, which is determined by the `type` property. If the dialog is an alert dialog, the role will
7093
+ * be 'alertdialog', otherwise it will be undefined.
7094
+ *
7095
+ * @internal
7096
+ */
7097
+ get dialogRole(): string | null;
7098
+ connectedCallback(): void;
7099
+ /**
7100
+ * Method to emit an event after the dialog's open state changes
7101
+ * HTML spec proposal: https://github.com/whatwg/html/issues/9733
7102
+ *
7103
+ * @public
7104
+ */
7105
+ emitToggle: () => void;
7106
+ /**
7107
+ * Method to emit an event before the dialog's open state changes
7108
+ * HTML spec proposal: https://github.com/whatwg/html/issues/9733
7109
+ *
7110
+ * @public
7111
+ */
7112
+ emitBeforeToggle: () => void;
6544
7113
  /**
6545
- * @public
6546
7114
  * Method to show the drawer
7115
+ *
7116
+ * @public
6547
7117
  */
6548
7118
  show(): void;
6549
7119
  /**
6550
- * @public
6551
7120
  * Method to hide the drawer
7121
+ *
7122
+ * @public
6552
7123
  */
6553
7124
  hide(): void;
6554
7125
  /**
@@ -6559,12 +7130,11 @@ export declare class Drawer extends FASTElement {
6559
7130
  */
6560
7131
  clickHandler(event: Event): boolean;
6561
7132
  /**
6562
- * @public
6563
7133
  * Handles cancel events on the drawer.
7134
+ *
7135
+ * @public
6564
7136
  */
6565
7137
  cancelHandler(): void;
6566
- protected observeRoleAttr(): void;
6567
- protected updateDialogRole(): void;
6568
7138
  }
6569
7139
 
6570
7140
  /**
@@ -7320,12 +7890,6 @@ export declare const fontWeightRegular = "var(--fontWeightRegular)";
7320
7890
  */
7321
7891
  export declare const fontWeightSemibold = "var(--fontWeightSemibold)";
7322
7892
 
7323
- /**
7324
- * This can be used to construct a behavior to apply a forced-colors only stylesheet.
7325
- * @public
7326
- */
7327
- export declare const forcedColorsStylesheetBehavior: (styles: ElementStyles) => MatchMediaStyleSheetBehavior;
7328
-
7329
7893
  /**
7330
7894
  * Determines the current localization direction of an element.
7331
7895
  *
@@ -7585,12 +8149,6 @@ export declare const LabelWeight: {
7585
8149
  */
7586
8150
  export declare type LabelWeight = ValuesOf<typeof LabelWeight>;
7587
8151
 
7588
- /**
7589
- * This can be used to construct a behavior to apply a prefers color scheme: light only stylesheet.
7590
- * @public
7591
- */
7592
- export declare const lightModeStylesheetBehavior: (styles: ElementStyles) => MatchMediaStyleSheetBehavior;
7593
-
7594
8152
  /**
7595
8153
  * CSS custom property value for the {@link @fluentui/tokens#lineHeightBase100 | `lineHeightBase100`} design token.
7596
8154
  * @public
@@ -7749,14 +8307,18 @@ export declare const LinkTemplate: ElementViewTemplate<Link>;
7749
8307
  */
7750
8308
  export declare class Listbox extends FASTElement {
7751
8309
  /**
7752
- * Sets the listbox ID to a unique value if one is not provided.
8310
+ * A reference to the default slot element.
7753
8311
  *
7754
- * @override
7755
- * @public
7756
- * @remarks
7757
- * HTML Attribute: `id`
8312
+ * @internal
7758
8313
  */
7759
- id: string;
8314
+ defaultSlot: HTMLSlotElement;
8315
+ /**
8316
+ * Calls the `slotchangeHandler` when the `defaultSlot` element is assigned
8317
+ * via the `ref` directive in the template.
8318
+ *
8319
+ * @internal
8320
+ */
8321
+ protected defaultSlotChanged(): void;
7760
8322
  /**
7761
8323
  * Indicates whether the listbox allows multiple selection.
7762
8324
  *
@@ -7829,6 +8391,7 @@ export declare class Listbox extends FASTElement {
7829
8391
  */
7830
8392
  clickHandler(e: PointerEvent): boolean | void;
7831
8393
  constructor();
8394
+ connectedCallback(): void;
7832
8395
  /**
7833
8396
  * Handles observable subscriptions for the listbox.
7834
8397
  *
@@ -7852,7 +8415,7 @@ export declare class Listbox extends FASTElement {
7852
8415
  * @param e - The slotchange event
7853
8416
  * @public
7854
8417
  */
7855
- slotchangeHandler(e: Event): void;
8418
+ slotchangeHandler(e?: Event): void;
7856
8419
  }
7857
8420
 
7858
8421
  /**
@@ -7887,117 +8450,6 @@ export declare const ListboxTemplate: ElementViewTemplate<Listbox>;
7887
8450
  */
7888
8451
  export declare function listboxTemplate<T extends Listbox>(): ElementViewTemplate<T>;
7889
8452
 
7890
- /**
7891
- * An abstract behavior to react to media queries. Implementations should implement
7892
- * the `constructListener` method to perform some action based on media query changes.
7893
- *
7894
- * @public
7895
- */
7896
- export declare abstract class MatchMediaBehavior implements HostBehavior {
7897
- /**
7898
- * The behavior needs to operate on element instances but elements might share a behavior instance.
7899
- * To ensure proper attachment / detachment per instance, we construct a listener for
7900
- * each bind invocation and cache the listeners by element reference.
7901
- */
7902
- private listenerCache;
7903
- /**
7904
- * The media query that the behavior operates on.
7905
- */
7906
- readonly query: MediaQueryList;
7907
- /**
7908
- *
7909
- * @param query - The media query to operate from.
7910
- */
7911
- constructor(query: MediaQueryList);
7912
- /**
7913
- * Constructs a function that will be invoked with the MediaQueryList context
7914
- * @param controller - The host controller orchestrating this behavior.
7915
- */
7916
- protected abstract constructListener(controller: HostController): MediaQueryListListener;
7917
- /**
7918
- * Binds the behavior to the element.
7919
- * @param controller - The host controller orchestrating this behavior.
7920
- */
7921
- connectedCallback(controller: HostController): void;
7922
- /**
7923
- * Unbinds the behavior from the element.
7924
- * @param controller - The host controller orchestrating this behavior.
7925
- */
7926
- disconnectedCallback(controller: HostController): void;
7927
- }
7928
-
7929
- /**
7930
- * A behavior to add or remove a stylesheet from an element based on a media query. The behavior ensures that
7931
- * styles are applied while the a query matches the environment and that styles are not applied if the query does
7932
- * not match the environment.
7933
- *
7934
- * @public
7935
- */
7936
- export declare class MatchMediaStyleSheetBehavior extends MatchMediaBehavior {
7937
- /**
7938
- * The media query that the behavior operates on.
7939
- */
7940
- readonly query: MediaQueryList;
7941
- /**
7942
- * The styles object to be managed by the behavior.
7943
- */
7944
- readonly styles: ElementStyles;
7945
- /**
7946
- * Constructs a {@link MatchMediaStyleSheetBehavior} instance.
7947
- * @param query - The media query to operate from.
7948
- * @param styles - The styles to coordinate with the query.
7949
- */
7950
- constructor(query: MediaQueryList, styles: ElementStyles);
7951
- /**
7952
- * Defines a function to construct {@link MatchMediaStyleSheetBehavior | MatchMediaStyleSheetBehaviors} for
7953
- * a provided query.
7954
- * @param query - The media query to operate from.
7955
- *
7956
- * @public
7957
- * @example
7958
- *
7959
- * ```ts
7960
- * import { css } from "@microsoft/fast-element";
7961
- * import { MatchMediaStyleSheetBehavior } from "@fluentui/web-components";
7962
- *
7963
- * const landscapeBehavior = MatchMediaStyleSheetBehavior.with(
7964
- * window.matchMedia("(orientation: landscape)")
7965
- * );
7966
- *
7967
- * const styles = css`
7968
- * :host {
7969
- * width: 200px;
7970
- * height: 400px;
7971
- * }
7972
- * `
7973
- * .withBehaviors(landscapeBehavior(css`
7974
- * :host {
7975
- * width: 400px;
7976
- * height: 200px;
7977
- * }
7978
- * `))
7979
- * ```
7980
- */
7981
- static with(query: MediaQueryList): (styles: ElementStyles) => MatchMediaStyleSheetBehavior;
7982
- /**
7983
- * Constructs a match-media listener for a provided element.
7984
- * @param source - the element for which to attach or detach styles.
7985
- */
7986
- protected constructListener(controller: HostController): MediaQueryListListener;
7987
- /**
7988
- * Unbinds the behavior from the element.
7989
- * @param controller - The host controller orchestrating this behavior.
7990
- * @internal
7991
- */
7992
- removedCallback(controller: HostController<any>): void;
7993
- }
7994
-
7995
- /**
7996
- * An event listener fired by a {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaQueryList | MediaQueryList }.
7997
- * @public
7998
- */
7999
- export declare type MediaQueryListListener = (this: MediaQueryList, ev?: MediaQueryListEvent) => void;
8000
-
8001
8453
  /**
8002
8454
  * A Menu component that provides a customizable menu element.
8003
8455
  *
@@ -8072,12 +8524,28 @@ export declare class Menu extends FASTElement {
8072
8524
  * Holds the slotted menu list.
8073
8525
  * @public
8074
8526
  */
8075
- slottedMenuList: MenuList[];
8527
+ slottedMenuList: HTMLElement[];
8528
+ /**
8529
+ * Sets up the component when the slotted menu list changes.
8530
+ * @param prev - The previous items in the slotted menu list.
8531
+ * @param next - The new items in the slotted menu list.
8532
+ * @internal
8533
+ */
8534
+ slottedMenuListChanged(prev: HTMLElement[] | undefined, next: HTMLElement[] | undefined): void;
8076
8535
  /**
8077
8536
  * Holds the slotted triggers.
8078
8537
  * @public
8079
8538
  */
8080
8539
  slottedTriggers: HTMLElement[];
8540
+ /**
8541
+ * Ensures the trigger is properly set up when the slotted triggers change.
8542
+ * This includes setting ARIA attributes and adding event listeners based on the current property values.
8543
+ *
8544
+ * @param prev - The previous items in the slotted triggers list.
8545
+ * @param next - The current items in the slotted triggers list.
8546
+ * @internal
8547
+ */
8548
+ slottedTriggersChanged(prev: HTMLElement[] | undefined, next: HTMLElement[] | undefined): void;
8081
8549
  /**
8082
8550
  * Holds the primary slot element.
8083
8551
  * @public
@@ -8098,6 +8566,14 @@ export declare class Menu extends FASTElement {
8098
8566
  * @internal
8099
8567
  */
8100
8568
  private _menuList?;
8569
+ /**
8570
+ * @internal
8571
+ */
8572
+ private _triggerAbortController?;
8573
+ /**
8574
+ * @internal
8575
+ */
8576
+ private _menuListAbortController?;
8101
8577
  /**
8102
8578
  * Called when the element is connected to the DOM.
8103
8579
  * Sets up the component.
@@ -8112,7 +8588,8 @@ export declare class Menu extends FASTElement {
8112
8588
  disconnectedCallback(): void;
8113
8589
  /**
8114
8590
  * Sets the component.
8115
- * Sets the trigger and menu list elements and adds event listeners.
8591
+ * @deprecated This method is no longer used. Trigger and menu-list listeners are now
8592
+ * managed by their respective slot-changed callbacks.
8116
8593
  * @public
8117
8594
  */
8118
8595
  setComponent(): void;
@@ -8182,23 +8659,15 @@ export declare class Menu extends FASTElement {
8182
8659
  */
8183
8660
  closeOnScrollChanged(oldValue: boolean, newValue: boolean): void;
8184
8661
  /**
8185
- * Adds event listeners.
8186
- * Adds click and keydown event listeners to the trigger.
8187
- * Adds a 'toggle' event listener to the menu list.
8188
- * If 'openOnHover' is true, adds a 'mouseover' event listener to the trigger.
8189
- * If 'openOnContext' is true, adds a 'contextmenu' event listener to the trigger and a document 'click' event listener.
8662
+ * Adds trigger-related event listeners.
8190
8663
  * @internal
8191
8664
  */
8192
- private addListeners;
8665
+ private addTriggerListeners;
8193
8666
  /**
8194
- * Removes event listeners.
8195
- * Removes click and keydown event listeners from the trigger.
8196
- * Also removes toggle event listener from the menu list.
8197
- * Also removes 'mouseover' event listeners from the trigger.
8198
- * Also removes 'contextmenu' event listeners from the trigger and document 'click' event listeners.
8667
+ * Adds menu-list event listeners.
8199
8668
  * @internal
8200
8669
  */
8201
- private removeListeners;
8670
+ private addMenuListListeners;
8202
8671
  /**
8203
8672
  * Handles keyboard interaction for the menu. Closes the menu and focuses on the trigger when the Escape key is
8204
8673
  * pressed. Closes the menu when the Tab key is pressed.
@@ -8415,7 +8884,9 @@ export declare class MenuItem extends FASTElement {
8415
8884
  * Setup required ARIA on open/close
8416
8885
  * @internal
8417
8886
  */
8418
- toggleHandler: (e: Event) => void;
8887
+ handleToggle: (e: Event) => void;
8888
+ /** @internal */
8889
+ handleSubmenuFocusOut: (e: FocusEvent) => void;
8419
8890
  /**
8420
8891
  * @internal
8421
8892
  */
@@ -8487,7 +8958,7 @@ export declare const MenuItemStyles: ElementStyles;
8487
8958
  export declare const MenuItemTemplate: ElementViewTemplate<MenuItem>;
8488
8959
 
8489
8960
  /**
8490
- * A Menu Custom HTML Element.
8961
+ * A MenuList Custom HTML Element.
8491
8962
  * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#menu | ARIA menu }.
8492
8963
  *
8493
8964
  * @tag fluent-menu-list
@@ -8496,74 +8967,11 @@ export declare const MenuItemTemplate: ElementViewTemplate<MenuItem>;
8496
8967
  *
8497
8968
  * @public
8498
8969
  */
8499
- export declare class MenuList extends FASTElement {
8500
- /**
8501
- * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
8502
- *
8503
- * @internal
8504
- */
8505
- elementInternals: ElementInternals;
8506
- /**
8507
- * @internal
8508
- */
8509
- items: HTMLElement[];
8510
- protected itemsChanged(oldValue: HTMLElement[], newValue: HTMLElement[]): void;
8511
- protected menuItems: Element[] | undefined;
8512
- /**
8513
- * The index of the focusable element in the items array
8514
- * defaults to -1
8515
- */
8516
- private focusIndex;
8517
- private static focusableElementRoles;
8518
- constructor();
8519
- /**
8520
- * @internal
8521
- */
8522
- connectedCallback(): void;
8523
- /**
8524
- * @internal
8525
- */
8970
+ export declare class MenuList extends BaseMenuList {
8971
+ private fg?;
8972
+ private fgItems?;
8526
8973
  disconnectedCallback(): void;
8527
- /**
8528
- * @internal
8529
- */
8530
- readonly isNestedMenu: () => boolean;
8531
- /**
8532
- * Focuses the first item in the menu.
8533
- *
8534
- * @public
8535
- */
8536
- focus(): void;
8537
- /**
8538
- * @internal
8539
- */
8540
- handleMenuKeyDown(e: KeyboardEvent): void | boolean;
8541
- /**
8542
- * if focus is moving out of the menu, reset to a stable initial state
8543
- * @internal
8544
- */
8545
- handleFocusOut: (e: FocusEvent) => void;
8546
- private handleItemFocus;
8547
- private removeItemListeners;
8548
- private static elementIndent;
8549
- protected setItems(): void;
8550
- /**
8551
- * Method for Observable changes to the hidden attribute of child elements
8552
- */
8553
- handleChange(source: any, propertyName: string): void;
8554
- /**
8555
- * Handle change from child MenuItem element and set radio group behavior
8556
- */
8557
- private changedMenuItemHandler;
8558
- /**
8559
- * check if the item is a menu item
8560
- */
8561
- protected isMenuItemElement: (el: Element) => el is HTMLElement;
8562
- /**
8563
- * check if the item is focusable
8564
- */
8565
- private isFocusableElement;
8566
- private setFocus;
8974
+ setItems(): void;
8567
8975
  }
8568
8976
 
8569
8977
  /**
@@ -8630,8 +9038,9 @@ export declare class MessageBar extends FASTElement {
8630
9038
  */
8631
9039
  intent?: MessageBarIntent;
8632
9040
  /**
8633
- * @public
8634
9041
  * Method to emit a `dismiss` event when the message bar is dismissed
9042
+ *
9043
+ * @public
8635
9044
  */
8636
9045
  dismissMessageBar: () => void;
8637
9046
  }
@@ -8646,8 +9055,9 @@ export declare class MessageBar extends FASTElement {
8646
9055
  export declare const MessageBarDefinition: FASTElementDefinition<typeof MessageBar>;
8647
9056
 
8648
9057
  /**
8649
- * @public
8650
9058
  * The `intent` variations for the MessageBar component.
9059
+ *
9060
+ * @public
8651
9061
  */
8652
9062
  export declare const MessageBarIntent: {
8653
9063
  readonly success: "success";
@@ -8659,8 +9069,9 @@ export declare const MessageBarIntent: {
8659
9069
  export declare type MessageBarIntent = ValuesOf<typeof MessageBarIntent>;
8660
9070
 
8661
9071
  /**
8662
- * @public
8663
9072
  * The `layout` variations for the MessageBar component.
9073
+ *
9074
+ * @public
8664
9075
  */
8665
9076
  export declare const MessageBarLayout: {
8666
9077
  readonly multiline: "multiline";
@@ -8670,8 +9081,9 @@ export declare const MessageBarLayout: {
8670
9081
  export declare type MessageBarLayout = ValuesOf<typeof MessageBarLayout>;
8671
9082
 
8672
9083
  /**
8673
- * @public
8674
9084
  * The `shape` variations for the MessageBar component.
9085
+ *
9086
+ * @public
8675
9087
  */
8676
9088
  export declare const MessageBarShape: {
8677
9089
  readonly rounded: "rounded";
@@ -8689,10 +9101,25 @@ export declare const MessageBarStyles: ElementStyles;
8689
9101
 
8690
9102
  /**
8691
9103
  * The template for the MessageBar component.
8692
- * @type {ElementViewTemplate<MessageBar>}
9104
+ * @type ElementViewTemplate
8693
9105
  */
8694
9106
  export declare const MessageBarTemplate: ElementViewTemplate<MessageBar>;
8695
9107
 
9108
+ /**
9109
+ * Standard orientation values
9110
+ * @public
9111
+ */
9112
+ export declare const Orientation: {
9113
+ readonly horizontal: "horizontal";
9114
+ readonly vertical: "vertical";
9115
+ };
9116
+
9117
+ /**
9118
+ * The orientation type
9119
+ * @public
9120
+ */
9121
+ export declare type Orientation = (typeof Orientation)[keyof typeof Orientation];
9122
+
8696
9123
  /**
8697
9124
  * A Progress HTML Element.
8698
9125
  * Based on BaseProgressBar and includes style and layout specific attributes
@@ -8705,14 +9132,20 @@ export declare class ProgressBar extends BaseProgressBar {
8705
9132
  /**
8706
9133
  * The thickness of the progress bar
8707
9134
  *
8708
- * @public
9135
+ * The thickness of the progress bar
9136
+ *
8709
9137
  * HTML Attribute: `thickness`
9138
+ *
9139
+ * @public
8710
9140
  */
8711
9141
  thickness?: ProgressBarThickness;
8712
9142
  /**
8713
9143
  * The shape of the progress bar
8714
- * @public
9144
+ * The shape of the progress bar
9145
+ *
8715
9146
  * HTML Attribute: `shape`
9147
+ *
9148
+ * @public
8716
9149
  */
8717
9150
  shape?: ProgressBarShape;
8718
9151
  }
@@ -8792,352 +9225,88 @@ declare type PropertyNameForCalculation = 'max' | 'value';
8792
9225
  * @fires change - Emits a custom change event when the checked state changes
8793
9226
  * @fires input - Emits a custom input event when the checked state changes
8794
9227
  *
8795
- * @public
8796
- */
8797
- export declare class Radio extends BaseCheckbox {
8798
- constructor();
8799
- /**
8800
- * Toggles the disabled state when the user changes the `disabled` property.
8801
- *
8802
- * @param prev - the previous value of the `disabled` property
8803
- * @param next - the current value of the `disabled` property
8804
- * @internal
8805
- * @override
8806
- */
8807
- protected disabledChanged(prev: boolean | undefined, next: boolean | undefined): void;
8808
- /**
8809
- * This method is a no-op for the radio component.
8810
- *
8811
- * @internal
8812
- * @override
8813
- * @remarks
8814
- * To make a group of radio controls required, see {@link RadioGroup.required}.
8815
- */
8816
- protected requiredChanged(): void;
8817
- /**
8818
- * This method is a no-op for the radio component.
8819
- *
8820
- * @internal
8821
- * @override
8822
- * @remarks
8823
- * The radio form value is controlled by the `RadioGroup` component.
8824
- */
8825
- setFormValue(): void;
8826
- /**
8827
- * Sets the validity of the control.
8828
- *
8829
- * @internal
8830
- * @override
8831
- * @remarks
8832
- * The radio component does not have a `required` attribute, so this method always sets the validity to `true`.
8833
- */
8834
- setValidity(): void;
8835
- /**
8836
- * Toggles the checked state of the control.
8837
- *
8838
- * @param force - Forces the element to be checked or unchecked
8839
- * @public
8840
- * @override
8841
- * @remarks
8842
- * The radio checked state is controlled by the `RadioGroup` component, so the `force` parameter defaults to `true`.
8843
- */
8844
- toggleChecked(force?: boolean): void;
8845
- }
8846
-
8847
- /**
8848
- * @public
8849
- */
8850
- export declare type RadioControl = Pick<HTMLInputElement, 'checked' | 'disabled' | 'focus' | 'setAttribute' | 'getAttribute'>;
8851
-
8852
- /**
8853
- * The Fluent Radio Element.
8854
- *
8855
- *
8856
- * @public
8857
- * @remarks
8858
- * HTML Element: \<fluent-radio\>
8859
- */
8860
- export declare const RadioDefinition: FASTElementDefinition<typeof Radio>;
8861
-
8862
- /**
8863
- * A Radio Group Custom HTML Element.
8864
- * Implements the {@link https://w3c.github.io/aria/#radiogroup | ARIA `radiogroup` role}.
8865
- *
8866
- * @tag fluent-radio-group
8867
- *
8868
- * @public
8869
- *
8870
- * @slot - The default slot for the radio group
8871
- */
8872
- export declare class RadioGroup extends FASTElement {
8873
- /**
8874
- * The index of the checked radio, scoped to the enabled radios.
8875
- *
8876
- * @internal
8877
- */
8878
- protected checkedIndex: number;
8879
- /**
8880
- * Sets the checked state of the nearest enabled radio when the `checkedIndex` changes.
8881
- *
8882
- * @param prev - the previous index
8883
- * @param next - the current index
8884
- * @internal
8885
- */
8886
- protected checkedIndexChanged(prev: number | undefined, next: number): void;
8887
- /**
8888
- * Indicates that the value has been changed by the user.
8889
- */
8890
- private dirtyState;
8891
- /**
8892
- * Disables the radio group and child radios.
8893
- *
8894
- * @public
8895
- * @remarks
8896
- * HTML Attribute: `disabled`
8897
- */
8898
- disabled: boolean;
8899
- /**
8900
- * Sets the `disabled` attribute on all child radios when the `disabled` property changes.
8901
- *
8902
- * @param prev - the previous disabled value
8903
- * @param next - the current disabled value
8904
- * @internal
8905
- */
8906
- protected disabledChanged(prev?: boolean, next?: boolean): void;
8907
- /**
8908
- * The value of the checked radio.
8909
- *
8910
- * @public
8911
- * @remarks
8912
- * HTML Attribute: `value`
8913
- */
8914
- initialValue?: string;
8915
- /**
8916
- * Sets the matching radio to checked when the value changes. If no radio matches the value, no radio will be checked.
8917
- *
8918
- * @param prev - the previous value
8919
- * @param next - the current value
8920
- */
8921
- initialValueChanged(prev: string | undefined, next: string | undefined): void;
8922
- /**
8923
- * The name of the radio group.
8924
- *
8925
- * @public
8926
- * @remarks
8927
- * HTML Attribute: `name`
8928
- */
8929
- name: string;
8930
- /**
8931
- * Sets the `name` attribute on all child radios when the `name` property changes.
8932
- *
8933
- * @internal
8934
- */
8935
- protected nameChanged(prev: string | undefined, next: string | undefined): void;
8936
- /**
8937
- * The orientation of the group.
8938
- *
8939
- * @public
8940
- * @remarks
8941
- * HTML Attribute: `orientation`
8942
- */
8943
- orientation?: RadioGroupOrientation;
8944
- /**
8945
- * Sets the ariaOrientation attribute when the orientation changes.
8946
- *
8947
- * @param prev - the previous orientation
8948
- * @param next - the current orientation
8949
- * @internal
8950
- */
8951
- orientationChanged(prev: RadioGroupOrientation | undefined, next: RadioGroupOrientation | undefined): void;
8952
- /**
8953
- * The collection of all child radios.
8954
- *
8955
- * @public
8956
- */
8957
- radios: Radio[];
8958
- /**
8959
- * Updates the enabled radios collection when properties on the child radios change.
8960
- *
8961
- * @param prev - the previous radios
8962
- * @param next - the current radios
8963
- */
8964
- radiosChanged(prev: Radio[] | undefined, next: Radio[] | undefined): void;
8965
- /**
8966
- * Indicates whether the radio group is required.
8967
- *
8968
- * @public
8969
- * @remarks
8970
- * HTML Attribute: `required`
8971
- */
8972
- required: boolean;
8973
- /**
8974
- *
8975
- * @param prev - the previous required value
8976
- * @param next - the current required value
8977
- */
8978
- requiredChanged(prev: boolean, next: boolean): void;
8979
- /**
8980
- * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
8981
- *
8982
- * @internal
8983
- */
8984
- elementInternals: ElementInternals;
8985
- /**
8986
- * A collection of child radios that are not disabled.
8987
- *
8988
- * @internal
8989
- */
8990
- get enabledRadios(): Radio[];
8991
- /**
8992
- * The form-associated flag.
8993
- * @see {@link https://html.spec.whatwg.org/multipage/custom-elements.html#custom-elements-face-example | Form-associated custom elements}
8994
- *
8995
- * @public
8996
- */
8997
- static formAssociated: boolean;
8998
- /**
8999
- * The fallback validation message, taken from a native checkbox `<input>` element.
9000
- *
9001
- * @internal
9002
- */
9003
- private _validationFallbackMessage;
9004
- /**
9005
- * The validation message. Uses the browser's default validation message for native checkboxes if not otherwise
9006
- * specified (e.g., via `setCustomValidity`).
9007
- *
9008
- * @internal
9009
- */
9010
- get validationMessage(): string;
9011
- /**
9012
- * The element's validity state.
9013
- *
9014
- * @public
9015
- * @remarks
9016
- * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/validity | `ElementInternals.validity`} property.
9017
- */
9018
- get validity(): ValidityState;
9019
- /**
9020
- * The current value of the checked radio.
9021
- *
9022
- * @public
9023
- */
9024
- get value(): string | null;
9025
- set value(next: string | null);
9026
- /**
9027
- * Sets the checked state of all radios when any radio emits a `change` event.
9028
- *
9029
- * @param e - the change event
9030
- */
9031
- changeHandler(e: Event): boolean | void;
9032
- /**
9033
- * Checks the radio at the specified index.
9034
- *
9035
- * @param index - the index of the radio to check
9036
- * @internal
9037
- */
9038
- checkRadio(index?: number, shouldEmit?: boolean): void;
9039
- /**
9040
- * Checks the validity of the element and returns the result.
9041
- *
9042
- * @public
9043
- * @remarks
9044
- * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/checkValidity | `HTMLInputElement.checkValidity()`} method.
9045
- */
9046
- checkValidity(): boolean;
9047
- /**
9048
- * Handles click events for the radio group.
9049
- *
9050
- * @param e - the click event
9051
- * @internal
9052
- */
9053
- clickHandler(e: MouseEvent): boolean | void;
9054
- constructor();
9055
- /**
9056
- * Focuses the checked radio or the first enabled radio.
9057
- *
9058
- * @internal
9059
- */
9060
- focus(): void;
9061
- /**
9062
- * Enables tabbing through the radio group when the group receives focus.
9063
- *
9064
- * @param e - the focus event
9065
- * @internal
9066
- */
9067
- focusinHandler(e: FocusEvent): boolean | void;
9068
- /**
9069
- * Sets the tabindex of the radios based on the checked state when the radio group loses focus.
9070
- *
9071
- * @param e - the focusout event
9072
- * @internal
9073
- */
9074
- focusoutHandler(e: FocusEvent): boolean | void;
9075
- formResetCallback(): void;
9076
- private getEnabledIndexInBounds;
9077
- /**
9078
- * Handles keydown events for the radio group.
9079
- *
9080
- * @param e - the keyboard event
9081
- * @internal
9082
- */
9083
- keydownHandler(e: KeyboardEvent): boolean | void;
9084
- /**
9085
- *
9086
- * @param e - the disabled event
9087
- */
9088
- disabledRadioHandler(e: CustomEvent): void;
9228
+ * @public
9229
+ */
9230
+ export declare class Radio extends BaseCheckbox {
9231
+ constructor();
9089
9232
  /**
9090
- * Reports the validity of the element.
9233
+ * Toggles the disabled state when the user changes the `disabled` property.
9091
9234
  *
9092
- * @public
9093
- * @remarks
9094
- * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/reportValidity | `HTMLInputElement.reportValidity()`} method.
9235
+ * @param prev - the previous value of the `disabled` property
9236
+ * @param next - the current value of the `disabled` property
9237
+ * @internal
9238
+ * @override
9095
9239
  */
9096
- reportValidity(): boolean;
9240
+ protected disabledChanged(prev: boolean | undefined, next: boolean | undefined): void;
9097
9241
  /**
9098
- * Resets the `tabIndex` for all child radios when the radio group loses focus.
9242
+ * This method is a no-op for the radio component.
9099
9243
  *
9100
9244
  * @internal
9245
+ * @override
9246
+ * @remarks
9247
+ * To make a group of radio controls required, see `RadioGroup.required`.
9101
9248
  */
9102
- private restrictFocus;
9249
+ protected requiredChanged(): void;
9103
9250
  /**
9104
- * Reflects the {@link https://developer.mozilla.org/docs/Web/API/ElementInternals/setFormValue | `ElementInternals.setFormValue()`} method.
9251
+ * This method is a no-op for the radio component.
9105
9252
  *
9106
9253
  * @internal
9254
+ * @override
9255
+ * @remarks
9256
+ * The radio form value is controlled by the `RadioGroup` component.
9107
9257
  */
9108
- setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;
9258
+ setFormValue(): void;
9109
9259
  /**
9110
- * Sets the validity of the element.
9111
- *
9112
- * @param flags - Validity flags to set.
9113
- * @param message - Optional message to supply. If not provided, the element's `validationMessage` will be used.
9114
- * @param anchor - Optional anchor to use for the validation message.
9260
+ * Sets the validity of the control.
9115
9261
  *
9116
9262
  * @internal
9263
+ * @override
9117
9264
  * @remarks
9118
- * RadioGroup validation is reported through the individual Radio elements rather than the RadioGroup itself.
9119
- * This is necessary because:
9120
- * 1. Each Radio is form-associated (extends BaseCheckbox which has `formAssociated = true`)
9121
- * 2. Browser validation UIs and screen readers announce validation against individual form controls
9122
- * 3. For groups like RadioGroup, the browser needs to report the error on a specific member of the group
9123
- * 4. We anchor the error to the first Radio so it receives focus and announcement
9124
- *
9125
- * When the group is invalid (required but no selection):
9126
- * - Only the first Radio gets the invalid state with the validation message
9127
- * - Other Radios are kept valid since selecting any of them would satisfy the requirement
9128
- *
9129
- * When the group becomes valid (user selects any Radio):
9130
- * - All Radios are cleared back to valid state
9131
- * - This allows form submission to proceed
9265
+ * The radio component does not have a `required` attribute, so this method always sets the validity to `true`.
9132
9266
  */
9133
- setValidity(flags?: Partial<ValidityState>, message?: string, anchor?: HTMLElement): void;
9267
+ setValidity(): void;
9134
9268
  /**
9135
- * Updates the collection of child radios when the slot changes.
9269
+ * Toggles the checked state of the control.
9136
9270
  *
9137
- * @param e - the slot change event
9138
- * @internal
9271
+ * @param force - Forces the element to be checked or unchecked
9272
+ * @public
9273
+ * @override
9274
+ * @remarks
9275
+ * The radio checked state is controlled by the `RadioGroup` component, so the `force` parameter defaults to `true`.
9139
9276
  */
9140
- slotchangeHandler(e: Event): void;
9277
+ toggleChecked(force?: boolean): void;
9278
+ }
9279
+
9280
+ /**
9281
+ * @public
9282
+ */
9283
+ export declare type RadioControl = Pick<HTMLInputElement, 'checked' | 'disabled' | 'focus' | 'setAttribute' | 'getAttribute'>;
9284
+
9285
+ /**
9286
+ * The Fluent Radio Element.
9287
+ *
9288
+ *
9289
+ * @public
9290
+ * @remarks
9291
+ * HTML Element: \<fluent-radio\>
9292
+ */
9293
+ export declare const RadioDefinition: FASTElementDefinition<typeof Radio>;
9294
+
9295
+ /**
9296
+ * A Radio Group Custom HTML Element.
9297
+ * Implements the {@link https://w3c.github.io/aria/#radiogroup | ARIA `radiogroup` role}.
9298
+ *
9299
+ * @tag fluent-radio-group
9300
+ *
9301
+ * @slot - The default slot for the radio group
9302
+ *
9303
+ * @public
9304
+ */
9305
+ export declare class RadioGroup extends BaseRadioGroup {
9306
+ private fg;
9307
+ private fgItems;
9308
+ disconnectedCallback(): void;
9309
+ radiosChanged(prev: Radio[] | undefined, next: Radio[] | undefined): void;
9141
9310
  }
9142
9311
 
9143
9312
  /**
@@ -9308,16 +9477,10 @@ export declare const roleForMenuItem: {
9308
9477
  * as each entry’s value is either a string or a number.
9309
9478
  * @param node - The node to set the theme on, defaults to `document` for
9310
9479
  * setting global theme.
9311
- * @internal
9480
+ * @public
9312
9481
  */
9313
9482
  export declare function setTheme(theme: Theme | null, node?: Document | HTMLElement): void;
9314
9483
 
9315
- /**
9316
- * @internal
9317
- * @deprecated Use `setTheme(theme, element)` instead.
9318
- */
9319
- export declare function setThemeFor(element: HTMLElement, theme: Theme | null): void;
9320
-
9321
9484
  /**
9322
9485
  * CSS custom property value for the {@link @fluentui/tokens#shadow16 | `shadow16`} design token.
9323
9486
  * @public
@@ -9608,6 +9771,13 @@ export declare class Slider extends FASTElement implements SliderConfiguration {
9608
9771
  */
9609
9772
  disabled: boolean;
9610
9773
  protected disabledChanged(): void;
9774
+ /**
9775
+ * Returns true if the component is disabled, taking into account the `disabled`
9776
+ * attribute, `aria-disabled` attribute, and the `:disabled` pseudo-class.
9777
+ *
9778
+ * @internal
9779
+ */
9780
+ protected get isDisabled(): boolean;
9611
9781
  /**
9612
9782
  * The minimum allowed value.
9613
9783
  *
@@ -9678,9 +9848,6 @@ export declare class Slider extends FASTElement implements SliderConfiguration {
9678
9848
  */
9679
9849
  mode: SliderMode;
9680
9850
  constructor();
9681
- /**
9682
- * @internal
9683
- */
9684
9851
  connectedCallback(): void;
9685
9852
  /**
9686
9853
  * @internal
@@ -10181,8 +10348,22 @@ export declare class Tab extends FASTElement {
10181
10348
  * HTML Attribute: disabled
10182
10349
  */
10183
10350
  disabled: boolean;
10184
- private styles;
10351
+ protected disabledChanged(prev: boolean, next: boolean): void;
10352
+ /**
10353
+ * Internal text content stylesheet, used to set the content of the `::after`
10354
+ * pseudo element to prevent layout shift when the font weight changes on selection.
10355
+ * @internal
10356
+ */
10357
+ private styles?;
10358
+ /**
10359
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
10360
+ *
10361
+ * @internal
10362
+ */
10363
+ elementInternals: ElementInternals;
10364
+ constructor();
10185
10365
  connectedCallback(): void;
10366
+ private setDisabledSideEffect;
10186
10367
  }
10187
10368
 
10188
10369
  export declare interface Tab extends StartEnd {
@@ -10191,33 +10372,13 @@ export declare interface Tab extends StartEnd {
10191
10372
  export declare const TabDefinition: FASTElementDefinition<typeof Tab>;
10192
10373
 
10193
10374
  /**
10194
- * A BaseTablist component with extra logic for handling the styled active tab indicator.
10375
+ * A Tablist component.
10195
10376
  *
10196
10377
  * @tag fluent-tablist
10197
10378
  *
10198
10379
  * @public
10199
10380
  */
10200
10381
  export declare class Tablist extends BaseTablist {
10201
- /**
10202
- * activeTabData
10203
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
10204
- */
10205
- private activeTabData;
10206
- /**
10207
- * previousActiveTabData
10208
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
10209
- */
10210
- private previousActiveTabData;
10211
- /**
10212
- * activeTabOffset
10213
- * Used to position the active indicator for animations of the active indicator on active tab changes.
10214
- */
10215
- private activeTabOffset;
10216
- /**
10217
- * activeTabScale
10218
- * Used to scale the tab active indicator up or down as animations of the active indicator occur.
10219
- */
10220
- private activeTabScale;
10221
10382
  /**
10222
10383
  * appearance
10223
10384
  * There are two modes of appearance: transparent and subtle.
@@ -10229,58 +10390,10 @@ export declare class Tablist extends BaseTablist {
10229
10390
  * Used to set the size of all the tab controls, which effects text size and margins. Three sizes: small, medium and large.
10230
10391
  */
10231
10392
  size?: TablistSize;
10232
- /**
10233
- * calculateAnimationProperties
10234
- *
10235
- * Recalculates the active tab offset and scale.
10236
- * These values will be applied to css variables that control the tab active indicator position animations
10237
- */
10238
- private calculateAnimationProperties;
10239
- /**
10240
- * getSelectedTabPosition - gets the x or y coordinates of the tab
10241
- */
10242
- private getTabPosition;
10243
- /**
10244
- * getSelectedTabScale - gets the scale of the tab
10245
- */
10246
- private getTabScale;
10247
- /**
10248
- * Calculates and applies updated values to CSS variables.
10249
- *
10250
- * @param tab - the tab element to apply the updated values to
10251
- * @internal
10252
- */
10253
- private applyUpdatedCSSValues;
10254
- /**
10255
- * Runs through all the operations required for setting the tab active indicator to its starting location, ending
10256
- * location, and applying the animated css class to the tab.
10257
- *
10258
- * @param tab - the tab element to apply the updated values to
10259
- * @internal
10260
- */
10261
- private animationLoop;
10262
- /**
10263
- * Sets the data from the active tab onto the class. used for making all the animation calculations for the active
10264
- * tab indicator.
10265
- *
10266
- * @internal
10267
- */
10268
- private setTabData;
10269
- /**
10270
- * Sets the css variables for the active tab indicator.
10271
- * @internal
10272
- */
10273
- private setAnimationVars;
10274
- /**
10275
- * Initiates the active tab indicator animation loop when activeid changes.
10276
- * @param oldValue - the previous tabId
10277
- * @param newValue - the new tabId
10278
- */
10279
- activeidChanged(oldValue: string, newValue: string): void;
10280
- /**
10281
- * Initiates the active tab indicator animation loop when tabs change.
10282
- */
10283
- tabsChanged(): void;
10393
+ private fg?;
10394
+ private fgItems?;
10395
+ disconnectedCallback(): void;
10396
+ tabsChanged(prev: Tab[] | undefined, next: Tab[] | undefined): void;
10284
10397
  }
10285
10398
 
10286
10399
  /**
@@ -10352,167 +10465,6 @@ export declare const TablistTemplate: ViewTemplate<Tablist, any>;
10352
10465
  */
10353
10466
  export declare type TabOptions = StartEndOptions<Tab>;
10354
10467
 
10355
- /**
10356
- * @deprecated - Use tablist instead
10357
- *
10358
- * @tag fluent-tab-panel
10359
- */
10360
- export declare class TabPanel extends FASTElement {
10361
- }
10362
-
10363
- /**
10364
- * @deprecated - Use tablist instead
10365
- */
10366
- export declare const TabPanelDefinition: FASTElementDefinition<typeof TabPanel>;
10367
-
10368
- export declare const TabPanelStyles: ElementStyles;
10369
-
10370
- export declare const TabPanelTemplate: ElementViewTemplate<TabPanel, any>;
10371
-
10372
- /**
10373
- * @deprecated - Use tablist instead
10374
- *
10375
- * @tag fluent-tabs
10376
- */
10377
- export declare class Tabs extends BaseTabs {
10378
- /**
10379
- * activeTabData
10380
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
10381
- */
10382
- private activeTabData;
10383
- /**
10384
- * previousActiveTabData
10385
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
10386
- */
10387
- private previousActiveTabData;
10388
- /**
10389
- * activeTabOffset
10390
- * Used to position the active indicator for animations of the active indicator on active tab changes.
10391
- */
10392
- private activeTabOffset;
10393
- /**
10394
- * activeTabScale
10395
- * Used to scale the tab active indicator up or down as animations of the active indicator occur.
10396
- */
10397
- private activeTabScale;
10398
- /**
10399
- * styles
10400
- * used in the class for storing the css variables required for animations
10401
- */
10402
- private styles;
10403
- /**
10404
- * appearance
10405
- * There are two modes of appearance: transparent and subtle.
10406
- */
10407
- appearance?: TabsAppearance;
10408
- /**
10409
- * disabled
10410
- * Used for disabling all click and keyboard events for the tabs, child tab elements and tab panel elements. UI styling of content and tabs will appear as "grayed out."
10411
- */
10412
- disabled?: boolean;
10413
- /**
10414
- * size
10415
- * defaults to medium.
10416
- * Used to set the size of all the tab controls, which effects text size and margins. Three sizes: small, medium and large.
10417
- */
10418
- size?: TabsSize;
10419
- /**
10420
- * calculateAnimationProperties
10421
- *
10422
- * Recalculates the active tab offset and scale.
10423
- * These values will be applied to css variables that control the tab active indicator position animations
10424
- */
10425
- private calculateAnimationProperties;
10426
- /**
10427
- * getSelectedTabPosition - gets the x or y coordinates of the tab
10428
- */
10429
- private getTabPosition;
10430
- /**
10431
- * getSelectedTabScale - gets the scale of the tab
10432
- */
10433
- private getTabScale;
10434
- /**
10435
- * Calculates and applies updated values to CSS variables.
10436
- *
10437
- * @param tab - the tab element to apply the updated values to
10438
- * @internal
10439
- */
10440
- private applyUpdatedCSSValues;
10441
- /**
10442
- * Runs through all the operations required for setting the tab active indicator to its starting location, ending
10443
- * location, and applying the animated css class to the tab.
10444
- *
10445
- * @param tab - the tab element to apply the updated values to
10446
- * @internal
10447
- */
10448
- private animationLoop;
10449
- /**
10450
- * Gets the position data for a tab element relative to its parent
10451
- * @param tab - The tab element to get position data for
10452
- * @returns The position data for the tab
10453
- */
10454
- private getTabPositionData;
10455
- /**
10456
- * Sets the data from the active tab onto the class. used for making all the animation calculations for the active
10457
- * tab indicator.
10458
- *
10459
- * @internal
10460
- */
10461
- private setTabData;
10462
- private setTabOffsetCSSVar;
10463
- private setTabScaleCSSVar;
10464
- activeidChanged(oldValue: string, newValue: string): void;
10465
- tabsChanged(): void;
10466
- }
10467
-
10468
- export declare interface Tabs extends StartEnd {
10469
- }
10470
-
10471
- export declare const TabsAppearance: {
10472
- readonly subtle: "subtle";
10473
- readonly transparent: "transparent";
10474
- };
10475
-
10476
- export declare type TabsAppearance = ValuesOf<typeof TabsAppearance>;
10477
-
10478
- /**
10479
- * @deprecated - Use tablist instead
10480
- */
10481
- export declare const TabsDefinition: FASTElementDefinition<typeof Tabs>;
10482
-
10483
- /**
10484
- * Tabs option configuration options
10485
- * @public
10486
- */
10487
- export declare type TabsOptions = StartEndOptions<Tabs>;
10488
-
10489
- /**
10490
- * The orientation of the component
10491
- * @public
10492
- */
10493
- export declare const TabsOrientation: {
10494
- readonly horizontal: "horizontal";
10495
- readonly vertical: "vertical";
10496
- };
10497
-
10498
- /**
10499
- * The types for the Tabs component
10500
- * @public
10501
- */
10502
- export declare type TabsOrientation = ValuesOf<typeof TabsOrientation>;
10503
-
10504
- export declare const TabsSize: {
10505
- readonly small: "small";
10506
- readonly medium: "medium";
10507
- readonly large: "large";
10508
- };
10509
-
10510
- export declare type TabsSize = ValuesOf<typeof TabsSize>;
10511
-
10512
- export declare const TabsStyles: ElementStyles;
10513
-
10514
- export declare const TabsTemplate: ElementViewTemplate<Tabs, any>;
10515
-
10516
10468
  export declare const TabStyles: ElementStyles;
10517
10469
 
10518
10470
  export declare const TabTemplate: ElementViewTemplate<Tab, any>;
@@ -10945,7 +10897,7 @@ export declare type TextWeight = ValuesOf<typeof TextWeight>;
10945
10897
  /**
10946
10898
  * Not using the `Theme` type from `@fluentui/tokens` package to allow custom
10947
10899
  * tokens to be added.
10948
- * @internal
10900
+ * @public
10949
10901
  */
10950
10902
  export declare type Theme = Record<string, string | number>;
10951
10903
 
@@ -11133,13 +11085,13 @@ export declare class Tooltip extends FASTElement {
11133
11085
  disconnectedCallback(): void;
11134
11086
  /**
11135
11087
  * Shows the tooltip
11136
- * @param delay Number of milliseconds to delay showing the tooltip
11088
+ * @param delay - Number of milliseconds to delay showing the tooltip
11137
11089
  * @internal
11138
11090
  */
11139
11091
  showTooltip(delay?: number): void;
11140
11092
  /**
11141
11093
  * Hide the tooltip
11142
- * @param delay Number of milliseconds to delay hiding the tooltip
11094
+ * @param delay - Number of milliseconds to delay hiding the tooltip
11143
11095
  * @internal
11144
11096
  */
11145
11097
  hideTooltip(delay?: number): void;
@@ -11217,28 +11169,39 @@ export declare const TooltipTemplate: ViewTemplate<Tooltip, any>;
11217
11169
  export declare class Tree extends BaseTree {
11218
11170
  /**
11219
11171
  * The size of the tree item element
11220
- * @public
11172
+ * The size of the tree item element
11173
+ *
11221
11174
  * HTML Attribute: size
11175
+ *
11176
+ * @public
11222
11177
  */
11223
11178
  size: TreeItemSize;
11224
11179
  protected sizeChanged(): void;
11225
11180
  /**
11226
11181
  * The appearance variants of the tree item element
11227
- * @public
11182
+ * The appearance variants of the tree item element
11183
+ *
11228
11184
  * HTML Attribute: appearance
11185
+ *
11186
+ * @public
11229
11187
  */
11230
11188
  appearance: TreeItemAppearance;
11231
11189
  protected appearanceChanged(): void;
11190
+ private fg?;
11191
+ private fgItems?;
11232
11192
  /**
11233
11193
  * child tree items supered change event
11234
11194
  * @internal
11235
11195
  */
11236
11196
  childTreeItemsChanged(): void;
11197
+ disconnectedCallback(): void;
11237
11198
  /**
11238
11199
  * 1. Update the child items' size based on the tree's size
11239
11200
  * 2. Update the child items' appearance based on the tree's appearance
11240
11201
  */
11241
11202
  updateSizeAndAppearance(): void;
11203
+ /** @internal */
11204
+ itemToggleHandler(): void;
11242
11205
  }
11243
11206
 
11244
11207
  /**