@telesign/boreal-web-components 0.1.0-alpha.3 → 0.1.0-alpha.5

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 (588) hide show
  1. package/components-build/bds-avatar.d.ts +11 -0
  2. package/components-build/bds-avatar.js +1 -0
  3. package/components-build/bds-badge.d.ts +11 -0
  4. package/components-build/bds-badge.js +1 -0
  5. package/components-build/bds-banner.js +1 -1
  6. package/components-build/bds-button-group.d.ts +11 -0
  7. package/components-build/bds-button-group.js +1 -0
  8. package/components-build/bds-button.js +1 -1
  9. package/components-build/bds-checkbox-card.d.ts +11 -0
  10. package/components-build/bds-checkbox-card.js +1 -0
  11. package/components-build/bds-checkbox.js +1 -1
  12. package/components-build/bds-dialog.js +1 -1
  13. package/components-build/bds-divider.d.ts +11 -0
  14. package/components-build/bds-divider.js +1 -0
  15. package/components-build/bds-flag.js +1 -1
  16. package/components-build/bds-grid-item.d.ts +11 -0
  17. package/components-build/bds-grid-item.js +1 -0
  18. package/components-build/bds-grid.d.ts +11 -0
  19. package/components-build/bds-grid.js +1 -0
  20. package/components-build/bds-list-menu-item.d.ts +11 -0
  21. package/components-build/bds-list-menu-item.js +1 -0
  22. package/components-build/bds-list-menu.d.ts +11 -0
  23. package/components-build/bds-list-menu.js +1 -0
  24. package/components-build/bds-popover.js +1 -1
  25. package/components-build/bds-radio-button.d.ts +11 -0
  26. package/components-build/bds-radio-button.js +1 -0
  27. package/components-build/bds-radio-card.d.ts +11 -0
  28. package/components-build/bds-radio-card.js +1 -0
  29. package/components-build/bds-radio-group.d.ts +11 -0
  30. package/components-build/bds-radio-group.js +1 -0
  31. package/components-build/bds-radio.d.ts +11 -0
  32. package/components-build/bds-radio.js +1 -0
  33. package/components-build/bds-spinner.js +1 -1
  34. package/components-build/bds-status.d.ts +11 -0
  35. package/components-build/bds-status.js +1 -0
  36. package/components-build/bds-tag.d.ts +11 -0
  37. package/components-build/bds-tag.js +1 -0
  38. package/components-build/bds-text-field.js +1 -1
  39. package/components-build/bds-toggle.d.ts +11 -0
  40. package/components-build/bds-toggle.js +1 -0
  41. package/components-build/bds-tooltip.js +1 -1
  42. package/components-build/bds-typography.js +1 -1
  43. package/components-build/index.js +1 -1
  44. package/components-build/p-BSlaf0ff.js +1 -0
  45. package/components-build/p-Bfazyxqi.js +1 -0
  46. package/components-build/p-CPvuMm5C.js +1 -0
  47. package/components-build/p-Cbibqaz0.js +1 -0
  48. package/components-build/p-ClR-wgiT.js +1 -0
  49. package/components-build/p-DfaYciGa.js +1 -0
  50. package/components-build/p-Dh8DSJs_.js +1 -0
  51. package/components-build/p-DhSchGPI.js +1 -0
  52. package/components-build/p-N_tqtRV2.js +1 -0
  53. package/components-build/p-bAMuJ4Jx.js +1 -0
  54. package/components-build/p-c2z3tneT.js +1 -0
  55. package/components-build/p-dz9-Q2N8.js +1 -0
  56. package/components-build/{p-CaHOghy5.js → p-fUK0GCeC.js} +1 -1
  57. package/components-build/p-iq2UuV7c.js +1 -0
  58. package/components-build/p-kGnB15Lz.js +1 -0
  59. package/components-build/p-nxYzL9uu.js +1 -0
  60. package/custom-elements.json +4611 -891
  61. package/dist/boreal-web-components/boreal-web-components.esm.js +1 -1
  62. package/dist/boreal-web-components/boreal-web-components.js +1 -1
  63. package/dist/boreal-web-components/css/boreal.css +1066 -1074
  64. package/dist/boreal-web-components/css/global.css +403 -407
  65. package/dist/boreal-web-components/css/theme-connect.css +163 -164
  66. package/dist/boreal-web-components/css/theme-engage.css +163 -164
  67. package/dist/boreal-web-components/css/theme-protect.css +163 -164
  68. package/dist/boreal-web-components/css/theme-proximus.css +164 -165
  69. package/dist/boreal-web-components/p-024d90b0.system.entry.js +1 -0
  70. package/dist/boreal-web-components/p-06DrzEMB.system.js +1 -0
  71. package/dist/boreal-web-components/p-11e4c0ec.system.entry.js +1 -0
  72. package/dist/boreal-web-components/p-147d6652.system.entry.js +1 -0
  73. package/dist/boreal-web-components/p-148d510f.entry.js +1 -0
  74. package/dist/boreal-web-components/p-19f9352d.entry.js +1 -0
  75. package/dist/boreal-web-components/p-277f142e.system.entry.js +1 -0
  76. package/dist/boreal-web-components/{p-8c57e06a.entry.js → p-2adf2cd5.entry.js} +1 -1
  77. package/dist/boreal-web-components/p-2be4aa3a.system.entry.js +1 -0
  78. package/dist/boreal-web-components/p-340896b2.entry.js +1 -0
  79. package/dist/boreal-web-components/p-365e8e5c.system.entry.js +1 -0
  80. package/dist/boreal-web-components/p-3d4ce8eb.system.entry.js +1 -0
  81. package/dist/boreal-web-components/p-44a8fde5.entry.js +1 -0
  82. package/dist/boreal-web-components/{p-efe57901.system.entry.js → p-48ebbfbe.system.entry.js} +1 -1
  83. package/dist/boreal-web-components/{p-5fa53a80.system.entry.js → p-4dc01078.system.entry.js} +1 -1
  84. package/dist/boreal-web-components/p-5681b294.system.entry.js +1 -0
  85. package/dist/boreal-web-components/p-5ed75075.entry.js +1 -0
  86. package/dist/boreal-web-components/p-635f676b.system.entry.js +1 -0
  87. package/dist/boreal-web-components/p-6629be14.entry.js +1 -0
  88. package/dist/boreal-web-components/p-68b83680.system.entry.js +1 -0
  89. package/dist/boreal-web-components/p-6a60d134.system.entry.js +1 -0
  90. package/dist/boreal-web-components/p-71ed1e1d.entry.js +1 -0
  91. package/dist/boreal-web-components/p-732e98f1.system.entry.js +1 -0
  92. package/dist/boreal-web-components/p-77658a5b.system.entry.js +1 -0
  93. package/dist/boreal-web-components/p-7aff4c78.entry.js +1 -0
  94. package/dist/boreal-web-components/p-7bb88855.entry.js +1 -0
  95. package/dist/boreal-web-components/p-7d3a8f61.entry.js +1 -0
  96. package/dist/boreal-web-components/p-7e672cce.entry.js +1 -0
  97. package/dist/boreal-web-components/p-7ebc67c9.entry.js +1 -0
  98. package/dist/boreal-web-components/p-81401e2a.system.entry.js +1 -0
  99. package/dist/boreal-web-components/p-8289e506.entry.js +1 -0
  100. package/dist/boreal-web-components/p-82d15372.entry.js +1 -0
  101. package/dist/boreal-web-components/p-851c06f2.entry.js +1 -0
  102. package/dist/boreal-web-components/p-8a3716ec.entry.js +1 -0
  103. package/dist/boreal-web-components/p-8f4f8af0.system.entry.js +1 -0
  104. package/dist/boreal-web-components/p-93066db4.system.entry.js +1 -0
  105. package/dist/boreal-web-components/p-Bfazyxqi.js +1 -0
  106. package/dist/boreal-web-components/{p-D4EFsvs1.js → p-BqJlOB6b.js} +2 -2
  107. package/dist/boreal-web-components/p-BsZkk4oK.system.js +1 -0
  108. package/dist/boreal-web-components/p-C-g3hhl_.system.js +1 -0
  109. package/dist/boreal-web-components/p-C0P3gzq5.system.js +1 -0
  110. package/dist/boreal-web-components/p-C4HM8wQe.js +1 -0
  111. package/dist/boreal-web-components/p-CPvuMm5C.js +1 -0
  112. package/dist/boreal-web-components/p-CRMH6mfq.system.js +1 -0
  113. package/dist/boreal-web-components/p-CU_dRLdk.system.js +1 -0
  114. package/dist/boreal-web-components/p-CW4-dkCF.system.js +1 -0
  115. package/dist/boreal-web-components/p-CXz1RLGi.system.js +1 -0
  116. package/dist/boreal-web-components/p-DCKg5Cg_.system.js +2 -0
  117. package/dist/boreal-web-components/{p-BuxZeJbu.system.js → p-DSU8tkVw.system.js} +1 -1
  118. package/dist/boreal-web-components/p-DYlZcFrB.system.js +1 -0
  119. package/dist/boreal-web-components/p-DfaYciGa.js +1 -0
  120. package/dist/boreal-web-components/p-DhSchGPI.js +1 -0
  121. package/dist/boreal-web-components/p-DlVzZK7o.js +1 -0
  122. package/dist/boreal-web-components/p-DlYG-OVB.js +1 -0
  123. package/dist/boreal-web-components/p-DnIhjwCH.system.js +1 -0
  124. package/dist/boreal-web-components/p-DpnBDSUm.system.js +1 -0
  125. package/dist/boreal-web-components/p-Dwo1hcd9.js +1 -0
  126. package/dist/boreal-web-components/p-RhSdMyWk.system.js +1 -0
  127. package/dist/boreal-web-components/{p-CaHOghy5.js → p-U9yfbs7i.js} +1 -1
  128. package/dist/boreal-web-components/p-a73659ac.system.entry.js +1 -0
  129. package/dist/boreal-web-components/p-b2ad9535.system.entry.js +1 -0
  130. package/dist/boreal-web-components/p-d4c30d2b.entry.js +1 -0
  131. package/dist/boreal-web-components/p-db0c10b9.system.entry.js +1 -0
  132. package/dist/boreal-web-components/p-dc7d429c.entry.js +1 -0
  133. package/dist/boreal-web-components/p-dca16a3d.entry.js +1 -0
  134. package/dist/boreal-web-components/p-de846c43.system.entry.js +1 -0
  135. package/dist/boreal-web-components/p-df087e23.system.entry.js +1 -0
  136. package/dist/boreal-web-components/p-dfb4854e.entry.js +1 -0
  137. package/dist/boreal-web-components/p-dz9-Q2N8.js +1 -0
  138. package/dist/boreal-web-components/p-e09b4d14.system.entry.js +1 -0
  139. package/dist/boreal-web-components/p-e0a41cab.system.entry.js +1 -0
  140. package/dist/boreal-web-components/p-e55f2a8b.entry.js +1 -0
  141. package/dist/boreal-web-components/p-e7af1e1a.entry.js +1 -0
  142. package/dist/boreal-web-components/p-efe159aa.entry.js +1 -0
  143. package/dist/boreal-web-components/p-f65e9d0c.system.entry.js +1 -0
  144. package/dist/boreal-web-components/p-f792aa74.entry.js +1 -0
  145. package/dist/boreal-web-components/p-fb9a0e94.entry.js +1 -0
  146. package/dist/boreal-web-components/p-iq2UuV7c.js +1 -0
  147. package/dist/boreal-web-components/p-kGnB15Lz.js +1 -0
  148. package/dist/boreal-web-components/p-vzZJGcYF.system.js +1 -0
  149. package/dist/boreal-web-components/p-wREMI3WA.js +1 -0
  150. package/dist/boreal-web-components/scss/maps/_primitives.scss +404 -408
  151. package/dist/boreal-web-components/scss/maps/_theme-connect.scss +164 -165
  152. package/dist/boreal-web-components/scss/maps/_theme-engage.scss +164 -165
  153. package/dist/boreal-web-components/scss/maps/_theme-protect.scss +164 -165
  154. package/dist/boreal-web-components/scss/maps/_theme-proximus.scss +165 -166
  155. package/dist/boreal-web-components/scss/variables/_primitives.scss +404 -408
  156. package/dist/boreal-web-components/scss/variables/_theme-connect.scss +164 -165
  157. package/dist/boreal-web-components/scss/variables/_theme-engage.scss +164 -165
  158. package/dist/boreal-web-components/scss/variables/_theme-protect.scss +164 -165
  159. package/dist/boreal-web-components/scss/variables/_theme-proximus.scss +165 -166
  160. package/dist/cjs/BaseAttributes-DBBhKt7O.js +14 -0
  161. package/dist/cjs/Keys-rKl2za5q.js +18 -0
  162. package/dist/cjs/Logger-DnziItRH.js +51 -0
  163. package/dist/cjs/{attributes-wIHueigW.js → attributes-CgRFplrN.js} +3 -0
  164. package/dist/cjs/bds-avatar.cjs.entry.js +89 -0
  165. package/dist/cjs/bds-badge.cjs.entry.js +50 -0
  166. package/dist/cjs/bds-banner.cjs.entry.js +13 -6
  167. package/dist/cjs/bds-button-group.cjs.entry.js +95 -0
  168. package/dist/cjs/bds-button.cjs.entry.js +11 -17
  169. package/dist/cjs/bds-checkbox-card.cjs.entry.js +121 -0
  170. package/dist/cjs/bds-checkbox.cjs.entry.js +13 -6
  171. package/dist/cjs/bds-dialog.cjs.entry.js +8 -7
  172. package/dist/cjs/bds-divider.cjs.entry.js +46 -0
  173. package/dist/cjs/bds-flag.cjs.entry.js +3 -3
  174. package/dist/cjs/bds-grid-item.cjs.entry.js +93 -0
  175. package/dist/cjs/bds-grid.cjs.entry.js +37 -0
  176. package/dist/cjs/bds-list-menu-item.cjs.entry.js +493 -0
  177. package/dist/cjs/bds-list-menu.cjs.entry.js +199 -0
  178. package/dist/cjs/bds-popover.cjs.entry.js +19 -9
  179. package/dist/cjs/bds-radio-button.cjs.entry.js +60 -0
  180. package/dist/cjs/bds-radio-card.cjs.entry.js +76 -0
  181. package/dist/cjs/bds-radio-group.cjs.entry.js +285 -0
  182. package/dist/cjs/bds-radio.cjs.entry.js +60 -0
  183. package/dist/cjs/bds-spinner.cjs.entry.js +4 -4
  184. package/dist/cjs/bds-status.cjs.entry.js +59 -0
  185. package/dist/cjs/bds-tag.cjs.entry.js +140 -0
  186. package/dist/cjs/bds-text-field.cjs.entry.js +8 -17
  187. package/dist/cjs/bds-toggle.cjs.entry.js +187 -0
  188. package/dist/cjs/bds-tooltip_2.cjs.entry.js +321 -0
  189. package/dist/cjs/boreal-web-components.cjs.js +2 -2
  190. package/dist/cjs/coreColors-CQGojc0l.js +10 -0
  191. package/dist/cjs/{enum-DLblRCkQ.js → enum-DeTWfR0D.js} +3 -3
  192. package/dist/cjs/form-associated.mixin-BCR6bj29.js +33 -0
  193. package/dist/cjs/{anchored.mixin-CnIwkaUi.js → getOffset-k4ezB-eT.js} +45 -76
  194. package/dist/cjs/{index-BcSjvXJk.js → index-CwYIVC9N.js} +64 -0
  195. package/dist/cjs/{internals-X77qKxsK.js → internals-D8x7GMfR.js} +0 -31
  196. package/dist/cjs/loader.cjs.js +2 -2
  197. package/dist/cjs/menu-BxKaEajh.js +8 -0
  198. package/dist/cjs/orientation-DQAIleEJ.js +8 -0
  199. package/dist/cjs/{states-iIYiazaM.js → states-BweP5Vpu.js} +8 -0
  200. package/dist/cjs/validateProps-CJe9X5x8.js +42 -0
  201. package/dist/collection/collection-manifest.json +16 -0
  202. package/dist/collection/components/actions/bds-button/bds-button.css +19 -19
  203. package/dist/collection/components/actions/bds-button/bds-button.js +8 -8
  204. package/dist/collection/components/actions/bds-button/types/enum.js +3 -3
  205. package/dist/collection/components/actions/bds-button-group/bds-button-group.css +77 -0
  206. package/dist/collection/components/actions/bds-button-group/bds-button-group.js +245 -0
  207. package/dist/collection/components/actions/bds-button-group/types/IButtonGroup.js +1 -0
  208. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.css +51 -0
  209. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.js +400 -0
  210. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/IListMenu.js +1 -0
  211. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/enum.js +4 -0
  212. package/dist/collection/components/actions/bds-list-menu/bds-list-menu/types/types.js +1 -0
  213. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.css +87 -0
  214. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.js +482 -0
  215. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.js +1 -0
  216. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/types/enum.js +4 -0
  217. package/dist/collection/components/actions/bds-list-menu/bds-list-menu-item/types/types.js +1 -0
  218. package/dist/collection/components/actions/bds-toggle/bds-toggle.css +120 -0
  219. package/dist/collection/components/actions/bds-toggle/bds-toggle.js +544 -0
  220. package/dist/collection/components/actions/bds-toggle/types/IEventChange.js +1 -0
  221. package/dist/collection/components/actions/bds-toggle/types/IToggle.js +1 -0
  222. package/dist/collection/components/actions/bds-toggle/types/enum.js +4 -0
  223. package/dist/collection/components/actions/bds-toggle/types/index.js +4 -0
  224. package/dist/collection/components/actions/bds-toggle/types/types.js +1 -0
  225. package/dist/collection/components/feedback/bds-badge/bds-badge.css +76 -0
  226. package/dist/collection/components/feedback/bds-badge/bds-badge.js +120 -0
  227. package/dist/collection/components/feedback/bds-badge/types/IBadge.js +1 -0
  228. package/dist/collection/components/feedback/bds-badge/types/enum.js +5 -0
  229. package/dist/collection/components/feedback/bds-banner/bds-banner.css +1 -2
  230. package/dist/collection/components/feedback/bds-banner/bds-banner.js +30 -6
  231. package/dist/collection/components/feedback/bds-spinner/bds-spinner.css +7 -8
  232. package/dist/collection/components/feedback/bds-spinner/bds-spinner.js +1 -1
  233. package/dist/collection/components/feedback/bds-status/bds-status.css +101 -0
  234. package/dist/collection/components/feedback/bds-status/bds-status.js +122 -0
  235. package/dist/collection/components/feedback/bds-status/types/IStatus.js +1 -0
  236. package/dist/collection/components/feedback/bds-status/types/enum.js +5 -0
  237. package/dist/collection/components/feedback/bds-status/types/types.js +1 -0
  238. package/dist/collection/components/feedback/bds-tag/bds-tag.css +202 -0
  239. package/dist/collection/components/feedback/bds-tag/bds-tag.js +375 -0
  240. package/dist/collection/components/feedback/bds-tag/types/ITag.js +1 -0
  241. package/dist/collection/components/feedback/bds-tag/types/enum.js +10 -0
  242. package/dist/collection/components/feedback/bds-tag/types/index.js +3 -0
  243. package/dist/collection/components/feedback/bds-tag/types/types.js +1 -0
  244. package/dist/collection/components/forms/bds-checkbox/bds-checkbox.css +9 -8
  245. package/dist/collection/components/forms/bds-checkbox/bds-checkbox.js +7 -1
  246. package/dist/collection/components/forms/bds-checkbox-card/bds-checkbox-card.css +127 -0
  247. package/dist/collection/components/forms/bds-checkbox-card/bds-checkbox-card.js +397 -0
  248. package/dist/collection/components/forms/bds-checkbox-card/types/ICheckboxCard.js +1 -0
  249. package/dist/collection/components/forms/bds-flag/bds-flag.js +1 -1
  250. package/dist/collection/components/forms/bds-radio/bds-radio.css +121 -0
  251. package/dist/collection/components/forms/bds-radio/bds-radio.js +238 -0
  252. package/dist/collection/components/forms/bds-radio/types/IRadio.js +1 -0
  253. package/dist/collection/components/forms/bds-radio-button/bds-radio-button.css +109 -0
  254. package/dist/collection/components/forms/bds-radio-button/bds-radio-button.js +238 -0
  255. package/dist/collection/components/forms/bds-radio-button/types/IRadioButton.js +1 -0
  256. package/dist/collection/components/forms/bds-radio-card/bds-radio-card.css +156 -0
  257. package/dist/collection/components/forms/bds-radio-card/bds-radio-card.js +307 -0
  258. package/dist/collection/components/forms/bds-radio-card/types/IRadioCard.js +1 -0
  259. package/dist/collection/components/forms/bds-radio-group/bds-radio-group.css +55 -0
  260. package/dist/collection/components/forms/bds-radio-group/bds-radio-group.js +620 -0
  261. package/dist/collection/components/forms/bds-radio-group/types/IRadioGroup.js +1 -0
  262. package/dist/collection/components/forms/bds-radio-group/types/enum.js +5 -0
  263. package/dist/collection/components/forms/bds-radio-group/types/types.js +1 -0
  264. package/dist/collection/components/forms/bds-text-field/bds-text-field.js +1 -1
  265. package/dist/collection/components/helpers/bds-divider/bds-divider.css +44 -0
  266. package/dist/collection/components/helpers/bds-divider/bds-divider.js +88 -0
  267. package/dist/collection/components/helpers/bds-divider/types/IDivider.js +1 -0
  268. package/dist/collection/components/helpers/bds-divider/types/enum.js +4 -0
  269. package/dist/collection/components/helpers/bds-divider/types/types.js +1 -0
  270. package/dist/collection/components/images-icons/bds-avatar/bds-avatar.css +52 -0
  271. package/dist/collection/components/images-icons/bds-avatar/bds-avatar.js +219 -0
  272. package/dist/collection/components/images-icons/bds-avatar/types/IAvatar.js +1 -0
  273. package/dist/collection/components/images-icons/bds-avatar/types/enum.js +5 -0
  274. package/dist/collection/components/images-icons/bds-avatar/types/index.js +3 -0
  275. package/dist/collection/components/images-icons/bds-avatar/types/types.js +1 -0
  276. package/dist/collection/components/layouts/bds-grid/grid/bds-grid.css +57 -0
  277. package/dist/collection/components/layouts/bds-grid/grid/bds-grid.js +100 -0
  278. package/dist/collection/components/layouts/bds-grid/grid/types/IGrid.js +1 -0
  279. package/dist/collection/components/layouts/bds-grid/grid/types/enum.js +4 -0
  280. package/dist/collection/components/layouts/bds-grid/grid/types/index.js +3 -0
  281. package/dist/collection/components/layouts/bds-grid/grid/types/types.js +1 -0
  282. package/dist/collection/components/layouts/bds-grid/grid-item/bds-grid-item.css +70 -0
  283. package/dist/collection/components/layouts/bds-grid/grid-item/bds-grid-item.js +306 -0
  284. package/dist/collection/components/layouts/bds-grid/grid-item/types/IGridItem.js +1 -0
  285. package/dist/collection/components/layouts/bds-grid/grid-item/types/enum.js +10 -0
  286. package/dist/collection/components/layouts/bds-grid/grid-item/types/index.js +3 -0
  287. package/dist/collection/components/layouts/bds-grid/grid-item/types/types.js +1 -0
  288. package/dist/collection/components/overlays/bds-dialog/bds-dialog.js +4 -3
  289. package/dist/collection/components/overlays/bds-popover/bds-popover.css +16 -2
  290. package/dist/collection/components/overlays/bds-popover/bds-popover.js +12 -4
  291. package/dist/collection/components/overlays/bds-popover/constants/Offset.js +1 -0
  292. package/dist/collection/components/overlays/bds-tooltip/bds-tooltip.css +2 -13
  293. package/dist/collection/components/overlays/bds-tooltip/bds-tooltip.js +6 -4
  294. package/dist/collection/components/overlays/bds-tooltip/constants/Offset.js +1 -0
  295. package/dist/collection/components/titles-text/bds-typography/bds-typography.css +9 -0
  296. package/dist/collection/components/titles-text/bds-typography/bds-typography.js +20 -19
  297. package/dist/collection/components/titles-text/bds-typography/utils/bds-typography-utils.js +2 -2
  298. package/dist/collection/css/boreal.css +1066 -1074
  299. package/dist/collection/css/global.css +403 -407
  300. package/dist/collection/css/theme-connect.css +163 -164
  301. package/dist/collection/css/theme-engage.css +163 -164
  302. package/dist/collection/css/theme-protect.css +163 -164
  303. package/dist/collection/css/theme-proximus.css +164 -165
  304. package/dist/collection/mixins/anchored.mixin.js +16 -3
  305. package/dist/collection/mixins/index.js +2 -0
  306. package/dist/collection/mixins/links.mixin.js +152 -0
  307. package/dist/collection/mixins/menu-behavior.mixin.js +119 -0
  308. package/dist/collection/scss/maps/_primitives.scss +404 -408
  309. package/dist/collection/scss/maps/_theme-connect.scss +164 -165
  310. package/dist/collection/scss/maps/_theme-engage.scss +164 -165
  311. package/dist/collection/scss/maps/_theme-protect.scss +164 -165
  312. package/dist/collection/scss/maps/_theme-proximus.scss +165 -166
  313. package/dist/collection/scss/variables/_primitives.scss +404 -408
  314. package/dist/collection/scss/variables/_theme-connect.scss +164 -165
  315. package/dist/collection/scss/variables/_theme-engage.scss +164 -165
  316. package/dist/collection/scss/variables/_theme-protect.scss +164 -165
  317. package/dist/collection/scss/variables/_theme-proximus.scss +165 -166
  318. package/dist/collection/services/floating/positioning.service.js +1 -1
  319. package/dist/collection/types/IFormProps.js +1 -0
  320. package/dist/collection/types/index.js +5 -0
  321. package/dist/collection/types/links.js +1 -0
  322. package/dist/collection/types/menu.js +8 -0
  323. package/dist/collection/types/orientation.js +4 -0
  324. package/dist/collection/types/position.js +6 -2
  325. package/dist/collection/utils/constants/common/Keys.js +10 -12
  326. package/dist/collection/utils/helpers/overlays/getOffset.js +13 -0
  327. package/dist/collection/utils/helpers/validateProps.js +21 -0
  328. package/dist/collection/utils/index.js +2 -1
  329. package/dist/collection/utils/menu/index.js +1 -0
  330. package/dist/collection/utils/menu/menu-item.utils.js +82 -0
  331. package/dist/collection/utils/{__test__ → testing}/helpers.js +10 -0
  332. package/dist/collection/utils/{__test__ → testing}/index.js +0 -2
  333. package/dist/collection/utils/testing/mocks/console.js +30 -0
  334. package/dist/collection/utils/testing/mocks/index.js +4 -0
  335. package/dist/css/boreal.css +1066 -1074
  336. package/dist/css/global.css +403 -407
  337. package/dist/css/theme-connect.css +163 -164
  338. package/dist/css/theme-engage.css +163 -164
  339. package/dist/css/theme-protect.css +163 -164
  340. package/dist/css/theme-proximus.css +164 -165
  341. package/dist/esm/BaseAttributes-DhSchGPI.js +12 -0
  342. package/dist/esm/Keys-DlYG-OVB.js +16 -0
  343. package/dist/esm/Logger-iq2UuV7c.js +49 -0
  344. package/dist/esm/{attributes-CaHOghy5.js → attributes-U9yfbs7i.js} +3 -0
  345. package/dist/esm/bds-avatar.entry.js +87 -0
  346. package/dist/esm/bds-badge.entry.js +48 -0
  347. package/dist/esm/bds-banner.entry.js +13 -6
  348. package/dist/esm/bds-button-group.entry.js +93 -0
  349. package/dist/esm/bds-button.entry.js +9 -15
  350. package/dist/esm/bds-checkbox-card.entry.js +119 -0
  351. package/dist/esm/bds-checkbox.entry.js +12 -5
  352. package/dist/esm/bds-dialog.entry.js +8 -7
  353. package/dist/esm/bds-divider.entry.js +44 -0
  354. package/dist/esm/bds-flag.entry.js +3 -3
  355. package/dist/esm/bds-grid-item.entry.js +91 -0
  356. package/dist/esm/bds-grid.entry.js +35 -0
  357. package/dist/esm/bds-list-menu-item.entry.js +491 -0
  358. package/dist/esm/bds-list-menu.entry.js +197 -0
  359. package/dist/esm/bds-popover.entry.js +18 -8
  360. package/dist/esm/bds-radio-button.entry.js +58 -0
  361. package/dist/esm/bds-radio-card.entry.js +74 -0
  362. package/dist/esm/bds-radio-group.entry.js +283 -0
  363. package/dist/esm/bds-radio.entry.js +58 -0
  364. package/dist/esm/bds-spinner.entry.js +4 -4
  365. package/dist/esm/bds-status.entry.js +57 -0
  366. package/dist/esm/bds-tag.entry.js +138 -0
  367. package/dist/esm/bds-text-field.entry.js +6 -15
  368. package/dist/esm/bds-toggle.entry.js +185 -0
  369. package/dist/esm/bds-tooltip_2.entry.js +318 -0
  370. package/dist/esm/boreal-web-components.js +3 -3
  371. package/dist/esm/coreColors-Dwo1hcd9.js +8 -0
  372. package/dist/esm/{enum-C8mRvnTA.js → enum-DlVzZK7o.js} +4 -4
  373. package/dist/esm/form-associated.mixin-C4HM8wQe.js +31 -0
  374. package/dist/esm/{anchored.mixin-Y3MkGc2X.js → getOffset-BYS3c13B.js} +43 -75
  375. package/dist/esm/{index-D4EFsvs1.js → index-BqJlOB6b.js} +64 -0
  376. package/dist/esm/{internals-Dy7QKP9e.js → internals-DfaYciGa.js} +1 -31
  377. package/dist/esm/loader.js +3 -3
  378. package/dist/esm/menu-dz9-Q2N8.js +6 -0
  379. package/dist/esm/orientation-CPvuMm5C.js +6 -0
  380. package/dist/esm/{states-BhTPNsBb.js → states-Bfazyxqi.js} +8 -1
  381. package/dist/esm/validateProps-kGnB15Lz.js +39 -0
  382. package/dist/esm-es5/BaseAttributes-DhSchGPI.js +1 -0
  383. package/dist/esm-es5/Keys-DlYG-OVB.js +1 -0
  384. package/dist/esm-es5/Logger-iq2UuV7c.js +1 -0
  385. package/dist/esm-es5/{attributes-CaHOghy5.js → attributes-U9yfbs7i.js} +1 -1
  386. package/dist/esm-es5/bds-avatar.entry.js +1 -0
  387. package/dist/esm-es5/bds-badge.entry.js +1 -0
  388. package/dist/esm-es5/bds-banner.entry.js +1 -1
  389. package/dist/esm-es5/bds-button-group.entry.js +1 -0
  390. package/dist/esm-es5/bds-button.entry.js +1 -1
  391. package/dist/esm-es5/bds-checkbox-card.entry.js +1 -0
  392. package/dist/esm-es5/bds-checkbox.entry.js +1 -1
  393. package/dist/esm-es5/bds-dialog.entry.js +1 -1
  394. package/dist/esm-es5/bds-divider.entry.js +1 -0
  395. package/dist/esm-es5/bds-flag.entry.js +1 -1
  396. package/dist/esm-es5/bds-grid-item.entry.js +1 -0
  397. package/dist/esm-es5/bds-grid.entry.js +1 -0
  398. package/dist/esm-es5/bds-list-menu-item.entry.js +1 -0
  399. package/dist/esm-es5/bds-list-menu.entry.js +1 -0
  400. package/dist/esm-es5/bds-popover.entry.js +1 -1
  401. package/dist/esm-es5/bds-radio-button.entry.js +1 -0
  402. package/dist/esm-es5/bds-radio-card.entry.js +1 -0
  403. package/dist/esm-es5/bds-radio-group.entry.js +1 -0
  404. package/dist/esm-es5/bds-radio.entry.js +1 -0
  405. package/dist/esm-es5/bds-spinner.entry.js +1 -1
  406. package/dist/esm-es5/bds-status.entry.js +1 -0
  407. package/dist/esm-es5/bds-tag.entry.js +1 -0
  408. package/dist/esm-es5/bds-text-field.entry.js +1 -1
  409. package/dist/esm-es5/bds-toggle.entry.js +1 -0
  410. package/dist/esm-es5/bds-tooltip_2.entry.js +1 -0
  411. package/dist/esm-es5/boreal-web-components.js +1 -1
  412. package/dist/esm-es5/coreColors-Dwo1hcd9.js +1 -0
  413. package/dist/esm-es5/enum-DlVzZK7o.js +1 -0
  414. package/dist/esm-es5/form-associated.mixin-C4HM8wQe.js +1 -0
  415. package/dist/esm-es5/getOffset-BYS3c13B.js +1 -0
  416. package/dist/esm-es5/index-BqJlOB6b.js +2 -0
  417. package/dist/esm-es5/internals-DfaYciGa.js +1 -0
  418. package/dist/esm-es5/loader.js +1 -1
  419. package/dist/esm-es5/menu-dz9-Q2N8.js +1 -0
  420. package/dist/esm-es5/orientation-CPvuMm5C.js +1 -0
  421. package/dist/esm-es5/states-Bfazyxqi.js +1 -0
  422. package/dist/esm-es5/validateProps-kGnB15Lz.js +1 -0
  423. package/dist/scss/maps/_primitives.scss +404 -408
  424. package/dist/scss/maps/_theme-connect.scss +164 -165
  425. package/dist/scss/maps/_theme-engage.scss +164 -165
  426. package/dist/scss/maps/_theme-protect.scss +164 -165
  427. package/dist/scss/maps/_theme-proximus.scss +165 -166
  428. package/dist/scss/variables/_primitives.scss +404 -408
  429. package/dist/scss/variables/_theme-connect.scss +164 -165
  430. package/dist/scss/variables/_theme-engage.scss +164 -165
  431. package/dist/scss/variables/_theme-protect.scss +164 -165
  432. package/dist/scss/variables/_theme-proximus.scss +165 -166
  433. package/dist/types/components/actions/bds-button/bds-button.d.ts +4 -4
  434. package/dist/types/components/actions/bds-button/types/enum.d.ts +3 -3
  435. package/dist/types/components/actions/bds-button-group/bds-button-group.d.ts +36 -0
  436. package/dist/types/components/actions/bds-button-group/types/IButtonGroup.d.ts +11 -0
  437. package/dist/types/components/actions/bds-list-menu/bds-list-menu/bds-list-menu.d.ts +74 -0
  438. package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/IListMenu.d.ts +14 -0
  439. package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/enum.d.ts +5 -0
  440. package/dist/types/components/actions/bds-list-menu/bds-list-menu/types/types.d.ts +3 -0
  441. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/bds-list-menu-item.d.ts +122 -0
  442. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem.d.ts +13 -0
  443. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/enum.d.ts +5 -0
  444. package/dist/types/components/actions/bds-list-menu/bds-list-menu-item/types/types.d.ts +3 -0
  445. package/dist/types/components/actions/bds-toggle/bds-toggle.d.ts +91 -0
  446. package/dist/types/components/actions/bds-toggle/types/IEventChange.d.ts +5 -0
  447. package/dist/types/components/actions/bds-toggle/types/IToggle.d.ts +12 -0
  448. package/dist/types/components/actions/bds-toggle/types/enum.d.ts +5 -0
  449. package/dist/types/components/actions/bds-toggle/types/index.d.ts +5 -0
  450. package/dist/types/components/actions/bds-toggle/types/types.d.ts +3 -0
  451. package/dist/types/components/feedback/bds-badge/bds-badge.d.ts +31 -0
  452. package/dist/types/components/feedback/bds-badge/types/IBadge.d.ts +6 -0
  453. package/dist/types/components/feedback/bds-badge/types/enum.d.ts +9 -0
  454. package/dist/types/components/feedback/bds-banner/bds-banner.d.ts +8 -4
  455. package/dist/types/components/feedback/bds-status/bds-status.d.ts +26 -0
  456. package/dist/types/components/feedback/bds-status/types/IStatus.d.ts +7 -0
  457. package/dist/types/components/feedback/bds-status/types/enum.d.ts +6 -0
  458. package/dist/types/components/feedback/bds-status/types/types.d.ts +3 -0
  459. package/dist/types/components/feedback/bds-tag/bds-tag.d.ts +71 -0
  460. package/dist/types/components/feedback/bds-tag/types/ITag.d.ts +13 -0
  461. package/dist/types/components/feedback/bds-tag/types/enum.d.ts +11 -0
  462. package/dist/types/components/feedback/bds-tag/types/index.d.ts +4 -0
  463. package/dist/types/components/feedback/bds-tag/types/types.d.ts +8 -0
  464. package/dist/types/components/forms/bds-checkbox/bds-checkbox.d.ts +2 -0
  465. package/dist/types/components/forms/bds-checkbox-card/bds-checkbox-card.d.ts +70 -0
  466. package/dist/types/components/forms/bds-checkbox-card/types/ICheckboxCard.d.ts +8 -0
  467. package/dist/types/components/forms/bds-flag/bds-flag.d.ts +3 -4
  468. package/dist/types/components/forms/bds-radio/bds-radio.d.ts +36 -0
  469. package/dist/types/components/forms/bds-radio/types/IRadio.d.ts +13 -0
  470. package/dist/types/components/forms/bds-radio-button/bds-radio-button.d.ts +36 -0
  471. package/dist/types/components/forms/bds-radio-button/types/IRadioButton.d.ts +13 -0
  472. package/dist/types/components/forms/bds-radio-card/bds-radio-card.d.ts +57 -0
  473. package/dist/types/components/forms/bds-radio-card/types/IRadioCard.d.ts +14 -0
  474. package/dist/types/components/forms/bds-radio-group/bds-radio-group.d.ts +82 -0
  475. package/dist/types/components/forms/bds-radio-group/types/IRadioGroup.d.ts +19 -0
  476. package/dist/types/components/forms/bds-radio-group/types/enum.d.ts +6 -0
  477. package/dist/types/components/forms/bds-radio-group/types/types.d.ts +3 -0
  478. package/dist/types/components/helpers/bds-divider/bds-divider.d.ts +26 -0
  479. package/dist/types/components/helpers/bds-divider/types/IDivider.d.ts +5 -0
  480. package/dist/types/components/helpers/bds-divider/types/enum.d.ts +5 -0
  481. package/dist/types/components/helpers/bds-divider/types/types.d.ts +3 -0
  482. package/dist/types/components/images-icons/bds-avatar/bds-avatar.d.ts +51 -0
  483. package/dist/types/components/images-icons/bds-avatar/types/IAvatar.d.ts +9 -0
  484. package/dist/types/components/images-icons/bds-avatar/types/enum.d.ts +6 -0
  485. package/dist/types/components/images-icons/bds-avatar/types/index.d.ts +4 -0
  486. package/dist/types/components/images-icons/bds-avatar/types/types.d.ts +3 -0
  487. package/dist/types/components/layouts/bds-grid/grid/bds-grid.d.ts +19 -0
  488. package/dist/types/components/layouts/bds-grid/grid/types/IGrid.d.ts +6 -0
  489. package/dist/types/components/layouts/bds-grid/grid/types/enum.d.ts +5 -0
  490. package/dist/types/components/layouts/bds-grid/grid/types/index.d.ts +4 -0
  491. package/dist/types/components/layouts/bds-grid/grid/types/types.d.ts +3 -0
  492. package/dist/types/components/layouts/bds-grid/grid-item/bds-grid-item.d.ts +31 -0
  493. package/dist/types/components/layouts/bds-grid/grid-item/types/IGridItem.d.ts +12 -0
  494. package/dist/types/components/layouts/bds-grid/grid-item/types/enum.d.ts +11 -0
  495. package/dist/types/components/layouts/bds-grid/grid-item/types/index.d.ts +4 -0
  496. package/dist/types/components/layouts/bds-grid/grid-item/types/types.d.ts +3 -0
  497. package/dist/types/components/overlays/bds-dialog/bds-dialog.d.ts +2 -2
  498. package/dist/types/components/overlays/bds-popover/bds-popover.d.ts +1 -0
  499. package/dist/types/components/overlays/bds-popover/constants/Offset.d.ts +2 -0
  500. package/dist/types/components/overlays/bds-tooltip/bds-tooltip.d.ts +1 -0
  501. package/dist/types/components/overlays/bds-tooltip/constants/Offset.d.ts +2 -0
  502. package/dist/types/components/titles-text/bds-typography/bds-typography.d.ts +9 -9
  503. package/dist/types/components/titles-text/bds-typography/types/ITypography.d.ts +2 -2
  504. package/dist/types/components/titles-text/bds-typography/utils/bds-typography-utils.d.ts +1 -1
  505. package/dist/types/components.d.ts +2542 -450
  506. package/dist/types/mixins/anchored.mixin.d.ts +5 -0
  507. package/dist/types/mixins/index.d.ts +2 -0
  508. package/dist/types/mixins/links.mixin.d.ts +85 -0
  509. package/dist/types/mixins/menu-behavior.mixin.d.ts +95 -0
  510. package/dist/types/types/IFormProps.d.ts +25 -0
  511. package/dist/types/types/index.d.ts +5 -0
  512. package/dist/types/types/links.d.ts +14 -0
  513. package/dist/types/types/menu.d.ts +16 -0
  514. package/dist/types/types/orientation.d.ts +6 -0
  515. package/dist/types/types/position.d.ts +6 -2
  516. package/dist/types/utils/constants/common/Keys.d.ts +12 -14
  517. package/dist/types/utils/helpers/overlays/getOffset.d.ts +9 -0
  518. package/dist/types/utils/helpers/validateProps.d.ts +11 -0
  519. package/dist/types/utils/index.d.ts +2 -1
  520. package/dist/types/utils/menu/index.d.ts +2 -0
  521. package/dist/types/utils/menu/menu-item.utils.d.ts +50 -0
  522. package/dist/types/utils/{__test__ → testing}/helpers.d.ts +8 -0
  523. package/dist/types/utils/{__test__ → testing}/index.d.ts +0 -2
  524. package/dist/types/utils/{__test__/backdrop-mock.d.ts → testing/mocks/backdrop.d.ts} +1 -1
  525. package/dist/types/utils/testing/mocks/console.d.ts +17 -0
  526. package/dist/types/utils/{__test__/mocks/ElementInternals.d.ts → testing/mocks/elementInternals.d.ts} +1 -1
  527. package/dist/types/utils/testing/mocks/index.d.ts +5 -0
  528. package/dist/types/utils/{__test__/popover-mock.d.ts → testing/mocks/popover.d.ts} +1 -1
  529. package/package.json +1 -1
  530. package/components-build/p-B6R9EVXK.js +0 -1
  531. package/components-build/p-BSpJ_e9f.js +0 -1
  532. package/components-build/p-BYEAJCas.js +0 -1
  533. package/components-build/p-BhTPNsBb.js +0 -1
  534. package/components-build/p-CYojP4vI.js +0 -1
  535. package/components-build/p-D5omSME4.js +0 -1
  536. package/components-build/p-vfAIdwy0.js +0 -1
  537. package/dist/boreal-web-components/p-07a933df.entry.js +0 -1
  538. package/dist/boreal-web-components/p-1bb2b33f.entry.js +0 -1
  539. package/dist/boreal-web-components/p-1fccea3f.system.entry.js +0 -1
  540. package/dist/boreal-web-components/p-20af732b.system.entry.js +0 -1
  541. package/dist/boreal-web-components/p-22378341.system.entry.js +0 -1
  542. package/dist/boreal-web-components/p-39c26e58.entry.js +0 -1
  543. package/dist/boreal-web-components/p-6210d025.entry.js +0 -1
  544. package/dist/boreal-web-components/p-6de2b44c.system.entry.js +0 -1
  545. package/dist/boreal-web-components/p-91b9e94e.entry.js +0 -1
  546. package/dist/boreal-web-components/p-9e06910d.system.entry.js +0 -1
  547. package/dist/boreal-web-components/p-BIJhHSAt.system.js +0 -1
  548. package/dist/boreal-web-components/p-BKRyWlfr.js +0 -1
  549. package/dist/boreal-web-components/p-BhTPNsBb.js +0 -1
  550. package/dist/boreal-web-components/p-BkDQsB4R.system.js +0 -1
  551. package/dist/boreal-web-components/p-C8mRvnTA.js +0 -1
  552. package/dist/boreal-web-components/p-CdKFZYxk.system.js +0 -1
  553. package/dist/boreal-web-components/p-DoDeP7KR.system.js +0 -1
  554. package/dist/boreal-web-components/p-Dtp4O0H2.system.js +0 -1
  555. package/dist/boreal-web-components/p-Dy7QKP9e.js +0 -1
  556. package/dist/boreal-web-components/p-GjKJvOVG.system.js +0 -2
  557. package/dist/boreal-web-components/p-ac64d4a5.system.entry.js +0 -1
  558. package/dist/boreal-web-components/p-b61fe06c.entry.js +0 -1
  559. package/dist/boreal-web-components/p-cdc87437.entry.js +0 -1
  560. package/dist/boreal-web-components/p-d8ec8557.system.entry.js +0 -1
  561. package/dist/boreal-web-components/p-ea889727.entry.js +0 -1
  562. package/dist/boreal-web-components/p-fa327346.system.entry.js +0 -1
  563. package/dist/boreal-web-components/p-fc2cb919.entry.js +0 -1
  564. package/dist/boreal-web-components/p-sDZFaZMN.system.js +0 -1
  565. package/dist/boreal-web-components/p-vfAIdwy0.js +0 -1
  566. package/dist/cjs/bds-tooltip.cjs.entry.js +0 -152
  567. package/dist/cjs/bds-typography.cjs.entry.js +0 -168
  568. package/dist/cjs/validateProps-BNOBk1Xs.js +0 -20
  569. package/dist/collection/utils/__test__/mocks/index.js +0 -1
  570. package/dist/esm/bds-tooltip.entry.js +0 -150
  571. package/dist/esm/bds-typography.entry.js +0 -166
  572. package/dist/esm/validateProps-vfAIdwy0.js +0 -18
  573. package/dist/esm-es5/anchored.mixin-Y3MkGc2X.js +0 -1
  574. package/dist/esm-es5/bds-tooltip.entry.js +0 -1
  575. package/dist/esm-es5/bds-typography.entry.js +0 -1
  576. package/dist/esm-es5/enum-C8mRvnTA.js +0 -1
  577. package/dist/esm-es5/index-D4EFsvs1.js +0 -2
  578. package/dist/esm-es5/internals-Dy7QKP9e.js +0 -1
  579. package/dist/esm-es5/states-BhTPNsBb.js +0 -1
  580. package/dist/esm-es5/validateProps-vfAIdwy0.js +0 -1
  581. package/dist/types/utils/__test__/mocks/index.d.ts +0 -2
  582. /package/dist/collection/utils/{__test__ → testing}/constants.js +0 -0
  583. /package/dist/collection/utils/{__test__ → testing}/fixtures.js +0 -0
  584. /package/dist/collection/utils/{__test__/backdrop-mock.js → testing/mocks/backdrop.js} +0 -0
  585. /package/dist/collection/utils/{__test__/mocks/ElementInternals.js → testing/mocks/elementInternals.js} +0 -0
  586. /package/dist/collection/utils/{__test__/popover-mock.js → testing/mocks/popover.js} +0 -0
  587. /package/dist/types/utils/{__test__ → testing}/constants.d.ts +0 -0
  588. /package/dist/types/utils/{__test__ → testing}/fixtures.d.ts +0 -0
