assistant-stream 0.3.15 → 0.3.17

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 (234) hide show
  1. package/README.md +6 -4
  2. package/dist/core/AssistantStream.d.ts +35 -31
  3. package/dist/core/AssistantStream.d.ts.map +1 -1
  4. package/dist/core/AssistantStream.js +39 -37
  5. package/dist/core/AssistantStream.js.map +1 -1
  6. package/dist/core/AssistantStreamChunk.d.ts +71 -78
  7. package/dist/core/AssistantStreamChunk.d.ts.map +1 -1
  8. package/dist/core/AssistantStreamChunk.js +0 -2
  9. package/dist/core/accumulators/AssistantMessageStream.d.ts +15 -11
  10. package/dist/core/accumulators/AssistantMessageStream.d.ts.map +1 -1
  11. package/dist/core/accumulators/AssistantMessageStream.js +52 -48
  12. package/dist/core/accumulators/AssistantMessageStream.js.map +1 -1
  13. package/dist/core/accumulators/TimingTracker.d.ts +15 -11
  14. package/dist/core/accumulators/TimingTracker.d.ts.map +1 -1
  15. package/dist/core/accumulators/TimingTracker.js +36 -43
  16. package/dist/core/accumulators/TimingTracker.js.map +1 -1
  17. package/dist/core/accumulators/assistant-message-accumulator.d.ts +21 -11
  18. package/dist/core/accumulators/assistant-message-accumulator.d.ts.map +1 -1
  19. package/dist/core/accumulators/assistant-message-accumulator.js +349 -390
  20. package/dist/core/accumulators/assistant-message-accumulator.js.map +1 -1
  21. package/dist/core/converters/toGenericMessages.d.ts +49 -47
  22. package/dist/core/converters/toGenericMessages.d.ts.map +1 -1
  23. package/dist/core/converters/toGenericMessages.js +122 -136
  24. package/dist/core/converters/toGenericMessages.js.map +1 -1
  25. package/dist/core/modules/assistant-stream.d.ts +62 -66
  26. package/dist/core/modules/assistant-stream.d.ts.map +1 -1
  27. package/dist/core/modules/assistant-stream.js +176 -182
  28. package/dist/core/modules/assistant-stream.js.map +1 -1
  29. package/dist/core/modules/text.d.ts +11 -7
  30. package/dist/core/modules/text.d.ts.map +1 -1
  31. package/dist/core/modules/text.js +45 -45
  32. package/dist/core/modules/text.js.map +1 -1
  33. package/dist/core/modules/tool-call.d.ts +15 -11
  34. package/dist/core/modules/tool-call.d.ts.map +1 -1
  35. package/dist/core/modules/tool-call.js +81 -96
  36. package/dist/core/modules/tool-call.js.map +1 -1
  37. package/dist/core/object/ObjectStreamAccumulator.d.ts +13 -9
  38. package/dist/core/object/ObjectStreamAccumulator.d.ts.map +1 -1
  39. package/dist/core/object/ObjectStreamAccumulator.js +44 -52
  40. package/dist/core/object/ObjectStreamAccumulator.js.map +1 -1
  41. package/dist/core/object/ObjectStreamResponse.d.ts +12 -8
  42. package/dist/core/object/ObjectStreamResponse.d.ts.map +1 -1
  43. package/dist/core/object/ObjectStreamResponse.js +52 -71
  44. package/dist/core/object/ObjectStreamResponse.js.map +1 -1
  45. package/dist/core/object/createObjectStream.d.ts +14 -8
  46. package/dist/core/object/createObjectStream.d.ts.map +1 -1
  47. package/dist/core/object/createObjectStream.js +50 -47
  48. package/dist/core/object/createObjectStream.js.map +1 -1
  49. package/dist/core/object/types.d.ts +14 -11
  50. package/dist/core/object/types.d.ts.map +1 -1
  51. package/dist/core/object/types.js +0 -2
  52. package/dist/core/serialization/PlainText.d.ts +11 -7
  53. package/dist/core/serialization/PlainText.d.ts.map +1 -1
  54. package/dist/core/serialization/PlainText.js +40 -48
  55. package/dist/core/serialization/PlainText.js.map +1 -1
  56. package/dist/core/serialization/assistant-transport/AssistantTransport.d.ts +11 -7
  57. package/dist/core/serialization/assistant-transport/AssistantTransport.d.ts.map +1 -1
  58. package/dist/core/serialization/assistant-transport/AssistantTransport.js +102 -117
  59. package/dist/core/serialization/assistant-transport/AssistantTransport.js.map +1 -1
  60. package/dist/core/serialization/data-stream/DataStream.d.ts +11 -7
  61. package/dist/core/serialization/data-stream/DataStream.d.ts.map +1 -1
  62. package/dist/core/serialization/data-stream/DataStream.js +320 -371
  63. package/dist/core/serialization/data-stream/DataStream.js.map +1 -1
  64. package/dist/core/serialization/data-stream/chunk-types.d.ts +101 -100
  65. package/dist/core/serialization/data-stream/chunk-types.d.ts.map +1 -1
  66. package/dist/core/serialization/data-stream/chunk-types.js +27 -23
  67. package/dist/core/serialization/data-stream/chunk-types.js.map +1 -1
  68. package/dist/core/serialization/data-stream/serialization.d.ts +9 -5
  69. package/dist/core/serialization/data-stream/serialization.d.ts.map +1 -1
  70. package/dist/core/serialization/data-stream/serialization.js +23 -24
  71. package/dist/core/serialization/data-stream/serialization.js.map +1 -1
  72. package/dist/core/serialization/ui-message-stream/UIMessageStream.d.ts +15 -12
  73. package/dist/core/serialization/ui-message-stream/UIMessageStream.d.ts.map +1 -1
  74. package/dist/core/serialization/ui-message-stream/UIMessageStream.js +205 -228
  75. package/dist/core/serialization/ui-message-stream/UIMessageStream.js.map +1 -1
  76. package/dist/core/serialization/ui-message-stream/chunk-types.d.ts +68 -65
  77. package/dist/core/serialization/ui-message-stream/chunk-types.d.ts.map +1 -1
  78. package/dist/core/serialization/ui-message-stream/chunk-types.js +0 -2
  79. package/dist/core/tool/ToolCallReader.d.ts +34 -30
  80. package/dist/core/tool/ToolCallReader.d.ts.map +1 -1
  81. package/dist/core/tool/ToolCallReader.js +264 -317
  82. package/dist/core/tool/ToolCallReader.js.map +1 -1
  83. package/dist/core/tool/ToolExecutionStream.d.ts +20 -17
  84. package/dist/core/tool/ToolExecutionStream.d.ts.map +1 -1
  85. package/dist/core/tool/ToolExecutionStream.js +123 -146
  86. package/dist/core/tool/ToolExecutionStream.js.map +1 -1
  87. package/dist/core/tool/ToolResponse.d.ts +41 -41
  88. package/dist/core/tool/ToolResponse.d.ts.map +1 -1
  89. package/dist/core/tool/ToolResponse.js +50 -56
  90. package/dist/core/tool/ToolResponse.js.map +1 -1
  91. package/dist/core/tool/schema-utils.d.ts +19 -15
  92. package/dist/core/tool/schema-utils.d.ts.map +1 -1
  93. package/dist/core/tool/schema-utils.js +50 -84
  94. package/dist/core/tool/schema-utils.js.map +1 -1
  95. package/dist/core/tool/tool-types.d.ts +103 -122
  96. package/dist/core/tool/tool-types.d.ts.map +1 -1
  97. package/dist/core/tool/tool-types.js +0 -2
  98. package/dist/core/tool/toolResultStream.d.ts +11 -9
  99. package/dist/core/tool/toolResultStream.d.ts.map +1 -1
  100. package/dist/core/tool/toolResultStream.js +127 -157
  101. package/dist/core/tool/toolResultStream.js.map +1 -1
  102. package/dist/core/tool/type-path-utils.d.ts +8 -19
  103. package/dist/core/tool/type-path-utils.d.ts.map +1 -1
  104. package/dist/core/tool/type-path-utils.js +0 -2
  105. package/dist/core/utils/Counter.d.ts +6 -3
  106. package/dist/core/utils/Counter.d.ts.map +1 -1
  107. package/dist/core/utils/Counter.js +10 -6
  108. package/dist/core/utils/Counter.js.map +1 -1
  109. package/dist/core/utils/generateId.d.ts +4 -1
  110. package/dist/core/utils/generateId.d.ts.map +1 -1
  111. package/dist/core/utils/generateId.js +5 -1
  112. package/dist/core/utils/generateId.js.map +1 -1
  113. package/dist/core/utils/stream/AssistantMetaTransformStream.d.ts +15 -11
  114. package/dist/core/utils/stream/AssistantMetaTransformStream.d.ts.map +1 -1
  115. package/dist/core/utils/stream/AssistantMetaTransformStream.js +38 -42
  116. package/dist/core/utils/stream/AssistantMetaTransformStream.js.map +1 -1
  117. package/dist/core/utils/stream/AssistantTransformStream.d.ts +11 -8
  118. package/dist/core/utils/stream/AssistantTransformStream.d.ts.map +1 -1
  119. package/dist/core/utils/stream/AssistantTransformStream.js +37 -35
  120. package/dist/core/utils/stream/AssistantTransformStream.js.map +1 -1
  121. package/dist/core/utils/stream/LineDecoderStream.d.ts +6 -3
  122. package/dist/core/utils/stream/LineDecoderStream.d.ts.map +1 -1
  123. package/dist/core/utils/stream/LineDecoderStream.js +23 -26
  124. package/dist/core/utils/stream/LineDecoderStream.js.map +1 -1
  125. package/dist/core/utils/stream/PipeableTransformStream.d.ts +5 -2
  126. package/dist/core/utils/stream/PipeableTransformStream.d.ts.map +1 -1
  127. package/dist/core/utils/stream/PipeableTransformStream.js +14 -10
  128. package/dist/core/utils/stream/PipeableTransformStream.js.map +1 -1
  129. package/dist/core/utils/stream/SSE.d.ts +10 -6
  130. package/dist/core/utils/stream/SSE.d.ts.map +1 -1
  131. package/dist/core/utils/stream/SSE.js +79 -91
  132. package/dist/core/utils/stream/SSE.js.map +1 -1
  133. package/dist/core/utils/stream/UnderlyingReadable.d.ts +7 -4
  134. package/dist/core/utils/stream/UnderlyingReadable.d.ts.map +1 -1
  135. package/dist/core/utils/stream/UnderlyingReadable.js +0 -2
  136. package/dist/core/utils/stream/merge.d.ts +11 -7
  137. package/dist/core/utils/stream/merge.d.ts.map +1 -1
  138. package/dist/core/utils/stream/merge.js +68 -170
  139. package/dist/core/utils/stream/merge.js.map +1 -1
  140. package/dist/core/utils/stream/path-utils.d.ts +11 -7
  141. package/dist/core/utils/stream/path-utils.d.ts.map +1 -1
  142. package/dist/core/utils/stream/path-utils.js +46 -52
  143. package/dist/core/utils/stream/path-utils.js.map +1 -1
  144. package/dist/core/utils/types.d.ts +109 -113
  145. package/dist/core/utils/types.d.ts.map +1 -1
  146. package/dist/core/utils/types.js +0 -2
  147. package/dist/core/utils/withPromiseOrValue.d.ts +4 -1
  148. package/dist/core/utils/withPromiseOrValue.d.ts.map +1 -1
  149. package/dist/core/utils/withPromiseOrValue.js +12 -15
  150. package/dist/core/utils/withPromiseOrValue.js.map +1 -1
  151. package/dist/index.d.ts +23 -24
  152. package/dist/index.js +16 -16
  153. package/dist/node_modules/.pnpm/@types_json-schema@7.0.15/node_modules/@types/json-schema/index.d.ts +141 -0
  154. package/dist/node_modules/.pnpm/@types_json-schema@7.0.15/node_modules/@types/json-schema/index.d.ts.map +1 -0
  155. package/dist/resumable/ResumableStreamContext.d.ts +28 -24
  156. package/dist/resumable/ResumableStreamContext.d.ts.map +1 -1
  157. package/dist/resumable/ResumableStreamContext.js +99 -114
  158. package/dist/resumable/ResumableStreamContext.js.map +1 -1
  159. package/dist/resumable/constants.d.ts +4 -1
  160. package/dist/resumable/constants.d.ts.map +1 -1
  161. package/dist/resumable/constants.js +5 -1
  162. package/dist/resumable/constants.js.map +1 -1
  163. package/dist/resumable/createResumableAssistantStreamResponse.d.ts +22 -21
  164. package/dist/resumable/createResumableAssistantStreamResponse.d.ts.map +1 -1
  165. package/dist/resumable/createResumableAssistantStreamResponse.js +25 -32
  166. package/dist/resumable/createResumableAssistantStreamResponse.js.map +1 -1
  167. package/dist/resumable/errors.d.ts +8 -5
  168. package/dist/resumable/errors.d.ts.map +1 -1
  169. package/dist/resumable/errors.js +14 -12
  170. package/dist/resumable/errors.js.map +1 -1
  171. package/dist/resumable/index.d.ts +7 -7
  172. package/dist/resumable/index.js +5 -5
  173. package/dist/resumable/stores/InMemoryResumableStreamStore.d.ts +14 -10
  174. package/dist/resumable/stores/InMemoryResumableStreamStore.d.ts.map +1 -1
  175. package/dist/resumable/stores/InMemoryResumableStreamStore.js +159 -193
  176. package/dist/resumable/stores/InMemoryResumableStreamStore.js.map +1 -1
  177. package/dist/resumable/stores/ioredis.d.ts +9 -5
  178. package/dist/resumable/stores/ioredis.d.ts.map +1 -1
  179. package/dist/resumable/stores/ioredis.js +70 -82
  180. package/dist/resumable/stores/ioredis.js.map +1 -1
  181. package/dist/resumable/stores/redis-impl.d.ts +51 -48
  182. package/dist/resumable/stores/redis-impl.d.ts.map +1 -1
  183. package/dist/resumable/stores/redis-impl.js +176 -176
  184. package/dist/resumable/stores/redis-impl.js.map +1 -1
  185. package/dist/resumable/stores/redis.d.ts +31 -28
  186. package/dist/resumable/stores/redis.d.ts.map +1 -1
  187. package/dist/resumable/stores/redis.js +87 -95
  188. package/dist/resumable/stores/redis.js.map +1 -1
  189. package/dist/resumable/types.d.ts +29 -26
  190. package/dist/resumable/types.d.ts.map +1 -1
  191. package/dist/resumable/types.js +0 -2
  192. package/dist/utils/AsyncIterableStream.d.ts +5 -2
  193. package/dist/utils/AsyncIterableStream.d.ts.map +1 -1
  194. package/dist/utils/AsyncIterableStream.js +17 -16
  195. package/dist/utils/AsyncIterableStream.js.map +1 -1
  196. package/dist/utils/json/fix-json.d.ts +4 -1
  197. package/dist/utils/json/fix-json.d.ts.map +1 -1
  198. package/dist/utils/json/fix-json.js +286 -380
  199. package/dist/utils/json/fix-json.js.map +1 -1
  200. package/dist/utils/json/is-json.d.ts +8 -4
  201. package/dist/utils/json/is-json.d.ts.map +1 -1
  202. package/dist/utils/json/is-json.js +13 -21
  203. package/dist/utils/json/is-json.js.map +1 -1
  204. package/dist/utils/json/json-value.d.ts +7 -4
  205. package/dist/utils/json/json-value.d.ts.map +1 -1
  206. package/dist/utils/json/json-value.js +0 -2
  207. package/dist/utils/json/parse-partial-json-object.d.ts +11 -8
  208. package/dist/utils/json/parse-partial-json-object.d.ts.map +1 -1
  209. package/dist/utils/json/parse-partial-json-object.js +50 -62
  210. package/dist/utils/json/parse-partial-json-object.js.map +1 -1
  211. package/dist/utils/promiseWithResolvers.d.ts +7 -4
  212. package/dist/utils/promiseWithResolvers.d.ts.map +1 -1
  213. package/dist/utils/promiseWithResolvers.js +17 -10
  214. package/dist/utils/promiseWithResolvers.js.map +1 -1
  215. package/dist/utils.d.ts +6 -6
  216. package/dist/utils.js +5 -5
  217. package/package.json +3 -3
  218. package/src/core/modules/assistant-stream.test.ts +104 -0
  219. package/src/core/modules/assistant-stream.ts +13 -4
  220. package/dist/core/AssistantStreamChunk.js.map +0 -1
  221. package/dist/core/object/types.js.map +0 -1
  222. package/dist/core/serialization/ui-message-stream/chunk-types.js.map +0 -1
  223. package/dist/core/tool/tool-types.js.map +0 -1
  224. package/dist/core/tool/type-path-utils.js.map +0 -1
  225. package/dist/core/utils/stream/UnderlyingReadable.js.map +0 -1
  226. package/dist/core/utils/types.js.map +0 -1
  227. package/dist/index.d.ts.map +0 -1
  228. package/dist/index.js.map +0 -1
  229. package/dist/resumable/index.d.ts.map +0 -1
  230. package/dist/resumable/index.js.map +0 -1
  231. package/dist/resumable/types.js.map +0 -1
  232. package/dist/utils/json/json-value.js.map +0 -1
  233. package/dist/utils.d.ts.map +0 -1
  234. package/dist/utils.js.map +0 -1
