@useago/sdk 0.1.6 → 0.1.7

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 (67) hide show
  1. package/dist/{createMockClient-BZKh_1em.cjs → AgoClient-BDO4avLq.cjs} +219 -124
  2. package/dist/AgoClient-BDO4avLq.cjs.map +1 -0
  3. package/dist/{createMockClient-uGlVyjbL.js → AgoClient-D-c91tx5.js} +221 -126
  4. package/dist/AgoClient-D-c91tx5.js.map +1 -0
  5. package/dist/angular/ago.service.d.ts +98 -0
  6. package/dist/angular/index.d.ts +4 -0
  7. package/dist/angular/provide.d.ts +27 -0
  8. package/dist/angular.cjs +105 -0
  9. package/dist/angular.cjs.map +1 -0
  10. package/dist/angular.d.ts +1 -0
  11. package/dist/angular.js +105 -0
  12. package/dist/angular.js.map +1 -0
  13. package/dist/auto/createAgo.d.ts +39 -0
  14. package/dist/auto/index.d.ts +1 -0
  15. package/dist/client/AgoClient.d.ts +56 -0
  16. package/dist/client/types.d.ts +4 -6
  17. package/dist/createMockClient-B1DcBiIK.js +94 -0
  18. package/dist/createMockClient-B1DcBiIK.js.map +1 -0
  19. package/dist/createMockClient-BqNSJUu4.cjs +93 -0
  20. package/dist/createMockClient-BqNSJUu4.cjs.map +1 -0
  21. package/dist/functions-B0Z0rNQW.cjs +306 -0
  22. package/dist/functions-B0Z0rNQW.cjs.map +1 -0
  23. package/dist/functions-C-wLEc8b.js +306 -0
  24. package/dist/functions-C-wLEc8b.js.map +1 -0
  25. package/dist/helpers/factory.d.ts +20 -0
  26. package/dist/helpers/functions.d.ts +62 -0
  27. package/dist/helpers/index.d.ts +1 -0
  28. package/dist/helpers.cjs +17 -0
  29. package/dist/helpers.cjs.map +1 -0
  30. package/dist/helpers.d.ts +1 -0
  31. package/dist/helpers.js +17 -0
  32. package/dist/helpers.js.map +1 -0
  33. package/dist/index.cjs +179 -12
  34. package/dist/index.cjs.map +1 -1
  35. package/dist/index.d.ts +6 -0
  36. package/dist/index.js +173 -5
  37. package/dist/index.js.map +1 -1
  38. package/dist/react/context/AgoContext.d.ts +30 -4
  39. package/dist/react/context/index.d.ts +1 -1
  40. package/dist/react/hooks/index.d.ts +1 -0
  41. package/dist/react/hooks/useAgoContext.d.ts +40 -0
  42. package/dist/react/hooks/useAgoFunction.d.ts +14 -2
  43. package/dist/react/index.d.ts +2 -1
  44. package/dist/react.cjs +76 -11
  45. package/dist/react.cjs.map +1 -1
  46. package/dist/react.js +81 -17
  47. package/dist/react.js.map +1 -1
  48. package/dist/state/ClientContextRegistry.d.ts +64 -0
  49. package/dist/streaming/helpers.d.ts +67 -0
  50. package/dist/vue/composables/useAgo.d.ts +17 -0
  51. package/dist/vue/composables/useAgoEvents.d.ts +11 -0
  52. package/dist/vue/composables/useAgoFunction.d.ts +34 -0
  53. package/dist/vue/composables/useChat.d.ts +251 -0
  54. package/dist/vue/composables/useConversation.d.ts +178 -0
  55. package/dist/vue/composables/useMessages.d.ts +89 -0
  56. package/dist/vue/index.d.ts +10 -0
  57. package/dist/vue/plugin.d.ts +16 -0
  58. package/dist/vue/symbols.d.ts +3 -0
  59. package/dist/vue.cjs +232 -0
  60. package/dist/vue.cjs.map +1 -0
  61. package/dist/vue.d.ts +1 -0
  62. package/dist/vue.js +232 -0
  63. package/dist/vue.js.map +1 -0
  64. package/dist/widget/types.d.ts +1 -0
  65. package/package.json +23 -3
  66. package/dist/createMockClient-BZKh_1em.cjs.map +0 -1
  67. package/dist/createMockClient-uGlVyjbL.js.map +0 -1
