@memberjunction/ng-conversations 6.2.0-edge.0 → 6.2.0-edge.2

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 (351) hide show
  1. package/README.md +43 -2
  2. package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts +19 -3
  3. package/dist/lib/components/active-tasks/active-tasks-panel.component.d.ts.map +1 -1
  4. package/dist/lib/components/active-tasks/active-tasks-panel.component.js +39 -7
  5. package/dist/lib/components/active-tasks/active-tasks-panel.component.js.map +1 -1
  6. package/dist/lib/components/agent/active-agent-indicator.component.d.ts +74 -6
  7. package/dist/lib/components/agent/active-agent-indicator.component.d.ts.map +1 -1
  8. package/dist/lib/components/agent/active-agent-indicator.component.js +111 -21
  9. package/dist/lib/components/agent/active-agent-indicator.component.js.map +1 -1
  10. package/dist/lib/components/agent/agent-process-panel.component.d.ts +31 -5
  11. package/dist/lib/components/agent/agent-process-panel.component.d.ts.map +1 -1
  12. package/dist/lib/components/agent/agent-process-panel.component.js +71 -15
  13. package/dist/lib/components/agent/agent-process-panel.component.js.map +1 -1
  14. package/dist/lib/components/artifact/artifact-share-modal.component.d.ts +65 -9
  15. package/dist/lib/components/artifact/artifact-share-modal.component.d.ts.map +1 -1
  16. package/dist/lib/components/artifact/artifact-share-modal.component.js +169 -57
  17. package/dist/lib/components/artifact/artifact-share-modal.component.js.map +1 -1
  18. package/dist/lib/components/attachment/image-viewer.component.d.ts +77 -11
  19. package/dist/lib/components/attachment/image-viewer.component.d.ts.map +1 -1
  20. package/dist/lib/components/attachment/image-viewer.component.js +181 -47
  21. package/dist/lib/components/attachment/image-viewer.component.js.map +1 -1
  22. package/dist/lib/components/collection/artifact-collection-picker-modal.component.d.ts +129 -19
  23. package/dist/lib/components/collection/artifact-collection-picker-modal.component.d.ts.map +1 -1
  24. package/dist/lib/components/collection/artifact-collection-picker-modal.component.js +350 -116
  25. package/dist/lib/components/collection/artifact-collection-picker-modal.component.js.map +1 -1
  26. package/dist/lib/components/collection/artifact-create-modal.component.d.ts +60 -8
  27. package/dist/lib/components/collection/artifact-create-modal.component.d.ts.map +1 -1
  28. package/dist/lib/components/collection/artifact-create-modal.component.js +130 -46
  29. package/dist/lib/components/collection/artifact-create-modal.component.js.map +1 -1
  30. package/dist/lib/components/collection/collection-artifact-card.component.d.ts +63 -3
  31. package/dist/lib/components/collection/collection-artifact-card.component.d.ts.map +1 -1
  32. package/dist/lib/components/collection/collection-artifact-card.component.js +113 -19
  33. package/dist/lib/components/collection/collection-artifact-card.component.js.map +1 -1
  34. package/dist/lib/components/collection/collection-form-modal.component.d.ts +54 -8
  35. package/dist/lib/components/collection/collection-form-modal.component.d.ts.map +1 -1
  36. package/dist/lib/components/collection/collection-form-modal.component.js +130 -46
  37. package/dist/lib/components/collection/collection-form-modal.component.js.map +1 -1
  38. package/dist/lib/components/collection/collection-share-modal.component.d.ts +70 -10
  39. package/dist/lib/components/collection/collection-share-modal.component.d.ts.map +1 -1
  40. package/dist/lib/components/collection/collection-share-modal.component.js +175 -53
  41. package/dist/lib/components/collection/collection-share-modal.component.js.map +1 -1
  42. package/dist/lib/components/collection/collection-tree.component.d.ts +89 -9
  43. package/dist/lib/components/collection/collection-tree.component.d.ts.map +1 -1
  44. package/dist/lib/components/collection/collection-tree.component.js +220 -70
  45. package/dist/lib/components/collection/collection-tree.component.js.map +1 -1
  46. package/dist/lib/components/collection/collection-view.component.d.ts +89 -11
  47. package/dist/lib/components/collection/collection-view.component.d.ts.map +1 -1
  48. package/dist/lib/components/collection/collection-view.component.js +154 -40
  49. package/dist/lib/components/collection/collection-view.component.js.map +1 -1
  50. package/dist/lib/components/collection/collections-full-view.component.d.ts +390 -38
  51. package/dist/lib/components/collection/collections-full-view.component.d.ts.map +1 -1
  52. package/dist/lib/components/collection/collections-full-view.component.js +951 -367
  53. package/dist/lib/components/collection/collections-full-view.component.js.map +1 -1
  54. package/dist/lib/components/composer/ai-composer.component.d.ts +213 -18
  55. package/dist/lib/components/composer/ai-composer.component.d.ts.map +1 -1
  56. package/dist/lib/components/composer/ai-composer.component.js +388 -44
  57. package/dist/lib/components/composer/ai-composer.component.js.map +1 -1
  58. package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts +12 -1
  59. package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts.map +1 -1
  60. package/dist/lib/components/conversation/conversation-agent-picker.component.js +26 -4
  61. package/dist/lib/components/conversation/conversation-agent-picker.component.js.map +1 -1
  62. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +1191 -124
  63. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
  64. package/dist/lib/components/conversation/conversation-chat-area.component.js +2816 -785
  65. package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
  66. package/dist/lib/components/conversation/conversation-empty-state.component.d.ts +139 -19
  67. package/dist/lib/components/conversation/conversation-empty-state.component.d.ts.map +1 -1
  68. package/dist/lib/components/conversation/conversation-empty-state.component.js +296 -59
  69. package/dist/lib/components/conversation/conversation-empty-state.component.js.map +1 -1
  70. package/dist/lib/components/conversation/conversation-list.component.d.ts +579 -78
  71. package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -1
  72. package/dist/lib/components/conversation/conversation-list.component.js +2322 -823
  73. package/dist/lib/components/conversation/conversation-list.component.js.map +1 -1
  74. package/dist/lib/components/conversation/pinned-messages-panel.component.d.ts +42 -4
  75. package/dist/lib/components/conversation/pinned-messages-panel.component.d.ts.map +1 -1
  76. package/dist/lib/components/conversation/pinned-messages-panel.component.js +93 -21
  77. package/dist/lib/components/conversation/pinned-messages-panel.component.js.map +1 -1
  78. package/dist/lib/components/dialogs/input-dialog.component.d.ts +57 -11
  79. package/dist/lib/components/dialogs/input-dialog.component.d.ts.map +1 -1
  80. package/dist/lib/components/dialogs/input-dialog.component.js +128 -16
  81. package/dist/lib/components/dialogs/input-dialog.component.js.map +1 -1
  82. package/dist/lib/components/dialogs/rating-dialog.component.d.ts +68 -10
  83. package/dist/lib/components/dialogs/rating-dialog.component.d.ts.map +1 -1
  84. package/dist/lib/components/dialogs/rating-dialog.component.js +151 -27
  85. package/dist/lib/components/dialogs/rating-dialog.component.js.map +1 -1
  86. package/dist/lib/components/export/export-modal.component.d.ts +84 -10
  87. package/dist/lib/components/export/export-modal.component.d.ts.map +1 -1
  88. package/dist/lib/components/export/export-modal.component.js +173 -49
  89. package/dist/lib/components/export/export-modal.component.js.map +1 -1
  90. package/dist/lib/components/global-tasks/global-tasks-panel.component.d.ts +29 -3
  91. package/dist/lib/components/global-tasks/global-tasks-panel.component.d.ts.map +1 -1
  92. package/dist/lib/components/global-tasks/global-tasks-panel.component.js +58 -12
  93. package/dist/lib/components/global-tasks/global-tasks-panel.component.js.map +1 -1
  94. package/dist/lib/components/library/library-full-view.component.d.ts +57 -8
  95. package/dist/lib/components/library/library-full-view.component.d.ts.map +1 -1
  96. package/dist/lib/components/library/library-full-view.component.js +119 -35
  97. package/dist/lib/components/library/library-full-view.component.js.map +1 -1
  98. package/dist/lib/components/members/members-modal.component.d.ts +76 -10
  99. package/dist/lib/components/members/members-modal.component.d.ts.map +1 -1
  100. package/dist/lib/components/members/members-modal.component.js +164 -50
  101. package/dist/lib/components/members/members-modal.component.js.map +1 -1
  102. package/dist/lib/components/message/actionable-commands.component.d.ts +49 -5
  103. package/dist/lib/components/message/actionable-commands.component.d.ts.map +1 -1
  104. package/dist/lib/components/message/actionable-commands.component.js +140 -26
  105. package/dist/lib/components/message/actionable-commands.component.js.map +1 -1
  106. package/dist/lib/components/message/conversation-message-rating.component.d.ts +46 -10
  107. package/dist/lib/components/message/conversation-message-rating.component.d.ts.map +1 -1
  108. package/dist/lib/components/message/conversation-message-rating.component.js +120 -36
  109. package/dist/lib/components/message/conversation-message-rating.component.js.map +1 -1
  110. package/dist/lib/components/message/message-input.component.d.ts +613 -74
  111. package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
  112. package/dist/lib/components/message/message-input.component.js +1390 -422
  113. package/dist/lib/components/message/message-input.component.js.map +1 -1
  114. package/dist/lib/components/message/message-item.component.d.ts +490 -29
  115. package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
  116. package/dist/lib/components/message/message-item.component.js +1088 -244
  117. package/dist/lib/components/message/message-item.component.js.map +1 -1
  118. package/dist/lib/components/message/message-list.component.d.ts +297 -29
  119. package/dist/lib/components/message/message-list.component.d.ts.map +1 -1
  120. package/dist/lib/components/message/message-list.component.js +598 -123
  121. package/dist/lib/components/message/message-list.component.js.map +1 -1
  122. package/dist/lib/components/navigation/conversation-navigation.component.d.ts +64 -5
  123. package/dist/lib/components/navigation/conversation-navigation.component.d.ts.map +1 -1
  124. package/dist/lib/components/navigation/conversation-navigation.component.js +101 -11
  125. package/dist/lib/components/navigation/conversation-navigation.component.js.map +1 -1
  126. package/dist/lib/components/notification/activity-indicator.component.d.ts +6 -2
  127. package/dist/lib/components/notification/activity-indicator.component.d.ts.map +1 -1
  128. package/dist/lib/components/notification/activity-indicator.component.js +13 -3
  129. package/dist/lib/components/notification/activity-indicator.component.js.map +1 -1
  130. package/dist/lib/components/notification/notification-badge.component.d.ts +15 -3
  131. package/dist/lib/components/notification/notification-badge.component.d.ts.map +1 -1
  132. package/dist/lib/components/notification/notification-badge.component.js +36 -8
  133. package/dist/lib/components/notification/notification-badge.component.js.map +1 -1
  134. package/dist/lib/components/overlay/chat-overlay.component.d.ts +1 -1
  135. package/dist/lib/components/overlay/chat-overlay.component.js +4 -4
  136. package/dist/lib/components/overlay/chat-overlay.component.js.map +1 -1
  137. package/dist/lib/components/project/project-form-modal.component.d.ts +93 -11
  138. package/dist/lib/components/project/project-form-modal.component.d.ts.map +1 -1
  139. package/dist/lib/components/project/project-form-modal.component.js +348 -87
  140. package/dist/lib/components/project/project-form-modal.component.js.map +1 -1
  141. package/dist/lib/components/project/project-selector.component.d.ts +78 -8
  142. package/dist/lib/components/project/project-selector.component.d.ts.map +1 -1
  143. package/dist/lib/components/project/project-selector.component.js +177 -46
  144. package/dist/lib/components/project/project-selector.component.js.map +1 -1
  145. package/dist/lib/components/realtime/realtime-activity-rail.component.d.ts +1 -1
  146. package/dist/lib/components/realtime/realtime-activity-rail.component.js +2 -2
  147. package/dist/lib/components/realtime/realtime-activity-rail.component.js.map +1 -1
  148. package/dist/lib/components/realtime/realtime-delegation-card.component.d.ts +1 -1
  149. package/dist/lib/components/realtime/realtime-delegation-card.component.js +2 -2
  150. package/dist/lib/components/realtime/realtime-delegation-card.component.js.map +1 -1
  151. package/dist/lib/components/realtime/realtime-session-overlay.component.d.ts +2 -2
  152. package/dist/lib/components/realtime/realtime-session-overlay.component.js +18 -18
  153. package/dist/lib/components/realtime/realtime-session-overlay.component.js.map +1 -1
  154. package/dist/lib/components/realtime/realtime-session-timeline-card.component.d.ts +47 -23
  155. package/dist/lib/components/realtime/realtime-session-timeline-card.component.d.ts.map +1 -1
  156. package/dist/lib/components/realtime/realtime-session-timeline-card.component.js +136 -92
  157. package/dist/lib/components/realtime/realtime-session-timeline-card.component.js.map +1 -1
  158. package/dist/lib/components/realtime/realtime-surface-tabs.component.d.ts +2 -2
  159. package/dist/lib/components/realtime/realtime-surface-tabs.component.js +4 -4
  160. package/dist/lib/components/realtime/realtime-surface-tabs.component.js.map +1 -1
  161. package/dist/lib/components/realtime/realtime-surface-tabs.model.d.ts +1 -1
  162. package/dist/lib/components/realtime/realtime-surface-tabs.model.js +3 -3
  163. package/dist/lib/components/realtime/realtime-surface-tabs.model.js.map +1 -1
  164. package/dist/lib/components/realtime/realtime-ui-config.d.ts +13 -11
  165. package/dist/lib/components/realtime/realtime-ui-config.d.ts.map +1 -1
  166. package/dist/lib/components/realtime/realtime-ui-config.js +29 -25
  167. package/dist/lib/components/realtime/realtime-ui-config.js.map +1 -1
  168. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.d.ts +3 -1
  169. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.d.ts.map +1 -1
  170. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.js +6 -2
  171. package/dist/lib/components/realtime/whiteboard/whiteboard-channel.js.map +1 -1
  172. package/dist/lib/components/search/search-panel.component.d.ts +133 -22
  173. package/dist/lib/components/search/search-panel.component.d.ts.map +1 -1
  174. package/dist/lib/components/search/search-panel.component.js +312 -83
  175. package/dist/lib/components/search/search-panel.component.js.map +1 -1
  176. package/dist/lib/components/share/share-modal.component.d.ts +69 -9
  177. package/dist/lib/components/share/share-modal.component.d.ts.map +1 -1
  178. package/dist/lib/components/share/share-modal.component.js +139 -31
  179. package/dist/lib/components/share/share-modal.component.js.map +1 -1
  180. package/dist/lib/components/shared/user-picker.component.d.ts +48 -8
  181. package/dist/lib/components/shared/user-picker.component.d.ts.map +1 -1
  182. package/dist/lib/components/shared/user-picker.component.js +110 -30
  183. package/dist/lib/components/shared/user-picker.component.js.map +1 -1
  184. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts +114 -11
  185. package/dist/lib/components/sidebar/conversation-sidebar.component.d.ts.map +1 -1
  186. package/dist/lib/components/sidebar/conversation-sidebar.component.js +199 -21
  187. package/dist/lib/components/sidebar/conversation-sidebar.component.js.map +1 -1
  188. package/dist/lib/components/sidebar/routines-section.component.d.ts +20 -1
  189. package/dist/lib/components/sidebar/routines-section.component.d.ts.map +1 -1
  190. package/dist/lib/components/sidebar/routines-section.component.js +25 -5
  191. package/dist/lib/components/sidebar/routines-section.component.js.map +1 -1
  192. package/dist/lib/components/slots/slot-interfaces.d.ts +19 -0
  193. package/dist/lib/components/slots/slot-interfaces.d.ts.map +1 -1
  194. package/dist/lib/components/slots/slot-interfaces.js.map +1 -1
  195. package/dist/lib/components/task/tasks-full-view.component.d.ts +95 -13
  196. package/dist/lib/components/task/tasks-full-view.component.d.ts.map +1 -1
  197. package/dist/lib/components/task/tasks-full-view.component.js +223 -75
  198. package/dist/lib/components/task/tasks-full-view.component.js.map +1 -1
  199. package/dist/lib/components/tasks/task-widget.component.d.ts +46 -6
  200. package/dist/lib/components/tasks/task-widget.component.d.ts.map +1 -1
  201. package/dist/lib/components/tasks/task-widget.component.js +100 -16
  202. package/dist/lib/components/tasks/task-widget.component.js.map +1 -1
  203. package/dist/lib/components/tasks/tasks-dropdown.component.d.ts +64 -7
  204. package/dist/lib/components/tasks/tasks-dropdown.component.d.ts.map +1 -1
  205. package/dist/lib/components/tasks/tasks-dropdown.component.js +127 -27
  206. package/dist/lib/components/tasks/tasks-dropdown.component.js.map +1 -1
  207. package/dist/lib/components/thread/thread-panel.component.d.ts +66 -8
  208. package/dist/lib/components/thread/thread-panel.component.d.ts.map +1 -1
  209. package/dist/lib/components/thread/thread-panel.component.js +146 -36
  210. package/dist/lib/components/thread/thread-panel.component.js.map +1 -1
  211. package/dist/lib/components/toast/toast.component.d.ts +11 -1
  212. package/dist/lib/components/toast/toast.component.d.ts.map +1 -1
  213. package/dist/lib/components/toast/toast.component.js +25 -5
  214. package/dist/lib/components/toast/toast.component.js.map +1 -1
  215. package/dist/lib/components/workspace/conversation-workspace.component.d.ts +385 -42
  216. package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
  217. package/dist/lib/components/workspace/conversation-workspace.component.js +891 -292
  218. package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
  219. package/dist/lib/composer-plugins/base-conversation-mention.provider.d.ts +8 -0
  220. package/dist/lib/composer-plugins/base-conversation-mention.provider.d.ts.map +1 -1
  221. package/dist/lib/composer-plugins/base-conversation-mention.provider.js +8 -1
  222. package/dist/lib/composer-plugins/base-conversation-mention.provider.js.map +1 -1
  223. package/dist/lib/directives/chat-slot.directive.d.ts +5 -1
  224. package/dist/lib/directives/chat-slot.directive.d.ts.map +1 -1
  225. package/dist/lib/directives/chat-slot.directive.js.map +1 -1
  226. package/dist/lib/directives/search-shortcut.directive.d.ts +9 -1
  227. package/dist/lib/directives/search-shortcut.directive.d.ts.map +1 -1
  228. package/dist/lib/directives/search-shortcut.directive.js +14 -4
  229. package/dist/lib/directives/search-shortcut.directive.js.map +1 -1
  230. package/dist/lib/events/chat-events.d.ts +34 -7
  231. package/dist/lib/events/chat-events.d.ts.map +1 -1
  232. package/dist/lib/events/chat-events.js +37 -7
  233. package/dist/lib/events/chat-events.js.map +1 -1
  234. package/dist/lib/models/agent-turn.model.d.ts +113 -0
  235. package/dist/lib/models/agent-turn.model.d.ts.map +1 -0
  236. package/dist/lib/models/agent-turn.model.js +12 -0
  237. package/dist/lib/models/agent-turn.model.js.map +1 -0
  238. package/dist/lib/models/collection-view.model.js.map +1 -1
  239. package/dist/lib/models/conversation-state.model.d.ts +8 -0
  240. package/dist/lib/models/conversation-state.model.d.ts.map +1 -1
  241. package/dist/lib/models/conversation-state.model.js.map +1 -1
  242. package/dist/lib/models/lazy-artifact-info.d.ts +44 -12
  243. package/dist/lib/models/lazy-artifact-info.d.ts.map +1 -1
  244. package/dist/lib/models/lazy-artifact-info.js +98 -34
  245. package/dist/lib/models/lazy-artifact-info.js.map +1 -1
  246. package/dist/lib/services/active-tasks.service.d.ts +30 -4
  247. package/dist/lib/services/active-tasks.service.d.ts.map +1 -1
  248. package/dist/lib/services/active-tasks.service.js +71 -19
  249. package/dist/lib/services/active-tasks.service.js.map +1 -1
  250. package/dist/lib/services/agent-state.service.d.ts +17 -1
  251. package/dist/lib/services/agent-state.service.d.ts.map +1 -1
  252. package/dist/lib/services/agent-state.service.js +48 -16
  253. package/dist/lib/services/agent-state.service.js.map +1 -1
  254. package/dist/lib/services/artifact-permission.service.d.ts +39 -0
  255. package/dist/lib/services/artifact-permission.service.d.ts.map +1 -1
  256. package/dist/lib/services/artifact-permission.service.js +152 -17
  257. package/dist/lib/services/artifact-permission.service.js.map +1 -1
  258. package/dist/lib/services/artifact-state.service.d.ts +58 -5
  259. package/dist/lib/services/artifact-state.service.d.ts.map +1 -1
  260. package/dist/lib/services/artifact-state.service.js +135 -35
  261. package/dist/lib/services/artifact-state.service.js.map +1 -1
  262. package/dist/lib/services/collection-permission.service.d.ts +28 -0
  263. package/dist/lib/services/collection-permission.service.d.ts.map +1 -1
  264. package/dist/lib/services/collection-permission.service.js +88 -32
  265. package/dist/lib/services/collection-permission.service.js.map +1 -1
  266. package/dist/lib/services/collection-state.service.d.ts +11 -1
  267. package/dist/lib/services/collection-state.service.d.ts.map +1 -1
  268. package/dist/lib/services/collection-state.service.js +25 -5
  269. package/dist/lib/services/collection-state.service.js.map +1 -1
  270. package/dist/lib/services/conversation-agent.service.d.ts +47 -4
  271. package/dist/lib/services/conversation-agent.service.d.ts.map +1 -1
  272. package/dist/lib/services/conversation-agent.service.js +85 -20
  273. package/dist/lib/services/conversation-agent.service.js.map +1 -1
  274. package/dist/lib/services/conversation-attachment.service.d.ts +17 -0
  275. package/dist/lib/services/conversation-attachment.service.d.ts.map +1 -1
  276. package/dist/lib/services/conversation-attachment.service.js +38 -10
  277. package/dist/lib/services/conversation-attachment.service.js.map +1 -1
  278. package/dist/lib/services/conversation-liveness-dom.service.d.ts +42 -0
  279. package/dist/lib/services/conversation-liveness-dom.service.d.ts.map +1 -0
  280. package/dist/lib/services/conversation-liveness-dom.service.js +74 -0
  281. package/dist/lib/services/conversation-liveness-dom.service.js.map +1 -0
  282. package/dist/lib/services/conversation-streaming.service.d.ts +22 -0
  283. package/dist/lib/services/conversation-streaming.service.d.ts.map +1 -1
  284. package/dist/lib/services/conversation-streaming.service.js +50 -10
  285. package/dist/lib/services/conversation-streaming.service.js.map +1 -1
  286. package/dist/lib/services/data-cache.service.d.ts +31 -0
  287. package/dist/lib/services/data-cache.service.d.ts.map +1 -1
  288. package/dist/lib/services/data-cache.service.js +71 -15
  289. package/dist/lib/services/data-cache.service.js.map +1 -1
  290. package/dist/lib/services/dialog.service.d.ts +13 -0
  291. package/dist/lib/services/dialog.service.d.ts.map +1 -1
  292. package/dist/lib/services/dialog.service.js +25 -5
  293. package/dist/lib/services/dialog.service.js.map +1 -1
  294. package/dist/lib/services/export.service.d.ts +2 -0
  295. package/dist/lib/services/export.service.d.ts.map +1 -1
  296. package/dist/lib/services/export.service.js +5 -1
  297. package/dist/lib/services/export.service.js.map +1 -1
  298. package/dist/lib/services/mention-parser.service.d.ts +10 -0
  299. package/dist/lib/services/mention-parser.service.d.ts.map +1 -1
  300. package/dist/lib/services/mention-parser.service.js +25 -5
  301. package/dist/lib/services/mention-parser.service.js.map +1 -1
  302. package/dist/lib/services/notification.service.d.ts +54 -6
  303. package/dist/lib/services/notification.service.d.ts.map +1 -1
  304. package/dist/lib/services/notification.service.js +123 -27
  305. package/dist/lib/services/notification.service.js.map +1 -1
  306. package/dist/lib/services/realtime-audio-recorder.d.ts +4 -4
  307. package/dist/lib/services/realtime-audio-recorder.js +12 -12
  308. package/dist/lib/services/realtime-audio-recorder.js.map +1 -1
  309. package/dist/lib/services/realtime-pcm-wav.d.ts +4 -0
  310. package/dist/lib/services/realtime-pcm-wav.d.ts.map +1 -1
  311. package/dist/lib/services/realtime-pcm-wav.js +10 -2
  312. package/dist/lib/services/realtime-pcm-wav.js.map +1 -1
  313. package/dist/lib/services/search.service.d.ts +42 -9
  314. package/dist/lib/services/search.service.d.ts.map +1 -1
  315. package/dist/lib/services/search.service.js +103 -23
  316. package/dist/lib/services/search.service.js.map +1 -1
  317. package/dist/lib/services/toast.service.d.ts +19 -1
  318. package/dist/lib/services/toast.service.d.ts.map +1 -1
  319. package/dist/lib/services/toast.service.js +45 -9
  320. package/dist/lib/services/toast.service.js.map +1 -1
  321. package/dist/lib/services/ui-command-handler.service.d.ts +56 -5
  322. package/dist/lib/services/ui-command-handler.service.d.ts.map +1 -1
  323. package/dist/lib/services/ui-command-handler.service.js +113 -16
  324. package/dist/lib/services/ui-command-handler.service.js.map +1 -1
  325. package/dist/lib/utils/agent-artifact-summary.d.ts +2 -2
  326. package/dist/lib/utils/agent-artifact-summary.js +3 -3
  327. package/dist/lib/utils/agent-artifact-summary.js.map +1 -1
  328. package/dist/lib/utils/agent-turn-routing.d.ts +70 -0
  329. package/dist/lib/utils/agent-turn-routing.d.ts.map +1 -0
  330. package/dist/lib/utils/agent-turn-routing.js +84 -0
  331. package/dist/lib/utils/agent-turn-routing.js.map +1 -0
  332. package/dist/lib/utils/artifact-panel-action.d.ts +15 -4
  333. package/dist/lib/utils/artifact-panel-action.d.ts.map +1 -1
  334. package/dist/lib/utils/artifact-panel-action.js +10 -2
  335. package/dist/lib/utils/artifact-panel-action.js.map +1 -1
  336. package/dist/lib/utils/decision-routing.d.ts +68 -0
  337. package/dist/lib/utils/decision-routing.d.ts.map +1 -0
  338. package/dist/lib/utils/decision-routing.js +101 -0
  339. package/dist/lib/utils/decision-routing.js.map +1 -0
  340. package/dist/lib/utils/distinct-artifacts.d.ts +2 -0
  341. package/dist/lib/utils/distinct-artifacts.d.ts.map +1 -1
  342. package/dist/lib/utils/distinct-artifacts.js +5 -1
  343. package/dist/lib/utils/distinct-artifacts.js.map +1 -1
  344. package/dist/lib/utils/plan-mode-preference.d.ts +2 -2
  345. package/dist/lib/utils/plan-mode-preference.js +6 -6
  346. package/dist/lib/utils/plan-mode-preference.js.map +1 -1
  347. package/dist/public-api.d.ts +5 -0
  348. package/dist/public-api.d.ts.map +1 -1
  349. package/dist/public-api.js +8 -0
  350. package/dist/public-api.js.map +1 -1
  351. package/package.json +32 -32
