@copilotkitnext/angular 0.0.9-alpha.3 → 0.0.11

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 (210) hide show
  1. package/dist/esm2022/index.mjs +2 -70
  2. package/dist/esm2022/lib/agent.mjs +73 -0
  3. package/dist/esm2022/lib/chat-config.mjs +35 -0
  4. package/dist/esm2022/lib/chat-state.mjs +18 -0
  5. package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message-buttons.mjs +344 -0
  6. package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message-renderer.mjs +260 -0
  7. package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message-toolbar.mjs +22 -0
  8. package/dist/esm2022/{components/chat/copilot-chat-assistant-message.component.mjs → lib/components/chat/copilot-chat-assistant-message.mjs} +216 -240
  9. package/dist/esm2022/lib/components/chat/copilot-chat-assistant-message.types.mjs +2 -0
  10. package/dist/esm2022/lib/components/chat/copilot-chat-audio-recorder.mjs +196 -0
  11. package/dist/esm2022/lib/components/chat/copilot-chat-buttons.mjs +299 -0
  12. package/dist/esm2022/lib/components/chat/copilot-chat-input-defaults.mjs +39 -0
  13. package/dist/esm2022/lib/components/chat/copilot-chat-input.mjs +634 -0
  14. package/dist/esm2022/lib/components/chat/copilot-chat-input.types.mjs +10 -0
  15. package/dist/esm2022/lib/components/chat/copilot-chat-message-view-cursor.mjs +27 -0
  16. package/dist/esm2022/lib/components/chat/copilot-chat-message-view.mjs +268 -0
  17. package/dist/esm2022/lib/components/chat/copilot-chat-message-view.types.mjs +2 -0
  18. package/dist/esm2022/lib/components/chat/copilot-chat-textarea.mjs +139 -0
  19. package/dist/esm2022/lib/components/chat/copilot-chat-tool-calls-view.mjs +36 -0
  20. package/dist/esm2022/lib/components/chat/copilot-chat-toolbar.mjs +20 -0
  21. package/dist/esm2022/lib/components/chat/copilot-chat-tools-menu.mjs +203 -0
  22. package/dist/esm2022/lib/components/chat/copilot-chat-user-message-branch-navigation.mjs +118 -0
  23. package/dist/esm2022/lib/components/chat/copilot-chat-user-message-buttons.mjs +182 -0
  24. package/dist/esm2022/lib/components/chat/copilot-chat-user-message-renderer.mjs +28 -0
  25. package/dist/esm2022/lib/components/chat/copilot-chat-user-message-toolbar.mjs +25 -0
  26. package/dist/esm2022/lib/components/chat/copilot-chat-user-message.mjs +306 -0
  27. package/dist/esm2022/lib/components/chat/copilot-chat-user-message.types.mjs +2 -0
  28. package/dist/esm2022/lib/components/chat/copilot-chat-view-disclaimer.mjs +48 -0
  29. package/dist/esm2022/lib/components/chat/copilot-chat-view-feather.mjs +41 -0
  30. package/dist/esm2022/lib/components/chat/copilot-chat-view-handlers.mjs +19 -0
  31. package/dist/esm2022/lib/components/chat/copilot-chat-view-input-container.mjs +96 -0
  32. package/dist/esm2022/lib/components/chat/copilot-chat-view-scroll-to-bottom-button.mjs +89 -0
  33. package/dist/esm2022/lib/components/chat/copilot-chat-view-scroll-view.mjs +456 -0
  34. package/dist/esm2022/lib/components/chat/copilot-chat-view.mjs +404 -0
  35. package/dist/esm2022/lib/components/chat/copilot-chat-view.types.mjs +2 -0
  36. package/dist/esm2022/lib/components/chat/copilot-chat.mjs +167 -0
  37. package/dist/esm2022/lib/config.mjs +9 -0
  38. package/dist/esm2022/lib/copilotkit.mjs +124 -0
  39. package/dist/esm2022/lib/directives/copilotkit-agent-context.mjs +130 -0
  40. package/dist/esm2022/lib/directives/stick-to-bottom.mjs +170 -0
  41. package/dist/esm2022/lib/directives/tooltip.mjs +217 -0
  42. package/dist/esm2022/lib/human-in-the-loop.mjs +19 -0
  43. package/dist/esm2022/lib/render-tool-calls.mjs +131 -0
  44. package/dist/esm2022/lib/resize-observer.mjs +152 -0
  45. package/dist/esm2022/lib/scroll-position.mjs +124 -0
  46. package/dist/esm2022/lib/slots/copilot-slot.mjs +156 -0
  47. package/dist/esm2022/lib/slots/index.mjs +4 -0
  48. package/dist/esm2022/lib/slots/slot.types.mjs +3 -3
  49. package/dist/esm2022/lib/slots/slot.utils.mjs +19 -15
  50. package/dist/esm2022/lib/tools.mjs +31 -0
  51. package/dist/esm2022/lib/utils.mjs +3 -3
  52. package/dist/esm2022/public-api.mjs +47 -0
  53. package/dist/fesm2022/copilotkitnext-angular.mjs +5249 -8271
  54. package/dist/fesm2022/copilotkitnext-angular.mjs.map +1 -1
  55. package/dist/index.d.ts +1 -55
  56. package/dist/lib/agent.d.ts +53 -0
  57. package/dist/{core/chat-configuration/chat-configuration.types.d.ts → lib/chat-config.d.ts} +4 -8
  58. package/dist/lib/chat-state.d.ts +10 -0
  59. package/dist/lib/components/chat/copilot-chat-assistant-message-buttons.d.ts +68 -0
  60. package/dist/lib/components/chat/copilot-chat-assistant-message-renderer.d.ts +26 -0
  61. package/dist/lib/components/chat/copilot-chat-assistant-message-toolbar.d.ts +7 -0
  62. package/dist/lib/components/chat/copilot-chat-assistant-message.d.ts +178 -0
  63. package/dist/{components → lib/components}/chat/copilot-chat-assistant-message.types.d.ts +1 -1
  64. package/dist/{components/chat/copilot-chat-audio-recorder.component.d.ts → lib/components/chat/copilot-chat-audio-recorder.d.ts} +10 -10
  65. package/dist/lib/components/chat/copilot-chat-buttons.d.ts +65 -0
  66. package/dist/lib/components/chat/copilot-chat-input-defaults.d.ts +38 -0
  67. package/dist/lib/components/chat/copilot-chat-input.d.ts +133 -0
  68. package/dist/{components → lib/components}/chat/copilot-chat-input.types.d.ts +11 -11
  69. package/dist/lib/components/chat/copilot-chat-message-view-cursor.d.ts +11 -0
  70. package/dist/{components/chat/copilot-chat-message-view.component.d.ts → lib/components/chat/copilot-chat-message-view.d.ts} +68 -36
  71. package/dist/{components → lib/components}/chat/copilot-chat-message-view.types.d.ts +2 -2
  72. package/dist/lib/components/chat/copilot-chat-textarea.d.ts +41 -0
  73. package/dist/lib/components/chat/copilot-chat-tool-calls-view.d.ts +55 -0
  74. package/dist/lib/components/chat/copilot-chat-toolbar.d.ts +7 -0
  75. package/dist/lib/components/chat/copilot-chat-tools-menu.d.ts +20 -0
  76. package/dist/lib/components/chat/copilot-chat-user-message-branch-navigation.d.ts +20 -0
  77. package/dist/lib/components/chat/copilot-chat-user-message-buttons.d.ts +35 -0
  78. package/dist/lib/components/chat/copilot-chat-user-message-renderer.d.ts +8 -0
  79. package/dist/lib/components/chat/copilot-chat-user-message-toolbar.d.ts +7 -0
  80. package/dist/lib/components/chat/copilot-chat-user-message.d.ts +55 -0
  81. package/dist/{components → lib/components}/chat/copilot-chat-user-message.types.d.ts +2 -2
  82. package/dist/lib/components/chat/copilot-chat-view-disclaimer.d.ts +15 -0
  83. package/dist/{components/chat/copilot-chat-view-feather.component.d.ts → lib/components/chat/copilot-chat-view-feather.d.ts} +6 -6
  84. package/dist/{components/chat/copilot-chat-view-handlers.service.d.ts → lib/components/chat/copilot-chat-view-handlers.d.ts} +3 -3
  85. package/dist/lib/components/chat/copilot-chat-view-input-container.d.ts +23 -0
  86. package/dist/lib/components/chat/copilot-chat-view-scroll-to-bottom-button.d.ts +16 -0
  87. package/dist/lib/components/chat/copilot-chat-view-scroll-view.d.ts +114 -0
  88. package/dist/lib/components/chat/copilot-chat-view.d.ts +239 -0
  89. package/dist/{components → lib/components}/chat/copilot-chat-view.types.d.ts +2 -2
  90. package/dist/lib/components/chat/copilot-chat.d.ts +67 -0
  91. package/dist/lib/config.d.ts +16 -0
  92. package/dist/lib/copilotkit.d.ts +29 -0
  93. package/dist/{directives/copilotkit-agent-context.directive.d.ts → lib/directives/copilotkit-agent-context.d.ts} +5 -5
  94. package/dist/lib/directives/stick-to-bottom.d.ts +62 -0
  95. package/dist/lib/directives/tooltip.d.ts +33 -0
  96. package/dist/lib/human-in-the-loop.d.ts +13 -0
  97. package/dist/lib/render-tool-calls.d.ts +75 -0
  98. package/dist/{services/resize-observer.service.d.ts → lib/resize-observer.d.ts} +2 -2
  99. package/dist/{services/scroll-position.service.d.ts → lib/scroll-position.d.ts} +6 -6
  100. package/dist/lib/slots/copilot-slot.d.ts +34 -0
  101. package/dist/lib/slots/index.d.ts +3 -0
  102. package/dist/lib/slots/slot.types.d.ts +1 -1
  103. package/dist/lib/slots/slot.utils.d.ts +6 -4
  104. package/dist/lib/tools.d.ts +63 -0
  105. package/dist/lib/utils.d.ts +1 -1
  106. package/dist/public-api.d.ts +46 -0
  107. package/dist/styles.css +0 -69
  108. package/package.json +5 -5
  109. package/dist/components/chat/copilot-chat-assistant-message-buttons.component.d.ts +0 -75
  110. package/dist/components/chat/copilot-chat-assistant-message-renderer.component.d.ts +0 -31
  111. package/dist/components/chat/copilot-chat-assistant-message-toolbar.component.d.ts +0 -8
  112. package/dist/components/chat/copilot-chat-assistant-message.component.d.ts +0 -132
  113. package/dist/components/chat/copilot-chat-buttons.component.d.ts +0 -66
  114. package/dist/components/chat/copilot-chat-input-defaults.d.ts +0 -37
  115. package/dist/components/chat/copilot-chat-input.component.d.ts +0 -133
  116. package/dist/components/chat/copilot-chat-message-view-cursor.component.d.ts +0 -15
  117. package/dist/components/chat/copilot-chat-textarea.component.d.ts +0 -45
  118. package/dist/components/chat/copilot-chat-tool-calls-view.component.d.ts +0 -35
  119. package/dist/components/chat/copilot-chat-toolbar.component.d.ts +0 -8
  120. package/dist/components/chat/copilot-chat-tools-menu.component.d.ts +0 -20
  121. package/dist/components/chat/copilot-chat-user-message-branch-navigation.component.d.ts +0 -23
  122. package/dist/components/chat/copilot-chat-user-message-buttons.component.d.ts +0 -39
  123. package/dist/components/chat/copilot-chat-user-message-renderer.component.d.ts +0 -9
  124. package/dist/components/chat/copilot-chat-user-message-toolbar.component.d.ts +0 -8
  125. package/dist/components/chat/copilot-chat-user-message.component.d.ts +0 -55
  126. package/dist/components/chat/copilot-chat-view-disclaimer.component.d.ts +0 -15
  127. package/dist/components/chat/copilot-chat-view-input-container.component.d.ts +0 -23
  128. package/dist/components/chat/copilot-chat-view-scroll-to-bottom-button.component.d.ts +0 -17
  129. package/dist/components/chat/copilot-chat-view-scroll-view.component.d.ts +0 -84
  130. package/dist/components/chat/copilot-chat-view.component.d.ts +0 -205
  131. package/dist/components/chat/copilot-chat.component.d.ts +0 -36
  132. package/dist/components/copilotkit-tool-render.component.d.ts +0 -25
  133. package/dist/core/chat-configuration/chat-configuration.providers.d.ts +0 -54
  134. package/dist/core/chat-configuration/chat-configuration.service.d.ts +0 -75
  135. package/dist/core/copilotkit.providers.d.ts +0 -13
  136. package/dist/core/copilotkit.service.d.ts +0 -119
  137. package/dist/core/copilotkit.types.d.ts +0 -81
  138. package/dist/directives/copilotkit-agent.directive.d.ts +0 -106
  139. package/dist/directives/copilotkit-chat-config.directive.d.ts +0 -84
  140. package/dist/directives/copilotkit-config.directive.d.ts +0 -44
  141. package/dist/directives/copilotkit-frontend-tool.directive.d.ts +0 -25
  142. package/dist/directives/copilotkit-human-in-the-loop.directive.d.ts +0 -124
  143. package/dist/directives/stick-to-bottom.directive.d.ts +0 -62
  144. package/dist/esm2022/components/chat/copilot-chat-assistant-message-buttons.component.mjs +0 -384
  145. package/dist/esm2022/components/chat/copilot-chat-assistant-message-renderer.component.mjs +0 -286
  146. package/dist/esm2022/components/chat/copilot-chat-assistant-message-toolbar.component.mjs +0 -27
  147. package/dist/esm2022/components/chat/copilot-chat-assistant-message.types.mjs +0 -2
  148. package/dist/esm2022/components/chat/copilot-chat-audio-recorder.component.mjs +0 -202
  149. package/dist/esm2022/components/chat/copilot-chat-buttons.component.mjs +0 -321
  150. package/dist/esm2022/components/chat/copilot-chat-input-defaults.mjs +0 -38
  151. package/dist/esm2022/components/chat/copilot-chat-input.component.mjs +0 -666
  152. package/dist/esm2022/components/chat/copilot-chat-input.types.mjs +0 -10
  153. package/dist/esm2022/components/chat/copilot-chat-message-view-cursor.component.mjs +0 -45
  154. package/dist/esm2022/components/chat/copilot-chat-message-view.component.mjs +0 -296
  155. package/dist/esm2022/components/chat/copilot-chat-message-view.types.mjs +0 -2
  156. package/dist/esm2022/components/chat/copilot-chat-textarea.component.mjs +0 -188
  157. package/dist/esm2022/components/chat/copilot-chat-tool-calls-view.component.mjs +0 -222
  158. package/dist/esm2022/components/chat/copilot-chat-toolbar.component.mjs +0 -25
  159. package/dist/esm2022/components/chat/copilot-chat-tools-menu.component.mjs +0 -199
  160. package/dist/esm2022/components/chat/copilot-chat-user-message-branch-navigation.component.mjs +0 -137
  161. package/dist/esm2022/components/chat/copilot-chat-user-message-buttons.component.mjs +0 -207
  162. package/dist/esm2022/components/chat/copilot-chat-user-message-renderer.component.mjs +0 -35
  163. package/dist/esm2022/components/chat/copilot-chat-user-message-toolbar.component.mjs +0 -34
  164. package/dist/esm2022/components/chat/copilot-chat-user-message.component.mjs +0 -341
  165. package/dist/esm2022/components/chat/copilot-chat-user-message.types.mjs +0 -2
  166. package/dist/esm2022/components/chat/copilot-chat-view-disclaimer.component.mjs +0 -52
  167. package/dist/esm2022/components/chat/copilot-chat-view-feather.component.mjs +0 -55
  168. package/dist/esm2022/components/chat/copilot-chat-view-handlers.service.mjs +0 -19
  169. package/dist/esm2022/components/chat/copilot-chat-view-input-container.component.mjs +0 -110
  170. package/dist/esm2022/components/chat/copilot-chat-view-scroll-to-bottom-button.component.mjs +0 -93
  171. package/dist/esm2022/components/chat/copilot-chat-view-scroll-view.component.mjs +0 -443
  172. package/dist/esm2022/components/chat/copilot-chat-view.component.mjs +0 -479
  173. package/dist/esm2022/components/chat/copilot-chat-view.types.mjs +0 -2
  174. package/dist/esm2022/components/chat/copilot-chat.component.mjs +0 -220
  175. package/dist/esm2022/components/copilotkit-tool-render.component.mjs +0 -150
  176. package/dist/esm2022/core/chat-configuration/chat-configuration.providers.mjs +0 -65
  177. package/dist/esm2022/core/chat-configuration/chat-configuration.service.mjs +0 -145
  178. package/dist/esm2022/core/chat-configuration/chat-configuration.types.mjs +0 -26
  179. package/dist/esm2022/core/copilotkit.providers.mjs +0 -34
  180. package/dist/esm2022/core/copilotkit.service.mjs +0 -411
  181. package/dist/esm2022/core/copilotkit.types.mjs +0 -13
  182. package/dist/esm2022/directives/copilotkit-agent-context.directive.mjs +0 -130
  183. package/dist/esm2022/directives/copilotkit-agent.directive.mjs +0 -221
  184. package/dist/esm2022/directives/copilotkit-chat-config.directive.mjs +0 -218
  185. package/dist/esm2022/directives/copilotkit-config.directive.mjs +0 -94
  186. package/dist/esm2022/directives/copilotkit-frontend-tool.directive.mjs +0 -128
  187. package/dist/esm2022/directives/copilotkit-human-in-the-loop.directive.mjs +0 -265
  188. package/dist/esm2022/directives/stick-to-bottom.directive.mjs +0 -181
  189. package/dist/esm2022/lib/directives/tooltip.directive.mjs +0 -211
  190. package/dist/esm2022/lib/slots/copilot-slot.component.mjs +0 -154
  191. package/dist/esm2022/services/resize-observer.service.mjs +0 -152
  192. package/dist/esm2022/services/scroll-position.service.mjs +0 -124
  193. package/dist/esm2022/types/frontend-tool.mjs +0 -2
  194. package/dist/esm2022/types/human-in-the-loop.mjs +0 -2
  195. package/dist/esm2022/utils/agent-context.utils.mjs +0 -114
  196. package/dist/esm2022/utils/agent.utils.mjs +0 -212
  197. package/dist/esm2022/utils/chat-config.utils.mjs +0 -186
  198. package/dist/esm2022/utils/copilotkit.utils.mjs +0 -20
  199. package/dist/esm2022/utils/frontend-tool.utils.mjs +0 -224
  200. package/dist/esm2022/utils/human-in-the-loop.utils.mjs +0 -293
  201. package/dist/lib/directives/tooltip.directive.d.ts +0 -33
  202. package/dist/lib/slots/copilot-slot.component.d.ts +0 -34
  203. package/dist/types/frontend-tool.d.ts +0 -37
  204. package/dist/types/human-in-the-loop.d.ts +0 -44
  205. package/dist/utils/agent-context.utils.d.ts +0 -75
  206. package/dist/utils/agent.utils.d.ts +0 -108
  207. package/dist/utils/chat-config.utils.d.ts +0 -166
  208. package/dist/utils/copilotkit.utils.d.ts +0 -16
  209. package/dist/utils/frontend-tool.utils.d.ts +0 -119
  210. package/dist/utils/human-in-the-loop.utils.d.ts +0 -92
