@tylertech/forge-ai 0.15.3-dev.1 → 0.16.0-dev.0

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 (446) hide show
  1. package/MIGRATION.md +192 -0
  2. package/README.md +76 -2
  3. package/custom-elements.json +5757 -15411
  4. package/dist/_virtual/_@oxc-project_runtime@0.154.0/helpers/esm/decorate.mjs +9 -0
  5. package/dist/ai-agent-info/ai-agent-info.mjs +4 -78
  6. package/dist/ai-agent-info/ai-agent-info2.mjs +55 -0
  7. package/dist/ai-agent-info/index.d.ts +1 -1
  8. package/dist/ai-agent-info/index.mjs +1 -5
  9. package/dist/ai-agent-selector/ai-agent-selector.d.ts +2 -2
  10. package/dist/ai-agent-selector/ai-agent-selector.mjs +4 -439
  11. package/dist/ai-agent-selector/ai-agent-selector2.mjs +344 -0
  12. package/dist/ai-agent-selector/index.mjs +1 -5
  13. package/dist/ai-artifact/ai-artifact.mjs +4 -39
  14. package/dist/ai-artifact/ai-artifact2.mjs +31 -0
  15. package/dist/ai-artifact/index.d.ts +1 -1
  16. package/dist/ai-artifact/index.mjs +1 -5
  17. package/dist/ai-artifact-card/ai-artifact-card.mjs +4 -142
  18. package/dist/ai-artifact-card/ai-artifact-card2.mjs +103 -0
  19. package/dist/ai-artifact-card/index.d.ts +1 -1
  20. package/dist/ai-artifact-card/index.mjs +1 -5
  21. package/dist/ai-artifact-card-group/ai-artifact-card-group.mjs +4 -137
  22. package/dist/ai-artifact-card-group/ai-artifact-card-group2.mjs +100 -0
  23. package/dist/ai-artifact-card-group/index.d.ts +1 -1
  24. package/dist/ai-artifact-card-group/index.mjs +1 -5
  25. package/dist/ai-assistant-response/ai-assistant-response.d.ts +1 -2
  26. package/dist/ai-assistant-response/ai-assistant-response.mjs +4 -236
  27. package/dist/ai-assistant-response/ai-assistant-response2.mjs +137 -0
  28. package/dist/ai-assistant-response/index.d.ts +1 -1
  29. package/dist/ai-assistant-response/index.mjs +1 -5
  30. package/dist/ai-canvas/ai-canvas.d.ts +3 -3
  31. package/dist/ai-canvas/ai-canvas.mjs +4 -95
  32. package/dist/ai-canvas/ai-canvas2.mjs +74 -0
  33. package/dist/ai-canvas/index.d.ts +1 -1
  34. package/dist/ai-canvas/index.mjs +1 -5
  35. package/dist/ai-chain-of-thought/ai-chain-of-thought.mjs +4 -45
  36. package/dist/ai-chain-of-thought/ai-chain-of-thought2.mjs +35 -0
  37. package/dist/ai-chain-of-thought/index.d.ts +5 -5
  38. package/dist/ai-chain-of-thought/index.mjs +6 -17
  39. package/dist/ai-chain-of-thought/thought-base/index.mjs +1 -5
  40. package/dist/ai-chain-of-thought/thought-base/thought-base.mjs +4 -43
  41. package/dist/ai-chain-of-thought/thought-base/thought-base2.mjs +31 -0
  42. package/dist/ai-chain-of-thought/thought-detail/index.mjs +1 -5
  43. package/dist/ai-chain-of-thought/thought-detail/thought-detail.mjs +4 -34
  44. package/dist/ai-chain-of-thought/thought-detail/thought-detail2.mjs +26 -0
  45. package/dist/ai-chain-of-thought/thought-image/index.mjs +1 -5
  46. package/dist/ai-chain-of-thought/thought-image/thought-image.mjs +4 -43
  47. package/dist/ai-chain-of-thought/thought-image/thought-image2.mjs +30 -0
  48. package/dist/ai-chain-of-thought/thought-search-result/index.mjs +1 -5
  49. package/dist/ai-chain-of-thought/thought-search-result/thought-search-result.mjs +4 -62
  50. package/dist/ai-chain-of-thought/thought-search-result/thought-search-result2.mjs +45 -0
  51. package/dist/ai-chat-header/ai-chat-header.d.ts +7 -5
  52. package/dist/ai-chat-header/ai-chat-header.mjs +4 -439
  53. package/dist/ai-chat-header/ai-chat-header2.mjs +319 -0
  54. package/dist/ai-chat-header/index.d.ts +2 -2
  55. package/dist/ai-chat-header/index.mjs +1 -5
  56. package/dist/ai-chat-interface/ai-chat-interface.d.ts +1 -0
  57. package/dist/ai-chat-interface/ai-chat-interface.mjs +4 -103
  58. package/dist/ai-chat-interface/ai-chat-interface2.mjs +73 -0
  59. package/dist/ai-chat-interface/index.mjs +1 -5
  60. package/dist/ai-client-message/ai-client-message.d.ts +5 -6
  61. package/dist/ai-client-message/ai-client-message.mjs +4 -112
  62. package/dist/ai-client-message/ai-client-message2.mjs +76 -0
  63. package/dist/ai-client-message/index.mjs +1 -5
  64. package/dist/ai-context-chip/ai-context-chip.d.ts +1 -1
  65. package/dist/ai-context-chip/ai-context-chip.mjs +4 -169
  66. package/dist/ai-context-chip/ai-context-chip2.mjs +113 -0
  67. package/dist/ai-context-chip/index.mjs +1 -5
  68. package/dist/ai-context-items/ai-context-items.d.ts +11 -5
  69. package/dist/ai-context-items/ai-context-items.mjs +4 -78
  70. package/dist/ai-context-items/ai-context-items2.mjs +53 -0
  71. package/dist/ai-context-items/index.d.ts +1 -1
  72. package/dist/ai-context-items/index.mjs +1 -5
  73. package/dist/ai-conversations-panel/ai-conversations-panel.d.ts +2 -2
  74. package/dist/ai-conversations-panel/ai-conversations-panel.mjs +4 -632
  75. package/dist/ai-conversations-panel/ai-conversations-panel2.mjs +531 -0
  76. package/dist/ai-conversations-panel/index.mjs +1 -5
  77. package/dist/ai-copy-button/ai-copy-button.mjs +4 -116
  78. package/dist/ai-copy-button/ai-copy-button2.mjs +88 -0
  79. package/dist/ai-copy-button/index.mjs +1 -5
  80. package/dist/ai-dialog/ai-dialog.mjs +4 -304
  81. package/dist/ai-dialog/ai-dialog2.mjs +237 -0
  82. package/dist/ai-dialog/index.d.ts +1 -1
  83. package/dist/ai-dialog/index.mjs +1 -5
  84. package/dist/ai-disclaimer/ai-disclaimer.mjs +4 -70
  85. package/dist/ai-disclaimer/ai-disclaimer2.mjs +46 -0
  86. package/dist/ai-disclaimer/index.d.ts +1 -1
  87. package/dist/ai-disclaimer/index.mjs +1 -5
  88. package/dist/ai-dropdown-menu/ai-dropdown-menu-item-group.mjs +4 -80
  89. package/dist/ai-dropdown-menu/ai-dropdown-menu-item-group2.mjs +51 -0
  90. package/dist/ai-dropdown-menu/ai-dropdown-menu-item.d.ts +5 -1
  91. package/dist/ai-dropdown-menu/ai-dropdown-menu-item.mjs +4 -330
  92. package/dist/ai-dropdown-menu/ai-dropdown-menu-item2.mjs +280 -0
  93. package/dist/ai-dropdown-menu/ai-dropdown-menu-separator.mjs +4 -26
  94. package/dist/ai-dropdown-menu/ai-dropdown-menu-separator2.mjs +19 -0
  95. package/dist/ai-dropdown-menu/ai-dropdown-menu.d.ts +5 -0
  96. package/dist/ai-dropdown-menu/ai-dropdown-menu.mjs +4 -351
  97. package/dist/ai-dropdown-menu/ai-dropdown-menu2.mjs +268 -0
  98. package/dist/ai-dropdown-menu/index.d.ts +1 -0
  99. package/dist/ai-dropdown-menu/index.mjs +5 -10
  100. package/dist/ai-dropdown-menu/navigation-controller.d.ts +9 -1
  101. package/dist/ai-dropdown-menu/navigation-controller.mjs +214 -204
  102. package/dist/ai-dropdown-menu/selection-manager.mjs +202 -182
  103. package/dist/ai-edit-thread/ai-edit-thread.d.ts +1 -1
  104. package/dist/ai-edit-thread/ai-edit-thread.mjs +4 -137
  105. package/dist/ai-edit-thread/ai-edit-thread2.mjs +96 -0
  106. package/dist/ai-edit-thread/index.d.ts +1 -1
  107. package/dist/ai-edit-thread/index.mjs +1 -5
  108. package/dist/ai-empty-state/ai-empty-state.mjs +4 -38
  109. package/dist/ai-empty-state/ai-empty-state2.mjs +28 -0
  110. package/dist/ai-empty-state/index.d.ts +1 -1
  111. package/dist/ai-empty-state/index.mjs +1 -5
  112. package/dist/ai-error-message/ai-error-message.mjs +4 -80
  113. package/dist/ai-error-message/ai-error-message2.mjs +62 -0
  114. package/dist/ai-error-message/index.mjs +1 -5
  115. package/dist/ai-fab/ai-fab.mjs +4 -81
  116. package/dist/ai-fab/ai-fab2.mjs +54 -0
  117. package/dist/ai-fab/index.d.ts +1 -1
  118. package/dist/ai-fab/index.mjs +1 -5
  119. package/dist/ai-file-picker/ai-file-picker.d.ts +1 -0
  120. package/dist/ai-file-picker/ai-file-picker.mjs +4 -224
  121. package/dist/ai-file-picker/ai-file-picker2.mjs +172 -0
  122. package/dist/ai-file-picker/index.mjs +1 -4
  123. package/dist/ai-gradient-container/ai-gradient-container.mjs +4 -61
  124. package/dist/ai-gradient-container/ai-gradient-container2.mjs +38 -0
  125. package/dist/ai-gradient-container/index.d.ts +1 -1
  126. package/dist/ai-gradient-container/index.mjs +1 -5
  127. package/dist/ai-icon/ai-icon.d.ts +3 -0
  128. package/dist/ai-icon/ai-icon.mjs +4 -71
  129. package/dist/ai-icon/ai-icon2.mjs +41 -0
  130. package/dist/ai-icon/index.d.ts +1 -1
  131. package/dist/ai-icon/index.mjs +1 -5
  132. package/dist/ai-message-thread/ai-message-thread.d.ts +4 -3
  133. package/dist/ai-message-thread/ai-message-thread.mjs +4 -360
  134. package/dist/ai-message-thread/ai-message-thread2.mjs +279 -0
  135. package/dist/ai-message-thread/index.mjs +1 -5
  136. package/dist/ai-modal/ai-modal.mjs +4 -178
  137. package/dist/ai-modal/ai-modal2.mjs +141 -0
  138. package/dist/ai-modal/index.mjs +1 -4
  139. package/dist/ai-prompt/ai-prompt.d.ts +10 -6
  140. package/dist/ai-prompt/ai-prompt.mjs +4 -534
  141. package/dist/ai-prompt/ai-prompt2.mjs +438 -0
  142. package/dist/ai-prompt/index.mjs +1 -5
  143. package/dist/ai-reasoning/ai-reasoning.mjs +4 -44
  144. package/dist/ai-reasoning/ai-reasoning2.mjs +35 -0
  145. package/dist/ai-reasoning/index.d.ts +2 -2
  146. package/dist/ai-reasoning/index.mjs +4 -8
  147. package/dist/ai-reasoning/reasoning-content/index.d.ts +1 -1
  148. package/dist/ai-reasoning/reasoning-content/index.mjs +1 -5
  149. package/dist/ai-reasoning/reasoning-content/reasoning-content.mjs +4 -90
  150. package/dist/ai-reasoning/reasoning-content/reasoning-content2.mjs +68 -0
  151. package/dist/ai-reasoning-header/ai-reasoning-header.d.ts +7 -1
  152. package/dist/ai-reasoning-header/ai-reasoning-header.mjs +4 -68
  153. package/dist/ai-reasoning-header/ai-reasoning-header2.mjs +51 -0
  154. package/dist/ai-reasoning-header/index.d.ts +1 -1
  155. package/dist/ai-reasoning-header/index.mjs +1 -5
  156. package/dist/ai-response-message/ai-response-message.mjs +4 -25
  157. package/dist/ai-response-message/ai-response-message2.mjs +17 -0
  158. package/dist/ai-response-message/index.mjs +1 -5
  159. package/dist/ai-response-message-toolbar/ai-response-message-toolbar.d.ts +1 -1
  160. package/dist/ai-response-message-toolbar/ai-response-message-toolbar.mjs +4 -230
  161. package/dist/ai-response-message-toolbar/ai-response-message-toolbar2.mjs +171 -0
  162. package/dist/ai-response-message-toolbar/index.mjs +1 -5
  163. package/dist/ai-sidebar/ai-sidebar.d.ts +4 -4
  164. package/dist/ai-sidebar/ai-sidebar.mjs +4 -256
  165. package/dist/ai-sidebar/ai-sidebar2.mjs +211 -0
  166. package/dist/ai-sidebar/index.d.ts +2 -2
  167. package/dist/ai-sidebar/index.mjs +1 -5
  168. package/dist/ai-slash-command-menu/ai-slash-command-menu.d.ts +1 -1
  169. package/dist/ai-slash-command-menu/ai-slash-command-menu.mjs +4 -200
  170. package/dist/ai-slash-command-menu/ai-slash-command-menu2.mjs +156 -0
  171. package/dist/ai-slash-command-menu/index.mjs +1 -5
  172. package/dist/ai-spinner/ai-spinner.mjs +4 -41
  173. package/dist/ai-spinner/ai-spinner2.mjs +29 -0
  174. package/dist/ai-spinner/index.d.ts +1 -1
  175. package/dist/ai-spinner/index.mjs +1 -5
  176. package/dist/ai-steps/ai-steps.mjs +4 -163
  177. package/dist/ai-steps/ai-steps2.mjs +133 -0
  178. package/dist/ai-steps/index.d.ts +1 -1
  179. package/dist/ai-steps/index.mjs +1 -5
  180. package/dist/ai-suggestions/ai-suggestions.d.ts +2 -5
  181. package/dist/ai-suggestions/ai-suggestions.mjs +4 -164
  182. package/dist/ai-suggestions/ai-suggestions2.mjs +125 -0
  183. package/dist/ai-suggestions/index.d.ts +2 -1
  184. package/dist/ai-suggestions/index.mjs +1 -5
  185. package/dist/ai-thinking-indicator/ai-thinking-indicator.d.ts +2 -1
  186. package/dist/ai-thinking-indicator/ai-thinking-indicator.mjs +4 -160
  187. package/dist/ai-thinking-indicator/ai-thinking-indicator2.mjs +143 -0
  188. package/dist/ai-thinking-indicator/index.d.ts +1 -1
  189. package/dist/ai-thinking-indicator/index.mjs +1 -5
  190. package/dist/ai-thread-actions-menu/ai-thread-actions-menu.d.ts +2 -2
  191. package/dist/ai-thread-actions-menu/ai-thread-actions-menu.mjs +4 -152
  192. package/dist/ai-thread-actions-menu/ai-thread-actions-menu2.mjs +109 -0
  193. package/dist/ai-thread-actions-menu/index.d.ts +1 -1
  194. package/dist/ai-thread-actions-menu/index.mjs +1 -5
  195. package/dist/ai-threads-search/ai-threads-search.d.ts +3 -4
  196. package/dist/ai-threads-search/ai-threads-search.mjs +4 -602
  197. package/dist/ai-threads-search/ai-threads-search2.mjs +495 -0
  198. package/dist/ai-threads-search/index.d.ts +1 -1
  199. package/dist/ai-threads-search/index.mjs +1 -5
  200. package/dist/ai-tool-call/ai-tool-call.d.ts +21 -0
  201. package/dist/ai-tool-call/ai-tool-call.mjs +4 -0
  202. package/dist/ai-tool-call/ai-tool-call2.mjs +132 -0
  203. package/dist/{ai-chatbot → ai-tool-call}/create-tool-renderer.d.ts +1 -1
  204. package/dist/ai-tool-call/create-tool-renderer.mjs +10 -0
  205. package/dist/ai-tool-call/index.d.ts +6 -0
  206. package/dist/ai-tool-call/index.mjs +5 -0
  207. package/dist/{ai-chatbot → ai-tool-call}/tool-canvas.d.ts +1 -1
  208. package/dist/ai-tool-call/tool-canvas.mjs +135 -0
  209. package/dist/ai-tool-call/utils.d.ts +12 -0
  210. package/dist/ai-tool-call/utils.mjs +20 -0
  211. package/dist/ai-tool-call-indicator/ai-tool-call-indicator.d.ts +1 -1
  212. package/dist/ai-tool-call-indicator/ai-tool-call-indicator.mjs +4 -331
  213. package/dist/ai-tool-call-indicator/ai-tool-call-indicator2.mjs +225 -0
  214. package/dist/ai-tool-call-indicator/index.mjs +1 -5
  215. package/dist/ai-user-message/ai-user-message.mjs +4 -151
  216. package/dist/ai-user-message/ai-user-message2.mjs +105 -0
  217. package/dist/ai-user-message/index.mjs +1 -5
  218. package/dist/ai-user-message-toolbar/ai-user-message-toolbar.mjs +4 -160
  219. package/dist/ai-user-message-toolbar/ai-user-message-toolbar2.mjs +102 -0
  220. package/dist/ai-user-message-toolbar/index.mjs +1 -5
  221. package/dist/ai-voice-input/ai-voice-input.d.ts +1 -1
  222. package/dist/ai-voice-input/ai-voice-input.mjs +4 -113
  223. package/dist/ai-voice-input/ai-voice-input2.mjs +92 -0
  224. package/dist/ai-voice-input/index.d.ts +1 -1
  225. package/dist/ai-voice-input/index.mjs +1 -5
  226. package/dist/core/drag-controller.mjs +196 -221
  227. package/dist/core/index.d.ts +3 -2
  228. package/dist/core/index.mjs +7 -8
  229. package/dist/core/overlay/index.mjs +1 -4
  230. package/dist/core/overlay/overlay.d.ts +1 -1
  231. package/dist/core/overlay/overlay.mjs +4 -180
  232. package/dist/core/overlay/overlay2.mjs +146 -0
  233. package/dist/core/popover/index.mjs +1 -4
  234. package/dist/core/popover/popover.mjs +4 -98
  235. package/dist/core/popover/popover2.mjs +71 -0
  236. package/dist/core/resize-controller.mjs +132 -154
  237. package/dist/core/tooltip/index.mjs +1 -4
  238. package/dist/core/tooltip/tooltip.mjs +4 -279
  239. package/dist/core/tooltip/tooltip2.mjs +213 -0
  240. package/dist/index.d.ts +45 -53
  241. package/dist/index.mjs +100 -214
  242. package/dist/jsx.d.ts +895 -0
  243. package/dist/tools/ai-data-table/ai-data-table.d.ts +1 -2
  244. package/dist/tools/ai-data-table/ai-data-table.mjs +4 -257
  245. package/dist/tools/ai-data-table/ai-data-table2.mjs +185 -0
  246. package/dist/tools/ai-data-table/index.d.ts +0 -1
  247. package/dist/tools/ai-data-table/index.mjs +1 -6
  248. package/dist/tools/ai-paginator/ai-paginator.d.ts +14 -0
  249. package/dist/tools/ai-paginator/ai-paginator.mjs +4 -115
  250. package/dist/tools/ai-paginator/ai-paginator2.mjs +90 -0
  251. package/dist/tools/ai-paginator/index.mjs +1 -4
  252. package/dist/tools/ai-steps/ai-steps.d.ts +2 -3
  253. package/dist/tools/ai-steps/ai-steps.mjs +4 -49
  254. package/dist/tools/ai-steps/ai-steps2.mjs +30 -0
  255. package/dist/tools/ai-steps/index.d.ts +0 -1
  256. package/dist/tools/ai-steps/index.mjs +1 -6
  257. package/dist/tools/index.d.ts +3 -3
  258. package/dist/tools/index.mjs +7 -12
  259. package/dist/types/chat.d.ts +102 -0
  260. package/dist/types/feature.d.ts +1 -0
  261. package/dist/types/file.d.ts +36 -0
  262. package/dist/types/index.d.ts +6 -0
  263. package/dist/types/index.mjs +0 -0
  264. package/dist/types/thread.d.ts +14 -0
  265. package/dist/types/tool.d.ts +197 -0
  266. package/dist/utils/csv-utils.mjs +37 -57
  267. package/dist/utils/delete-thread-controller.d.ts +1 -1
  268. package/dist/utils/delete-thread-controller.mjs +48 -71
  269. package/dist/utils/dom.d.ts +14 -0
  270. package/dist/utils/dom.mjs +30 -0
  271. package/dist/utils/format.d.ts +9 -0
  272. package/dist/utils/format.mjs +27 -0
  273. package/dist/utils/index.d.ts +9 -6
  274. package/dist/utils/index.mjs +6 -16
  275. package/dist/utils/infinite-scroll-controller.mjs +88 -94
  276. package/dist/utils/keyboard-navigation-controller.mjs +62 -70
  277. package/dist/utils/markdown-stream-controller.mjs +48 -0
  278. package/dist/utils/markdown.d.ts +10 -1
  279. package/dist/utils/markdown.mjs +261 -40
  280. package/dist/utils/storage-utils.mjs +30 -24
  281. package/package.json +39 -103
  282. package/dist/ai-agent-info/ai-agent-info.scss.mjs +0 -4
  283. package/dist/ai-agent-selector/ai-agent-selector.scss.mjs +0 -4
  284. package/dist/ai-artifact/ai-artifact.scss.mjs +0 -4
  285. package/dist/ai-artifact-card/ai-artifact-card.scss.mjs +0 -283
  286. package/dist/ai-artifact-card-group/ai-artifact-card-group.scss.mjs +0 -173
  287. package/dist/ai-assistant-response/ai-assistant-response.scss.mjs +0 -4
  288. package/dist/ai-attachment/ai-attachment.d.ts +0 -39
  289. package/dist/ai-attachment/ai-attachment.mjs +0 -130
  290. package/dist/ai-attachment/ai-attachment.scss.mjs +0 -4
  291. package/dist/ai-attachment/index.d.ts +0 -1
  292. package/dist/ai-attachment/index.mjs +0 -5
  293. package/dist/ai-button/ai-button.d.ts +0 -21
  294. package/dist/ai-button/ai-button.mjs +0 -68
  295. package/dist/ai-button/ai-button.scss.mjs +0 -4
  296. package/dist/ai-button/index.d.ts +0 -1
  297. package/dist/ai-button/index.mjs +0 -5
  298. package/dist/ai-canvas/ai-canvas.scss.mjs +0 -4
  299. package/dist/ai-chain-of-thought/ai-chain-of-thought.scss.mjs +0 -4
  300. package/dist/ai-chain-of-thought/thought-base/thought-base.scss.mjs +0 -4
  301. package/dist/ai-chain-of-thought/thought-detail/thought-detail.scss.mjs +0 -4
  302. package/dist/ai-chain-of-thought/thought-image/thought-image.scss.mjs +0 -4
  303. package/dist/ai-chain-of-thought/thought-search-result/thought-search-result.scss.mjs +0 -4
  304. package/dist/ai-chat-header/ai-chat-header.scss.mjs +0 -4
  305. package/dist/ai-chat-interface/ai-chat-interface.scss.mjs +0 -4
  306. package/dist/ai-chatbot/ag-ui-adapter.d.ts +0 -24
  307. package/dist/ai-chatbot/ag-ui-adapter.mjs +0 -388
  308. package/dist/ai-chatbot/agent-adapter.d.ts +0 -310
  309. package/dist/ai-chatbot/agent-adapter.mjs +0 -221
  310. package/dist/ai-chatbot/agent-runner.d.ts +0 -41
  311. package/dist/ai-chatbot/agent-runner.mjs +0 -265
  312. package/dist/ai-chatbot/ai-chatbot-base.d.ts +0 -179
  313. package/dist/ai-chatbot/ai-chatbot-base.mjs +0 -684
  314. package/dist/ai-chatbot/ai-chatbot-tool-call.d.ts +0 -19
  315. package/dist/ai-chatbot/ai-chatbot-tool-call.mjs +0 -182
  316. package/dist/ai-chatbot/ai-chatbot-tool-call.scss.mjs +0 -4
  317. package/dist/ai-chatbot/ai-chatbot.d.ts +0 -196
  318. package/dist/ai-chatbot/ai-chatbot.mjs +0 -502
  319. package/dist/ai-chatbot/ai-chatbot.scss.mjs +0 -4
  320. package/dist/ai-chatbot/create-tool-renderer.mjs +0 -16
  321. package/dist/ai-chatbot/event-emitter.d.ts +0 -43
  322. package/dist/ai-chatbot/event-emitter.mjs +0 -81
  323. package/dist/ai-chatbot/file-upload-manager.d.ts +0 -27
  324. package/dist/ai-chatbot/file-upload-manager.mjs +0 -106
  325. package/dist/ai-chatbot/http-agent-with-credentials.d.ts +0 -8
  326. package/dist/ai-chatbot/http-agent-with-credentials.mjs +0 -14
  327. package/dist/ai-chatbot/index.d.ts +0 -18
  328. package/dist/ai-chatbot/index.mjs +0 -40
  329. package/dist/ai-chatbot/markdown-stream-controller.mjs +0 -50
  330. package/dist/ai-chatbot/message-state-controller.d.ts +0 -72
  331. package/dist/ai-chatbot/message-state-controller.mjs +0 -392
  332. package/dist/ai-chatbot/request-serialization.d.ts +0 -33
  333. package/dist/ai-chatbot/request-serialization.mjs +0 -31
  334. package/dist/ai-chatbot/tool-canvas.mjs +0 -128
  335. package/dist/ai-chatbot/types.d.ts +0 -582
  336. package/dist/ai-chatbot/utils.d.ts +0 -49
  337. package/dist/ai-chatbot/utils.mjs +0 -114
  338. package/dist/ai-chatbot-launcher/ai-chatbot-launcher.d.ts +0 -190
  339. package/dist/ai-chatbot-launcher/ai-chatbot-launcher.mjs +0 -986
  340. package/dist/ai-chatbot-launcher/ai-chatbot-launcher.scss.mjs +0 -4
  341. package/dist/ai-chatbot-launcher/index.d.ts +0 -1
  342. package/dist/ai-chatbot-launcher/index.mjs +0 -5
  343. package/dist/ai-client-message/ai-client-message.scss.mjs +0 -4
  344. package/dist/ai-confirmation-prompt/ai-confirmation-prompt.d.ts +0 -34
  345. package/dist/ai-confirmation-prompt/ai-confirmation-prompt.mjs +0 -134
  346. package/dist/ai-confirmation-prompt/ai-confirmation-prompt.scss.mjs +0 -4
  347. package/dist/ai-confirmation-prompt/index.d.ts +0 -1
  348. package/dist/ai-confirmation-prompt/index.mjs +0 -5
  349. package/dist/ai-context-chip/ai-context-chip.scss.mjs +0 -4
  350. package/dist/ai-context-items/ai-context-items.scss.mjs +0 -4
  351. package/dist/ai-conversations-panel/ai-conversations-panel.scss.mjs +0 -4
  352. package/dist/ai-copy-button/ai-copy-button.scss.mjs +0 -4
  353. package/dist/ai-dialog/ai-dialog.scss.mjs +0 -4
  354. package/dist/ai-disclaimer/ai-disclaimer.scss.mjs +0 -4
  355. package/dist/ai-dropdown-menu/ai-dropdown-menu-item-group.scss.mjs +0 -4
  356. package/dist/ai-dropdown-menu/ai-dropdown-menu-item.scss.mjs +0 -4
  357. package/dist/ai-dropdown-menu/ai-dropdown-menu-separator.scss.mjs +0 -4
  358. package/dist/ai-dropdown-menu/ai-dropdown-menu.scss.mjs +0 -4
  359. package/dist/ai-edit-thread/ai-edit-thread.scss.mjs +0 -4
  360. package/dist/ai-embedded-chat/ai-embedded-chat.d.ts +0 -64
  361. package/dist/ai-embedded-chat/ai-embedded-chat.mjs +0 -173
  362. package/dist/ai-embedded-chat/ai-embedded-chat.scss.mjs +0 -4
  363. package/dist/ai-embedded-chat/index.d.ts +0 -1
  364. package/dist/ai-embedded-chat/index.mjs +0 -5
  365. package/dist/ai-empty-state/ai-empty-state.scss.mjs +0 -4
  366. package/dist/ai-error-message/ai-error-message.scss.mjs +0 -4
  367. package/dist/ai-fab/ai-fab.scss.mjs +0 -4
  368. package/dist/ai-file-picker/ai-file-picker.scss.mjs +0 -4
  369. package/dist/ai-floating-chat/ai-floating-chat.d.ts +0 -53
  370. package/dist/ai-floating-chat/ai-floating-chat.mjs +0 -147
  371. package/dist/ai-floating-chat/ai-floating-chat.scss.mjs +0 -4
  372. package/dist/ai-floating-chat/index.d.ts +0 -1
  373. package/dist/ai-floating-chat/index.mjs +0 -5
  374. package/dist/ai-gradient-container/ai-gradient-container.scss.mjs +0 -4
  375. package/dist/ai-icon/ai-icon.scss.mjs +0 -4
  376. package/dist/ai-icon-button/ai-icon-button.d.ts +0 -19
  377. package/dist/ai-icon-button/ai-icon-button.mjs +0 -66
  378. package/dist/ai-icon-button/ai-icon-button.scss.mjs +0 -4
  379. package/dist/ai-icon-button/index.d.ts +0 -1
  380. package/dist/ai-icon-button/index.mjs +0 -5
  381. package/dist/ai-message-thread/ai-message-thread.scss.mjs +0 -4
  382. package/dist/ai-modal/ai-modal.scss.mjs +0 -4
  383. package/dist/ai-prompt/ai-prompt.scss.mjs +0 -4
  384. package/dist/ai-prompt/prompt-button/index.d.ts +0 -1
  385. package/dist/ai-prompt/prompt-button/index.mjs +0 -5
  386. package/dist/ai-prompt/prompt-button/prompt-button.d.ts +0 -16
  387. package/dist/ai-prompt/prompt-button/prompt-button.mjs +0 -40
  388. package/dist/ai-prompt/prompt-button/prompt-button.scss.mjs +0 -4
  389. package/dist/ai-reasoning/ai-reasoning.scss.mjs +0 -4
  390. package/dist/ai-reasoning/reasoning-content/reasoning-content.scss.mjs +0 -4
  391. package/dist/ai-reasoning-header/ai-reasoning-header.scss.mjs +0 -4
  392. package/dist/ai-response-message/ai-response-message.scss.mjs +0 -4
  393. package/dist/ai-response-message-toolbar/ai-response-message-toolbar.scss.mjs +0 -4
  394. package/dist/ai-sidebar/ai-sidebar.scss.mjs +0 -4
  395. package/dist/ai-sidebar-chat/ai-sidebar-chat.d.ts +0 -54
  396. package/dist/ai-sidebar-chat/ai-sidebar-chat.mjs +0 -163
  397. package/dist/ai-sidebar-chat/ai-sidebar-chat.scss.mjs +0 -4
  398. package/dist/ai-sidebar-chat/index.d.ts +0 -1
  399. package/dist/ai-sidebar-chat/index.mjs +0 -5
  400. package/dist/ai-slash-command-menu/ai-slash-command-menu.scss.mjs +0 -4
  401. package/dist/ai-spinner/ai-spinner.scss.mjs +0 -4
  402. package/dist/ai-steps/ai-steps.scss.mjs +0 -4
  403. package/dist/ai-suggestions/ai-suggestions.scss.mjs +0 -500
  404. package/dist/ai-thinking-indicator/ai-thinking-indicator.scss.mjs +0 -143
  405. package/dist/ai-thread-actions-menu/ai-thread-actions-menu.scss.mjs +0 -4
  406. package/dist/ai-threads/ai-threads.d.ts +0 -82
  407. package/dist/ai-threads/ai-threads.mjs +0 -343
  408. package/dist/ai-threads/ai-threads.scss.mjs +0 -4
  409. package/dist/ai-threads/index.d.ts +0 -1
  410. package/dist/ai-threads/index.mjs +0 -5
  411. package/dist/ai-threads-search/ai-threads-search.scss.mjs +0 -4
  412. package/dist/ai-tool-call-indicator/ai-tool-call-indicator.scss.mjs +0 -4
  413. package/dist/ai-user-message/ai-user-message.scss.mjs +0 -4
  414. package/dist/ai-user-message-toolbar/ai-user-message-toolbar.scss.mjs +0 -4
  415. package/dist/ai-voice-input/ai-voice-input.scss.mjs +0 -4
  416. package/dist/core/canvas-controller.d.ts +0 -81
  417. package/dist/core/canvas-controller.mjs +0 -221
  418. package/dist/core/chatbot-core-controller.d.ts +0 -57
  419. package/dist/core/chatbot-core-controller.mjs +0 -545
  420. package/dist/core/overlay/overlay.scss.mjs +0 -4
  421. package/dist/core/popover/popover.scss.mjs +0 -4
  422. package/dist/core/tooltip/tooltip.scss.mjs +0 -4
  423. package/dist/tools/ai-data-table/ai-data-table-definition.d.ts +0 -2
  424. package/dist/tools/ai-data-table/ai-data-table-definition.mjs +0 -43
  425. package/dist/tools/ai-data-table/ai-data-table.scss.mjs +0 -4
  426. package/dist/tools/ai-mcp-app/ai-mcp-app.d.ts +0 -70
  427. package/dist/tools/ai-mcp-app/ai-mcp-app.mjs +0 -589
  428. package/dist/tools/ai-mcp-app/ai-mcp-app.scss.mjs +0 -4
  429. package/dist/tools/ai-mcp-app/index.d.ts +0 -3
  430. package/dist/tools/ai-mcp-app/index.mjs +0 -6
  431. package/dist/tools/ai-mcp-app/mcp-app-bridge-controller.d.ts +0 -60
  432. package/dist/tools/ai-mcp-app/mcp-app-bridge-controller.mjs +0 -147
  433. package/dist/tools/ai-mcp-app/mcp-app-bridge-types.d.ts +0 -124
  434. package/dist/tools/ai-mcp-app/mcp-app-bridge.d.ts +0 -41
  435. package/dist/tools/ai-mcp-app/mcp-app-bridge.mjs +0 -293
  436. package/dist/tools/ai-mcp-app/mcp-app-context.d.ts +0 -46
  437. package/dist/tools/ai-mcp-app/mcp-app-context.mjs +0 -5
  438. package/dist/tools/ai-paginator/ai-paginator.scss.mjs +0 -4
  439. package/dist/tools/ai-steps/ai-steps-definition.d.ts +0 -2
  440. package/dist/tools/ai-steps/ai-steps-definition.mjs +0 -51
  441. package/dist/tools/ai-steps/ai-steps.scss.mjs +0 -4
  442. package/dist/utils/inert-outside.d.ts +0 -7
  443. package/dist/utils/inert-outside.mjs +0 -28
  444. package/dist/utils.d.ts +0 -32
  445. package/dist/utils.mjs +0 -57
  446. /package/dist/{ai-chatbot → utils}/markdown-stream-controller.d.ts +0 -0