@@ -5,6 +5,7 @@ import { MJConversationEntity, MJConversationDetailEntity, MJAIAgentRunEntity, M
5
5
  import { MJAIAgentRunEntityExtended } from "@memberjunction/ai-core-plus";
6
6
  import { UICommandHandlerService } from '../../services/ui-command-handler.service';
7
7
  import { AgentStateService } from '../../services/agent-state.service';
8
+ import { ConversationLivenessDomService } from '../../services/conversation-liveness-dom.service';
8
9
  import { ConversationAgentService } from '../../services/conversation-agent.service';
9
10
  import { ActiveTasksService } from '../../services/active-tasks.service';
10
11
  import { PendingAttachment } from '@memberjunction/ng-composer';
@@ -20,6 +21,8 @@ import { Subject } from 'rxjs';
20
21
  import { ConversationStreamingService } from '../../services/conversation-streaming.service';
21
22
  import { ConversationBridgeService } from '../../services/conversation-bridge.service';
22
23
  import { AgentClientService } from '@memberjunction/ng-agent-client';
24
+ import { type MentionPerson } from '@memberjunction/conversations-runtime';
25
+ import type { AgentReplyMode, AgentTurnHandler } from '../../models/agent-turn.model';
23
26
  import { RealtimeSessionService } from '../../services/realtime-session.service';
24
27
  import { RealtimeSessionReview } from '../../services/realtime-session-review.service';
25
28
  import type { ExportBranding } from '../../services/export.service';
@@ -59,6 +62,7 @@ export interface EmptyStateConfig {
59
62
  export declare const DEFAULT_ARTIFACT_PANE_WIDTH = 40;
60
63
  export declare class ConversationChatAreaComponent extends BaseAngularComponent implements OnInit, OnDestroy, AfterViewChecked {
61
64
  private agentStateService;
65
+ private livenessDom;
62
66
  private conversationAgentService;
63
67
  private activeTasks;
64
68
  private cdr;
@@ -71,13 +75,33 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
71
75
  private uiCommandHandler;
72
76
  private interactiveFormApplyService;
73
77
  private agentClientService;
74
- environmentId: string;
75
- currentUser: UserInfo;
78
+ EnvironmentId: string;
79
+ /** @deprecated Use {@link EnvironmentId}. */
80
+ set environmentId(value: string);
81
+ /** @deprecated Use {@link EnvironmentId}. */
82
+ get environmentId(): string;
83
+ CurrentUser: UserInfo;
84
+ /** @deprecated Use {@link CurrentUser}. */
85
+ set currentUser(value: UserInfo);
86
+ /** @deprecated Use {@link CurrentUser}. */
87
+ get currentUser(): UserInfo;
76
88
  private _conversationId;
77
- set conversationId(value: string | null);
89
+ set ConversationId(value: string | null);
90
+ get ConversationId(): string | null;
91
+ /** @deprecated Use {@link ConversationId}. */
78
92
  get conversationId(): string | null;
79
- conversation: MJConversationEntity | null;
80
- threadId: string | null;
93
+ /** @deprecated Use {@link ConversationId}. */
94
+ set conversationId(value: string | null);
95
+ Conversation: MJConversationEntity | null;
96
+ /** @deprecated Use {@link Conversation}. */
97
+ set conversation(value: MJConversationEntity | null);
98
+ /** @deprecated Use {@link Conversation}. */
99
+ get conversation(): MJConversationEntity | null;
100
+ ThreadId: string | null;
101
+ /** @deprecated Use {@link ThreadId}. */
102
+ set threadId(value: string | null);
103
+ /** @deprecated Use {@link ThreadId}. */
104
+ get threadId(): string | null;
81
105
  /**
82
106
  * When true, render the normal message-list + message-input layout even
83
107
  * before a conversation exists, instead of the centered empty-state
@@ -86,14 +110,22 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
86
110
  * pick a mode before typing. The first send still routes through
87
111
  * MessageInputComponent and triggers conversationCreated as usual.
88
112
  */
89
- suppressNewConversationEmptyState: boolean;
113
+ SuppressNewConversationEmptyState: boolean;
114
+ /** @deprecated Use {@link SuppressNewConversationEmptyState}. */
115
+ set suppressNewConversationEmptyState(value: ConversationChatAreaComponent['SuppressNewConversationEmptyState']);
116
+ /** @deprecated Use {@link SuppressNewConversationEmptyState}. */
117
+ get suppressNewConversationEmptyState(): ConversationChatAreaComponent['SuppressNewConversationEmptyState'];
90
118
  /**
91
119
  * Host-level MASTER cap for the composer's mention/command triggers.
92
120
  * Defaults true. When false, ALL triggers (@ agents, # entities, / skills)
93
121
  * are off regardless of the per-type flags below. Hosts addressing a single
94
122
  * fixed agent (e.g. Form Builder cockpit) can set false wholesale.
95
123
  */
96
- allowMentions: boolean;
124
+ AllowMentions: boolean;
125
+ /** @deprecated Use {@link AllowMentions}. */
126
+ set allowMentions(value: ConversationChatAreaComponent['AllowMentions']);
127
+ /** @deprecated Use {@link AllowMentions}. */
128
+ get allowMentions(): ConversationChatAreaComponent['AllowMentions'];
97
129
  /**
98
130
  * Per-type caps under {@link allowMentions}, all default true. Let a host keep
99
131
  * one trigger while dropping another — e.g. a white-label surface pinned to a
@@ -101,9 +133,21 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
101
133
  * mentions (an `@` overrides the pinned default agent in message routing).
102
134
  * Effective only when `allowMentions` is also true.
103
135
  */
104
- allowAgentMentions: boolean;
105
- allowEntityMentions: boolean;
106
- allowSkillCommands: boolean;
136
+ AllowAgentMentions: boolean;
137
+ /** @deprecated Use {@link AllowAgentMentions}. */
138
+ set allowAgentMentions(value: ConversationChatAreaComponent['AllowAgentMentions']);
139
+ /** @deprecated Use {@link AllowAgentMentions}. */
140
+ get allowAgentMentions(): ConversationChatAreaComponent['AllowAgentMentions'];
141
+ AllowEntityMentions: boolean;
142
+ /** @deprecated Use {@link AllowEntityMentions}. */
143
+ set allowEntityMentions(value: ConversationChatAreaComponent['AllowEntityMentions']);
144
+ /** @deprecated Use {@link AllowEntityMentions}. */
145
+ get allowEntityMentions(): ConversationChatAreaComponent['AllowEntityMentions'];
146
+ AllowSkillCommands: boolean;
147
+ /** @deprecated Use {@link AllowSkillCommands}. */
148
+ set allowSkillCommands(value: ConversationChatAreaComponent['AllowSkillCommands']);
149
+ /** @deprecated Use {@link AllowSkillCommands}. */
150
+ get allowSkillCommands(): ConversationChatAreaComponent['AllowSkillCommands'];
107
151
  /**
108
152
  * Host-level cap for attachments. Defaults true. When false, the host
109
153
  * disables attachments regardless of agent modality support — useful for
@@ -111,25 +155,41 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
111
155
  * When true (default), attachment availability still depends on the
112
156
  * agent's modality support, computed at runtime.
113
157
  */
114
- allowAttachments: boolean;
158
+ AllowAttachments: boolean;
159
+ /** @deprecated Use {@link AllowAttachments}. */
160
+ set allowAttachments(value: ConversationChatAreaComponent['AllowAttachments']);
161
+ /** @deprecated Use {@link AllowAttachments}. */
162
+ get allowAttachments(): ConversationChatAreaComponent['AllowAttachments'];
115
163
  /**
116
164
  * Host-level cap for the composer's Plan Mode toggle. Defaults true
117
165
  * (current behavior). White-labeled / end-user hosts that don't expose
118
166
  * plan-mode workflows set false to remove the button entirely.
119
167
  */
120
- allowPlanMode: boolean;
168
+ AllowPlanMode: boolean;
169
+ /** @deprecated Use {@link AllowPlanMode}. */
170
+ set allowPlanMode(value: ConversationChatAreaComponent['AllowPlanMode']);
171
+ /** @deprecated Use {@link AllowPlanMode}. */
172
+ get allowPlanMode(): ConversationChatAreaComponent['AllowPlanMode'];
121
173
  /**
122
174
  * Host-level cap for the composer's realtime voice-call launcher (and its
123
175
  * options caret). Defaults true (current behavior). Hosts with no voice
124
176
  * experience set false to remove the buttons entirely.
125
177
  */
126
- allowRealtime: boolean;
178
+ AllowRealtime: boolean;
179
+ /** @deprecated Use {@link AllowRealtime}. */
180
+ set allowRealtime(value: ConversationChatAreaComponent['AllowRealtime']);
181
+ /** @deprecated Use {@link AllowRealtime}. */
182
+ get allowRealtime(): ConversationChatAreaComponent['AllowRealtime'];
127
183
  /**
128
184
  * Whether the message list renders its built-in "No messages yet" filler
129
185
  * when a conversation has zero messages. Defaults true. Hosts that render
130
186
  * their own empty-state chrome around the chat area set false.
131
187
  */
132
- showEmptyFill: boolean;
188
+ ShowEmptyFill: boolean;
189
+ /** @deprecated Use {@link ShowEmptyFill}. */
190
+ set showEmptyFill(value: ConversationChatAreaComponent['ShowEmptyFill']);
191
+ /** @deprecated Use {@link ShowEmptyFill}. */
192
+ get showEmptyFill(): ConversationChatAreaComponent['ShowEmptyFill'];
133
193
  /**
134
194
  * Whether the built-in centered loading indicator renders while a
135
195
  * conversation loads. Defaults true. When false the pane stays blank
@@ -137,7 +197,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
137
197
  * no premature empty-state flash). Hosts with their own loading chrome
138
198
  * set false.
139
199
  */
140
- showLoadingState: boolean;
200
+ ShowLoadingState: boolean;
201
+ /** @deprecated Use {@link ShowLoadingState}. */
202
+ set showLoadingState(value: ConversationChatAreaComponent['ShowLoadingState']);
203
+ /** @deprecated Use {@link ShowLoadingState}. */
204
+ get showLoadingState(): ConversationChatAreaComponent['ShowLoadingState'];
141
205
  /**
142
206
  * Read each reply from its top instead of its bottom.
143
207
  *
@@ -150,33 +214,92 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
150
214
  * turn that fits stays where it is: it is all on screen anyway. A reader who scrolled up
151
215
  * during the run is never moved; the scroll-to-bottom button is their way back.
152
216
  */
153
- readReplyFromTop: boolean;
217
+ ReadReplyFromTop: boolean;
218
+ /** @deprecated Use {@link ReadReplyFromTop}. */
219
+ set readReplyFromTop(value: ConversationChatAreaComponent['ReadReplyFromTop']);
220
+ /** @deprecated Use {@link ReadReplyFromTop}. */
221
+ get readReplyFromTop(): ConversationChatAreaComponent['ReadReplyFromTop'];
154
222
  /** Show the per-message agent run-detail grid (run ID, step/token counts, $ cost). */
155
- showAgentRunDetails: boolean;
223
+ ShowAgentRunDetails: boolean;
224
+ /** @deprecated Use {@link ShowAgentRunDetails}. */
225
+ set showAgentRunDetails(value: ConversationChatAreaComponent['ShowAgentRunDetails']);
226
+ /** @deprecated Use {@link ShowAgentRunDetails}. */
227
+ get showAgentRunDetails(): ConversationChatAreaComponent['ShowAgentRunDetails'];
156
228
  /** Show the per-message reaction buttons (like / comment). */
157
- showReactions: boolean;
229
+ ShowReactions: boolean;
230
+ /** @deprecated Use {@link ShowReactions}. */
231
+ set showReactions(value: ConversationChatAreaComponent['ShowReactions']);
232
+ /** @deprecated Use {@link ShowReactions}. */
233
+ get showReactions(): ConversationChatAreaComponent['ShowReactions'];
158
234
  /** Show the per-message thumbs rating control on completed AI messages. */
159
- showMessageRating: boolean;
235
+ ShowMessageRating: boolean;
236
+ /** @deprecated Use {@link ShowMessageRating}. */
237
+ set showMessageRating(value: ConversationChatAreaComponent['ShowMessageRating']);
238
+ /** @deprecated Use {@link ShowMessageRating}. */
239
+ get showMessageRating(): ConversationChatAreaComponent['ShowMessageRating'];
160
240
  /** Allow pinning messages (per-message pin button, the header pin chip, and the pinned-messages panel). */
161
- allowPinning: boolean;
241
+ AllowPinning: boolean;
242
+ /** @deprecated Use {@link AllowPinning}. */
243
+ set allowPinning(value: ConversationChatAreaComponent['AllowPinning']);
244
+ /** @deprecated Use {@link AllowPinning}. */
245
+ get allowPinning(): ConversationChatAreaComponent['AllowPinning'];
162
246
  /** Allow editing the user's own messages (per-message edit button). */
163
- allowMessageEdit: boolean;
247
+ AllowMessageEdit: boolean;
248
+ /** @deprecated Use {@link AllowMessageEdit}. */
249
+ set allowMessageEdit(value: ConversationChatAreaComponent['AllowMessageEdit']);
250
+ /** @deprecated Use {@link AllowMessageEdit}. */
251
+ get allowMessageEdit(): ConversationChatAreaComponent['AllowMessageEdit'];
164
252
  /** Allow deleting the user's own messages (per-message delete button). */
165
- allowMessageDelete: boolean;
253
+ AllowMessageDelete: boolean;
254
+ /** @deprecated Use {@link AllowMessageDelete}. */
255
+ set allowMessageDelete(value: ConversationChatAreaComponent['AllowMessageDelete']);
256
+ /** @deprecated Use {@link AllowMessageDelete}. */
257
+ get allowMessageDelete(): ConversationChatAreaComponent['AllowMessageDelete'];
258
+ /**
259
+ * Host-forced read-only. Hides every composer. A View share
260
+ * ({@link IsReadOnlyView}) with this left false keeps today's disabled composer.
261
+ */
262
+ ReadOnly: boolean;
263
+ /** Banner copy when {@link ReadOnly} is set. Null uses the View-share text. */
264
+ ReadOnlyMessage: string | null;
166
265
  /** Show the empty-state's built-in suggested-prompt chips (and the @mention tip). */
167
- showSuggestedPrompts: boolean;
266
+ ShowSuggestedPrompts: boolean;
267
+ /** @deprecated Use {@link ShowSuggestedPrompts}. */
268
+ set showSuggestedPrompts(value: ConversationChatAreaComponent['ShowSuggestedPrompts']);
269
+ /** @deprecated Use {@link ShowSuggestedPrompts}. */
270
+ get showSuggestedPrompts(): ConversationChatAreaComponent['ShowSuggestedPrompts'];
168
271
  /** Show the message list's sticky date header + jump-to-date navigation. */
169
- showDateNavigation: boolean;
272
+ ShowDateNavigation: boolean;
273
+ /** @deprecated Use {@link ShowDateNavigation}. */
274
+ set showDateNavigation(value: ConversationChatAreaComponent['ShowDateNavigation']);
275
+ /** @deprecated Use {@link ShowDateNavigation}. */
276
+ get showDateNavigation(): ConversationChatAreaComponent['ShowDateNavigation'];
170
277
  /** Display name for AI messages (e.g. a per-tenant persona). Null = the agent record's name. */
171
- assistantDisplayName: string | null;
278
+ AssistantDisplayName: string | null;
279
+ /** @deprecated Use {@link AssistantDisplayName}. */
280
+ set assistantDisplayName(value: string | null);
281
+ /** @deprecated Use {@link AssistantDisplayName}. */
282
+ get assistantDisplayName(): string | null;
172
283
  /** Image URL for the AI message avatar. Null = the agent's Font Awesome icon. */
173
- assistantAvatarUrl: string | null;
284
+ AssistantAvatarUrl: string | null;
285
+ /** @deprecated Use {@link AssistantAvatarUrl}. */
286
+ set assistantAvatarUrl(value: string | null);
287
+ /** @deprecated Use {@link AssistantAvatarUrl}. */
288
+ get assistantAvatarUrl(): string | null;
174
289
  private _isNewConversation;
175
- set isNewConversation(value: boolean);
290
+ set IsNewConversation(value: boolean);
291
+ get IsNewConversation(): boolean;
292
+ /** @deprecated Use {@link IsNewConversation}. */
176
293
  get isNewConversation(): boolean;
294
+ /** @deprecated Use {@link IsNewConversation}. */
295
+ set isNewConversation(value: boolean);
177
296
  private _pendingMessage;
178
- set pendingMessage(value: string | null);
297
+ set PendingMessage(value: string | null);
298
+ get PendingMessage(): string | null;
299
+ /** @deprecated Use {@link PendingMessage}. */
179
300
  get pendingMessage(): string | null;
301
+ /** @deprecated Use {@link PendingMessage}. */
302
+ set pendingMessage(value: string | null);
180
303
  /**
181
304
  * The conversation the {@link pendingMessage} was created FOR. The pending message's
182
305
  * auto-send is delivered ONLY to the cached input whose conversationId matches this —
@@ -187,7 +310,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
187
310
  * Hosts MAY set this explicitly; it also self-resolves from {@link _pendingMessageTargetId}
188
311
  * (captured in onEmptyStateMessageSent) so the guard works regardless of host wiring.
189
312
  */
190
- pendingMessageConversationId: string | null;
313
+ PendingMessageConversationId: string | null;
314
+ /** @deprecated Use {@link PendingMessageConversationId}. */
315
+ set pendingMessageConversationId(value: string | null);
316
+ /** @deprecated Use {@link PendingMessageConversationId}. */
317
+ get pendingMessageConversationId(): string | null;
191
318
  /** Internally-captured target for {@link pendingMessage}, set when this component creates a
192
319
  * new conversation from the empty state. Host-independent; immune to conversation-swap timing. */
193
320
  private _pendingMessageTargetId;
@@ -198,34 +325,84 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
198
325
  * (legacy fallback for single-conversation hosts that never swap).
199
326
  */
200
327
  get EffectivePendingMessageTarget(): string | null;
328
+ ShouldDeliverPendingMessageTo(conversationId: string): boolean;
329
+ /** @deprecated Use {@link ShouldDeliverPendingMessageTo}. */
201
330
  shouldDeliverPendingMessageTo(conversationId: string): boolean;
202
331
  private _pendingAttachments;
203
- set pendingAttachments(value: PendingAttachment[] | null);
332
+ set PendingAttachments(value: PendingAttachment[] | null);
333
+ get PendingAttachments(): PendingAttachment[] | null;
334
+ /** @deprecated Use {@link PendingAttachments}. */
204
335
  get pendingAttachments(): PendingAttachment[] | null;
205
- pendingArtifactId: string | null;
206
- pendingArtifactVersionNumber: number | null;
207
- pendingArtifactConversationId: string | null;
336
+ /** @deprecated Use {@link PendingAttachments}. */
337
+ set pendingAttachments(value: PendingAttachment[] | null);
338
+ PendingArtifactId: string | null;
339
+ /** @deprecated Use {@link PendingArtifactId}. */
340
+ set pendingArtifactId(value: string | null);
341
+ /** @deprecated Use {@link PendingArtifactId}. */
342
+ get pendingArtifactId(): string | null;
343
+ PendingArtifactVersionNumber: number | null;
344
+ /** @deprecated Use {@link PendingArtifactVersionNumber}. */
345
+ set pendingArtifactVersionNumber(value: number | null);
346
+ /** @deprecated Use {@link PendingArtifactVersionNumber}. */
347
+ get pendingArtifactVersionNumber(): number | null;
348
+ PendingArtifactConversationId: string | null;
349
+ /** @deprecated Use {@link PendingArtifactConversationId}. */
350
+ set pendingArtifactConversationId(value: string | null);
351
+ /** @deprecated Use {@link PendingArtifactConversationId}. */
352
+ get pendingArtifactConversationId(): string | null;
208
353
  /** When true, the component is rendered inside the floating overlay (hides suggested topics, etc.) */
209
- overlayMode: boolean;
354
+ OverlayMode: boolean;
355
+ /** @deprecated Use {@link OverlayMode}. */
356
+ set overlayMode(value: boolean);
357
+ /** @deprecated Use {@link OverlayMode}. */
358
+ get overlayMode(): boolean;
210
359
  /** Show the Export button in the conversation header. Default true. */
211
- showExportButton: boolean;
360
+ ShowExportButton: boolean;
361
+ /** @deprecated Use {@link ShowExportButton}. */
362
+ set showExportButton(value: boolean);
363
+ /** @deprecated Use {@link ShowExportButton}. */
364
+ get showExportButton(): boolean;
212
365
  /** Label for the header Export button (white-label hosts relabel it, e.g. "Download"). */
213
- exportButtonLabel: string;
366
+ ExportButtonLabel: string;
367
+ /** @deprecated Use {@link ExportButtonLabel}. */
368
+ set exportButtonLabel(value: string);
369
+ /** @deprecated Use {@link ExportButtonLabel}. */
370
+ get exportButtonLabel(): string;
214
371
  /** Font Awesome class(es) for the header Export button's icon. */
215
- exportButtonIcon: string;
372
+ ExportButtonIcon: string;
373
+ /** @deprecated Use {@link ExportButtonIcon}. */
374
+ set exportButtonIcon(value: string);
375
+ /** @deprecated Use {@link ExportButtonIcon}. */
376
+ get exportButtonIcon(): string;
216
377
  /**
217
378
  * Branding applied to exported files (theme tokens / logo / title) — forwarded
218
379
  * to the export modal, where it also defaults the "Include branding" checkbox
219
380
  * on. See `ExportBranding` in the export service. Null (default) keeps the
220
381
  * stock unthemed export.
221
382
  */
222
- exportBranding: ExportBranding | null;
383
+ ExportBranding: ExportBranding | null;
384
+ /** @deprecated Use {@link ExportBranding}. */
385
+ set exportBranding(value: ExportBranding | null);
386
+ /** @deprecated Use {@link ExportBranding}. */
387
+ get exportBranding(): ExportBranding | null;
223
388
  /** Show the Share button in the conversation header. Default true. */
224
- showShareButton: boolean;
389
+ ShowShareButton: boolean;
390
+ /** @deprecated Use {@link ShowShareButton}. */
391
+ set showShareButton(value: boolean);
392
+ /** @deprecated Use {@link ShowShareButton}. */
393
+ get showShareButton(): boolean;
225
394
  /** Show the artifact count indicator in the conversation header. Default true. */
226
- showArtifactIndicator: boolean;
395
+ ShowArtifactIndicator: boolean;
396
+ /** @deprecated Use {@link ShowArtifactIndicator}. */
397
+ set showArtifactIndicator(value: boolean);
398
+ /** @deprecated Use {@link ShowArtifactIndicator}. */
399
+ get showArtifactIndicator(): boolean;
227
400
  /** Application context snapshot for AI agent awareness. Included in agent execution data. */
228
- appContext: Record<string, unknown> | null;
401
+ AppContext: Record<string, unknown> | null;
402
+ /** @deprecated Use {@link AppContext}. */
403
+ set appContext(value: Record<string, unknown> | null);
404
+ /** @deprecated Use {@link AppContext}. */
405
+ get appContext(): Record<string, unknown> | null;
229
406
  /**
230
407
  * Optional default agent ID for the conversation. Forwarded to
231
408
  * `<mj-message-input>` as its `[defaultAgentId]` so the first message
@@ -237,7 +414,59 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
237
414
  * set this to the specialist agent's ID; the main Chat app leaves it
238
415
  * unset to preserve the Sage-fronted UX.
239
416
  */
240
- defaultAgentId: string | null;
417
+ DefaultAgentId: string | null;
418
+ /** @deprecated Use {@link DefaultAgentId}. */
419
+ set defaultAgentId(value: string | null);
420
+ /** @deprecated Use {@link DefaultAgentId}. */
421
+ get defaultAgentId(): string | null;
422
+ /**
423
+ * When a message starts an agent turn. `'Always'` (the default) answers every message;
424
+ * `'MentionOnly'` answers only a message that tags an agent, and posts any other message
425
+ * with no turn at all (no reply row, no placeholder, no turn events).
426
+ */
427
+ AgentReplyMode: AgentReplyMode;
428
+ /**
429
+ * The agents that may answer in this chat: narrows the '@' list, every route, the
430
+ * conversation manager's delegation, and the pin and voice pickers. Null (the default)
431
+ * allows every agent the user can run; an empty list allows none.
432
+ */
433
+ AllowedAgentIDs: readonly string[] | null;
434
+ /**
435
+ * The people the '@' list offers, such as the chat's members. Null (the default) offers only
436
+ * the current user, as before.
437
+ */
438
+ MentionPeople: readonly MentionPerson[] | null;
439
+ /**
440
+ * The first moment of the conversation an agent turn may read. The server loads the agent's
441
+ * history from there and uses no summary of earlier messages. Null (the default) reads the
442
+ * whole conversation.
443
+ */
444
+ AgentHistoryFrom: Date | null;
445
+ /**
446
+ * Runs agent turns on the host's server instead of MJ's own path, after routing and
447
+ * `BeforeAgentTurn`, before any reply row exists. Null (the default) runs them on MJ's path.
448
+ */
449
+ AgentTurnHandler: AgentTurnHandler | null;
450
+ /**
451
+ * Whether MJ names a new conversation from its first message or its first voice utterance.
452
+ * True (the default) keeps today's behavior; a host that names its own chats turns it off.
453
+ */
454
+ AutoNameConversation: boolean;
455
+ /**
456
+ * Whether an untagged message asks one fast typed decision which agent in the conversation
457
+ * should answer it, instead of always going back to the last agent that answered. It replaces
458
+ * that agent only when the answer is confident and arrives within `DECISION_ROUTING_TIMEOUT_MS`
459
+ * (250 ms). False (the default)
460
+ * changes nothing: no decision call, and today's routing. See
461
+ * `MessageInputComponent.EnableDecisionRouting`.
462
+ *
463
+ * Turning it on sends conversation text to the model behind the `Default Decision` prompt, which
464
+ * can be a different vendor from the agents' own: the first 1,000 characters of the new message,
465
+ * the last 6 turns (150 characters each), each participant's name, description and last reply,
466
+ * and the names of their artifact versions. Each call writes an `MJ: AI Prompt Runs` row, even
467
+ * when the answer comes too late to be used.
468
+ */
469
+ EnableDecisionRouting: boolean;
241
470
  /**
242
471
  * Scope to apply when this surface CREATES a new conversation. Forwarded
243
472
  * to `ConversationEngine.CreateConversation` so the new row's
@@ -246,14 +475,22 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
246
475
  * conversations don't pollute the main Chat app list. Main Chat leaves
247
476
  * it as the default `'Global'`. Has no effect on existing conversations.
248
477
  */
249
- applicationScope: 'Global' | 'Application' | 'Both';
478
+ ApplicationScope: 'Global' | 'Application' | 'Both';
479
+ /** @deprecated Use {@link ApplicationScope}. */
480
+ set applicationScope(value: 'Global' | 'Application' | 'Both');
481
+ /** @deprecated Use {@link ApplicationScope}. */
482
+ get applicationScope(): 'Global' | 'Application' | 'Both';
250
483
  /**
251
484
  * Application ID to bind a newly-created conversation to. REQUIRED when
252
485
  * `applicationScope` is 'Application' or 'Both' (DB CHECK constraint
253
486
  * enforces it). Used by embedded chat surfaces to scope their
254
487
  * conversations to their owning Application.
255
488
  */
256
- applicationId: string | null;
489
+ ApplicationId: string | null;
490
+ /** @deprecated Use {@link ApplicationId}. */
491
+ set applicationId(value: string | null);
492
+ /** @deprecated Use {@link ApplicationId}. */
493
+ get applicationId(): string | null;
257
494
  /**
258
495
  * "What is this conversation about?" — the Entity ID this conversation
259
496
  * references. Forwarded to `ConversationEngine.CreateConversation` so
@@ -264,14 +501,22 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
264
501
  * later list "prior conversations about THIS form/component."
265
502
  * Has no effect on existing conversations.
266
503
  */
267
- linkedEntityId: string | null;
504
+ LinkedEntityId: string | null;
505
+ /** @deprecated Use {@link LinkedEntityId}. */
506
+ set linkedEntityId(value: string | null);
507
+ /** @deprecated Use {@link LinkedEntityId}. */
508
+ get linkedEntityId(): string | null;
268
509
  /**
269
510
  * Primary key of the linked record, serialized as a string. Used with
270
511
  * {@link linkedEntityId}. Form Builder cockpit passes the active
271
512
  * form's ComponentID; Component Studio's AI panel passes the
272
513
  * currently-selected component's ID.
273
514
  */
274
- linkedRecordId: string | null;
515
+ LinkedRecordId: string | null;
516
+ /** @deprecated Use {@link LinkedRecordId}. */
517
+ set linkedRecordId(value: string | null);
518
+ /** @deprecated Use {@link LinkedRecordId}. */
519
+ get linkedRecordId(): string | null;
275
520
  /**
276
521
  * Whether the conversation header should render the per-conversation
277
522
  * agent picker. Default true. The picker lets a user pin a default
@@ -280,7 +525,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
280
525
  * to that agent instead of through Sage. Surfaces with no meaningful
281
526
  * agent-choice UX can set this to false to hide the widget.
282
527
  */
283
- showAgentPicker: boolean;
528
+ ShowAgentPicker: boolean;
529
+ /** @deprecated Use {@link ShowAgentPicker}. */
530
+ set showAgentPicker(value: boolean);
531
+ /** @deprecated Use {@link ShowAgentPicker}. */
532
+ get showAgentPicker(): boolean;
284
533
  /**
285
534
  * Whether the chat header should render the per-agent mode/quality
286
535
  * picker (Draft / Standard / High, etc.). Default true. The picker
@@ -289,7 +538,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
289
538
  * off only when the surface should never expose model-tier choice
290
539
  * (kiosks, specialty embeds).
291
540
  */
292
- showAgentModePicker: boolean;
541
+ ShowAgentModePicker: boolean;
542
+ /** @deprecated Use {@link ShowAgentModePicker}. */
543
+ set showAgentModePicker(value: boolean);
544
+ /** @deprecated Use {@link ShowAgentModePicker}. */
545
+ get showAgentModePicker(): boolean;
293
546
  /**
294
547
  * The mode/preset picker's selected configuration ID, forwarded to
295
548
  * `<mj-message-input>` so non-mention routes apply it on the next
@@ -324,28 +577,48 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
324
577
  */
325
578
  OnAgentModePresetChanged(presetId: string | null): void;
326
579
  /** Greeting message shown in the empty state when no conversation is active */
327
- emptyStateGreeting: string;
328
- showSidebarToggle: boolean;
580
+ EmptyStateGreeting: string;
581
+ /** @deprecated Use {@link EmptyStateGreeting}. */
582
+ set emptyStateGreeting(value: string);
583
+ /** @deprecated Use {@link EmptyStateGreeting}. */
584
+ get emptyStateGreeting(): string;
585
+ ShowSidebarToggle: boolean;
586
+ /** @deprecated Use {@link ShowSidebarToggle}. */
587
+ set showSidebarToggle(value: boolean);
588
+ /** @deprecated Use {@link ShowSidebarToggle}. */
589
+ get showSidebarToggle(): boolean;
329
590
  /**
330
591
  * When true, the `agentPresence` slot is allowed to render (using the
331
592
  * supplied `agentCharacterConfig` for visualization data). Off by default
332
593
  * so existing embeds (Form Builder, Component Studio AI Assistant, the
333
594
  * corner overlay) see no UI change.
334
595
  */
335
- showAgentCharacter: boolean;
596
+ ShowAgentCharacter: boolean;
597
+ /** @deprecated Use {@link ShowAgentCharacter}. */
598
+ set showAgentCharacter(value: boolean);
599
+ /** @deprecated Use {@link ShowAgentCharacter}. */
600
+ get showAgentCharacter(): boolean;
336
601
  /**
337
602
  * Visualization data forwarded to the `agentPresence` slot's default
338
603
  * component (or to any consumer-projected template via slot context).
339
604
  * Includes avatar URL, character name, voice state, and visual intensity.
340
605
  */
341
- agentCharacterConfig: AgentCharacterConfig | null;
606
+ AgentCharacterConfig: AgentCharacterConfig | null;
607
+ /** @deprecated Use {@link AgentCharacterConfig}. */
608
+ set agentCharacterConfig(value: AgentCharacterConfig | null);
609
+ /** @deprecated Use {@link AgentCharacterConfig}. */
610
+ get agentCharacterConfig(): AgentCharacterConfig | null;
342
611
  /**
343
612
  * Structured config for the `emptyState` slot's default component —
344
613
  * greeting, subtext, and optional suggested prompts. Backwards-compatible
345
614
  * with the existing `emptyStateGreeting` input (which still wins when
346
615
  * `emptyStateConfig` is null).
347
616
  */
348
- emptyStateConfig: EmptyStateConfig | null;
617
+ EmptyStateConfig: EmptyStateConfig | null;
618
+ /** @deprecated Use {@link EmptyStateConfig}. */
619
+ set emptyStateConfig(value: EmptyStateConfig | null);
620
+ /** @deprecated Use {@link EmptyStateConfig}. */
621
+ get emptyStateConfig(): EmptyStateConfig | null;
349
622
  /**
350
623
  * Activate the `demonstrationSurface` slot layout-mode. Per Matt's 06-10
351
624
  * placement design: when true AND a consumer has projected
@@ -358,43 +631,152 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
358
631
  * agent emits a demonstration intent → host sets this true; user dismisses
359
632
  * → host sets it false). The widget itself doesn't decide.
360
633
  */
361
- showDemonstrationSurface: boolean;
634
+ ShowDemonstrationSurface: boolean;
635
+ /** @deprecated Use {@link ShowDemonstrationSurface}. */
636
+ set showDemonstrationSurface(value: boolean);
637
+ /** @deprecated Use {@link ShowDemonstrationSurface}. */
638
+ get showDemonstrationSurface(): boolean;
362
639
  /**
363
640
  * Content payload forwarded to the `demonstrationSurface` slot via
364
641
  * `$implicit` + named `content` context. Shape is consumer-defined per the
365
642
  * {@link IMJChatDemonstrationSurfaceComponent} interface — the widget
366
643
  * doesn't introspect or render it directly, just hands it through.
367
644
  */
368
- demonstrationSurfaceContent: unknown;
645
+ DemonstrationSurfaceContent: unknown;
646
+ /** @deprecated Use {@link DemonstrationSurfaceContent}. */
647
+ set demonstrationSurfaceContent(value: unknown);
648
+ /** @deprecated Use {@link DemonstrationSurfaceContent}. */
649
+ get demonstrationSurfaceContent(): unknown;
369
650
  /**
370
651
  * True when the demonstrationSurface layout-mode is BOTH opted-in
371
652
  * (`showDemonstrationSurface`) AND has a slot template projected to render
372
653
  * into. Both conditions must hold for the layout restructure to kick in.
373
654
  */
655
+ get IsDemonstrationActive(): boolean;
656
+ /** @deprecated Use {@link IsDemonstrationActive}. */
374
657
  get isDemonstrationActive(): boolean;
375
- /** Cancelable — fired BEFORE a user message is sent to the agent. */
658
+ /**
659
+ * Cancelable — fired once per agent turn, on every route, after routing picked the agent and
660
+ * before any reply row exists. Cancel it to write nothing more, or set `RedirectAgentId` to
661
+ * send the turn to another allowed agent. A message that starts no turn fires nothing.
662
+ */
663
+ BeforeAgentTurn: EventEmitter<BeforeAgentTurnEventArgs>;
664
+ /**
665
+ * @deprecated Use {@link BeforeAgentTurn}.
666
+ *
667
+ * The same emitter under the old binding name, so a template still binding
668
+ * (beforeAgentTurn) keeps working. Must stay AFTER BeforeAgentTurn: class fields
669
+ * initialise in order, and the other way round this captures undefined.
670
+ */
376
671
  beforeAgentTurn: EventEmitter<BeforeAgentTurnEventArgs>;
377
- /** Fired AFTER a successful agent turn completes. */
672
+ /** Fired AFTER a successful agent turn completes, on every route. */
673
+ AfterAgentTurn: EventEmitter<AfterAgentTurnEventArgs>;
674
+ /**
675
+ * @deprecated Use {@link AfterAgentTurn}.
676
+ *
677
+ * The same emitter under the old binding name, so a template still binding
678
+ * (afterAgentTurn) keeps working. Must stay AFTER AfterAgentTurn: class fields
679
+ * initialise in order, and the other way round this captures undefined.
680
+ */
378
681
  afterAgentTurn: EventEmitter<AfterAgentTurnEventArgs>;
379
682
  /** Cancelable — fired BEFORE a registered client tool is invoked by the agent. */
683
+ BeforeToolInvoked: EventEmitter<BeforeToolInvokedEventArgs>;
684
+ /**
685
+ * @deprecated Use {@link BeforeToolInvoked}.
686
+ *
687
+ * The same emitter under the old binding name, so a template still binding
688
+ * (beforeToolInvoked) keeps working. Must stay AFTER BeforeToolInvoked: class fields
689
+ * initialise in order, and the other way round this captures undefined.
690
+ */
380
691
  beforeToolInvoked: EventEmitter<BeforeToolInvokedEventArgs>;
381
692
  /** Fired AFTER a client tool invocation completes. */
693
+ AfterToolInvoked: EventEmitter<AfterToolInvokedEventArgs>;
694
+ /**
695
+ * @deprecated Use {@link AfterToolInvoked}.
696
+ *
697
+ * The same emitter under the old binding name, so a template still binding
698
+ * (afterToolInvoked) keeps working. Must stay AFTER AfterToolInvoked: class fields
699
+ * initialise in order, and the other way round this captures undefined.
700
+ */
382
701
  afterToolInvoked: EventEmitter<AfterToolInvokedEventArgs>;
383
702
  /** Cancelable — fired BEFORE a response form's submitted values are sent. */
703
+ BeforeResponseFormSubmitted: EventEmitter<BeforeResponseFormSubmittedEventArgs>;
704
+ /**
705
+ * @deprecated Use {@link BeforeResponseFormSubmitted}.
706
+ *
707
+ * The same emitter under the old binding name, so a template still binding
708
+ * (beforeResponseFormSubmitted) keeps working. Must stay AFTER BeforeResponseFormSubmitted: class fields
709
+ * initialise in order, and the other way round this captures undefined.
710
+ */
384
711
  beforeResponseFormSubmitted: EventEmitter<BeforeResponseFormSubmittedEventArgs>;
385
712
  /** Fired AFTER a response form's values have been sent. */
713
+ AfterResponseFormSubmitted: EventEmitter<AfterResponseFormSubmittedEventArgs>;
714
+ /**
715
+ * @deprecated Use {@link AfterResponseFormSubmitted}.
716
+ *
717
+ * The same emitter under the old binding name, so a template still binding
718
+ * (afterResponseFormSubmitted) keeps working. Must stay AFTER AfterResponseFormSubmitted: class fields
719
+ * initialise in order, and the other way round this captures undefined.
720
+ */
386
721
  afterResponseFormSubmitted: EventEmitter<AfterResponseFormSubmittedEventArgs>;
387
722
  /** Informational. */
723
+ SessionStarted: EventEmitter<SessionStartedEventArgs>;
724
+ /**
725
+ * @deprecated Use {@link SessionStarted}.
726
+ *
727
+ * The same emitter under the old binding name, so a template still binding
728
+ * (sessionStarted) keeps working. Must stay AFTER SessionStarted: class fields
729
+ * initialise in order, and the other way round this captures undefined.
730
+ */
388
731
  sessionStarted: EventEmitter<SessionStartedEventArgs>;
389
732
  /** Informational. */
733
+ SessionChannelStateChanged: EventEmitter<SessionChannelStateChangedEventArgs>;
734
+ /**
735
+ * @deprecated Use {@link SessionChannelStateChanged}.
736
+ *
737
+ * The same emitter under the old binding name, so a template still binding
738
+ * (sessionChannelStateChanged) keeps working. Must stay AFTER SessionChannelStateChanged: class fields
739
+ * initialise in order, and the other way round this captures undefined.
740
+ */
390
741
  sessionChannelStateChanged: EventEmitter<SessionChannelStateChangedEventArgs>;
391
742
  /** Informational. */
743
+ SessionEnded: EventEmitter<SessionEndedEventArgs>;
744
+ /**
745
+ * @deprecated Use {@link SessionEnded}.
746
+ *
747
+ * The same emitter under the old binding name, so a template still binding
748
+ * (sessionEnded) keeps working. Must stay AFTER SessionEnded: class fields
749
+ * initialise in order, and the other way round this captures undefined.
750
+ */
392
751
  sessionEnded: EventEmitter<SessionEndedEventArgs>;
752
+ ConversationRenamed: EventEmitter<{
753
+ conversationId: string;
754
+ name: string;
755
+ description: string;
756
+ }>;
757
+ /**
758
+ * @deprecated Use {@link ConversationRenamed}.
759
+ *
760
+ * The same emitter under the old binding name, so a template still binding
761
+ * (conversationRenamed) keeps working. Must stay AFTER ConversationRenamed: class fields
762
+ * initialise in order, and the other way round this captures undefined.
763
+ */
393
764
  conversationRenamed: EventEmitter<{
394
765
  conversationId: string;
395
766
  name: string;
396
767
  description: string;
397
768
  }>;
769
+ OpenEntityRecord: EventEmitter<{
770
+ entityName: string;
771
+ compositeKey: CompositeKey;
772
+ }>;
773
+ /**
774
+ * @deprecated Use {@link OpenEntityRecord}.
775
+ *
776
+ * The same emitter under the old binding name, so a template still binding
777
+ * (openEntityRecord) keeps working. Must stay AFTER OpenEntityRecord: class fields
778
+ * initialise in order, and the other way round this captures undefined.
779
+ */
398
780
  openEntityRecord: EventEmitter<{
399
781
  entityName: string;
400
782
  compositeKey: CompositeKey;
@@ -404,26 +786,119 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
404
786
  * conversation is named (background, shared helper) and ready. The workspace folds
405
787
  * it into the cached list and selects it when the conversation list is visible.
406
788
  */
789
+ RealtimeConversationReady: EventEmitter<{
790
+ conversationId: string;
791
+ select: boolean;
792
+ }>;
793
+ /**
794
+ * @deprecated Use {@link RealtimeConversationReady}.
795
+ *
796
+ * The same emitter under the old binding name, so a template still binding
797
+ * (realtimeConversationReady) keeps working. Must stay AFTER RealtimeConversationReady: class fields
798
+ * initialise in order, and the other way round this captures undefined.
799
+ */
407
800
  realtimeConversationReady: EventEmitter<{
408
801
  conversationId: string;
409
802
  select: boolean;
410
803
  }>;
411
804
  navigationRequest: EventEmitter<NavigationRequest>;
805
+ TaskClicked: EventEmitter<MJTaskEntity>;
806
+ /**
807
+ * @deprecated Use {@link TaskClicked}.
808
+ *
809
+ * The same emitter under the old binding name, so a template still binding
810
+ * (taskClicked) keeps working. Must stay AFTER TaskClicked: class fields
811
+ * initialise in order, and the other way round this captures undefined.
812
+ */
412
813
  taskClicked: EventEmitter<MJTaskEntity>;
814
+ ArtifactLinkClicked: EventEmitter<{
815
+ type: "conversation" | "collection";
816
+ id: string;
817
+ }>;
818
+ /**
819
+ * @deprecated Use {@link ArtifactLinkClicked}.
820
+ *
821
+ * The same emitter under the old binding name, so a template still binding
822
+ * (artifactLinkClicked) keeps working. Must stay AFTER ArtifactLinkClicked: class fields
823
+ * initialise in order, and the other way round this captures undefined.
824
+ */
413
825
  artifactLinkClicked: EventEmitter<{
414
826
  type: "conversation" | "collection";
415
827
  id: string;
416
828
  }>;
829
+ SidebarToggleClicked: EventEmitter<void>;
830
+ /**
831
+ * @deprecated Use {@link SidebarToggleClicked}.
832
+ *
833
+ * The same emitter under the old binding name, so a template still binding
834
+ * (sidebarToggleClicked) keeps working. Must stay AFTER SidebarToggleClicked: class fields
835
+ * initialise in order, and the other way round this captures undefined.
836
+ */
417
837
  sidebarToggleClicked: EventEmitter<void>;
838
+ ConversationCreated: EventEmitter<{
839
+ conversation: MJConversationEntity;
840
+ pendingMessage?: string;
841
+ pendingAttachments?: PendingAttachment[];
842
+ }>;
843
+ /**
844
+ * @deprecated Use {@link ConversationCreated}.
845
+ *
846
+ * The same emitter under the old binding name, so a template still binding
847
+ * (conversationCreated) keeps working. Must stay AFTER ConversationCreated: class fields
848
+ * initialise in order, and the other way round this captures undefined.
849
+ */
418
850
  conversationCreated: EventEmitter<{
419
851
  conversation: MJConversationEntity;
420
852
  pendingMessage?: string;
421
853
  pendingAttachments?: PendingAttachment[];
422
854
  }>;
855
+ ThreadOpened: EventEmitter<string>;
856
+ /**
857
+ * @deprecated Use {@link ThreadOpened}.
858
+ *
859
+ * The same emitter under the old binding name, so a template still binding
860
+ * (threadOpened) keeps working. Must stay AFTER ThreadOpened: class fields
861
+ * initialise in order, and the other way round this captures undefined.
862
+ */
423
863
  threadOpened: EventEmitter<string>;
864
+ ThreadClosed: EventEmitter<void>;
865
+ /**
866
+ * @deprecated Use {@link ThreadClosed}.
867
+ *
868
+ * The same emitter under the old binding name, so a template still binding
869
+ * (threadClosed) keeps working. Must stay AFTER ThreadClosed: class fields
870
+ * initialise in order, and the other way round this captures undefined.
871
+ */
424
872
  threadClosed: EventEmitter<void>;
873
+ PendingArtifactConsumed: EventEmitter<void>;
874
+ /**
875
+ * @deprecated Use {@link PendingArtifactConsumed}.
876
+ *
877
+ * The same emitter under the old binding name, so a template still binding
878
+ * (pendingArtifactConsumed) keeps working. Must stay AFTER PendingArtifactConsumed: class fields
879
+ * initialise in order, and the other way round this captures undefined.
880
+ */
425
881
  pendingArtifactConsumed: EventEmitter<void>;
882
+ PendingMessageConsumed: EventEmitter<void>;
883
+ /**
884
+ * @deprecated Use {@link PendingMessageConsumed}.
885
+ *
886
+ * The same emitter under the old binding name, so a template still binding
887
+ * (pendingMessageConsumed) keeps working. Must stay AFTER PendingMessageConsumed: class fields
888
+ * initialise in order, and the other way round this captures undefined.
889
+ */
426
890
  pendingMessageConsumed: EventEmitter<void>;
891
+ PendingMessageRequested: EventEmitter<{
892
+ text: string;
893
+ attachments: PendingAttachment[];
894
+ }>;
895
+ /**
896
+ * @deprecated Use {@link PendingMessageRequested}.
897
+ *
898
+ * The same emitter under the old binding name, so a template still binding
899
+ * (pendingMessageRequested) keeps working. Must stay AFTER PendingMessageRequested: class fields
900
+ * initialise in order, and the other way round this captures undefined.
901
+ */
427
902
  pendingMessageRequested: EventEmitter<{
428
903
  text: string;
429
904
  attachments: PendingAttachment[];
@@ -437,16 +912,40 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
437
912
  * briefly because the target input mounts asynchronously (config params can arrive
438
913
  * before the first render).
439
914
  */
440
- composerDraft: string | null;
915
+ ComposerDraft: string | null;
916
+ /** @deprecated Use {@link ComposerDraft}. */
917
+ set composerDraft(value: string | null);
918
+ /** @deprecated Use {@link ComposerDraft}. */
919
+ get composerDraft(): string | null;
920
+ ComposerDraftConsumed: EventEmitter<void>;
921
+ /**
922
+ * @deprecated Use {@link ComposerDraftConsumed}.
923
+ *
924
+ * The same emitter under the old binding name, so a template still binding
925
+ * (composerDraftConsumed) keeps working. Must stay AFTER ComposerDraftConsumed: class fields
926
+ * initialise in order, and the other way round this captures undefined.
927
+ */
441
928
  composerDraftConsumed: EventEmitter<void>;
442
929
  /**
443
930
  * Pre-address the composer to an AGENT as a resolved mention pill (+ space +
444
931
  * focus) — the chip-resolving sibling of {@link composerDraft}. Value = the
445
932
  * agent's name. Emits composerAgentMentionConsumed once applied.
446
933
  */
447
- set composerAgentMention(value: string | null);
934
+ set ComposerAgentMention(value: string | null);
935
+ get ComposerAgentMention(): string | null;
936
+ /** @deprecated Use {@link ComposerAgentMention}. */
448
937
  get composerAgentMention(): string | null;
938
+ /** @deprecated Use {@link ComposerAgentMention}. */
939
+ set composerAgentMention(value: string | null);
449
940
  private _composerAgentMention;
941
+ ComposerAgentMentionConsumed: EventEmitter<void>;
942
+ /**
943
+ * @deprecated Use {@link ComposerAgentMentionConsumed}.
944
+ *
945
+ * The same emitter under the old binding name, so a template still binding
946
+ * (composerAgentMentionConsumed) keeps working. Must stay AFTER ComposerAgentMentionConsumed: class fields
947
+ * initialise in order, and the other way round this captures undefined.
948
+ */
450
949
  composerAgentMentionConsumed: EventEmitter<void>;
451
950
  /**
452
951
  * Per-user persisted composer drafts (UserInfoEngine-backed): restore on mount,
@@ -487,9 +986,15 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
487
986
  * projected for that slot. When `null`, the template should render the
488
987
  * slot's default standalone component.
489
988
  */
989
+ SlotTemplate(name: MJChatSlotName): TemplateRef<unknown> | null;
990
+ /** @deprecated Use {@link SlotTemplate}. */
490
991
  slotTemplate(name: MJChatSlotName): TemplateRef<unknown> | null;
491
992
  messages: MJConversationDetailEntity[];
492
- showScrollToBottomIcon: boolean;
993
+ ShowScrollToBottomIcon: boolean;
994
+ /** @deprecated Use {@link ShowScrollToBottomIcon}. */
995
+ get showScrollToBottomIcon(): boolean;
996
+ /** @deprecated Use {@link ShowScrollToBottomIcon}. */
997
+ set showScrollToBottomIcon(value: boolean);
493
998
  private scrollToBottom;
494
999
  /**
495
1000
  * Whether the reader was at (within a few px of) the bottom at the last scroll event.
@@ -512,29 +1017,115 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
512
1017
  private lastLoadedConversationId;
513
1018
  private currentlyLoadingConversationId;
514
1019
  private conversationLoadToken;
515
- isProcessing: boolean;
1020
+ /** The reconcile passes in progress, shared by every caller that arrives while they run. */
1021
+ private reconcileInFlight;
1022
+ /** Reason for one more reconcile pass, requested while a pass was running. */
1023
+ private reconcileRerunReason;
1024
+ IsProcessing: boolean;
1025
+ /** @deprecated Use {@link IsProcessing}. */
1026
+ get isProcessing(): boolean;
1027
+ /** @deprecated Use {@link IsProcessing}. */
1028
+ set isProcessing(value: boolean);
516
1029
  private intentCheckMessage;
517
- isLoadingConversation: boolean;
518
- userAvatarMap: Map<string, {
1030
+ IsLoadingConversation: boolean;
1031
+ /** @deprecated Use {@link IsLoadingConversation}. */
1032
+ get isLoadingConversation(): boolean;
1033
+ /** @deprecated Use {@link IsLoadingConversation}. */
1034
+ set isLoadingConversation(value: boolean);
1035
+ UserAvatarMap: Map<string, {
1036
+ imageUrl: string | null;
1037
+ iconClass: string | null;
1038
+ }>;
1039
+ /** @deprecated Use {@link UserAvatarMap}. */
1040
+ get userAvatarMap(): Map<string, {
519
1041
  imageUrl: string | null;
520
1042
  iconClass: string | null;
521
1043
  }>;
522
- memberCount: number;
523
- artifactCount: number;
524
- artifactCountDisplay: number;
525
- isShared: boolean;
526
- showExportModal: boolean;
527
- showShareModal: boolean;
528
- shareContext: ResourceShareContext | null;
529
- shareAdapter: MJResourcePermissionShareAdapter;
530
- showAgentPanel: boolean;
531
- showMembersModal: boolean;
532
- showProjectSelector: boolean;
533
- showArtifactPanel: boolean;
534
- showArtifactsModal: boolean;
535
- showSystemArtifacts: boolean;
536
- selectedArtifactId: string | null;
537
- selectedVersionNumber: number | undefined;
1044
+ /** @deprecated Use {@link UserAvatarMap}. */
1045
+ set userAvatarMap(value: Map<string, {
1046
+ imageUrl: string | null;
1047
+ iconClass: string | null;
1048
+ }>);
1049
+ MemberCount: number;
1050
+ /** @deprecated Use {@link MemberCount}. */
1051
+ get memberCount(): number;
1052
+ /** @deprecated Use {@link MemberCount}. */
1053
+ set memberCount(value: number);
1054
+ ArtifactCount: number;
1055
+ /** @deprecated Use {@link ArtifactCount}. */
1056
+ get artifactCount(): number;
1057
+ /** @deprecated Use {@link ArtifactCount}. */
1058
+ set artifactCount(value: number);
1059
+ ArtifactCountDisplay: number;
1060
+ /** @deprecated Use {@link ArtifactCountDisplay}. */
1061
+ get artifactCountDisplay(): number;
1062
+ /** @deprecated Use {@link ArtifactCountDisplay}. */
1063
+ set artifactCountDisplay(value: number);
1064
+ IsShared: boolean;
1065
+ /** @deprecated Use {@link IsShared}. */
1066
+ get isShared(): boolean;
1067
+ /** @deprecated Use {@link IsShared}. */
1068
+ set isShared(value: boolean);
1069
+ ShowExportModal: boolean;
1070
+ /** @deprecated Use {@link ShowExportModal}. */
1071
+ get showExportModal(): boolean;
1072
+ /** @deprecated Use {@link ShowExportModal}. */
1073
+ set showExportModal(value: boolean);
1074
+ ShowShareModal: boolean;
1075
+ /** @deprecated Use {@link ShowShareModal}. */
1076
+ get showShareModal(): boolean;
1077
+ /** @deprecated Use {@link ShowShareModal}. */
1078
+ set showShareModal(value: boolean);
1079
+ ShareContext: ResourceShareContext | null;
1080
+ /** @deprecated Use {@link ShareContext}. */
1081
+ get shareContext(): ResourceShareContext | null;
1082
+ /** @deprecated Use {@link ShareContext}. */
1083
+ set shareContext(value: ResourceShareContext | null);
1084
+ ShareAdapter: MJResourcePermissionShareAdapter;
1085
+ /** @deprecated Use {@link ShareAdapter}. */
1086
+ get shareAdapter(): MJResourcePermissionShareAdapter;
1087
+ /** @deprecated Use {@link ShareAdapter}. */
1088
+ set shareAdapter(value: MJResourcePermissionShareAdapter);
1089
+ ShowAgentPanel: boolean;
1090
+ /** @deprecated Use {@link ShowAgentPanel}. */
1091
+ get showAgentPanel(): boolean;
1092
+ /** @deprecated Use {@link ShowAgentPanel}. */
1093
+ set showAgentPanel(value: boolean);
1094
+ ShowMembersModal: boolean;
1095
+ /** @deprecated Use {@link ShowMembersModal}. */
1096
+ get showMembersModal(): boolean;
1097
+ /** @deprecated Use {@link ShowMembersModal}. */
1098
+ set showMembersModal(value: boolean);
1099
+ ShowProjectSelector: boolean;
1100
+ /** @deprecated Use {@link ShowProjectSelector}. */
1101
+ get showProjectSelector(): boolean;
1102
+ /** @deprecated Use {@link ShowProjectSelector}. */
1103
+ set showProjectSelector(value: boolean);
1104
+ ShowArtifactPanel: boolean;
1105
+ /** @deprecated Use {@link ShowArtifactPanel}. */
1106
+ get showArtifactPanel(): boolean;
1107
+ /** @deprecated Use {@link ShowArtifactPanel}. */
1108
+ set showArtifactPanel(value: boolean);
1109
+ ShowArtifactsModal: boolean;
1110
+ /** @deprecated Use {@link ShowArtifactsModal}. */
1111
+ get showArtifactsModal(): boolean;
1112
+ /** @deprecated Use {@link ShowArtifactsModal}. */
1113
+ set showArtifactsModal(value: boolean);
1114
+ ShowSystemArtifacts: boolean;
1115
+ /** @deprecated Use {@link ShowSystemArtifacts}. */
1116
+ get showSystemArtifacts(): boolean;
1117
+ /** @deprecated Use {@link ShowSystemArtifacts}. */
1118
+ set showSystemArtifacts(value: boolean);
1119
+ SelectedArtifactId: string | null;
1120
+ /** @deprecated Use {@link SelectedArtifactId}. */
1121
+ get selectedArtifactId(): string | null;
1122
+ /** @deprecated Use {@link SelectedArtifactId}. */
1123
+ set selectedArtifactId(value: string | null);
1124
+ SelectedVersionNumber: number | undefined;
1125
+ /** @deprecated Use {@link SelectedVersionNumber}. */
1126
+ get selectedVersionNumber(): number | undefined;
1127
+ /** @deprecated Use {@link SelectedVersionNumber}. */
1128
+ set selectedVersionNumber(value: number | undefined);
538
1129
  /**
539
1130
  * Bumped whenever artifacts are MERGED into `artifactsByDetailId` by something other than the
540
1131
  * turn in flight — today only the scroll-up paging path. A before/after diff spanning such a
@@ -550,47 +1141,143 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
550
1141
  * the selection the user just made.
551
1142
  */
552
1143
  private artifactSelectionEpoch;
553
- artifactPaneWidth: number;
554
- isArtifactPaneMaximized: boolean;
1144
+ ArtifactPaneWidth: number;
1145
+ /** @deprecated Use {@link ArtifactPaneWidth}. */
1146
+ get artifactPaneWidth(): number;
1147
+ /** @deprecated Use {@link ArtifactPaneWidth}. */
1148
+ set artifactPaneWidth(value: number);
1149
+ IsArtifactPaneMaximized: boolean;
1150
+ /** @deprecated Use {@link IsArtifactPaneMaximized}. */
1151
+ get isArtifactPaneMaximized(): boolean;
1152
+ /** @deprecated Use {@link IsArtifactPaneMaximized}. */
1153
+ set isArtifactPaneMaximized(value: boolean);
555
1154
  private artifactPaneWidthBeforeMaximize;
556
- expandedArtifactId: string | null;
557
- showCollectionPicker: boolean;
558
- collectionPickerArtifactId: string | null;
559
- collectionPickerExcludedIds: string[];
560
- collectionPickerVersionId: string | null;
561
- collectionPickerArtifactName: string;
562
- collectionPickerVersionNumber: number | null;
563
- canShareSelectedArtifact: boolean;
564
- canEditSelectedArtifact: boolean;
565
- isArtifactShareModalOpen: boolean;
566
- artifactToShare: MJArtifactEntity | null;
567
- artifactsByDetailId: Map<string, LazyArtifactInfo[]>;
568
- systemArtifactsByDetailId: Map<string, LazyArtifactInfo[]>;
1155
+ ExpandedArtifactId: string | null;
1156
+ /** @deprecated Use {@link ExpandedArtifactId}. */
1157
+ get expandedArtifactId(): string | null;
1158
+ /** @deprecated Use {@link ExpandedArtifactId}. */
1159
+ set expandedArtifactId(value: string | null);
1160
+ ShowCollectionPicker: boolean;
1161
+ /** @deprecated Use {@link ShowCollectionPicker}. */
1162
+ get showCollectionPicker(): boolean;
1163
+ /** @deprecated Use {@link ShowCollectionPicker}. */
1164
+ set showCollectionPicker(value: boolean);
1165
+ CollectionPickerArtifactId: string | null;
1166
+ /** @deprecated Use {@link CollectionPickerArtifactId}. */
1167
+ get collectionPickerArtifactId(): string | null;
1168
+ /** @deprecated Use {@link CollectionPickerArtifactId}. */
1169
+ set collectionPickerArtifactId(value: string | null);
1170
+ CollectionPickerExcludedIds: string[];
1171
+ /** @deprecated Use {@link CollectionPickerExcludedIds}. */
1172
+ get collectionPickerExcludedIds(): string[];
1173
+ /** @deprecated Use {@link CollectionPickerExcludedIds}. */
1174
+ set collectionPickerExcludedIds(value: string[]);
1175
+ CollectionPickerVersionId: string | null;
1176
+ /** @deprecated Use {@link CollectionPickerVersionId}. */
1177
+ get collectionPickerVersionId(): string | null;
1178
+ /** @deprecated Use {@link CollectionPickerVersionId}. */
1179
+ set collectionPickerVersionId(value: string | null);
1180
+ CollectionPickerArtifactName: string;
1181
+ /** @deprecated Use {@link CollectionPickerArtifactName}. */
1182
+ get collectionPickerArtifactName(): string;
1183
+ /** @deprecated Use {@link CollectionPickerArtifactName}. */
1184
+ set collectionPickerArtifactName(value: string);
1185
+ CollectionPickerVersionNumber: number | null;
1186
+ /** @deprecated Use {@link CollectionPickerVersionNumber}. */
1187
+ get collectionPickerVersionNumber(): number | null;
1188
+ /** @deprecated Use {@link CollectionPickerVersionNumber}. */
1189
+ set collectionPickerVersionNumber(value: number | null);
1190
+ CanShareSelectedArtifact: boolean;
1191
+ /** @deprecated Use {@link CanShareSelectedArtifact}. */
1192
+ get canShareSelectedArtifact(): boolean;
1193
+ /** @deprecated Use {@link CanShareSelectedArtifact}. */
1194
+ set canShareSelectedArtifact(value: boolean);
1195
+ CanEditSelectedArtifact: boolean;
1196
+ /** @deprecated Use {@link CanEditSelectedArtifact}. */
1197
+ get canEditSelectedArtifact(): boolean;
1198
+ /** @deprecated Use {@link CanEditSelectedArtifact}. */
1199
+ set canEditSelectedArtifact(value: boolean);
1200
+ IsArtifactShareModalOpen: boolean;
1201
+ /** @deprecated Use {@link IsArtifactShareModalOpen}. */
1202
+ get isArtifactShareModalOpen(): boolean;
1203
+ /** @deprecated Use {@link IsArtifactShareModalOpen}. */
1204
+ set isArtifactShareModalOpen(value: boolean);
1205
+ ArtifactToShare: MJArtifactEntity | null;
1206
+ /** @deprecated Use {@link ArtifactToShare}. */
1207
+ get artifactToShare(): MJArtifactEntity | null;
1208
+ /** @deprecated Use {@link ArtifactToShare}. */
1209
+ set artifactToShare(value: MJArtifactEntity | null);
1210
+ ArtifactsByDetailId: Map<string, LazyArtifactInfo[]>;
1211
+ /** @deprecated Use {@link ArtifactsByDetailId}. */
1212
+ get artifactsByDetailId(): Map<string, LazyArtifactInfo[]>;
1213
+ /** @deprecated Use {@link ArtifactsByDetailId}. */
1214
+ set artifactsByDetailId(value: Map<string, LazyArtifactInfo[]>);
1215
+ SystemArtifactsByDetailId: Map<string, LazyArtifactInfo[]>;
1216
+ /** @deprecated Use {@link SystemArtifactsByDetailId}. */
1217
+ get systemArtifactsByDetailId(): Map<string, LazyArtifactInfo[]>;
1218
+ /** @deprecated Use {@link SystemArtifactsByDetailId}. */
1219
+ set systemArtifactsByDetailId(value: Map<string, LazyArtifactInfo[]>);
569
1220
  private _combinedArtifactsMap;
570
- agentRunsByDetailId: Map<string, MJAIAgentRunEntityExtended>;
1221
+ AgentRunsByDetailId: Map<string, MJAIAgentRunEntityExtended>;
1222
+ /** @deprecated Use {@link AgentRunsByDetailId}. */
1223
+ get agentRunsByDetailId(): Map<string, MJAIAgentRunEntityExtended>;
1224
+ /** @deprecated Use {@link AgentRunsByDetailId}. */
1225
+ set agentRunsByDetailId(value: Map<string, MJAIAgentRunEntityExtended>);
571
1226
  /**
572
1227
  * Ratings by conversation detail ID (parsed from RatingsJSON)
573
1228
  */
574
- ratingsByDetailId: Map<string, RatingJSON[]>;
1229
+ RatingsByDetailId: Map<string, RatingJSON[]>;
1230
+ /** @deprecated Use {@link RatingsByDetailId}. */
1231
+ get ratingsByDetailId(): Map<string, RatingJSON[]>;
1232
+ /** @deprecated Use {@link RatingsByDetailId}. */
1233
+ set ratingsByDetailId(value: Map<string, RatingJSON[]>);
575
1234
  /**
576
1235
  * Attachments by conversation detail ID (loaded from ConversationDetailAttachments)
577
1236
  */
578
- attachmentsByDetailId: Map<string, MessageAttachment[]>;
1237
+ AttachmentsByDetailId: Map<string, MessageAttachment[]>;
1238
+ /** @deprecated Use {@link AttachmentsByDetailId}. */
1239
+ get attachmentsByDetailId(): Map<string, MessageAttachment[]>;
1240
+ /** @deprecated Use {@link AttachmentsByDetailId}. */
1241
+ set attachmentsByDetailId(value: Map<string, MessageAttachment[]>);
579
1242
  /**
580
1243
  * In-progress message IDs for streaming reconnection
581
1244
  * Passed to message-input component to reconnect PubSub updates
582
1245
  */
583
- inProgressMessageIds: string[];
1246
+ InProgressMessageIds: string[];
1247
+ /** @deprecated Use {@link InProgressMessageIds}. */
1248
+ get inProgressMessageIds(): string[];
1249
+ /** @deprecated Use {@link InProgressMessageIds}. */
1250
+ set inProgressMessageIds(value: string[]);
584
1251
  private destroy$;
585
1252
  private messageInputMetadataCache;
586
- readonly emptyArtifactsMap: Map<string, LazyArtifactInfo[]>;
587
- readonly emptyAgentRunsMap: Map<string, MJAIAgentRunEntityExtended>;
588
- readonly emptyInProgressIds: string[];
589
- isLoadingPeripheralData: boolean;
590
- artifactViewerRefresh$: Subject<{
1253
+ readonly EmptyArtifactsMap: Map<string, LazyArtifactInfo[]>;
1254
+ /** @deprecated Use {@link EmptyArtifactsMap}. */
1255
+ get emptyArtifactsMap(): Map<string, LazyArtifactInfo[]>;
1256
+ readonly EmptyAgentRunsMap: Map<string, MJAIAgentRunEntityExtended>;
1257
+ /** @deprecated Use {@link EmptyAgentRunsMap}. */
1258
+ get emptyAgentRunsMap(): Map<string, MJAIAgentRunEntityExtended>;
1259
+ readonly EmptyInProgressIds: string[];
1260
+ /** @deprecated Use {@link EmptyInProgressIds}. */
1261
+ get emptyInProgressIds(): string[];
1262
+ IsLoadingPeripheralData: boolean;
1263
+ /** @deprecated Use {@link IsLoadingPeripheralData}. */
1264
+ get isLoadingPeripheralData(): boolean;
1265
+ /** @deprecated Use {@link IsLoadingPeripheralData}. */
1266
+ set isLoadingPeripheralData(value: boolean);
1267
+ ArtifactViewerRefresh$: Subject<{
591
1268
  artifactId: string;
592
1269
  versionNumber: number;
593
1270
  }>;
1271
+ /** @deprecated Use {@link ArtifactViewerRefresh$}. */
1272
+ get artifactViewerRefresh$(): Subject<{
1273
+ artifactId: string;
1274
+ versionNumber: number;
1275
+ }>;
1276
+ /** @deprecated Use {@link ArtifactViewerRefresh$}. */
1277
+ set artifactViewerRefresh$(value: Subject<{
1278
+ artifactId: string;
1279
+ versionNumber: number;
1280
+ }>);
594
1281
  private isInitialized;
595
1282
  private hadActiveAgents;
596
1283
  private isResizing;
@@ -601,15 +1288,25 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
601
1288
  private readonly boundOnResizeTouchMove;
602
1289
  private readonly boundOnResizeTouchEnd;
603
1290
  private readonly ARTIFACT_PANE_WIDTH_KEY;
604
- showPinsPanel: boolean;
1291
+ ShowPinsPanel: boolean;
1292
+ /** @deprecated Use {@link ShowPinsPanel}. */
1293
+ get showPinsPanel(): boolean;
1294
+ /** @deprecated Use {@link ShowPinsPanel}. */
1295
+ set showPinsPanel(value: boolean);
605
1296
  /** True once the pin ENTITIES are loaded. The COUNT is known from conversation open. */
606
1297
  private pinsHydrated;
607
1298
  /** Spinner state for the panel's first open — the rows now arrive after the panel does. */
608
- isLoadingPins: boolean;
1299
+ IsLoadingPins: boolean;
1300
+ /** @deprecated Use {@link IsLoadingPins}. */
1301
+ get isLoadingPins(): boolean;
1302
+ /** @deprecated Use {@link IsLoadingPins}. */
1303
+ set isLoadingPins(value: boolean);
609
1304
  /**
610
1305
  * TRUE pin count for the chip. Deliberately NOT `pinnedMessages.length`, which is 0 until
611
1306
  * the panel has been opened and would hide the chip on a conversation full of pins.
612
1307
  */
1308
+ get PinnedMessageCount(): number;
1309
+ /** @deprecated Use {@link PinnedMessageCount}. */
613
1310
  get pinnedMessageCount(): number;
614
1311
  /**
615
1312
  * Opens/closes the pins panel, hydrating its rows on first open.
@@ -631,10 +1328,16 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
631
1328
  * cycle, during streaming per token, is exactly the length-proportional work this feature
632
1329
  * exists to remove.
633
1330
  */
1331
+ get PinnedMessages(): readonly MJConversationDetailEntity[];
1332
+ /** @deprecated Use {@link PinnedMessages}. */
634
1333
  get pinnedMessages(): readonly MJConversationDetailEntity[];
635
1334
  /** True when older transcript pages remain above the loaded window (drives the sentinel). */
1335
+ get HasMoreMessagesAbove(): boolean;
1336
+ /** @deprecated Use {@link HasMoreMessagesAbove}. */
636
1337
  get hasMoreMessagesAbove(): boolean;
637
1338
  /** True while an older transcript page is being fetched. */
1339
+ get IsLoadingOlderMessages(): boolean;
1340
+ /** @deprecated Use {@link IsLoadingOlderMessages}. */
638
1341
  get isLoadingOlderMessages(): boolean;
639
1342
  /**
640
1343
  * The transcript list — needed so a date jump can scroll AFTER this component has finished
@@ -649,6 +1352,8 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
649
1352
  * `min-height: 0` that make it a real scroller. Passing it down beats having the list
650
1353
  * discover it, which depends on layout having settled.
651
1354
  */
1355
+ get MessageScrollRoot(): HTMLElement | null;
1356
+ /** @deprecated Use {@link MessageScrollRoot}. */
652
1357
  get messageScrollRoot(): HTMLElement | null;
653
1358
  /**
654
1359
  * Loads the next older page — fired by the message list's "earlier messages" sentinel.
@@ -658,6 +1363,8 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
658
1363
  * array so the list's ngOnChanges runs; the list then detects the prepend and holds the
659
1364
  * user's scroll position rather than jumping.
660
1365
  */
1366
+ OnOlderMessagesRequested(): Promise<void>;
1367
+ /** @deprecated Use {@link OnOlderMessagesRequested}. */
661
1368
  onOlderMessagesRequested(): Promise<void>;
662
1369
  /**
663
1370
  * Re-renders the transcript after one or more older pages have been merged.
@@ -683,19 +1390,69 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
683
1390
  * pages until the target is in the loaded set, history runs out, or the page cap is hit —
684
1391
  * and always reports the outcome, because the plan forbids a silent no-op here.
685
1392
  */
1393
+ OnDateJumpRequested(period: DateJumpPeriod): Promise<void>;
1394
+ /** @deprecated Use {@link OnDateJumpRequested}. */
686
1395
  onDateJumpRequested(period: DateJumpPeriod): Promise<void>;
687
- showTestFeedbackDialog: boolean;
688
- testFeedbackDialogData: TestFeedbackDialogData | null;
689
- showImageViewer: boolean;
690
- selectedImageUrl: string;
691
- selectedImageAlt: string;
692
- selectedImageFileName: string;
693
- isUploadingAttachments: boolean;
694
- uploadingMessage: string;
695
- enableAttachments: boolean;
696
- maxAttachments: number;
697
- maxAttachmentSizeBytes: number;
698
- acceptedFileTypes: string;
1396
+ ShowTestFeedbackDialog: boolean;
1397
+ /** @deprecated Use {@link ShowTestFeedbackDialog}. */
1398
+ get showTestFeedbackDialog(): boolean;
1399
+ /** @deprecated Use {@link ShowTestFeedbackDialog}. */
1400
+ set showTestFeedbackDialog(value: boolean);
1401
+ TestFeedbackDialogData: TestFeedbackDialogData | null;
1402
+ /** @deprecated Use {@link TestFeedbackDialogData}. */
1403
+ get testFeedbackDialogData(): TestFeedbackDialogData | null;
1404
+ /** @deprecated Use {@link TestFeedbackDialogData}. */
1405
+ set testFeedbackDialogData(value: TestFeedbackDialogData | null);
1406
+ ShowImageViewer: boolean;
1407
+ /** @deprecated Use {@link ShowImageViewer}. */
1408
+ get showImageViewer(): boolean;
1409
+ /** @deprecated Use {@link ShowImageViewer}. */
1410
+ set showImageViewer(value: boolean);
1411
+ SelectedImageUrl: string;
1412
+ /** @deprecated Use {@link SelectedImageUrl}. */
1413
+ get selectedImageUrl(): string;
1414
+ /** @deprecated Use {@link SelectedImageUrl}. */
1415
+ set selectedImageUrl(value: string);
1416
+ SelectedImageAlt: string;
1417
+ /** @deprecated Use {@link SelectedImageAlt}. */
1418
+ get selectedImageAlt(): string;
1419
+ /** @deprecated Use {@link SelectedImageAlt}. */
1420
+ set selectedImageAlt(value: string);
1421
+ SelectedImageFileName: string;
1422
+ /** @deprecated Use {@link SelectedImageFileName}. */
1423
+ get selectedImageFileName(): string;
1424
+ /** @deprecated Use {@link SelectedImageFileName}. */
1425
+ set selectedImageFileName(value: string);
1426
+ IsUploadingAttachments: boolean;
1427
+ /** @deprecated Use {@link IsUploadingAttachments}. */
1428
+ get isUploadingAttachments(): boolean;
1429
+ /** @deprecated Use {@link IsUploadingAttachments}. */
1430
+ set isUploadingAttachments(value: boolean);
1431
+ UploadingMessage: string;
1432
+ /** @deprecated Use {@link UploadingMessage}. */
1433
+ get uploadingMessage(): string;
1434
+ /** @deprecated Use {@link UploadingMessage}. */
1435
+ set uploadingMessage(value: string);
1436
+ EnableAttachments: boolean;
1437
+ /** @deprecated Use {@link EnableAttachments}. */
1438
+ get enableAttachments(): boolean;
1439
+ /** @deprecated Use {@link EnableAttachments}. */
1440
+ set enableAttachments(value: boolean);
1441
+ MaxAttachments: number;
1442
+ /** @deprecated Use {@link MaxAttachments}. */
1443
+ get maxAttachments(): number;
1444
+ /** @deprecated Use {@link MaxAttachments}. */
1445
+ set maxAttachments(value: number);
1446
+ MaxAttachmentSizeBytes: number;
1447
+ /** @deprecated Use {@link MaxAttachmentSizeBytes}. */
1448
+ get maxAttachmentSizeBytes(): number;
1449
+ /** @deprecated Use {@link MaxAttachmentSizeBytes}. */
1450
+ set maxAttachmentSizeBytes(value: number);
1451
+ AcceptedFileTypes: string;
1452
+ /** @deprecated Use {@link AcceptedFileTypes}. */
1453
+ get acceptedFileTypes(): string;
1454
+ /** @deprecated Use {@link AcceptedFileTypes}. */
1455
+ set acceptedFileTypes(value: string);
699
1456
  private conversationManagerAgent;
700
1457
  private engine;
701
1458
  private windowStore;
@@ -721,11 +1478,17 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
721
1478
  * `MJ: AI Agent Sessions` lookup per conversation, only when stamped rows exist.
722
1479
  * Tolerant: a failed lookup leaves the map empty and cards render their generic label.
723
1480
  */
724
- realtimeSessionMetaMap: Map<string, RealtimeSessionTimelineMeta>;
1481
+ RealtimeSessionMetaMap: Map<string, RealtimeSessionTimelineMeta>;
1482
+ /** @deprecated Use {@link RealtimeSessionMetaMap}. */
1483
+ get realtimeSessionMetaMap(): Map<string, RealtimeSessionTimelineMeta>;
1484
+ /** @deprecated Use {@link RealtimeSessionMetaMap}. */
1485
+ set realtimeSessionMetaMap(value: Map<string, RealtimeSessionTimelineMeta>);
725
1486
  /** Agent name the overlay banner shows: the reviewed session's agent while reviewing, else the live call's. */
1487
+ get RealtimeOverlayAgentName(): string;
1488
+ /** @deprecated Use {@link RealtimeOverlayAgentName}. */
726
1489
  get realtimeOverlayAgentName(): string;
727
1490
  private mentionAutocompleteService;
728
- constructor(agentStateService: AgentStateService, conversationAgentService: ConversationAgentService, activeTasks: ActiveTasksService, cdr: ChangeDetectorRef, artifactPermissionService: ArtifactPermissionService, attachmentService: ConversationAttachmentService, streamingService: ConversationStreamingService, confirmDialog: ConversationsDialogService, bridge: ConversationBridgeService, analyzeArtifactService: AnalyzeArtifactService, uiCommandHandler: UICommandHandlerService, interactiveFormApplyService: InteractiveFormApplyService, agentClientService: AgentClientService);
1491
+ constructor(agentStateService: AgentStateService, livenessDom: ConversationLivenessDomService, conversationAgentService: ConversationAgentService, activeTasks: ActiveTasksService, cdr: ChangeDetectorRef, artifactPermissionService: ArtifactPermissionService, attachmentService: ConversationAttachmentService, streamingService: ConversationStreamingService, confirmDialog: ConversationsDialogService, bridge: ConversationBridgeService, analyzeArtifactService: AnalyzeArtifactService, uiCommandHandler: UICommandHandlerService, interactiveFormApplyService: InteractiveFormApplyService, agentClientService: AgentClientService);
729
1492
  /**
730
1493
  * Apply a form-role artifact's spec as an EntityFormOverride for the
731
1494
  * current user. The service handles the Create-vs-Modify decision (based
@@ -760,6 +1523,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
760
1523
  * This allows multiple message-input components to exist simultaneously (hidden)
761
1524
  * preserving their state when switching conversations
762
1525
  */
1526
+ GetCachedInputs(): Array<{
1527
+ conversationId: string;
1528
+ conversationName: string | null;
1529
+ }>;
1530
+ /** @deprecated Use {@link GetCachedInputs}. */
763
1531
  getCachedInputs(): Array<{
764
1532
  conversationId: string;
765
1533
  conversationName: string | null;
@@ -857,10 +1625,20 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
857
1625
  * Restoring them here causes duplicate "Agent Processing..." entries.
858
1626
  */
859
1627
  private restoreActiveTasks;
1628
+ OnMessageSent(message: MJConversationDetailEntity): Promise<void>;
1629
+ /** @deprecated Use {@link OnMessageSent}. */
860
1630
  onMessageSent(message: MJConversationDetailEntity): Promise<void>;
1631
+ OnInitialMessageAutoSendStarted(event: {
1632
+ conversationId: string;
1633
+ }): void;
1634
+ /** @deprecated Use {@link OnInitialMessageAutoSendStarted}. */
861
1635
  onInitialMessageAutoSendStarted(event: {
862
1636
  conversationId: string;
863
1637
  }): void;
1638
+ OnInitialMessageAutoSendFailed(event: {
1639
+ conversationId: string;
1640
+ }): void;
1641
+ /** @deprecated Use {@link OnInitialMessageAutoSendFailed}. */
864
1642
  onInitialMessageAutoSendFailed(event: {
865
1643
  conversationId: string;
866
1644
  }): void;
@@ -879,6 +1657,12 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
879
1657
  * Handle agent run detected event from progress updates
880
1658
  * This is called when the first progress update arrives with an agent run ID
881
1659
  */
1660
+ OnAgentRunDetected(event: {
1661
+ conversationId: string;
1662
+ conversationDetailId: string;
1663
+ agentRunId: string;
1664
+ }): Promise<void>;
1665
+ /** @deprecated Use {@link OnAgentRunDetected}. */
882
1666
  onAgentRunDetected(event: {
883
1667
  conversationId: string;
884
1668
  conversationDetailId: string;
@@ -889,6 +1673,12 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
889
1673
  * Refreshes the agent run data in-place to get final status and timestamps
890
1674
  * Also reloads attachments created during agent execution (e.g., generated images)
891
1675
  */
1676
+ OnMessageComplete(event: {
1677
+ conversationId: string;
1678
+ conversationDetailId: string;
1679
+ agentId?: string;
1680
+ }): Promise<void>;
1681
+ /** @deprecated Use {@link OnMessageComplete}. */
892
1682
  onMessageComplete(event: {
893
1683
  conversationId: string;
894
1684
  conversationDetailId: string;
@@ -899,6 +1689,13 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
899
1689
  * This is called on EVERY progress update with the full, live agent run object
900
1690
  * Provides real-time updates of status, timestamps, tokens, cost during execution
901
1691
  */
1692
+ OnAgentRunUpdate(event: {
1693
+ conversationId: string;
1694
+ conversationDetailId: string;
1695
+ agentRun?: MJAIAgentRunEntityExtended;
1696
+ agentRunId?: string;
1697
+ }): Promise<void>;
1698
+ /** @deprecated Use {@link OnAgentRunUpdate}. */
902
1699
  onAgentRunUpdate(event: {
903
1700
  conversationId: string;
904
1701
  conversationDetailId: string;
@@ -910,6 +1707,8 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
910
1707
  * Called by the parent resource wrapper when the user clicks the Refresh button,
911
1708
  * so that new agent responses are visible without a full page reload.
912
1709
  */
1710
+ ReloadMessages(): Promise<void>;
1711
+ /** @deprecated Use {@link ReloadMessages}. */
913
1712
  reloadMessages(): Promise<void>;
914
1713
  /**
915
1714
  * Reload messages from the ConversationEngine cache (no DB round-trip).
@@ -917,6 +1716,8 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
917
1716
  * Called when agent completion is detected to discover newly delegated agent messages.
918
1717
  */
919
1718
  private reloadMessagesForActiveConversation;
1719
+ /** Detail ids whose completion this instance has already applied. A live callback and the replay window can both deliver one finish. */
1720
+ private handledCompletionIds?;
920
1721
  /**
921
1722
  * Handle message completion triggered by PubSub completion event
922
1723
  * Reloads message, agent run, and artifacts, then updates UI
@@ -924,6 +1725,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
924
1725
  * @param agentRunId The ID of the agent run that completed
925
1726
  */
926
1727
  private handleMessageCompletion;
1728
+ OnAgentResponse(event: {
1729
+ message: MJConversationDetailEntity;
1730
+ agentResult: any;
1731
+ }): Promise<void>;
1732
+ /** @deprecated Use {@link OnAgentResponse}. */
927
1733
  onAgentResponse(event: {
928
1734
  message: MJConversationDetailEntity;
929
1735
  agentResult: any;
@@ -948,8 +1754,14 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
948
1754
  * Invalidates and refreshes the conversation cache.
949
1755
  */
950
1756
  private reloadArtifactsForMessage;
1757
+ OpenProjectSelector(): void;
1758
+ /** @deprecated Use {@link OpenProjectSelector}. */
951
1759
  openProjectSelector(): void;
1760
+ ToggleMembersModal(): void;
1761
+ /** @deprecated Use {@link ToggleMembersModal}. */
952
1762
  toggleMembersModal(): void;
1763
+ ViewArtifacts(): void;
1764
+ /** @deprecated Use {@link ViewArtifacts}. */
953
1765
  viewArtifacts(): void;
954
1766
  /**
955
1767
  * Recompute the cached artifactCountDisplay from the effective artifacts map.
@@ -1001,16 +1813,22 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1001
1813
  * Combines user-visible and system artifacts when toggle is on
1002
1814
  * Uses caching to prevent infinite change detection loops
1003
1815
  */
1816
+ get EffectiveArtifactsMap(): Map<string, LazyArtifactInfo[]>;
1817
+ /** @deprecated Use {@link EffectiveArtifactsMap}. */
1004
1818
  get effectiveArtifactsMap(): Map<string, LazyArtifactInfo[]>;
1005
1819
  /**
1006
1820
  * Toggles system artifacts visibility
1007
1821
  * Clears the cache so the map will be rebuilt on next access
1008
1822
  */
1823
+ ToggleSystemArtifacts(): void;
1824
+ /** @deprecated Use {@link ToggleSystemArtifacts}. */
1009
1825
  toggleSystemArtifacts(): void;
1010
1826
  /**
1011
1827
  * Check if there are any system artifacts in this conversation
1012
1828
  * Used to conditionally show/hide the "Show System" toggle button
1013
1829
  */
1830
+ get HasSystemArtifacts(): boolean;
1831
+ /** @deprecated Use {@link HasSystemArtifacts}. */
1014
1832
  get hasSystemArtifacts(): boolean;
1015
1833
  /**
1016
1834
  * Get unique artifacts grouped by artifact ID (not by conversation detail)
@@ -1018,6 +1836,18 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1018
1836
  * Works with LazyArtifactInfo - uses display data without loading full entities
1019
1837
  * Respects showSystemArtifacts toggle
1020
1838
  */
1839
+ GetArtifactsArray(): Array<{
1840
+ artifactId: string;
1841
+ versionId: string;
1842
+ name: string;
1843
+ versionCount: number;
1844
+ visibility: string;
1845
+ versions: Array<{
1846
+ versionId: string;
1847
+ versionNumber: number;
1848
+ }>;
1849
+ }>;
1850
+ /** @deprecated Use {@link GetArtifactsArray}. */
1021
1851
  getArtifactsArray(): Array<{
1022
1852
  artifactId: string;
1023
1853
  versionId: string;
@@ -1029,13 +1859,31 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1029
1859
  versionNumber: number;
1030
1860
  }>;
1031
1861
  }>;
1862
+ ToggleArtifactExpansion(artifactId: string, event: Event): void;
1863
+ /** @deprecated Use {@link ToggleArtifactExpansion}. */
1032
1864
  toggleArtifactExpansion(artifactId: string, event: Event): void;
1865
+ OpenArtifactFromModal(artifactId: string, versionNumber?: number): Promise<void>;
1866
+ /** @deprecated Use {@link OpenArtifactFromModal}. */
1033
1867
  openArtifactFromModal(artifactId: string, versionNumber?: number): Promise<void>;
1868
+ ExportConversation(): void;
1869
+ /** @deprecated Use {@link ExportConversation}. */
1034
1870
  exportConversation(): void;
1871
+ OnExportModalCancelled(): void;
1872
+ /** @deprecated Use {@link OnExportModalCancelled}. */
1035
1873
  onExportModalCancelled(): void;
1874
+ OnExportModalComplete(): void;
1875
+ /** @deprecated Use {@link OnExportModalComplete}. */
1036
1876
  onExportModalComplete(): void;
1877
+ OnProjectSelected(project: any): Promise<void>;
1878
+ /** @deprecated Use {@link OnProjectSelected}. */
1037
1879
  onProjectSelected(project: any): Promise<void>;
1880
+ ShareConversation(): void;
1881
+ /** @deprecated Use {@link ShareConversation}. */
1038
1882
  shareConversation(): void;
1883
+ OnShareDialogResult(_result: {
1884
+ Action: 'save' | 'cancel';
1885
+ }): void;
1886
+ /** @deprecated Use {@link OnShareDialogResult}. */
1039
1887
  onShareDialogResult(_result: {
1040
1888
  Action: 'save' | 'cancel';
1041
1889
  }): void;
@@ -1044,6 +1892,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1044
1892
  * when the current user owns the conversation or when the share has no
1045
1893
  * recorded grantor (legacy share pre-dating `SharedByUserID`).
1046
1894
  */
1895
+ get SharedByBadge(): {
1896
+ display: string;
1897
+ fullTooltip: string;
1898
+ } | null;
1899
+ /** @deprecated Use {@link SharedByBadge}. */
1047
1900
  get sharedByBadge(): {
1048
1901
  display: string;
1049
1902
  fullTooltip: string;
@@ -1053,27 +1906,49 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1053
1906
  * (i.e., it was shared with them read-only). Gates the message input and
1054
1907
  * any other write-capable UI.
1055
1908
  */
1909
+ get IsReadOnlyView(): boolean;
1910
+ /** @deprecated Use {@link IsReadOnlyView}. */
1056
1911
  get isReadOnlyView(): boolean;
1912
+ /** Read-only for any reason: the host said so, or the conversation is shared with View access. */
1913
+ get EffectiveReadOnly(): boolean;
1057
1914
  /**
1058
1915
  * `true` when the current user is allowed to create new shares on this
1059
- * conversation. Only the conversation's owner — or a user with an existing
1060
- * Owner-level grant — may do so. Matches the server-side gate in
1061
- * {@link MJResourcePermissionEntityExtended.callerMayGrantShare}, so the UI
1062
- * doesn't offer an action the save would refuse.
1916
+ * conversation: the owner, or a user with an Owner-level grant. Uses the same
1917
+ * rule as the sidebar's Share action.
1063
1918
  */
1919
+ get CanShareConversation(): boolean;
1920
+ /** @deprecated Use {@link CanShareConversation}. */
1064
1921
  get canShareConversation(): boolean;
1922
+ OnReplyInThread(message: MJConversationDetailEntity): void;
1923
+ /** @deprecated Use {@link OnReplyInThread}. */
1065
1924
  onReplyInThread(message: MJConversationDetailEntity): void;
1925
+ OnViewThread(message: MJConversationDetailEntity): void;
1926
+ /** @deprecated Use {@link OnViewThread}. */
1066
1927
  onViewThread(message: MJConversationDetailEntity): void;
1928
+ OnLocalThreadClosed(): void;
1929
+ /** @deprecated Use {@link OnLocalThreadClosed}. */
1067
1930
  onLocalThreadClosed(): void;
1931
+ OnThreadReplyAdded(reply: MJConversationDetailEntity): void;
1932
+ /** @deprecated Use {@link OnThreadReplyAdded}. */
1068
1933
  onThreadReplyAdded(reply: MJConversationDetailEntity): void;
1934
+ OnToggleAgentPanel(): void;
1935
+ /** @deprecated Use {@link OnToggleAgentPanel}. */
1069
1936
  onToggleAgentPanel(): void;
1937
+ OnAgentSelected(agentRun: MJAIAgentRunEntity): void;
1938
+ /** @deprecated Use {@link OnAgentSelected}. */
1070
1939
  onAgentSelected(agentRun: MJAIAgentRunEntity): void;
1940
+ OnMessageEdited(message: MJConversationDetailEntity): void;
1941
+ /** @deprecated Use {@link OnMessageEdited}. */
1071
1942
  onMessageEdited(message: MJConversationDetailEntity): void;
1943
+ OnMessagePinToggled(message: MJConversationDetailEntity): void;
1944
+ /** @deprecated Use {@link OnMessagePinToggled}. */
1072
1945
  onMessagePinToggled(message: MJConversationDetailEntity): void;
1073
1946
  /**
1074
1947
  * Scrolls the message list to the target message and plays the beacon animation.
1075
1948
  * Called when the user clicks "Jump to message" in the pins panel.
1076
1949
  */
1950
+ OnJumpToMessage(messageId: string): Promise<void>;
1951
+ /** @deprecated Use {@link OnJumpToMessage}. */
1077
1952
  onJumpToMessage(messageId: string): Promise<void>;
1078
1953
  /**
1079
1954
  * Pages older history until `messageId` falls inside the loaded window.
@@ -1089,36 +1964,70 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1089
1964
  /**
1090
1965
  * Unpins a message from the pins panel — saves to DB and patches the cache.
1091
1966
  */
1967
+ OnUnpinFromPanel(message: MJConversationDetailEntity): Promise<void>;
1968
+ /** @deprecated Use {@link OnUnpinFromPanel}. */
1092
1969
  onUnpinFromPanel(message: MJConversationDetailEntity): Promise<void>;
1093
1970
  /**
1094
1971
  * Handle suggested response selection from user
1095
1972
  * Sends the selected response as a new user message WITHOUT modifying the visible input
1096
1973
  */
1974
+ OnSuggestedResponseSelected(event: {
1975
+ text: string;
1976
+ customInput?: string;
1977
+ }): Promise<void>;
1978
+ /** @deprecated Use {@link OnSuggestedResponseSelected}. */
1097
1979
  onSuggestedResponseSelected(event: {
1098
1980
  text: string;
1099
1981
  customInput?: string;
1100
1982
  }): Promise<void>;
1983
+ OnDeleteMessage(message: MJConversationDetailEntity): Promise<void>;
1984
+ /** @deprecated Use {@link OnDeleteMessage}. */
1101
1985
  onDeleteMessage(message: MJConversationDetailEntity): Promise<void>;
1986
+ OnRetryMessage(message: MJConversationDetailEntity): void;
1987
+ /** @deprecated Use {@link OnRetryMessage}. */
1102
1988
  onRetryMessage(message: MJConversationDetailEntity): void;
1103
1989
  /**
1104
1990
  * Handle attachment click - opens the image viewer for images
1105
1991
  */
1992
+ OnAttachmentClicked(attachment: MessageAttachment): void;
1993
+ /** @deprecated Use {@link OnAttachmentClicked}. */
1106
1994
  onAttachmentClicked(attachment: MessageAttachment): void;
1107
1995
  /**
1108
1996
  * Handle image viewer close
1109
1997
  */
1998
+ OnImageViewerClosed(): void;
1999
+ /** @deprecated Use {@link OnImageViewerClosed}. */
1110
2000
  onImageViewerClosed(): void;
1111
2001
  /**
1112
2002
  * Handle upload state changes from message input component
1113
2003
  */
2004
+ OnUploadStateChanged(event: {
2005
+ isUploading: boolean;
2006
+ message: string;
2007
+ }): void;
2008
+ /** @deprecated Use {@link OnUploadStateChanged}. */
1114
2009
  onUploadStateChanged(event: {
1115
2010
  isUploading: boolean;
1116
2011
  message: string;
1117
2012
  }): void;
2013
+ OnArtifactClicked(data: {
2014
+ artifactId: string;
2015
+ versionId?: string;
2016
+ }): Promise<void>;
2017
+ /** @deprecated Use {@link OnArtifactClicked}. */
1118
2018
  onArtifactClicked(data: {
1119
2019
  artifactId: string;
1120
2020
  versionId?: string;
1121
2021
  }): Promise<void>;
2022
+ OnArtifactCreated(data: {
2023
+ conversationId: string;
2024
+ conversationDetailId: string;
2025
+ artifactId: string;
2026
+ versionId: string;
2027
+ versionNumber: number;
2028
+ name: string;
2029
+ }): Promise<void>;
2030
+ /** @deprecated Use {@link OnArtifactCreated}. */
1122
2031
  onArtifactCreated(data: {
1123
2032
  conversationId: string;
1124
2033
  conversationDetailId: string;
@@ -1127,44 +2036,70 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1127
2036
  versionNumber: number;
1128
2037
  name: string;
1129
2038
  }): Promise<void>;
2039
+ OnCloseArtifactPanel(): void;
2040
+ /** @deprecated Use {@link OnCloseArtifactPanel}. */
1130
2041
  onCloseArtifactPanel(): void;
2042
+ ToggleMaximizeArtifactPane(): void;
2043
+ /** @deprecated Use {@link ToggleMaximizeArtifactPane}. */
1131
2044
  toggleMaximizeArtifactPane(): void;
2045
+ OnSaveToCollectionRequested(event: {
2046
+ artifactId: string;
2047
+ excludedCollectionIds: string[];
2048
+ }): void;
2049
+ /** @deprecated Use {@link OnSaveToCollectionRequested}. */
1132
2050
  onSaveToCollectionRequested(event: {
1133
2051
  artifactId: string;
1134
2052
  excludedCollectionIds: string[];
1135
2053
  }): void;
2054
+ OnCollectionPickerCompleted(event: {
2055
+ successIds: string[];
2056
+ failedIds: string[];
2057
+ }): Promise<void>;
2058
+ /** @deprecated Use {@link OnCollectionPickerCompleted}. */
1136
2059
  onCollectionPickerCompleted(event: {
1137
2060
  successIds: string[];
1138
2061
  failedIds: string[];
1139
2062
  }): Promise<void>;
2063
+ OnCollectionPickerCancelled(): void;
2064
+ /** @deprecated Use {@link OnCollectionPickerCancelled}. */
1140
2065
  onCollectionPickerCancelled(): void;
1141
2066
  private closeCollectionPicker;
1142
2067
  /**
1143
2068
  * Helper method to check if a conversation detail has an artifact
1144
2069
  * Used by message components to determine whether to show artifact card
1145
2070
  */
2071
+ ConversationDetailHasArtifact(conversationDetailId: string): boolean;
2072
+ /** @deprecated Use {@link ConversationDetailHasArtifact}. */
1146
2073
  conversationDetailHasArtifact(conversationDetailId: string): boolean;
1147
2074
  /**
1148
2075
  * Get artifact info for a conversation detail
1149
2076
  * Returns the LAST (most recent) artifact if multiple exist
1150
2077
  * Returns LazyArtifactInfo - caller can trigger lazy load if full entities needed
1151
2078
  */
2079
+ GetArtifactInfo(conversationDetailId: string): LazyArtifactInfo | undefined;
2080
+ /** @deprecated Use {@link GetArtifactInfo}. */
1152
2081
  getArtifactInfo(conversationDetailId: string): LazyArtifactInfo | undefined;
1153
2082
  /**
1154
2083
  * Get ALL artifacts for a conversation detail
1155
2084
  * Use this when you need to display all artifacts (e.g., in a list)
1156
2085
  * Returns LazyArtifactInfo array - caller can trigger lazy load if full entities needed
1157
2086
  */
2087
+ GetAllArtifactsForDetail(conversationDetailId: string): LazyArtifactInfo[];
2088
+ /** @deprecated Use {@link GetAllArtifactsForDetail}. */
1158
2089
  getAllArtifactsForDetail(conversationDetailId: string): LazyArtifactInfo[];
1159
2090
  /**
1160
2091
  * Resize handle methods for artifact pane
1161
2092
  */
2093
+ OnResizeStart(event: MouseEvent): void;
2094
+ /** @deprecated Use {@link OnResizeStart}. */
1162
2095
  onResizeStart(event: MouseEvent): void;
1163
2096
  private onResizeMove;
1164
2097
  private onResizeEnd;
1165
2098
  /**
1166
2099
  * Touch event handlers for mobile resize support
1167
2100
  */
2101
+ OnResizeTouchStart(event: TouchEvent): void;
2102
+ /** @deprecated Use {@link OnResizeTouchStart}. */
1168
2103
  onResizeTouchStart(event: TouchEvent): void;
1169
2104
  private onResizeTouchMove;
1170
2105
  private onResizeTouchEnd;
@@ -1173,6 +2108,12 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1173
2108
  */
1174
2109
  private loadArtifactPaneWidth;
1175
2110
  private saveArtifactPaneWidth;
2111
+ OnConversationRenamed(event: {
2112
+ conversationId: string;
2113
+ name: string;
2114
+ description: string;
2115
+ }): void;
2116
+ /** @deprecated Use {@link OnConversationRenamed}. */
1176
2117
  onConversationRenamed(event: {
1177
2118
  conversationId: string;
1178
2119
  name: string;
@@ -1182,17 +2123,31 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1182
2123
  * Handle message sent from empty state component
1183
2124
  * Creates a new conversation and emits to parent to update selection
1184
2125
  */
2126
+ OnEmptyStateMessageSent(event: {
2127
+ text: string;
2128
+ attachments: PendingAttachment[];
2129
+ }): Promise<void>;
2130
+ /** @deprecated Use {@link OnEmptyStateMessageSent}. */
1185
2131
  onEmptyStateMessageSent(event: {
1186
2132
  text: string;
1187
2133
  attachments: PendingAttachment[];
1188
2134
  }): Promise<void>;
2135
+ OnOpenEntityRecord(event: {
2136
+ entityName: string;
2137
+ compositeKey: CompositeKey;
2138
+ }): void;
2139
+ /** @deprecated Use {@link OnOpenEntityRecord}. */
1189
2140
  onOpenEntityRecord(event: {
1190
2141
  entityName: string;
1191
2142
  compositeKey: CompositeKey;
1192
2143
  }): void;
1193
2144
  /** Record `open:resource` buttons → same openEntityRecord chain as agent-run links. */
1194
2145
  private emitOpenResourceRecord;
2146
+ OnNavigationRequest(event: NavigationRequest): void;
2147
+ /** @deprecated Use {@link OnNavigationRequest}. */
1195
2148
  onNavigationRequest(event: NavigationRequest): void;
2149
+ ViewTestRun(testRunId: string): void;
2150
+ /** @deprecated Use {@link ViewTestRun}. */
1196
2151
  viewTestRun(testRunId: string): void;
1197
2152
  /**
1198
2153
  * A gear-gated developer link in the live call overlay asked to open a record
@@ -1201,6 +2156,8 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1201
2156
  * `openEntityRecord` chain every other chat record-open uses, so the Explorer
1202
2157
  * wrapper routes it through `NavigationService.OpenEntityRecord`.
1203
2158
  */
2159
+ OnRealtimeNavigateRequest(event: RealtimeNavigateRequest): void;
2160
+ /** @deprecated Use {@link OnRealtimeNavigateRequest}. */
1204
2161
  onRealtimeNavigateRequest(event: RealtimeNavigateRequest): void;
1205
2162
  /**
1206
2163
  * Session-START hook for a realtime session that CREATED its own conversation (started
@@ -1263,9 +2220,22 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1263
2220
  * The start flips `Active$` synchronously, so clearing the review immediately after
1264
2221
  * never unhosts the overlay mid-transition.
1265
2222
  */
2223
+ OnReviewStartLive(request: RealtimeStartLiveRequest): Promise<void>;
2224
+ /** @deprecated Use {@link OnReviewStartLive}. */
1266
2225
  onReviewStartLive(request: RealtimeStartLiveRequest): Promise<void>;
1267
2226
  /** Review mode's Close: drop the review state (the overlay unhosts itself). */
2227
+ OnReviewClosed(): void;
2228
+ /** @deprecated Use {@link OnReviewClosed}. */
1268
2229
  onReviewClosed(): void;
2230
+ /**
2231
+ * A message reports that its run has gone quiet (MJ #4222).
2232
+ *
2233
+ * The reconciliation triggers all fire on transport events — a socket retry, a tab regaining
2234
+ * focus. This one fires on the symptom itself: a run that simply stopped reporting, with no event
2235
+ * anywhere to notice it. Each pass covers every in-progress message, so the request goes through
2236
+ * the runtime's coalescing trigger: quiet rows asking at about the same time share one pass.
2237
+ */
2238
+ OnLivenessCheckRequested(messageId: string): void;
1269
2239
  /**
1270
2240
  * Handles Shift+Click on an AI message bubble.
1271
2241
  * Dumps a live snapshot of in-memory streaming and agent-run state to the browser
@@ -1274,10 +2244,23 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1274
2244
  *
1275
2245
  * Usage: Hold Shift and click any AI message bubble. Open DevTools Console to see the dump.
1276
2246
  */
2247
+ OnDiagnosticRequested(messageId: string): void;
2248
+ /** @deprecated Use {@link OnDiagnosticRequested}. */
1277
2249
  onDiagnosticRequested(messageId: string): void;
2250
+ OnTestFeedbackMessage(message: MJConversationDetailEntity): void;
2251
+ /** @deprecated Use {@link OnTestFeedbackMessage}. */
1278
2252
  onTestFeedbackMessage(message: MJConversationDetailEntity): void;
2253
+ OnTestFeedbackDialogClosed(result: TestFeedbackDialogResult): void;
2254
+ /** @deprecated Use {@link OnTestFeedbackDialogClosed}. */
1279
2255
  onTestFeedbackDialogClosed(result: TestFeedbackDialogResult): void;
2256
+ OnTaskClicked(task: MJTaskEntity): void;
2257
+ /** @deprecated Use {@link OnTaskClicked}. */
1280
2258
  onTaskClicked(task: MJTaskEntity): void;
2259
+ OnNavigateToConversation(event: {
2260
+ conversationId: string;
2261
+ taskId: string;
2262
+ }): void;
2263
+ /** @deprecated Use {@link OnNavigateToConversation}. */
1281
2264
  onNavigateToConversation(event: {
1282
2265
  conversationId: string;
1283
2266
  taskId: string;
@@ -1285,6 +2268,11 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1285
2268
  /**
1286
2269
  * Handle navigation request from artifact viewer Links tab
1287
2270
  */
2271
+ OnArtifactLinkNavigation(event: {
2272
+ type: 'conversation' | 'collection';
2273
+ id: string;
2274
+ }): void;
2275
+ /** @deprecated Use {@link OnArtifactLinkNavigation}. */
1288
2276
  onArtifactLinkNavigation(event: {
1289
2277
  type: 'conversation' | 'collection';
1290
2278
  id: string;
@@ -1296,6 +2284,8 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1296
2284
  /**
1297
2285
  * Handle share request from artifact viewer
1298
2286
  */
2287
+ OnArtifactShareRequested(artifactId: string): Promise<void>;
2288
+ /** @deprecated Use {@link OnArtifactShareRequested}. */
1299
2289
  onArtifactShareRequested(artifactId: string): Promise<void>;
1300
2290
  /**
1301
2291
  * Handle Analyze button click from the artifact viewer panel.
@@ -1387,13 +2377,23 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1387
2377
  /**
1388
2378
  * Handle close of artifact share modal
1389
2379
  */
2380
+ OnArtifactShareModalClose(): void;
2381
+ /** @deprecated Use {@link OnArtifactShareModalClose}. */
1390
2382
  onArtifactShareModalClose(): void;
1391
2383
  /**
1392
2384
  * Handle successful share - refresh permissions
1393
2385
  */
2386
+ OnArtifactShared(): Promise<void>;
2387
+ /** @deprecated Use {@link OnArtifactShared}. */
1394
2388
  onArtifactShared(): Promise<void>;
2389
+ CheckScroll(): void;
2390
+ /** @deprecated Use {@link CheckScroll}. */
1395
2391
  checkScroll(): void;
2392
+ ScrollToBottomNow(retryCount?: number): void;
2393
+ /** @deprecated Use {@link ScrollToBottomNow}. */
1396
2394
  scrollToBottomNow(retryCount?: number): void;
2395
+ ScrollToBottomAnimate(): void;
2396
+ /** @deprecated Use {@link ScrollToBottomAnimate}. */
1397
2397
  scrollToBottomAnimate(): void;
1398
2398
  /**
1399
2399
  * Decides where the viewport goes after the transcript changed.
@@ -1448,6 +2448,65 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1448
2448
  * completed successfully, we detect the mismatch and correct it. This prevents
1449
2449
  * the race condition where the client overwrites a server-completed record.
1450
2450
  */
2451
+ /**
2452
+ * Re-read the agent-run rows backing this conversation's in-progress messages, refreshing
2453
+ * {@link AgentRunsByDetailId} in place.
2454
+ *
2455
+ * REQUIRED BEFORE ANY ON-DEMAND RECONCILE. {@link reconnectInProgressRuns} compares against
2456
+ * the in-memory map and never reloads it; on the conversation-load path that is safe only
2457
+ * because `loadPeripheralData` ran moments earlier off a fresh fetch. Invoked from a socket
2458
+ * reconnect or a tab regaining focus there has been no such fetch, so the map still holds the
2459
+ * stale `Running` status the outage froze it at — and the reconcile silently finds nothing to
2460
+ * do, which is indistinguishable from working (MJ #4222).
2461
+ *
2462
+ * Deliberately narrow in rows: only the in-progress details, with `BypassCache` because the
2463
+ * server wrote these rows through a different provider. Cheaper than
2464
+ * `windowStore.RefreshLatest()`, and cheap enough to run on every trigger. Full entity rows are
2465
+ * read, not a few fields: each row replaces the run object the message renders from and that the
2466
+ * completion path reloads, so a partial row would blank the run's duration, tokens and cost.
2467
+ */
2468
+ private refreshAgentRunsForInProgress;
2469
+ /**
2470
+ * Reconcile in-progress messages against durable server state, on demand.
2471
+ *
2472
+ * This is the recovery path for the case the five close-event-driven mechanisms all miss: a
2473
+ * completion published while the client's transport was silently dead. Tier 0 makes the socket
2474
+ * close; this is what recovers the event that was dropped while it was down.
2475
+ *
2476
+ * Only one pass runs at a time. A request that arrives during a pass shares it and schedules one
2477
+ * follow-up pass, so every caller resolves after a pass that started after its request.
2478
+ *
2479
+ * @param reason What prompted it — carried only for logging.
2480
+ */
2481
+ ReconcileNow(reason: string): Promise<void>;
2482
+ /** Runs passes until no caller has asked for another. Clears the in-flight marker on exit. */
2483
+ private runReconcilePasses;
2484
+ /** One reconcile pass over the in-progress messages of the active conversation. */
2485
+ private reconcileOnce;
2486
+ /**
2487
+ * Ask the durable read model whether a message we still show as in-progress has in fact finished.
2488
+ *
2489
+ * The last gap in the recovery chain. Everything else here reads `MJ: AI Agent Runs` through the
2490
+ * client's own provider; when that returns nothing the message simply waits. The tail query reads
2491
+ * the same truth server-side from a cursor, reports the conversation detail's own status, and runs
2492
+ * over HTTP — so it answers while the WebSocket is still down, which is the whole point.
2493
+ *
2494
+ * Completion is routed through the existing {@link handleMessageCompletion}, never written here:
2495
+ * four writers already move a message out of In-Progress and a fifth would race them.
2496
+ *
2497
+ * @returns true when the message was completed from durable state.
2498
+ */
2499
+ private tryRecoverFromTail;
2500
+ /**
2501
+ * Complete a message from the run list alone. Used only when the tail call fails.
2502
+ *
2503
+ * Less precise than the tail: it cannot see the conversation detail's own status, so during the
2504
+ * orphan window it reloads the message without settling it. That was the behavior before the
2505
+ * tail existed, and it is better than leaving a finished message spinning.
2506
+ *
2507
+ * @returns true when the message was completed.
2508
+ */
2509
+ private recoverFromRunList;
1451
2510
  private detectAndReconcileAgentRuns;
1452
2511
  /**
1453
2512
  * Reconnect to in-progress agent runs whose completion events were missed.
@@ -1472,16 +2531,24 @@ export declare class ConversationChatAreaComponent extends BaseAngularComponent
1472
2531
  /**
1473
2532
  * Handle intent check started - show temporary "Analyzing intent..." message
1474
2533
  */
2534
+ OnIntentCheckStarted(event: {
2535
+ conversationId: string;
2536
+ }): Promise<void>;
2537
+ /** @deprecated Use {@link OnIntentCheckStarted}. */
1475
2538
  onIntentCheckStarted(event: {
1476
2539
  conversationId: string;
1477
2540
  }): Promise<void>;
1478
2541
  /**
1479
2542
  * Handle intent check completed - remove temporary message
1480
2543
  */
2544
+ OnIntentCheckCompleted(event: {
2545
+ conversationId: string;
2546
+ }): void;
2547
+ /** @deprecated Use {@link OnIntentCheckCompleted}. */
1481
2548
  onIntentCheckCompleted(event: {
1482
2549
  conversationId: string;
1483
2550
  }): void;
1484
2551
  static ɵfac: i0.ɵɵFactoryDeclaration<ConversationChatAreaComponent, never>;
1485
- static ɵcmp: i0.ɵɵComponentDeclaration<ConversationChatAreaComponent, "mj-conversation-chat-area", never, { "environmentId": { "alias": "environmentId"; "required": false; }; "currentUser": { "alias": "currentUser"; "required": false; }; "conversationId": { "alias": "conversationId"; "required": false; }; "conversation": { "alias": "conversation"; "required": false; }; "threadId": { "alias": "threadId"; "required": false; }; "suppressNewConversationEmptyState": { "alias": "suppressNewConversationEmptyState"; "required": false; }; "allowMentions": { "alias": "allowMentions"; "required": false; }; "allowAgentMentions": { "alias": "allowAgentMentions"; "required": false; }; "allowEntityMentions": { "alias": "allowEntityMentions"; "required": false; }; "allowSkillCommands": { "alias": "allowSkillCommands"; "required": false; }; "allowAttachments": { "alias": "allowAttachments"; "required": false; }; "allowPlanMode": { "alias": "allowPlanMode"; "required": false; }; "allowRealtime": { "alias": "allowRealtime"; "required": false; }; "showEmptyFill": { "alias": "showEmptyFill"; "required": false; }; "showLoadingState": { "alias": "showLoadingState"; "required": false; }; "readReplyFromTop": { "alias": "readReplyFromTop"; "required": false; }; "showAgentRunDetails": { "alias": "showAgentRunDetails"; "required": false; }; "showReactions": { "alias": "showReactions"; "required": false; }; "showMessageRating": { "alias": "showMessageRating"; "required": false; }; "allowPinning": { "alias": "allowPinning"; "required": false; }; "allowMessageEdit": { "alias": "allowMessageEdit"; "required": false; }; "allowMessageDelete": { "alias": "allowMessageDelete"; "required": false; }; "showSuggestedPrompts": { "alias": "showSuggestedPrompts"; "required": false; }; "showDateNavigation": { "alias": "showDateNavigation"; "required": false; }; "assistantDisplayName": { "alias": "assistantDisplayName"; "required": false; }; "assistantAvatarUrl": { "alias": "assistantAvatarUrl"; "required": false; }; "isNewConversation": { "alias": "isNewConversation"; "required": false; }; "pendingMessage": { "alias": "pendingMessage"; "required": false; }; "pendingMessageConversationId": { "alias": "pendingMessageConversationId"; "required": false; }; "pendingAttachments": { "alias": "pendingAttachments"; "required": false; }; "pendingArtifactId": { "alias": "pendingArtifactId"; "required": false; }; "pendingArtifactVersionNumber": { "alias": "pendingArtifactVersionNumber"; "required": false; }; "pendingArtifactConversationId": { "alias": "pendingArtifactConversationId"; "required": false; }; "overlayMode": { "alias": "overlayMode"; "required": false; }; "showExportButton": { "alias": "showExportButton"; "required": false; }; "exportButtonLabel": { "alias": "exportButtonLabel"; "required": false; }; "exportButtonIcon": { "alias": "exportButtonIcon"; "required": false; }; "exportBranding": { "alias": "exportBranding"; "required": false; }; "showShareButton": { "alias": "showShareButton"; "required": false; }; "showArtifactIndicator": { "alias": "showArtifactIndicator"; "required": false; }; "appContext": { "alias": "appContext"; "required": false; }; "defaultAgentId": { "alias": "defaultAgentId"; "required": false; }; "applicationScope": { "alias": "applicationScope"; "required": false; }; "applicationId": { "alias": "applicationId"; "required": false; }; "linkedEntityId": { "alias": "linkedEntityId"; "required": false; }; "linkedRecordId": { "alias": "linkedRecordId"; "required": false; }; "showAgentPicker": { "alias": "showAgentPicker"; "required": false; }; "showAgentModePicker": { "alias": "showAgentModePicker"; "required": false; }; "emptyStateGreeting": { "alias": "emptyStateGreeting"; "required": false; }; "showSidebarToggle": { "alias": "showSidebarToggle"; "required": false; }; "showAgentCharacter": { "alias": "showAgentCharacter"; "required": false; }; "agentCharacterConfig": { "alias": "agentCharacterConfig"; "required": false; }; "emptyStateConfig": { "alias": "emptyStateConfig"; "required": false; }; "showDemonstrationSurface": { "alias": "showDemonstrationSurface"; "required": false; }; "demonstrationSurfaceContent": { "alias": "demonstrationSurfaceContent"; "required": false; }; "composerDraft": { "alias": "composerDraft"; "required": false; }; "composerAgentMention": { "alias": "composerAgentMention"; "required": false; }; }, { "beforeAgentTurn": "beforeAgentTurn"; "afterAgentTurn": "afterAgentTurn"; "beforeToolInvoked": "beforeToolInvoked"; "afterToolInvoked": "afterToolInvoked"; "beforeResponseFormSubmitted": "beforeResponseFormSubmitted"; "afterResponseFormSubmitted": "afterResponseFormSubmitted"; "sessionStarted": "sessionStarted"; "sessionChannelStateChanged": "sessionChannelStateChanged"; "sessionEnded": "sessionEnded"; "conversationRenamed": "conversationRenamed"; "openEntityRecord": "openEntityRecord"; "realtimeConversationReady": "realtimeConversationReady"; "navigationRequest": "navigationRequest"; "taskClicked": "taskClicked"; "artifactLinkClicked": "artifactLinkClicked"; "sidebarToggleClicked": "sidebarToggleClicked"; "conversationCreated": "conversationCreated"; "threadOpened": "threadOpened"; "threadClosed": "threadClosed"; "pendingArtifactConsumed": "pendingArtifactConsumed"; "pendingMessageConsumed": "pendingMessageConsumed"; "pendingMessageRequested": "pendingMessageRequested"; "composerDraftConsumed": "composerDraftConsumed"; "composerAgentMentionConsumed": "composerAgentMentionConsumed"; }, ["chatSlotChildren"], never, false, never>;
2552
+ static ɵcmp: i0.ɵɵComponentDeclaration<ConversationChatAreaComponent, "mj-conversation-chat-area", never, { "EnvironmentId": { "alias": "EnvironmentId"; "required": false; }; "environmentId": { "alias": "environmentId"; "required": false; }; "CurrentUser": { "alias": "CurrentUser"; "required": false; }; "currentUser": { "alias": "currentUser"; "required": false; }; "ConversationId": { "alias": "ConversationId"; "required": false; }; "conversationId": { "alias": "conversationId"; "required": false; }; "Conversation": { "alias": "Conversation"; "required": false; }; "conversation": { "alias": "conversation"; "required": false; }; "ThreadId": { "alias": "ThreadId"; "required": false; }; "threadId": { "alias": "threadId"; "required": false; }; "SuppressNewConversationEmptyState": { "alias": "SuppressNewConversationEmptyState"; "required": false; }; "suppressNewConversationEmptyState": { "alias": "suppressNewConversationEmptyState"; "required": false; }; "AllowMentions": { "alias": "AllowMentions"; "required": false; }; "allowMentions": { "alias": "allowMentions"; "required": false; }; "AllowAgentMentions": { "alias": "AllowAgentMentions"; "required": false; }; "allowAgentMentions": { "alias": "allowAgentMentions"; "required": false; }; "AllowEntityMentions": { "alias": "AllowEntityMentions"; "required": false; }; "allowEntityMentions": { "alias": "allowEntityMentions"; "required": false; }; "AllowSkillCommands": { "alias": "AllowSkillCommands"; "required": false; }; "allowSkillCommands": { "alias": "allowSkillCommands"; "required": false; }; "AllowAttachments": { "alias": "AllowAttachments"; "required": false; }; "allowAttachments": { "alias": "allowAttachments"; "required": false; }; "AllowPlanMode": { "alias": "AllowPlanMode"; "required": false; }; "allowPlanMode": { "alias": "allowPlanMode"; "required": false; }; "AllowRealtime": { "alias": "AllowRealtime"; "required": false; }; "allowRealtime": { "alias": "allowRealtime"; "required": false; }; "ShowEmptyFill": { "alias": "ShowEmptyFill"; "required": false; }; "showEmptyFill": { "alias": "showEmptyFill"; "required": false; }; "ShowLoadingState": { "alias": "ShowLoadingState"; "required": false; }; "showLoadingState": { "alias": "showLoadingState"; "required": false; }; "ReadReplyFromTop": { "alias": "ReadReplyFromTop"; "required": false; }; "readReplyFromTop": { "alias": "readReplyFromTop"; "required": false; }; "ShowAgentRunDetails": { "alias": "ShowAgentRunDetails"; "required": false; }; "showAgentRunDetails": { "alias": "showAgentRunDetails"; "required": false; }; "ShowReactions": { "alias": "ShowReactions"; "required": false; }; "showReactions": { "alias": "showReactions"; "required": false; }; "ShowMessageRating": { "alias": "ShowMessageRating"; "required": false; }; "showMessageRating": { "alias": "showMessageRating"; "required": false; }; "AllowPinning": { "alias": "AllowPinning"; "required": false; }; "allowPinning": { "alias": "allowPinning"; "required": false; }; "AllowMessageEdit": { "alias": "AllowMessageEdit"; "required": false; }; "allowMessageEdit": { "alias": "allowMessageEdit"; "required": false; }; "AllowMessageDelete": { "alias": "AllowMessageDelete"; "required": false; }; "allowMessageDelete": { "alias": "allowMessageDelete"; "required": false; }; "ReadOnly": { "alias": "ReadOnly"; "required": false; }; "ReadOnlyMessage": { "alias": "ReadOnlyMessage"; "required": false; }; "ShowSuggestedPrompts": { "alias": "ShowSuggestedPrompts"; "required": false; }; "showSuggestedPrompts": { "alias": "showSuggestedPrompts"; "required": false; }; "ShowDateNavigation": { "alias": "ShowDateNavigation"; "required": false; }; "showDateNavigation": { "alias": "showDateNavigation"; "required": false; }; "AssistantDisplayName": { "alias": "AssistantDisplayName"; "required": false; }; "assistantDisplayName": { "alias": "assistantDisplayName"; "required": false; }; "AssistantAvatarUrl": { "alias": "AssistantAvatarUrl"; "required": false; }; "assistantAvatarUrl": { "alias": "assistantAvatarUrl"; "required": false; }; "IsNewConversation": { "alias": "IsNewConversation"; "required": false; }; "isNewConversation": { "alias": "isNewConversation"; "required": false; }; "PendingMessage": { "alias": "PendingMessage"; "required": false; }; "pendingMessage": { "alias": "pendingMessage"; "required": false; }; "PendingMessageConversationId": { "alias": "PendingMessageConversationId"; "required": false; }; "pendingMessageConversationId": { "alias": "pendingMessageConversationId"; "required": false; }; "PendingAttachments": { "alias": "PendingAttachments"; "required": false; }; "pendingAttachments": { "alias": "pendingAttachments"; "required": false; }; "PendingArtifactId": { "alias": "PendingArtifactId"; "required": false; }; "pendingArtifactId": { "alias": "pendingArtifactId"; "required": false; }; "PendingArtifactVersionNumber": { "alias": "PendingArtifactVersionNumber"; "required": false; }; "pendingArtifactVersionNumber": { "alias": "pendingArtifactVersionNumber"; "required": false; }; "PendingArtifactConversationId": { "alias": "PendingArtifactConversationId"; "required": false; }; "pendingArtifactConversationId": { "alias": "pendingArtifactConversationId"; "required": false; }; "OverlayMode": { "alias": "OverlayMode"; "required": false; }; "overlayMode": { "alias": "overlayMode"; "required": false; }; "ShowExportButton": { "alias": "ShowExportButton"; "required": false; }; "showExportButton": { "alias": "showExportButton"; "required": false; }; "ExportButtonLabel": { "alias": "ExportButtonLabel"; "required": false; }; "exportButtonLabel": { "alias": "exportButtonLabel"; "required": false; }; "ExportButtonIcon": { "alias": "ExportButtonIcon"; "required": false; }; "exportButtonIcon": { "alias": "exportButtonIcon"; "required": false; }; "ExportBranding": { "alias": "ExportBranding"; "required": false; }; "exportBranding": { "alias": "exportBranding"; "required": false; }; "ShowShareButton": { "alias": "ShowShareButton"; "required": false; }; "showShareButton": { "alias": "showShareButton"; "required": false; }; "ShowArtifactIndicator": { "alias": "ShowArtifactIndicator"; "required": false; }; "showArtifactIndicator": { "alias": "showArtifactIndicator"; "required": false; }; "AppContext": { "alias": "AppContext"; "required": false; }; "appContext": { "alias": "appContext"; "required": false; }; "DefaultAgentId": { "alias": "DefaultAgentId"; "required": false; }; "defaultAgentId": { "alias": "defaultAgentId"; "required": false; }; "AgentReplyMode": { "alias": "AgentReplyMode"; "required": false; }; "AllowedAgentIDs": { "alias": "AllowedAgentIDs"; "required": false; }; "MentionPeople": { "alias": "MentionPeople"; "required": false; }; "AgentHistoryFrom": { "alias": "AgentHistoryFrom"; "required": false; }; "AgentTurnHandler": { "alias": "AgentTurnHandler"; "required": false; }; "AutoNameConversation": { "alias": "AutoNameConversation"; "required": false; }; "EnableDecisionRouting": { "alias": "EnableDecisionRouting"; "required": false; }; "ApplicationScope": { "alias": "ApplicationScope"; "required": false; }; "applicationScope": { "alias": "applicationScope"; "required": false; }; "ApplicationId": { "alias": "ApplicationId"; "required": false; }; "applicationId": { "alias": "applicationId"; "required": false; }; "LinkedEntityId": { "alias": "LinkedEntityId"; "required": false; }; "linkedEntityId": { "alias": "linkedEntityId"; "required": false; }; "LinkedRecordId": { "alias": "LinkedRecordId"; "required": false; }; "linkedRecordId": { "alias": "linkedRecordId"; "required": false; }; "ShowAgentPicker": { "alias": "ShowAgentPicker"; "required": false; }; "showAgentPicker": { "alias": "showAgentPicker"; "required": false; }; "ShowAgentModePicker": { "alias": "ShowAgentModePicker"; "required": false; }; "showAgentModePicker": { "alias": "showAgentModePicker"; "required": false; }; "EmptyStateGreeting": { "alias": "EmptyStateGreeting"; "required": false; }; "emptyStateGreeting": { "alias": "emptyStateGreeting"; "required": false; }; "ShowSidebarToggle": { "alias": "ShowSidebarToggle"; "required": false; }; "showSidebarToggle": { "alias": "showSidebarToggle"; "required": false; }; "ShowAgentCharacter": { "alias": "ShowAgentCharacter"; "required": false; }; "showAgentCharacter": { "alias": "showAgentCharacter"; "required": false; }; "AgentCharacterConfig": { "alias": "AgentCharacterConfig"; "required": false; }; "agentCharacterConfig": { "alias": "agentCharacterConfig"; "required": false; }; "EmptyStateConfig": { "alias": "EmptyStateConfig"; "required": false; }; "emptyStateConfig": { "alias": "emptyStateConfig"; "required": false; }; "ShowDemonstrationSurface": { "alias": "ShowDemonstrationSurface"; "required": false; }; "showDemonstrationSurface": { "alias": "showDemonstrationSurface"; "required": false; }; "DemonstrationSurfaceContent": { "alias": "DemonstrationSurfaceContent"; "required": false; }; "demonstrationSurfaceContent": { "alias": "demonstrationSurfaceContent"; "required": false; }; "ComposerDraft": { "alias": "ComposerDraft"; "required": false; }; "composerDraft": { "alias": "composerDraft"; "required": false; }; "ComposerAgentMention": { "alias": "ComposerAgentMention"; "required": false; }; "composerAgentMention": { "alias": "composerAgentMention"; "required": false; }; }, { "BeforeAgentTurn": "BeforeAgentTurn"; "beforeAgentTurn": "beforeAgentTurn"; "AfterAgentTurn": "AfterAgentTurn"; "afterAgentTurn": "afterAgentTurn"; "BeforeToolInvoked": "BeforeToolInvoked"; "beforeToolInvoked": "beforeToolInvoked"; "AfterToolInvoked": "AfterToolInvoked"; "afterToolInvoked": "afterToolInvoked"; "BeforeResponseFormSubmitted": "BeforeResponseFormSubmitted"; "beforeResponseFormSubmitted": "beforeResponseFormSubmitted"; "AfterResponseFormSubmitted": "AfterResponseFormSubmitted"; "afterResponseFormSubmitted": "afterResponseFormSubmitted"; "SessionStarted": "SessionStarted"; "sessionStarted": "sessionStarted"; "SessionChannelStateChanged": "SessionChannelStateChanged"; "sessionChannelStateChanged": "sessionChannelStateChanged"; "SessionEnded": "SessionEnded"; "sessionEnded": "sessionEnded"; "ConversationRenamed": "ConversationRenamed"; "conversationRenamed": "conversationRenamed"; "OpenEntityRecord": "OpenEntityRecord"; "openEntityRecord": "openEntityRecord"; "RealtimeConversationReady": "RealtimeConversationReady"; "realtimeConversationReady": "realtimeConversationReady"; "navigationRequest": "navigationRequest"; "TaskClicked": "TaskClicked"; "taskClicked": "taskClicked"; "ArtifactLinkClicked": "ArtifactLinkClicked"; "artifactLinkClicked": "artifactLinkClicked"; "SidebarToggleClicked": "SidebarToggleClicked"; "sidebarToggleClicked": "sidebarToggleClicked"; "ConversationCreated": "ConversationCreated"; "conversationCreated": "conversationCreated"; "ThreadOpened": "ThreadOpened"; "threadOpened": "threadOpened"; "ThreadClosed": "ThreadClosed"; "threadClosed": "threadClosed"; "PendingArtifactConsumed": "PendingArtifactConsumed"; "pendingArtifactConsumed": "pendingArtifactConsumed"; "PendingMessageConsumed": "PendingMessageConsumed"; "pendingMessageConsumed": "pendingMessageConsumed"; "PendingMessageRequested": "PendingMessageRequested"; "pendingMessageRequested": "pendingMessageRequested"; "ComposerDraftConsumed": "ComposerDraftConsumed"; "composerDraftConsumed": "composerDraftConsumed"; "ComposerAgentMentionConsumed": "ComposerAgentMentionConsumed"; "composerAgentMentionConsumed": "composerAgentMentionConsumed"; }, ["chatSlotChildren"], never, false, never>;
1486
2553
  }
1487
2554
  //# sourceMappingURL=conversation-chat-area.component.d.ts.map