@opentiny/tiny-robot 0.3.1-alpha.3 → 0.4.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -9,7 +9,6 @@ import { ComponentOptionsMixin } from 'vue';
9
9
  import { ComponentProvideOptions } from 'vue';
10
10
  import { ComponentPublicInstance } from 'vue';
11
11
  import { ComputedRef } from 'vue';
12
- import { Config } from 'dompurify';
13
12
  import { CreateComponentPublicInstanceWithMixins } from 'vue';
14
13
  import { CSSProperties } from 'vue';
15
14
  import { DebuggerEvent } from 'vue';
@@ -20,7 +19,6 @@ import { GlobalComponents } from 'vue';
20
19
  import { GlobalDirectives } from 'vue';
21
20
  import { nextTick } from 'vue';
22
21
  import { OnCleanup } from '@vue/reactivity';
23
- import { Options } from 'markdown-it';
24
22
  import { PropType } from 'vue';
25
23
  import { PublicProps } from 'vue';
26
24
  import { Ref } from 'vue';
@@ -35,13 +33,34 @@ import { WatchOptions } from 'vue';
35
33
  import { WatchStopHandle } from 'vue';
36
34
 
37
35
  declare const __VLS_component: DefineComponent<BubbleProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<BubbleProps> & Readonly<{}>, {
38
- content: string | BubbleContentItem[];
39
36
  placement: "start" | "end";
40
- shape: "rounded" | "corner";
41
- abortedText: string;
42
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
37
+ shape: "rounded" | "corner" | "none";
38
+ splitPolymorphic: boolean;
39
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
43
40
 
44
- declare const __VLS_component_10: DefineComponent<__VLS_PublicProps_4, {
41
+ declare const __VLS_component_10: DefineComponent<SuggestionPillButtonProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<SuggestionPillButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
42
+
43
+ declare const __VLS_component_11: DefineComponent<__VLS_PublicProps_3, {
44
+ children: ComputedRef<(HTMLElement | SVGElement)[]>;
45
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
46
+ "update:showAll": (value: boolean | undefined) => any;
47
+ } & {
48
+ "click-outside": (event: MouseEvent) => any;
49
+ }, string, PublicProps, Readonly<__VLS_PublicProps_3> & Readonly<{
50
+ "onClick-outside"?: ((event: MouseEvent) => any) | undefined;
51
+ "onUpdate:showAll"?: ((value: boolean | undefined) => any) | undefined;
52
+ }>, {
53
+ showAllButtonOn: "hover" | "always";
54
+ overflowMode: "expand" | "scroll";
55
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
56
+ containerWrapperRef: HTMLDivElement;
57
+ containerRef: HTMLDivElement;
58
+ staticMaybeItemRefs: unknown[];
59
+ floatingItemsRef: HTMLDivElement;
60
+ floatingMaybeItemRefs: unknown[];
61
+ }, HTMLDivElement>;
62
+
63
+ declare const __VLS_component_12: DefineComponent<__VLS_PublicProps_4, {
45
64
  update: () => void;
46
65
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
47
66
  "update:selectedGroup": (value: string) => any;
@@ -177,7 +196,7 @@ show?: TooltipContentProps["show"];
177
196
  }>, {}, {}, {}, {}, {}> | null;
178
197
  }, any>;
179
198
 
180
- declare const __VLS_component_11: DefineComponent<__VLS_PublicProps_5, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
199
+ declare const __VLS_component_13: DefineComponent<__VLS_PublicProps_5, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
181
200
  "update:theme": (value: string) => any;
182
201
  "update:colorMode": (value: ColorMode) => any;
183
202
  }, string, PublicProps, Readonly<__VLS_PublicProps_5> & Readonly<{
@@ -188,66 +207,20 @@ targetElement: string;
188
207
  storageKey: string;
189
208
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
190
209
 
191
- declare const __VLS_component_12: DefineComponent<WelcomeProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<WelcomeProps> & Readonly<{}>, {
210
+ declare const __VLS_component_14: DefineComponent<WelcomeProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<WelcomeProps> & Readonly<{}>, {
192
211
  align: "left" | "center" | "right" | string;
193
212
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
194
213
 
195
- declare const __VLS_component_13: DefineComponent<__VLS_PublicProps_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
196
- "update:visible": (value: boolean) => any;
197
- } & {
198
- refresh: (tab: "installed" | "market") => any;
199
- "update:visible": (visible: boolean) => any;
200
- "market-category-change": (category: string) => any;
201
- "tab-change": (activeTab: "installed" | "market") => any;
202
- "plugin-toggle": (plugin: PluginInfo, enabled: boolean) => any;
203
- "plugin-delete": (plugin: PluginInfo) => any;
204
- "plugin-add": (plugin: PluginInfo) => any;
205
- "plugin-create": (type: "code" | "form", data: PluginCreationData) => any;
206
- "tool-toggle": (plugin: PluginInfo, toolId: string, enabled: boolean) => any;
207
- "update:activeCount": (count: number) => any;
208
- }, string, PublicProps, Readonly<__VLS_PublicProps_6> & Readonly<{
209
- onRefresh?: ((tab: "installed" | "market") => any) | undefined;
210
- "onUpdate:visible"?: ((value: boolean) => any) | undefined;
211
- "onMarket-category-change"?: ((category: string) => any) | undefined;
212
- "onTab-change"?: ((activeTab: "installed" | "market") => any) | undefined;
213
- "onPlugin-toggle"?: ((plugin: PluginInfo, enabled: boolean) => any) | undefined;
214
- "onPlugin-delete"?: ((plugin: PluginInfo) => any) | undefined;
215
- "onPlugin-add"?: ((plugin: PluginInfo) => any) | undefined;
216
- "onPlugin-create"?: ((type: "code" | "form", data: PluginCreationData) => any) | undefined;
217
- "onTool-toggle"?: ((plugin: PluginInfo, toolId: string, enabled: boolean) => any) | undefined;
218
- "onUpdate:activeCount"?: ((count: number) => any) | undefined;
219
- }>, {
220
- title: string;
221
- loading: boolean;
222
- installedPlugins: PluginInfo[];
223
- marketPlugins: PluginInfo[];
224
- searchPlaceholder: string;
225
- enableSearch: boolean;
226
- installedSearchFn: (query: string, item: PluginInfo) => boolean;
227
- marketSearchFn: (query: string, item: PluginInfo) => boolean;
228
- marketCategoryOptions: MarketCategoryOption[];
229
- marketCategoryPlaceholder: string;
230
- enableMarketCategoryFilter: boolean;
231
- defaultActiveTab: "installed" | "market";
232
- showInstalledTab: boolean;
233
- showMarketTab: boolean;
234
- popupConfig: PopupConfig;
235
- installedTabTitle: string;
236
- marketTabTitle: string;
237
- showCustomAddButton: boolean;
238
- customAddButtonText: string;
239
- allowPluginToggle: boolean;
240
- allowToolToggle: boolean;
241
- allowPluginDelete: boolean;
242
- allowPluginAdd: boolean;
243
- marketLoading: boolean;
244
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
214
+ declare const __VLS_component_2: DefineComponent<BubbleListProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<BubbleListProps> & Readonly<{}>, {
215
+ groupStrategy: "consecutive" | "divider" | ((messages: BubbleMessage[], dividerRole?: string) => BubbleMessageGroup[]);
216
+ dividerRole: string;
217
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
245
218
 
246
- declare const __VLS_component_2: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
247
- contentRenderers: Record<string, BubbleContentRenderer>;
248
- }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
219
+ declare const __VLS_component_3: DefineComponent<BubbleProviderProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<BubbleProviderProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
220
+
221
+ declare const __VLS_component_4: DefineComponent<BubbleBoxProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<BubbleBoxProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
249
222
 
250
- declare const __VLS_component_3: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
223
+ declare const __VLS_component_5: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
251
224
  "update:show": (value: boolean) => any;
252
225
  "update:fullscreen": (value: boolean | undefined) => any;
253
226
  } & {
@@ -260,9 +233,9 @@ onClose?: (() => any) | undefined;
260
233
  title: string;
261
234
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
262
235
 
263
- declare const __VLS_component_4: DefineComponent<DragOverlayProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DragOverlayProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
236
+ declare const __VLS_component_6: DefineComponent<DragOverlayProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DragOverlayProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
264
237
 
265
- declare const __VLS_component_5: DefineComponent<__VLS_PublicProps_2, {
238
+ declare const __VLS_component_7: DefineComponent<__VLS_PublicProps_2, {
266
239
  update: () => void;
267
240
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
268
241
  "update:show": (value: boolean) => any;
@@ -370,13 +343,13 @@ content?: () => VNode[];
370
343
  }) | null;
371
344
  }, any>;
372
345
 
373
- declare const __VLS_component_6: DefineComponent<PromptsProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
346
+ declare const __VLS_component_8: DefineComponent<PromptsProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
374
347
  "item-click": (ev: MouseEvent, item: PromptProps) => any;
375
348
  }, string, PublicProps, Readonly<PromptsProps> & Readonly<{
376
349
  "onItem-click"?: ((ev: MouseEvent, item: PromptProps) => any) | undefined;
377
350
  }>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
378
351
 
379
- declare const __VLS_component_7: DefineComponent<SenderProps, {
352
+ declare const __VLS_component_9: DefineComponent<SenderProps, {
380
353
  focus: () => void;
381
354
  blur: () => void;
382
355
  clear: () => void;
@@ -389,7 +362,7 @@ clear: () => any;
389
362
  blur: (event: FocusEvent) => any;
390
363
  cancel: () => any;
391
364
  focus: (event: FocusEvent) => any;
392
- submit: (value: string, templateData?: UserItem[] | undefined) => any;
365
+ submit: (value: string) => any;
393
366
  "update:modelValue": (value: string) => any;
394
367
  "update:templateData": (value: UserItem[]) => any;
395
368
  "speech-start": () => any;
@@ -400,16 +373,12 @@ submit: (value: string, templateData?: UserItem[] | undefined) => any;
400
373
  "escape-press": () => any;
401
374
  "reset-template": () => any;
402
375
  "files-selected": (files: File[]) => any;
403
- "trigger-char": (char: string, position: {
404
- top: number;
405
- left: number;
406
- }) => any;
407
376
  }, string, PublicProps, Readonly<SenderProps> & Readonly<{
408
377
  onClear?: (() => any) | undefined;
409
378
  onBlur?: ((event: FocusEvent) => any) | undefined;
410
379
  onCancel?: (() => any) | undefined;
411
380
  onFocus?: ((event: FocusEvent) => any) | undefined;
412
- onSubmit?: ((value: string, templateData?: UserItem[] | undefined) => any) | undefined;
381
+ onSubmit?: ((value: string) => any) | undefined;
413
382
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
414
383
  "onUpdate:templateData"?: ((value: UserItem[]) => any) | undefined;
415
384
  "onSpeech-start"?: (() => any) | undefined;
@@ -420,16 +389,12 @@ onSubmit?: ((value: string, templateData?: UserItem[] | undefined) => any) | und
420
389
  "onEscape-press"?: (() => any) | undefined;
421
390
  "onReset-template"?: (() => any) | undefined;
422
391
  "onFiles-selected"?: ((files: File[]) => any) | undefined;
423
- "onTrigger-char"?: ((char: string, position: {
424
- top: number;
425
- left: number;
426
- }) => any) | undefined;
427
392
  }>, {
428
393
  disabled: boolean;
429
394
  modelValue: string;
430
395
  placeholder: string;
431
- mode: InputMode;
432
396
  loading: boolean;
397
+ mode: InputMode;
433
398
  autofocus: boolean;
434
399
  allowSpeech: boolean;
435
400
  allowFiles: boolean;
@@ -456,22 +421,13 @@ maxRows: number;
456
421
  }> & Readonly<{
457
422
  onSubmit?: (() => any) | undefined;
458
423
  "onUpdate:modelValue"?: ((value: UserItem[]) => any) | undefined;
459
- "onTrigger-char"?: ((char: string, position: {
460
- top: number;
461
- left: number;
462
- }) => any) | undefined;
463
424
  }>, {
464
425
  clearHistory: () => void;
465
426
  activateFirstField: () => void;
466
- focusToEnd: () => void;
467
427
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
468
428
  "update:modelValue": (value: UserItem[]) => any;
469
429
  } & {
470
430
  submit: () => any;
471
- "trigger-char": (char: string, position: {
472
- top: number;
473
- left: number;
474
- }) => any;
475
431
  }, PublicProps, {}, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
476
432
  editorRef: HTMLDivElement;
477
433
  }, HTMLDivElement, ComponentProvideOptions, {
@@ -491,14 +447,9 @@ maxRows: number;
491
447
  }> & Readonly<{
492
448
  onSubmit?: (() => any) | undefined;
493
449
  "onUpdate:modelValue"?: ((value: UserItem[]) => any) | undefined;
494
- "onTrigger-char"?: ((char: string, position: {
495
- top: number;
496
- left: number;
497
- }) => any) | undefined;
498
450
  }>, {
499
451
  clearHistory: () => void;
500
452
  activateFirstField: () => void;
501
- focusToEnd: () => void;
502
453
  }, {}, {}, {}, {}> | null;
503
454
  inputRef: CreateComponentPublicInstanceWithMixins<Readonly<ExtractPropTypes< {
504
455
  _constants: {
@@ -953,35 +904,11 @@ inputBoxType: string;
953
904
  buttonsContainerRef: HTMLDivElement;
954
905
  }, HTMLDivElement>;
955
906
 
956
- declare const __VLS_component_8: DefineComponent<SuggestionPillButtonProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<SuggestionPillButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
957
-
958
- declare const __VLS_component_9: DefineComponent<__VLS_PublicProps_3, {
959
- children: ComputedRef<(HTMLElement | SVGElement)[]>;
960
- }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
961
- "update:showAll": (value: boolean | undefined) => any;
962
- } & {
963
- "click-outside": (event: MouseEvent) => any;
964
- }, string, PublicProps, Readonly<__VLS_PublicProps_3> & Readonly<{
965
- "onClick-outside"?: ((event: MouseEvent) => any) | undefined;
966
- "onUpdate:showAll"?: ((value: boolean | undefined) => any) | undefined;
967
- }>, {
968
- showAllButtonOn: "hover" | "always";
969
- overflowMode: "expand" | "scroll";
970
- }, {}, {}, {}, string, ComponentProvideOptions, false, {
971
- containerWrapperRef: HTMLDivElement;
972
- containerRef: HTMLDivElement;
973
- staticMaybeItemRefs: unknown[];
974
- floatingItemsRef: HTMLDivElement;
975
- floatingMaybeItemRefs: unknown[];
976
- }, HTMLDivElement>;
977
-
978
907
  declare type __VLS_PrettifyLocal<T> = {
979
908
  [K in keyof T]: T[K];
980
909
  } & {};
981
910
 
982
- declare type __VLS_Props = {
983
- contentRenderers?: Record<string, BubbleContentRenderer>;
984
- };
911
+ declare type __VLS_Props = BubbleRendererMessage<string | BubbleChatMessageItem | undefined>;
985
912
 
986
913
  declare type __VLS_Props_2 = ContainerProps;
987
914
 
@@ -1025,10 +952,30 @@ declare function __VLS_template(): {
1025
952
  attrs: Partial<{}>;
1026
953
  slots: Readonly<BubbleSlots> & BubbleSlots;
1027
954
  refs: {};
1028
- rootEl: HTMLDivElement;
955
+ rootEl: any;
1029
956
  };
1030
957
 
1031
958
  declare function __VLS_template_10(): {
959
+ attrs: Partial<{}>;
960
+ slots: Readonly<SuggestionPillButtonSlots> & SuggestionPillButtonSlots;
961
+ refs: {};
962
+ rootEl: HTMLButtonElement;
963
+ };
964
+
965
+ declare function __VLS_template_11(): {
966
+ attrs: Partial<{}>;
967
+ slots: Readonly<SuggestionPillsSlots> & SuggestionPillsSlots;
968
+ refs: {
969
+ containerWrapperRef: HTMLDivElement;
970
+ containerRef: HTMLDivElement;
971
+ staticMaybeItemRefs: unknown[];
972
+ floatingItemsRef: HTMLDivElement;
973
+ floatingMaybeItemRefs: unknown[];
974
+ };
975
+ rootEl: HTMLDivElement;
976
+ };
977
+
978
+ declare function __VLS_template_12(): {
1032
979
  attrs: Partial<{}>;
1033
980
  slots: Readonly<SuggestionPopoverSlots> & SuggestionPopoverSlots;
1034
981
  refs: {
@@ -1147,7 +1094,7 @@ declare function __VLS_template_10(): {
1147
1094
  rootEl: any;
1148
1095
  };
1149
1096
 
1150
- declare function __VLS_template_11(): {
1097
+ declare function __VLS_template_13(): {
1151
1098
  attrs: Partial<{}>;
1152
1099
  slots: {
1153
1100
  default?(_: {}): any;
@@ -1156,39 +1103,46 @@ declare function __VLS_template_11(): {
1156
1103
  rootEl: any;
1157
1104
  };
1158
1105
 
1159
- declare function __VLS_template_12(): {
1106
+ declare function __VLS_template_14(): {
1160
1107
  attrs: Partial<{}>;
1161
1108
  slots: Readonly<WelcomeSlots> & WelcomeSlots;
1162
1109
  refs: {};
1163
1110
  rootEl: HTMLDivElement;
1164
1111
  };
1165
1112
 
1166
- declare function __VLS_template_13(): {
1113
+ declare function __VLS_template_2(): {
1114
+ attrs: Partial<{}>;
1115
+ slots: Readonly<BubbleListSlots> & BubbleListSlots;
1116
+ refs: {};
1117
+ rootEl: HTMLDivElement;
1118
+ };
1119
+
1120
+ declare function __VLS_template_3(): {
1167
1121
  attrs: Partial<{}>;
1168
1122
  slots: {
1169
- 'header-actions'?(_: {}): any;
1123
+ default?(_: {}): any;
1170
1124
  };
1171
1125
  refs: {};
1172
1126
  rootEl: any;
1173
1127
  };
1174
1128
 
1175
- declare function __VLS_template_2(): {
1129
+ declare function __VLS_template_4(): {
1176
1130
  attrs: Partial<{}>;
1177
1131
  slots: {
1178
1132
  default?(_: {}): any;
1179
1133
  };
1180
1134
  refs: {};
1181
- rootEl: any;
1135
+ rootEl: HTMLDivElement;
1182
1136
  };
1183
1137
 
1184
- declare function __VLS_template_3(): {
1138
+ declare function __VLS_template_5(): {
1185
1139
  attrs: Partial<{}>;
1186
1140
  slots: Readonly<ContainerSlots> & ContainerSlots;
1187
1141
  refs: {};
1188
1142
  rootEl: HTMLDivElement;
1189
1143
  };
1190
1144
 
1191
- declare function __VLS_template_4(): {
1145
+ declare function __VLS_template_6(): {
1192
1146
  attrs: Partial<{}>;
1193
1147
  slots: {
1194
1148
  overlay?(_: {
@@ -1199,7 +1153,7 @@ declare function __VLS_template_4(): {
1199
1153
  rootEl: any;
1200
1154
  };
1201
1155
 
1202
- declare function __VLS_template_5(): {
1156
+ declare function __VLS_template_7(): {
1203
1157
  attrs: Partial<{}>;
1204
1158
  slots: {
1205
1159
  trigger?(_: {}): any;
@@ -1301,14 +1255,14 @@ declare function __VLS_template_5(): {
1301
1255
  rootEl: any;
1302
1256
  };
1303
1257
 
1304
- declare function __VLS_template_6(): {
1258
+ declare function __VLS_template_8(): {
1305
1259
  attrs: Partial<{}>;
1306
1260
  slots: Readonly<PromptsSlots> & PromptsSlots;
1307
1261
  refs: {};
1308
1262
  rootEl: HTMLDivElement;
1309
1263
  };
1310
1264
 
1311
- declare function __VLS_template_7(): {
1265
+ declare function __VLS_template_9(): {
1312
1266
  attrs: Partial<{}>;
1313
1267
  slots: {
1314
1268
  header?(_: {}): any;
@@ -1333,22 +1287,13 @@ declare function __VLS_template_7(): {
1333
1287
  }> & Readonly<{
1334
1288
  onSubmit?: (() => any) | undefined;
1335
1289
  "onUpdate:modelValue"?: ((value: UserItem[]) => any) | undefined;
1336
- "onTrigger-char"?: ((char: string, position: {
1337
- top: number;
1338
- left: number;
1339
- }) => any) | undefined;
1340
1290
  }>, {
1341
1291
  clearHistory: () => void;
1342
1292
  activateFirstField: () => void;
1343
- focusToEnd: () => void;
1344
1293
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1345
1294
  "update:modelValue": (value: UserItem[]) => any;
1346
1295
  } & {
1347
1296
  submit: () => any;
1348
- "trigger-char": (char: string, position: {
1349
- top: number;
1350
- left: number;
1351
- }) => any;
1352
1297
  }, PublicProps, {}, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
1353
1298
  editorRef: HTMLDivElement;
1354
1299
  }, HTMLDivElement, ComponentProvideOptions, {
@@ -1368,14 +1313,9 @@ declare function __VLS_template_7(): {
1368
1313
  }> & Readonly<{
1369
1314
  onSubmit?: (() => any) | undefined;
1370
1315
  "onUpdate:modelValue"?: ((value: UserItem[]) => any) | undefined;
1371
- "onTrigger-char"?: ((char: string, position: {
1372
- top: number;
1373
- left: number;
1374
- }) => any) | undefined;
1375
1316
  }>, {
1376
1317
  clearHistory: () => void;
1377
1318
  activateFirstField: () => void;
1378
- focusToEnd: () => void;
1379
1319
  }, {}, {}, {}, {}> | null;
1380
1320
  inputRef: CreateComponentPublicInstanceWithMixins<Readonly<ExtractPropTypes< {
1381
1321
  _constants: {
@@ -1832,26 +1772,6 @@ declare function __VLS_template_7(): {
1832
1772
  rootEl: HTMLDivElement;
1833
1773
  };
1834
1774
 
1835
- declare function __VLS_template_8(): {
1836
- attrs: Partial<{}>;
1837
- slots: Readonly<SuggestionPillButtonSlots> & SuggestionPillButtonSlots;
1838
- refs: {};
1839
- rootEl: HTMLButtonElement;
1840
- };
1841
-
1842
- declare function __VLS_template_9(): {
1843
- attrs: Partial<{}>;
1844
- slots: Readonly<SuggestionPillsSlots> & SuggestionPillsSlots;
1845
- refs: {
1846
- containerWrapperRef: HTMLDivElement;
1847
- containerRef: HTMLDivElement;
1848
- staticMaybeItemRefs: unknown[];
1849
- floatingItemsRef: HTMLDivElement;
1850
- floatingMaybeItemRefs: unknown[];
1851
- };
1852
- rootEl: HTMLDivElement;
1853
- };
1854
-
1855
1775
  declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
1856
1776
 
1857
1777
  declare type __VLS_TemplateResult_10 = ReturnType<typeof __VLS_template_10>;
@@ -1862,6 +1782,8 @@ declare type __VLS_TemplateResult_12 = ReturnType<typeof __VLS_template_12>;
1862
1782
 
1863
1783
  declare type __VLS_TemplateResult_13 = ReturnType<typeof __VLS_template_13>;
1864
1784
 
1785
+ declare type __VLS_TemplateResult_14 = ReturnType<typeof __VLS_template_14>;
1786
+
1865
1787
  declare type __VLS_TemplateResult_2 = ReturnType<typeof __VLS_template_2>;
1866
1788
 
1867
1789
  declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;
@@ -1908,6 +1830,12 @@ declare type __VLS_WithTemplateSlots_13<T, S> = T & {
1908
1830
  };
1909
1831
  };
1910
1832
 
1833
+ declare type __VLS_WithTemplateSlots_14<T, S> = T & {
1834
+ new (): {
1835
+ $slots: S;
1836
+ };
1837
+ };
1838
+
1911
1839
  declare type __VLS_WithTemplateSlots_2<T, S> = T & {
1912
1840
  new (): {
1913
1841
  $slots: S;
@@ -2023,72 +1951,95 @@ declare type BaseCardProps = Pick<AttachmentListProps, 'fileIcons' | 'disabled'
2023
1951
 
2024
1952
  export declare type BaseFileType = 'image' | 'pdf' | 'word' | 'excel' | 'ppt' | 'folder' | 'other';
2025
1953
 
2026
- declare interface BaseItem {
1954
+ declare interface BaseTextItem {
2027
1955
  id: string;
2028
- readonly?: boolean;
1956
+ type: string;
1957
+ content: string;
2029
1958
  }
2030
1959
 
2031
- declare const Bubble: typeof _default_18 & {
1960
+ declare const Bubble: typeof _default_20 & {
2032
1961
  install: typeof bubbleInstall;
2033
1962
  };
2034
1963
  export { Bubble }
2035
1964
  export { Bubble as TrBubble }
2036
1965
 
2037
- export declare interface BubbleCommonProps {
2038
- /**
2039
- * 气泡对齐位置
2040
- */
2041
- placement?: 'start' | 'end';
2042
- /**
2043
- * 气泡头像
2044
- */
2045
- avatar?: VNode;
2046
- /**
2047
- * 气泡形状,默认 'corner'
2048
- */
2049
- shape?: 'rounded' | 'corner';
2050
- /**
2051
- * 气泡内容渲染器。
2052
- * 如果 Bubble 中的 content 是长度大于 0 的数组,则 contentRenderer 无效。将会使用 BubbleProvider 中注册的渲染器
2053
- */
2054
- contentRenderer?: BubbleContentRenderer;
2055
- /**
2056
- * 自定义气泡内容字段。比如 customContentField 设置为 'my-content',则 Bubble 优先渲染 my-content 属性到气泡内容
2057
- */
2058
- customContentField?: string;
1966
+ /**
1967
+ * 基础消息类型(移除了样式相关属性)
1968
+ */
1969
+ declare type BubbleBaseMessage = Omit<BubbleProps, 'content' | 'role' | 'avatar' | 'placement' | 'shape' | 'splitPolymorphic'> & {
1970
+ role: string;
1971
+ };
1972
+
1973
+ /**
1974
+ * 气泡容器属性
1975
+ */
1976
+ export declare type BubbleBoxProps = Pick<BubbleProps, 'placement' | 'shape'>;
1977
+
1978
+ export declare type BubbleBoxRendererMatch = {
1979
+ find: (props: BubbleContentBoxProps) => boolean;
1980
+ renderer: Component;
1981
+ priority?: number;
1982
+ };
1983
+
1984
+ /**
1985
+ * 聊天消息接口(支持 OpenAI 格式)
1986
+ */
1987
+ export declare interface BubbleChatMessage {
1988
+ role: string;
1989
+ content?: string | BubbleChatMessageItem[];
1990
+ reasoning_content?: string;
1991
+ tool_calls?: ToolCall[];
1992
+ tool_call_id?: string;
1993
+ name?: string;
1994
+ }
1995
+
1996
+ /**
1997
+ * 多态内容项
1998
+ * 用于支持多种内容类型(文本、图片、音频等)
1999
+ */
2000
+ export declare interface BubbleChatMessageItem {
2059
2001
  /**
2060
- * 气泡中止文本
2002
+ * 内容类型标识符(例如:'text'、'image_url' 等)
2061
2003
  */
2062
- abortedText?: string;
2004
+ type?: string;
2063
2005
  /**
2064
- * 气泡最大宽度
2006
+ * 内容类型特定的附加属性
2065
2007
  */
2066
- maxWidth?: string | number;
2008
+ [key: string]: unknown;
2067
2009
  }
2068
2010
 
2069
- export declare abstract class BubbleContentClassRenderer {
2070
- abstract render(options: {
2071
- [key: string]: any;
2072
- }): VNode;
2073
- }
2011
+ /**
2012
+ * ContentBox 组件 Props
2013
+ */
2014
+ export declare type BubbleContentBoxProps = BubbleBoxProps & {
2015
+ messages: BubbleRendererMessage[];
2016
+ };
2074
2017
 
2075
- export declare type BubbleContentFunctionRenderer = (options: {
2076
- [key: string]: any;
2077
- }) => VNode;
2018
+ export declare type BubbleContentRendererMatch = {
2019
+ find: (message: BubbleRendererMessage) => boolean;
2020
+ renderer: Component;
2021
+ priority?: number;
2022
+ };
2078
2023
 
2079
- export declare interface BubbleContentItem {
2080
- type: string;
2081
- [key: string]: any;
2024
+ /**
2025
+ * 自定义分组函数类型
2026
+ */
2027
+ declare type BubbleGroupFunction = (messages: BubbleMessage[], dividerRole?: string) => BubbleMessageGroup[];
2028
+
2029
+ declare const bubbleInstall: (app: App) => void;
2030
+
2031
+ export declare interface BubbleItemSlot {
2032
+ prefix?: (slotProps: BubbleItemSlotProps) => VNode | VNode[];
2033
+ suffix?: (slotProps: BubbleItemSlotProps) => VNode | VNode[];
2034
+ 'content-footer'?: (slotProps: BubbleItemSlotProps) => VNode | VNode[];
2035
+ after?: (slotProps: BubbleItemSlotProps) => VNode | VNode[];
2082
2036
  }
2083
2037
 
2084
- export declare type BubbleContentRenderer = BubbleContentFunctionRenderer | BubbleContentClassRenderer | Component | {
2085
- component: Component;
2086
- defaultProps: Record<string, unknown>;
2038
+ declare type BubbleItemSlotProps = BubbleSlotProps & {
2039
+ messages: BubbleMessage[];
2087
2040
  };
2088
2041
 
2089
- declare const bubbleInstall: (app: App) => void;
2090
-
2091
- declare const BubbleList: typeof _default_19 & {
2042
+ declare const BubbleList: typeof _default_21 & {
2092
2043
  install: typeof bubbleListInstall;
2093
2044
  };
2094
2045
  export { BubbleList }
@@ -2096,59 +2047,133 @@ export { BubbleList as TrBubbleList }
2096
2047
 
2097
2048
  declare const bubbleListInstall: (app: App) => void;
2098
2049
 
2050
+ /**
2051
+ * BubbleList 组件 Props
2052
+ * 用于管理消息流和分组策略
2053
+ */
2099
2054
  export declare interface BubbleListProps {
2100
- items: (BubbleProps & {
2101
- slots?: BubbleSlots;
2102
- })[];
2055
+ messages: BubbleMessage[];
2103
2056
  /**
2104
- * 每个角色的默认配置项
2057
+ * 分组策略:
2058
+ * - 'consecutive': 连续相同角色的消息合并为一组
2059
+ * - 'divider': 按分割角色分组(连续的分割角色在一组,其他消息在另一组)
2060
+ * - 自定义函数: (messages, dividerRole) => BubbleMessageGroup[]
2061
+ *
2062
+ * 特殊情况:
2063
+ * - 当 message 的 content 为数组时,该 message 会被单独作为一个独立分组
2064
+ * - 该独立分组会被"密封",后续的消息(即使角色相同)也不会被添加到这个分组中
2105
2065
  */
2106
- roles?: Record<string, BubbleRoleConfig>;
2066
+ groupStrategy?: 'consecutive' | 'divider' | BubbleGroupFunction;
2107
2067
  /**
2108
- * 列表是否加载中
2068
+ * 'divider' 策略的分割角色
2069
+ * 具有此角色的消息将作为分割线
2070
+ * @default 'user'
2109
2071
  */
2110
- loading?: boolean;
2072
+ dividerRole?: string;
2073
+ /**
2074
+ * 角色配置(头像、位置、形状)
2075
+ */
2076
+ roleConfigs?: Record<string, BubbleRoleConfig>;
2111
2077
  /**
2112
- * 指定哪个角色可以有加载中状态
2078
+ * 是否拆分多态内容配置
2113
2079
  */
2114
- loadingRole?: string;
2115
- autoScroll?: boolean;
2080
+ splitPolymorphic?: BubbleProps['splitPolymorphic'];
2116
2081
  }
2117
2082
 
2118
- export declare class BubbleMarkdownContentRenderer extends BubbleContentClassRenderer {
2119
- readonly mdConfig: Options;
2120
- readonly dompurifyConfig: Config;
2121
- readonly sanitizeDisabled: boolean;
2122
- readonly defaultAttrs: Record<string, unknown>;
2123
- private md;
2124
- constructor(options?: BubbleMarkdownRendererOptions);
2125
- render(options: {
2126
- content?: string;
2127
- [key: string]: unknown;
2128
- }): VNode<RendererNode, RendererElement, {
2129
- [key: string]: any;
2130
- }>;
2131
- }
2083
+ declare type BubbleListSlotProps = BubbleItemSlotProps & {
2084
+ messageIndexes: number[];
2085
+ };
2132
2086
 
2133
- declare interface BubbleMarkdownRendererOptions {
2134
- mdConfig?: Options;
2135
- dompurifyConfig?: Config;
2136
- sanitizeDisabled?: boolean;
2137
- defaultAttrs?: Record<string, unknown>;
2087
+ export declare interface BubbleListSlots {
2088
+ prefix?: (slotProps: BubbleListSlotProps) => VNode | VNode[];
2089
+ suffix?: (slotProps: BubbleListSlotProps) => VNode | VNode[];
2090
+ 'content-footer'?: (slotProps: BubbleListSlotProps) => VNode | VNode[];
2091
+ after?: (slotProps: BubbleListSlotProps) => VNode | VNode[];
2138
2092
  }
2139
2093
 
2140
- export declare interface BubbleProps extends BubbleCommonProps {
2094
+ /**
2095
+ * 统一消息类型
2096
+ */
2097
+ export declare type BubbleMessage = BubblePlainMessage | BubblePolymorphicMessage;
2098
+
2099
+ /**
2100
+ * 统一分组类型
2101
+ */
2102
+ export declare type BubbleMessageGroup = BubblePlainMessageGroup | BubblePolymorphicMessageGroup;
2103
+
2104
+ /**
2105
+ * 普通消息(字符串内容)
2106
+ */
2107
+ export declare type BubblePlainMessage = BubbleBaseMessage & {
2108
+ content: string;
2109
+ };
2110
+
2111
+ /**
2112
+ * 普通消息分组(内容为字符串)
2113
+ */
2114
+ declare type BubblePlainMessageGroup = {
2115
+ role: string;
2116
+ messages: BubblePlainMessage[];
2117
+ isPolymorphic: false;
2118
+ messageIndexes: number[];
2119
+ };
2120
+
2121
+ /**
2122
+ * 多态消息(数组内容)
2123
+ */
2124
+ export declare type BubblePolymorphicMessage = BubbleBaseMessage & {
2125
+ content: BubbleChatMessageItem[];
2126
+ };
2127
+
2128
+ /**
2129
+ * 多态消息分组(内容为 BubbleChatMessageItem 数组)
2130
+ */
2131
+ declare type BubblePolymorphicMessageGroup = {
2132
+ role: string;
2133
+ messages: BubblePolymorphicMessage[];
2134
+ isPolymorphic: true;
2135
+ messageIndexes: number[];
2136
+ };
2137
+
2138
+ /**
2139
+ * Bubble 组件 Props
2140
+ * 用于渲染单个气泡的外观和内容
2141
+ */
2142
+ export declare type BubbleProps = Omit<BubbleChatMessage, 'role'> & {
2143
+ role?: string;
2141
2144
  /**
2142
- * 气泡内容
2145
+ * 气泡头像
2146
+ */
2147
+ avatar?: VNode | Component;
2148
+ /**
2149
+ * 气泡对齐位置,默认 'start'
2150
+ */
2151
+ placement?: 'start' | 'end';
2152
+ /**
2153
+ * 气泡形状,默认 'corner'
2154
+ */
2155
+ shape?: 'rounded' | 'corner' | 'none';
2156
+ /**
2157
+ * 气泡加载状态
2143
2158
  */
2144
- content?: string | BubbleContentItem[];
2145
- id?: string | number | symbol;
2146
- role?: string;
2147
2159
  loading?: boolean;
2148
- aborted?: boolean;
2149
- }
2160
+ /**
2161
+ * 是否隐藏气泡
2162
+ */
2163
+ hidden?: boolean;
2164
+ /**
2165
+ * 是否拆分多态内容(每个内容项各自渲染一个气泡)
2166
+ * - true:每个内容项各自渲染一个气泡
2167
+ * - false:所有内容项合并在同一个气泡中渲染(默认)
2168
+ */
2169
+ splitPolymorphic?: boolean;
2170
+ /**
2171
+ * 额外配置
2172
+ */
2173
+ extras?: Record<string, unknown>;
2174
+ };
2150
2175
 
2151
- declare const BubbleProvider: typeof _default_20 & {
2176
+ declare const BubbleProvider: typeof _default_22 & {
2152
2177
  install: typeof bubbleProviderInstall;
2153
2178
  };
2154
2179
  export { BubbleProvider }
@@ -2156,28 +2181,48 @@ export { BubbleProvider as TrBubbleProvider }
2156
2181
 
2157
2182
  declare const bubbleProviderInstall: (app: App) => void;
2158
2183
 
2159
- export declare type BubbleRoleConfig = BubbleCommonProps & {
2160
- hidden?: boolean;
2161
- slots?: BubbleSlots;
2184
+ export declare interface BubbleProviderProps {
2185
+ boxRendererMatches?: BubbleBoxRendererMatch[];
2186
+ contentRendererMatches?: BubbleContentRendererMatch[];
2187
+ fallbackBoxRenderer?: Component;
2188
+ fallbackContentRenderer?: Component;
2189
+ initialStore?: Record<string, unknown>;
2190
+ }
2191
+
2192
+ /**
2193
+ * 渲染器消息(扁平化的单条内容)
2194
+ */
2195
+ export declare type BubbleRendererMessage<T = string | BubbleChatMessageItem | undefined, E extends Record<string, unknown> = Record<string, unknown>> = Omit<BubbleBaseMessage, 'role'> & {
2196
+ role?: string;
2197
+ content: T;
2198
+ extras?: E;
2199
+ };
2200
+
2201
+ /**
2202
+ * 角色配置
2203
+ * 用于配置不同角色的气泡样式
2204
+ */
2205
+ export declare type BubbleRoleConfig = Pick<BubbleProps, 'avatar' | 'placement' | 'shape' | 'hidden'>;
2206
+
2207
+ declare type BubbleSlotProps = {
2208
+ rendererMessages: BubbleRendererMessage[];
2209
+ role?: string;
2210
+ isPolymorphic?: undefined;
2211
+ isFirstPolymorphic?: undefined;
2212
+ polymorphicIndex?: undefined;
2213
+ } | {
2214
+ rendererMessages: BubbleRendererMessage[];
2215
+ role?: string;
2216
+ isPolymorphic: boolean;
2217
+ isFirstPolymorphic: boolean;
2218
+ polymorphicIndex: number;
2162
2219
  };
2163
2220
 
2164
2221
  export declare interface BubbleSlots {
2165
- default?: (slotProps: {
2166
- bubbleProps: BubbleProps;
2167
- index?: number;
2168
- }) => unknown;
2169
- footer?: (slotProps: {
2170
- bubbleProps: BubbleProps;
2171
- index?: number;
2172
- }) => unknown;
2173
- loading?: (slotProps: {
2174
- bubbleProps: BubbleProps;
2175
- index?: number;
2176
- }) => unknown;
2177
- trailer?: (slotProps: {
2178
- bubbleProps: BubbleProps;
2179
- index?: number;
2180
- }) => unknown;
2222
+ prefix?: (slotProps: BubbleSlotProps) => VNode | VNode[];
2223
+ suffix?: (slotProps: BubbleSlotProps) => VNode | VNode[];
2224
+ 'content-footer'?: (slotProps: BubbleSlotProps) => VNode | VNode[];
2225
+ after?: (slotProps: BubbleSlotProps) => VNode | VNode[];
2181
2226
  }
2182
2227
 
2183
2228
  export declare interface ButtonGroupConfig {
@@ -2222,49 +2267,61 @@ declare const _default: {
2222
2267
  };
2223
2268
  export default _default;
2224
2269
 
2225
- declare const _default_10: typeof _default_30 & {
2270
+ declare const _default_10: typeof _default_28 & {
2271
+ install: typeof install_7;
2272
+ };
2273
+ export { _default_10 as History }
2274
+ export { _default_10 as TrHistory }
2275
+
2276
+ declare const _default_11: typeof _default_29 & {
2277
+ install: typeof install_8;
2278
+ };
2279
+ export { _default_11 as IconButton }
2280
+ export { _default_11 as TrIconButton }
2281
+
2282
+ declare const _default_12: typeof _default_32 & {
2226
2283
  install: typeof install_9;
2227
2284
  };
2228
- export { _default_10 as Sender }
2229
- export { _default_10 as TrSender }
2285
+ export { _default_12 as Sender }
2286
+ export { _default_12 as TrSender }
2230
2287
 
2231
- declare const _default_11: typeof _default_32 & {
2288
+ declare const _default_13: typeof _default_34 & {
2232
2289
  install: typeof install_10;
2233
2290
  };
2234
- export { _default_11 as SuggestionPills }
2235
- export { _default_11 as TrSuggestionPills }
2291
+ export { _default_13 as SuggestionPills }
2292
+ export { _default_13 as TrSuggestionPills }
2236
2293
 
2237
- declare const _default_12: typeof _default_33 & {
2294
+ declare const _default_14: typeof _default_35 & {
2238
2295
  install: typeof install_11;
2239
2296
  };
2240
- export { _default_12 as SuggestionPopover }
2241
- export { _default_12 as TrSuggestionPopover }
2297
+ export { _default_14 as SuggestionPopover }
2298
+ export { _default_14 as TrSuggestionPopover }
2242
2299
 
2243
- declare const _default_13: typeof _default_34 & {
2300
+ declare const _default_15: typeof _default_36 & {
2244
2301
  install: typeof install_12;
2245
2302
  };
2246
- export { _default_13 as ThemeProvider }
2247
- export { _default_13 as TrThemeProvider }
2303
+ export { _default_15 as ThemeProvider }
2304
+ export { _default_15 as TrThemeProvider }
2248
2305
 
2249
- declare const _default_14: typeof _default_35 & {
2306
+ declare const _default_16: typeof _default_37 & {
2250
2307
  install: typeof install_13;
2251
2308
  };
2252
- export { _default_14 as TrWelcome }
2253
- export { _default_14 as Welcome }
2309
+ export { _default_16 as TrWelcome }
2310
+ export { _default_16 as Welcome }
2254
2311
 
2255
- declare const _default_15: typeof _default_36 & {
2312
+ declare const _default_17: typeof _default_38 & {
2256
2313
  install: typeof install_14;
2257
2314
  };
2258
- export { _default_15 as McpServerPicker }
2259
- export { _default_15 as TrMcpServerPicker }
2315
+ export { _default_17 as McpServerPicker }
2316
+ export { _default_17 as TrMcpServerPicker }
2260
2317
 
2261
- declare const _default_16: typeof _default_37 & {
2318
+ declare const _default_18: typeof _default_39 & {
2262
2319
  install: typeof install_15;
2263
2320
  };
2264
- export { _default_16 as McpAddForm }
2265
- export { _default_16 as TrMcpAddForm }
2321
+ export { _default_18 as McpAddForm }
2322
+ export { _default_18 as TrMcpAddForm }
2266
2323
 
2267
- declare const _default_17: DefineComponent<AttachmentListProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2324
+ declare const _default_19: DefineComponent<AttachmentListProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2268
2325
  "update:items": (items: Attachment[]) => any;
2269
2326
  remove: (file: Attachment) => any;
2270
2327
  download: (event: MouseEvent, file: Attachment) => any;
@@ -2290,29 +2347,27 @@ fileMatchers: FileTypeMatcher[];
2290
2347
  variant: DisplayVariant;
2291
2348
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2292
2349
 
2293
- declare const _default_18: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
2294
-
2295
- declare const _default_19: DefineComponent<BubbleListProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<BubbleListProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
2296
- scrollContainerRef: HTMLDivElement;
2297
- }, HTMLDivElement>;
2298
-
2299
- declare const _default_2: typeof _default_17 & {
2350
+ declare const _default_2: typeof _default_19 & {
2300
2351
  install: typeof install;
2301
2352
  };
2302
2353
  export { _default_2 as Attachments }
2303
2354
  export { _default_2 as TrAttachments }
2304
2355
 
2305
- declare const _default_20: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;
2356
+ declare const _default_20: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
2357
+
2358
+ declare const _default_21: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;
2306
2359
 
2307
- declare const _default_21: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;
2360
+ declare const _default_22: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;
2308
2361
 
2309
- declare const _default_22: DefineComponent< {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
2362
+ declare const _default_23: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, __VLS_TemplateResult_5["slots"]>;
2310
2363
 
2311
- declare const _default_23: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;
2364
+ declare const _default_24: DefineComponent< {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
2312
2365
 
2313
- declare const _default_24: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, __VLS_TemplateResult_5["slots"]>;
2366
+ declare const _default_25: __VLS_WithTemplateSlots_6<typeof __VLS_component_6, __VLS_TemplateResult_6["slots"]>;
2314
2367
 
2315
- declare const _default_25: DefineComponent<FeedbackProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2368
+ declare const _default_26: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;
2369
+
2370
+ declare const _default_27: DefineComponent<FeedbackProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2316
2371
  action: (name: string) => any;
2317
2372
  operation: (name: string) => any;
2318
2373
  }, string, PublicProps, Readonly<FeedbackProps> & Readonly<{
@@ -2324,7 +2379,7 @@ actionsLimit: number;
2324
2379
  sourcesLinesLimit: number;
2325
2380
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2326
2381
 
2327
- declare const _default_26: <T extends HistoryItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2382
+ declare const _default_28: <T extends HistoryItem>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2328
2383
  props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
2329
2384
  readonly "onItem-click"?: ((item: T) => any) | undefined;
2330
2385
  readonly "onItem-title-change"?: ((newTitle: string, item: T) => any) | undefined;
@@ -2338,25 +2393,19 @@ declare const _default_26: <T extends HistoryItem>(__VLS_props: NonNullable<Awai
2338
2393
  __ctx?: Awaited<typeof __VLS_setup>;
2339
2394
  };
2340
2395
 
2341
- declare const _default_27: DefineComponent<IconButtonProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<IconButtonProps> & Readonly<{}>, {
2396
+ declare const _default_29: DefineComponent<IconButtonProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<IconButtonProps> & Readonly<{}>, {
2342
2397
  size: string | number;
2343
2398
  svgSize: string | number;
2344
2399
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
2345
2400
 
2346
- declare const _default_28: DefineComponent<PromptProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<PromptProps> & Readonly<{}>, {
2401
+ declare const _default_3: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;
2402
+ export { _default_3 as BubbleBasicBox }
2403
+ export { _default_3 as TrBubbleBasicBox }
2404
+
2405
+ declare const _default_30: DefineComponent<PromptProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<PromptProps> & Readonly<{}>, {
2347
2406
  size: "small" | "medium" | "large";
2348
2407
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2349
2408
 
2350
- declare const _default_29: __VLS_WithTemplateSlots_6<typeof __VLS_component_6, __VLS_TemplateResult_6["slots"]>;
2351
-
2352
- declare const _default_3: typeof _default_21 & {
2353
- install: typeof install_2;
2354
- };
2355
- export { _default_3 as Container }
2356
- export { _default_3 as TrContainer }
2357
-
2358
- declare const _default_30: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;
2359
-
2360
2409
  declare const _default_31: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;
2361
2410
 
2362
2411
  declare const _default_32: __VLS_WithTemplateSlots_9<typeof __VLS_component_9, __VLS_TemplateResult_9["slots"]>;
@@ -2369,7 +2418,60 @@ declare const _default_35: __VLS_WithTemplateSlots_12<typeof __VLS_component_12,
2369
2418
 
2370
2419
  declare const _default_36: __VLS_WithTemplateSlots_13<typeof __VLS_component_13, __VLS_TemplateResult_13["slots"]>;
2371
2420
 
2372
- declare const _default_37: DefineComponent<McpAddFormProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2421
+ declare const _default_37: __VLS_WithTemplateSlots_14<typeof __VLS_component_14, __VLS_TemplateResult_14["slots"]>;
2422
+
2423
+ declare const _default_38: DefineComponent<__VLS_PublicProps_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2424
+ "update:visible": (value: boolean) => any;
2425
+ } & {
2426
+ refresh: (tab: "installed" | "market") => any;
2427
+ "update:visible": (visible: boolean) => any;
2428
+ "market-category-change": (category: string) => any;
2429
+ "tab-change": (activeTab: "installed" | "market") => any;
2430
+ "plugin-toggle": (plugin: PluginInfo, enabled: boolean) => any;
2431
+ "plugin-delete": (plugin: PluginInfo) => any;
2432
+ "plugin-add": (plugin: PluginInfo) => any;
2433
+ "plugin-create": (type: "code" | "form", data: PluginCreationData) => any;
2434
+ "tool-toggle": (plugin: PluginInfo, toolId: string, enabled: boolean) => any;
2435
+ "update:activeCount": (count: number) => any;
2436
+ }, string, PublicProps, Readonly<__VLS_PublicProps_6> & Readonly<{
2437
+ onRefresh?: ((tab: "installed" | "market") => any) | undefined;
2438
+ "onUpdate:visible"?: ((value: boolean) => any) | undefined;
2439
+ "onMarket-category-change"?: ((category: string) => any) | undefined;
2440
+ "onTab-change"?: ((activeTab: "installed" | "market") => any) | undefined;
2441
+ "onPlugin-toggle"?: ((plugin: PluginInfo, enabled: boolean) => any) | undefined;
2442
+ "onPlugin-delete"?: ((plugin: PluginInfo) => any) | undefined;
2443
+ "onPlugin-add"?: ((plugin: PluginInfo) => any) | undefined;
2444
+ "onPlugin-create"?: ((type: "code" | "form", data: PluginCreationData) => any) | undefined;
2445
+ "onTool-toggle"?: ((plugin: PluginInfo, toolId: string, enabled: boolean) => any) | undefined;
2446
+ "onUpdate:activeCount"?: ((count: number) => any) | undefined;
2447
+ }>, {
2448
+ title: string;
2449
+ loading: boolean;
2450
+ installedPlugins: PluginInfo[];
2451
+ marketPlugins: PluginInfo[];
2452
+ searchPlaceholder: string;
2453
+ enableSearch: boolean;
2454
+ installedSearchFn: (query: string, item: PluginInfo) => boolean;
2455
+ marketSearchFn: (query: string, item: PluginInfo) => boolean;
2456
+ marketCategoryOptions: MarketCategoryOption[];
2457
+ marketCategoryPlaceholder: string;
2458
+ enableMarketCategoryFilter: boolean;
2459
+ defaultActiveTab: "installed" | "market";
2460
+ showInstalledTab: boolean;
2461
+ showMarketTab: boolean;
2462
+ popupConfig: PopupConfig;
2463
+ installedTabTitle: string;
2464
+ marketTabTitle: string;
2465
+ showCustomAddButton: boolean;
2466
+ customAddButtonText: string;
2467
+ allowPluginToggle: boolean;
2468
+ allowToolToggle: boolean;
2469
+ allowPluginDelete: boolean;
2470
+ allowPluginAdd: boolean;
2471
+ marketLoading: boolean;
2472
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
2473
+
2474
+ declare const _default_39: DefineComponent<McpAddFormProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
2373
2475
  cancel: () => any;
2374
2476
  confirm: (type: AddType, data: string | McpAddFormData) => any;
2375
2477
  "update:addType": (value: AddType) => any;
@@ -2381,41 +2483,39 @@ onConfirm?: ((type: AddType, data: string | McpAddFormData) => any) | undefined;
2381
2483
  addType: AddType;
2382
2484
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
2383
2485
 
2384
- declare const _default_4: typeof _default_22 & {
2385
- install: typeof install_3;
2386
- };
2387
- export { _default_4 as Conversations }
2388
- export { _default_4 as TrConversations }
2486
+ declare const _default_4: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
2487
+ export { _default_4 as BubbleMarkdownRenderer }
2488
+ export { _default_4 as TrBubbleMarkdownRenderer }
2389
2489
 
2390
2490
  declare const _default_5: typeof _default_23 & {
2391
- install: typeof install_4;
2491
+ install: typeof install_2;
2392
2492
  };
2393
- export { _default_5 as DragOverlay }
2394
- export { _default_5 as TrDragOverlay }
2493
+ export { _default_5 as Container }
2494
+ export { _default_5 as TrContainer }
2395
2495
 
2396
2496
  declare const _default_6: typeof _default_24 & {
2397
- install: typeof install_5;
2497
+ install: typeof install_3;
2398
2498
  };
2399
- export { _default_6 as DropdownMenu }
2400
- export { _default_6 as TrDropdownMenu }
2499
+ export { _default_6 as Conversations }
2500
+ export { _default_6 as TrConversations }
2401
2501
 
2402
2502
  declare const _default_7: typeof _default_25 & {
2403
- install: typeof install_6;
2503
+ install: typeof install_4;
2404
2504
  };
2405
- export { _default_7 as Feedback }
2406
- export { _default_7 as TrFeedback }
2505
+ export { _default_7 as DragOverlay }
2506
+ export { _default_7 as TrDragOverlay }
2407
2507
 
2408
2508
  declare const _default_8: typeof _default_26 & {
2409
- install: typeof install_7;
2509
+ install: typeof install_5;
2410
2510
  };
2411
- export { _default_8 as History }
2412
- export { _default_8 as TrHistory }
2511
+ export { _default_8 as DropdownMenu }
2512
+ export { _default_8 as TrDropdownMenu }
2413
2513
 
2414
2514
  declare const _default_9: typeof _default_27 & {
2415
- install: typeof install_8;
2515
+ install: typeof install_6;
2416
2516
  };
2417
- export { _default_9 as IconButton }
2418
- export { _default_9 as TrIconButton }
2517
+ export { _default_9 as Feedback }
2518
+ export { _default_9 as TrFeedback }
2419
2519
 
2420
2520
  export declare type DisplayVariant = 'picture' | 'card' | 'auto';
2421
2521
 
@@ -2886,7 +2986,7 @@ export declare interface PopupConfig {
2886
2986
  };
2887
2987
  }
2888
2988
 
2889
- declare const Prompt: typeof _default_28 & {
2989
+ declare const Prompt: typeof _default_30 & {
2890
2990
  install: typeof installPrompt;
2891
2991
  };
2892
2992
  export { Prompt }
@@ -2923,7 +3023,7 @@ export declare interface PromptProps {
2923
3023
  size?: 'small' | 'medium' | 'large';
2924
3024
  }
2925
3025
 
2926
- declare const Prompts: typeof _default_29 & {
3026
+ declare const Prompts: typeof _default_31 & {
2927
3027
  install: typeof installPrompts;
2928
3028
  };
2929
3029
  export { Prompts }
@@ -2977,7 +3077,7 @@ export declare interface RejectionReason {
2977
3077
  export declare type SenderEmits = {
2978
3078
  (e: 'update:modelValue', value: string): void;
2979
3079
  (e: 'update:templateData', value: UserItem[]): void;
2980
- (e: 'submit', value: string, templateData?: UserItem[]): void;
3080
+ (e: 'submit', value: string): void;
2981
3081
  (e: 'clear'): void;
2982
3082
  (e: 'speech-start'): void;
2983
3083
  (e: 'speech-end', transcript?: string): void;
@@ -2990,10 +3090,6 @@ export declare type SenderEmits = {
2990
3090
  (e: 'cancel'): void;
2991
3091
  (e: 'reset-template'): void;
2992
3092
  (e: 'files-selected', files: File[]): void;
2993
- (e: 'trigger-char', char: string, position: {
2994
- top: number;
2995
- left: number;
2996
- }): void;
2997
3093
  };
2998
3094
 
2999
3095
  export declare interface SenderProps {
@@ -3082,7 +3178,7 @@ export declare interface SuggestionGroup<T = Record<string, unknown>> {
3082
3178
 
3083
3179
  export declare type SuggestionItem<T = Record<string, unknown>> = SuggestionBaseItem & T;
3084
3180
 
3085
- declare const SuggestionPillButton: typeof _default_31 & {
3181
+ declare const SuggestionPillButton: typeof _default_33 & {
3086
3182
  install: typeof installPillButton;
3087
3183
  };
3088
3184
  export { SuggestionPillButton }
@@ -3215,16 +3311,14 @@ export declare interface SuggestionTextPart {
3215
3311
  isMatch: boolean;
3216
3312
  }
3217
3313
 
3218
- declare interface TemplateItem extends BaseItem {
3314
+ declare interface TemplateItem extends BaseTextItem {
3219
3315
  type: 'template';
3220
- content: string;
3221
3316
  prefix: string;
3222
3317
  suffix: string;
3223
3318
  }
3224
3319
 
3225
- declare interface TextItem extends BaseItem {
3320
+ declare interface TextItem extends BaseTextItem {
3226
3321
  type: 'text';
3227
- content: string;
3228
3322
  }
3229
3323
 
3230
3324
  export declare interface ThemeProviderProps {
@@ -3251,6 +3345,19 @@ export declare type ThemeStorage = Pick<Storage, 'getItem' | 'setItem'>;
3251
3345
  */
3252
3346
  export declare type ThemeType = 'light' | 'dark';
3253
3347
 
3348
+ /**
3349
+ * 工具调用接口(支持 OpenAI 格式)
3350
+ */
3351
+ export declare interface ToolCall {
3352
+ id: string;
3353
+ type: 'function' | string;
3354
+ function: {
3355
+ name: string;
3356
+ arguments: string;
3357
+ };
3358
+ [x: string]: unknown;
3359
+ }
3360
+
3254
3361
  declare interface TooltipContentProps {
3255
3362
  show?: boolean;
3256
3363
  content: string;
@@ -3269,14 +3376,7 @@ export declare interface UrlAttachment extends BaseAttachment {
3269
3376
  rawFile?: File;
3270
3377
  }
3271
3378
 
3272
- export declare type UserItem = UserTextItem | UserTemplateItem | UserSkillItem;
3273
-
3274
- export declare type UserSkillItem = {
3275
- id?: string;
3276
- type: 'skill';
3277
- label: string;
3278
- value: string;
3279
- };
3379
+ export declare type UserItem = UserTextItem | UserTemplateItem;
3280
3380
 
3281
3381
  export declare type UserTemplateItem = Omit<Pick<TemplateItem, 'type' | 'content'>, 'id'> & {
3282
3382
  id?: TemplateItem['id'];