package/dist/jsx.d.ts ADDED
@@ -0,0 +1,895 @@
1
+ // Generated by plugins/cem/jsx-types.mjs from custom-elements.json. Do not edit.
2
+ import type * as React from 'react';
3
+ import type { AiAgentInfoComponent } from './ai-agent-info/ai-agent-info.js';
4
+ import type { AiAgentSelectorComponent, ForgeAiAgentSelectorChangeEventData } from './ai-agent-selector/ai-agent-selector.js';
5
+ import type { AiArtifactCardGroupComponent, ForgeAiArtifactCardGroupToggleEventData } from './ai-artifact-card-group/ai-artifact-card-group.js';
6
+ import type { AiArtifactCardComponent, ForgeAiArtifactCardOpenEventData } from './ai-artifact-card/ai-artifact-card.js';
7
+ import type { AiArtifactComponent } from './ai-artifact/ai-artifact.js';
8
+ import type { AiAssistantResponseComponent, ForgeAiAssistantResponseFeedbackEventData } from './ai-assistant-response/ai-assistant-response.js';
9
+ import type { AiCanvasComponent } from './ai-canvas/ai-canvas.js';
10
+ import type { AiChainOfThoughtComponent } from './ai-chain-of-thought/ai-chain-of-thought.js';
11
+ import type { ThoughtBaseComponent } from './ai-chain-of-thought/thought-base/thought-base.js';
12
+ import type { ThoughtDetailComponent } from './ai-chain-of-thought/thought-detail/thought-detail.js';
13
+ import type { ThoughtImageComponent } from './ai-chain-of-thought/thought-image/thought-image.js';
14
+ import type { ThoughtSearchResultComponent } from './ai-chain-of-thought/thought-search-result/thought-search-result.js';
15
+ import type { AiChatHeaderComponent, ForgeAiChatHeaderAgentChangeEventData } from './ai-chat-header/ai-chat-header.js';
16
+ import type { AiChatInterfaceComponent } from './ai-chat-interface/ai-chat-interface.js';
17
+ import type { AiClientMessageComponent } from './ai-client-message/ai-client-message.js';
18
+ import type { AiContextChipComponent, ForgeAiContextChipRemoveEventData } from './ai-context-chip/ai-context-chip.js';
19
+ import type { AiContextItemsComponent, ForgeAiContextItemsRemoveEventData } from './ai-context-items/ai-context-items.js';
20
+ import type { AiConversationsPanelComponent, ForgeAiConversationsPanelDeleteEventData, ForgeAiConversationsPanelLoadMoreEventData, ForgeAiConversationsPanelRenameEventData, ForgeAiConversationsPanelSearchEventData, ForgeAiConversationsPanelSelectEventData } from './ai-conversations-panel/ai-conversations-panel.js';
21
+ import type { AiCopyButtonComponent } from './ai-copy-button/ai-copy-button.js';
22
+ import type { AiDialogComponent } from './ai-dialog/ai-dialog.js';
23
+ import type { AiDisclaimerComponent } from './ai-disclaimer/ai-disclaimer.js';
24
+ import type { ForgeAiDropdownMenuItemGroupComponent } from './ai-dropdown-menu/ai-dropdown-menu-item-group.js';
25
+ import type { ForgeAiDropdownMenuItemComponent } from './ai-dropdown-menu/ai-dropdown-menu-item.js';
26
+ import type { ForgeAiDropdownMenuSeparatorComponent } from './ai-dropdown-menu/ai-dropdown-menu-separator.js';
27
+ import type { ForgeAiDropdownMenuComponent } from './ai-dropdown-menu/ai-dropdown-menu.js';
28
+ import type { DropdownChangeEventDetail } from './ai-dropdown-menu/selection-manager.js';
29
+ import type { AiEditThreadComponent, ForgeAiEditThreadSaveEventData } from './ai-edit-thread/ai-edit-thread.js';
30
+ import type { AiEmptyStateComponent } from './ai-empty-state/ai-empty-state.js';
31
+ import type { AiErrorMessageComponent } from './ai-error-message/ai-error-message.js';
32
+ import type { AiFabComponent } from './ai-fab/ai-fab.js';
33
+ import type { AiFilePickerComponent, ForgeAiFilePickerChangeEventData, ForgeAiFilePickerErrorEventData } from './ai-file-picker/ai-file-picker.js';
34
+ import type { AiGradientContainerComponent } from './ai-gradient-container/ai-gradient-container.js';
35
+ import type { AiIconComponent } from './ai-icon/ai-icon.js';
36
+ import type { AiMessageThreadComponent, ForgeAiMessageThreadCopyEventData, ForgeAiMessageThreadEditEventData, ForgeAiMessageThreadResendEventData, ForgeAiMessageThreadThumbsEventData } from './ai-message-thread/ai-message-thread.js';
37
+ import type { AiModalComponent } from './ai-modal/ai-modal.js';
38
+ import type { AiPromptComponent, ForgeAiPromptAttachmentEventData, ForgeAiPromptCommandEventData, ForgeAiPromptContextRemoveEventData, ForgeAiPromptSendEventData } from './ai-prompt/ai-prompt.js';
39
+ import type { AiReasoningHeaderComponent, ForgeAiReasoningHeaderToggleEventData } from './ai-reasoning-header/ai-reasoning-header.js';
40
+ import type { AiReasoningComponent } from './ai-reasoning/ai-reasoning.js';
41
+ import type { ReasoningContentComponent } from './ai-reasoning/reasoning-content/reasoning-content.js';
42
+ import type { AiResponseMessageToolbarComponent, ForgeAiResponseMessageToolbarActionEventData, ForgeAiResponseMessageToolbarFeedbackEventData } from './ai-response-message-toolbar/ai-response-message-toolbar.js';
43
+ import type { AiResponseMessageComponent } from './ai-response-message/ai-response-message.js';
44
+ import type { AiSidebarComponent, ForgeAiSidebarResizeEventData } from './ai-sidebar/ai-sidebar.js';
45
+ import type { AiSlashCommandMenuComponent } from './ai-slash-command-menu/ai-slash-command-menu.js';
46
+ import type { AiSpinnerComponent } from './ai-spinner/ai-spinner.js';
47
+ import type { AiStepsComponent } from './ai-steps/ai-steps.js';
48
+ import type { AiSuggestionsComponent, ForgeAiSuggestionsEventData } from './ai-suggestions/ai-suggestions.js';
49
+ import type { AiThinkingIndicatorComponent } from './ai-thinking-indicator/ai-thinking-indicator.js';
50
+ import type { AiThreadActionsMenuComponent, ForgeAiThreadActionsMenuDeleteClickEventData, ForgeAiThreadActionsMenuOpenEventData, ForgeAiThreadActionsMenuRenameEventData } from './ai-thread-actions-menu/ai-thread-actions-menu.js';
51
+ import type { AiThreadsSearchComponent, ForgeAiThreadsSearchDeleteConfirmEventData, ForgeAiThreadsSearchDeleteEventData, ForgeAiThreadsSearchLoadMoreEventData, ForgeAiThreadsSearchQueryEventData, ForgeAiThreadsSearchRenameEventData, ForgeAiThreadsSearchSelectEventData } from './ai-threads-search/ai-threads-search.js';
52
+ import type { AiToolCallIndicatorComponent } from './ai-tool-call-indicator/ai-tool-call-indicator.js';
53
+ import type { AiToolCallComponent } from './ai-tool-call/ai-tool-call.js';
54
+ import type { AiUserMessageToolbarComponent } from './ai-user-message-toolbar/ai-user-message-toolbar.js';
55
+ import type { AiUserMessageComponent, ForgeAiUserMessageCopyEventData, ForgeAiUserMessageEditEventData, ForgeAiUserMessageResendEventData } from './ai-user-message/ai-user-message.js';
56
+ import type { AiVoiceInputComponent, ForgeAiVoiceInputResultEvent } from './ai-voice-input/ai-voice-input.js';
57
+ import type { ForgeAiOverlayComponent } from './core/overlay/overlay.js';
58
+ import type { ForgeAiPopoverComponent } from './core/popover/popover.js';
59
+ import type { ForgeAiTooltipComponent } from './core/tooltip/tooltip.js';
60
+ import type { DataTableToolElement } from './tools/ai-data-table/ai-data-table.js';
61
+ import type { AiPaginator, ForgeAiPaginatorPageChangeEventData } from './tools/ai-paginator/ai-paginator.js';
62
+ import type { StepsToolElement } from './tools/ai-steps/ai-steps.js';
63
+ import type { ForgeAiSlashCommandMenuSelectEventData } from './types/chat.js';
64
+
65
+ /** Props shared by every Forge AI element in JSX: standard HTML attributes, `ref`, `key`, `class`, plus the element's own props, attributes, and events. */
66
+ type ForgeAiElementProps<E extends HTMLElement, Props extends keyof E, Attrs = {}, Events = {}> = Omit<
67
+ React.HTMLAttributes<E>,
68
+ Props | keyof Attrs | keyof Events
69
+ > &
70
+ React.ClassAttributes<E> & { class?: string } & Partial<Pick<E, Props>> &
71
+ Attrs &
72
+ Events;
73
+
74
+ /** Custom element tag names mapped to their JSX props. */
75
+ export interface ForgeAiIntrinsicElements {
76
+ /**
77
+ * Displays agent information in a grid layout
78
+ */
79
+ 'forge-ai-agent-info': ForgeAiElementProps<AiAgentInfoComponent, 'agentInfo', {}, {}>;
80
+ /**
81
+ * Agent selector component for switching between AI agents.
82
+ */
83
+ 'forge-ai-agent-selector': ForgeAiElementProps<AiAgentSelectorComponent, 'agents' | 'selectedAgentId' | 'titleText' | 'disabled', {
84
+ /** Attribute form of `selectedAgentId`. */
85
+ 'selected-agent-id'?: AiAgentSelectorComponent['selectedAgentId'];
86
+ /** Attribute form of `titleText`. */
87
+ 'title-text'?: AiAgentSelectorComponent['titleText'];
88
+ }, {
89
+ /**
90
+ * Fired when an agent is selected
91
+ */
92
+ 'onforge-ai-agent-selector-change'?: (event: CustomEvent<ForgeAiAgentSelectorChangeEventData>) => void;
93
+ }>;
94
+ /**
95
+ * Slots:
96
+ * - `start`: Content for the start (left) side of the toolbar, typically used for titles or headings
97
+ * - `actions`: Action buttons for the end (right) side of the toolbar
98
+ * - `(default)`: Main content area below the toolbar
99
+ */
100
+ 'forge-ai-artifact': ForgeAiElementProps<AiArtifactComponent, never, {}, {}>;
101
+ /**
102
+ * A compact, clickable card representing an artifact an agent produced.
103
+ *
104
+ * Slots:
105
+ * - `icon`: The leading icon, shown inside a bordered tile. Replaces the default artifact glyph.
106
+ * - `action-icon`: The trailing action glyph. Replaces the default arrow, and unlike the arrow stays visible while `active`, so consumers that collapse on a second activation can show a matching glyph.
107
+ */
108
+ 'forge-ai-artifact-card': ForgeAiElementProps<AiArtifactCardComponent, 'titleText' | 'subtitleText' | 'actionLabel' | 'assetId' | 'active' | 'disabled', {
109
+ /** Attribute form of `titleText`. */
110
+ 'title-text'?: AiArtifactCardComponent['titleText'];
111
+ /** Attribute form of `subtitleText`. */
112
+ 'subtitle-text'?: AiArtifactCardComponent['subtitleText'];
113
+ /** Attribute form of `actionLabel`. */
114
+ 'action-label'?: AiArtifactCardComponent['actionLabel'];
115
+ /** Attribute form of `assetId`. */
116
+ 'asset-id'?: AiArtifactCardComponent['assetId'];
117
+ }, {
118
+ /**
119
+ * Fired when the card is activated by click, Enter, or Space. Not fired while disabled.
120
+ */
121
+ 'onforge-ai-artifact-card-open'?: (event: CustomEvent<ForgeAiArtifactCardOpenEventData>) => void;
122
+ }>;
123
+ /**
124
+ * Presents several artifact cards as a single list that collapses past a set count.
125
+ *
126
+ * Slots:
127
+ * - `(default)`: The `forge-ai-artifact-card` elements to list. Other elements are not styled as rows and break the list semantics, so keep the slot to cards.
128
+ */
129
+ 'forge-ai-artifact-card-group': ForgeAiElementProps<AiArtifactCardGroupComponent, 'visibleCount' | 'expanded' | 'showMoreText' | 'showLessText', {
130
+ /** Attribute form of `visibleCount`. */
131
+ 'visible-count'?: AiArtifactCardGroupComponent['visibleCount'];
132
+ /** Attribute form of `showMoreText`. */
133
+ 'show-more-text'?: AiArtifactCardGroupComponent['showMoreText'];
134
+ /** Attribute form of `showLessText`. */
135
+ 'show-less-text'?: AiArtifactCardGroupComponent['showLessText'];
136
+ }, {
137
+ /**
138
+ * Fired when the user expands or collapses the list with the toggle.
139
+ */
140
+ 'onforge-ai-artifact-card-group-toggle'?: (event: CustomEvent<ForgeAiArtifactCardGroupToggleEventData>) => void;
141
+ }>;
142
+ /**
143
+ * Renders a complete assistant response with interleaved text chunks and tool calls.
144
+ */
145
+ 'forge-ai-assistant-response': ForgeAiElementProps<AiAssistantResponseComponent, 'response' | 'tools' | 'enableReactions' | 'debugMode' | 'showThinking', {
146
+ /** Attribute form of `enableReactions`. */
147
+ 'enable-reactions'?: AiAssistantResponseComponent['enableReactions'];
148
+ /** Attribute form of `debugMode`. */
149
+ 'debug-mode'?: AiAssistantResponseComponent['debugMode'];
150
+ /** Attribute form of `showThinking`. */
151
+ 'show-thinking'?: AiAssistantResponseComponent['showThinking'];
152
+ }, {
153
+ /**
154
+ * Fired when copy action is clicked
155
+ */
156
+ 'onforge-ai-assistant-response-copy'?: (event: CustomEvent<{ responseId: string }>) => void;
157
+ /**
158
+ * Fired when resend action is clicked
159
+ */
160
+ 'onforge-ai-assistant-response-resend'?: (event: CustomEvent<{ responseId: string }>) => void;
161
+ /**
162
+ * Fired when thumbs up is clicked
163
+ */
164
+ 'onforge-ai-assistant-response-thumbs-up'?: (event: CustomEvent<ForgeAiAssistantResponseFeedbackEventData>) => void;
165
+ /**
166
+ * Fired when thumbs down is clicked
167
+ */
168
+ 'onforge-ai-assistant-response-thumbs-down'?: (event: CustomEvent<ForgeAiAssistantResponseFeedbackEventData>) => void;
169
+ }>;
170
+ /**
171
+ * A side panel that presents an artifact next to a conversation.
172
+ *
173
+ * Slots:
174
+ * - `title`: Replaces the default title heading
175
+ * - `actions`: Action buttons rendered before the close button
176
+ * - `(default)`: Panel body content
177
+ */
178
+ 'forge-ai-canvas': ForgeAiElementProps<AiCanvasComponent, 'titleText' | 'headingLevel' | 'closeLabel', {
179
+ /** Attribute form of `titleText`. */
180
+ 'title-text'?: AiCanvasComponent['titleText'];
181
+ /** Attribute form of `headingLevel`. */
182
+ 'heading-level'?: AiCanvasComponent['headingLevel'];
183
+ /** Attribute form of `closeLabel`. */
184
+ 'close-label'?: AiCanvasComponent['closeLabel'];
185
+ }, {
186
+ /**
187
+ * Fired when the close button is clicked
188
+ */
189
+ 'onforge-ai-canvas-close'?: (event: CustomEvent<void>) => void;
190
+ }>;
191
+ 'forge-ai-chain-of-thought': ForgeAiElementProps<AiChainOfThoughtComponent, 'expanded', {}, {}>;
192
+ /**
193
+ * AI chat header component with accessible tooltips
194
+ *
195
+ * Slots:
196
+ * - `icon`: Slot for custom icon (default: forge-ai-icon)
197
+ * - `header-actions`: Slot for custom header action buttons (rendered before built-in header actions)
198
+ * - `thread-name`: Slot for content to be rendered after the title
199
+ */
200
+ 'forge-ai-chat-header': ForgeAiElementProps<AiChatHeaderComponent, 'showExpandButton' | 'showMinimizeButton' | 'expanded' | 'minimizeIcon' | 'agentInfo' | 'options' | 'exportOption' | 'clearOption' | 'headingLevel' | 'titleText' | 'agents' | 'selectedAgentId' | 'disableAgentSelector' | 'showConversationsButton' | 'hasConversationsError', {
201
+ /** Attribute form of `showExpandButton`. */
202
+ 'show-expand-button'?: AiChatHeaderComponent['showExpandButton'];
203
+ /** Attribute form of `showMinimizeButton`. */
204
+ 'show-minimize-button'?: AiChatHeaderComponent['showMinimizeButton'];
205
+ /** Attribute form of `minimizeIcon`. */
206
+ 'minimize-icon'?: AiChatHeaderComponent['minimizeIcon'];
207
+ /** Attribute form of `exportOption`. */
208
+ 'export-option'?: AiChatHeaderComponent['exportOption'];
209
+ /** Attribute form of `clearOption`. */
210
+ 'clear-option'?: AiChatHeaderComponent['clearOption'];
211
+ /** Attribute form of `headingLevel`. */
212
+ 'heading-level'?: AiChatHeaderComponent['headingLevel'];
213
+ /** Attribute form of `titleText`. */
214
+ 'title-text'?: AiChatHeaderComponent['titleText'];
215
+ /** Attribute form of `selectedAgentId`. */
216
+ 'selected-agent-id'?: AiChatHeaderComponent['selectedAgentId'];
217
+ /** Attribute form of `disableAgentSelector`. */
218
+ 'disable-agent-selector'?: AiChatHeaderComponent['disableAgentSelector'];
219
+ /** Attribute form of `showConversationsButton`. */
220
+ 'show-conversations-button'?: AiChatHeaderComponent['showConversationsButton'];
221
+ /** Attribute form of `hasConversationsError`. */
222
+ 'has-conversations-error'?: AiChatHeaderComponent['hasConversationsError'];
223
+ }, {
224
+ /**
225
+ * Fired when the export option is selected
226
+ */
227
+ 'onforge-ai-chat-header-export'?: (event: CustomEvent<void>) => void;
228
+ /**
229
+ * Fired when the clear chat option is selected
230
+ */
231
+ 'onforge-ai-chat-header-clear'?: (event: CustomEvent<void>) => void;
232
+ /**
233
+ * Fired when an agent is selected
234
+ */
235
+ 'onforge-ai-chat-header-agent-change'?: (event: CustomEvent<ForgeAiChatHeaderAgentChangeEventData>) => void;
236
+ /**
237
+ * Fired when the conversations button is clicked
238
+ */
239
+ 'onforge-ai-chat-header-conversations-toggle'?: (event: CustomEvent<void>) => void;
240
+ /**
241
+ * Fired when the expand button is clicked
242
+ */
243
+ 'onforge-ai-chat-header-expand'?: (event: CustomEvent<void>) => void;
244
+ /**
245
+ * Fired when the minimize button is clicked
246
+ */
247
+ 'onforge-ai-chat-header-minimize'?: (event: CustomEvent<void>) => void;
248
+ }>;
249
+ /**
250
+ * Slots:
251
+ * - `(default)`: Default slot for messages
252
+ * - `header`: Slot for AI chat header component
253
+ * - `suggestions`: Slot for AI suggestions component
254
+ * - `attachments`: Slot for file attachments component
255
+ * - `prompt`: Slot for AI prompt component
256
+ * - `disclaimer`: Slot for disclaimer text shown below the prompt
257
+ */
258
+ 'forge-ai-chat-interface': ForgeAiElementProps<AiChatInterfaceComponent, never, {}, {}>;
259
+ /**
260
+ * A standalone message for client-side or system notices, rendered as either plain
261
+ * system-message text or a Forge inline-message banner, depending on `kind`.
262
+ */
263
+ 'forge-ai-client-message': ForgeAiElementProps<AiClientMessageComponent, 'kind' | 'header' | 'content' | 'actions', {}, {}>;
264
+ /**
265
+ * Displays context information as a removable chip.
266
+ */
267
+ 'forge-ai-context-chip': ForgeAiElementProps<AiContextChipComponent, 'id' | 'label' | 'removable' | 'sublabel' | 'loading' | 'type', {}, {
268
+ /**
269
+ * Fired when the remove button is clicked
270
+ */
271
+ 'onforge-ai-context-chip-remove'?: (event: CustomEvent<ForgeAiContextChipRemoveEventData>) => void;
272
+ }>;
273
+ 'forge-ai-context-items': ForgeAiElementProps<AiContextItemsComponent, 'items', {}, {
274
+ /**
275
+ * Fired when a context item is removed.
276
+ */
277
+ 'onforge-ai-context-items-remove'?: (event: CustomEvent<ForgeAiContextItemsRemoveEventData>) => void;
278
+ }>;
279
+ 'forge-ai-conversations-panel': ForgeAiElementProps<AiConversationsPanelComponent, 'threads' | 'totalChats' | 'selectedThreadId' | 'showThreadRename' | 'showThreadDelete' | 'loading' | 'errorMessage', {
280
+ /** Attribute form of `totalChats`. */
281
+ 'total-chats'?: AiConversationsPanelComponent['totalChats'];
282
+ /** Attribute form of `selectedThreadId`. */
283
+ 'selected-thread-id'?: AiConversationsPanelComponent['selectedThreadId'];
284
+ /** Attribute form of `showThreadRename`. */
285
+ 'show-thread-rename'?: AiConversationsPanelComponent['showThreadRename'];
286
+ /** Attribute form of `showThreadDelete`. */
287
+ 'show-thread-delete'?: AiConversationsPanelComponent['showThreadDelete'];
288
+ /** Attribute form of `errorMessage`. */
289
+ 'error-message'?: AiConversationsPanelComponent['errorMessage'];
290
+ }, {
291
+ /**
292
+ * Fired when a conversation thread is selected.
293
+ */
294
+ 'onforge-ai-conversations-panel-select'?: (event: CustomEvent<ForgeAiConversationsPanelSelectEventData>) => void;
295
+ /**
296
+ * Fired when the new chat list item is clicked.
297
+ */
298
+ 'onforge-ai-conversations-panel-new-chat'?: (event: CustomEvent<void>) => void;
299
+ /**
300
+ * Fired when the close button is clicked.
301
+ */
302
+ 'onforge-ai-conversations-panel-close'?: (event: CustomEvent<void>) => void;
303
+ /**
304
+ * Fired when search query changes (debounced). Cancelable - if prevented, shows loading and waits for setResults callback.
305
+ */
306
+ 'onforge-ai-conversations-panel-search'?: (event: CustomEvent<ForgeAiConversationsPanelSearchEventData>) => void;
307
+ /**
308
+ * Fired when scrolling near bottom in recent chats or search chats. Query field differentiates contexts. Always shows loading - call appendResults([]) to signal end.
309
+ */
310
+ 'onforge-ai-conversations-panel-load-more'?: (event: CustomEvent<ForgeAiConversationsPanelLoadMoreEventData>) => void;
311
+ /**
312
+ * Fired when thread renamed. Cancelable - if prevented, call onSuccess() to commit or onError() to revert. Otherwise optimistically updated.
313
+ */
314
+ 'onforge-ai-conversations-panel-rename'?: (event: CustomEvent<ForgeAiConversationsPanelRenameEventData>) => void;
315
+ /**
316
+ * Fired when thread delete confirmed. Cancelable - if prevented, call onSuccess() to commit deletion or onError() to revert. Otherwise optimistically removed.
317
+ */
318
+ 'onforge-ai-conversations-panel-delete'?: (event: CustomEvent<ForgeAiConversationsPanelDeleteEventData>) => void;
319
+ /**
320
+ * Fired when the retry button in the error state is clicked. The host should re-request the threads and clear errorMessage once the load succeeds.
321
+ */
322
+ 'onforge-ai-conversations-panel-retry'?: (event: CustomEvent<void>) => void;
323
+ }>;
324
+ /**
325
+ * A button that copies text to clipboard with tooltip
326
+ */
327
+ 'forge-ai-copy-button': ForgeAiElementProps<AiCopyButtonComponent, 'value' | 'disabled', {}, {}>;
328
+ /**
329
+ * Slots:
330
+ * - `(default)`: Default slot for dialog content (typically ai-chat-interface)
331
+ */
332
+ 'forge-ai-dialog': ForgeAiElementProps<AiDialogComponent, 'open' | 'expanded' | 'label', {}, {
333
+ /**
334
+ * Fired when the fullscreen state changes due to viewport size
335
+ */
336
+ 'onforge-ai-dialog-fullscreen-change'?: (event: CustomEvent<{ isFullscreen: boolean }>) => void;
337
+ /**
338
+ * Fired when the dialog is closed
339
+ */
340
+ 'onforge-ai-dialog-close'?: (event: CustomEvent<void>) => void;
341
+ }>;
342
+ /**
343
+ * Disclaimer overlay requiring user acknowledgment
344
+ *
345
+ * Slots:
346
+ * - `icon`: Optional icon at top
347
+ * - `(default)`: Default slot for scrollable disclaimer content
348
+ * - `disagree-button-text`: Text for Disagree button (default: "Disagree")
349
+ * - `agree-button-text`: Text for Agree button (default: "Agree")
350
+ */
351
+ 'forge-ai-disclaimer': ForgeAiElementProps<AiDisclaimerComponent, never, {}, {
352
+ /**
353
+ * Fired when Agree button is clicked
354
+ */
355
+ 'onforge-ai-disclaimer-agree'?: (event: CustomEvent<void>) => void;
356
+ /**
357
+ * Fired when Disagree button is clicked
358
+ */
359
+ 'onforge-ai-disclaimer-disagree'?: (event: CustomEvent<void>) => void;
360
+ }>;
361
+ /**
362
+ * An AI dropdown menu component with advanced selection modes and submenu support.
363
+ *
364
+ * Slots:
365
+ * - `(default)`: The default slot for dropdown menu items, item groups, and separators.
366
+ * - `header`: The header content displayed at the top of the dropdown menu.
367
+ * - `trigger-content`: The content of the trigger button (text or icon) when no selection is made.
368
+ * - `selected-text`: Custom content for the trigger button when selections are made (overrides default selection text).
369
+ * - `start`: The start icon slot for additional trigger button content.
370
+ * - `end`: The end icon slot for additional trigger button content.
371
+ */
372
+ 'forge-ai-dropdown-menu': ForgeAiElementProps<ForgeAiDropdownMenuComponent, 'variant' | 'density' | 'open' | 'disabled' | 'selectionMode' | 'value' | 'popoverPlacement' | 'triggerLabel', {
373
+ /** Attribute form of `selectionMode`. */
374
+ 'selection-mode'?: ForgeAiDropdownMenuComponent['selectionMode'];
375
+ /** Attribute form of `popoverPlacement`. */
376
+ 'popover-placement'?: ForgeAiDropdownMenuComponent['popoverPlacement'];
377
+ /** Attribute form of `triggerLabel`. */
378
+ 'trigger-label'?: ForgeAiDropdownMenuComponent['triggerLabel'];
379
+ }, {
380
+ /**
381
+ * Fired when the selection changes.
382
+ */
383
+ 'onforge-ai-dropdown-menu-change'?: (event: CustomEvent<DropdownChangeEventDetail>) => void;
384
+ /**
385
+ * Fired when the dropdown opens.
386
+ */
387
+ 'onforge-ai-dropdown-menu-open'?: (event: CustomEvent<{ timestamp: number }>) => void;
388
+ /**
389
+ * Fired when the dropdown closes.
390
+ */
391
+ 'onforge-ai-dropdown-menu-close'?: (event: CustomEvent<{ timestamp: number }>) => void;
392
+ }>;
393
+ /**
394
+ * An item component for use within ai-dropdown-menu with submenu support.
395
+ *
396
+ * Slots:
397
+ * - `(default)`: The default slot for item text content.
398
+ * - `description`: The description slot for additional item details.
399
+ * - `start`: The start icon slot.
400
+ * - `end`: The end icon slot.
401
+ * - `submenu`: The slot for nested dropdown menu components.
402
+ */
403
+ 'forge-ai-dropdown-menu-item': ForgeAiElementProps<ForgeAiDropdownMenuItemComponent, 'value' | 'selected' | 'disabled' | 'selectionMode' | 'submenuTrigger' | 'submenuOpenDelay' | 'submenuCloseDelay', {
404
+ /** Attribute form of `selectionMode`. */
405
+ 'selection-mode'?: ForgeAiDropdownMenuItemComponent['selectionMode'];
406
+ /** Attribute form of `submenuTrigger`. */
407
+ 'submenu-trigger'?: ForgeAiDropdownMenuItemComponent['submenuTrigger'];
408
+ /** Attribute form of `submenuOpenDelay`. */
409
+ 'submenu-open-delay'?: ForgeAiDropdownMenuItemComponent['submenuOpenDelay'];
410
+ /** Attribute form of `submenuCloseDelay`. */
411
+ 'submenu-close-delay'?: ForgeAiDropdownMenuItemComponent['submenuCloseDelay'];
412
+ }, {}>;
413
+ /**
414
+ * A group component for organizing items within ai-dropdown-menu.
415
+ *
416
+ * Slots:
417
+ * - `(default)`: The default slot for dropdown menu items.
418
+ * - `label`: The label slot for the group heading text.
419
+ */
420
+ 'forge-ai-dropdown-menu-item-group': ForgeAiElementProps<ForgeAiDropdownMenuItemGroupComponent, never, {}, {}>;
421
+ /**
422
+ * A separator component for dividing sections within ai-dropdown-menu.
423
+ */
424
+ 'forge-ai-dropdown-menu-separator': ForgeAiElementProps<ForgeAiDropdownMenuSeparatorComponent, never, {}, {}>;
425
+ 'forge-ai-edit-thread': ForgeAiElementProps<AiEditThreadComponent, 'thread' | 'value' | 'density', {}, {
426
+ /**
427
+ * Fired when save button is clicked or Enter is pressed.
428
+ */
429
+ 'onforge-ai-edit-thread-save'?: (event: CustomEvent<ForgeAiEditThreadSaveEventData>) => void;
430
+ /**
431
+ * Fired when cancel button is clicked, Escape is pressed, or focus leaves the component.
432
+ */
433
+ 'onforge-ai-edit-thread-cancel'?: (event: CustomEvent<void>) => void;
434
+ }>;
435
+ /**
436
+ * Slots:
437
+ * - `(default)`: The welcome message content (overrides the default message).
438
+ * - `icon`: The icon/graphic to display.
439
+ * - `heading`: The custom heading/title to display.
440
+ * - `body`: The custom body message content.
441
+ * - `actions`: The actions or suggestions to display below the message.
442
+ */
443
+ 'forge-ai-empty-state': ForgeAiElementProps<AiEmptyStateComponent, never, {}, {}>;
444
+ /**
445
+ * Displays error messages using Forge inline message banner style.
446
+ *
447
+ * Slots:
448
+ * - `title`: The error title text. When empty the banner collapses to a single row alongside the icon.
449
+ * - `(default)`: The error message content
450
+ */
451
+ 'forge-ai-error-message': ForgeAiElementProps<AiErrorMessageComponent, 'density', {}, {}>;
452
+ /**
453
+ * Slots:
454
+ * - `(default)`: Default slot for button content
455
+ * - `icon`: Slot for the icon
456
+ */
457
+ 'forge-ai-fab': ForgeAiElementProps<AiFabComponent, 'disabled' | 'extended' | 'label', {}, {}>;
458
+ /**
459
+ * An AI file picker component with button and icon-button variants.
460
+ *
461
+ * Slots:
462
+ * - `(default)`: The default slot for button content when no file is selected.
463
+ * - `icon`: The icon slot for icon-button variant.
464
+ */
465
+ 'forge-ai-file-picker': ForgeAiElementProps<AiFilePickerComponent, 'variant' | 'disabled' | 'accept' | 'multiple' | 'maxSize' | 'selectedFiles', {
466
+ /** Attribute form of `maxSize`. */
467
+ 'max-size'?: AiFilePickerComponent['maxSize'];
468
+ }, {
469
+ /**
470
+ * Fired when a file is selected via click or drag & drop. The event detail contains the selected file and timestamp.
471
+ */
472
+ 'onforge-ai-file-picker-change'?: (event: CustomEvent<ForgeAiFilePickerChangeEventData>) => void;
473
+ /**
474
+ * Fired when a selected file is rejected (too large or a duplicate).
475
+ */
476
+ 'onforge-ai-file-picker-error'?: (event: CustomEvent<ForgeAiFilePickerErrorEventData>) => void;
477
+ }>;
478
+ /**
479
+ * Slots:
480
+ * - `(default)`: Default slot for container content
481
+ */
482
+ 'forge-ai-gradient-container': ForgeAiElementProps<AiGradientContainerComponent, 'variant', {}, {}>;
483
+ 'forge-ai-icon': ForgeAiElementProps<AiIconComponent, 'outline', {}, {}>;
484
+ /**
485
+ * A primitive component for rendering a thread of chat messages, including user, assistant, system, and tool call messages.
486
+ *
487
+ * Slots:
488
+ * - `empty-state-icon`: Slot for custom empty state icon
489
+ * - `empty-state-heading`: Slot for custom empty state heading content
490
+ * - `empty-state-message`: Slot for custom empty state message content
491
+ * - `empty-state-actions`: Slot for custom empty state actions (e.g., suggestions)
492
+ */
493
+ 'forge-ai-message-thread': ForgeAiElementProps<AiMessageThreadComponent, 'messageItems' | 'tools' | 'enableReactions' | 'showThinking' | 'debugMode' | 'autoScroll', {
494
+ /** Attribute form of `enableReactions`. */
495
+ 'enable-reactions'?: AiMessageThreadComponent['enableReactions'];
496
+ /** Attribute form of `showThinking`. */
497
+ 'show-thinking'?: AiMessageThreadComponent['showThinking'];
498
+ /** Attribute form of `debugMode`. */
499
+ 'debug-mode'?: AiMessageThreadComponent['debugMode'];
500
+ /** Attribute form of `autoScroll`. */
501
+ 'auto-scroll'?: AiMessageThreadComponent['autoScroll'];
502
+ }, {
503
+ /**
504
+ * Fired when user clicks copy on a message
505
+ */
506
+ 'onforge-ai-message-thread-copy'?: (event: CustomEvent<ForgeAiMessageThreadCopyEventData>) => void;
507
+ /**
508
+ * Fired when user clicks resend on a message
509
+ */
510
+ 'onforge-ai-message-thread-resend'?: (event: CustomEvent<ForgeAiMessageThreadResendEventData>) => void;
511
+ /**
512
+ * Fired when user gives thumbs up
513
+ */
514
+ 'onforge-ai-message-thread-thumbs-up'?: (event: CustomEvent<ForgeAiMessageThreadThumbsEventData>) => void;
515
+ /**
516
+ * Fired when user gives thumbs down
517
+ */
518
+ 'onforge-ai-message-thread-thumbs-down'?: (event: CustomEvent<ForgeAiMessageThreadThumbsEventData>) => void;
519
+ /**
520
+ * Fired when user clicks copy on a user message
521
+ */
522
+ 'onforge-ai-message-thread-user-copy'?: (event: CustomEvent<ForgeAiMessageThreadCopyEventData>) => void;
523
+ /**
524
+ * Fired when user clicks resend on a user message
525
+ */
526
+ 'onforge-ai-message-thread-user-resend'?: (event: CustomEvent<ForgeAiMessageThreadResendEventData>) => void;
527
+ /**
528
+ * Fired when user edits a user message
529
+ */
530
+ 'onforge-ai-message-thread-user-edit'?: (event: CustomEvent<ForgeAiMessageThreadEditEventData>) => void;
531
+ }>;
532
+ /**
533
+ * Slots:
534
+ * - `(default)`: Default slot for modal content
535
+ */
536
+ 'forge-ai-modal': ForgeAiElementProps<AiModalComponent, 'open' | 'fullscreen' | 'sizeStrategy' | 'label', {
537
+ /** Attribute form of `sizeStrategy`. */
538
+ 'size-strategy'?: AiModalComponent['sizeStrategy'];
539
+ }, {
540
+ /**
541
+ * Fired when the modal is opened
542
+ */
543
+ 'onforge-ai-modal-open'?: (event: CustomEvent<void>) => void;
544
+ /**
545
+ * Fired when the modal is closed. Detail includes reason for closing.
546
+ */
547
+ 'onforge-ai-modal-close'?: (event: CustomEvent<{ reason: 'backdrop' | 'escape' | 'programmatic' }>) => void;
548
+ /**
549
+ * Fired when the fullscreen state changes
550
+ */
551
+ 'onforge-ai-modal-fullscreen-change'?: (event: CustomEvent<{ isFullscreen: boolean }>) => void;
552
+ }>;
553
+ /**
554
+ * A low-level overlay component that positions content relative to an anchor. Used by `forge-ai-popover` and `forge-ai-tooltip`.
555
+ *
556
+ * Slots:
557
+ * - `(default)`: The default slot for overlay content.
558
+ */
559
+ 'forge-ai-overlay': ForgeAiElementProps<ForgeAiOverlayComponent, 'anchor' | 'placement' | 'flip' | 'shift' | 'autoSize' | 'open' | 'arrowElement' | 'offset' | 'dismissMode', {
560
+ /** Attribute form of `autoSize`. */
561
+ 'auto-size'?: ForgeAiOverlayComponent['autoSize'];
562
+ /** Attribute form of `dismissMode`. */
563
+ 'dismiss-mode'?: ForgeAiOverlayComponent['dismissMode'];
564
+ }, {}>;
565
+ /**
566
+ * A compact previous/next paginator.
567
+ */
568
+ 'forge-ai-paginator': ForgeAiElementProps<AiPaginator, 'currentPage' | 'totalPages' | 'disabled', {
569
+ /** Attribute form of `currentPage`. */
570
+ 'current-page'?: AiPaginator['currentPage'];
571
+ /** Attribute form of `totalPages`. */
572
+ 'total-pages'?: AiPaginator['totalPages'];
573
+ }, {
574
+ /**
575
+ * Fired when the previous or next button is clicked.
576
+ */
577
+ 'onforge-ai-paginator-page-change'?: (event: CustomEvent<ForgeAiPaginatorPageChangeEventData>) => void;
578
+ }>;
579
+ /**
580
+ * A popover component that provides styled overlay functionality.
581
+ *
582
+ * Slots:
583
+ * - `(default)`: The default slot for popover content.
584
+ */
585
+ 'forge-ai-popover': ForgeAiElementProps<ForgeAiPopoverComponent, 'anchor' | 'placement' | 'flip' | 'shift' | 'autoSize' | 'open' | 'arrow' | 'offset' | 'dismissMode', {
586
+ /** Attribute form of `autoSize`. */
587
+ 'auto-size'?: ForgeAiPopoverComponent['autoSize'];
588
+ /** Attribute form of `dismissMode`. */
589
+ 'dismiss-mode'?: ForgeAiPopoverComponent['dismissMode'];
590
+ }, {}>;
591
+ /**
592
+ * Slots:
593
+ * - `actions-start`: Action components at the start of the actions row, hidden in inline mode (file picker, model selectors, web search, etc.)
594
+ * - `actions-end`: Action components at the end of the actions row, hidden in inline mode (voice input, etc.)
595
+ */
596
+ 'forge-ai-prompt': ForgeAiElementProps<AiPromptComponent, 'placeholder' | 'value' | 'variant' | 'sendDisabled' | 'autofocus' | 'inputDisabled' | 'cancelOnEscape' | 'running' | 'debugMode' | 'slashCommands' | 'contextItems', {
597
+ /** Attribute form of `sendDisabled`. */
598
+ 'send-disabled'?: AiPromptComponent['sendDisabled'];
599
+ /** Attribute form of `inputDisabled`. */
600
+ 'input-disabled'?: AiPromptComponent['inputDisabled'];
601
+ /** Attribute form of `debugMode`. */
602
+ 'debug-mode'?: AiPromptComponent['debugMode'];
603
+ }, {
604
+ /**
605
+ * Fired when a slash command is selected.
606
+ */
607
+ 'onforge-ai-prompt-command'?: (event: CustomEvent<ForgeAiPromptCommandEventData>) => void;
608
+ /**
609
+ * Fired when a context item is removed.
610
+ */
611
+ 'onforge-ai-prompt-context-remove'?: (event: CustomEvent<ForgeAiPromptContextRemoveEventData>) => void;
612
+ /**
613
+ * Fired when the send button is clicked or Enter is pressed (without Shift). Cancelable - if cancelled, running state is not set and input is not cleared.
614
+ */
615
+ 'onforge-ai-prompt-send'?: (event: CustomEvent<ForgeAiPromptSendEventData>) => void;
616
+ /**
617
+ * Fired when the Escape key is pressed (if cancelOnEscape is true).
618
+ */
619
+ 'onforge-ai-prompt-cancel'?: (event: CustomEvent<void>) => void;
620
+ /**
621
+ * Fired when files are pasted into the textarea.
622
+ */
623
+ 'onforge-ai-prompt-attachment'?: (event: CustomEvent<ForgeAiPromptAttachmentEventData>) => void;
624
+ /**
625
+ * Fired when the stop button is clicked. Cancelable - if cancelled, running state remains true.
626
+ */
627
+ 'onforge-ai-prompt-stop'?: (event: CustomEvent<void>) => void;
628
+ /**
629
+ * Fired when the debug icon button is clicked.
630
+ */
631
+ 'onforge-ai-prompt-debug-toggle'?: (event: CustomEvent<void>) => void;
632
+ }>;
633
+ 'forge-ai-reasoning': ForgeAiElementProps<AiReasoningComponent, 'expanded', {}, {}>;
634
+ 'forge-ai-reasoning-content': ForgeAiElementProps<ReasoningContentComponent, never, {}, {}>;
635
+ /**
636
+ * Slots:
637
+ * - `title`: Content for the header when in regular (non-reasoning) state
638
+ * - `reasoning-title`: Content for the header when in reasoning state
639
+ */
640
+ 'forge-ai-reasoning-header': ForgeAiElementProps<AiReasoningHeaderComponent, 'expanded' | 'reasoning', {}, {
641
+ /**
642
+ * Fired when the header is clicked and the expanded state changes
643
+ */
644
+ 'onforge-ai-reasoning-header-toggle'?: (event: CustomEvent<ForgeAiReasoningHeaderToggleEventData>) => void;
645
+ }>;
646
+ /**
647
+ * A simple wrapper component for rendering assistant response message content.
648
+ */
649
+ 'forge-ai-response-message': ForgeAiElementProps<AiResponseMessageComponent, never, {}, {}>;
650
+ 'forge-ai-response-message-toolbar': ForgeAiElementProps<AiResponseMessageToolbarComponent, 'enableReactions' | 'feedbackType' | 'feedbackReason', {
651
+ /** Attribute form of `enableReactions`. */
652
+ 'enable-reactions'?: AiResponseMessageToolbarComponent['enableReactions'];
653
+ /** Attribute form of `feedbackType`. */
654
+ 'feedback-type'?: AiResponseMessageToolbarComponent['feedbackType'];
655
+ /** Attribute form of `feedbackReason`. */
656
+ 'feedback-reason'?: AiResponseMessageToolbarComponent['feedbackReason'];
657
+ }, {
658
+ /**
659
+ * Fired when an action button is clicked. The detail contains the action type.
660
+ */
661
+ 'onforge-ai-response-message-toolbar-action'?: (event: CustomEvent<ForgeAiResponseMessageToolbarActionEventData>) => void;
662
+ /**
663
+ * Fired when feedback is submitted. The detail contains the action and optional feedback text.
664
+ */
665
+ 'onforge-ai-response-message-toolbar-feedback'?: (event: CustomEvent<ForgeAiResponseMessageToolbarFeedbackEventData>) => void;
666
+ }>;
667
+ /**
668
+ * Slots:
669
+ * - `(default)`: Default slot for sidebar content (typically ai-chat-interface)
670
+ */
671
+ 'forge-ai-sidebar': ForgeAiElementProps<AiSidebarComponent, 'open' | 'resizable' | 'width', {}, {
672
+ /**
673
+ * Fired when the sidebar is opened
674
+ */
675
+ 'onforge-ai-sidebar-open'?: (event: CustomEvent<void>) => void;
676
+ /**
677
+ * Fired when the sidebar is closed
678
+ */
679
+ 'onforge-ai-sidebar-close'?: (event: CustomEvent<void>) => void;
680
+ /**
681
+ * Fired when a resize is committed via pointer release or keyboard step
682
+ */
683
+ 'onforge-ai-sidebar-resize'?: (event: CustomEvent<ForgeAiSidebarResizeEventData>) => void;
684
+ }>;
685
+ 'forge-ai-slash-command-menu': ForgeAiElementProps<AiSlashCommandMenuComponent, 'commands' | 'filterQuery' | 'open' | 'anchor' | 'widthReference', {
686
+ /** Attribute form of `filterQuery`. */
687
+ 'filter-query'?: AiSlashCommandMenuComponent['filterQuery'];
688
+ }, {
689
+ /**
690
+ * Fired when a command is selected.
691
+ */
692
+ 'onforge-ai-slash-command-menu-select'?: (event: CustomEvent<ForgeAiSlashCommandMenuSelectEventData>) => void;
693
+ /**
694
+ * Fired when the menu should close.
695
+ */
696
+ 'onforge-ai-slash-command-menu-close'?: (event: CustomEvent<void>) => void;
697
+ }>;
698
+ /**
699
+ * Indeterminate circular progress indicator.
700
+ */
701
+ 'forge-ai-spinner': ForgeAiElementProps<AiSpinnerComponent, 'size', {}, {}>;
702
+ /**
703
+ * Expandable timeline summarizing the steps an agent took while producing a response.
704
+ */
705
+ 'forge-ai-steps': ForgeAiElementProps<AiStepsComponent, 'steps' | 'running', {}, {}>;
706
+ 'forge-ai-suggestions': ForgeAiElementProps<AiSuggestionsComponent, 'suggestions' | 'variant', {}, {
707
+ /**
708
+ * Fired when a suggestion is selected.
709
+ */
710
+ 'onforge-ai-suggestions-select'?: (event: CustomEvent<ForgeAiSuggestionsEventData>) => void;
711
+ }>;
712
+ /**
713
+ * A thinking indicator component that displays three animated dots to show that the system is processing or awaiting a response.
714
+ */
715
+ 'forge-ai-thinking-indicator': ForgeAiElementProps<AiThinkingIndicatorComponent, 'showText' | 'initialDelay' | 'cycleInterval', {
716
+ /** Attribute form of `showText`. */
717
+ 'show-text'?: AiThinkingIndicatorComponent['showText'];
718
+ /** Attribute form of `initialDelay`. */
719
+ 'initial-delay'?: AiThinkingIndicatorComponent['initialDelay'];
720
+ /** Attribute form of `cycleInterval`. */
721
+ 'cycle-interval'?: AiThinkingIndicatorComponent['cycleInterval'];
722
+ }, {}>;
723
+ /**
724
+ * Slots:
725
+ * - `icon`: Icon to display in the header
726
+ * - `title`: Title content for the header
727
+ * - `(default)`: Main content area
728
+ */
729
+ 'forge-ai-thought-base': ForgeAiElementProps<ThoughtBaseComponent, 'step', {}, {}>;
730
+ 'forge-ai-thought-detail': ForgeAiElementProps<ThoughtDetailComponent, never, {}, {}>;
731
+ 'forge-ai-thought-image': ForgeAiElementProps<ThoughtImageComponent, 'step', {}, {}>;
732
+ 'forge-ai-thought-search-result': ForgeAiElementProps<ThoughtSearchResultComponent, 'step' | 'sources', {}, {}>;
733
+ /**
734
+ * Slots:
735
+ * - `trigger-icon`: Slot for custom trigger icon (default: three-dot menu icon)
736
+ */
737
+ 'forge-ai-thread-actions-menu': ForgeAiElementProps<AiThreadActionsMenuComponent, 'thread' | 'showRename' | 'showDelete' | 'density', {
738
+ /** Attribute form of `showRename`. */
739
+ 'show-rename'?: AiThreadActionsMenuComponent['showRename'];
740
+ /** Attribute form of `showDelete`. */
741
+ 'show-delete'?: AiThreadActionsMenuComponent['showDelete'];
742
+ }, {
743
+ /**
744
+ * Fired when rename menu item is clicked.
745
+ */
746
+ 'onforge-ai-thread-actions-menu-rename'?: (event: CustomEvent<ForgeAiThreadActionsMenuRenameEventData>) => void;
747
+ /**
748
+ * Fired when delete menu item is clicked. Parent should show confirmation modal.
749
+ */
750
+ 'onforge-ai-thread-actions-menu-delete-click'?: (event: CustomEvent<ForgeAiThreadActionsMenuDeleteClickEventData>) => void;
751
+ /**
752
+ * Fired when the dropdown menu is opened.
753
+ */
754
+ 'onforge-ai-thread-actions-menu-open'?: (event: CustomEvent<ForgeAiThreadActionsMenuOpenEventData>) => void;
755
+ /**
756
+ * Fired when the dropdown menu is closed.
757
+ */
758
+ 'onforge-ai-thread-actions-menu-close'?: (event: CustomEvent<void>) => void;
759
+ }>;
760
+ /**
761
+ * Slots:
762
+ * - `header-actions`: Slot for a persistent action pinned to the top-right of the header, alongside the "New chat" button (e.g. a "View all" button).
763
+ */
764
+ 'forge-ai-threads-search': ForgeAiElementProps<AiThreadsSearchComponent, 'threads' | 'headerTitle' | 'showNewChatButton' | 'showBackButton' | 'showSearch' | 'totalChats' | 'placeholder' | 'errorMessage' | 'showThreadRename' | 'showThreadDelete' | 'selectedThreadId', {
765
+ /** Attribute form of `headerTitle`. */
766
+ 'header-title'?: AiThreadsSearchComponent['headerTitle'];
767
+ /** Attribute form of `showBackButton`. */
768
+ 'show-back-button'?: AiThreadsSearchComponent['showBackButton'];
769
+ /** Attribute form of `totalChats`. */
770
+ 'total-chats'?: AiThreadsSearchComponent['totalChats'];
771
+ /** Attribute form of `errorMessage`. */
772
+ 'error-message'?: AiThreadsSearchComponent['errorMessage'];
773
+ /** Attribute form of `showThreadRename`. */
774
+ 'show-thread-rename'?: AiThreadsSearchComponent['showThreadRename'];
775
+ /** Attribute form of `showThreadDelete`. */
776
+ 'show-thread-delete'?: AiThreadsSearchComponent['showThreadDelete'];
777
+ /** Attribute form of `selectedThreadId`. */
778
+ 'selected-thread-id'?: AiThreadsSearchComponent['selectedThreadId'];
779
+ }, {
780
+ /**
781
+ * Fired when search query changes (debounced).
782
+ */
783
+ 'onforge-ai-threads-search-query'?: (event: CustomEvent<ForgeAiThreadsSearchQueryEventData>) => void;
784
+ /**
785
+ * Fired when the user scrolls near the bottom or clicks "Load more" for pagination.
786
+ */
787
+ 'onforge-ai-threads-search-load-more'?: (event: CustomEvent<ForgeAiThreadsSearchLoadMoreEventData>) => void;
788
+ /**
789
+ * Fired when a thread is selected.
790
+ */
791
+ 'onforge-ai-threads-search-select'?: (event: CustomEvent<ForgeAiThreadsSearchSelectEventData>) => void;
792
+ /**
793
+ * Fired when new chat button clicked.
794
+ */
795
+ 'onforge-ai-threads-search-new-chat'?: (event: CustomEvent<void>) => void;
796
+ /**
797
+ * Fired when thread renamed. Cancelable - if prevented, call onSuccess() to commit or onError() to revert.
798
+ */
799
+ 'onforge-ai-threads-search-rename'?: (event: CustomEvent<ForgeAiThreadsSearchRenameEventData>) => void;
800
+ /**
801
+ * Fired when thread delete confirmed. Cancelable - if prevented, call onSuccess() to commit deletion or onError() to revert.
802
+ */
803
+ 'onforge-ai-threads-search-delete'?: (event: CustomEvent<ForgeAiThreadsSearchDeleteEventData>) => void;
804
+ /**
805
+ * Fired before showing the built-in delete confirmation. Cancelable - if prevented, this component shows no confirmation UI; the host must show its own and call confirmThreadDelete() once accepted.
806
+ */
807
+ 'onforge-ai-threads-search-delete-confirm'?: (event: CustomEvent<ForgeAiThreadsSearchDeleteConfirmEventData>) => void;
808
+ /**
809
+ * Fired when the back button (shown via showBackButton) is clicked.
810
+ */
811
+ 'onforge-ai-threads-search-back'?: (event: CustomEvent<void>) => void;
812
+ /**
813
+ * Fired when the retry button in the error state is clicked. The host should re-request the threads and clear errorMessage once the load succeeds.
814
+ */
815
+ 'onforge-ai-threads-search-retry'?: (event: CustomEvent<void>) => void;
816
+ }>;
817
+ 'forge-ai-tool-call': ForgeAiElementProps<AiToolCallComponent, 'toolCall' | 'toolDefinition', {}, {
818
+ /**
819
+ * Fired when the rendered content changes size and the containing message thread should scroll to keep it in view.
820
+ */
821
+ 'onforge-ai-message-thread-scroll-request'?: (event: CustomEvent<void>) => void;
822
+ }>;
823
+ /**
824
+ * Expandable timeline summarizing the tool calls made during an assistant response.
825
+ */
826
+ 'forge-ai-tool-call-indicator': ForgeAiElementProps<AiToolCallIndicatorComponent, 'toolCalls' | 'tools' | 'debugMode', {
827
+ /** Attribute form of `debugMode`. */
828
+ 'debug-mode'?: AiToolCallIndicatorComponent['debugMode'];
829
+ }, {}>;
830
+ /**
831
+ * Data table component tool renderer for displaying tabular data with pagination and filtering.
832
+ */
833
+ 'forge-ai-tool-data-table': ForgeAiElementProps<DataTableToolElement, 'toolCall', {}, {}>;
834
+ /**
835
+ * Steps component tool renderer. Maps a `displaySteps` tool call onto the presentational
836
+ * `forge-ai-steps` primitive, so the primitive stays unaware of tool calls.
837
+ */
838
+ 'forge-ai-tool-steps': ForgeAiElementProps<StepsToolElement, 'toolCall', {}, {}>;
839
+ /**
840
+ * A tooltip component with accessibility features and dynamic positioning.
841
+ *
842
+ * Slots:
843
+ * - `(default)`: The default slot for tooltip content.
844
+ */
845
+ 'forge-ai-tooltip': ForgeAiElementProps<ForgeAiTooltipComponent, 'for' | 'text' | 'placement' | 'trigger' | 'open' | 'delay' | 'hideDelay', {
846
+ /** Attribute form of `hideDelay`. */
847
+ 'hide-delay'?: ForgeAiTooltipComponent['hideDelay'];
848
+ }, {}>;
849
+ 'forge-ai-user-message': ForgeAiElementProps<AiUserMessageComponent, 'timestamp' | 'messageId' | 'streaming' | 'content', {
850
+ /** Attribute form of `messageId`. */
851
+ 'message-id'?: AiUserMessageComponent['messageId'];
852
+ }, {
853
+ /**
854
+ * Fired when user clicks copy button
855
+ */
856
+ 'onforge-ai-user-message-copy'?: (event: CustomEvent<ForgeAiUserMessageCopyEventData>) => void;
857
+ /**
858
+ * Fired when user clicks resend button
859
+ */
860
+ 'onforge-ai-user-message-resend'?: (event: CustomEvent<ForgeAiUserMessageResendEventData>) => void;
861
+ /**
862
+ * Fired when user saves edited message
863
+ */
864
+ 'onforge-ai-user-message-edit'?: (event: CustomEvent<ForgeAiUserMessageEditEventData>) => void;
865
+ }>;
866
+ /**
867
+ * Toolbar for user message actions including copy, resend, and edit.
868
+ */
869
+ 'forge-ai-user-message-toolbar': ForgeAiElementProps<AiUserMessageToolbarComponent, 'timestamp' | 'streaming', {}, {
870
+ /**
871
+ * Fired when copy button is clicked
872
+ */
873
+ 'onforge-ai-user-message-toolbar-copy'?: (event: CustomEvent<void>) => void;
874
+ /**
875
+ * Fired when resend button is clicked
876
+ */
877
+ 'onforge-ai-user-message-toolbar-resend'?: (event: CustomEvent<void>) => void;
878
+ /**
879
+ * Fired when edit button is clicked
880
+ */
881
+ 'onforge-ai-user-message-toolbar-edit'?: (event: CustomEvent<void>) => void;
882
+ }>;
883
+ 'forge-ai-voice-input': ForgeAiElementProps<AiVoiceInputComponent, never, {}, {
884
+ /**
885
+ * Fired when speech recognition produces a result. The event detail contains the transcript and confidence score of the recognized speech.
886
+ */
887
+ 'onforge-ai-voice-input-result'?: (event: CustomEvent<ForgeAiVoiceInputResultEvent>) => void;
888
+ }>;
889
+ }
890
+
891
+ declare module 'react' {
892
+ namespace JSX {
893
+ interface IntrinsicElements extends ForgeAiIntrinsicElements {}
894
+ }
895
+ }