@@ -1,44 +1,37 @@
1
- export class TimingTracker {
2
- _streamStartTime;
3
- _firstTokenTime;
4
- _totalChunks = 0;
5
- _toolCallIds = new Set();
6
- constructor() {
7
- this._streamStartTime = Date.now();
8
- }
9
- recordChunk() {
10
- this._totalChunks++;
11
- }
12
- recordFirstToken() {
13
- if (this._firstTokenTime === undefined) {
14
- this._firstTokenTime = Date.now();
15
- }
16
- }
17
- recordToolCallStart(toolCallId) {
18
- this._toolCallIds.add(toolCallId);
19
- }
20
- getTiming(outputTokens, totalText) {
21
- const now = Date.now();
22
- const totalStreamTime = now - this._streamStartTime;
23
- const tokenCount = outputTokens && outputTokens > 0
24
- ? outputTokens
25
- : totalText
26
- ? Math.ceil(totalText.length / 4)
27
- : undefined;
28
- const tokensPerSecond = tokenCount && totalStreamTime > 0
29
- ? (tokenCount / totalStreamTime) * 1000
30
- : undefined;
31
- return {
32
- streamStartTime: this._streamStartTime,
33
- ...(this._firstTokenTime !== undefined
34
- ? { firstTokenTime: this._firstTokenTime - this._streamStartTime }
35
- : undefined),
36
- totalStreamTime,
37
- ...(tokenCount !== undefined ? { tokenCount } : undefined),
38
- ...(tokensPerSecond !== undefined ? { tokensPerSecond } : undefined),
39
- totalChunks: this._totalChunks,
40
- toolCallCount: this._toolCallIds.size,
41
- };
42
- }
43
- }
1
+ //#region src/core/accumulators/TimingTracker.ts
2
+ var TimingTracker = class {
3
+ _streamStartTime;
4
+ _firstTokenTime;
5
+ _totalChunks = 0;
6
+ _toolCallIds = /* @__PURE__ */ new Set();
7
+ constructor() {
8
+ this._streamStartTime = Date.now();
9
+ }
10
+ recordChunk() {
11
+ this._totalChunks++;
12
+ }
13
+ recordFirstToken() {
14
+ if (this._firstTokenTime === void 0) this._firstTokenTime = Date.now();
15
+ }
16
+ recordToolCallStart(toolCallId) {
17
+ this._toolCallIds.add(toolCallId);
18
+ }
19
+ getTiming(outputTokens, totalText) {
20
+ const totalStreamTime = Date.now() - this._streamStartTime;
21
+ const tokenCount = outputTokens && outputTokens > 0 ? outputTokens : totalText ? Math.ceil(totalText.length / 4) : void 0;
22
+ const tokensPerSecond = tokenCount && totalStreamTime > 0 ? tokenCount / totalStreamTime * 1e3 : void 0;
23
+ return {
24
+ streamStartTime: this._streamStartTime,
25
+ ...this._firstTokenTime !== void 0 ? { firstTokenTime: this._firstTokenTime - this._streamStartTime } : void 0,
26
+ totalStreamTime,
27
+ ...tokenCount !== void 0 ? { tokenCount } : void 0,
28
+ ...tokensPerSecond !== void 0 ? { tokensPerSecond } : void 0,
29
+ totalChunks: this._totalChunks,
30
+ toolCallCount: this._toolCallIds.size
31
+ };
32
+ }
33
+ };
34
+ //#endregion
35
+ export { TimingTracker };
36
+
44
37
  //# sourceMappingURL=TimingTracker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimingTracker.js","sourceRoot":"","sources":["../../../src/core/accumulators/TimingTracker.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,aAAa;IAChB,gBAAgB,CAAS;IACzB,eAAe,CAAqB;IACpC,YAAY,GAAG,CAAC,CAAC;IACjB,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC;QACE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACrC,CAAC;IAED,WAAW;QACT,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,UAAkB;QACpC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,SAAS,CAAC,YAAqB,EAAE,SAAkB;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAEpD,MAAM,UAAU,GACd,YAAY,IAAI,YAAY,GAAG,CAAC;YAC9B,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;gBACjC,CAAC,CAAC,SAAS,CAAC;QAElB,MAAM,eAAe,GACnB,UAAU,IAAI,eAAe,GAAG,CAAC;YAC/B,CAAC,CAAC,CAAC,UAAU,GAAG,eAAe,CAAC,GAAG,IAAI;YACvC,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACL,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,GAAG,CAAC,IAAI,CAAC,eAAe,KAAK,SAAS;gBACpC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAAE;gBAClE,CAAC,CAAC,SAAS,CAAC;YACd,eAAe;YACf,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,aAAa,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;SACtC,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"TimingTracker.js","names":[],"sources":["../../../src/core/accumulators/TimingTracker.ts"],"sourcesContent":["import type { AssistantMessageTiming } from \"../utils/types\";\n\nexport class TimingTracker {\n private _streamStartTime: number;\n private _firstTokenTime: number | undefined;\n private _totalChunks = 0;\n private _toolCallIds = new Set<string>();\n\n constructor() {\n this._streamStartTime = Date.now();\n }\n\n recordChunk(): void {\n this._totalChunks++;\n }\n\n recordFirstToken(): void {\n if (this._firstTokenTime === undefined) {\n this._firstTokenTime = Date.now();\n }\n }\n\n recordToolCallStart(toolCallId: string): void {\n this._toolCallIds.add(toolCallId);\n }\n\n getTiming(outputTokens?: number, totalText?: string): AssistantMessageTiming {\n const now = Date.now();\n const totalStreamTime = now - this._streamStartTime;\n\n const tokenCount =\n outputTokens && outputTokens > 0\n ? outputTokens\n : totalText\n ? Math.ceil(totalText.length / 4)\n : undefined;\n\n const tokensPerSecond =\n tokenCount && totalStreamTime > 0\n ? (tokenCount / totalStreamTime) * 1000\n : undefined;\n\n return {\n streamStartTime: this._streamStartTime,\n ...(this._firstTokenTime !== undefined\n ? { firstTokenTime: this._firstTokenTime - this._streamStartTime }\n : undefined),\n totalStreamTime,\n ...(tokenCount !== undefined ? { tokenCount } : undefined),\n ...(tokensPerSecond !== undefined ? { tokensPerSecond } : undefined),\n totalChunks: this._totalChunks,\n toolCallCount: this._toolCallIds.size,\n };\n }\n}\n"],"mappings":";AAEA,IAAa,gBAAb,MAA2B;CACzB;CACA;CACA,eAAuB;CACvB,+BAAuB,IAAI,IAAY;CAEvC,cAAc;EACZ,KAAK,mBAAmB,KAAK,IAAI;CACnC;CAEA,cAAoB;EAClB,KAAK;CACP;CAEA,mBAAyB;EACvB,IAAI,KAAK,oBAAoB,KAAA,GAC3B,KAAK,kBAAkB,KAAK,IAAI;CAEpC;CAEA,oBAAoB,YAA0B;EAC5C,KAAK,aAAa,IAAI,UAAU;CAClC;CAEA,UAAU,cAAuB,WAA4C;EAE3E,MAAM,kBADM,KAAK,IACS,IAAI,KAAK;EAEnC,MAAM,aACJ,gBAAgB,eAAe,IAC3B,eACA,YACE,KAAK,KAAK,UAAU,SAAS,CAAC,IAC9B,KAAA;EAER,MAAM,kBACJ,cAAc,kBAAkB,IAC3B,aAAa,kBAAmB,MACjC,KAAA;EAEN,OAAO;GACL,iBAAiB,KAAK;GACtB,GAAI,KAAK,oBAAoB,KAAA,IACzB,EAAE,gBAAgB,KAAK,kBAAkB,KAAK,iBAAiB,IAC/D,KAAA;GACJ;GACA,GAAI,eAAe,KAAA,IAAY,EAAE,WAAW,IAAI,KAAA;GAChD,GAAI,oBAAoB,KAAA,IAAY,EAAE,gBAAgB,IAAI,KAAA;GAC1D,aAAa,KAAK;GAClB,eAAe,KAAK,aAAa;EACnC;CACF;AACF"}