@@ -5,33 +5,126 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
+ import { IAvatar } from "./components/images-icons/bds-avatar/types";
9
+ import { IBadge } from "./components/feedback/bds-badge/types/IBadge";
8
10
  import { IBanner } from "./components/feedback/bds-banner/types/IBanner";
9
11
  import { IButton } from "./components/actions/bds-button/types/IButton";
12
+ import { IButtonGroup } from "./components/actions/bds-button-group/types/IButtonGroup";
10
13
  import { CheckboxChangeDetail } from "./components/forms/bds-checkbox/types/ICheckbox";
14
+ import { ICheckboxCard } from "./components/forms/bds-checkbox-card/types/ICheckboxCard";
11
15
  import { IDialog } from "./components/overlays/bds-dialog/types";
16
+ import { IDivider } from "./components/helpers/bds-divider/types/IDivider";
12
17
  import { IFlag } from "./components/forms/bds-flag/interfaces/IFlag";
18
+ import { IGrid } from "./components/layouts/bds-grid/grid/types";
19
+ import { IGridItem } from "./components/layouts/bds-grid/grid-item/types";
20
+ import { IListMenu, ListMenuChangeDetail } from "./components/actions/bds-list-menu/bds-list-menu/types/IListMenu";
21
+ import { IListMenuItem, IListMenuItemEvent } from "./components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem";
13
22
  import { IPopover } from "./components/overlays/bds-popover/types/IPopover";
23
+ import { RadioChangeDetail } from "./components/forms/bds-radio/types/IRadio";
24
+ import { RadioButtonChangeDetail } from "./components/forms/bds-radio-button/types/IRadioButton";
25
+ import { IRadioCard, RadioCardChangeDetail } from "./components/forms/bds-radio-card/types/IRadioCard";
26
+ import { IFormValidator, Orientation } from "./types/index";
27
+ import { RadioGroupType } from "./components/forms/bds-radio-group/types/types";
28
+ import { RadioGroupChangeDetail } from "./components/forms/bds-radio-group/types/IRadioGroup";
14
29
  import { ISpinner } from "./components/feedback/bds-spinner/types/ISpinner";
15
- import { IFormValidator } from "./types/index";
30
+ import { IStatus } from "./components/feedback/bds-status/types/IStatus";
31
+ import { ITag, TagEventPayload } from "./components/feedback/bds-tag/types";
16
32
  import { TextFieldType, TextFieldValidationTiming, TextFieldVariant } from "./components/forms/bds-text-field/types";
17
33
  import { Event } from "./stencil-public-runtime";
34
+ import { IToggle } from "./components/actions/bds-toggle/types";
35
+ import { IToggleEventChange } from "./components/actions/bds-toggle/types/IEventChange";
18
36
  import { ITooltip } from "./components/overlays/bds-tooltip/types/ITooltip";
19
37
  import { FloatingTooltipProp } from "./services/index";
20
38
  import { ITypography } from "./components/titles-text/bds-typography/types/ITypography";
39
+ export { IAvatar } from "./components/images-icons/bds-avatar/types";
40
+ export { IBadge } from "./components/feedback/bds-badge/types/IBadge";
21
41
  export { IBanner } from "./components/feedback/bds-banner/types/IBanner";
22
42
  export { IButton } from "./components/actions/bds-button/types/IButton";
43
+ export { IButtonGroup } from "./components/actions/bds-button-group/types/IButtonGroup";
23
44
  export { CheckboxChangeDetail } from "./components/forms/bds-checkbox/types/ICheckbox";
45
+ export { ICheckboxCard } from "./components/forms/bds-checkbox-card/types/ICheckboxCard";
24
46
  export { IDialog } from "./components/overlays/bds-dialog/types";
47
+ export { IDivider } from "./components/helpers/bds-divider/types/IDivider";
25
48
  export { IFlag } from "./components/forms/bds-flag/interfaces/IFlag";
49
+ export { IGrid } from "./components/layouts/bds-grid/grid/types";
50
+ export { IGridItem } from "./components/layouts/bds-grid/grid-item/types";
51
+ export { IListMenu, ListMenuChangeDetail } from "./components/actions/bds-list-menu/bds-list-menu/types/IListMenu";
52
+ export { IListMenuItem, IListMenuItemEvent } from "./components/actions/bds-list-menu/bds-list-menu-item/types/IListMenuItem";
26
53
  export { IPopover } from "./components/overlays/bds-popover/types/IPopover";
54
+ export { RadioChangeDetail } from "./components/forms/bds-radio/types/IRadio";
55
+ export { RadioButtonChangeDetail } from "./components/forms/bds-radio-button/types/IRadioButton";
56
+ export { IRadioCard, RadioCardChangeDetail } from "./components/forms/bds-radio-card/types/IRadioCard";
57
+ export { IFormValidator, Orientation } from "./types/index";
58
+ export { RadioGroupType } from "./components/forms/bds-radio-group/types/types";
59
+ export { RadioGroupChangeDetail } from "./components/forms/bds-radio-group/types/IRadioGroup";
27
60
  export { ISpinner } from "./components/feedback/bds-spinner/types/ISpinner";
28
- export { IFormValidator } from "./types/index";
61
+ export { IStatus } from "./components/feedback/bds-status/types/IStatus";
62
+ export { ITag, TagEventPayload } from "./components/feedback/bds-tag/types";
29
63
  export { TextFieldType, TextFieldValidationTiming, TextFieldVariant } from "./components/forms/bds-text-field/types";
30
64
  export { Event } from "./stencil-public-runtime";
65
+ export { IToggle } from "./components/actions/bds-toggle/types";
66
+ export { IToggleEventChange } from "./components/actions/bds-toggle/types/IEventChange";
31
67
  export { ITooltip } from "./components/overlays/bds-tooltip/types/ITooltip";
32
68
  export { FloatingTooltipProp } from "./services/index";
33
69
  export { ITypography } from "./components/titles-text/bds-typography/types/ITypography";
34
70
  export namespace Components {
71
+ /**
72
+ * Avatar component used to display user initials or names for visual identification.
73
+ * @summary Displays a circular avatar with user initials and optional name label.
74
+ * Uses Boreal Design System tokens for consistent styling across platforms.
75
+ * @attr {string} username - The full name used to generate initials or display as label.
76
+ * @attr {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
77
+ * @attr {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
78
+ * @attr {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
79
+ * @property {string} username - The full name used to generate initials or display as label.
80
+ * @property {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
81
+ * @property {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
82
+ * @property {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
83
+ * @cssprop --bds-avatar-background - Custom background color HEX code.
84
+ * @cssprop --bds-avatar-initials-color - Custom text color HEX code.
85
+ */
86
+ interface BdsAvatar {
87
+ /**
88
+ * Custom background color as hex code. If not provided, defaults to Boreal success color *
89
+ * @default ''
90
+ */
91
+ "background": IAvatar['background'];
92
+ /**
93
+ * Custom text color as hex code. If not provided, defaults to white *
94
+ * @default ''
95
+ */
96
+ "initialsColor": IAvatar['initialsColor'];
97
+ /**
98
+ * The full name used to generate initials or display as label *
99
+ * @default ''
100
+ */
101
+ "username": IAvatar['username'];
102
+ /**
103
+ * Controls which avatar elements are displayed: icon (initials), name, or both.
104
+ * @default 'full'
105
+ */
106
+ "variant": IAvatar['variant'];
107
+ }
108
+ /**
109
+ * Badge component for displaying contextual status information with optional icon support.
110
+ * @summary A compact label component that communicates status or category using color-coded variants. Supports an optional icon slot and a disabled state.
111
+ * @attr {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
112
+ * @attr {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
113
+ * @property {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
114
+ * @property {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
115
+ */
116
+ interface BdsBadge {
117
+ /**
118
+ * Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
119
+ * @default false
120
+ */
121
+ "disabled": IBadge['disabled'];
122
+ /**
123
+ * Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
124
+ * @default BADGE_VARIANT.DEFAULT
125
+ */
126
+ "variant": IBadge['variant'];
127
+ }
35
128
  /**
36
129
  * Banner component used to display important messages with different status variants.
37
130
  * @summary Displays a dismissible banner with an icon, title, body content, and optional actions.
@@ -40,8 +133,8 @@ export namespace Components {
40
133
  * @property {"info"|"success"|"warning"|"danger"} variant - Visual style variant: 'info', 'success', 'warning', or 'danger'. Defaults to "info".
41
134
  * @property {boolean} closable - Shows a close button that allows users to close the banner. Defaults to false.
42
135
  * @property {boolean} closeButtonLabel - Aria label for the close button when visible.
43
- * @fires bdsClose - Emitted when the banner is closed via the close button or `closeBanner` method.
44
- * @method closeBanner - Programmatic method to close the banner and emit the `bdsClose` event.
136
+ * @fires bdsClose - Emitted when the banner is closed via the close button or `close` method.
137
+ * @method close - Programmatic method to close the banner and emit the `bdsClose` event.
45
138
  */
46
139
  interface BdsBanner {
47
140
  /**
@@ -52,12 +145,16 @@ export namespace Components {
52
145
  /**
53
146
  * Programmatic method to close the banner and emit the `bdsClose` event
54
147
  */
55
- "closeBanner": () => Promise<void>;
148
+ "close": () => Promise<void>;
56
149
  /**
57
150
  * The aria label for the close button.
58
151
  * @default ""
59
152
  */
60
153
  "closeButtonLabel": IBanner['closeButtonLabel'];
154
+ /**
155
+ * Programmatic method to close the banner and emit the `bdsClose` event
156
+ */
157
+ "open": () => Promise<void>;
61
158
  /**
62
159
  * Visual style variant: 'info', 'success', 'warning', or 'danger'.
63
160
  * @default "info"
@@ -73,7 +170,7 @@ export namespace Components {
73
170
  * @attr {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
74
171
  * @attr {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
75
172
  * @attr {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
76
- * @attr {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
173
+ * @attr {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
77
174
  * @attr {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
78
175
  * @attr {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
79
176
  * @property {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
@@ -82,13 +179,13 @@ export namespace Components {
82
179
  * @property {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
83
180
  * @property {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
84
181
  * @property {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
85
- * @property {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
182
+ * @property {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
86
183
  * @property {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
87
184
  * @property {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
88
185
  * @default 'button' - Default type value
89
186
  * @default 'default' - Default color value
90
187
  * @default 'default' - Default variant value
91
- * @default 'medium' - Default size value
188
+ * @default 'md' - Default size value
92
189
  * @default 'default' - Default status value
93
190
  * @default false - Default disabled value
94
191
  * @default '' - Default label value
@@ -128,7 +225,7 @@ export namespace Components {
128
225
  */
129
226
  "name": IButton['name'];
130
227
  /**
131
- * size is a string attribute. The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
228
+ * size is a string attribute. The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
132
229
  * @default BUTTON_SIZES.MEDIUM
133
230
  */
134
231
  "size": IButton['size'];
@@ -143,6 +240,36 @@ export namespace Components {
143
240
  */
144
241
  "variant": IButton['variant'];
145
242
  }
243
+ /**
244
+ * Button group component for grouping related buttons together in a unified visual unit.
245
+ */
246
+ interface BdsButtonGroup {
247
+ /**
248
+ * Controls the color applied to all child `<bds-button>` elements. Accepted values: see `CoreColors`. Default is `default`.
249
+ * @default CORE_COLORS.DEFAULT
250
+ */
251
+ "color": IButtonGroup['color'];
252
+ /**
253
+ * Provides an accessible label for the button group.
254
+ * @default 'Button group'
255
+ */
256
+ "label": IButtonGroup['label'];
257
+ /**
258
+ * Controls the layout direction of the grouped buttons. Accepted values: `'horizontal'`, `'vertical'`. Default is `'horizontal'`.
259
+ * @default ORIENTATIONS.HORIZONTAL
260
+ */
261
+ "orientation": IButtonGroup['orientation'];
262
+ /**
263
+ * Controls the size applied to all child `<bds-button>` elements. Accepted values: `'sm'`, `'md'`, `'lg'`. Default is `'md'`.
264
+ * @default BUTTON_SIZES.MEDIUM
265
+ */
266
+ "size": IButtonGroup['size'];
267
+ /**
268
+ * Controls the variant applied to all child `<bds-button>` elements. Accepted values: `'default'`, `'outline'`, `'plain'`. Default is `'default'`.
269
+ * @default BUTTON_VARIANTS.DEFAULT
270
+ */
271
+ "variant": IButtonGroup['variant'];
272
+ }
146
273
  /**
147
274
  * Checkbox component for boolean selection with three visual states.
148
275
  * @summary A checkbox form control with default, selected, and indeterminate states.
@@ -195,6 +322,63 @@ export namespace Components {
195
322
  */
196
323
  "value": string;
197
324
  }
325
+ /**
326
+ * Checkbox card component is a selectable card-based checkbox option.
327
+ * It presents a non-exclusive choice with optional descriptive text and icon,
328
+ * supporting checked, indeterminate, disabled, and error states.
329
+ * Can be used standalone or within a checkbox group for orchestration.
330
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
331
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
332
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
333
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
334
+ * @property {string} label - Label displayed next to the checkbox. If not provided, the default slot is used.
335
+ * @property {boolean} checked - Whether the checkbox card is selected. Defaults to `false`.
336
+ * @property {boolean} indeterminate - Whether the checkbox card shows an indeterminate ("mixed") visual state. Defaults to `false`.
337
+ * @property {boolean} error - Whether the checkbox card is in an error state. Defaults to `false`.
338
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
339
+ * @fires bdsChange - Emitted when the user toggles the checkbox card. Payload: `{ checked: boolean, value: string }`.
340
+ */
341
+ interface BdsCheckboxCard {
342
+ /**
343
+ * Whether this checkbox card is selected.
344
+ * @default false
345
+ */
346
+ "checked": ICheckboxCard['checked'];
347
+ /**
348
+ * Disables the control.
349
+ * @default false
350
+ */
351
+ "disabled": ICheckboxCard['disabled'];
352
+ /**
353
+ * Whether the checkbox card is in an error state.
354
+ * @default false
355
+ */
356
+ "error": ICheckboxCard['error'];
357
+ /**
358
+ * Whether the checkbox card shows an indeterminate visual state.
359
+ * @default false
360
+ */
361
+ "indeterminate": ICheckboxCard['indeterminate'];
362
+ /**
363
+ * Label text displayed next to the checkbox indicator. Falls back to the default slot when empty.
364
+ * @default ''
365
+ */
366
+ "label": ICheckboxCard['label'];
367
+ /**
368
+ * Name of the form control, submitted as a key in the form data.
369
+ */
370
+ "name": ICheckboxCard['name'];
371
+ /**
372
+ * Marks the control as required for form submission.
373
+ * @default false
374
+ */
375
+ "required": ICheckboxCard['required'];
376
+ /**
377
+ * Value submitted with the form when this checkbox is selected.
378
+ * @default 'on'
379
+ */
380
+ "value": ICheckboxCard['value'];
381
+ }
198
382
  /**
199
383
  * Modal dialog component for displaying content in an overlay.
200
384
  * @summary Modal overlay for alerts, forms, and confirmations with customizable layout and behavior.
@@ -305,6 +489,20 @@ export namespace Components {
305
489
  */
306
490
  "width": IDialog['width'];
307
491
  }