@@ -0,0 +1,133 @@
1
+ import { TemplateRef, AfterViewInit, OnDestroy, Type } from "@angular/core";
2
+ import { CopilotChatTextarea } from "./copilot-chat-textarea";
3
+ import { CopilotChatAudioRecorder } from "./copilot-chat-audio-recorder";
4
+ import { CopilotChatStartTranscribeButton, CopilotChatCancelTranscribeButton, CopilotChatFinishTranscribeButton, CopilotChatAddFileButton } from "./copilot-chat-buttons";
5
+ import { CopilotChatToolbar } from "./copilot-chat-toolbar";
6
+ import { CopilotChatToolsMenu } from "./copilot-chat-tools-menu";
7
+ import type { CopilotChatInputMode, ToolsMenuItem } from "./copilot-chat-input.types";
8
+ import * as i0 from "@angular/core";
9
+ /**
10
+ * Context provided to slot templates
11
+ */
12
+ export interface SendButtonContext {
13
+ send: () => void;
14
+ disabled: boolean;
15
+ value: string;
16
+ }
17
+ export interface ToolbarContext {
18
+ mode: CopilotChatInputMode;
19
+ value: string;
20
+ }
21
+ export declare class CopilotChatInput implements AfterViewInit, OnDestroy {
22
+ textAreaRef?: CopilotChatTextarea;
23
+ audioRecorderRef?: CopilotChatAudioRecorder;
24
+ sendButtonTemplate?: TemplateRef<SendButtonContext>;
25
+ toolbarTemplate?: TemplateRef<ToolbarContext>;
26
+ textAreaTemplate?: TemplateRef<any>;
27
+ audioRecorderTemplate?: TemplateRef<any>;
28
+ startTranscribeButtonTemplate?: TemplateRef<any>;
29
+ cancelTranscribeButtonTemplate?: TemplateRef<any>;
30
+ finishTranscribeButtonTemplate?: TemplateRef<any>;
31
+ addFileButtonTemplate?: TemplateRef<any>;
32
+ toolsButtonTemplate?: TemplateRef<any>;
33
+ sendButtonClass: import("@angular/core").InputSignal<string>;
34
+ toolbarClass: import("@angular/core").InputSignal<string>;
35
+ textAreaClass: import("@angular/core").InputSignal<string>;
36
+ textAreaMaxRows: import("@angular/core").InputSignal<number>;
37
+ textAreaPlaceholder: import("@angular/core").InputSignal<string>;
38
+ audioRecorderClass: import("@angular/core").InputSignal<string>;
39
+ startTranscribeButtonClass: import("@angular/core").InputSignal<string>;
40
+ cancelTranscribeButtonClass: import("@angular/core").InputSignal<string>;
41
+ finishTranscribeButtonClass: import("@angular/core").InputSignal<string>;
42
+ addFileButtonClass: import("@angular/core").InputSignal<string>;
43
+ toolsButtonClass: import("@angular/core").InputSignal<string>;
44
+ sendButtonComponent: import("@angular/core").InputSignal<Type<any>>;
45
+ toolbarComponent: import("@angular/core").InputSignal<Type<any>>;
46
+ textAreaComponent: import("@angular/core").InputSignal<Type<any>>;
47
+ audioRecorderComponent: import("@angular/core").InputSignal<Type<any>>;
48
+ startTranscribeButtonComponent: import("@angular/core").InputSignal<Type<any>>;
49
+ cancelTranscribeButtonComponent: import("@angular/core").InputSignal<Type<any>>;
50
+ finishTranscribeButtonComponent: import("@angular/core").InputSignal<Type<any>>;
51
+ addFileButtonComponent: import("@angular/core").InputSignal<Type<any>>;
52
+ toolsButtonComponent: import("@angular/core").InputSignal<Type<any>>;
53
+ mode: import("@angular/core").InputSignal<CopilotChatInputMode>;
54
+ toolsMenu: import("@angular/core").InputSignal<(ToolsMenuItem | "-")[]>;
55
+ autoFocus: import("@angular/core").InputSignal<boolean>;
56
+ value: import("@angular/core").InputSignal<string>;
57
+ inputClass: import("@angular/core").InputSignal<string>;
58
+ additionalToolbarItems: import("@angular/core").InputSignal<TemplateRef<any>>;
59
+ submitMessage: import("@angular/core").OutputEmitterRef<string>;
60
+ startTranscribe: import("@angular/core").OutputEmitterRef<void>;
61
+ cancelTranscribe: import("@angular/core").OutputEmitterRef<void>;
62
+ finishTranscribe: import("@angular/core").OutputEmitterRef<void>;
63
+ addFile: import("@angular/core").OutputEmitterRef<void>;
64
+ valueChange: import("@angular/core").OutputEmitterRef<string>;
65
+ readonly ArrowUpIcon: import("lucide-angular").LucideIconData;
66
+ readonly defaultButtonClass: string;
67
+ readonly labels: import("../../chat-config").CopilotChatLabels;
68
+ readonly chatState: import("../../chat-state").ChatState;
69
+ modeSignal: import("@angular/core").WritableSignal<CopilotChatInputMode>;
70
+ toolsMenuSignal: import("@angular/core").WritableSignal<(ToolsMenuItem | "-")[]>;
71
+ autoFocusSignal: import("@angular/core").WritableSignal<boolean>;
72
+ customClass: import("@angular/core").WritableSignal<string>;
73
+ defaultAudioRecorder: typeof CopilotChatAudioRecorder;
74
+ defaultSendButton: any;
75
+ CopilotChatToolbar: typeof CopilotChatToolbar;
76
+ CopilotChatAddFileButton: typeof CopilotChatAddFileButton;
77
+ CopilotChatToolsMenu: typeof CopilotChatToolsMenu;
78
+ CopilotChatCancelTranscribeButton: typeof CopilotChatCancelTranscribeButton;
79
+ CopilotChatFinishTranscribeButton: typeof CopilotChatFinishTranscribeButton;
80
+ CopilotChatStartTranscribeButton: typeof CopilotChatStartTranscribeButton;
81
+ computedMode: import("@angular/core").Signal<CopilotChatInputMode>;
82
+ computedToolsMenu: import("@angular/core").Signal<(ToolsMenuItem | "-")[]>;
83
+ computedAutoFocus: import("@angular/core").Signal<boolean>;
84
+ computedValue: import("@angular/core").Signal<string>;
85
+ computedClass: import("@angular/core").Signal<string>;
86
+ sendButtonContext: import("@angular/core").Signal<SendButtonContext>;
87
+ toolbarContext: import("@angular/core").Signal<ToolbarContext>;
88
+ textAreaContext: import("@angular/core").Signal<{
89
+ value: string;
90
+ autoFocus: boolean;
91
+ disabled: boolean;
92
+ maxRows: number;
93
+ placeholder: string;
94
+ inputClass: string;
95
+ onKeyDown: (event: KeyboardEvent) => void;
96
+ onChange: (value: string) => void;
97
+ }>;
98
+ audioRecorderContext: import("@angular/core").Signal<{
99
+ inputShowControls: boolean;
100
+ }>;
101
+ toolsContext: import("@angular/core").Signal<{
102
+ inputToolsMenu: (ToolsMenuItem | "-")[];
103
+ inputDisabled: boolean;
104
+ }>;
105
+ constructor();
106
+ addFileButtonOutputs: {
107
+ clicked: () => void;
108
+ };
109
+ cancelTranscribeButtonOutputs: {
110
+ clicked: () => void;
111
+ };
112
+ finishTranscribeButtonOutputs: {
113
+ clicked: () => void;
114
+ };
115
+ startTranscribeButtonOutputs: {
116
+ clicked: () => void;
117
+ };
118
+ sendButtonOutputs: {
119
+ clicked: () => void;
120
+ click: () => void;
121
+ };
122
+ ngAfterViewInit(): void;
123
+ ngOnDestroy(): void;
124
+ handleKeyDown(event: KeyboardEvent): void;
125
+ handleValueChange(value: string): void;
126
+ send(): void;
127
+ handleStartTranscribe(): void;
128
+ handleCancelTranscribe(): void;
129
+ handleFinishTranscribe(): void;
130
+ handleAddFile(): void;
131
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatInput, never>;
132
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatInput, "copilot-chat-input", never, { "sendButtonClass": { "alias": "sendButtonClass"; "required": false; "isSignal": true; }; "toolbarClass": { "alias": "toolbarClass"; "required": false; "isSignal": true; }; "textAreaClass": { "alias": "textAreaClass"; "required": false; "isSignal": true; }; "textAreaMaxRows": { "alias": "textAreaMaxRows"; "required": false; "isSignal": true; }; "textAreaPlaceholder": { "alias": "textAreaPlaceholder"; "required": false; "isSignal": true; }; "audioRecorderClass": { "alias": "audioRecorderClass"; "required": false; "isSignal": true; }; "startTranscribeButtonClass": { "alias": "startTranscribeButtonClass"; "required": false; "isSignal": true; }; "cancelTranscribeButtonClass": { "alias": "cancelTranscribeButtonClass"; "required": false; "isSignal": true; }; "finishTranscribeButtonClass": { "alias": "finishTranscribeButtonClass"; "required": false; "isSignal": true; }; "addFileButtonClass": { "alias": "addFileButtonClass"; "required": false; "isSignal": true; }; "toolsButtonClass": { "alias": "toolsButtonClass"; "required": false; "isSignal": true; }; "sendButtonComponent": { "alias": "sendButtonComponent"; "required": false; "isSignal": true; }; "toolbarComponent": { "alias": "toolbarComponent"; "required": false; "isSignal": true; }; "textAreaComponent": { "alias": "textAreaComponent"; "required": false; "isSignal": true; }; "audioRecorderComponent": { "alias": "audioRecorderComponent"; "required": false; "isSignal": true; }; "startTranscribeButtonComponent": { "alias": "startTranscribeButtonComponent"; "required": false; "isSignal": true; }; "cancelTranscribeButtonComponent": { "alias": "cancelTranscribeButtonComponent"; "required": false; "isSignal": true; }; "finishTranscribeButtonComponent": { "alias": "finishTranscribeButtonComponent"; "required": false; "isSignal": true; }; "addFileButtonComponent": { "alias": "addFileButtonComponent"; "required": false; "isSignal": true; }; "toolsButtonComponent": { "alias": "toolsButtonComponent"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "toolsMenu": { "alias": "toolsMenu"; "required": false; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; "additionalToolbarItems": { "alias": "additionalToolbarItems"; "required": false; "isSignal": true; }; }, { "submitMessage": "submitMessage"; "startTranscribe": "startTranscribe"; "cancelTranscribe": "cancelTranscribe"; "finishTranscribe": "finishTranscribe"; "addFile": "addFile"; "valueChange": "valueChange"; }, ["sendButtonTemplate", "toolbarTemplate", "textAreaTemplate", "audioRecorderTemplate", "startTranscribeButtonTemplate", "cancelTranscribeButtonTemplate", "finishTranscribeButtonTemplate", "addFileButtonTemplate", "toolsButtonTemplate"], never, true, never>;
133
+ }
@@ -1,8 +1,8 @@
1
- import type { Type, TemplateRef } from '@angular/core';
1
+ import type { Type, TemplateRef } from "@angular/core";
2
2
  /**
3
3
  * Mode of the chat input component
4
4
  */
5
- export type CopilotChatInputMode = 'input' | 'transcribe' | 'processing';
5
+ export type CopilotChatInputMode = "input" | "transcribe" | "processing";
6
6
  /**
7
7
  * Represents a menu item in the tools menu
8
8
  */
@@ -13,12 +13,12 @@ export type ToolsMenuItem = {
13
13
  items?: never;
14
14
  } | {
15
15
  action?: never;
16
- items: (ToolsMenuItem | '-')[];
16
+ items: (ToolsMenuItem | "-")[];
17
17
  });
18
18
  /**
19
19
  * Audio recorder state
20
20
  */
21
- export type AudioRecorderState = 'idle' | 'recording' | 'processing';
21
+ export type AudioRecorderState = "idle" | "recording" | "processing";
22
22
  /**
23
23
  * Error class for audio recorder failures
24
24
  */
@@ -42,7 +42,7 @@ export interface CopilotChatTextareaProps {
42
42
  cols?: number;
43
43
  readonly?: boolean;
44
44
  spellcheck?: boolean;
45
- wrap?: 'hard' | 'soft' | 'off';
45
+ wrap?: "hard" | "soft" | "off";
46
46
  }
47
47
  /**
48
48
  * Props for button components
@@ -52,7 +52,7 @@ export interface CopilotChatButtonProps {
52
52
  onClick?: () => void;
53
53
  inputClass?: string;
54
54
  style?: any;
55
- type?: 'button' | 'submit' | 'reset';
55
+ type?: "button" | "submit" | "reset";
56
56
  ariaLabel?: string;
57
57
  ariaPressed?: boolean;
58
58
  ariaExpanded?: boolean;
@@ -64,13 +64,13 @@ export interface CopilotChatButtonProps {
64
64
  export interface CopilotChatToolbarButtonProps extends CopilotChatButtonProps {
65
65
  icon?: TemplateRef<any>;
66
66
  tooltip?: string;
67
- variant?: 'primary' | 'secondary';
67
+ variant?: "primary" | "secondary";
68
68
  }
69
69
  /**
70
70
  * Props for tools menu button
71
71
  */
72
72
  export interface CopilotChatToolsButtonProps extends CopilotChatButtonProps {
73
- toolsMenu?: (ToolsMenuItem | '-')[];
73
+ toolsMenu?: (ToolsMenuItem | "-")[];
74
74
  }
75
75
  /**
76
76
  * Props for audio recorder
@@ -88,8 +88,8 @@ export interface CopilotChatAudioRecorderProps {
88
88
  export interface CopilotChatToolbarProps {
89
89
  inputClass?: string;
90
90
  style?: any;
91
- position?: 'top' | 'bottom';
92
- alignment?: 'left' | 'center' | 'right' | 'space-between';
91
+ position?: "top" | "bottom";
92
+ alignment?: "left" | "center" | "right" | "space-between";
93
93
  }
94
94
  /**
95
95
  * Slot configuration for chat input
@@ -110,7 +110,7 @@ export interface CopilotChatInputSlots {
110
110
  */
111
111
  export interface CopilotChatInputConfig {
112
112
  mode?: CopilotChatInputMode;
113
- toolsMenu?: (ToolsMenuItem | '-')[];
113
+ toolsMenu?: (ToolsMenuItem | "-")[];
114
114
  autoFocus?: boolean;
115
115
  additionalToolbarItems?: TemplateRef<any>;
116
116
  value?: string;
@@ -0,0 +1,11 @@
1
+ import * as i0 from "@angular/core";
2
+ /**
3
+ * Cursor component that matches the React implementation exactly.
4
+ * Shows a pulsing dot animation to indicate activity.
5
+ */
6
+ export declare class CopilotChatMessageViewCursor {
7
+ inputClass: import("@angular/core").InputSignal<string>;
8
+ computedClass: import("@angular/core").Signal<string>;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatMessageViewCursor, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatMessageViewCursor, "copilot-chat-message-view-cursor", never, { "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11
+ }
@@ -1,51 +1,85 @@
1
- import { EventEmitter, TemplateRef, Type, OnInit, OnChanges } from '@angular/core';
2
- import type { Message } from '@ag-ui/core';
3
- import { CopilotChatAssistantMessageComponent } from './copilot-chat-assistant-message.component';
4
- import { CopilotChatUserMessageComponent } from './copilot-chat-user-message.component';
5
- import { CopilotChatMessageViewCursorComponent } from './copilot-chat-message-view-cursor.component';
1
+ import { TemplateRef, Type } from "@angular/core";
2
+ import type { Message } from "@ag-ui/core";
3
+ import { CopilotChatAssistantMessage } from "./copilot-chat-assistant-message";
4
+ import { CopilotChatUserMessage } from "./copilot-chat-user-message";
5
+ import { CopilotChatMessageViewCursor } from "./copilot-chat-message-view-cursor";
6
6
  import * as i0 from "@angular/core";
7
7
  /**
8
8
  * CopilotChatMessageView component - Angular port of the React component.
9
9
  * Renders a list of chat messages with support for custom slots and layouts.
10
10
  * DOM structure and Tailwind classes match the React implementation exactly.
11
11
  */
12
- export declare class CopilotChatMessageViewComponent implements OnInit, OnChanges {
13
- messages: Message[];
14
- showCursor: boolean;
15
- isLoading: boolean;
16
- inputClass?: string;
17
- assistantMessageComponent?: Type<any>;
18
- assistantMessageTemplate?: TemplateRef<any>;
19
- assistantMessageClass?: string;
20
- userMessageComponent?: Type<any>;
21
- userMessageTemplate?: TemplateRef<any>;
22
- userMessageClass?: string;
23
- cursorComponent?: Type<any>;
24
- cursorTemplate?: TemplateRef<any>;
25
- cursorClass?: string;
12
+ export declare class CopilotChatMessageView {
13
+ messages: import("@angular/core").InputSignal<({
14
+ id: string;
15
+ role: "developer";
16
+ content: string;
17
+ name?: string;
18
+ } | {
19
+ id: string;
20
+ role: "system";
21
+ content: string;
22
+ name?: string;
23
+ } | {
24
+ id: string;
25
+ role: "assistant";
26
+ name?: string;
27
+ content?: string;
28
+ toolCalls?: {
29
+ function: {
30
+ name: string;
31
+ arguments: string;
32
+ };
33
+ type: "function";
34
+ id: string;
35
+ }[];
36
+ } | {
37
+ id: string;
38
+ role: "user";
39
+ content: string;
40
+ name?: string;
41
+ } | {
42
+ id: string;
43
+ role: "tool";
44
+ content: string;
45
+ toolCallId: string;
46
+ error?: string;
47
+ })[]>;
48
+ showCursor: import("@angular/core").InputSignal<boolean>;
49
+ isLoading: import("@angular/core").InputSignal<boolean>;
50
+ inputClass: import("@angular/core").InputSignal<string>;
51
+ assistantMessageComponent: import("@angular/core").InputSignal<Type<any>>;
52
+ assistantMessageTemplate: import("@angular/core").InputSignal<TemplateRef<any>>;
53
+ assistantMessageClass: import("@angular/core").InputSignal<string>;
54
+ userMessageComponent: import("@angular/core").InputSignal<Type<any>>;
55
+ userMessageTemplate: import("@angular/core").InputSignal<TemplateRef<any>>;
56
+ userMessageClass: import("@angular/core").InputSignal<string>;
57
+ cursorComponent: import("@angular/core").InputSignal<Type<any>>;
58
+ cursorTemplate: import("@angular/core").InputSignal<TemplateRef<any>>;
59
+ cursorClass: import("@angular/core").InputSignal<string>;
26
60
  customLayoutTemplate?: TemplateRef<any>;
27
- assistantMessageThumbsUp: EventEmitter<{
61
+ assistantMessageThumbsUp: import("@angular/core").OutputEmitterRef<{
28
62
  message: Message;
29
63
  }>;
30
- assistantMessageThumbsDown: EventEmitter<{
64
+ assistantMessageThumbsDown: import("@angular/core").OutputEmitterRef<{
31
65
  message: Message;
32
66
  }>;
33
- assistantMessageReadAloud: EventEmitter<{
67
+ assistantMessageReadAloud: import("@angular/core").OutputEmitterRef<{
34
68
  message: Message;
35
69
  }>;
36
- assistantMessageRegenerate: EventEmitter<{
70
+ assistantMessageRegenerate: import("@angular/core").OutputEmitterRef<{
37
71
  message: Message;
38
72
  }>;
39
- userMessageCopy: EventEmitter<{
73
+ userMessageCopy: import("@angular/core").OutputEmitterRef<{
40
74
  message: Message;
41
75
  }>;
42
- userMessageEdit: EventEmitter<{
76
+ userMessageEdit: import("@angular/core").OutputEmitterRef<{
43
77
  message: Message;
44
78
  }>;
45
- protected readonly defaultAssistantComponent: typeof CopilotChatAssistantMessageComponent;
46
- protected readonly defaultUserComponent: typeof CopilotChatUserMessageComponent;
47
- protected readonly defaultCursorComponent: typeof CopilotChatMessageViewCursorComponent;
48
- protected messagesSignal: import("@angular/core").WritableSignal<({
79
+ protected readonly defaultAssistantComponent: typeof CopilotChatAssistantMessage;
80
+ protected readonly defaultUserComponent: typeof CopilotChatUserMessage;
81
+ protected readonly defaultCursorComponent: typeof CopilotChatMessageViewCursor;
82
+ protected messagesValue: import("@angular/core").Signal<({
49
83
  id: string;
50
84
  role: "developer";
51
85
  content: string;
@@ -80,9 +114,8 @@ export declare class CopilotChatMessageViewComponent implements OnInit, OnChange
80
114
  toolCallId: string;
81
115
  error?: string;
82
116
  })[]>;
83
- protected showCursorSignal: import("@angular/core").WritableSignal<boolean>;
84
- protected isLoadingSignal: import("@angular/core").WritableSignal<boolean>;
85
- protected inputClassSignal: import("@angular/core").WritableSignal<string>;
117
+ protected showCursorValue: import("@angular/core").Signal<boolean>;
118
+ protected isLoadingValue: import("@angular/core").Signal<boolean>;
86
119
  computedClass: import("@angular/core").Signal<string>;
87
120
  layoutContext: import("@angular/core").Signal<{
88
121
  isLoading: boolean;
@@ -274,8 +307,7 @@ export declare class CopilotChatMessageViewComponent implements OnInit, OnChange
274
307
  inputClass: string;
275
308
  };
276
309
  trackByMessageId(index: number, message: Message): string;
277
- ngOnInit(): void;
278
- ngOnChanges(): void;
310
+ constructor();
279
311
  handleAssistantThumbsUp(event: {
280
312
  message: Message;
281
313
  }): void;
@@ -288,6 +320,6 @@ export declare class CopilotChatMessageViewComponent implements OnInit, OnChange
288
320
  handleAssistantRegenerate(event: {
289
321
  message: Message;
290
322
  }): void;
291
- static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatMessageViewComponent, never>;
292
- static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatMessageViewComponent, "copilot-chat-message-view", never, { "messages": { "alias": "messages"; "required": false; }; "showCursor": { "alias": "showCursor"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "inputClass": { "alias": "inputClass"; "required": false; }; "assistantMessageComponent": { "alias": "assistantMessageComponent"; "required": false; }; "assistantMessageTemplate": { "alias": "assistantMessageTemplate"; "required": false; }; "assistantMessageClass": { "alias": "assistantMessageClass"; "required": false; }; "userMessageComponent": { "alias": "userMessageComponent"; "required": false; }; "userMessageTemplate": { "alias": "userMessageTemplate"; "required": false; }; "userMessageClass": { "alias": "userMessageClass"; "required": false; }; "cursorComponent": { "alias": "cursorComponent"; "required": false; }; "cursorTemplate": { "alias": "cursorTemplate"; "required": false; }; "cursorClass": { "alias": "cursorClass"; "required": false; }; }, { "assistantMessageThumbsUp": "assistantMessageThumbsUp"; "assistantMessageThumbsDown": "assistantMessageThumbsDown"; "assistantMessageReadAloud": "assistantMessageReadAloud"; "assistantMessageRegenerate": "assistantMessageRegenerate"; "userMessageCopy": "userMessageCopy"; "userMessageEdit": "userMessageEdit"; }, ["customLayoutTemplate"], never, true, never>;
323
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatMessageView, never>;
324
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatMessageView, "copilot-chat-message-view", never, { "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "showCursor": { "alias": "showCursor"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; "assistantMessageComponent": { "alias": "assistantMessageComponent"; "required": false; "isSignal": true; }; "assistantMessageTemplate": { "alias": "assistantMessageTemplate"; "required": false; "isSignal": true; }; "assistantMessageClass": { "alias": "assistantMessageClass"; "required": false; "isSignal": true; }; "userMessageComponent": { "alias": "userMessageComponent"; "required": false; "isSignal": true; }; "userMessageTemplate": { "alias": "userMessageTemplate"; "required": false; "isSignal": true; }; "userMessageClass": { "alias": "userMessageClass"; "required": false; "isSignal": true; }; "cursorComponent": { "alias": "cursorComponent"; "required": false; "isSignal": true; }; "cursorTemplate": { "alias": "cursorTemplate"; "required": false; "isSignal": true; }; "cursorClass": { "alias": "cursorClass"; "required": false; "isSignal": true; }; }, { "assistantMessageThumbsUp": "assistantMessageThumbsUp"; "assistantMessageThumbsDown": "assistantMessageThumbsDown"; "assistantMessageReadAloud": "assistantMessageReadAloud"; "assistantMessageRegenerate": "assistantMessageRegenerate"; "userMessageCopy": "userMessageCopy"; "userMessageEdit": "userMessageEdit"; }, ["customLayoutTemplate"], never, true, never>;
293
325
  }
@@ -1,5 +1,5 @@
1
- import { Message } from '@ag-ui/client';
2
- import { Type, TemplateRef } from '@angular/core';
1
+ import { Message } from "@ag-ui/client";
2
+ import { Type, TemplateRef } from "@angular/core";
3
3
  export interface MessageViewContext {
4
4
  showCursor: boolean;
5
5
  messages: Message[];
@@ -0,0 +1,41 @@
1
+ import { ElementRef, AfterViewInit } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export declare class CopilotChatTextarea implements AfterViewInit {
4
+ private elementRef;
5
+ get textareaRef(): ElementRef<any>;
6
+ inputValue: import("@angular/core").InputSignal<string>;
7
+ inputPlaceholder: import("@angular/core").InputSignal<string>;
8
+ inputMaxRows: import("@angular/core").InputSignal<number>;
9
+ inputAutoFocus: import("@angular/core").InputSignal<boolean>;
10
+ inputDisabled: import("@angular/core").InputSignal<boolean>;
11
+ inputClass: import("@angular/core").InputSignal<string>;
12
+ valueChange: import("@angular/core").OutputEmitterRef<string>;
13
+ keyDown: import("@angular/core").OutputEmitterRef<KeyboardEvent>;
14
+ readonly chatLabels: import("../../chat-config").CopilotChatLabels;
15
+ readonly chatState: import("../../chat-state").ChatState;
16
+ maxHeight: import("@angular/core").WritableSignal<number>;
17
+ computedValue: import("@angular/core").Signal<string>;
18
+ placeholder: import("@angular/core").Signal<string>;
19
+ disabled: import("@angular/core").Signal<boolean>;
20
+ computedClass: import("@angular/core").Signal<string>;
21
+ constructor();
22
+ ngAfterViewInit(): void;
23
+ onInput(event: Event): void;
24
+ onKeyDown(event: KeyboardEvent): void;
25
+ private calculateMaxHeight;
26
+ private adjustHeight;
27
+ /**
28
+ * Public method to focus the textarea
29
+ */
30
+ focus(): void;
31
+ /**
32
+ * Public method to get current value
33
+ */
34
+ getValue(): string;
35
+ /**
36
+ * Public method to set value programmatically
37
+ */
38
+ setValue(value: string): void;
39
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatTextarea, never>;
40
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatTextarea, "textarea[copilotChatTextarea]", never, { "inputValue": { "alias": "inputValue"; "required": false; "isSignal": true; }; "inputPlaceholder": { "alias": "inputPlaceholder"; "required": false; "isSignal": true; }; "inputMaxRows": { "alias": "inputMaxRows"; "required": false; "isSignal": true; }; "inputAutoFocus": { "alias": "inputAutoFocus"; "required": false; "isSignal": true; }; "inputDisabled": { "alias": "inputDisabled"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "keyDown": "keyDown"; }, never, never, true, never>;
41
+ }
@@ -0,0 +1,55 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CopilotChatToolCallsView {
3
+ readonly message: import("@angular/core").InputSignal<{
4
+ id: string;
5
+ role: "assistant";
6
+ name?: string;
7
+ content?: string;
8
+ toolCalls?: {
9
+ function: {
10
+ name: string;
11
+ arguments: string;
12
+ };
13
+ type: "function";
14
+ id: string;
15
+ }[];
16
+ }>;
17
+ readonly messages: import("@angular/core").InputSignal<({
18
+ id: string;
19
+ role: "developer";
20
+ content: string;
21
+ name?: string;
22
+ } | {
23
+ id: string;
24
+ role: "system";
25
+ content: string;
26
+ name?: string;
27
+ } | {
28
+ id: string;
29
+ role: "assistant";
30
+ name?: string;
31
+ content?: string;
32
+ toolCalls?: {
33
+ function: {
34
+ name: string;
35
+ arguments: string;
36
+ };
37
+ type: "function";
38
+ id: string;
39
+ }[];
40
+ } | {
41
+ id: string;
42
+ role: "user";
43
+ content: string;
44
+ name?: string;
45
+ } | {
46
+ id: string;
47
+ role: "tool";
48
+ content: string;
49
+ toolCallId: string;
50
+ error?: string;
51
+ })[]>;
52
+ readonly isLoading: import("@angular/core").InputSignal<boolean>;
53
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatToolCallsView, never>;
54
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatToolCallsView, "copilot-chat-tool-calls-view", never, { "message": { "alias": "message"; "required": true; "isSignal": true; }; "messages": { "alias": "messages"; "required": true; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
55
+ }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CopilotChatToolbar {
3
+ readonly inputClass: import("@angular/core").InputSignal<string>;
4
+ readonly computedClass: import("@angular/core").Signal<string>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatToolbar, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatToolbar, "div[copilotChatToolbar]", never, { "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
7
+ }
@@ -0,0 +1,20 @@
1
+ import type { ToolsMenuItem } from "./copilot-chat-input.types";
2
+ import * as i0 from "@angular/core";
3
+ export declare class CopilotChatToolsMenu {
4
+ readonly Settings2Icon: import("lucide-angular").LucideIconData;
5
+ readonly ChevronRightIcon: import("lucide-angular").LucideIconData;
6
+ inputToolsMenu: import("@angular/core").InputSignal<(ToolsMenuItem | "-")[]>;
7
+ inputDisabled: import("@angular/core").InputSignal<boolean>;
8
+ inputClass: import("@angular/core").InputSignal<string>;
9
+ private labels;
10
+ toolsMenu: import("@angular/core").Signal<(ToolsMenuItem | "-")[]>;
11
+ disabled: import("@angular/core").Signal<boolean>;
12
+ customClass: import("@angular/core").Signal<string>;
13
+ hasItems: import("@angular/core").Signal<boolean>;
14
+ readonly label: string;
15
+ buttonClass: import("@angular/core").Signal<string>;
16
+ isMenuItem(item: any): item is ToolsMenuItem;
17
+ handleItemClick(item: ToolsMenuItem): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatToolsMenu, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatToolsMenu, "copilot-chat-tools-menu", never, { "inputToolsMenu": { "alias": "inputToolsMenu"; "required": false; "isSignal": true; }; "inputDisabled": { "alias": "inputDisabled"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
20
+ }
@@ -0,0 +1,20 @@
1
+ import { type UserMessage, type CopilotChatUserMessageOnSwitchToBranchProps } from "./copilot-chat-user-message.types";
2
+ import * as i0 from "@angular/core";
3
+ export declare class CopilotChatUserMessageBranchNavigation {
4
+ currentBranch: import("@angular/core").InputSignal<number>;
5
+ numberOfBranches: import("@angular/core").InputSignal<number>;
6
+ message: import("@angular/core").InputSignal<UserMessage>;
7
+ inputClass: import("@angular/core").InputSignal<string>;
8
+ switchToBranch: import("@angular/core").OutputEmitterRef<CopilotChatUserMessageOnSwitchToBranchProps>;
9
+ readonly ChevronLeftIcon: import("lucide-angular").LucideIconData;
10
+ readonly ChevronRightIcon: import("lucide-angular").LucideIconData;
11
+ readonly buttonClass: string;
12
+ showNavigation: import("@angular/core").Signal<boolean>;
13
+ canGoPrev: import("@angular/core").Signal<boolean>;
14
+ canGoNext: import("@angular/core").Signal<boolean>;
15
+ computedClass: import("@angular/core").Signal<string>;
16
+ handlePrevious(): void;
17
+ handleNext(): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatUserMessageBranchNavigation, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatUserMessageBranchNavigation, "copilot-chat-user-message-branch-navigation", never, { "currentBranch": { "alias": "currentBranch"; "required": false; "isSignal": true; }; "numberOfBranches": { "alias": "numberOfBranches"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, { "switchToBranch": "switchToBranch"; }, never, never, true, never>;
20
+ }
@@ -0,0 +1,35 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "../../directives/tooltip";
3
+ export declare class CopilotChatUserMessageToolbarButton {
4
+ title: import("@angular/core").InputSignal<string>;
5
+ disabled: import("@angular/core").InputSignal<boolean>;
6
+ inputClass: import("@angular/core").InputSignal<string>;
7
+ computedClass: import("@angular/core").Signal<string>;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatUserMessageToolbarButton, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatUserMessageToolbarButton, "button[copilotChatUserMessageToolbarButton]", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.CopilotTooltip; inputs: { "copilotTooltip": "title"; "tooltipPosition": "tooltipPosition"; "tooltipDelay": "tooltipDelay"; }; outputs: {}; }]>;
10
+ }
11
+ export declare class CopilotChatUserMessageCopyButton {
12
+ readonly title: import("@angular/core").InputSignal<string>;
13
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
14
+ readonly inputClass: import("@angular/core").InputSignal<string>;
15
+ readonly content: import("@angular/core").InputSignal<string>;
16
+ readonly clicked: import("@angular/core").OutputEmitterRef<void>;
17
+ readonly CopyIcon: import("lucide-angular").LucideIconData;
18
+ readonly CheckIcon: import("lucide-angular").LucideIconData;
19
+ readonly copied: import("@angular/core").WritableSignal<boolean>;
20
+ readonly labels: import("../../chat-config").CopilotChatLabels;
21
+ handleCopy(): void;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatUserMessageCopyButton, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatUserMessageCopyButton, "copilot-chat-user-message-copy-button", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
24
+ }
25
+ export declare class CopilotChatUserMessageEditButton {
26
+ title: import("@angular/core").InputSignal<string>;
27
+ disabled: import("@angular/core").InputSignal<boolean>;
28
+ inputClass: import("@angular/core").InputSignal<string>;
29
+ clicked: import("@angular/core").OutputEmitterRef<void>;
30
+ readonly EditIcon: import("lucide-angular").LucideIconData;
31
+ readonly labels: import("../../chat-config").CopilotChatLabels;
32
+ handleEdit(): void;
33
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatUserMessageEditButton, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatUserMessageEditButton, "copilot-chat-user-message-edit-button", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
35
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CopilotChatUserMessageRenderer {
3
+ readonly content: import("@angular/core").InputSignal<string>;
4
+ readonly inputClass: import("@angular/core").InputSignal<string>;
5
+ readonly computedClass: import("@angular/core").Signal<string>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatUserMessageRenderer, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatUserMessageRenderer, "copilot-chat-user-message-renderer", never, { "content": { "alias": "content"; "required": false; "isSignal": true; }; "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CopilotChatUserMessageToolbar {
3
+ readonly inputClass: import("@angular/core").InputSignal<string>;
4
+ readonly computedClass: import("@angular/core").Signal<string>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<CopilotChatUserMessageToolbar, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<CopilotChatUserMessageToolbar, "div[copilotChatUserMessageToolbar]", never, { "inputClass": { "alias": "inputClass"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
7
+ }