@@ -0,0 +1,64 @@
1
+ /**
2
+ * A single piece of context the client wants the LLM to know about.
3
+ */
4
+ export interface ContextEntry {
5
+ /** Human-readable label (e.g. "Order detail", "Current user") */
6
+ name?: string;
7
+ /** Short description of what this context represents */
8
+ description?: string;
9
+ /** Arbitrary structured data the AI should know about */
10
+ data?: Record<string, unknown>;
11
+ }
12
+ /**
13
+ * Serialised client context sent with each message.
14
+ */
15
+ export interface ContextSnapshot {
16
+ /** All active context entries keyed by their registration key */
17
+ entries: Record<string, ContextEntry>;
18
+ }
19
+ /**
20
+ * A function that returns a fresh context entry on demand.
21
+ * Evaluated every time a message is sent — use it to pull data from stores,
22
+ * refs, or any source that isn't captured by React state.
23
+ */
24
+ export type DynamicContextProvider = () => ContextEntry | null | undefined;
25
+ /**
26
+ * Registry that collects client-side context from across the component tree.
27
+ *
28
+ * Components register/unregister context slices via unique keys.
29
+ * When a message is sent the registry produces a single snapshot.
30
+ */
31
+ export declare class ClientContextRegistry {
32
+ private entries;
33
+ private dynamicProviders;
34
+ /**
35
+ * Register or update a static context entry.
36
+ */
37
+ set(key: string, entry: ContextEntry): void;
38
+ /**
39
+ * Remove a static context entry (typically on component unmount).
40
+ */
41
+ remove(key: string): boolean;
42
+ /**
43
+ * Register a dynamic context provider. The function is called every time
44
+ * a message is sent, so it always returns the freshest data.
45
+ *
46
+ * Use this for context that lives outside React state — global stores,
47
+ * refs, or computed values that shouldn't trigger re-renders.
48
+ */
49
+ addDynamicProvider(key: string, provider: DynamicContextProvider): void;
50
+ /**
51
+ * Remove a dynamic context provider.
52
+ */
53
+ removeDynamicProvider(key: string): boolean;
54
+ /**
55
+ * Build a snapshot of the current client context.
56
+ * Evaluates every registered dynamic provider. Returns `null` when there is
57
+ * nothing to report.
58
+ */
59
+ getSnapshot(): ContextSnapshot | null;
60
+ /**
61
+ * Remove all entries and dynamic providers.
62
+ */
63
+ clear(): void;
64
+ }
@@ -0,0 +1,67 @@
1
+ import type { AgoClient } from "../client/AgoClient";
2
+ import type { AgoMessage, AgoClientEvents, ToolCallData, ClientFunctionInvocation } from "../client/types";
3
+ /**
4
+ * Subscribe to complete messages with a simple callback. Returns an unsubscribe function.
5
+ *
6
+ * ```ts
7
+ * const unsub = onMessage(client, (msg) => console.log(msg.content));
8
+ * // later: unsub();
9
+ * ```
10
+ */
11
+ export declare function onMessage(client: AgoClient, callback: (message: AgoMessage) => void): () => void;
12
+ /**
13
+ * Subscribe to streaming text chunks.
14
+ *
15
+ * ```ts
16
+ * onMessageChunk(client, ({ content }) => {
17
+ * outputEl.textContent += content;
18
+ * });
19
+ * ```
20
+ */
21
+ export declare function onMessageChunk(client: AgoClient, callback: (data: AgoClientEvents["message:chunk"]) => void): () => void;
22
+ /**
23
+ * Subscribe to message start events.
24
+ */
25
+ export declare function onMessageStart(client: AgoClient, callback: (data: AgoClientEvents["message:start"]) => void): () => void;
26
+ /**
27
+ * Subscribe to message errors.
28
+ */
29
+ export declare function onMessageError(client: AgoClient, callback: (data: AgoClientEvents["message:error"]) => void): () => void;
30
+ /**
31
+ * Subscribe to tool call events.
32
+ */
33
+ export declare function onToolCall(client: AgoClient, callback: (toolCall: ToolCallData) => void): () => void;
34
+ /**
35
+ * Subscribe to client function invocations.
36
+ */
37
+ export declare function onFunctionInvoke(client: AgoClient, callback: (data: ClientFunctionInvocation) => void): () => void;
38
+ /**
39
+ * Send a message and iterate over chunks as an async generator.
40
+ * Gives you full control over how you process the stream.
41
+ *
42
+ * ```ts
43
+ * for await (const chunk of createMessageStream(client, "Hello!")) {
44
+ * console.log(chunk.type, chunk.data);
45
+ * }
46
+ * ```
47
+ */
48
+ export declare function createMessageStream(client: AgoClient, content: string, options?: {
49
+ conversationId?: string;
50
+ agentId?: string;
51
+ files?: File[];
52
+ }): AsyncGenerator<{
53
+ type: "start";
54
+ data: AgoClientEvents["message:start"];
55
+ } | {
56
+ type: "chunk";
57
+ data: AgoClientEvents["message:chunk"];
58
+ } | {
59
+ type: "complete";
60
+ data: AgoMessage;
61
+ } | {
62
+ type: "error";
63
+ data: AgoClientEvents["message:error"];
64
+ } | {
65
+ type: "toolCall";
66
+ data: ToolCallData;
67
+ }>;
@@ -0,0 +1,17 @@
1
+ import { AgoClient } from "../../client/AgoClient";
2
+ import type { AgoConfig } from "../../client/types";
3
+ /**
4
+ * Get or create an AgoClient.
5
+ *
6
+ * - Without args: returns the client from `AgoPlugin` (throws if none).
7
+ * - With config: creates a new client instance.
8
+ *
9
+ * ```ts
10
+ * // From plugin
11
+ * const client = useAgo();
12
+ *
13
+ * // Standalone
14
+ * const client = useAgo({ baseUrl: "https://YOUR-DOMAIN.useago.com" });
15
+ * ```
16
+ */
17
+ export declare function useAgo(config?: AgoConfig): AgoClient;
@@ -0,0 +1,11 @@
1
+ import type { AgoClientEvents, AgoEventName } from "../../client/types";
2
+ /**
3
+ * Subscribe to AGO client events with auto-cleanup on unmount.
4
+ *
5
+ * ```ts
6
+ * useAgoEvents("message:complete", (msg) => {
7
+ * console.log("Got message:", msg.content);
8
+ * });
9
+ * ```
10
+ */
11
+ export declare function useAgoEvents<K extends AgoEventName>(event: K, handler: (data: AgoClientEvents[K]) => void): void;
@@ -0,0 +1,34 @@
1
+ import type { ClientFunctionHandler, ClientFunctionSchema } from "../../functions/types";
2
+ /**
3
+ * Register a client-side function with auto-cleanup on unmount.
4
+ *
5
+ * ```ts
6
+ * useAgoFunction("showToast", {
7
+ * description: "Show a toast",
8
+ * parameters: { type: "object", properties: { message: { type: "string" } } },
9
+ * handler: async (args) => { toast(args.message); return { shown: true }; },
10
+ * });
11
+ * ```
12
+ */
13
+ export declare function useAgoFunction(name: string, options: {
14
+ description: string;
15
+ parameters: ClientFunctionSchema["parameters"];
16
+ handler: ClientFunctionHandler;
17
+ }): void;
18
+ export interface AgoRoute {
19
+ name: string;
20
+ path: string;
21
+ description: string;
22
+ }
23
+ /**
24
+ * Register navigation routes with auto-cleanup on unmount.
25
+ * Works with vue-router's `useRouter().push`.
26
+ *
27
+ * ```ts
28
+ * const router = useRouter();
29
+ * useAgoNavigation((path) => router.push(path), [
30
+ * { name: "dashboard", path: "/dashboard", description: "Main dashboard" },
31
+ * ]);
32
+ * ```
33
+ */
34
+ export declare function useAgoNavigation(navigate: (path: string) => void, routes: AgoRoute[]): void;
@@ -0,0 +1,251 @@
1
+ import type { AgoClient } from "../../client/AgoClient";
2
+ export interface UseChatOptions {
3
+ client?: AgoClient;
4
+ conversationId?: string;
5
+ autoLoad?: boolean;
6
+ }
7
+ /**
8
+ * All-in-one composable combining messages + conversations.
9
+ *
10
+ * ```ts
11
+ * const { messages, sendMessage, conversations, selectConversation } = useChat();
12
+ * ```
13
+ */
14
+ export declare function useChat(options?: UseChatOptions): {
15
+ messages: import("vue").Ref<{
16
+ id: string;
17
+ conversationId: string;
18
+ content: string;
19
+ role: "user" | "assistant";
20
+ status: import("../..").MessageStatus;
21
+ agent?: {
22
+ id: string;
23
+ name: string;
24
+ displayName?: string | undefined;
25
+ } | undefined;
26
+ sources?: {
27
+ id: string;
28
+ title: string;
29
+ url?: string | undefined;
30
+ }[] | undefined;
31
+ toolCalls?: {
32
+ id: string;
33
+ type: import("../..").ToolCallType;
34
+ status: string;
35
+ toolName: string;
36
+ toolDisplayName?: string | undefined;
37
+ message?: string | undefined;
38
+ formSchema?: {
39
+ type: "object";
40
+ properties: Record<string, import("../..").FormField>;
41
+ required?: string[] | undefined;
42
+ } | undefined;
43
+ data?: Record<string, unknown> | undefined;
44
+ functionName?: string | undefined;
45
+ arguments?: Record<string, unknown> | undefined;
46
+ }[] | undefined;
47
+ followUpReplies?: string[] | undefined;
48
+ createdAt: Date;
49
+ }[], import("..").AgoMessage[] | {
50
+ id: string;
51
+ conversationId: string;
52
+ content: string;
53
+ role: "user" | "assistant";
54
+ status: import("../..").MessageStatus;
55
+ agent?: {
56
+ id: string;
57
+ name: string;
58
+ displayName?: string | undefined;
59
+ } | undefined;
60
+ sources?: {
61
+ id: string;
62
+ title: string;
63
+ url?: string | undefined;
64
+ }[] | undefined;
65
+ toolCalls?: {
66
+ id: string;
67
+ type: import("../..").ToolCallType;
68
+ status: string;
69
+ toolName: string;
70
+ toolDisplayName?: string | undefined;
71
+ message?: string | undefined;
72
+ formSchema?: {
73
+ type: "object";
74
+ properties: Record<string, import("../..").FormField>;
75
+ required?: string[] | undefined;
76
+ } | undefined;
77
+ data?: Record<string, unknown> | undefined;
78
+ functionName?: string | undefined;
79
+ arguments?: Record<string, unknown> | undefined;
80
+ }[] | undefined;
81
+ followUpReplies?: string[] | undefined;
82
+ createdAt: Date;
83
+ }[]>;
84
+ isLoading: import("vue").Ref<boolean, boolean>;
85
+ error: import("vue").ComputedRef<Error | null>;
86
+ sendMessage: (content: string, files?: File[]) => Promise<import("..").AgoMessage | null>;
87
+ clearMessages: () => void;
88
+ conversationId: import("vue").Ref<string | undefined, string | undefined>;
89
+ conversations: import("vue").Ref<{
90
+ id: string;
91
+ title: string;
92
+ lastMessageDate: Date;
93
+ messages?: {
94
+ id: string;
95
+ conversationId: string;
96
+ content: string;
97
+ role: "user" | "assistant";
98
+ status: import("../..").MessageStatus;
99
+ agent?: {
100
+ id: string;
101
+ name: string;
102
+ displayName?: string | undefined;
103
+ } | undefined;
104
+ sources?: {
105
+ id: string;
106
+ title: string;
107
+ url?: string | undefined;
108
+ }[] | undefined;
109
+ toolCalls?: {
110
+ id: string;
111
+ type: import("../..").ToolCallType;
112
+ status: string;
113
+ toolName: string;
114
+ toolDisplayName?: string | undefined;
115
+ message?: string | undefined;
116
+ formSchema?: {
117
+ type: "object";
118
+ properties: Record<string, import("../..").FormField>;
119
+ required?: string[] | undefined;
120
+ } | undefined;
121
+ data?: Record<string, unknown> | undefined;
122
+ functionName?: string | undefined;
123
+ arguments?: Record<string, unknown> | undefined;
124
+ }[] | undefined;
125
+ followUpReplies?: string[] | undefined;
126
+ createdAt: Date;
127
+ }[] | undefined;
128
+ }[], import("..").Conversation[] | {
129
+ id: string;
130
+ title: string;
131
+ lastMessageDate: Date;
132
+ messages?: {
133
+ id: string;
134
+ conversationId: string;
135
+ content: string;
136
+ role: "user" | "assistant";
137
+ status: import("../..").MessageStatus;
138
+ agent?: {
139
+ id: string;
140
+ name: string;
141
+ displayName?: string | undefined;
142
+ } | undefined;
143
+ sources?: {
144
+ id: string;
145
+ title: string;
146
+ url?: string | undefined;
147
+ }[] | undefined;
148
+ toolCalls?: {
149
+ id: string;
150
+ type: import("../..").ToolCallType;
151
+ status: string;
152
+ toolName: string;
153
+ toolDisplayName?: string | undefined;
154
+ message?: string | undefined;
155
+ formSchema?: {
156
+ type: "object";
157
+ properties: Record<string, import("../..").FormField>;
158
+ required?: string[] | undefined;
159
+ } | undefined;
160
+ data?: Record<string, unknown> | undefined;
161
+ functionName?: string | undefined;
162
+ arguments?: Record<string, unknown> | undefined;
163
+ }[] | undefined;
164
+ followUpReplies?: string[] | undefined;
165
+ createdAt: Date;
166
+ }[] | undefined;
167
+ }[]>;
168
+ currentConversation: import("vue").Ref<{
169
+ id: string;
170
+ title: string;
171
+ lastMessageDate: Date;
172
+ messages?: {
173
+ id: string;
174
+ conversationId: string;
175
+ content: string;
176
+ role: "user" | "assistant";
177
+ status: import("../..").MessageStatus;
178
+ agent?: {
179
+ id: string;
180
+ name: string;
181
+ displayName?: string | undefined;
182
+ } | undefined;
183
+ sources?: {
184
+ id: string;
185
+ title: string;
186
+ url?: string | undefined;
187
+ }[] | undefined;
188
+ toolCalls?: {
189
+ id: string;
190
+ type: import("../..").ToolCallType;
191
+ status: string;
192
+ toolName: string;
193
+ toolDisplayName?: string | undefined;
194
+ message?: string | undefined;
195
+ formSchema?: {
196
+ type: "object";
197
+ properties: Record<string, import("../..").FormField>;
198
+ required?: string[] | undefined;
199
+ } | undefined;
200
+ data?: Record<string, unknown> | undefined;
201
+ functionName?: string | undefined;
202
+ arguments?: Record<string, unknown> | undefined;
203
+ }[] | undefined;
204
+ followUpReplies?: string[] | undefined;
205
+ createdAt: Date;
206
+ }[] | undefined;
207
+ } | null, import("..").Conversation | {
208
+ id: string;
209
+ title: string;
210
+ lastMessageDate: Date;
211
+ messages?: {
212
+ id: string;
213
+ conversationId: string;
214
+ content: string;
215
+ role: "user" | "assistant";
216
+ status: import("../..").MessageStatus;
217
+ agent?: {
218
+ id: string;
219
+ name: string;
220
+ displayName?: string | undefined;
221
+ } | undefined;
222
+ sources?: {
223
+ id: string;
224
+ title: string;
225
+ url?: string | undefined;
226
+ }[] | undefined;
227
+ toolCalls?: {
228
+ id: string;
229
+ type: import("../..").ToolCallType;
230
+ status: string;
231
+ toolName: string;
232
+ toolDisplayName?: string | undefined;
233
+ message?: string | undefined;
234
+ formSchema?: {
235
+ type: "object";
236
+ properties: Record<string, import("../..").FormField>;
237
+ required?: string[] | undefined;
238
+ } | undefined;
239
+ data?: Record<string, unknown> | undefined;
240
+ functionName?: string | undefined;
241
+ arguments?: Record<string, unknown> | undefined;
242
+ }[] | undefined;
243
+ followUpReplies?: string[] | undefined;
244
+ createdAt: Date;
245
+ }[] | undefined;
246
+ } | null>;
247
+ isConversationsLoading: import("vue").Ref<boolean, boolean>;
248
+ selectConversation: (id: string) => Promise<void>;
249
+ startNewConversation: () => void;
250
+ refreshConversations: () => Promise<void>;
251
+ };
@@ -0,0 +1,178 @@
1
+ import type { AgoClient } from "../../client/AgoClient";
2
+ import type { Conversation } from "../../client/types";
3
+ export interface UseConversationOptions {
4
+ client?: AgoClient;
5
+ autoLoad?: boolean;
6
+ }
7
+ /**
8
+ * Composable to manage conversations.
9
+ *
10
+ * ```ts
11
+ * const { conversations, selectConversation } = useConversation();
12
+ * ```
13
+ */
14
+ export declare function useConversation(options?: UseConversationOptions): {
15
+ conversations: import("vue").Ref<{
16
+ id: string;
17
+ title: string;
18
+ lastMessageDate: Date;
19
+ messages?: {
20
+ id: string;
21
+ conversationId: string;
22
+ content: string;
23
+ role: "user" | "assistant";
24
+ status: import("../..").MessageStatus;
25
+ agent?: {
26
+ id: string;
27
+ name: string;
28
+ displayName?: string | undefined;
29
+ } | undefined;
30
+ sources?: {
31
+ id: string;
32
+ title: string;
33
+ url?: string | undefined;
34
+ }[] | undefined;
35
+ toolCalls?: {
36
+ id: string;
37
+ type: import("../..").ToolCallType;
38
+ status: string;
39
+ toolName: string;
40
+ toolDisplayName?: string | undefined;
41
+ message?: string | undefined;
42
+ formSchema?: {
43
+ type: "object";
44
+ properties: Record<string, import("../..").FormField>;
45
+ required?: string[] | undefined;
46
+ } | undefined;
47
+ data?: Record<string, unknown> | undefined;
48
+ functionName?: string | undefined;
49
+ arguments?: Record<string, unknown> | undefined;
50
+ }[] | undefined;
51
+ followUpReplies?: string[] | undefined;
52
+ createdAt: Date;
53
+ }[] | undefined;
54
+ }[], Conversation[] | {
55
+ id: string;
56
+ title: string;
57
+ lastMessageDate: Date;
58
+ messages?: {
59
+ id: string;
60
+ conversationId: string;
61
+ content: string;
62
+ role: "user" | "assistant";
63
+ status: import("../..").MessageStatus;
64
+ agent?: {
65
+ id: string;
66
+ name: string;
67
+ displayName?: string | undefined;
68
+ } | undefined;
69
+ sources?: {
70
+ id: string;
71
+ title: string;
72
+ url?: string | undefined;
73
+ }[] | undefined;
74
+ toolCalls?: {
75
+ id: string;
76
+ type: import("../..").ToolCallType;
77
+ status: string;
78
+ toolName: string;
79
+ toolDisplayName?: string | undefined;
80
+ message?: string | undefined;
81
+ formSchema?: {
82
+ type: "object";
83
+ properties: Record<string, import("../..").FormField>;
84
+ required?: string[] | undefined;
85
+ } | undefined;
86
+ data?: Record<string, unknown> | undefined;
87
+ functionName?: string | undefined;
88
+ arguments?: Record<string, unknown> | undefined;
89
+ }[] | undefined;
90
+ followUpReplies?: string[] | undefined;
91
+ createdAt: Date;
92
+ }[] | undefined;
93
+ }[]>;
94
+ currentConversation: import("vue").Ref<{
95
+ id: string;
96
+ title: string;
97
+ lastMessageDate: Date;
98
+ messages?: {
99
+ id: string;
100
+ conversationId: string;
101
+ content: string;
102
+ role: "user" | "assistant";
103
+ status: import("../..").MessageStatus;
104
+ agent?: {
105
+ id: string;
106
+ name: string;
107
+ displayName?: string | undefined;
108
+ } | undefined;
109
+ sources?: {
110
+ id: string;
111
+ title: string;
112
+ url?: string | undefined;
113
+ }[] | undefined;
114
+ toolCalls?: {
115
+ id: string;
116
+ type: import("../..").ToolCallType;
117
+ status: string;
118
+ toolName: string;
119
+ toolDisplayName?: string | undefined;
120
+ message?: string | undefined;
121
+ formSchema?: {
122
+ type: "object";
123
+ properties: Record<string, import("../..").FormField>;
124
+ required?: string[] | undefined;
125
+ } | undefined;
126
+ data?: Record<string, unknown> | undefined;
127
+ functionName?: string | undefined;
128
+ arguments?: Record<string, unknown> | undefined;
129
+ }[] | undefined;
130
+ followUpReplies?: string[] | undefined;
131
+ createdAt: Date;
132
+ }[] | undefined;
133
+ } | null, Conversation | {
134
+ id: string;
135
+ title: string;
136
+ lastMessageDate: Date;
137
+ messages?: {
138
+ id: string;
139
+ conversationId: string;
140
+ content: string;
141
+ role: "user" | "assistant";
142
+ status: import("../..").MessageStatus;
143
+ agent?: {
144
+ id: string;
145
+ name: string;
146
+ displayName?: string | undefined;
147
+ } | undefined;
148
+ sources?: {
149
+ id: string;
150
+ title: string;
151
+ url?: string | undefined;
152
+ }[] | undefined;
153
+ toolCalls?: {
154
+ id: string;
155
+ type: import("../..").ToolCallType;
156
+ status: string;
157
+ toolName: string;
158
+ toolDisplayName?: string | undefined;
159
+ message?: string | undefined;
160
+ formSchema?: {
161
+ type: "object";
162
+ properties: Record<string, import("../..").FormField>;
163
+ required?: string[] | undefined;
164
+ } | undefined;
165
+ data?: Record<string, unknown> | undefined;
166
+ functionName?: string | undefined;
167
+ arguments?: Record<string, unknown> | undefined;
168
+ }[] | undefined;
169
+ followUpReplies?: string[] | undefined;
170
+ createdAt: Date;
171
+ }[] | undefined;
172
+ } | null>;
173
+ isLoading: import("vue").Ref<boolean, boolean>;
174
+ error: import("vue").Ref<Error | null, Error | null>;
175
+ selectConversation: (id: string) => Promise<void>;
176
+ startNewConversation: () => void;
177
+ refreshConversations: () => Promise<void>;
178
+ };