492
+ /**
493
+ * Divider component for creating visual separators between content sections.
494
+ * @summary A simple visual separator that can be oriented horizontally or vertically.
495
+ * @csspart divider - A divider element that visually separates content.
496
+ * @attr {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
497
+ * @property {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
498
+ */
499
+ interface BdsDivider {
500
+ /**
501
+ * The orientation of the divider. Allowed values: horizontal | vertical
502
+ * @default DIVIDER_ORIENTATIONS.HORIZONTAL
503
+ */
504
+ "orientation": IDivider['orientation'];
505
+ }
308
506
  /**
309
507
  * Flag component used to display a country flag together with its corresponding label.
310
508
  * @summary Renders a flag icon based on a country identifier and optionally displays
@@ -369,6 +567,184 @@ export namespace Components {
369
567
  */
370
568
  "shortName": IFlag['shortName'];
371
569
  }
570
+ /**
571
+ * 12-column CSS Grid layout container with 5 responsive breakpoints.
572
+ * Minimum browser support: Chrome/Edge (last 2), Firefox (last 2), Safari (last 2).
573
+ */
574
+ interface BdsGrid {
575
+ /**
576
+ * `'fluid'` fills full width; `'fixed'` caps the column area at 960px and centres the container.
577
+ * @default GRID_LAYOUT.FLUID
578
+ */
579
+ "layout": IGrid['layout'];
580
+ /**
581
+ * Overrides the row gap independently of the column gutter.
582
+ */
583
+ "rowGap": IGrid['rowGap'];
584
+ }
585
+ /**
586
+ * Grid item child of `bds-grid`. Must be a direct child of `bds-grid`.
587
+ */
588
+ interface BdsGridItem {
589
+ /**
590
+ * Column span at all breakpoints (fallback). `'full'` spans all columns (`grid-column: 1 / -1`).
591
+ * @default GRID_ITEM_COL_SPAN.DEFAULT
592
+ */
593
+ "colSpan": IGridItem['colSpan'];
594
+ /**
595
+ * Override col-span at the `2xl` breakpoint (≥1344px).
596
+ */
597
+ "colSpan2xl": IGridItem['colSpan2xl'];
598
+ /**
599
+ * Override col-span at the `lg` breakpoint (≥960px).
600
+ */
601
+ "colSpanLg": IGridItem['colSpanLg'];
602
+ /**
603
+ * Override col-span at the `md` breakpoint (≥769px).
604
+ */
605
+ "colSpanMd": IGridItem['colSpanMd'];
606
+ /**
607
+ * Override col-span at the `sm` breakpoint (≥320px).
608
+ */
609
+ "colSpanSm": IGridItem['colSpanSm'];
610
+ /**
611
+ * Override col-span at the `xl` breakpoint (≥1152px).
612
+ */
613
+ "colSpanXl": IGridItem['colSpanXl'];
614
+ /**
615
+ * Column offset: shifts the item right by N columns (0–11).
616
+ * @default 0
617
+ */
618
+ "offset": IGridItem['offset'];
619
+ /**
620
+ * Row span. `'full'` maps to `grid-row: 1 / -1`.
621
+ */
622
+ "rowSpan": IGridItem['rowSpan'];
623
+ }
624
+ /**
625
+ * Container component that manages a list of menu items.
626
+ * It handles selection logic (single/multiple) and maintains the data state.
627
+ * @summary A list menu component that can contain multiple menu items and manage their selection state.
628
+ * @fires bdsChange - Emitted when the selection changes, providing the current selected value(s).
629
+ * @fires bdsSelect - Emmited when item is selected in menu-role="menu" is clicked
630
+ * @method getSelectedValues - Returns the currently selected value(s). If multiple is true, returns an array of strings; otherwise, returns a single string or undefined.
631
+ * @method setSelectedValues - Sets the selected value(s). Accepts a string for single selection or an array of strings for multiple selection.
632
+ */
633
+ interface BdsListMenu {
634
+ /**
635
+ * Retrieves the currently selected value(s) programmatically.
636
+ * @method getSelectedValues
637
+ * @returns The selected value(s) based on the 'multiple' prop.
638
+ */
639
+ "getSelectedValues": () => Promise<string | string[]>;
640
+ /**
641
+ * Defines the ARIA role of the menu. Can be 'menu' or 'listbox'. Default is 'menu'.
642
+ * @default MENU_ROLES.MENU
643
+ */
644
+ "menuRole": IListMenu['menuRole'];
645
+ /**
646
+ * Determines if the menu items have selectall/deselectall controls
647
+ * @default false
648
+ */
649
+ "selectControls": IListMenu['selectControls'];
650
+ /**
651
+ * The selection mode of the menu. Can be 'SINGLE' or 'MULTIPLE'. Default is 'SINGLE'.
652
+ * @default LIST_MENU_SELECTION_MODE.SINGLE
653
+ */
654
+ "selectionMode": IListMenu['selectionMode'];
655
+ /**
656
+ * Sets the selected values programmatically. Useful for initializing the menu from an external data source or form reset.
657
+ * @method setSelectedValues
658
+ * @param values - The value or values to be marked as selected.
659
+ */
660
+ "setSelectedValues": (values: string | string[]) => Promise<void>;
661
+ }
662
+ /**
663
+ * Component representing an individual item within a list menu for navigations and selection.
664
+ * @summary A menu item component that supports different variants, disabled state, and selection state, it also supports link behavior when the href prop is provided.
665
+ * @attr {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
666
+ * @attr {string} name - The name of the list menu item.
667
+ * @attr {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
668
+ * @attr {boolean} selected - If true, the menu item is styled as selected.
669
+ * @attr {boolean} activeItem - If true, the menu item is styled as active.
670
+ * @attr {string} value - The value associated with the menu item, emitted in events when activated.\
671
+ * @attr {string} href - The URL for the link. If provided, the menu item will behave as a link.
672
+ * @attr {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
673
+ * @attr {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
674
+ * @attr {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
675
+ * @property {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
676
+ * @property {string} name - The name of the list menu item.
677
+ * @property {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
678
+ * @property {boolean} selected - If true, the menu item is styled as selected.
679
+ * @property {boolean} activeItem - If true, the menu item is styled as active.
680
+ * @property {string} value - The value associated with the menu item, emitted in events when activated.
681
+ * @property {string} href - The URL for the link. If provided, the menu item will behave as a link.
682
+ * @property {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
683
+ * @property {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
684
+ * @property {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
685
+ * @default 'button' - The default variant for the menu item is 'button', which is a standard clickable item.
686
+ * @default '' - By default, the name of the menu item is an empty string.
687
+ * @default false - By default, the menu item is not disabled and is interactive.
688
+ * @default false - By default, the menu item is not selected.
689
+ * @default false - By default, the menu item is not active.
690
+ * @default '' - By default, the value of the menu item is an empty string.
691
+ * @default '' - By default, the href is an empty string, meaning the menu item will not behave as a link.
692
+ * @default false - By default, the newTab property is false, meaning links will open in the same tab.
693
+ * @default false - By default, the downloadable property is false, meaning links will not be treated as download links.
694
+ * @default '' - By default, the filename is an empty string, meaning no suggested filename for downloads.
695
+ */
696
+ interface BdsListMenuItem {
697
+ /**
698
+ * Active state item
699
+ * @default false
700
+ */
701
+ "activeItem": IListMenuItem['activeItem'];
702
+ /**
703
+ * Checkable state item, if is activated should be visible a checkbox
704
+ * @default false
705
+ */
706
+ "checkable": IListMenuItem['checkable'];
707
+ /**
708
+ * Disabled state item
709
+ * @default false
710
+ */
711
+ "disabled": IListMenuItem['disabled'];
712
+ /**
713
+ * Makes the link downloadable if true
714
+ * @default ''
715
+ */
716
+ "download": IListMenuItem['download'];
717
+ /**
718
+ * Link behavior props
719
+ * @default ''
720
+ */
721
+ "href": IListMenuItem['href'];
722
+ /**
723
+ * The name of the list menu item
724
+ * @default ''
725
+ */
726
+ "name": IListMenuItem['name'];
727
+ /**
728
+ * Opens the link in a new tab if true
729
+ * @default false
730
+ */
731
+ "newTab": IListMenuItem['newTab'];
732
+ /**
733
+ * Selected item state
734
+ * @default false
735
+ */
736
+ "selected": IListMenuItem['selected'];
737
+ /**
738
+ * Value associated with the menu item
739
+ * @default ''
740
+ */
741
+ "value": IListMenuItem['value'];
742
+ /**
743
+ * Defines the visual style of the list menu item. - 'button': A standard clickable item. - 'label': A non-interactive label, typically used for grouping items.
744
+ * @default LIST_MENU_ITEM_VARIANTS.BUTTON
745
+ */
746
+ "variant": IListMenuItem['variant'];
747
+ }
372
748
  /**
373
749
  * @attr {boolean} disabled - When true, prevents the popover from being shown.
374
750
  * @attr {number | 'full' | 'auto'} width - Controls the width of the popover content.
@@ -415,122 +791,371 @@ export namespace Components {
415
791
  "width"?: IPopover['width'];
416
792
  }
417
793
  /**
418
- * Spinner component used to indicate a loading or processing state.
419
- * @summary Displays an animated circular spinner to communicate that content is loading.
420
- * @attr {"small"|"medium"|"large"} size - Size of the spinner. Defaults to "small".
421
- * @attr {string} label - Accessible label announced by screen readers. Defaults to "Loading".
422
- * @property {"small"|"medium"|"large"} size - Controls the visual size of the spinner.
423
- * @property {string} label - Text used as the accessible label for screen readers.
794
+ * Radio button component for single-selection within a group.
795
+ * Use inside `bds-radio-group` for managed selection and form binding.
796
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
424
797
  */