@@ -1,14 +1,24 @@
1
- import type { AssistantStreamChunk } from "../AssistantStreamChunk.js";
2
- import type { AssistantMessage } from "../utils/types.js";
3
- import type { ReadonlyJSONValue } from "../../utils.js";
4
- export declare const createInitialMessage: ({ unstable_state, }?: {
5
- unstable_state?: ReadonlyJSONValue;
1
+ import { ReadonlyJSONValue } from "../../utils/json/json-value.js";
2
+ import { AssistantMessage } from "../utils/types.js";
3
+ import { AssistantStreamChunk } from "../AssistantStreamChunk.js";
4
+
5
+ //#region src/core/accumulators/assistant-message-accumulator.d.ts
6
+ declare const createInitialMessage: ({
7
+ unstable_state
8
+ }?: {
9
+ unstable_state?: ReadonlyJSONValue;
6
10
  }) => AssistantMessage;
7
- export declare class AssistantMessageAccumulator extends TransformStream<AssistantStreamChunk, AssistantMessage> {
8
- constructor({ initialMessage, throttle, onError, }?: {
9
- initialMessage?: AssistantMessage;
10
- throttle?: boolean;
11
- onError?: (error: string) => void;
12
- });
11
+ declare class AssistantMessageAccumulator extends TransformStream<AssistantStreamChunk, AssistantMessage> {
12
+ constructor({
13
+ initialMessage,
14
+ throttle,
15
+ onError
16
+ }?: {
17
+ initialMessage?: AssistantMessage;
18
+ throttle?: boolean;
19
+ onError?: (error: string) => void;
20
+ });
13
21
  }
22
+ //#endregion
23
+ export { AssistantMessageAccumulator, createInitialMessage };
14
24
  //# sourceMappingURL=assistant-message-accumulator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assistant-message-accumulator.d.ts","sourceRoot":"","sources":["../../../src/core/accumulators/assistant-message-accumulator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,mCAAgC;AAGpE,OAAO,KAAK,EACV,gBAAgB,EAUjB,0BAAuB;AAExB,OAAO,KAAK,EAAE,iBAAiB,EAAE,uBAAoB;AAGrD,eAAO,MAAM,oBAAoB,GAAI,sBAElC;IACD,cAAc,CAAC,EAAE,iBAAiB,CAAC;CAC/B,KAAG,gBAcP,CAAC;AA0XH,qBAAa,2BAA4B,SAAQ,eAAe,CAC9D,oBAAoB,EACpB,gBAAgB,CACjB;gBACa,EACV,cAAc,EACd,QAAQ,EACR,OAAO,GACR,GAAE;QACD,cAAc,CAAC,EAAE,gBAAgB,CAAC;QAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;KAC9B;CAoHP"}
1
+ {"version":3,"file":"assistant-message-accumulator.d.ts","names":[],"sources":["../../../src/core/accumulators/assistant-message-accumulator.ts"],"mappings":";;;;;cAmBa,oBAAA;EAAwB;AAAA;EAGnC,cAAA,GAAiB,iBAAA;AAAA,MACV,gBAAA;AAAA,cAwYI,2BAAA,SAAoC,eAAA,CAC/C,oBAAA,EACA,gBAAA;;IAGE,cAAA;IACA,QAAA;IACA;EAAA;IAEA,cAAA,GAAiB,gBAAA;IACjB,QAAA;IACA,OAAA,IAAW,KAAA;EAAA;AAAA"}