425
- interface BdsSpinner {
798
+ interface BdsRadio {
426
799
  /**
427
- * Accessible label announced by screen readers to describe the loading state.
428
- * @default "Loading"
800
+ * Whether this radio is selected. Managed by bds-radio-group; can be set directly when used standalone.
801
+ * @default false
429
802
  */
430
- "label": ISpinner['label'];
803
+ "checked": boolean;
431
804
  /**
432
- * Controls the visual size of the spinner.
433
- * @default "small"
805
+ * Disables the radio, preventing interaction and selection.
806
+ * @default false
434
807
  */
435
- "size": ISpinner['size'];
436
- }
437
- /**
438
- * Text field component for user input with validation and form integration.
439
- * @summary Single-line text input with label, validation, password toggle, and clear action.
440
- * @attr {string} name - The name submitted with the form.
441
- * @attr {string} value - The current value of the input.
442
- * @attr {boolean} disabled - Disables the input.
443
- * @attr {boolean} required - Marks the input as required.
444
- * @attr {boolean} error - Applies the error visual state.
445
- * @attr {"text"|"password"} type - Input type.
446
- * @attr {"outline"|"plain"} variant - Visual style of the container.
447
- * @attr {boolean} readonly - Makes the input read-only. The value is still submitted with the form.
448
- * @property {string} label - Label text rendered above the input.
449
- * @property {string} sublabel - Sublabel rendered inside the input container, before the text area.
450
- * @property {string} placeholder - Native placeholder forwarded to the inner `<input>`.
451
- * @property {string} helperText - Assistive text shown below the input when there is no error.
452
- * @property {string} errorMessage - Error message shown below the input when `error` is `true`. Replaces `helperText`.
453
- * @property {string} info - Tooltip content attached to the label.
454
- * @property {string} icon - Icon font class rendered beside the sublabel inside the container (e.g. `bds-icon-settings`).
455
- * @property {boolean} clearable - Shows a clear button when the input has a value.
456
- * @property {boolean} clearOnHover - Shows a clear button that is hidden at rest and revealed on hover.
457
- * @property {boolean} readOnly - Makes the input readonly. The value is still submitted with the form.
458
- * @property {string} autocomplete - Native `autocomplete` attribute forwarded to the inner `<input>`.
459
- * @property {string} pattern - Native `pattern` attribute forwarded to the inner `<input>`.
460
- * @property {number} minLength - Minimum character count. `0` means no minimum.
461
- * @property {number} maxLength - Maximum character count. `0` means no maximum.
462
- * @property {boolean} counter - Enables the character counter in the footer. Requires `charCount`.
463
- * @property {number} charCount - Maximum character count shown in the footer counter (e.g. `120` → `"45/120"`). Requires `counter`.
464
- * @property {IFormValidator[]} customValidators - Additional validators merged with the built-in ones.
465
- * @property {"blur"|"input"|"submit"|"change"} validationTiming - When built-in validation runs.
466
- * @property {string} pattern - Regex the value must match to pass `patternMismatch` validation. Also forwarded as the native `pattern` attribute to the inner `<input>`. Empty string disables pattern validation.
467
- * @property {string} customWidth - Sets a custom width via the `--bds-text-field-width` CSS custom property.
468
- * @fires valueChange - Emitted on every value change; used for framework 2-way binding.
469
- * @fires bdsInput - Emitted on every keystroke with `{ value, event }`.
470
- * @fires bdsChange - Emitted when focus leaves after the value changed, with `{ value, event }`.
471
- * @fires bdsFocus - Emitted when the input gains focus, with `{ event }`.
472
- * @fires bdsBlur - Emitted when the input loses focus, with `{ event }`.
473
- * @fires bdsClear - Emitted when the user activates the clear button.
474
- * @fires bdsValidationChange - Emitted after each validation run with `{ valid, validity, value, touched, dirty }`.
475
- * @cssprop --bds-text-field-width - Sets a custom width for the component.
476
- */
477
- interface BdsTextField {
808
+ "disabled": boolean;
478
809
  /**
479
- * Native `autocomplete` attribute forwarded to the inner `<input>`.
480
- * @default 'off'
810
+ * Shows error styling on the radio indicator. Propagated by bds-radio-group.
811
+ * @default false
481
812
  */
482
- "autocomplete": string;
813
+ "error": boolean;
483
814
  /**
484
- * Maximum character count shown in the footer counter (e.g. `120` `"45/120"`). Requires `counter`.
485
- * @default 0
815
+ * Tooltip text shown on an info icon next to the label.
816
+ * @default ''
486
817
  */
487
- "charCount": number;
818
+ "info": string;
488
819
  /**
489
- * Returns `true` if the element's value passes all constraints; `false` otherwise. Also fires an `invalid` event if constraints are violated.
820
+ * Label text displayed next to the radio indicator. Falls back to the default slot when empty.
821
+ * @default ''
490
822
  */
491
- "checkValidity": () => Promise<boolean>;
823
+ "label": string;
492
824
  /**
493
- * Shows a clear button that is hidden at rest and revealed when the user hovers over the field.
494
- * @default false
825
+ * Name attribute stamped by the parent bds-radio-group via setAttribute. Set directly when used standalone.
826
+ * @default ''
495
827
  */
496
- "clearOnHover": boolean;
828
+ "name": string;
497
829
  /**
498
- * Shows a clear button when the input has a value.
499
- * @default false
830
+ * Value submitted with the form when this radio is selected.
831
+ * @default 'on'
500
832
  */
501
- "clearable": boolean;
833
+ "value": string;
834
+ }
835
+ /**
836
+ * Button-shaped radio option for use inside `bds-radio-group[type="radiobutton"]`.
837
+ * Creates a segmented control appearance when grouped. Not form-associated — the parent
838
+ * `bds-radio-group` owns form state and single-selection enforcement.
839
+ */
840
+ interface BdsRadioButton {
502
841
  /**
503
- * Enables the character counter in the footer. Requires `charCount` to be set.
842
+ * Whether this button is selected. Managed by bds-radio-group; can be set directly when used standalone.
504
843
  * @default false
505
844
  */
506
- "counter": boolean;
507
- /**
508
- * Additional validators merged with the built-in ones.
509
- * @default []
510
- */
511
- "customValidators": IFormValidator[];
512
- /**
513
- * Sets a custom width via the `--bds-text-field-width` CSS custom property.
514
- * @default ''
515
- */
516
- "customWidth": string;
845
+ "checked": boolean;
517
846
  /**
518
- * Disables the input. Also toggled by `formDisabledCallback` via the mixin.
847
+ * Disables the button, preventing interaction and selection.
519
848
  * @default false
520
849
  */
521
850
  "disabled": boolean;
522
851
  /**
523
- * When `true`, applies the error visual state.
852
+ * Shows error styling on the button. Propagated by bds-radio-group.
524
853
  * @default false
525
854
  */
526
855
  "error": boolean;
527
856
  /**
528
- * Message shown below the input when `error` is `true`. Replaces `helperText`.
857
+ * Tooltip text shown on an info icon next to the label.
529
858
  * @default ''
530
859
  */
531
- "errorMessage": string;
860
+ "info": string;
532
861
  /**
533
- * Helper text shown below the input when there is no error.
862
+ * Label text displayed inside the button. Falls back to the default slot when empty.
863
+ * @default ''
864
+ */
865
+ "label": string;
866
+ /**
867
+ * Name attribute stamped by the parent bds-radio-group via setAttribute. Set directly when used standalone.
868
+ * @default ''
869
+ */
870
+ "name": string;
871
+ /**
872
+ * Value submitted with the form when this button is selected.
873
+ * @default 'on'
874
+ */
875
+ "value": string;
876
+ }
877
+ /**
878
+ * Radio card component is a selectable card-based radio option.
879
+ * It presents a mutually exclusive choice with optional descriptive text and icon,
880
+ * designed for integration with bds-radio-group for orchestration.
881
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
882
+ * @fires bdsChange - Emitted when the user selects this radio card. Listened to by the parent bds-radio-group to enforce single selection.
883
+ */
884
+ interface BdsRadioCard {
885
+ /**
886
+ * Whether this radio card is selected. Managed by bds-radio-group; can be set directly when used standalone.
887
+ * @default false
888
+ */
889
+ "checked": IRadioCard['checked'];
890
+ /**
891
+ * Disables the radio card, preventing it from being selected and interacted with.
892
+ * @default false
893
+ */
894
+ "disabled": IRadioCard['disabled'];
895
+ /**
896
+ * Whether the radio card is in an error state.
897
+ * @default false
898
+ */
899
+ "error": IRadioCard['error'];
900
+ /**
901
+ * Tooltip content attached to the radio card content. If empty, the info icon will not be rendered.
902
+ * @default ''
903
+ */
904
+ "info": IRadioCard['info'];
905
+ /**
906
+ * Label text displayed next to the radio indicator. Falls back to the default slot when empty.
907
+ * @default ''
908
+ */
909
+ "label": IRadioCard['label'];
910
+ /**
911
+ * Name attribute stamped by the parent bds-radio-group. Set directly when used standalone.
912
+ * @default ''
913
+ */
914
+ "name": IRadioCard['name'];
915
+ /**
916
+ * Value submitted with the form when this radio is selected.
917
+ * @default 'on'
918
+ */
919
+ "value": IRadioCard['value'];
920
+ }
921
+ /**
922
+ * Radio group component that orchestrates single-selection across a set of `bds-radio` children.
923
+ */
924
+ interface BdsRadioGroup {
925
+ /**
926
+ * Returns whether the group's current value satisfies the browser's built-in constraint validation.
927
+ */
928
+ "checkValidity": () => Promise<boolean>;
929
+ /**
930
+ * Disables all child radios and prevents selection. Also mirrored to isDisabled
931
+ * @State for form-level disable support.
932
+ * @default false
933
+ */
934
+ "disabled": false;
935
+ /**
936
+ * Shows error styling on the group helper text. Propagated to all child radios.
937
+ * @default false
938
+ */
939
+ "error": false;
940
+ /**
941
+ * Error message rendered below the radio options when error is true. Replaces helperText.
942
+ * @default ''
943
+ */
944
+ "errorMessage": "";
945
+ /**
946
+ * Helper text rendered below the radio options. Shown in default state; replaced by errorMessage in error state.
947
+ * @default ''
948
+ */
949
+ "helperText": "";
950
+ /**
951
+ * Tooltip text shown on the group label info icon.
952
+ * @default ''
953
+ */
954
+ "info": "";
955
+ /**
956
+ * Group label rendered above the radio options.
957
+ * @default ''
958
+ */
959
+ "label": "";
960
+ /**
961
+ * Name of the form control; submitted as the field key in FormData.
962
+ */
963
+ "name": string;
964
+ /**
965
+ * Layout direction of the radio options.
966
+ * @default ORIENTATIONS.VERTICAL
967
+ */
968
+ "orientation": Orientation;
969
+ /**
970
+ * Reports the group's validity state to the user, showing native validation UI if invalid.
971
+ */
972
+ "reportValidity": () => Promise<boolean>;
973
+ /**
974
+ * Marks the group as required for form submission. Triggers validity error when no radio is selected.
975
+ * @default false
976
+ */
977
+ "required": false;
978
+ /**
979
+ * Identifies this group variant. 'radio' renders circular bds-radio children; 'radiobutton' renders bds-radio-button segmented control; 'radiocard' renders bds-radio-card element.
980
+ * @default RADIO_GROUP_TYPES.RADIO
981
+ */
982
+ "type": RadioGroupType;
983
+ /**
984
+ * Currently selected radio value. Synced to children on change.
985
+ * @default ''
986
+ */
987
+ "value": string;
988
+ }
989
+ /**
990
+ * Spinner component used to indicate a loading or processing state.
991
+ * @summary Displays an animated circular spinner to communicate that content is loading.
992
+ * @attr {"small"|"medium"|"large"} size - Size of the spinner. Defaults to "small".
993
+ * @attr {string} label - Accessible label announced by screen readers. Defaults to "Loading".
994
+ * @property {"small"|"medium"|"large"} size - Controls the visual size of the spinner.
995
+ * @property {string} label - Text used as the accessible label for screen readers.
996
+ */
997
+ interface BdsSpinner {
998
+ /**
999
+ * Accessible label announced by screen readers to describe the loading state.
1000
+ * @default "Loading"
1001
+ */
1002
+ "label": ISpinner['label'];
1003
+ /**
1004
+ * Controls the visual size of the spinner.
1005
+ * @default "small"
1006
+ */
1007
+ "size": ISpinner['size'];
1008
+ }
1009
+ /**
1010
+ * Status badge component for communicating the current state of an item or process.
1011
+ */
1012
+ interface BdsStatus {
1013
+ /**
1014
+ * indicator is a string attribute. Controls the type of indicator rendered before the slotted label. An invalid value falls back to `"none"` and a warning is set on the host element.
1015
+ * @default INDICATOR_TYPES.NONE
1016
+ */
1017
+ "indicator": IStatus['indicator'];
1018
+ /**
1019
+ * state is a string attribute. Controls the visual state variant of the status badge. Determines the background, accent, and text colors applied to the element. An invalid value falls back to `"neutral"` and a warning is set on the host element.
1020
+ * @default PROCESS_STATUS.NEUTRAL
1021
+ */
1022
+ "state": IStatus['state'];
1023
+ }
1024
+ /**
1025
+ * Tag component used to represent categories, metadata, or removable filters.
1026
+ * @summary Displays a label with optional leading/trailing icons and dismissal capability.
1027
+ * @fires bdsClose - Emitted when the tag is closed via the close button or Delete key.
1028
+ * @fires bdsSelect - Emitted when the tag is selected via a click or Space/Enter key.
1029
+ */
1030
+ interface BdsTag {
1031
+ /**
1032
+ * Aria label for the close button when visible.
1033
+ * @default 'Close tag'
1034
+ */
1035
+ "closeButtonLabel": ITag['closeButtonLabel'];
1036
+ /**
1037
+ * Visual color variant: 'gray', 'cyan', 'cobalt', 'teal', 'lime', 'orange', 'rose', or 'purple'.
1038
+ * @default "gray"
1039
+ */
1040
+ "color": ITag['color'];
1041
+ /**
1042
+ * Disables interaction with the tag. Reduces opacity and prevents interactions.
1043
+ * @default false
1044
+ */
1045
+ "disabled": ITag['disabled'];
1046
+ /**
1047
+ * Whether the tag is selectable or not.
1048
+ * @default false
1049
+ */
1050
+ "multiselect": ITag['multiselect'];
1051
+ /**
1052
+ * Hides the close button that allows users to dismiss the tag.
1053
+ * @default false
1054
+ */
1055
+ "readonly": ITag['readonly'];
1056
+ /**
1057
+ * Whether the tag is selected or not.
1058
+ * @default false
1059
+ */
1060
+ "selected": ITag['selected'];
1061
+ }
1062
+ /**
1063
+ * Text field component for user input with validation and form integration.
1064
+ * @summary Single-line text input with label, validation, password toggle, and clear action.
1065
+ * @attr {string} name - The name submitted with the form.
1066
+ * @attr {string} value - The current value of the input.
1067
+ * @attr {boolean} disabled - Disables the input.
1068
+ * @attr {boolean} required - Marks the input as required.
1069
+ * @attr {boolean} error - Applies the error visual state.
1070
+ * @attr {"text"|"password"} type - Input type.
1071
+ * @attr {"outline"|"plain"} variant - Visual style of the container.
1072
+ * @attr {boolean} readonly - Makes the input read-only. The value is still submitted with the form.
1073
+ * @property {string} label - Label text rendered above the input.
1074
+ * @property {string} sublabel - Sublabel rendered inside the input container, before the text area.
1075
+ * @property {string} placeholder - Native placeholder forwarded to the inner `<input>`.
1076
+ * @property {string} helperText - Assistive text shown below the input when there is no error.
1077
+ * @property {string} errorMessage - Error message shown below the input when `error` is `true`. Replaces `helperText`.
1078
+ * @property {string} info - Tooltip content attached to the label.
1079
+ * @property {string} icon - Icon font class rendered beside the sublabel inside the container (e.g. `bds-icon-settings`).
1080
+ * @property {boolean} clearable - Shows a clear button when the input has a value.
1081
+ * @property {boolean} clearOnHover - Shows a clear button that is hidden at rest and revealed on hover.
1082
+ * @property {boolean} readOnly - Makes the input readonly. The value is still submitted with the form.
1083
+ * @property {string} autocomplete - Native `autocomplete` attribute forwarded to the inner `<input>`.
1084
+ * @property {string} pattern - Native `pattern` attribute forwarded to the inner `<input>`.
1085
+ * @property {number} minLength - Minimum character count. `0` means no minimum.
1086
+ * @property {number} maxLength - Maximum character count. `0` means no maximum.
1087
+ * @property {boolean} counter - Enables the character counter in the footer. Requires `charCount`.
1088
+ * @property {number} charCount - Maximum character count shown in the footer counter (e.g. `120` → `"45/120"`). Requires `counter`.
1089
+ * @property {IFormValidator[]} customValidators - Additional validators merged with the built-in ones.
1090
+ * @property {"blur"|"input"|"submit"|"change"} validationTiming - When built-in validation runs.
1091
+ * @property {string} pattern - Regex the value must match to pass `patternMismatch` validation. Also forwarded as the native `pattern` attribute to the inner `<input>`. Empty string disables pattern validation.
1092
+ * @property {string} customWidth - Sets a custom width via the `--bds-text-field-width` CSS custom property.
1093
+ * @fires valueChange - Emitted on every value change; used for framework 2-way binding.
1094
+ * @fires bdsInput - Emitted on every keystroke with `{ value, event }`.
1095
+ * @fires bdsChange - Emitted when focus leaves after the value changed, with `{ value, event }`.
1096
+ * @fires bdsFocus - Emitted when the input gains focus, with `{ event }`.
1097
+ * @fires bdsBlur - Emitted when the input loses focus, with `{ event }`.
1098
+ * @fires bdsClear - Emitted when the user activates the clear button.
1099
+ * @fires bdsValidationChange - Emitted after each validation run with `{ valid, validity, value, touched, dirty }`.
1100
+ * @cssprop --bds-text-field-width - Sets a custom width for the component.
1101
+ */
1102
+ interface BdsTextField {
1103
+ /**
1104
+ * Native `autocomplete` attribute forwarded to the inner `<input>`.
1105
+ * @default 'off'
1106
+ */
1107
+ "autocomplete": string;
1108
+ /**
1109
+ * Maximum character count shown in the footer counter (e.g. `120` → `"45/120"`). Requires `counter`.
1110
+ * @default 0
1111
+ */
1112
+ "charCount": number;
1113
+ /**
1114
+ * Returns `true` if the element's value passes all constraints; `false` otherwise. Also fires an `invalid` event if constraints are violated.
1115
+ */
1116
+ "checkValidity": () => Promise<boolean>;
1117
+ /**
1118
+ * Shows a clear button that is hidden at rest and revealed when the user hovers over the field.
1119
+ * @default false
1120
+ */
1121
+ "clearOnHover": boolean;
1122
+ /**
1123
+ * Shows a clear button when the input has a value.
1124
+ * @default false
1125
+ */
1126
+ "clearable": boolean;
1127
+ /**
1128
+ * Enables the character counter in the footer. Requires `charCount` to be set.
1129
+ * @default false
1130
+ */
1131
+ "counter": boolean;
1132
+ /**
1133
+ * Additional validators merged with the built-in ones.
1134
+ * @default []
1135
+ */
1136
+ "customValidators": IFormValidator[];
1137
+ /**
1138
+ * Sets a custom width via the `--bds-text-field-width` CSS custom property.
1139
+ * @default ''
1140
+ */
1141
+ "customWidth": string;
1142
+ /**
1143
+ * Disables the input. Also toggled by `formDisabledCallback` via the mixin.
1144
+ * @default false
1145
+ */
1146
+ "disabled": boolean;
1147
+ /**
1148
+ * When `true`, applies the error visual state.
1149
+ * @default false
1150
+ */
1151
+ "error": boolean;
1152
+ /**
1153
+ * Message shown below the input when `error` is `true`. Replaces `helperText`.
1154
+ * @default ''
1155
+ */
1156
+ "errorMessage": string;
1157
+ /**
1158
+ * Helper text shown below the input when there is no error.
534
1159
  * @default ''
535
1160
  */
536
1161
  "helperText": string;
@@ -615,51 +1240,121 @@ export namespace Components {
615
1240
  "variant": TextFieldVariant;
616
1241
  }
617
1242
  /**
618
- * Tooltip component that displays a short label anchored to a trigger element on hover.
619
- * @summary Displays a floating tooltip anchored to a trigger element on mouseenter/mouseleave,
620
- * with configurable placement, optional arrow, and multiline support.
621
- * @attr {boolean} disabled - When true, prevents the tooltip from being shown.
622
- * @attr {boolean} multiline - When true, allows the tooltip content to wrap across multiple lines.
623
- * @attr {Partial<FloatingTooltipProp>} floating-options - Configuration object for floating behavior.
624
- * @csspart arrow - The arrow element pointing toward the trigger.
625
- * @csspart tooltip-content - The inner content wrapper inside the tooltip.
626
- * @cssprop data-placement - Reflects the resolved placement on the tooltip container element.
627
- * @cssprop data-hidearrow - Reflects the hideArrow option on the tooltip container element.
628
- * @cssprop data-multiline - Reflects the multiline prop on the tooltip container element.
1243
+ * Toggle/Switch component for boolean selection.
1244
+ * @summary A toggle switch form control with label positioning support.
1245
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
1246
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
1247
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
1248
+ * @property {boolean} checked - Whether the toggle is on. Defaults to `false`.
1249
+ * @property {string} placement - Position of the label relative to the switch. Accepts `TOGGLE_PLACEMENT` values. Defaults to `"left"`.
1250
+ * @property {string} label - Label displayed next to the toggle. Defaults to `""`.
1251
+ * @property {string} helperText - Help text displayed below the toggle. Defaults to `""`.
1252
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
1253
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
1254
+ * @fires bdsChange - Emitted when the user toggles the switch. Payload: `IToggleEventChange`.
629
1255
  */
630
- interface BdsTooltip {
1256
+ interface BdsToggle {
631
1257
  /**
632
- * If true, disables the tooltip.
1258
+ * Whether the toggle is on. Defaults to `false`.
633
1259
  * @default false
634
1260
  */
635
- "disabled"?: ITooltip['disabled'];
1261
+ "checked": IToggle['checked'];
636
1262
  /**
637
- * Override default options for the floating mixin. This can be overridden by passing a different object to the `floatingOptions` prop.
638
- * @default {}
1263
+ * Disables the control. Defaults to `false`.
1264
+ * @default false
639
1265
  */
640
- "floatingOptions": Partial<FloatingTooltipProp>;
1266
+ "disabled": IToggle['disabled'];
641
1267
  /**
642
- * If true, allows multiline content in the tooltip.
1268
+ * When `true`, applies the error visual state.
643
1269
  * @default false
644
1270
  */
645
- "multiline"?: ITooltip['multiline'];
646
- }
647
- /**
648
- * Typography component for displaying text with various styles, sizes, and interactive features.
649
- * @summary A comprehensive typography component that supports multiple text variants, sizes, alignments, states, and link functionality.
650
- * @attr {string} variant - The variant of the typography for styling the text. Options: label, display, heading, subheading, helper, link, code, caption
651
- * @attr {string} element - Defines the HTML element. For `heading` variant, the text size adjusts to the HTML heading level (`h1` through `h6`).
652
- * @attr {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
653
- * @attr {string} align - The text alignment. Options: start, center, end, inherit
654
- * @attr {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
655
- * @attr {boolean} is-required - Shows a required indicator when used with `label` variant.
656
- * @attr {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
657
- * @attr {number} max-lines - Maximum number of lines to show before truncating with ellipsis.
658
- * @attr {string} href - URL when the typography is an `a` element and a `link` variant.
659
- * @attr {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
660
- * @attr {boolean} is-downloadable - Makes the `link` download a file.
661
- * @attr {string} filename - Suggested filename when downloading a file from the `link`.
662
- * @attr {string} html-for - The for attribute when rendered as a label
1271
+ "error": IToggle['error'];
1272
+ /**
1273
+ * Message shown below the input when `error` is `true`. Replaces `helperText`.
1274
+ * @default ''
1275
+ */
1276
+ "errorMessage": IToggle['errorMessage'];
1277
+ /**
1278
+ * Help text displayed below the toggle. Defaults to `""`.
1279
+ * @default ''
1280
+ */
1281
+ "helperText": IToggle['helperText'];
1282
+ /**
1283
+ * Tooltip content attached to the label. Rendered via `bds-typography` `tooltipText` prop.
1284
+ * @default ''
1285
+ */
1286
+ "info": IToggle['info'];
1287
+ /**
1288
+ * Label displayed next to the toggle. Defaults to `""`.
1289
+ * @default ''
1290
+ */
1291
+ "label": IToggle['label'];
1292
+ /**
1293
+ * Name of the form control, submitted as a key in the form data.
1294
+ */
1295
+ "name": IToggle['name'];
1296
+ /**
1297
+ * Position of the label relative to the switch. Accepts `TOGGLE_PLACEMENT` values. Defaults to `TOGGLE_PLACEMENT.LEFT`.
1298
+ * @default TOGGLE_PLACEMENT.LEFT
1299
+ */
1300
+ "placement": IToggle['placement'];
1301
+ /**
1302
+ * Marks the control as required for form submission. Defaults to `false`.
1303
+ * @default false
1304
+ */
1305
+ "required": IToggle['required'];
1306
+ /**
1307
+ * Value submitted with the form data when checked. Behaves like the `value` attribute of a native `<input type="checkbox">`. Defaults to `"on"`.
1308
+ * @default 'on'
1309
+ */
1310
+ "value": IToggle['value'];
1311
+ }
1312
+ /**
1313
+ * Tooltip component that displays a short label anchored to a trigger element on hover.
1314
+ * @summary Displays a floating tooltip anchored to a trigger element on mouseenter/mouseleave,
1315
+ * with configurable placement, optional arrow, and multiline support.
1316
+ * @attr {boolean} disabled - When true, prevents the tooltip from being shown.
1317
+ * @attr {boolean} multiline - When true, allows the tooltip content to wrap across multiple lines.
1318
+ * @attr {Partial<FloatingTooltipProp>} floating-options - Configuration object for floating behavior.
1319
+ * @csspart arrow - The arrow element pointing toward the trigger.
1320
+ * @csspart tooltip-content - The inner content wrapper inside the tooltip.
1321
+ * @cssprop data-placement - Reflects the resolved placement on the tooltip container element.
1322
+ * @cssprop data-hidearrow - Reflects the hideArrow option on the tooltip container element.
1323
+ * @cssprop data-multiline - Reflects the multiline prop on the tooltip container element.
1324
+ */
1325
+ interface BdsTooltip {
1326
+ /**
1327
+ * If true, disables the tooltip.
1328
+ * @default false
1329
+ */
1330
+ "disabled"?: ITooltip['disabled'];
1331
+ /**
1332
+ * Override default options for the floating mixin. This can be overridden by passing a different object to the `floatingOptions` prop.
1333
+ * @default {}
1334
+ */
1335
+ "floatingOptions": Partial<FloatingTooltipProp>;
1336
+ /**
1337
+ * If true, allows multiline content in the tooltip.
1338
+ * @default false
1339
+ */
1340
+ "multiline"?: ITooltip['multiline'];
1341
+ }
1342
+ /**
1343
+ * Typography component for displaying text with various styles, sizes, and interactive features.
1344
+ * @summary A comprehensive typography component that supports multiple text variants, sizes, alignments, states, and link functionality.
1345
+ * @attr {string} variant - The variant of the typography for styling the text. Options: label, display, heading, subheading, helper, link, code, caption
1346
+ * @attr {string} element - Defines the HTML element. For `heading` variant, the text size adjusts to the HTML heading level (`h1` through `h6`).
1347
+ * @attr {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
1348
+ * @attr {string} align - The text alignment. Options: start, center, end, inherit
1349
+ * @attr {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
1350
+ * @attr {boolean} required - Shows a required indicator when used with `label` variant.
1351
+ * @attr {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
1352
+ * @attr {number} max-lines - Maximum number of lines to show before truncating with ellipsis.
1353
+ * @attr {string} href - URL when the typography is an `a` element and a `link` variant.
1354
+ * @attr {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
1355
+ * @attr {boolean} downloadable - Makes the `link` download a file.
1356
+ * @attr {string} filename - Suggested filename when downloading a file from the `link`.
1357
+ * @attr {string} html-for - The for attribute when rendered as a label
663
1358
  * @attr {string} tooltip-text - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
664
1359
  * @attr {string} custom-class - Additional custom CSS class
665
1360
  * @property {string} variant - The variant of the typography for styling the text. Options: label, display, heading, subheading, helper, link, code, caption
@@ -667,12 +1362,12 @@ export namespace Components {
667
1362
  * @property {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
668
1363
  * @property {string} align - The text alignment. Options: start, center, end, inherit
669
1364
  * @property {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
670
- * @property {boolean} isRequired - Shows a required indicator when used with `label` variant.
1365
+ * @property {boolean} required - Shows a required indicator when used with `label` variant.
671
1366
  * @property {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
672
1367
  * @property {number} maxLines - Maximum number of lines to show before truncating with ellipsis.
673
1368
  * @property {string} href - URL when the typography is an `a` element and a `link` variant.
674
1369
  * @property {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
675
- * @property {boolean} isDownloadable - Makes the `link` download a file.
1370
+ * @property {boolean} downloadable - Makes the `link` download a file.
676
1371
  * @property {string} filename - Suggested filename when downloading a file from the `link`.
677
1372
  * @property {string} htmlFor - The for attribute when rendered as a label
678
1373
  * @property {string} tooltipText - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -682,12 +1377,12 @@ export namespace Components {
682
1377
  * @default 'start' - Default align value
683
1378
  * @default 'md' - Default size value
684
1379
  * @default 'default' - Default state value
685
- * @default false - Default isRequired state
1380
+ * @default false - Default required state
686
1381
  * @default false - Default ellipsis state
687
1382
  * @default 1 - Default maxLines value
688
1383
  * @default '' - Default href value
689
1384
  * @default '' - Default target value
690
- * @default false - Default isDownloadable state
1385
+ * @default false - Default downloadable state
691
1386
  * @default 'download' - Default filename value
692
1387
  * @default '' - Default tooltipText value
693
1388
  */
@@ -702,6 +1397,11 @@ export namespace Components {
702
1397
  * @default ''
703
1398
  */
704
1399
  "customClass": string;
1400
+ /**
1401
+ * Enables download behavior for anchor.
1402
+ * @default false
1403
+ */
1404
+ "downloadable": ITypography['downloadable'];
705
1405
  /**
706
1406
  * HTML tag used for rendering.
707
1407
  * @default TAG_ELEMENT.P
@@ -728,20 +1428,15 @@ export namespace Components {
728
1428
  */
729
1429
  "htmlFor": ITypography['htmlFor'];
730
1430
  /**
731
- * Enables download behavior for anchor.
732
- * @default false
1431
+ * Max lines when ellipsis is enabled.
1432
+ * @default 1
733
1433
  */
734
- "isDownloadable": ITypography['isDownloadable'];
1434
+ "maxLines": ITypography['maxLines'];
735
1435
  /**
736
1436
  * Marks the field as required.
737
1437
  * @default false
738
1438
  */
739
- "isRequired": ITypography['isRequired'];
740
- /**
741
- * Max lines when ellipsis is enabled.
742
- * @default 1
743
- */
744
- "maxLines": ITypography['maxLines'];
1439
+ "required": ITypography['required'];
745
1440
  /**
746
1441
  * Typography size token.
747
1442
  * @default SIZES.M
@@ -781,15 +1476,86 @@ export interface BdsCheckboxCustomEvent<T> extends CustomEvent<T> {
781
1476
  detail: T;
782
1477
  target: HTMLBdsCheckboxElement;
783
1478
  }
1479
+ export interface BdsCheckboxCardCustomEvent<T> extends CustomEvent<T> {
1480
+ detail: T;
1481
+ target: HTMLBdsCheckboxCardElement;
1482
+ }
784
1483
  export interface BdsDialogCustomEvent<T> extends CustomEvent<T> {
785
1484
  detail: T;
786
1485
  target: HTMLBdsDialogElement;
787
1486
  }
1487
+ export interface BdsListMenuCustomEvent<T> extends CustomEvent<T> {
1488
+ detail: T;
1489
+ target: HTMLBdsListMenuElement;
1490
+ }
1491
+ export interface BdsListMenuItemCustomEvent<T> extends CustomEvent<T> {
1492
+ detail: T;
1493
+ target: HTMLBdsListMenuItemElement;
1494
+ }
1495
+ export interface BdsRadioCustomEvent<T> extends CustomEvent<T> {
1496
+ detail: T;
1497
+ target: HTMLBdsRadioElement;
1498
+ }
1499
+ export interface BdsRadioButtonCustomEvent<T> extends CustomEvent<T> {
1500
+ detail: T;
1501
+ target: HTMLBdsRadioButtonElement;
1502
+ }
1503
+ export interface BdsRadioCardCustomEvent<T> extends CustomEvent<T> {
1504
+ detail: T;
1505
+ target: HTMLBdsRadioCardElement;
1506
+ }
1507
+ export interface BdsRadioGroupCustomEvent<T> extends CustomEvent<T> {
1508
+ detail: T;
1509
+ target: HTMLBdsRadioGroupElement;
1510
+ }
1511
+ export interface BdsTagCustomEvent<T> extends CustomEvent<T> {
1512
+ detail: T;
1513
+ target: HTMLBdsTagElement;
1514
+ }
788
1515
  export interface BdsTextFieldCustomEvent<T> extends CustomEvent<T> {
789
1516
  detail: T;
790
1517
  target: HTMLBdsTextFieldElement;
791
1518
  }
1519
+ export interface BdsToggleCustomEvent<T> extends CustomEvent<T> {
1520
+ detail: T;
1521
+ target: HTMLBdsToggleElement;
1522
+ }
792
1523
  declare global {
1524
+ /**
1525
+ * Avatar component used to display user initials or names for visual identification.
1526
+ * @summary Displays a circular avatar with user initials and optional name label.
1527
+ * Uses Boreal Design System tokens for consistent styling across platforms.
1528
+ * @attr {string} username - The full name used to generate initials or display as label.
1529
+ * @attr {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
1530
+ * @attr {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
1531
+ * @attr {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
1532
+ * @property {string} username - The full name used to generate initials or display as label.
1533
+ * @property {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
1534
+ * @property {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
1535
+ * @property {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
1536
+ * @cssprop --bds-avatar-background - Custom background color HEX code.
1537
+ * @cssprop --bds-avatar-initials-color - Custom text color HEX code.
1538
+ */
1539
+ interface HTMLBdsAvatarElement extends Components.BdsAvatar, HTMLStencilElement {
1540
+ }
1541
+ var HTMLBdsAvatarElement: {
1542
+ prototype: HTMLBdsAvatarElement;
1543
+ new (): HTMLBdsAvatarElement;
1544
+ };
1545
+ /**
1546
+ * Badge component for displaying contextual status information with optional icon support.
1547
+ * @summary A compact label component that communicates status or category using color-coded variants. Supports an optional icon slot and a disabled state.
1548
+ * @attr {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
1549
+ * @attr {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
1550
+ * @property {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
1551
+ * @property {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
1552
+ */
1553
+ interface HTMLBdsBadgeElement extends Components.BdsBadge, HTMLStencilElement {
1554
+ }
1555
+ var HTMLBdsBadgeElement: {
1556
+ prototype: HTMLBdsBadgeElement;
1557
+ new (): HTMLBdsBadgeElement;
1558
+ };
793
1559
  interface HTMLBdsBannerElementEventMap {
794
1560
  "bdsClose": void;
795
1561
  }
@@ -801,8 +1567,8 @@ declare global {
801
1567
  * @property {"info"|"success"|"warning"|"danger"} variant - Visual style variant: 'info', 'success', 'warning', or 'danger'. Defaults to "info".
802
1568
  * @property {boolean} closable - Shows a close button that allows users to close the banner. Defaults to false.
803
1569
  * @property {boolean} closeButtonLabel - Aria label for the close button when visible.
804
- * @fires bdsClose - Emitted when the banner is closed via the close button or `closeBanner` method.
805
- * @method closeBanner - Programmatic method to close the banner and emit the `bdsClose` event.
1570
+ * @fires bdsClose - Emitted when the banner is closed via the close button or `close` method.
1571
+ * @method close - Programmatic method to close the banner and emit the `bdsClose` event.
806
1572
  */
807
1573
  interface HTMLBdsBannerElement extends Components.BdsBanner, HTMLStencilElement {
808
1574
  addEventListener<K extends keyof HTMLBdsBannerElementEventMap>(type: K, listener: (this: HTMLBdsBannerElement, ev: BdsBannerCustomEvent<HTMLBdsBannerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -830,7 +1596,7 @@ declare global {
830
1596
  * @attr {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
831
1597
  * @attr {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
832
1598
  * @attr {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
833
- * @attr {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
1599
+ * @attr {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
834
1600
  * @attr {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
835
1601
  * @attr {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
836
1602
  * @property {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
@@ -839,13 +1605,13 @@ declare global {
839
1605
  * @property {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
840
1606
  * @property {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
841
1607
  * @property {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
842
- * @property {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
1608
+ * @property {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
843
1609
  * @property {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
844
1610
  * @property {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
845
1611
  * @default 'button' - Default type value
846
1612
  * @default 'default' - Default color value
847
1613
  * @default 'default' - Default variant value
848
- * @default 'medium' - Default size value
1614
+ * @default 'md' - Default size value
849
1615
  * @default 'default' - Default status value
850
1616
  * @default false - Default disabled value
851
1617
  * @default '' - Default label value
@@ -867,6 +1633,15 @@ declare global {
867
1633
  prototype: HTMLBdsButtonElement;
868
1634
  new (): HTMLBdsButtonElement;
869
1635
  };
1636
+ /**
1637
+ * Button group component for grouping related buttons together in a unified visual unit.
1638
+ */
1639
+ interface HTMLBdsButtonGroupElement extends Components.BdsButtonGroup, HTMLStencilElement {
1640
+ }
1641
+ var HTMLBdsButtonGroupElement: {
1642
+ prototype: HTMLBdsButtonGroupElement;
1643
+ new (): HTMLBdsButtonGroupElement;
1644
+ };
870
1645
  interface HTMLBdsCheckboxElementEventMap {
871
1646
  "valueChange": boolean;
872
1647
  "bdsChange": CheckboxChangeDetail;
@@ -896,6 +1671,40 @@ declare global {
896
1671
  prototype: HTMLBdsCheckboxElement;
897
1672
  new (): HTMLBdsCheckboxElement;
898
1673
  };
1674
+ interface HTMLBdsCheckboxCardElementEventMap {
1675
+ "valueChange": any;
1676
+ "bdsChange": any;
1677
+ }
1678
+ /**
1679
+ * Checkbox card component is a selectable card-based checkbox option.
1680
+ * It presents a non-exclusive choice with optional descriptive text and icon,
1681
+ * supporting checked, indeterminate, disabled, and error states.
1682
+ * Can be used standalone or within a checkbox group for orchestration.
1683
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
1684
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
1685
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
1686
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
1687
+ * @property {string} label - Label displayed next to the checkbox. If not provided, the default slot is used.
1688
+ * @property {boolean} checked - Whether the checkbox card is selected. Defaults to `false`.
1689
+ * @property {boolean} indeterminate - Whether the checkbox card shows an indeterminate ("mixed") visual state. Defaults to `false`.
1690
+ * @property {boolean} error - Whether the checkbox card is in an error state. Defaults to `false`.
1691
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
1692
+ * @fires bdsChange - Emitted when the user toggles the checkbox card. Payload: `{ checked: boolean, value: string }`.
1693
+ */
1694
+ interface HTMLBdsCheckboxCardElement extends Components.BdsCheckboxCard, HTMLStencilElement {
1695
+ addEventListener<K extends keyof HTMLBdsCheckboxCardElementEventMap>(type: K, listener: (this: HTMLBdsCheckboxCardElement, ev: BdsCheckboxCardCustomEvent<HTMLBdsCheckboxCardElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1696
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1697
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1698
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1699
+ removeEventListener<K extends keyof HTMLBdsCheckboxCardElementEventMap>(type: K, listener: (this: HTMLBdsCheckboxCardElement, ev: BdsCheckboxCardCustomEvent<HTMLBdsCheckboxCardElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1700
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1701
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1702
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1703
+ }
1704
+ var HTMLBdsCheckboxCardElement: {
1705
+ prototype: HTMLBdsCheckboxCardElement;
1706
+ new (): HTMLBdsCheckboxCardElement;
1707
+ };
899
1708
  interface HTMLBdsDialogElementEventMap {
900
1709
  "bdsOpen": void;
901
1710
  "bdsClose": void;
@@ -950,6 +1759,19 @@ declare global {
950
1759
  prototype: HTMLBdsDialogElement;
951
1760
  new (): HTMLBdsDialogElement;
952
1761
  };
1762
+ /**
1763
+ * Divider component for creating visual separators between content sections.
1764
+ * @summary A simple visual separator that can be oriented horizontally or vertically.
1765
+ * @csspart divider - A divider element that visually separates content.
1766
+ * @attr {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
1767
+ * @property {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
1768
+ */
1769
+ interface HTMLBdsDividerElement extends Components.BdsDivider, HTMLStencilElement {
1770
+ }
1771
+ var HTMLBdsDividerElement: {
1772
+ prototype: HTMLBdsDividerElement;
1773
+ new (): HTMLBdsDividerElement;
1774
+ };
953
1775
  /**
954
1776
  * Flag component used to display a country flag together with its corresponding label.
955
1777
  * @summary Renders a flag icon based on a country identifier and optionally displays
@@ -978,6 +1800,103 @@ declare global {
978
1800
  prototype: HTMLBdsFlagElement;
979
1801
  new (): HTMLBdsFlagElement;
980
1802
  };
1803
+ /**
1804
+ * 12-column CSS Grid layout container with 5 responsive breakpoints.
1805
+ * Minimum browser support: Chrome/Edge (last 2), Firefox (last 2), Safari (last 2).
1806
+ */
1807
+ interface HTMLBdsGridElement extends Components.BdsGrid, HTMLStencilElement {
1808
+ }
1809
+ var HTMLBdsGridElement: {
1810
+ prototype: HTMLBdsGridElement;
1811
+ new (): HTMLBdsGridElement;
1812
+ };
1813
+ /**
1814
+ * Grid item child of `bds-grid`. Must be a direct child of `bds-grid`.
1815
+ */
1816
+ interface HTMLBdsGridItemElement extends Components.BdsGridItem, HTMLStencilElement {
1817
+ }
1818
+ var HTMLBdsGridItemElement: {
1819
+ prototype: HTMLBdsGridItemElement;
1820
+ new (): HTMLBdsGridItemElement;
1821
+ };
1822
+ interface HTMLBdsListMenuElementEventMap {
1823
+ "bdsChange": string | string[];
1824
+ "bdsSelect": ListMenuChangeDetail;
1825
+ }
1826
+ /**
1827
+ * Container component that manages a list of menu items.
1828
+ * It handles selection logic (single/multiple) and maintains the data state.
1829
+ * @summary A list menu component that can contain multiple menu items and manage their selection state.
1830
+ * @fires bdsChange - Emitted when the selection changes, providing the current selected value(s).
1831
+ * @fires bdsSelect - Emmited when item is selected in menu-role="menu" is clicked
1832
+ * @method getSelectedValues - Returns the currently selected value(s). If multiple is true, returns an array of strings; otherwise, returns a single string or undefined.
1833
+ * @method setSelectedValues - Sets the selected value(s). Accepts a string for single selection or an array of strings for multiple selection.
1834
+ */
1835
+ interface HTMLBdsListMenuElement extends Components.BdsListMenu, HTMLStencilElement {
1836
+ addEventListener<K extends keyof HTMLBdsListMenuElementEventMap>(type: K, listener: (this: HTMLBdsListMenuElement, ev: BdsListMenuCustomEvent<HTMLBdsListMenuElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1837
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1838
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1839
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1840
+ removeEventListener<K extends keyof HTMLBdsListMenuElementEventMap>(type: K, listener: (this: HTMLBdsListMenuElement, ev: BdsListMenuCustomEvent<HTMLBdsListMenuElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1841
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1842
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1843
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1844
+ }
1845
+ var HTMLBdsListMenuElement: {
1846
+ prototype: HTMLBdsListMenuElement;
1847
+ new (): HTMLBdsListMenuElement;
1848
+ };
1849
+ interface HTMLBdsListMenuItemElementEventMap {
1850
+ "bdsSelectItem": IListMenuItemEvent;
1851
+ }
1852
+ /**
1853
+ * Component representing an individual item within a list menu for navigations and selection.
1854
+ * @summary A menu item component that supports different variants, disabled state, and selection state, it also supports link behavior when the href prop is provided.
1855
+ * @attr {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
1856
+ * @attr {string} name - The name of the list menu item.
1857
+ * @attr {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
1858
+ * @attr {boolean} selected - If true, the menu item is styled as selected.
1859
+ * @attr {boolean} activeItem - If true, the menu item is styled as active.
1860
+ * @attr {string} value - The value associated with the menu item, emitted in events when activated.\
1861
+ * @attr {string} href - The URL for the link. If provided, the menu item will behave as a link.
1862
+ * @attr {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
1863
+ * @attr {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
1864
+ * @attr {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
1865
+ * @property {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
1866
+ * @property {string} name - The name of the list menu item.
1867
+ * @property {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
1868
+ * @property {boolean} selected - If true, the menu item is styled as selected.
1869
+ * @property {boolean} activeItem - If true, the menu item is styled as active.
1870
+ * @property {string} value - The value associated with the menu item, emitted in events when activated.
1871
+ * @property {string} href - The URL for the link. If provided, the menu item will behave as a link.
1872
+ * @property {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
1873
+ * @property {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
1874
+ * @property {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
1875
+ * @default 'button' - The default variant for the menu item is 'button', which is a standard clickable item.
1876
+ * @default '' - By default, the name of the menu item is an empty string.
1877
+ * @default false - By default, the menu item is not disabled and is interactive.
1878
+ * @default false - By default, the menu item is not selected.
1879
+ * @default false - By default, the menu item is not active.
1880
+ * @default '' - By default, the value of the menu item is an empty string.
1881
+ * @default '' - By default, the href is an empty string, meaning the menu item will not behave as a link.
1882
+ * @default false - By default, the newTab property is false, meaning links will open in the same tab.
1883
+ * @default false - By default, the downloadable property is false, meaning links will not be treated as download links.
1884
+ * @default '' - By default, the filename is an empty string, meaning no suggested filename for downloads.
1885
+ */
1886
+ interface HTMLBdsListMenuItemElement extends Components.BdsListMenuItem, HTMLStencilElement {
1887
+ addEventListener<K extends keyof HTMLBdsListMenuItemElementEventMap>(type: K, listener: (this: HTMLBdsListMenuItemElement, ev: BdsListMenuItemCustomEvent<HTMLBdsListMenuItemElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1888
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1889
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1890
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1891
+ removeEventListener<K extends keyof HTMLBdsListMenuItemElementEventMap>(type: K, listener: (this: HTMLBdsListMenuItemElement, ev: BdsListMenuItemCustomEvent<HTMLBdsListMenuItemElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1892
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1893
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1894
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1895
+ }
1896
+ var HTMLBdsListMenuItemElement: {
1897
+ prototype: HTMLBdsListMenuItemElement;
1898
+ new (): HTMLBdsListMenuItemElement;
1899
+ };
981
1900
  /**
982
1901
  * @attr {boolean} disabled - When true, prevents the popover from being shown.
983
1902
  * @attr {number | 'full' | 'auto'} width - Controls the width of the popover content.
@@ -997,6 +1916,95 @@ declare global {
997
1916
  prototype: HTMLBdsPopoverElement;
998
1917
  new (): HTMLBdsPopoverElement;
999
1918
  };
1919
+ interface HTMLBdsRadioElementEventMap {
1920
+ "bdsChange": RadioChangeDetail;
1921
+ }
1922
+ /**
1923
+ * Radio button component for single-selection within a group.
1924
+ * Use inside `bds-radio-group` for managed selection and form binding.
1925
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
1926
+ */
1927
+ interface HTMLBdsRadioElement extends Components.BdsRadio, HTMLStencilElement {
1928
+ addEventListener<K extends keyof HTMLBdsRadioElementEventMap>(type: K, listener: (this: HTMLBdsRadioElement, ev: BdsRadioCustomEvent<HTMLBdsRadioElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1929
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1930
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1931
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1932
+ removeEventListener<K extends keyof HTMLBdsRadioElementEventMap>(type: K, listener: (this: HTMLBdsRadioElement, ev: BdsRadioCustomEvent<HTMLBdsRadioElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1933
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1934
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1935
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1936
+ }
1937
+ var HTMLBdsRadioElement: {
1938
+ prototype: HTMLBdsRadioElement;
1939
+ new (): HTMLBdsRadioElement;
1940
+ };
1941
+ interface HTMLBdsRadioButtonElementEventMap {
1942
+ "bdsChange": RadioButtonChangeDetail;
1943
+ }
1944
+ /**
1945
+ * Button-shaped radio option for use inside `bds-radio-group[type="radiobutton"]`.
1946
+ * Creates a segmented control appearance when grouped. Not form-associated — the parent
1947
+ * `bds-radio-group` owns form state and single-selection enforcement.
1948
+ */
1949
+ interface HTMLBdsRadioButtonElement extends Components.BdsRadioButton, HTMLStencilElement {
1950
+ addEventListener<K extends keyof HTMLBdsRadioButtonElementEventMap>(type: K, listener: (this: HTMLBdsRadioButtonElement, ev: BdsRadioButtonCustomEvent<HTMLBdsRadioButtonElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1951
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1952
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1953
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1954
+ removeEventListener<K extends keyof HTMLBdsRadioButtonElementEventMap>(type: K, listener: (this: HTMLBdsRadioButtonElement, ev: BdsRadioButtonCustomEvent<HTMLBdsRadioButtonElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1955
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1956
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1957
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1958
+ }
1959
+ var HTMLBdsRadioButtonElement: {
1960
+ prototype: HTMLBdsRadioButtonElement;
1961
+ new (): HTMLBdsRadioButtonElement;
1962
+ };
1963
+ interface HTMLBdsRadioCardElementEventMap {
1964
+ "bdsChange": RadioCardChangeDetail;
1965
+ }
1966
+ /**
1967
+ * Radio card component is a selectable card-based radio option.
1968
+ * It presents a mutually exclusive choice with optional descriptive text and icon,
1969
+ * designed for integration with bds-radio-group for orchestration.
1970
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
1971
+ * @fires bdsChange - Emitted when the user selects this radio card. Listened to by the parent bds-radio-group to enforce single selection.
1972
+ */
1973
+ interface HTMLBdsRadioCardElement extends Components.BdsRadioCard, HTMLStencilElement {
1974
+ addEventListener<K extends keyof HTMLBdsRadioCardElementEventMap>(type: K, listener: (this: HTMLBdsRadioCardElement, ev: BdsRadioCardCustomEvent<HTMLBdsRadioCardElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1975
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1976
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1977
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1978
+ removeEventListener<K extends keyof HTMLBdsRadioCardElementEventMap>(type: K, listener: (this: HTMLBdsRadioCardElement, ev: BdsRadioCardCustomEvent<HTMLBdsRadioCardElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1979
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1980
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1981
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1982
+ }
1983
+ var HTMLBdsRadioCardElement: {
1984
+ prototype: HTMLBdsRadioCardElement;
1985
+ new (): HTMLBdsRadioCardElement;
1986
+ };
1987
+ interface HTMLBdsRadioGroupElementEventMap {
1988
+ "bdsChange": RadioGroupChangeDetail;
1989
+ "valueChange": string;
1990
+ }
1991
+ /**
1992
+ * Radio group component that orchestrates single-selection across a set of `bds-radio` children.
1993
+ */
1994
+ interface HTMLBdsRadioGroupElement extends Components.BdsRadioGroup, HTMLStencilElement {
1995
+ addEventListener<K extends keyof HTMLBdsRadioGroupElementEventMap>(type: K, listener: (this: HTMLBdsRadioGroupElement, ev: BdsRadioGroupCustomEvent<HTMLBdsRadioGroupElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1996
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1997
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1998
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1999
+ removeEventListener<K extends keyof HTMLBdsRadioGroupElementEventMap>(type: K, listener: (this: HTMLBdsRadioGroupElement, ev: BdsRadioGroupCustomEvent<HTMLBdsRadioGroupElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2000
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2001
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2002
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2003
+ }
2004
+ var HTMLBdsRadioGroupElement: {
2005
+ prototype: HTMLBdsRadioGroupElement;
2006
+ new (): HTMLBdsRadioGroupElement;
2007
+ };
1000
2008
  /**
1001
2009
  * Spinner component used to indicate a loading or processing state.
1002
2010
  * @summary Displays an animated circular spinner to communicate that content is loading.
@@ -1011,6 +2019,39 @@ declare global {
1011
2019
  prototype: HTMLBdsSpinnerElement;
1012
2020
  new (): HTMLBdsSpinnerElement;
1013
2021
  };
2022
+ /**
2023
+ * Status badge component for communicating the current state of an item or process.
2024
+ */
2025
+ interface HTMLBdsStatusElement extends Components.BdsStatus, HTMLStencilElement {
2026
+ }
2027
+ var HTMLBdsStatusElement: {
2028
+ prototype: HTMLBdsStatusElement;
2029
+ new (): HTMLBdsStatusElement;
2030
+ };
2031
+ interface HTMLBdsTagElementEventMap {
2032
+ "bdsClose": TagEventPayload;
2033
+ "bdsSelect": TagEventPayload;
2034
+ }
2035
+ /**
2036
+ * Tag component used to represent categories, metadata, or removable filters.
2037
+ * @summary Displays a label with optional leading/trailing icons and dismissal capability.
2038
+ * @fires bdsClose - Emitted when the tag is closed via the close button or Delete key.
2039
+ * @fires bdsSelect - Emitted when the tag is selected via a click or Space/Enter key.
2040
+ */
2041
+ interface HTMLBdsTagElement extends Components.BdsTag, HTMLStencilElement {
2042
+ addEventListener<K extends keyof HTMLBdsTagElementEventMap>(type: K, listener: (this: HTMLBdsTagElement, ev: BdsTagCustomEvent<HTMLBdsTagElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2043
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2044
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2045
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2046
+ removeEventListener<K extends keyof HTMLBdsTagElementEventMap>(type: K, listener: (this: HTMLBdsTagElement, ev: BdsTagCustomEvent<HTMLBdsTagElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2047
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2048
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2049
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2050
+ }
2051
+ var HTMLBdsTagElement: {
2052
+ prototype: HTMLBdsTagElement;
2053
+ new (): HTMLBdsTagElement;
2054
+ };
1014
2055
  interface HTMLBdsTextFieldElementEventMap {
1015
2056
  "valueChange": string;
1016
2057
  "bdsInput": { value: string; event: InputEvent };
@@ -1080,6 +2121,38 @@ declare global {
1080
2121
  prototype: HTMLBdsTextFieldElement;
1081
2122
  new (): HTMLBdsTextFieldElement;
1082
2123
  };
2124
+ interface HTMLBdsToggleElementEventMap {
2125
+ "valueChange": boolean;
2126
+ "bdsChange": IToggleEventChange;
2127
+ }
2128
+ /**
2129
+ * Toggle/Switch component for boolean selection.
2130
+ * @summary A toggle switch form control with label positioning support.
2131
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
2132
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
2133
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
2134
+ * @property {boolean} checked - Whether the toggle is on. Defaults to `false`.
2135
+ * @property {string} placement - Position of the label relative to the switch. Accepts `TOGGLE_PLACEMENT` values. Defaults to `"left"`.
2136
+ * @property {string} label - Label displayed next to the toggle. Defaults to `""`.
2137
+ * @property {string} helperText - Help text displayed below the toggle. Defaults to `""`.
2138
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
2139
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
2140
+ * @fires bdsChange - Emitted when the user toggles the switch. Payload: `IToggleEventChange`.
2141
+ */
2142
+ interface HTMLBdsToggleElement extends Components.BdsToggle, HTMLStencilElement {
2143
+ addEventListener<K extends keyof HTMLBdsToggleElementEventMap>(type: K, listener: (this: HTMLBdsToggleElement, ev: BdsToggleCustomEvent<HTMLBdsToggleElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2144
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2145
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2146
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2147
+ removeEventListener<K extends keyof HTMLBdsToggleElementEventMap>(type: K, listener: (this: HTMLBdsToggleElement, ev: BdsToggleCustomEvent<HTMLBdsToggleElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2148
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2149
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2150
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2151
+ }
2152
+ var HTMLBdsToggleElement: {
2153
+ prototype: HTMLBdsToggleElement;
2154
+ new (): HTMLBdsToggleElement;
2155
+ };
1083
2156
  /**
1084
2157
  * Tooltip component that displays a short label anchored to a trigger element on hover.
1085
2158
  * @summary Displays a floating tooltip anchored to a trigger element on mouseenter/mouseleave,
@@ -1107,12 +2180,12 @@ declare global {
1107
2180
  * @attr {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
1108
2181
  * @attr {string} align - The text alignment. Options: start, center, end, inherit
1109
2182
  * @attr {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
1110
- * @attr {boolean} is-required - Shows a required indicator when used with `label` variant.
2183
+ * @attr {boolean} required - Shows a required indicator when used with `label` variant.
1111
2184
  * @attr {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
1112
2185
  * @attr {number} max-lines - Maximum number of lines to show before truncating with ellipsis.
1113
2186
  * @attr {string} href - URL when the typography is an `a` element and a `link` variant.
1114
2187
  * @attr {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
1115
- * @attr {boolean} is-downloadable - Makes the `link` download a file.
2188
+ * @attr {boolean} downloadable - Makes the `link` download a file.
1116
2189
  * @attr {string} filename - Suggested filename when downloading a file from the `link`.
1117
2190
  * @attr {string} html-for - The for attribute when rendered as a label
1118
2191
  * @attr {string} tooltip-text - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -1122,12 +2195,12 @@ declare global {
1122
2195
  * @property {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
1123
2196
  * @property {string} align - The text alignment. Options: start, center, end, inherit
1124
2197
  * @property {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
1125
- * @property {boolean} isRequired - Shows a required indicator when used with `label` variant.
2198
+ * @property {boolean} required - Shows a required indicator when used with `label` variant.
1126
2199
  * @property {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
1127
2200
  * @property {number} maxLines - Maximum number of lines to show before truncating with ellipsis.
1128
2201
  * @property {string} href - URL when the typography is an `a` element and a `link` variant.
1129
2202
  * @property {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
1130
- * @property {boolean} isDownloadable - Makes the `link` download a file.
2203
+ * @property {boolean} downloadable - Makes the `link` download a file.
1131
2204
  * @property {string} filename - Suggested filename when downloading a file from the `link`.
1132
2205
  * @property {string} htmlFor - The for attribute when rendered as a label
1133
2206
  * @property {string} tooltipText - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -1137,12 +2210,12 @@ declare global {
1137
2210
  * @default 'start' - Default align value
1138
2211
  * @default 'md' - Default size value
1139
2212
  * @default 'default' - Default state value
1140
- * @default false - Default isRequired state
2213
+ * @default false - Default required state
1141
2214
  * @default false - Default ellipsis state
1142
2215
  * @default 1 - Default maxLines value
1143
2216
  * @default '' - Default href value
1144
2217
  * @default '' - Default target value
1145
- * @default false - Default isDownloadable state
2218
+ * @default false - Default downloadable state
1146
2219
  * @default 'download' - Default filename value
1147
2220
  * @default '' - Default tooltipText value
1148
2221
  */
@@ -1153,426 +2226,1002 @@ declare global {
1153
2226
  new (): HTMLBdsTypographyElement;
1154
2227
  };
1155
2228
  interface HTMLElementTagNameMap {
2229
+ "bds-avatar": HTMLBdsAvatarElement;
2230
+ "bds-badge": HTMLBdsBadgeElement;
1156
2231
  "bds-banner": HTMLBdsBannerElement;
1157
2232
  "bds-button": HTMLBdsButtonElement;
2233
+ "bds-button-group": HTMLBdsButtonGroupElement;
1158
2234
  "bds-checkbox": HTMLBdsCheckboxElement;
2235
+ "bds-checkbox-card": HTMLBdsCheckboxCardElement;
1159
2236
  "bds-dialog": HTMLBdsDialogElement;
2237
+ "bds-divider": HTMLBdsDividerElement;
1160
2238
  "bds-flag": HTMLBdsFlagElement;
2239
+ "bds-grid": HTMLBdsGridElement;
2240
+ "bds-grid-item": HTMLBdsGridItemElement;
2241
+ "bds-list-menu": HTMLBdsListMenuElement;
2242
+ "bds-list-menu-item": HTMLBdsListMenuItemElement;
1161
2243
  "bds-popover": HTMLBdsPopoverElement;
2244
+ "bds-radio": HTMLBdsRadioElement;
2245
+ "bds-radio-button": HTMLBdsRadioButtonElement;
2246
+ "bds-radio-card": HTMLBdsRadioCardElement;
2247
+ "bds-radio-group": HTMLBdsRadioGroupElement;
1162
2248
  "bds-spinner": HTMLBdsSpinnerElement;
2249
+ "bds-status": HTMLBdsStatusElement;
2250
+ "bds-tag": HTMLBdsTagElement;
1163
2251
  "bds-text-field": HTMLBdsTextFieldElement;
2252
+ "bds-toggle": HTMLBdsToggleElement;
1164
2253
  "bds-tooltip": HTMLBdsTooltipElement;
1165
2254
  "bds-typography": HTMLBdsTypographyElement;
1166
2255
  }
1167
- }
1168
- declare namespace LocalJSX {
1169
- type OneOf<K extends string, PropT, AttrT = PropT> = { [P in K]: PropT } & { [P in `attr:${K}` | `prop:${K}`]?: never } | { [P in `attr:${K}`]: AttrT } & { [P in K | `prop:${K}`]?: never } | { [P in `prop:${K}`]: PropT } & { [P in K | `attr:${K}`]?: never };
1170
-
2256
+ }
2257
+ declare namespace LocalJSX {
2258
+ type OneOf<K extends string, PropT, AttrT = PropT> = { [P in K]: PropT } & { [P in `attr:${K}` | `prop:${K}`]?: never } | { [P in `attr:${K}`]: AttrT } & { [P in K | `prop:${K}`]?: never } | { [P in `prop:${K}`]: PropT } & { [P in K | `attr:${K}`]?: never };
2259
+
2260
+ /**
2261
+ * Avatar component used to display user initials or names for visual identification.
2262
+ * @summary Displays a circular avatar with user initials and optional name label.
2263
+ * Uses Boreal Design System tokens for consistent styling across platforms.
2264
+ * @attr {string} username - The full name used to generate initials or display as label.
2265
+ * @attr {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
2266
+ * @attr {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
2267
+ * @attr {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
2268
+ * @property {string} username - The full name used to generate initials or display as label.
2269
+ * @property {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
2270
+ * @property {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
2271
+ * @property {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
2272
+ * @cssprop --bds-avatar-background - Custom background color HEX code.
2273
+ * @cssprop --bds-avatar-initials-color - Custom text color HEX code.
2274
+ */
2275
+ interface BdsAvatar {
2276
+ /**
2277
+ * Custom background color as hex code. If not provided, defaults to Boreal success color *
2278
+ * @default ''
2279
+ */
2280
+ "background"?: IAvatar['background'];
2281
+ /**
2282
+ * Custom text color as hex code. If not provided, defaults to white *
2283
+ * @default ''
2284
+ */
2285
+ "initialsColor"?: IAvatar['initialsColor'];
2286
+ /**
2287
+ * The full name used to generate initials or display as label *
2288
+ * @default ''
2289
+ */
2290
+ "username"?: IAvatar['username'];
2291
+ /**
2292
+ * Controls which avatar elements are displayed: icon (initials), name, or both.
2293
+ * @default 'full'
2294
+ */
2295
+ "variant"?: IAvatar['variant'];
2296
+ }
2297
+ /**
2298
+ * Badge component for displaying contextual status information with optional icon support.
2299
+ * @summary A compact label component that communicates status or category using color-coded variants. Supports an optional icon slot and a disabled state.
2300
+ * @attr {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
2301
+ * @attr {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
2302
+ * @property {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
2303
+ * @property {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
2304
+ */
2305
+ interface BdsBadge {
2306
+ /**
2307
+ * Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
2308
+ * @default false
2309
+ */
2310
+ "disabled"?: IBadge['disabled'];
2311
+ /**
2312
+ * Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
2313
+ * @default BADGE_VARIANT.DEFAULT
2314
+ */
2315
+ "variant"?: IBadge['variant'];
2316
+ }
2317
+ /**
2318
+ * Banner component used to display important messages with different status variants.
2319
+ * @summary Displays a dismissible banner with an icon, title, body content, and optional actions.
2320
+ * @attr {"info"|"success"|"warning"|"danger"} variant - Status variant of the banner, affects color and icon. Defaults to "info".
2321
+ * @attr {boolean} closable - When true, renders a close button that triggers the close event.
2322
+ * @property {"info"|"success"|"warning"|"danger"} variant - Visual style variant: 'info', 'success', 'warning', or 'danger'. Defaults to "info".
2323
+ * @property {boolean} closable - Shows a close button that allows users to close the banner. Defaults to false.
2324
+ * @property {boolean} closeButtonLabel - Aria label for the close button when visible.
2325
+ * @fires bdsClose - Emitted when the banner is closed via the close button or `close` method.
2326
+ * @method close - Programmatic method to close the banner and emit the `bdsClose` event.
2327
+ */
2328
+ interface BdsBanner {
2329
+ /**
2330
+ * Shows a close button that allows users to close the banner.
2331
+ * @default false
2332
+ */
2333
+ "closable"?: boolean;
2334
+ /**
2335
+ * The aria label for the close button.
2336
+ * @default ""
2337
+ */
2338
+ "closeButtonLabel"?: IBanner['closeButtonLabel'];
2339
+ /**
2340
+ * Emitted when the banner is closed via the close button or close method.
2341
+ */
2342
+ "onBdsClose"?: (event: BdsBannerCustomEvent<void>) => void;
2343
+ /**
2344
+ * Visual style variant: 'info', 'success', 'warning', or 'danger'.
2345
+ * @default "info"
2346
+ */
2347
+ "variant"?: IBanner['variant'];
2348
+ }
2349
+ /**
2350
+ * Button component for user interactions, form submissions, supporting various styles, sizes, and states.
2351
+ * @summary A versatile button component that can be customized with different colors, sizes, variants and states to fit various use cases in the application.
2352
+ * @attr {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
2353
+ * @attr {boolean} disabled - Disables the button when true, preventing user interaction and applying disabled styles.
2354
+ * @attr {string} name - The name attribute for the button, useful for form submissions.
2355
+ * @attr {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
2356
+ * @attr {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
2357
+ * @attr {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
2358
+ * @attr {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
2359
+ * @attr {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
2360
+ * @attr {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
2361
+ * @property {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
2362
+ * @property {boolean} disabled - Disables the button when true, preventing user interaction and applying disabled styles.
2363
+ * @property {string} name - The name attribute for the button, useful for form submissions.
2364
+ * @property {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
2365
+ * @property {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
2366
+ * @property {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
2367
+ * @property {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
2368
+ * @property {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
2369
+ * @property {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
2370
+ * @default 'button' - Default type value
2371
+ * @default 'default' - Default color value
2372
+ * @default 'default' - Default variant value
2373
+ * @default 'md' - Default size value
2374
+ * @default 'default' - Default status value
2375
+ * @default false - Default disabled value
2376
+ * @default '' - Default label value
2377
+ * @default '' - Default name value
2378
+ * @default false - Default loading value
2379
+ * @default false - Default disclosure value
2380
+ */
2381
+ interface BdsButton {
2382
+ /**
2383
+ * color is a string attribute. The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
2384
+ * @default CORE_COLORS.DEFAULT
2385
+ */
2386
+ "color"?: IButton['color'];
2387
+ /**
2388
+ * disabled is a boolean attribute. Disables the button when true, preventing user interaction and applying disabled styles.
2389
+ * @default false
2390
+ */
2391
+ "disabled"?: IButton['disabled'];
2392
+ /**
2393
+ * disclosure is a boolean attribute. Used to show a chevron down at the of the content
2394
+ * @default false
2395
+ */
2396
+ "disclosure"?: IButton['disclosure'];
2397
+ /**
2398
+ * The `id` of a `<form>` element to associate this element with.
2399
+ */
2400
+ "form"?: string;
2401
+ /**
2402
+ * The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
2403
+ * @default ''
2404
+ */
2405
+ "label"?: IButton['label'];
2406
+ /**
2407
+ * loading is a boolean attribute. Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
2408
+ * @default false
2409
+ */
2410
+ "loading"?: IButton['loading'];
2411
+ /**
2412
+ * name is a string attribute. The name attribute for the button, useful for form submissions.
2413
+ * @default ''
2414
+ */
2415
+ "name"?: IButton['name'];
2416
+ /**
2417
+ * emit event to click
2418
+ */
2419
+ "onBdsClick"?: (event: BdsButtonCustomEvent<UIEvent>) => void;
2420
+ /**
2421
+ * size is a string attribute. The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
2422
+ * @default BUTTON_SIZES.MEDIUM
2423
+ */
2424
+ "size"?: IButton['size'];
2425
+ /**
2426
+ * type is a string attribute. The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
2427
+ * @default BUTTON_TYPES.BUTTON
2428
+ */
2429
+ "type"?: IButton['type'];
2430
+ /**
2431
+ * variant is a string attribute. The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
2432
+ * @default BUTTON_VARIANTS.DEFAULT
2433
+ */
2434
+ "variant"?: IButton['variant'];
2435
+ }
2436
+ /**
2437
+ * Button group component for grouping related buttons together in a unified visual unit.
2438
+ */
2439
+ interface BdsButtonGroup {
2440
+ /**
2441
+ * Controls the color applied to all child `<bds-button>` elements. Accepted values: see `CoreColors`. Default is `default`.
2442
+ * @default CORE_COLORS.DEFAULT
2443
+ */
2444
+ "color"?: IButtonGroup['color'];
2445
+ /**
2446
+ * Provides an accessible label for the button group.
2447
+ * @default 'Button group'
2448
+ */
2449
+ "label"?: IButtonGroup['label'];
2450
+ /**
2451
+ * Controls the layout direction of the grouped buttons. Accepted values: `'horizontal'`, `'vertical'`. Default is `'horizontal'`.
2452
+ * @default ORIENTATIONS.HORIZONTAL
2453
+ */
2454
+ "orientation"?: IButtonGroup['orientation'];
2455
+ /**
2456
+ * Controls the size applied to all child `<bds-button>` elements. Accepted values: `'sm'`, `'md'`, `'lg'`. Default is `'md'`.
2457
+ * @default BUTTON_SIZES.MEDIUM
2458
+ */
2459
+ "size"?: IButtonGroup['size'];
2460
+ /**
2461
+ * Controls the variant applied to all child `<bds-button>` elements. Accepted values: `'default'`, `'outline'`, `'plain'`. Default is `'default'`.
2462
+ * @default BUTTON_VARIANTS.DEFAULT
2463
+ */
2464
+ "variant"?: IButtonGroup['variant'];
2465
+ }
2466
+ /**
2467
+ * Checkbox component for boolean selection with three visual states.
2468
+ * @summary A checkbox form control with default, selected, and indeterminate states.
2469
+ * @property {boolean} checked - Whether the checkbox is selected. Defaults to `false`.
2470
+ * @property {boolean} indeterminate - Whether the checkbox shows an indeterminate ("mixed") visual state. Defaults to `false`.
2471
+ * @property {boolean} error - Shows error styling on the checkbox. Defaults to `false`.
2472
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
2473
+ * @property {string} label - Label displayed next to the checkbox. If not provided, the default slot is used.
2474
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model).
2475
+ * @fires bdsChange - Emitted when the user toggles the checkbox. Payload: `{ checked: boolean, value: string }`.
2476
+ */
2477
+ interface BdsCheckbox {
2478
+ /**
2479
+ * Whether the checkbox is selected.
2480
+ * @default false
2481
+ */
2482
+ "checked"?: boolean;
2483
+ /**
2484
+ * Disables the control.
2485
+ * @default false
2486
+ */
2487
+ "disabled"?: boolean;
2488
+ /**
2489
+ * Shows error styling on the checkbox.
2490
+ * @default false
2491
+ */
2492
+ "error"?: boolean;
2493
+ /**
2494
+ * The `id` of a `<form>` element to associate this element with.
2495
+ */
2496
+ "form"?: string;
2497
+ /**
2498
+ * Whether the checkbox shows an indeterminate ("mixed") visual state.
2499
+ * @default false
2500
+ */
2501
+ "indeterminate"?: boolean;
2502
+ /**
2503
+ * Label displayed next to the checkbox. If not provided, the default slot is used.
2504
+ * @default ''
2505
+ */
2506
+ "label"?: string;
2507
+ /**
2508
+ * Name of the form control, submitted as a key in the form data.
2509
+ */
2510
+ "name": string;
2511
+ /**
2512
+ * Emitted when the user toggles the checkbox.
2513
+ */
2514
+ "onBdsChange"?: (event: BdsCheckboxCustomEvent<CheckboxChangeDetail>) => void;
2515
+ /**
2516
+ * Emitted when the checked state changes (for 2-way binding / v-model).
2517
+ */
2518
+ "onValueChange"?: (event: BdsCheckboxCustomEvent<boolean>) => void;
2519
+ /**
2520
+ * Marks the control as required for form submission.
2521
+ * @default false
2522
+ */
2523
+ "required"?: boolean;
2524
+ /**
2525
+ * Value submitted with the form data when checked.
2526
+ * @default 'on'
2527
+ */
2528
+ "value"?: string;
2529
+ }
2530
+ /**
2531
+ * Checkbox card component is a selectable card-based checkbox option.
2532
+ * It presents a non-exclusive choice with optional descriptive text and icon,
2533
+ * supporting checked, indeterminate, disabled, and error states.
2534
+ * Can be used standalone or within a checkbox group for orchestration.
2535
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
2536
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
2537
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
2538
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
2539
+ * @property {string} label - Label displayed next to the checkbox. If not provided, the default slot is used.
2540
+ * @property {boolean} checked - Whether the checkbox card is selected. Defaults to `false`.
2541
+ * @property {boolean} indeterminate - Whether the checkbox card shows an indeterminate ("mixed") visual state. Defaults to `false`.
2542
+ * @property {boolean} error - Whether the checkbox card is in an error state. Defaults to `false`.
2543
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
2544
+ * @fires bdsChange - Emitted when the user toggles the checkbox card. Payload: `{ checked: boolean, value: string }`.
2545
+ */
2546
+ interface BdsCheckboxCard {
2547
+ /**
2548
+ * Whether this checkbox card is selected.
2549
+ * @default false
2550
+ */
2551
+ "checked"?: ICheckboxCard['checked'];
2552
+ /**
2553
+ * Disables the control.
2554
+ * @default false
2555
+ */
2556
+ "disabled"?: ICheckboxCard['disabled'];
2557
+ /**
2558
+ * Whether the checkbox card is in an error state.
2559
+ * @default false
2560
+ */
2561
+ "error"?: ICheckboxCard['error'];
2562
+ /**
2563
+ * The `id` of a `<form>` element to associate this element with.
2564
+ */
2565
+ "form"?: string;
2566
+ /**
2567
+ * Whether the checkbox card shows an indeterminate visual state.
2568
+ * @default false
2569
+ */
2570
+ "indeterminate"?: ICheckboxCard['indeterminate'];
2571
+ /**
2572
+ * Label text displayed next to the checkbox indicator. Falls back to the default slot when empty.
2573
+ * @default ''
2574
+ */
2575
+ "label"?: ICheckboxCard['label'];
2576
+ /**
2577
+ * Name of the form control, submitted as a key in the form data.
2578
+ */
2579
+ "name": ICheckboxCard['name'];
2580
+ /**
2581
+ * Emitted when the user toggles this checkbox card.
2582
+ */
2583
+ "onBdsChange"?: (event: BdsCheckboxCardCustomEvent<any>) => void;
2584
+ /**
2585
+ * Emitted when the checked state changes. Useful for 2-way binding / v-model.
2586
+ */
2587
+ "onValueChange"?: (event: BdsCheckboxCardCustomEvent<any>) => void;
2588
+ /**
2589
+ * Marks the control as required for form submission.
2590
+ * @default false
2591
+ */
2592
+ "required"?: ICheckboxCard['required'];
2593
+ /**
2594
+ * Value submitted with the form when this checkbox is selected.
2595
+ * @default 'on'
2596
+ */
2597
+ "value"?: ICheckboxCard['value'];
2598
+ }
2599
+ /**
2600
+ * Modal dialog component for displaying content in an overlay.
2601
+ * @summary Modal overlay for alerts, forms, and confirmations with customizable layout and behavior.
2602
+ * @attr {boolean} active - Controls dialog visibility.
2603
+ * @attr {boolean} prevent-close - Disables closing the dialog.
2604
+ * @attr {string} layout - Layout type: 'default', 'headerless', or 'footerless'.
2605
+ * @attr {string} content-padding - Content padding: 'default' or 'none'.
2606
+ * @attr {boolean} backdrop-close - Close on backdrop click.
2607
+ * @attr {boolean} escape-close - Close on Escape key.
2608
+ * @attr {string} size - Dialog size: 'sm', 'md', 'lg', or 'full'.
2609
+ * @attr {string} variant - Visual variant: 'default', 'info', 'success', 'warning', or 'danger'.
2610
+ * @attr {string} title-dialog - Dialog title text.
2611
+ * @attr {boolean} maximizable - Show maximize button.
2612
+ * @attr {boolean} closable - Show close button.
2613
+ * @attr {string} width - Custom width for the dialog.
2614
+ * @attr {string} height - Custom height for the dialog.
2615
+ * @property {boolean} active - Controls whether the dialog is open.
2616
+ * @property {boolean} preventClose - Disables closing the dialog.
2617
+ * @property {string} height - Custom height for the dialog.
2618
+ * @property {string} width - Custom width for the dialog.
2619
+ * @property {string} layout - Layout type: 'default', 'headerless', or 'footerless'.
2620
+ * @property {string} contentPadding - Content padding: 'default' or 'none'.
2621
+ * @property {boolean} backdropClose - Close dialog when clicking the backdrop.
2622
+ * @property {boolean} escapeClose - Close dialog when pressing Escape.
2623
+ * @property {string} size - Dialog size: 'sm', 'md', 'lg', or 'full'.
2624
+ * @property {string} variant - Visual variant: 'default', 'info', 'success', 'warning', or 'danger'.
2625
+ * @property {string} titleDialog - Title text displayed in the header.
2626
+ * @property {boolean} maximizable - Show maximize button.
2627
+ * @property {boolean} closable - Hide the close button in the header.
2628
+ * @fires bdsOpen - Emitted when the dialog opens.
2629
+ * @fires bdsClose - Emitted when the dialog closes.
2630
+ * @fires bdsMaximize - Emitted when the maximize button is clicked.
2631
+ * @cssprop --bds-dialog-width - Custom width for the dialog.
2632
+ * @cssprop --bds-dialog-height - Custom height for the dialog.
2633
+ */
2634
+ interface BdsDialog {
2635
+ /**
2636
+ * Controls whether the dialog is open.
2637
+ * @default false
2638
+ */
2639
+ "active"?: IDialog['active'];
2640
+ /**
2641
+ * Close dialog when clicking the backdrop.
2642
+ * @default false
2643
+ */
2644
+ "backdropClose"?: IDialog['backdropClose'];
2645
+ /**
2646
+ * Hide the close button in the header.
2647
+ * @default false
2648
+ */
2649
+ "closable"?: IDialog['closable'];
2650
+ /**
2651
+ * Content padding: 'default' or 'none'.
2652
+ * @default DIALOG_CONTENT_PADDING.DEFAULT
2653
+ */
2654
+ "contentPadding"?: IDialog['contentPadding'];
2655
+ /**
2656
+ * Close dialog when pressing Escape.
2657
+ * @default false
2658
+ */
2659
+ "escapeClose"?: IDialog['escapeClose'];
2660
+ /**
2661
+ * Dialog custom height
2662
+ * @default ''
2663
+ */
2664
+ "height"?: IDialog['height'];
2665
+ /**
2666
+ * Layout type: 'default', 'headerless', or 'footerless'.
2667
+ * @default DIALOG_LAYOUT.DEFAULT
2668
+ */
2669
+ "layout"?: IDialog['layout'];
2670
+ /**
2671
+ * Show maximize button to toggle full-screen.
2672
+ * @default false
2673
+ */
2674
+ "maximizable"?: IDialog['maximizable'];
2675
+ /**
2676
+ * Emitted when the dialog closes.
2677
+ */
2678
+ "onBdsClose"?: (event: BdsDialogCustomEvent<void>) => void;
2679
+ /**
2680
+ * Emitted when the dialog maximize button is clicked.
2681
+ */
2682
+ "onBdsMaximize"?: (event: BdsDialogCustomEvent<void>) => void;
2683
+ /**
2684
+ * Emitted when the dialog opens.
2685
+ */
2686
+ "onBdsOpen"?: (event: BdsDialogCustomEvent<void>) => void;
2687
+ /**
2688
+ * Controls whether the dialog is closable.
2689
+ * @default false
2690
+ */
2691
+ "preventClose"?: IDialog['preventClose'];
2692
+ /**
2693
+ * Dialog size: 'small', 'medium', 'large', or 'full'.
2694
+ * @default DIALOG_SIZES.MEDIUM
2695
+ */
2696
+ "size"?: IDialog['size'];
2697
+ /**
2698
+ * Title text displayed in the header.
2699
+ * @default ''
2700
+ */
2701
+ "titleDialog"?: IDialog['titleDialog'];
2702
+ /**
2703
+ * Visual variant: 'default', 'info', 'success', 'warning', or 'danger'.
2704
+ * @default DIALOG_VARIANT.DEFAULT
2705
+ */
2706
+ "variant"?: IDialog['variant'];
2707
+ /**
2708
+ * Dialog custom width
2709
+ * @default ''
2710
+ */
2711
+ "width"?: IDialog['width'];
2712
+ }
2713
+ /**
2714
+ * Divider component for creating visual separators between content sections.
2715
+ * @summary A simple visual separator that can be oriented horizontally or vertically.
2716
+ * @csspart divider - A divider element that visually separates content.
2717
+ * @attr {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
2718
+ * @property {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
2719
+ */
2720
+ interface BdsDivider {
2721
+ /**
2722
+ * The orientation of the divider. Allowed values: horizontal | vertical
2723
+ * @default DIVIDER_ORIENTATIONS.HORIZONTAL
2724
+ */
2725
+ "orientation"?: IDivider['orientation'];
2726
+ }
2727
+ /**
2728
+ * Flag component used to display a country flag together with its corresponding label.
2729
+ * @summary Renders a flag icon based on a country identifier and optionally displays
2730
+ * the country name, short name, or call sign. Supports custom flag sources, different
2731
+ * shapes, and flag alignment on either side of the label.
2732
+ * @attr {boolean} label - When true, displays a textual label next to the flag.
2733
+ * @attr {boolean} short-name - When true, displays the abbreviated country name (ISO2/ISO3) instead of the full name.
2734
+ * @attr {boolean} call-sign - When true, displays the country calling code next to the label.
2735
+ * @attr {string} country - Country value used to resolve the flag and label.
2736
+ * @attr {AlignFlag} align-flag - Controls whether the flag is rendered on the left or right side.
2737
+ * @attr {FlagIdentifier} identifier - Defines which country field is used to resolve the value.
2738
+ * @attr {Shape} shape - Visual shape of the rendered flag.
2739
+ * @attr {ICountry[]} custom-flags - Additional custom flag definitions that can override defaults.
2740
+ * @property {boolean} label - Whether the country label should be displayed. Defaults to false.
2741
+ * @property {boolean} shortName - Whether to display the abbreviated country name. Defaults to false.
2742
+ * @property {boolean} callSign - Whether to display the country calling code. Defaults to false.
2743
+ * @property {string} country - Country value used to find the matching flag entry. Defaults to ''.
2744
+ * @property {AlignFlag} alignFlag - Position of the flag relative to the label. Defaults to `AlignFlag.LEFT`.
2745
+ * @property {FlagIdentifier} identifier - Identifier used to resolve the country value. Defaults to `FlagIdentifier.CODE`.
2746
+ * @property {Shape} shape - Shape variant used for the flag. Defaults to `Shape.RECTANGLE`.
2747
+ * @property {ICountry[]} customFlags - List of custom flag definitions merged with the default catalog. Defaults to `[]`.
2748
+ */
2749
+ interface BdsFlag {
2750
+ /**
2751
+ * Determines whether the flag is displayed on the left or right side of the label.
2752
+ * @default AlignFlag.LEFT
2753
+ */
2754
+ "alignFlag"?: IFlag['alignFlag'];
2755
+ /**
2756
+ * Whether the country calling code should be displayed next to the label.
2757
+ * @default false
2758
+ */
2759
+ "callSign"?: IFlag['callSign'];
2760
+ /**
2761
+ * Country value used to resolve the matching flag entry. The expected value depends on the configured `identifier`.
2762
+ * @default ''
2763
+ */
2764
+ "country"?: IFlag['country'];
2765
+ /**
2766
+ * Custom flag definitions merged with the default country catalog. Custom entries can override default asset sources when the same `iso2` is used.
2767
+ * @default []
2768
+ */
2769
+ "customFlags"?: IFlag['customFlags'];
2770
+ /**
2771
+ * Defines which field should be used to identify the country. For example, code, iso2, or iso3.
2772
+ * @default FlagIdentifier.CODE
2773
+ */
2774
+ "identifier"?: IFlag['identifier'];
2775
+ /**
2776
+ * Whether the country name label should be displayed next to the flag.
2777
+ * @default false
2778
+ */
2779
+ "label"?: IFlag['label'];
2780
+ /**
2781
+ * Visual shape used to render the flag.
2782
+ * @default Shape.RECTANGLE
2783
+ */
2784
+ "shape"?: IFlag['shape'];
2785
+ /**
2786
+ * Whether the abbreviated country name (ISO2/ISO3) should be displayed instead of the full name.
2787
+ * @default false
2788
+ */
2789
+ "shortName"?: IFlag['shortName'];
2790
+ }
2791
+ /**
2792
+ * 12-column CSS Grid layout container with 5 responsive breakpoints.
2793
+ * Minimum browser support: Chrome/Edge (last 2), Firefox (last 2), Safari (last 2).
2794
+ */
2795
+ interface BdsGrid {
2796
+ /**
2797
+ * `'fluid'` fills full width; `'fixed'` caps the column area at 960px and centres the container.
2798
+ * @default GRID_LAYOUT.FLUID
2799
+ */
2800
+ "layout"?: IGrid['layout'];
2801
+ /**
2802
+ * Overrides the row gap independently of the column gutter.
2803
+ */
2804
+ "rowGap"?: IGrid['rowGap'];
2805
+ }
2806
+ /**
2807
+ * Grid item child of `bds-grid`. Must be a direct child of `bds-grid`.
2808
+ */
2809
+ interface BdsGridItem {
2810
+ /**
2811
+ * Column span at all breakpoints (fallback). `'full'` spans all columns (`grid-column: 1 / -1`).
2812
+ * @default GRID_ITEM_COL_SPAN.DEFAULT
2813
+ */
2814
+ "colSpan"?: IGridItem['colSpan'];
2815
+ /**
2816
+ * Override col-span at the `2xl` breakpoint (≥1344px).
2817
+ */
2818
+ "colSpan2xl"?: IGridItem['colSpan2xl'];
2819
+ /**
2820
+ * Override col-span at the `lg` breakpoint (≥960px).
2821
+ */
2822
+ "colSpanLg"?: IGridItem['colSpanLg'];
2823
+ /**
2824
+ * Override col-span at the `md` breakpoint (≥769px).
2825
+ */
2826
+ "colSpanMd"?: IGridItem['colSpanMd'];
2827
+ /**
2828
+ * Override col-span at the `sm` breakpoint (≥320px).
2829
+ */
2830
+ "colSpanSm"?: IGridItem['colSpanSm'];
2831
+ /**
2832
+ * Override col-span at the `xl` breakpoint (≥1152px).
2833
+ */
2834
+ "colSpanXl"?: IGridItem['colSpanXl'];
2835
+ /**
2836
+ * Column offset: shifts the item right by N columns (0–11).
2837
+ * @default 0
2838
+ */
2839
+ "offset"?: IGridItem['offset'];
2840
+ /**
2841
+ * Row span. `'full'` maps to `grid-row: 1 / -1`.
2842
+ */
2843
+ "rowSpan"?: IGridItem['rowSpan'];
2844
+ }
1171
2845
  /**
1172
- * Banner component used to display important messages with different status variants.
1173
- * @summary Displays a dismissible banner with an icon, title, body content, and optional actions.
1174
- * @attr {"info"|"success"|"warning"|"danger"} variant - Status variant of the banner, affects color and icon. Defaults to "info".
1175
- * @attr {boolean} closable - When true, renders a close button that triggers the close event.
1176
- * @property {"info"|"success"|"warning"|"danger"} variant - Visual style variant: 'info', 'success', 'warning', or 'danger'. Defaults to "info".
1177
- * @property {boolean} closable - Shows a close button that allows users to close the banner. Defaults to false.
1178
- * @property {boolean} closeButtonLabel - Aria label for the close button when visible.
1179
- * @fires bdsClose - Emitted when the banner is closed via the close button or `closeBanner` method.
1180
- * @method closeBanner - Programmatic method to close the banner and emit the `bdsClose` event.
2846
+ * Container component that manages a list of menu items.
2847
+ * It handles selection logic (single/multiple) and maintains the data state.
2848
+ * @summary A list menu component that can contain multiple menu items and manage their selection state.
2849
+ * @fires bdsChange - Emitted when the selection changes, providing the current selected value(s).
2850
+ * @fires bdsSelect - Emmited when item is selected in menu-role="menu" is clicked
2851
+ * @method getSelectedValues - Returns the currently selected value(s). If multiple is true, returns an array of strings; otherwise, returns a single string or undefined.
2852
+ * @method setSelectedValues - Sets the selected value(s). Accepts a string for single selection or an array of strings for multiple selection.
1181
2853
  */
1182
- interface BdsBanner {
2854
+ interface BdsListMenu {
1183
2855
  /**
1184
- * Shows a close button that allows users to close the banner.
1185
- * @default false
2856
+ * Defines the ARIA role of the menu. Can be 'menu' or 'listbox'. Default is 'menu'.
2857
+ * @default MENU_ROLES.MENU
1186
2858
  */
1187
- "closable"?: boolean;
2859
+ "menuRole"?: IListMenu['menuRole'];
1188
2860
  /**
1189
- * The aria label for the close button.
1190
- * @default ""
2861
+ * Emitted when the selection changes, providing the current selected value(s).
1191
2862
  */
1192
- "closeButtonLabel"?: IBanner['closeButtonLabel'];
2863
+ "onBdsChange"?: (event: BdsListMenuCustomEvent<string | string[]>) => void;
1193
2864
  /**
1194
- * Emitted when the banner is closed via the close button or closeBanner method.
2865
+ * Emitted when the selection changes, providing the current selected value(s).
1195
2866
  */
1196
- "onBdsClose"?: (event: BdsBannerCustomEvent<void>) => void;
2867
+ "onBdsSelect"?: (event: BdsListMenuCustomEvent<ListMenuChangeDetail>) => void;
1197
2868
  /**
1198
- * Visual style variant: 'info', 'success', 'warning', or 'danger'.
1199
- * @default "info"
2869
+ * Determines if the menu items have selectall/deselectall controls
2870
+ * @default false
1200
2871
  */
1201
- "variant"?: IBanner['variant'];
2872
+ "selectControls"?: IListMenu['selectControls'];
2873
+ /**
2874
+ * The selection mode of the menu. Can be 'SINGLE' or 'MULTIPLE'. Default is 'SINGLE'.
2875
+ * @default LIST_MENU_SELECTION_MODE.SINGLE
2876
+ */
2877
+ "selectionMode"?: IListMenu['selectionMode'];
1202
2878
  }
1203
2879
  /**
1204
- * Button component for user interactions, form submissions, supporting various styles, sizes, and states.
1205
- * @summary A versatile button component that can be customized with different colors, sizes, variants and states to fit various use cases in the application.
1206
- * @attr {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
1207
- * @attr {boolean} disabled - Disables the button when true, preventing user interaction and applying disabled styles.
1208
- * @attr {string} name - The name attribute for the button, useful for form submissions.
1209
- * @attr {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
1210
- * @attr {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
1211
- * @attr {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
1212
- * @attr {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
1213
- * @attr {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
1214
- * @attr {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
1215
- * @property {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
1216
- * @property {boolean} disabled - Disables the button when true, preventing user interaction and applying disabled styles.
1217
- * @property {string} name - The name attribute for the button, useful for form submissions.
1218
- * @property {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
1219
- * @property {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
1220
- * @property {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
1221
- * @property {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
1222
- * @property {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
1223
- * @property {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
1224
- * @default 'button' - Default type value
1225
- * @default 'default' - Default color value
1226
- * @default 'default' - Default variant value
1227
- * @default 'medium' - Default size value
1228
- * @default 'default' - Default status value
1229
- * @default false - Default disabled value
1230
- * @default '' - Default label value
1231
- * @default '' - Default name value
1232
- * @default false - Default loading value
1233
- * @default false - Default disclosure value
2880
+ * Component representing an individual item within a list menu for navigations and selection.
2881
+ * @summary A menu item component that supports different variants, disabled state, and selection state, it also supports link behavior when the href prop is provided.
2882
+ * @attr {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
2883
+ * @attr {string} name - The name of the list menu item.
2884
+ * @attr {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
2885
+ * @attr {boolean} selected - If true, the menu item is styled as selected.
2886
+ * @attr {boolean} activeItem - If true, the menu item is styled as active.
2887
+ * @attr {string} value - The value associated with the menu item, emitted in events when activated.\
2888
+ * @attr {string} href - The URL for the link. If provided, the menu item will behave as a link.
2889
+ * @attr {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
2890
+ * @attr {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
2891
+ * @attr {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
2892
+ * @property {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
2893
+ * @property {string} name - The name of the list menu item.
2894
+ * @property {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
2895
+ * @property {boolean} selected - If true, the menu item is styled as selected.
2896
+ * @property {boolean} activeItem - If true, the menu item is styled as active.
2897
+ * @property {string} value - The value associated with the menu item, emitted in events when activated.
2898
+ * @property {string} href - The URL for the link. If provided, the menu item will behave as a link.
2899
+ * @property {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
2900
+ * @property {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
2901
+ * @property {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
2902
+ * @default 'button' - The default variant for the menu item is 'button', which is a standard clickable item.
2903
+ * @default '' - By default, the name of the menu item is an empty string.
2904
+ * @default false - By default, the menu item is not disabled and is interactive.
2905
+ * @default false - By default, the menu item is not selected.
2906
+ * @default false - By default, the menu item is not active.
2907
+ * @default '' - By default, the value of the menu item is an empty string.
2908
+ * @default '' - By default, the href is an empty string, meaning the menu item will not behave as a link.
2909
+ * @default false - By default, the newTab property is false, meaning links will open in the same tab.
2910
+ * @default false - By default, the downloadable property is false, meaning links will not be treated as download links.
2911
+ * @default '' - By default, the filename is an empty string, meaning no suggested filename for downloads.
1234
2912
  */
1235
- interface BdsButton {
2913
+ interface BdsListMenuItem {
1236
2914
  /**
1237
- * color is a string attribute. The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
1238
- * @default CORE_COLORS.DEFAULT
2915
+ * Active state item
2916
+ * @default false
1239
2917
  */
1240
- "color"?: IButton['color'];
2918
+ "activeItem"?: IListMenuItem['activeItem'];
1241
2919
  /**
1242
- * disabled is a boolean attribute. Disables the button when true, preventing user interaction and applying disabled styles.
2920
+ * Checkable state item, if is activated should be visible a checkbox
1243
2921
  * @default false
1244
2922
  */
1245
- "disabled"?: IButton['disabled'];
2923
+ "checkable"?: IListMenuItem['checkable'];
1246
2924
  /**
1247
- * disclosure is a boolean attribute. Used to show a chevron down at the of the content
2925
+ * Disabled state item
1248
2926
  * @default false
1249
2927
  */
1250
- "disclosure"?: IButton['disclosure'];
2928
+ "disabled"?: IListMenuItem['disabled'];
1251
2929
  /**
1252
- * The `id` of a `<form>` element to associate this element with.
2930
+ * Makes the link downloadable if true
2931
+ * @default ''
1253
2932
  */
1254
- "form"?: string;
2933
+ "download"?: IListMenuItem['download'];
1255
2934
  /**
1256
- * The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
2935
+ * Link behavior props
1257
2936
  * @default ''
1258
2937
  */
1259
- "label"?: IButton['label'];
2938
+ "href"?: IListMenuItem['href'];
1260
2939
  /**
1261
- * loading is a boolean attribute. Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
1262
- * @default false
2940
+ * The name of the list menu item
2941
+ * @default ''
1263
2942
  */
1264
- "loading"?: IButton['loading'];
2943
+ "name"?: IListMenuItem['name'];
1265
2944
  /**
1266
- * name is a string attribute. The name attribute for the button, useful for form submissions.
1267
- * @default ''
2945
+ * Opens the link in a new tab if true
2946
+ * @default false
1268
2947
  */
1269
- "name"?: IButton['name'];
2948
+ "newTab"?: IListMenuItem['newTab'];
1270
2949
  /**
1271
- * emit event to click
2950
+ * Event handler for activation
1272
2951
  */
1273
- "onBdsClick"?: (event: BdsButtonCustomEvent<UIEvent>) => void;
2952
+ "onBdsSelectItem"?: (event: BdsListMenuItemCustomEvent<IListMenuItemEvent>) => void;
1274
2953
  /**
1275
- * size is a string attribute. The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
1276
- * @default BUTTON_SIZES.MEDIUM
2954
+ * Selected item state
2955
+ * @default false
1277
2956
  */
1278
- "size"?: IButton['size'];
2957
+ "selected"?: IListMenuItem['selected'];
1279
2958
  /**
1280
- * type is a string attribute. The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
1281
- * @default BUTTON_TYPES.BUTTON
2959
+ * Value associated with the menu item
2960
+ * @default ''
1282
2961
  */
1283
- "type"?: IButton['type'];
2962
+ "value"?: IListMenuItem['value'];
1284
2963
  /**
1285
- * variant is a string attribute. The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
1286
- * @default BUTTON_VARIANTS.DEFAULT
2964
+ * Defines the visual style of the list menu item. - 'button': A standard clickable item. - 'label': A non-interactive label, typically used for grouping items.
2965
+ * @default LIST_MENU_ITEM_VARIANTS.BUTTON
1287
2966
  */
1288
- "variant"?: IButton['variant'];
2967
+ "variant"?: IListMenuItem['variant'];
1289
2968
  }
1290
2969
  /**
1291
- * Checkbox component for boolean selection with three visual states.
1292
- * @summary A checkbox form control with default, selected, and indeterminate states.
1293
- * @property {boolean} checked - Whether the checkbox is selected. Defaults to `false`.
1294
- * @property {boolean} indeterminate - Whether the checkbox shows an indeterminate ("mixed") visual state. Defaults to `false`.
1295
- * @property {boolean} error - Shows error styling on the checkbox. Defaults to `false`.
1296
- * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
1297
- * @property {string} label - Label displayed next to the checkbox. If not provided, the default slot is used.
1298
- * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model).
1299
- * @fires bdsChange - Emitted when the user toggles the checkbox. Payload: `{ checked: boolean, value: string }`.
2970
+ * @attr {boolean} disabled - When true, prevents the popover from being shown.
2971
+ * @attr {number | 'full' | 'auto'} width - Controls the width of the popover content.
2972
+ * @attr {boolean} header - When true, displays the popover header.
2973
+ * @attr {boolean} footer - When true, displays the popover footer.
2974
+ * @attr {boolean} closable - When true, displays the close button in the header.
2975
+ * @attr {IPopoverFloatingOptions} floatingOptions - Configuration object for floating behavior.
2976
+ * @csspart popover-content - The main popover container element.
2977
+ * @csspart arrow - The arrow element pointing toward the trigger.
2978
+ * @csspart popover-trigger - The trigger element for the popover.
2979
+ * @cssprop data-placement - Reflects the resolved placement on the popover element.
2980
+ * @cssprop data-hidearrow - Reflects the hideArrow option.
1300
2981
  */
1301
- interface BdsCheckbox {
2982
+ interface BdsPopover {
1302
2983
  /**
1303
- * Whether the checkbox is selected.
2984
+ * If true, displays a close button inside the header. Requires `header` to be true.
1304
2985
  * @default false
1305
2986
  */
1306
- "checked"?: boolean;
2987
+ "closable"?: boolean;
1307
2988
  /**
1308
- * Disables the control.
2989
+ * If true, disables the popover.
1309
2990
  * @default false
1310
2991
  */
1311
- "disabled"?: boolean;
2992
+ "disabled"?: IPopover['disabled'];
1312
2993
  /**
1313
- * Shows error styling on the checkbox.
2994
+ * Override default options for the floating mixin. This can be overridden by passing a different object to the `floatingOptions` prop.
2995
+ * @default {}
2996
+ */
2997
+ "floatingOptions"?: IPopover['floatingOptions'];
2998
+ /**
2999
+ * If true, displays the footer section with helper and button slots.
1314
3000
  * @default false
1315
3001
  */
1316
- "error"?: boolean;
3002
+ "footer"?: boolean;
1317
3003
  /**
1318
- * The `id` of a `<form>` element to associate this element with.
3004
+ * If true, displays the header section with icon and title slots.
3005
+ * @default false
1319
3006
  */
1320
- "form"?: string;
3007
+ "header"?: boolean;
1321
3008
  /**
1322
- * Whether the checkbox shows an indeterminate ("mixed") visual state.
3009
+ * Width of the popover content. - number: width in pixels (e.g. 320 → "320px") - 'full': 100% of the trigger/parent width - 'auto': fits the content
3010
+ * @default 320
3011
+ */
3012
+ "width"?: IPopover['width'];
3013
+ }
3014
+ /**
3015
+ * Radio button component for single-selection within a group.
3016
+ * Use inside `bds-radio-group` for managed selection and form binding.
3017
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
3018
+ */
3019
+ interface BdsRadio {
3020
+ /**
3021
+ * Whether this radio is selected. Managed by bds-radio-group; can be set directly when used standalone.
1323
3022
  * @default false
1324
3023
  */
1325
- "indeterminate"?: boolean;
3024
+ "checked"?: boolean;
1326
3025
  /**
1327
- * Label displayed next to the checkbox. If not provided, the default slot is used.
1328
- * @default ''
3026
+ * Disables the radio, preventing interaction and selection.
3027
+ * @default false
1329
3028
  */
1330
- "label"?: string;
3029
+ "disabled"?: boolean;
1331
3030
  /**
1332
- * Name of the form control, submitted as a key in the form data.
3031
+ * Shows error styling on the radio indicator. Propagated by bds-radio-group.
3032
+ * @default false
1333
3033
  */
1334
- "name": string;
3034
+ "error"?: boolean;
1335
3035
  /**
1336
- * Emitted when the user toggles the checkbox.
3036
+ * Tooltip text shown on an info icon next to the label.
3037
+ * @default ''
1337
3038
  */
1338
- "onBdsChange"?: (event: BdsCheckboxCustomEvent<CheckboxChangeDetail>) => void;
3039
+ "info"?: string;
1339
3040
  /**
1340
- * Emitted when the checked state changes (for 2-way binding / v-model).
3041
+ * Label text displayed next to the radio indicator. Falls back to the default slot when empty.
3042
+ * @default ''
1341
3043
  */
1342
- "onValueChange"?: (event: BdsCheckboxCustomEvent<boolean>) => void;
3044
+ "label"?: string;
1343
3045
  /**
1344
- * Marks the control as required for form submission.
1345
- * @default false
3046
+ * Name attribute stamped by the parent bds-radio-group via setAttribute. Set directly when used standalone.
3047
+ * @default ''
1346
3048
  */
1347
- "required"?: boolean;
3049
+ "name"?: string;
1348
3050
  /**
1349
- * Value submitted with the form data when checked.
3051
+ * Emitted when the user selects this radio. Listened to by the parent bds-radio-group to enforce single selection.
3052
+ */
3053
+ "onBdsChange"?: (event: BdsRadioCustomEvent<RadioChangeDetail>) => void;
3054
+ /**
3055
+ * Value submitted with the form when this radio is selected.
1350
3056
  * @default 'on'
1351
3057
  */
1352
3058
  "value"?: string;
1353
3059
  }
1354
3060
  /**
1355
- * Modal dialog component for displaying content in an overlay.
1356
- * @summary Modal overlay for alerts, forms, and confirmations with customizable layout and behavior.
1357
- * @attr {boolean} active - Controls dialog visibility.
1358
- * @attr {boolean} prevent-close - Disables closing the dialog.
1359
- * @attr {string} layout - Layout type: 'default', 'headerless', or 'footerless'.
1360
- * @attr {string} content-padding - Content padding: 'default' or 'none'.
1361
- * @attr {boolean} backdrop-close - Close on backdrop click.
1362
- * @attr {boolean} escape-close - Close on Escape key.
1363
- * @attr {string} size - Dialog size: 'sm', 'md', 'lg', or 'full'.
1364
- * @attr {string} variant - Visual variant: 'default', 'info', 'success', 'warning', or 'danger'.
1365
- * @attr {string} title-dialog - Dialog title text.
1366
- * @attr {boolean} maximizable - Show maximize button.
1367
- * @attr {boolean} closable - Show close button.
1368
- * @attr {string} width - Custom width for the dialog.
1369
- * @attr {string} height - Custom height for the dialog.
1370
- * @property {boolean} active - Controls whether the dialog is open.
1371
- * @property {boolean} preventClose - Disables closing the dialog.
1372
- * @property {string} height - Custom height for the dialog.
1373
- * @property {string} width - Custom width for the dialog.
1374
- * @property {string} layout - Layout type: 'default', 'headerless', or 'footerless'.
1375
- * @property {string} contentPadding - Content padding: 'default' or 'none'.
1376
- * @property {boolean} backdropClose - Close dialog when clicking the backdrop.
1377
- * @property {boolean} escapeClose - Close dialog when pressing Escape.
1378
- * @property {string} size - Dialog size: 'sm', 'md', 'lg', or 'full'.
1379
- * @property {string} variant - Visual variant: 'default', 'info', 'success', 'warning', or 'danger'.
1380
- * @property {string} titleDialog - Title text displayed in the header.
1381
- * @property {boolean} maximizable - Show maximize button.
1382
- * @property {boolean} closable - Hide the close button in the header.
1383
- * @fires bdsOpen - Emitted when the dialog opens.
1384
- * @fires bdsClose - Emitted when the dialog closes.
1385
- * @fires bdsMaximize - Emitted when the maximize button is clicked.
1386
- * @cssprop --bds-dialog-width - Custom width for the dialog.
1387
- * @cssprop --bds-dialog-height - Custom height for the dialog.
3061
+ * Button-shaped radio option for use inside `bds-radio-group[type="radiobutton"]`.
3062
+ * Creates a segmented control appearance when grouped. Not form-associated the parent
3063
+ * `bds-radio-group` owns form state and single-selection enforcement.
1388
3064
  */
1389
- interface BdsDialog {
3065
+ interface BdsRadioButton {
1390
3066
  /**
1391
- * Controls whether the dialog is open.
3067
+ * Whether this button is selected. Managed by bds-radio-group; can be set directly when used standalone.
1392
3068
  * @default false
1393
3069
  */
1394
- "active"?: IDialog['active'];
3070
+ "checked"?: boolean;
1395
3071
  /**
1396
- * Close dialog when clicking the backdrop.
3072
+ * Disables the button, preventing interaction and selection.
1397
3073
  * @default false
1398
3074
  */
1399
- "backdropClose"?: IDialog['backdropClose'];
3075
+ "disabled"?: boolean;
1400
3076
  /**
1401
- * Hide the close button in the header.
3077
+ * Shows error styling on the button. Propagated by bds-radio-group.
1402
3078
  * @default false
1403
3079
  */
1404
- "closable"?: IDialog['closable'];
1405
- /**
1406
- * Content padding: 'default' or 'none'.
1407
- * @default DIALOG_CONTENT_PADDING.DEFAULT
1408
- */
1409
- "contentPadding"?: IDialog['contentPadding'];
3080
+ "error"?: boolean;
1410
3081
  /**
1411
- * Close dialog when pressing Escape.
1412
- * @default false
3082
+ * Tooltip text shown on an info icon next to the label.
3083
+ * @default ''
1413
3084
  */
1414
- "escapeClose"?: IDialog['escapeClose'];
3085
+ "info"?: string;
1415
3086
  /**
1416
- * Dialog custom height
3087
+ * Label text displayed inside the button. Falls back to the default slot when empty.
1417
3088
  * @default ''
1418
3089
  */
1419
- "height"?: IDialog['height'];
3090
+ "label"?: string;
1420
3091
  /**
1421
- * Layout type: 'default', 'headerless', or 'footerless'.
1422
- * @default DIALOG_LAYOUT.DEFAULT
3092
+ * Name attribute stamped by the parent bds-radio-group via setAttribute. Set directly when used standalone.
3093
+ * @default ''
1423
3094
  */
1424
- "layout"?: IDialog['layout'];
3095
+ "name"?: string;
1425
3096
  /**
1426
- * Show maximize button to toggle full-screen.
1427
- * @default false
3097
+ * Emitted when the user selects this button. Listened to by the parent bds-radio-group to enforce single selection.
1428
3098
  */
1429
- "maximizable"?: IDialog['maximizable'];
3099
+ "onBdsChange"?: (event: BdsRadioButtonCustomEvent<RadioButtonChangeDetail>) => void;
1430
3100
  /**
1431
- * Emitted when the dialog closes.
3101
+ * Value submitted with the form when this button is selected.
3102
+ * @default 'on'
1432
3103
  */
1433
- "onBdsClose"?: (event: BdsDialogCustomEvent<void>) => void;
3104
+ "value"?: string;
3105
+ }
3106
+ /**
3107
+ * Radio card component is a selectable card-based radio option.
3108
+ * It presents a mutually exclusive choice with optional descriptive text and icon,
3109
+ * designed for integration with bds-radio-group for orchestration.
3110
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
3111
+ * @fires bdsChange - Emitted when the user selects this radio card. Listened to by the parent bds-radio-group to enforce single selection.
3112
+ */
3113
+ interface BdsRadioCard {
1434
3114
  /**
1435
- * Emitted when the dialog maximize button is clicked.
3115
+ * Whether this radio card is selected. Managed by bds-radio-group; can be set directly when used standalone.
3116
+ * @default false
1436
3117
  */
1437
- "onBdsMaximize"?: (event: BdsDialogCustomEvent<void>) => void;
3118
+ "checked"?: IRadioCard['checked'];
1438
3119
  /**
1439
- * Emitted when the dialog opens.
3120
+ * Disables the radio card, preventing it from being selected and interacted with.
3121
+ * @default false
1440
3122
  */
1441
- "onBdsOpen"?: (event: BdsDialogCustomEvent<void>) => void;
3123
+ "disabled"?: IRadioCard['disabled'];
1442
3124
  /**
1443
- * Controls whether the dialog is closable.
3125
+ * Whether the radio card is in an error state.
1444
3126
  * @default false
1445
3127
  */
1446
- "preventClose"?: IDialog['preventClose'];
3128
+ "error"?: IRadioCard['error'];
1447
3129
  /**
1448
- * Dialog size: 'small', 'medium', 'large', or 'full'.
1449
- * @default DIALOG_SIZES.MEDIUM
3130
+ * Tooltip content attached to the radio card content. If empty, the info icon will not be rendered.
3131
+ * @default ''
1450
3132
  */
1451
- "size"?: IDialog['size'];
3133
+ "info"?: IRadioCard['info'];
1452
3134
  /**
1453
- * Title text displayed in the header.
3135
+ * Label text displayed next to the radio indicator. Falls back to the default slot when empty.
1454
3136
  * @default ''
1455
3137
  */
1456
- "titleDialog"?: IDialog['titleDialog'];
3138
+ "label"?: IRadioCard['label'];
1457
3139
  /**
1458
- * Visual variant: 'default', 'info', 'success', 'warning', or 'danger'.
1459
- * @default DIALOG_VARIANT.DEFAULT
3140
+ * Name attribute stamped by the parent bds-radio-group. Set directly when used standalone.
3141
+ * @default ''
1460
3142
  */
1461
- "variant"?: IDialog['variant'];
3143
+ "name"?: IRadioCard['name'];
1462
3144
  /**
1463
- * Dialog custom width
1464
- * @default ''
3145
+ * Emitted when the user selects this radio. Listened to by the parent bds-radio-group to enforce single selection.
1465
3146
  */
1466
- "width"?: IDialog['width'];
3147
+ "onBdsChange"?: (event: BdsRadioCardCustomEvent<RadioCardChangeDetail>) => void;
3148
+ /**
3149
+ * Value submitted with the form when this radio is selected.
3150
+ * @default 'on'
3151
+ */
3152
+ "value"?: IRadioCard['value'];
1467
3153
  }
1468
3154
  /**
1469
- * Flag component used to display a country flag together with its corresponding label.
1470
- * @summary Renders a flag icon based on a country identifier and optionally displays
1471
- * the country name, short name, or call sign. Supports custom flag sources, different
1472
- * shapes, and flag alignment on either side of the label.
1473
- * @attr {boolean} label - When true, displays a textual label next to the flag.
1474
- * @attr {boolean} short-name - When true, displays the abbreviated country name (ISO2/ISO3) instead of the full name.
1475
- * @attr {boolean} call-sign - When true, displays the country calling code next to the label.
1476
- * @attr {string} country - Country value used to resolve the flag and label.
1477
- * @attr {AlignFlag} align-flag - Controls whether the flag is rendered on the left or right side.
1478
- * @attr {FlagIdentifier} identifier - Defines which country field is used to resolve the value.
1479
- * @attr {Shape} shape - Visual shape of the rendered flag.
1480
- * @attr {ICountry[]} custom-flags - Additional custom flag definitions that can override defaults.
1481
- * @property {boolean} label - Whether the country label should be displayed. Defaults to false.
1482
- * @property {boolean} shortName - Whether to display the abbreviated country name. Defaults to false.
1483
- * @property {boolean} callSign - Whether to display the country calling code. Defaults to false.
1484
- * @property {string} country - Country value used to find the matching flag entry. Defaults to ''.
1485
- * @property {AlignFlag} alignFlag - Position of the flag relative to the label. Defaults to `AlignFlag.LEFT`.
1486
- * @property {FlagIdentifier} identifier - Identifier used to resolve the country value. Defaults to `FlagIdentifier.CODE`.
1487
- * @property {Shape} shape - Shape variant used for the flag. Defaults to `Shape.RECTANGLE`.
1488
- * @property {ICountry[]} customFlags - List of custom flag definitions merged with the default catalog. Defaults to `[]`.
3155
+ * Radio group component that orchestrates single-selection across a set of `bds-radio` children.
1489
3156
  */
1490
- interface BdsFlag {
3157
+ interface BdsRadioGroup {
1491
3158
  /**
1492
- * Determines whether the flag is displayed on the left or right side of the label.
1493
- * @default AlignFlag.LEFT
3159
+ * Disables all child radios and prevents selection. Also mirrored to isDisabled
3160
+ * @State for form-level disable support.
3161
+ * @default false
1494
3162
  */
1495
- "alignFlag"?: IFlag['alignFlag'];
3163
+ "disabled"?: false;
1496
3164
  /**
1497
- * Whether the country calling code should be displayed next to the label.
3165
+ * Shows error styling on the group helper text. Propagated to all child radios.
1498
3166
  * @default false
1499
3167
  */
1500
- "callSign"?: IFlag['callSign'];
3168
+ "error"?: false;
1501
3169
  /**
1502
- * Country value used to resolve the matching flag entry. The expected value depends on the configured `identifier`.
3170
+ * Error message rendered below the radio options when error is true. Replaces helperText.
1503
3171
  * @default ''
1504
3172
  */
1505
- "country"?: IFlag['country'];
3173
+ "errorMessage"?: "";
1506
3174
  /**
1507
- * Custom flag definitions merged with the default country catalog. Custom entries can override default asset sources when the same `iso2` is used.
1508
- * @default []
3175
+ * The `id` of a `<form>` element to associate this element with.
1509
3176
  */
1510
- "customFlags"?: IFlag['customFlags'];
3177
+ "form"?: string;
1511
3178
  /**
1512
- * Defines which field should be used to identify the country. For example, code, iso2, or iso3.
1513
- * @default FlagIdentifier.CODE
3179
+ * Helper text rendered below the radio options. Shown in default state; replaced by errorMessage in error state.
3180
+ * @default ''
1514
3181
  */
1515
- "identifier"?: IFlag['identifier'];
3182
+ "helperText"?: "";
1516
3183
  /**
1517
- * Whether the country name label should be displayed next to the flag.
1518
- * @default false
3184
+ * Tooltip text shown on the group label info icon.
3185
+ * @default ''
1519
3186
  */
1520
- "label"?: IFlag['label'];
3187
+ "info"?: "";
1521
3188
  /**
1522
- * Visual shape used to render the flag.
1523
- * @default Shape.RECTANGLE
3189
+ * Group label rendered above the radio options.
3190
+ * @default ''
1524
3191
  */
1525
- "shape"?: IFlag['shape'];
3192
+ "label"?: "";
1526
3193
  /**
1527
- * Whether the abbreviated country name (ISO2/ISO3) should be displayed instead of the full name.
1528
- * @default false
3194
+ * Name of the form control; submitted as the field key in FormData.
1529
3195
  */
1530
- "shortName"?: IFlag['shortName'];
1531
- }
1532
- /**
1533
- * @attr {boolean} disabled - When true, prevents the popover from being shown.
1534
- * @attr {number | 'full' | 'auto'} width - Controls the width of the popover content.
1535
- * @attr {boolean} header - When true, displays the popover header.
1536
- * @attr {boolean} footer - When true, displays the popover footer.
1537
- * @attr {boolean} closable - When true, displays the close button in the header.
1538
- * @attr {IPopoverFloatingOptions} floatingOptions - Configuration object for floating behavior.
1539
- * @csspart popover-content - The main popover container element.
1540
- * @csspart arrow - The arrow element pointing toward the trigger.
1541
- * @csspart popover-trigger - The trigger element for the popover.
1542
- * @cssprop data-placement - Reflects the resolved placement on the popover element.
1543
- * @cssprop data-hidearrow - Reflects the hideArrow option.
1544
- */
1545
- interface BdsPopover {
3196
+ "name": string;
1546
3197
  /**
1547
- * If true, displays a close button inside the header. Requires `header` to be true.
1548
- * @default false
3198
+ * Emitted when the selected radio changes. Payload includes the new value.
1549
3199
  */
1550
- "closable"?: boolean;
3200
+ "onBdsChange"?: (event: BdsRadioGroupCustomEvent<RadioGroupChangeDetail>) => void;
1551
3201
  /**
1552
- * If true, disables the popover.
1553
- * @default false
3202
+ * Emitted when the selected radio changes. Used for v-model two-way binding in Vue.
1554
3203
  */
1555
- "disabled"?: IPopover['disabled'];
3204
+ "onValueChange"?: (event: BdsRadioGroupCustomEvent<string>) => void;
1556
3205
  /**
1557
- * Override default options for the floating mixin. This can be overridden by passing a different object to the `floatingOptions` prop.
1558
- * @default {}
3206
+ * Layout direction of the radio options.
3207
+ * @default ORIENTATIONS.VERTICAL
1559
3208
  */
1560
- "floatingOptions"?: IPopover['floatingOptions'];
3209
+ "orientation"?: Orientation;
1561
3210
  /**
1562
- * If true, displays the footer section with helper and button slots.
3211
+ * Marks the group as required for form submission. Triggers validity error when no radio is selected.
1563
3212
  * @default false
1564
3213
  */
1565
- "footer"?: boolean;
3214
+ "required"?: false;
1566
3215
  /**
1567
- * If true, displays the header section with icon and title slots.
1568
- * @default false
3216
+ * Identifies this group variant. 'radio' renders circular bds-radio children; 'radiobutton' renders bds-radio-button segmented control; 'radiocard' renders bds-radio-card element.
3217
+ * @default RADIO_GROUP_TYPES.RADIO
1569
3218
  */
1570
- "header"?: boolean;
3219
+ "type"?: RadioGroupType;
1571
3220
  /**
1572
- * Width of the popover content. - number: width in pixels (e.g. 320 → "320px") - 'full': 100% of the trigger/parent width - 'auto': fits the content
1573
- * @default 320
3221
+ * Currently selected radio value. Synced to children on change.
3222
+ * @default ''
1574
3223
  */
1575
- "width"?: IPopover['width'];
3224
+ "value"?: string;
1576
3225
  }
1577
3226
  /**
1578
3227
  * Spinner component used to indicate a loading or processing state.
@@ -1594,6 +3243,67 @@ declare namespace LocalJSX {
1594
3243
  */
1595
3244
  "size"?: ISpinner['size'];
1596
3245
  }
3246
+ /**
3247
+ * Status badge component for communicating the current state of an item or process.
3248
+ */
3249
+ interface BdsStatus {
3250
+ /**
3251
+ * indicator is a string attribute. Controls the type of indicator rendered before the slotted label. An invalid value falls back to `"none"` and a warning is set on the host element.
3252
+ * @default INDICATOR_TYPES.NONE
3253
+ */
3254
+ "indicator"?: IStatus['indicator'];
3255
+ /**
3256
+ * state is a string attribute. Controls the visual state variant of the status badge. Determines the background, accent, and text colors applied to the element. An invalid value falls back to `"neutral"` and a warning is set on the host element.
3257
+ * @default PROCESS_STATUS.NEUTRAL
3258
+ */
3259
+ "state"?: IStatus['state'];
3260
+ }
3261
+ /**
3262
+ * Tag component used to represent categories, metadata, or removable filters.
3263
+ * @summary Displays a label with optional leading/trailing icons and dismissal capability.
3264
+ * @fires bdsClose - Emitted when the tag is closed via the close button or Delete key.
3265
+ * @fires bdsSelect - Emitted when the tag is selected via a click or Space/Enter key.
3266
+ */
3267
+ interface BdsTag {
3268
+ /**
3269
+ * Aria label for the close button when visible.
3270
+ * @default 'Close tag'
3271
+ */
3272
+ "closeButtonLabel"?: ITag['closeButtonLabel'];
3273
+ /**
3274
+ * Visual color variant: 'gray', 'cyan', 'cobalt', 'teal', 'lime', 'orange', 'rose', or 'purple'.
3275
+ * @default "gray"
3276
+ */
3277
+ "color"?: ITag['color'];
3278
+ /**
3279
+ * Disables interaction with the tag. Reduces opacity and prevents interactions.
3280
+ * @default false
3281
+ */
3282
+ "disabled"?: ITag['disabled'];
3283
+ /**
3284
+ * Whether the tag is selectable or not.
3285
+ * @default false
3286
+ */
3287
+ "multiselect"?: ITag['multiselect'];
3288
+ /**
3289
+ * Emitted when the tag is closed via the close button or Delete key.
3290
+ */
3291
+ "onBdsClose"?: (event: BdsTagCustomEvent<TagEventPayload>) => void;
3292
+ /**
3293
+ * Emitted when the tag is selected via a click or Space/Enter key.
3294
+ */
3295
+ "onBdsSelect"?: (event: BdsTagCustomEvent<TagEventPayload>) => void;
3296
+ /**
3297
+ * Hides the close button that allows users to dismiss the tag.
3298
+ * @default false
3299
+ */
3300
+ "readonly"?: ITag['readonly'];
3301
+ /**
3302
+ * Whether the tag is selected or not.
3303
+ * @default false
3304
+ */
3305
+ "selected"?: ITag['selected'];
3306
+ }
1597
3307
  /**
1598
3308
  * Text field component for user input with validation and form integration.
1599
3309
  * @summary Single-line text input with label, validation, password toggle, and clear action.
@@ -1804,6 +3514,88 @@ declare namespace LocalJSX {
1804
3514
  */
1805
3515
  "variant"?: TextFieldVariant;
1806
3516
  }
3517
+ /**
3518
+ * Toggle/Switch component for boolean selection.
3519
+ * @summary A toggle switch form control with label positioning support.
3520
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
3521
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
3522
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
3523
+ * @property {boolean} checked - Whether the toggle is on. Defaults to `false`.
3524
+ * @property {string} placement - Position of the label relative to the switch. Accepts `TOGGLE_PLACEMENT` values. Defaults to `"left"`.
3525
+ * @property {string} label - Label displayed next to the toggle. Defaults to `""`.
3526
+ * @property {string} helperText - Help text displayed below the toggle. Defaults to `""`.
3527
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
3528
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
3529
+ * @fires bdsChange - Emitted when the user toggles the switch. Payload: `IToggleEventChange`.
3530
+ */
3531
+ interface BdsToggle {
3532
+ /**
3533
+ * Whether the toggle is on. Defaults to `false`.
3534
+ * @default false
3535
+ */
3536
+ "checked"?: IToggle['checked'];
3537
+ /**
3538
+ * Disables the control. Defaults to `false`.
3539
+ * @default false
3540
+ */
3541
+ "disabled"?: IToggle['disabled'];
3542
+ /**
3543
+ * When `true`, applies the error visual state.
3544
+ * @default false
3545
+ */
3546
+ "error"?: IToggle['error'];
3547
+ /**
3548
+ * Message shown below the input when `error` is `true`. Replaces `helperText`.
3549
+ * @default ''
3550
+ */
3551
+ "errorMessage"?: IToggle['errorMessage'];
3552
+ /**
3553
+ * The `id` of a `<form>` element to associate this element with.
3554
+ */
3555
+ "form"?: string;
3556
+ /**
3557
+ * Help text displayed below the toggle. Defaults to `""`.
3558
+ * @default ''
3559
+ */
3560
+ "helperText"?: IToggle['helperText'];
3561
+ /**
3562
+ * Tooltip content attached to the label. Rendered via `bds-typography` `tooltipText` prop.
3563
+ * @default ''
3564
+ */
3565
+ "info"?: IToggle['info'];
3566
+ /**
3567
+ * Label displayed next to the toggle. Defaults to `""`.
3568
+ * @default ''
3569
+ */
3570
+ "label"?: IToggle['label'];
3571
+ /**
3572
+ * Name of the form control, submitted as a key in the form data.
3573
+ */
3574
+ "name": IToggle['name'];
3575
+ /**
3576
+ * Emitted when the user toggles the switch. Payload: `{ checked: boolean, value: string }`.
3577
+ */
3578
+ "onBdsChange"?: (event: BdsToggleCustomEvent<IToggleEventChange>) => void;
3579
+ /**
3580
+ * Emitted when the checked state changes. Useful for 2-way binding / v-model. Payload: `boolean`.
3581
+ */
3582
+ "onValueChange"?: (event: BdsToggleCustomEvent<boolean>) => void;
3583
+ /**
3584
+ * Position of the label relative to the switch. Accepts `TOGGLE_PLACEMENT` values. Defaults to `TOGGLE_PLACEMENT.LEFT`.
3585
+ * @default TOGGLE_PLACEMENT.LEFT
3586
+ */
3587
+ "placement"?: IToggle['placement'];
3588
+ /**
3589
+ * Marks the control as required for form submission. Defaults to `false`.
3590
+ * @default false
3591
+ */
3592
+ "required"?: IToggle['required'];
3593
+ /**
3594
+ * Value submitted with the form data when checked. Behaves like the `value` attribute of a native `<input type="checkbox">`. Defaults to `"on"`.
3595
+ * @default 'on'
3596
+ */
3597
+ "value"?: IToggle['value'];
3598
+ }
1807
3599
  /**
1808
3600
  * Tooltip component that displays a short label anchored to a trigger element on hover.
1809
3601
  * @summary Displays a floating tooltip anchored to a trigger element on mouseenter/mouseleave,
@@ -1842,12 +3634,12 @@ declare namespace LocalJSX {
1842
3634
  * @attr {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
1843
3635
  * @attr {string} align - The text alignment. Options: start, center, end, inherit
1844
3636
  * @attr {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
1845
- * @attr {boolean} is-required - Shows a required indicator when used with `label` variant.
3637
+ * @attr {boolean} required - Shows a required indicator when used with `label` variant.
1846
3638
  * @attr {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
1847
3639
  * @attr {number} max-lines - Maximum number of lines to show before truncating with ellipsis.
1848
3640
  * @attr {string} href - URL when the typography is an `a` element and a `link` variant.
1849
3641
  * @attr {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
1850
- * @attr {boolean} is-downloadable - Makes the `link` download a file.
3642
+ * @attr {boolean} downloadable - Makes the `link` download a file.
1851
3643
  * @attr {string} filename - Suggested filename when downloading a file from the `link`.
1852
3644
  * @attr {string} html-for - The for attribute when rendered as a label
1853
3645
  * @attr {string} tooltip-text - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -1857,12 +3649,12 @@ declare namespace LocalJSX {
1857
3649
  * @property {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
1858
3650
  * @property {string} align - The text alignment. Options: start, center, end, inherit
1859
3651
  * @property {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
1860
- * @property {boolean} isRequired - Shows a required indicator when used with `label` variant.
3652
+ * @property {boolean} required - Shows a required indicator when used with `label` variant.
1861
3653
  * @property {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
1862
3654
  * @property {number} maxLines - Maximum number of lines to show before truncating with ellipsis.
1863
3655
  * @property {string} href - URL when the typography is an `a` element and a `link` variant.
1864
3656
  * @property {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
1865
- * @property {boolean} isDownloadable - Makes the `link` download a file.
3657
+ * @property {boolean} downloadable - Makes the `link` download a file.
1866
3658
  * @property {string} filename - Suggested filename when downloading a file from the `link`.
1867
3659
  * @property {string} htmlFor - The for attribute when rendered as a label
1868
3660
  * @property {string} tooltipText - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -1872,12 +3664,12 @@ declare namespace LocalJSX {
1872
3664
  * @default 'start' - Default align value
1873
3665
  * @default 'md' - Default size value
1874
3666
  * @default 'default' - Default state value
1875
- * @default false - Default isRequired state
3667
+ * @default false - Default required state
1876
3668
  * @default false - Default ellipsis state
1877
3669
  * @default 1 - Default maxLines value
1878
3670
  * @default '' - Default href value
1879
3671
  * @default '' - Default target value
1880
- * @default false - Default isDownloadable state
3672
+ * @default false - Default downloadable state
1881
3673
  * @default 'download' - Default filename value
1882
3674
  * @default '' - Default tooltipText value
1883
3675
  */
@@ -1892,6 +3684,11 @@ declare namespace LocalJSX {
1892
3684
  * @default ''
1893
3685
  */
1894
3686
  "customClass"?: string;
3687
+ /**
3688
+ * Enables download behavior for anchor.
3689
+ * @default false
3690
+ */
3691
+ "downloadable"?: ITypography['downloadable'];
1895
3692
  /**
1896
3693
  * HTML tag used for rendering.
1897
3694
  * @default TAG_ELEMENT.P
@@ -1918,20 +3715,15 @@ declare namespace LocalJSX {
1918
3715
  */
1919
3716
  "htmlFor"?: ITypography['htmlFor'];
1920
3717
  /**
1921
- * Enables download behavior for anchor.
1922
- * @default false
3718
+ * Max lines when ellipsis is enabled.
3719
+ * @default 1
1923
3720
  */
1924
- "isDownloadable"?: ITypography['isDownloadable'];
3721
+ "maxLines"?: ITypography['maxLines'];
1925
3722
  /**
1926
3723
  * Marks the field as required.
1927
3724
  * @default false
1928
3725
  */
1929
- "isRequired"?: ITypography['isRequired'];
1930
- /**
1931
- * Max lines when ellipsis is enabled.
1932
- * @default 1
1933
- */
1934
- "maxLines"?: ITypography['maxLines'];
3726
+ "required"?: ITypography['required'];
1935
3727
  /**
1936
3728
  * Typography size token.
1937
3729
  * @default SIZES.M
@@ -1959,6 +3751,16 @@ declare namespace LocalJSX {
1959
3751
  "variant"?: ITypography['variant'];
1960
3752
  }
1961
3753
 
3754
+ interface BdsAvatarAttributes {
3755
+ "username": IAvatar['username'];
3756
+ "variant": IAvatar['variant'];
3757
+ "background": IAvatar['background'];
3758
+ "initialsColor": IAvatar['initialsColor'];
3759
+ }
3760
+ interface BdsBadgeAttributes {
3761
+ "variant": IBadge['variant'];
3762
+ "disabled": IBadge['disabled'];
3763
+ }
1962
3764
  interface BdsBannerAttributes {
1963
3765
  "variant": IBanner['variant'];
1964
3766
  "closable": boolean;
@@ -1975,6 +3777,13 @@ declare namespace LocalJSX {
1975
3777
  "loading": IButton['loading'];
1976
3778
  "disclosure": IButton['disclosure'];
1977
3779
  }
3780
+ interface BdsButtonGroupAttributes {
3781
+ "size": IButtonGroup['size'];
3782
+ "orientation": IButtonGroup['orientation'];
3783
+ "label": IButtonGroup['label'];
3784
+ "color": IButtonGroup['color'];
3785
+ "variant": IButtonGroup['variant'];
3786
+ }
1978
3787
  interface BdsCheckboxAttributes {
1979
3788
  "name": string;
1980
3789
  "disabled": boolean;
@@ -1985,6 +3794,16 @@ declare namespace LocalJSX {
1985
3794
  "value": string;
1986
3795
  "label": string;
1987
3796
  }
3797
+ interface BdsCheckboxCardAttributes {
3798
+ "name": ICheckboxCard['name'];
3799
+ "disabled": ICheckboxCard['disabled'];
3800
+ "required": ICheckboxCard['required'];
3801
+ "value": ICheckboxCard['value'];
3802
+ "label": ICheckboxCard['label'];
3803
+ "checked": ICheckboxCard['checked'];
3804
+ "indeterminate": ICheckboxCard['indeterminate'];
3805
+ "error": ICheckboxCard['error'];
3806
+ }
1988
3807
  interface BdsDialogAttributes {
1989
3808
  "active": IDialog['active'];
1990
3809
  "preventClose": IDialog['preventClose'];
@@ -2000,6 +3819,9 @@ declare namespace LocalJSX {
2000
3819
  "maximizable": IDialog['maximizable'];
2001
3820
  "closable": IDialog['closable'];
2002
3821
  }
3822
+ interface BdsDividerAttributes {
3823
+ "orientation": IDivider['orientation'];
3824
+ }
2003
3825
  interface BdsFlagAttributes {
2004
3826
  "alignFlag": IFlag['alignFlag'];
2005
3827
  "callSign": IFlag['callSign'];
@@ -2009,6 +3831,37 @@ declare namespace LocalJSX {
2009
3831
  "shape": IFlag['shape'];
2010
3832
  "shortName": IFlag['shortName'];
2011
3833
  }
3834
+ interface BdsGridAttributes {
3835
+ "layout": IGrid['layout'];
3836
+ "rowGap": IGrid['rowGap'];
3837
+ }
3838
+ interface BdsGridItemAttributes {
3839
+ "colSpan": string;
3840
+ "colSpanSm": string;
3841
+ "colSpanMd": string;
3842
+ "colSpanLg": string;
3843
+ "colSpanXl": string;
3844
+ "colSpan2xl": string;
3845
+ "rowSpan": string;
3846
+ "offset": IGridItem['offset'];
3847
+ }
3848
+ interface BdsListMenuAttributes {
3849
+ "selectionMode": IListMenu['selectionMode'];
3850
+ "menuRole": IListMenu['menuRole'];
3851
+ "selectControls": IListMenu['selectControls'];
3852
+ }
3853
+ interface BdsListMenuItemAttributes {
3854
+ "variant": IListMenuItem['variant'];
3855
+ "name": IListMenuItem['name'];
3856
+ "disabled": IListMenuItem['disabled'];
3857
+ "selected": IListMenuItem['selected'];
3858
+ "value": IListMenuItem['value'];
3859
+ "checkable": IListMenuItem['checkable'];
3860
+ "activeItem": IListMenuItem['activeItem'];
3861
+ "href": IListMenuItem['href'];
3862
+ "newTab": IListMenuItem['newTab'];
3863
+ "download": IListMenuItem['download'];
3864
+ }
2012
3865
  interface BdsPopoverAttributes {
2013
3866
  "disabled": IPopover['disabled'];
2014
3867
  "width": string;
@@ -2016,10 +3869,62 @@ declare namespace LocalJSX {
2016
3869
  "footer": boolean;
2017
3870
  "closable": boolean;
2018
3871
  }
3872
+ interface BdsRadioAttributes {
3873
+ "checked": boolean;
3874
+ "disabled": boolean;
3875
+ "value": string;
3876
+ "name": string;
3877
+ "label": string;
3878
+ "error": boolean;
3879
+ "info": string;
3880
+ }
3881
+ interface BdsRadioButtonAttributes {
3882
+ "checked": boolean;
3883
+ "disabled": boolean;
3884
+ "error": boolean;
3885
+ "value": string;
3886
+ "name": string;
3887
+ "label": string;
3888
+ "info": string;
3889
+ }
3890
+ interface BdsRadioCardAttributes {
3891
+ "value": IRadioCard['value'];
3892
+ "info": IRadioCard['info'];
3893
+ "name": IRadioCard['name'];
3894
+ "label": IRadioCard['label'];
3895
+ "checked": IRadioCard['checked'];
3896
+ "disabled": IRadioCard['disabled'];
3897
+ "error": IRadioCard['error'];
3898
+ }
3899
+ interface BdsRadioGroupAttributes {
3900
+ "disabled": false;
3901
+ "error": false;
3902
+ "errorMessage": "";
3903
+ "helperText": "";
3904
+ "info": "";
3905
+ "label": "";
3906
+ "name": string;
3907
+ "orientation": Orientation;
3908
+ "required": false;
3909
+ "type": RadioGroupType;
3910
+ "value": string;
3911
+ }
2019
3912
  interface BdsSpinnerAttributes {
2020
3913
  "size": ISpinner['size'];
2021
3914
  "label": ISpinner['label'];
2022
3915
  }
3916
+ interface BdsStatusAttributes {
3917
+ "state": IStatus['state'];
3918
+ "indicator": IStatus['indicator'];
3919
+ }
3920
+ interface BdsTagAttributes {
3921
+ "multiselect": ITag['multiselect'];
3922
+ "selected": ITag['selected'];
3923
+ "closeButtonLabel": ITag['closeButtonLabel'];
3924
+ "color": ITag['color'];
3925
+ "readonly": ITag['readonly'];
3926
+ "disabled": ITag['disabled'];
3927
+ }
2023
3928
  interface BdsTextFieldAttributes {
2024
3929
  "name": string;
2025
3930
  "disabled": boolean;
@@ -2047,6 +3952,19 @@ declare namespace LocalJSX {
2047
3952
  "counter": boolean;
2048
3953
  "customWidth": string;
2049
3954
  }
3955
+ interface BdsToggleAttributes {
3956
+ "name": IToggle['name'];
3957
+ "disabled": IToggle['disabled'];
3958
+ "required": IToggle['required'];
3959
+ "info": IToggle['info'];
3960
+ "error": IToggle['error'];
3961
+ "errorMessage": IToggle['errorMessage'];
3962
+ "checked": IToggle['checked'];
3963
+ "placement": IToggle['placement'];
3964
+ "label": IToggle['label'];
3965
+ "helperText": IToggle['helperText'];
3966
+ "value": IToggle['value'];
3967
+ }
2050
3968
  interface BdsTooltipAttributes {
2051
3969
  "multiline": ITooltip['multiline'];
2052
3970
  "disabled": ITooltip['disabled'];
@@ -2061,23 +3979,39 @@ declare namespace LocalJSX {
2061
3979
  "ellipsis": ITypography['ellipsis'];
2062
3980
  "maxLines": ITypography['maxLines'];
2063
3981
  "tooltipText": ITypography['tooltipText'];
2064
- "isRequired": ITypography['isRequired'];
3982
+ "required": ITypography['required'];
2065
3983
  "htmlFor": ITypography['htmlFor'];
2066
3984
  "href": ITypography['href'];
2067
3985
  "target": ITypography['target'];
2068
- "isDownloadable": ITypography['isDownloadable'];
3986
+ "downloadable": ITypography['downloadable'];
2069
3987
  "filename": ITypography['filename'];
2070
3988
  }
2071
3989
 
2072
3990
  interface IntrinsicElements {
3991
+ "bds-avatar": Omit<BdsAvatar, keyof BdsAvatarAttributes> & { [K in keyof BdsAvatar & keyof BdsAvatarAttributes]?: BdsAvatar[K] } & { [K in keyof BdsAvatar & keyof BdsAvatarAttributes as `attr:${K}`]?: BdsAvatarAttributes[K] } & { [K in keyof BdsAvatar & keyof BdsAvatarAttributes as `prop:${K}`]?: BdsAvatar[K] };
3992
+ "bds-badge": Omit<BdsBadge, keyof BdsBadgeAttributes> & { [K in keyof BdsBadge & keyof BdsBadgeAttributes]?: BdsBadge[K] } & { [K in keyof BdsBadge & keyof BdsBadgeAttributes as `attr:${K}`]?: BdsBadgeAttributes[K] } & { [K in keyof BdsBadge & keyof BdsBadgeAttributes as `prop:${K}`]?: BdsBadge[K] };
2073
3993
  "bds-banner": Omit<BdsBanner, keyof BdsBannerAttributes> & { [K in keyof BdsBanner & keyof BdsBannerAttributes]?: BdsBanner[K] } & { [K in keyof BdsBanner & keyof BdsBannerAttributes as `attr:${K}`]?: BdsBannerAttributes[K] } & { [K in keyof BdsBanner & keyof BdsBannerAttributes as `prop:${K}`]?: BdsBanner[K] };
2074
3994
  "bds-button": Omit<BdsButton, keyof BdsButtonAttributes> & { [K in keyof BdsButton & keyof BdsButtonAttributes]?: BdsButton[K] } & { [K in keyof BdsButton & keyof BdsButtonAttributes as `attr:${K}`]?: BdsButtonAttributes[K] } & { [K in keyof BdsButton & keyof BdsButtonAttributes as `prop:${K}`]?: BdsButton[K] };
3995
+ "bds-button-group": Omit<BdsButtonGroup, keyof BdsButtonGroupAttributes> & { [K in keyof BdsButtonGroup & keyof BdsButtonGroupAttributes]?: BdsButtonGroup[K] } & { [K in keyof BdsButtonGroup & keyof BdsButtonGroupAttributes as `attr:${K}`]?: BdsButtonGroupAttributes[K] } & { [K in keyof BdsButtonGroup & keyof BdsButtonGroupAttributes as `prop:${K}`]?: BdsButtonGroup[K] };
2075
3996
  "bds-checkbox": Omit<BdsCheckbox, keyof BdsCheckboxAttributes> & { [K in keyof BdsCheckbox & keyof BdsCheckboxAttributes]?: BdsCheckbox[K] } & { [K in keyof BdsCheckbox & keyof BdsCheckboxAttributes as `attr:${K}`]?: BdsCheckboxAttributes[K] } & { [K in keyof BdsCheckbox & keyof BdsCheckboxAttributes as `prop:${K}`]?: BdsCheckbox[K] } & OneOf<"name", BdsCheckbox["name"], BdsCheckboxAttributes["name"]>;
3997
+ "bds-checkbox-card": Omit<BdsCheckboxCard, keyof BdsCheckboxCardAttributes> & { [K in keyof BdsCheckboxCard & keyof BdsCheckboxCardAttributes]?: BdsCheckboxCard[K] } & { [K in keyof BdsCheckboxCard & keyof BdsCheckboxCardAttributes as `attr:${K}`]?: BdsCheckboxCardAttributes[K] } & { [K in keyof BdsCheckboxCard & keyof BdsCheckboxCardAttributes as `prop:${K}`]?: BdsCheckboxCard[K] } & OneOf<"name", BdsCheckboxCard["name"], BdsCheckboxCardAttributes["name"]>;
2076
3998
  "bds-dialog": Omit<BdsDialog, keyof BdsDialogAttributes> & { [K in keyof BdsDialog & keyof BdsDialogAttributes]?: BdsDialog[K] } & { [K in keyof BdsDialog & keyof BdsDialogAttributes as `attr:${K}`]?: BdsDialogAttributes[K] } & { [K in keyof BdsDialog & keyof BdsDialogAttributes as `prop:${K}`]?: BdsDialog[K] };
3999
+ "bds-divider": Omit<BdsDivider, keyof BdsDividerAttributes> & { [K in keyof BdsDivider & keyof BdsDividerAttributes]?: BdsDivider[K] } & { [K in keyof BdsDivider & keyof BdsDividerAttributes as `attr:${K}`]?: BdsDividerAttributes[K] } & { [K in keyof BdsDivider & keyof BdsDividerAttributes as `prop:${K}`]?: BdsDivider[K] };
2077
4000
  "bds-flag": Omit<BdsFlag, keyof BdsFlagAttributes> & { [K in keyof BdsFlag & keyof BdsFlagAttributes]?: BdsFlag[K] } & { [K in keyof BdsFlag & keyof BdsFlagAttributes as `attr:${K}`]?: BdsFlagAttributes[K] } & { [K in keyof BdsFlag & keyof BdsFlagAttributes as `prop:${K}`]?: BdsFlag[K] };
4001
+ "bds-grid": Omit<BdsGrid, keyof BdsGridAttributes> & { [K in keyof BdsGrid & keyof BdsGridAttributes]?: BdsGrid[K] } & { [K in keyof BdsGrid & keyof BdsGridAttributes as `attr:${K}`]?: BdsGridAttributes[K] } & { [K in keyof BdsGrid & keyof BdsGridAttributes as `prop:${K}`]?: BdsGrid[K] };
4002
+ "bds-grid-item": Omit<BdsGridItem, keyof BdsGridItemAttributes> & { [K in keyof BdsGridItem & keyof BdsGridItemAttributes]?: BdsGridItem[K] } & { [K in keyof BdsGridItem & keyof BdsGridItemAttributes as `attr:${K}`]?: BdsGridItemAttributes[K] } & { [K in keyof BdsGridItem & keyof BdsGridItemAttributes as `prop:${K}`]?: BdsGridItem[K] };
4003
+ "bds-list-menu": Omit<BdsListMenu, keyof BdsListMenuAttributes> & { [K in keyof BdsListMenu & keyof BdsListMenuAttributes]?: BdsListMenu[K] } & { [K in keyof BdsListMenu & keyof BdsListMenuAttributes as `attr:${K}`]?: BdsListMenuAttributes[K] } & { [K in keyof BdsListMenu & keyof BdsListMenuAttributes as `prop:${K}`]?: BdsListMenu[K] };
4004
+ "bds-list-menu-item": Omit<BdsListMenuItem, keyof BdsListMenuItemAttributes> & { [K in keyof BdsListMenuItem & keyof BdsListMenuItemAttributes]?: BdsListMenuItem[K] } & { [K in keyof BdsListMenuItem & keyof BdsListMenuItemAttributes as `attr:${K}`]?: BdsListMenuItemAttributes[K] } & { [K in keyof BdsListMenuItem & keyof BdsListMenuItemAttributes as `prop:${K}`]?: BdsListMenuItem[K] };
2078
4005
  "bds-popover": Omit<BdsPopover, keyof BdsPopoverAttributes> & { [K in keyof BdsPopover & keyof BdsPopoverAttributes]?: BdsPopover[K] } & { [K in keyof BdsPopover & keyof BdsPopoverAttributes as `attr:${K}`]?: BdsPopoverAttributes[K] } & { [K in keyof BdsPopover & keyof BdsPopoverAttributes as `prop:${K}`]?: BdsPopover[K] };
4006
+ "bds-radio": Omit<BdsRadio, keyof BdsRadioAttributes> & { [K in keyof BdsRadio & keyof BdsRadioAttributes]?: BdsRadio[K] } & { [K in keyof BdsRadio & keyof BdsRadioAttributes as `attr:${K}`]?: BdsRadioAttributes[K] } & { [K in keyof BdsRadio & keyof BdsRadioAttributes as `prop:${K}`]?: BdsRadio[K] };
4007
+ "bds-radio-button": Omit<BdsRadioButton, keyof BdsRadioButtonAttributes> & { [K in keyof BdsRadioButton & keyof BdsRadioButtonAttributes]?: BdsRadioButton[K] } & { [K in keyof BdsRadioButton & keyof BdsRadioButtonAttributes as `attr:${K}`]?: BdsRadioButtonAttributes[K] } & { [K in keyof BdsRadioButton & keyof BdsRadioButtonAttributes as `prop:${K}`]?: BdsRadioButton[K] };
4008
+ "bds-radio-card": Omit<BdsRadioCard, keyof BdsRadioCardAttributes> & { [K in keyof BdsRadioCard & keyof BdsRadioCardAttributes]?: BdsRadioCard[K] } & { [K in keyof BdsRadioCard & keyof BdsRadioCardAttributes as `attr:${K}`]?: BdsRadioCardAttributes[K] } & { [K in keyof BdsRadioCard & keyof BdsRadioCardAttributes as `prop:${K}`]?: BdsRadioCard[K] };
4009
+ "bds-radio-group": Omit<BdsRadioGroup, keyof BdsRadioGroupAttributes> & { [K in keyof BdsRadioGroup & keyof BdsRadioGroupAttributes]?: BdsRadioGroup[K] } & { [K in keyof BdsRadioGroup & keyof BdsRadioGroupAttributes as `attr:${K}`]?: BdsRadioGroupAttributes[K] } & { [K in keyof BdsRadioGroup & keyof BdsRadioGroupAttributes as `prop:${K}`]?: BdsRadioGroup[K] } & OneOf<"name", BdsRadioGroup["name"], BdsRadioGroupAttributes["name"]>;
2079
4010
  "bds-spinner": Omit<BdsSpinner, keyof BdsSpinnerAttributes> & { [K in keyof BdsSpinner & keyof BdsSpinnerAttributes]?: BdsSpinner[K] } & { [K in keyof BdsSpinner & keyof BdsSpinnerAttributes as `attr:${K}`]?: BdsSpinnerAttributes[K] } & { [K in keyof BdsSpinner & keyof BdsSpinnerAttributes as `prop:${K}`]?: BdsSpinner[K] };
4011
+ "bds-status": Omit<BdsStatus, keyof BdsStatusAttributes> & { [K in keyof BdsStatus & keyof BdsStatusAttributes]?: BdsStatus[K] } & { [K in keyof BdsStatus & keyof BdsStatusAttributes as `attr:${K}`]?: BdsStatusAttributes[K] } & { [K in keyof BdsStatus & keyof BdsStatusAttributes as `prop:${K}`]?: BdsStatus[K] };
4012
+ "bds-tag": Omit<BdsTag, keyof BdsTagAttributes> & { [K in keyof BdsTag & keyof BdsTagAttributes]?: BdsTag[K] } & { [K in keyof BdsTag & keyof BdsTagAttributes as `attr:${K}`]?: BdsTagAttributes[K] } & { [K in keyof BdsTag & keyof BdsTagAttributes as `prop:${K}`]?: BdsTag[K] };
2080
4013
  "bds-text-field": Omit<BdsTextField, keyof BdsTextFieldAttributes> & { [K in keyof BdsTextField & keyof BdsTextFieldAttributes]?: BdsTextField[K] } & { [K in keyof BdsTextField & keyof BdsTextFieldAttributes as `attr:${K}`]?: BdsTextFieldAttributes[K] } & { [K in keyof BdsTextField & keyof BdsTextFieldAttributes as `prop:${K}`]?: BdsTextField[K] };
4014
+ "bds-toggle": Omit<BdsToggle, keyof BdsToggleAttributes> & { [K in keyof BdsToggle & keyof BdsToggleAttributes]?: BdsToggle[K] } & { [K in keyof BdsToggle & keyof BdsToggleAttributes as `attr:${K}`]?: BdsToggleAttributes[K] } & { [K in keyof BdsToggle & keyof BdsToggleAttributes as `prop:${K}`]?: BdsToggle[K] } & OneOf<"name", BdsToggle["name"], BdsToggleAttributes["name"]>;
2081
4015
  "bds-tooltip": Omit<BdsTooltip, keyof BdsTooltipAttributes> & { [K in keyof BdsTooltip & keyof BdsTooltipAttributes]?: BdsTooltip[K] } & { [K in keyof BdsTooltip & keyof BdsTooltipAttributes as `attr:${K}`]?: BdsTooltipAttributes[K] } & { [K in keyof BdsTooltip & keyof BdsTooltipAttributes as `prop:${K}`]?: BdsTooltip[K] };
2082
4016
  "bds-typography": Omit<BdsTypography, keyof BdsTypographyAttributes> & { [K in keyof BdsTypography & keyof BdsTypographyAttributes]?: BdsTypography[K] } & { [K in keyof BdsTypography & keyof BdsTypographyAttributes as `attr:${K}`]?: BdsTypographyAttributes[K] } & { [K in keyof BdsTypography & keyof BdsTypographyAttributes as `prop:${K}`]?: BdsTypography[K] };
2083
4017
  }
@@ -2086,6 +4020,31 @@ export { LocalJSX as JSX };
2086
4020
  declare module "@stencil/core" {
2087
4021
  export namespace JSX {
2088
4022
  interface IntrinsicElements {
4023
+ /**
4024
+ * Avatar component used to display user initials or names for visual identification.
4025
+ * @summary Displays a circular avatar with user initials and optional name label.
4026
+ * Uses Boreal Design System tokens for consistent styling across platforms.
4027
+ * @attr {string} username - The full name used to generate initials or display as label.
4028
+ * @attr {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
4029
+ * @attr {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
4030
+ * @attr {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
4031
+ * @property {string} username - The full name used to generate initials or display as label.
4032
+ * @property {"icon"|"name"|"full"} variant - Controls which avatar elements are displayed: icon (initials), name, or both.
4033
+ * @property {string} background - Custom background color (hex code), defaults to $boreal-ui-success-base.
4034
+ * @property {string} initialsColor - Custom initials text color (hex code), defaults to $boreal-text-inverse.
4035
+ * @cssprop --bds-avatar-background - Custom background color HEX code.
4036
+ * @cssprop --bds-avatar-initials-color - Custom text color HEX code.
4037
+ */
4038
+ "bds-avatar": LocalJSX.IntrinsicElements["bds-avatar"] & JSXBase.HTMLAttributes<HTMLBdsAvatarElement>;
4039
+ /**
4040
+ * Badge component for displaying contextual status information with optional icon support.
4041
+ * @summary A compact label component that communicates status or category using color-coded variants. Supports an optional icon slot and a disabled state.
4042
+ * @attr {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
4043
+ * @attr {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
4044
+ * @property {string} variant - Controls the visual style of the badge. Accepted values: 'default' | 'info' | 'success' | 'warning' | 'danger'. Default is 'default'.
4045
+ * @property {boolean} disabled - Disables the badge when true, reducing opacity and preventing pointer interaction. Default is false.
4046
+ */
4047
+ "bds-badge": LocalJSX.IntrinsicElements["bds-badge"] & JSXBase.HTMLAttributes<HTMLBdsBadgeElement>;
2089
4048
  /**
2090
4049
  * Banner component used to display important messages with different status variants.
2091
4050
  * @summary Displays a dismissible banner with an icon, title, body content, and optional actions.
@@ -2094,8 +4053,8 @@ declare module "@stencil/core" {
2094
4053
  * @property {"info"|"success"|"warning"|"danger"} variant - Visual style variant: 'info', 'success', 'warning', or 'danger'. Defaults to "info".
2095
4054
  * @property {boolean} closable - Shows a close button that allows users to close the banner. Defaults to false.
2096
4055
  * @property {boolean} closeButtonLabel - Aria label for the close button when visible.
2097
- * @fires bdsClose - Emitted when the banner is closed via the close button or `closeBanner` method.
2098
- * @method closeBanner - Programmatic method to close the banner and emit the `bdsClose` event.
4056
+ * @fires bdsClose - Emitted when the banner is closed via the close button or `close` method.
4057
+ * @method close - Programmatic method to close the banner and emit the `bdsClose` event.
2099
4058
  */
2100
4059
  "bds-banner": LocalJSX.IntrinsicElements["bds-banner"] & JSXBase.HTMLAttributes<HTMLBdsBannerElement>;
2101
4060
  /**
@@ -2107,7 +4066,7 @@ declare module "@stencil/core" {
2107
4066
  * @attr {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
2108
4067
  * @attr {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
2109
4068
  * @attr {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
2110
- * @attr {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
4069
+ * @attr {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
2111
4070
  * @attr {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
2112
4071
  * @attr {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
2113
4072
  * @property {string} label - The accessible name for the button, used for screen readers. It should be provided by the user for accessibility purposes.
@@ -2116,13 +4075,13 @@ declare module "@stencil/core" {
2116
4075
  * @property {string} type - The type of the button, which can be 'button', 'submit', or 'reset'. Default is 'button'.
2117
4076
  * @property {string} color - The color theme of the button, which can be 'default', 'primary', 'success', or 'error'. Default is 'default'.
2118
4077
  * @property {string} variant - The visual style of the button, which can be 'default', 'outline', or 'plain'. Default is 'default'.
2119
- * @property {string} size - The size of the button, which can be 'small', 'medium', or 'large'. Default is 'medium'.
4078
+ * @property {string} size - The size of the button, which can be 'sm', 'md', or 'lg'. Default is 'md'.
2120
4079
  * @property {boolean} loading - Indicates whether the button is in a loading state, which can be used to show a loading spinner and disable the button. Default is false.
2121
4080
  * @property {boolean} disclosure - Indicates if the button should show a chevron down at the end of the content.
2122
4081
  * @default 'button' - Default type value
2123
4082
  * @default 'default' - Default color value
2124
4083
  * @default 'default' - Default variant value
2125
- * @default 'medium' - Default size value
4084
+ * @default 'md' - Default size value
2126
4085
  * @default 'default' - Default status value
2127
4086
  * @default false - Default disabled value
2128
4087
  * @default '' - Default label value
@@ -2131,6 +4090,10 @@ declare module "@stencil/core" {
2131
4090
  * @default false - Default disclosure value
2132
4091
  */
2133
4092
  "bds-button": LocalJSX.IntrinsicElements["bds-button"] & JSXBase.HTMLAttributes<HTMLBdsButtonElement>;
4093
+ /**
4094
+ * Button group component for grouping related buttons together in a unified visual unit.
4095
+ */
4096
+ "bds-button-group": LocalJSX.IntrinsicElements["bds-button-group"] & JSXBase.HTMLAttributes<HTMLBdsButtonGroupElement>;
2134
4097
  /**
2135
4098
  * Checkbox component for boolean selection with three visual states.
2136
4099
  * @summary A checkbox form control with default, selected, and indeterminate states.
@@ -2143,6 +4106,23 @@ declare module "@stencil/core" {
2143
4106
  * @fires bdsChange - Emitted when the user toggles the checkbox. Payload: `{ checked: boolean, value: string }`.
2144
4107
  */
2145
4108
  "bds-checkbox": LocalJSX.IntrinsicElements["bds-checkbox"] & JSXBase.HTMLAttributes<HTMLBdsCheckboxElement>;
4109
+ /**
4110
+ * Checkbox card component is a selectable card-based checkbox option.
4111
+ * It presents a non-exclusive choice with optional descriptive text and icon,
4112
+ * supporting checked, indeterminate, disabled, and error states.
4113
+ * Can be used standalone or within a checkbox group for orchestration.
4114
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
4115
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
4116
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
4117
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
4118
+ * @property {string} label - Label displayed next to the checkbox. If not provided, the default slot is used.
4119
+ * @property {boolean} checked - Whether the checkbox card is selected. Defaults to `false`.
4120
+ * @property {boolean} indeterminate - Whether the checkbox card shows an indeterminate ("mixed") visual state. Defaults to `false`.
4121
+ * @property {boolean} error - Whether the checkbox card is in an error state. Defaults to `false`.
4122
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
4123
+ * @fires bdsChange - Emitted when the user toggles the checkbox card. Payload: `{ checked: boolean, value: string }`.
4124
+ */
4125
+ "bds-checkbox-card": LocalJSX.IntrinsicElements["bds-checkbox-card"] & JSXBase.HTMLAttributes<HTMLBdsCheckboxCardElement>;
2146
4126
  /**
2147
4127
  * Modal dialog component for displaying content in an overlay.
2148
4128
  * @summary Modal overlay for alerts, forms, and confirmations with customizable layout and behavior.
@@ -2179,6 +4159,14 @@ declare module "@stencil/core" {
2179
4159
  * @cssprop --bds-dialog-height - Custom height for the dialog.
2180
4160
  */
2181
4161
  "bds-dialog": LocalJSX.IntrinsicElements["bds-dialog"] & JSXBase.HTMLAttributes<HTMLBdsDialogElement>;
4162
+ /**
4163
+ * Divider component for creating visual separators between content sections.
4164
+ * @summary A simple visual separator that can be oriented horizontally or vertically.
4165
+ * @csspart divider - A divider element that visually separates content.
4166
+ * @attr {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
4167
+ * @property {DividerOrientation} orientation - The orientation of the divider (horizontal or vertical)
4168
+ */
4169
+ "bds-divider": LocalJSX.IntrinsicElements["bds-divider"] & JSXBase.HTMLAttributes<HTMLBdsDividerElement>;
2182
4170
  /**
2183
4171
  * Flag component used to display a country flag together with its corresponding label.
2184
4172
  * @summary Renders a flag icon based on a country identifier and optionally displays
@@ -2202,6 +4190,60 @@ declare module "@stencil/core" {
2202
4190
  * @property {ICountry[]} customFlags - List of custom flag definitions merged with the default catalog. Defaults to `[]`.
2203
4191
  */
2204
4192
  "bds-flag": LocalJSX.IntrinsicElements["bds-flag"] & JSXBase.HTMLAttributes<HTMLBdsFlagElement>;
4193
+ /**
4194
+ * 12-column CSS Grid layout container with 5 responsive breakpoints.
4195
+ * Minimum browser support: Chrome/Edge (last 2), Firefox (last 2), Safari (last 2).
4196
+ */
4197
+ "bds-grid": LocalJSX.IntrinsicElements["bds-grid"] & JSXBase.HTMLAttributes<HTMLBdsGridElement>;
4198
+ /**
4199
+ * Grid item child of `bds-grid`. Must be a direct child of `bds-grid`.
4200
+ */
4201
+ "bds-grid-item": LocalJSX.IntrinsicElements["bds-grid-item"] & JSXBase.HTMLAttributes<HTMLBdsGridItemElement>;
4202
+ /**
4203
+ * Container component that manages a list of menu items.
4204
+ * It handles selection logic (single/multiple) and maintains the data state.
4205
+ * @summary A list menu component that can contain multiple menu items and manage their selection state.
4206
+ * @fires bdsChange - Emitted when the selection changes, providing the current selected value(s).
4207
+ * @fires bdsSelect - Emmited when item is selected in menu-role="menu" is clicked
4208
+ * @method getSelectedValues - Returns the currently selected value(s). If multiple is true, returns an array of strings; otherwise, returns a single string or undefined.
4209
+ * @method setSelectedValues - Sets the selected value(s). Accepts a string for single selection or an array of strings for multiple selection.
4210
+ */
4211
+ "bds-list-menu": LocalJSX.IntrinsicElements["bds-list-menu"] & JSXBase.HTMLAttributes<HTMLBdsListMenuElement>;
4212
+ /**
4213
+ * Component representing an individual item within a list menu for navigations and selection.
4214
+ * @summary A menu item component that supports different variants, disabled state, and selection state, it also supports link behavior when the href prop is provided.
4215
+ * @attr {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
4216
+ * @attr {string} name - The name of the list menu item.
4217
+ * @attr {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
4218
+ * @attr {boolean} selected - If true, the menu item is styled as selected.
4219
+ * @attr {boolean} activeItem - If true, the menu item is styled as active.
4220
+ * @attr {string} value - The value associated with the menu item, emitted in events when activated.\
4221
+ * @attr {string} href - The URL for the link. If provided, the menu item will behave as a link.
4222
+ * @attr {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
4223
+ * @attr {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
4224
+ * @attr {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
4225
+ * @property {string} variant - Defines the visual style of the list menu item. Can be 'button' or 'label'. Default is 'button'.
4226
+ * @property {string} name - The name of the list menu item.
4227
+ * @property {boolean} disabled - If true, the menu item is non-interactive and styled as disabled.
4228
+ * @property {boolean} selected - If true, the menu item is styled as selected.
4229
+ * @property {boolean} activeItem - If true, the menu item is styled as active.
4230
+ * @property {string} value - The value associated with the menu item, emitted in events when activated.
4231
+ * @property {string} href - The URL for the link. If provided, the menu item will behave as a link.
4232
+ * @property {boolean} newTab - If true, the link will open in a new tab. Only applicable if href is provided.
4233
+ * @property {boolean} downloadable - If true, the link will be treated as a download link. Only applicable if href is provided.
4234
+ * @property {string} filename - The suggested filename for the download. Only applicable if downloadable is true.
4235
+ * @default 'button' - The default variant for the menu item is 'button', which is a standard clickable item.
4236
+ * @default '' - By default, the name of the menu item is an empty string.
4237
+ * @default false - By default, the menu item is not disabled and is interactive.
4238
+ * @default false - By default, the menu item is not selected.
4239
+ * @default false - By default, the menu item is not active.
4240
+ * @default '' - By default, the value of the menu item is an empty string.
4241
+ * @default '' - By default, the href is an empty string, meaning the menu item will not behave as a link.
4242
+ * @default false - By default, the newTab property is false, meaning links will open in the same tab.
4243
+ * @default false - By default, the downloadable property is false, meaning links will not be treated as download links.
4244
+ * @default '' - By default, the filename is an empty string, meaning no suggested filename for downloads.
4245
+ */
4246
+ "bds-list-menu-item": LocalJSX.IntrinsicElements["bds-list-menu-item"] & JSXBase.HTMLAttributes<HTMLBdsListMenuItemElement>;
2205
4247
  /**
2206
4248
  * @attr {boolean} disabled - When true, prevents the popover from being shown.
2207
4249
  * @attr {number | 'full' | 'auto'} width - Controls the width of the popover content.
@@ -2216,6 +4258,30 @@ declare module "@stencil/core" {
2216
4258
  * @cssprop data-hidearrow - Reflects the hideArrow option.
2217
4259
  */
2218
4260
  "bds-popover": LocalJSX.IntrinsicElements["bds-popover"] & JSXBase.HTMLAttributes<HTMLBdsPopoverElement>;
4261
+ /**
4262
+ * Radio button component for single-selection within a group.
4263
+ * Use inside `bds-radio-group` for managed selection and form binding.
4264
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
4265
+ */
4266
+ "bds-radio": LocalJSX.IntrinsicElements["bds-radio"] & JSXBase.HTMLAttributes<HTMLBdsRadioElement>;
4267
+ /**
4268
+ * Button-shaped radio option for use inside `bds-radio-group[type="radiobutton"]`.
4269
+ * Creates a segmented control appearance when grouped. Not form-associated — the parent
4270
+ * `bds-radio-group` owns form state and single-selection enforcement.
4271
+ */
4272
+ "bds-radio-button": LocalJSX.IntrinsicElements["bds-radio-button"] & JSXBase.HTMLAttributes<HTMLBdsRadioButtonElement>;
4273
+ /**
4274
+ * Radio card component is a selectable card-based radio option.
4275
+ * It presents a mutually exclusive choice with optional descriptive text and icon,
4276
+ * designed for integration with bds-radio-group for orchestration.
4277
+ * Can also be used standalone with the `name`, `value`, and `checked` props.
4278
+ * @fires bdsChange - Emitted when the user selects this radio card. Listened to by the parent bds-radio-group to enforce single selection.
4279
+ */
4280
+ "bds-radio-card": LocalJSX.IntrinsicElements["bds-radio-card"] & JSXBase.HTMLAttributes<HTMLBdsRadioCardElement>;
4281
+ /**
4282
+ * Radio group component that orchestrates single-selection across a set of `bds-radio` children.
4283
+ */
4284
+ "bds-radio-group": LocalJSX.IntrinsicElements["bds-radio-group"] & JSXBase.HTMLAttributes<HTMLBdsRadioGroupElement>;
2219
4285
  /**
2220
4286
  * Spinner component used to indicate a loading or processing state.
2221
4287
  * @summary Displays an animated circular spinner to communicate that content is loading.
@@ -2225,6 +4291,17 @@ declare module "@stencil/core" {
2225
4291
  * @property {string} label - Text used as the accessible label for screen readers.
2226
4292
  */
2227
4293
  "bds-spinner": LocalJSX.IntrinsicElements["bds-spinner"] & JSXBase.HTMLAttributes<HTMLBdsSpinnerElement>;
4294
+ /**
4295
+ * Status badge component for communicating the current state of an item or process.
4296
+ */
4297
+ "bds-status": LocalJSX.IntrinsicElements["bds-status"] & JSXBase.HTMLAttributes<HTMLBdsStatusElement>;
4298
+ /**
4299
+ * Tag component used to represent categories, metadata, or removable filters.
4300
+ * @summary Displays a label with optional leading/trailing icons and dismissal capability.
4301
+ * @fires bdsClose - Emitted when the tag is closed via the close button or Delete key.
4302
+ * @fires bdsSelect - Emitted when the tag is selected via a click or Space/Enter key.
4303
+ */
4304
+ "bds-tag": LocalJSX.IntrinsicElements["bds-tag"] & JSXBase.HTMLAttributes<HTMLBdsTagElement>;
2228
4305
  /**
2229
4306
  * Text field component for user input with validation and form integration.
2230
4307
  * @summary Single-line text input with label, validation, password toggle, and clear action.
@@ -2266,6 +4343,21 @@ declare module "@stencil/core" {
2266
4343
  * @cssprop --bds-text-field-width - Sets a custom width for the component.
2267
4344
  */
2268
4345
  "bds-text-field": LocalJSX.IntrinsicElements["bds-text-field"] & JSXBase.HTMLAttributes<HTMLBdsTextFieldElement>;
4346
+ /**
4347
+ * Toggle/Switch component for boolean selection.
4348
+ * @summary A toggle switch form control with label positioning support.
4349
+ * @property {string} name - Name of the form control, submitted as a key in the form data.
4350
+ * @property {boolean} disabled - Disables the control. Defaults to `false`.
4351
+ * @property {boolean} required - Marks the control as required for form submission. Defaults to `false`.
4352
+ * @property {boolean} checked - Whether the toggle is on. Defaults to `false`.
4353
+ * @property {string} placement - Position of the label relative to the switch. Accepts `TOGGLE_PLACEMENT` values. Defaults to `"left"`.
4354
+ * @property {string} label - Label displayed next to the toggle. Defaults to `""`.
4355
+ * @property {string} helperText - Help text displayed below the toggle. Defaults to `""`.
4356
+ * @property {string} value - Value submitted with the form data when checked. Defaults to `"on"`.
4357
+ * @fires valueChange - Emitted when the checked state changes (for 2-way binding / v-model). Payload: `boolean`.
4358
+ * @fires bdsChange - Emitted when the user toggles the switch. Payload: `IToggleEventChange`.
4359
+ */
4360
+ "bds-toggle": LocalJSX.IntrinsicElements["bds-toggle"] & JSXBase.HTMLAttributes<HTMLBdsToggleElement>;
2269
4361
  /**
2270
4362
  * Tooltip component that displays a short label anchored to a trigger element on hover.
2271
4363
  * @summary Displays a floating tooltip anchored to a trigger element on mouseenter/mouseleave,
@@ -2288,12 +4380,12 @@ declare module "@stencil/core" {
2288
4380
  * @attr {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
2289
4381
  * @attr {string} align - The text alignment. Options: start, center, end, inherit
2290
4382
  * @attr {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
2291
- * @attr {boolean} is-required - Shows a required indicator when used with `label` variant.
4383
+ * @attr {boolean} required - Shows a required indicator when used with `label` variant.
2292
4384
  * @attr {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
2293
4385
  * @attr {number} max-lines - Maximum number of lines to show before truncating with ellipsis.
2294
4386
  * @attr {string} href - URL when the typography is an `a` element and a `link` variant.
2295
4387
  * @attr {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
2296
- * @attr {boolean} is-downloadable - Makes the `link` download a file.
4388
+ * @attr {boolean} downloadable - Makes the `link` download a file.
2297
4389
  * @attr {string} filename - Suggested filename when downloading a file from the `link`.
2298
4390
  * @attr {string} html-for - The for attribute when rendered as a label
2299
4391
  * @attr {string} tooltip-text - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -2303,12 +4395,12 @@ declare module "@stencil/core" {
2303
4395
  * @property {string} state - The state of the typography. Only available for the `helper` and `label` variants. Options: default, error, disabled, hover, active, focus, visited
2304
4396
  * @property {string} align - The text alignment. Options: start, center, end, inherit
2305
4397
  * @property {string} size - The size of the typography. For `display` variant all options are available (`xl`, `lg`, `md`, `sm`), while for `link` variant only `md` and `sm` are available.
2306
- * @property {boolean} isRequired - Shows a required indicator when used with `label` variant.
4398
+ * @property {boolean} required - Shows a required indicator when used with `label` variant.
2307
4399
  * @property {boolean} ellipsis - Truncates text with an ellipsis when it overflows.
2308
4400
  * @property {number} maxLines - Maximum number of lines to show before truncating with ellipsis.
2309
4401
  * @property {string} href - URL when the typography is an `a` element and a `link` variant.
2310
4402
  * @property {string} target - Specifies where to open the link. Options: _self, _blank, _top, _parent
2311
- * @property {boolean} isDownloadable - Makes the `link` download a file.
4403
+ * @property {boolean} downloadable - Makes the `link` download a file.
2312
4404
  * @property {string} filename - Suggested filename when downloading a file from the `link`.
2313
4405
  * @property {string} htmlFor - The for attribute when rendered as a label
2314
4406
  * @property {string} tooltipText - Text to display inside the tooltip when hovering the info icon. Only applicable for `heading`, `subheading`, and `label` variants.
@@ -2318,12 +4410,12 @@ declare module "@stencil/core" {
2318
4410
  * @default 'start' - Default align value
2319
4411
  * @default 'md' - Default size value
2320
4412
  * @default 'default' - Default state value
2321
- * @default false - Default isRequired state
4413
+ * @default false - Default required state
2322
4414
  * @default false - Default ellipsis state
2323
4415
  * @default 1 - Default maxLines value
2324
4416
  * @default '' - Default href value
2325
4417
  * @default '' - Default target value
2326
- * @default false - Default isDownloadable state
4418
+ * @default false - Default downloadable state
2327
4419
  * @default 'download' - Default filename value
2328
4420
  * @default '' - Default tooltipText value
2329
4421
  */