@jsonstudio/llms 0.4.3 → 0.4.4

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 (416) hide show
  1. package/README.md +3 -1
  2. package/dist/bridge/routecodex-adapter.js +6 -3
  3. package/dist/config-unified/enhanced-path-resolver.js +14 -6
  4. package/dist/config-unified/unified-config.js +103 -59
  5. package/dist/conversion/codec-registry.js +4 -2
  6. package/dist/conversion/hub/pipeline/hub-pipeline.js +4 -5
  7. package/dist/conversion/hub/process/chat-process.js +258 -41
  8. package/dist/conversion/hub/response/provider-response.js +8 -2
  9. package/dist/conversion/hub/tool-governance/engine.d.ts +16 -0
  10. package/dist/conversion/hub/tool-governance/engine.js +266 -0
  11. package/dist/conversion/hub/tool-governance/index.d.ts +3 -0
  12. package/dist/conversion/hub/tool-governance/index.js +2 -0
  13. package/dist/conversion/hub/tool-governance/rules.d.ts +2 -0
  14. package/dist/conversion/hub/tool-governance/rules.js +76 -0
  15. package/dist/conversion/hub/tool-governance/types.d.ts +38 -0
  16. package/dist/conversion/index.d.ts +1 -0
  17. package/dist/conversion/index.js +1 -0
  18. package/dist/conversion/responses/responses-openai-bridge.js +5 -3
  19. package/dist/sse/sse-to-json/builders/response-builder.js +2 -1
  20. package/dist/sse/sse-to-json/chat-sse-to-json-converter.js +37 -23
  21. package/dist/sse/sse-to-json/parsers/sse-parser.js +20 -12
  22. package/dist/sse/sse-to-json/responses-sse-to-json-converter.d.ts +1 -0
  23. package/dist/sse/sse-to-json/responses-sse-to-json-converter.js +10 -8
  24. package/dist/sse/types/chat-types.d.ts +9 -6
  25. package/dist/sse/types/conversion-context.d.ts +14 -11
  26. package/dist/sse/types/core-interfaces.d.ts +6 -2
  27. package/dist/sse/types/index.d.ts +1 -1
  28. package/dist/sse/types/responses-types.d.ts +20 -20
  29. package/dist/sse/types/sse-events.d.ts +4 -3
  30. package/dist/sse/types/stream-state.d.ts +34 -39
  31. package/dist/sse/types/utility-types.d.ts +47 -43
  32. package/dist/sse/types/utility-types.js +10 -13
  33. package/dist/tools/tool-registry.js +156 -98
  34. package/package.json +7 -7
  35. package/dist/api/index.d.ts +0 -10
  36. package/dist/api/index.js +0 -11
  37. package/dist/api/llmswitch-config.d.ts +0 -15
  38. package/dist/api/llmswitch-config.js +0 -415
  39. package/dist/api/llmswitch-types.d.ts +0 -412
  40. package/dist/api/llmswitch-types.js +0 -60
  41. package/dist/bridge/routecodex-adapter.d.ts +0 -74
  42. package/dist/config/index.d.ts +0 -3
  43. package/dist/config/index.js +0 -5
  44. package/dist/config-unified/enhanced-path-resolver.d.ts +0 -5
  45. package/dist/config-unified/unified-config.d.ts +0 -26
  46. package/dist/conversion/codec-registry.d.ts +0 -10
  47. package/dist/conversion/codecs/anthropic-openai-codec.d.ts +0 -23
  48. package/dist/conversion/codecs/gemini-openai-codec.d.ts +0 -16
  49. package/dist/conversion/codecs/openai-openai-codec.d.ts +0 -12
  50. package/dist/conversion/codecs/responses-openai-codec.d.ts +0 -12
  51. package/dist/conversion/config/config-manager.d.ts +0 -212
  52. package/dist/conversion/conversion-v3/adapters/index.d.ts +0 -2
  53. package/dist/conversion/conversion-v3/adapters/index.js +0 -1
  54. package/dist/conversion/conversion-v3/adapters/v3-to-standard-adapter.d.ts +0 -38
  55. package/dist/conversion/conversion-v3/adapters/v3-to-standard-adapter.js +0 -55
  56. package/dist/conversion/conversion-v3/compatibility/compatibility-profiles.d.ts +0 -22
  57. package/dist/conversion/conversion-v3/compatibility/compatibility-profiles.js +0 -84
  58. package/dist/conversion/conversion-v3/compatibility/compatibility-stages.d.ts +0 -4
  59. package/dist/conversion/conversion-v3/compatibility/compatibility-stages.js +0 -285
  60. package/dist/conversion/conversion-v3/compatibility/index.d.ts +0 -3
  61. package/dist/conversion/conversion-v3/compatibility/index.js +0 -2
  62. package/dist/conversion/conversion-v3/config/default-configs.d.ts +0 -48
  63. package/dist/conversion/conversion-v3/config/default-configs.js +0 -1007
  64. package/dist/conversion/conversion-v3/config/index.d.ts +0 -5
  65. package/dist/conversion/conversion-v3/config/index.js +0 -5
  66. package/dist/conversion/conversion-v3/config/pipeline-config-manager.d.ts +0 -49
  67. package/dist/conversion/conversion-v3/config/pipeline-config-manager.js +0 -65
  68. package/dist/conversion/conversion-v3/index.d.ts +0 -11
  69. package/dist/conversion/conversion-v3/index.js +0 -17
  70. package/dist/conversion/conversion-v3/nodes/index.d.ts +0 -56
  71. package/dist/conversion/conversion-v3/nodes/index.js +0 -149
  72. package/dist/conversion/conversion-v3/nodes/input/anthropic-input-node.d.ts +0 -25
  73. package/dist/conversion/conversion-v3/nodes/input/anthropic-input-node.js +0 -56
  74. package/dist/conversion/conversion-v3/nodes/input/base-input-node.d.ts +0 -75
  75. package/dist/conversion/conversion-v3/nodes/input/base-input-node.js +0 -237
  76. package/dist/conversion/conversion-v3/nodes/input/chat-input-node.d.ts +0 -25
  77. package/dist/conversion/conversion-v3/nodes/input/chat-input-node.js +0 -56
  78. package/dist/conversion/conversion-v3/nodes/input/chat-shape-helpers.d.ts +0 -4
  79. package/dist/conversion/conversion-v3/nodes/input/chat-shape-helpers.js +0 -197
  80. package/dist/conversion/conversion-v3/nodes/input/gemini-input-node.d.ts +0 -16
  81. package/dist/conversion/conversion-v3/nodes/input/gemini-input-node.js +0 -125
  82. package/dist/conversion/conversion-v3/nodes/input/index.d.ts +0 -8
  83. package/dist/conversion/conversion-v3/nodes/input/index.js +0 -8
  84. package/dist/conversion/conversion-v3/nodes/input/input-decision.d.ts +0 -46
  85. package/dist/conversion/conversion-v3/nodes/input/input-decision.js +0 -125
  86. package/dist/conversion/conversion-v3/nodes/input/responses-input-node.d.ts +0 -20
  87. package/dist/conversion/conversion-v3/nodes/input/responses-input-node.js +0 -51
  88. package/dist/conversion/conversion-v3/nodes/output/anthropic-output-node.d.ts +0 -71
  89. package/dist/conversion/conversion-v3/nodes/output/anthropic-output-node.js +0 -320
  90. package/dist/conversion/conversion-v3/nodes/output/base-output-node.d.ts +0 -116
  91. package/dist/conversion/conversion-v3/nodes/output/base-output-node.js +0 -512
  92. package/dist/conversion/conversion-v3/nodes/output/index.d.ts +0 -7
  93. package/dist/conversion/conversion-v3/nodes/output/index.js +0 -7
  94. package/dist/conversion/conversion-v3/nodes/output/openai-output-node.d.ts +0 -71
  95. package/dist/conversion/conversion-v3/nodes/output/openai-output-node.js +0 -293
  96. package/dist/conversion/conversion-v3/nodes/output/output-decision.d.ts +0 -68
  97. package/dist/conversion/conversion-v3/nodes/output/output-decision.js +0 -161
  98. package/dist/conversion/conversion-v3/nodes/output/responses-output-node.d.ts +0 -64
  99. package/dist/conversion/conversion-v3/nodes/output/responses-output-node.js +0 -323
  100. package/dist/conversion/conversion-v3/nodes/process/base-process-node.d.ts +0 -72
  101. package/dist/conversion/conversion-v3/nodes/process/base-process-node.js +0 -246
  102. package/dist/conversion/conversion-v3/nodes/process/chat-process-node.d.ts +0 -135
  103. package/dist/conversion/conversion-v3/nodes/process/chat-process-node.js +0 -854
  104. package/dist/conversion/conversion-v3/nodes/process/compatibility-process-node.d.ts +0 -29
  105. package/dist/conversion/conversion-v3/nodes/process/compatibility-process-node.js +0 -181
  106. package/dist/conversion/conversion-v3/nodes/process/index.d.ts +0 -10
  107. package/dist/conversion/conversion-v3/nodes/process/index.js +0 -10
  108. package/dist/conversion/conversion-v3/nodes/process/passthrough-process-node.d.ts +0 -59
  109. package/dist/conversion/conversion-v3/nodes/process/passthrough-process-node.js +0 -243
  110. package/dist/conversion/conversion-v3/nodes/process/response-process-node.d.ts +0 -17
  111. package/dist/conversion/conversion-v3/nodes/process/response-process-node.js +0 -213
  112. package/dist/conversion/conversion-v3/nodes/process/tool-process-node.d.ts +0 -30
  113. package/dist/conversion/conversion-v3/nodes/process/tool-process-node.js +0 -360
  114. package/dist/conversion/conversion-v3/nodes/process/virtual-router-process-node.d.ts +0 -40
  115. package/dist/conversion/conversion-v3/nodes/process/virtual-router-process-node.js +0 -430
  116. package/dist/conversion/conversion-v3/nodes/response/anthropic-response-input-node.d.ts +0 -12
  117. package/dist/conversion/conversion-v3/nodes/response/anthropic-response-input-node.js +0 -129
  118. package/dist/conversion/conversion-v3/nodes/response/chat-to-responses-response-node.d.ts +0 -15
  119. package/dist/conversion/conversion-v3/nodes/response/chat-to-responses-response-node.js +0 -57
  120. package/dist/conversion/conversion-v3/nodes/response/index.d.ts +0 -4
  121. package/dist/conversion/conversion-v3/nodes/response/index.js +0 -4
  122. package/dist/conversion/conversion-v3/nodes/response/openai-response-input-node.d.ts +0 -15
  123. package/dist/conversion/conversion-v3/nodes/response/openai-response-input-node.js +0 -87
  124. package/dist/conversion/conversion-v3/nodes/response/response-utils.d.ts +0 -1
  125. package/dist/conversion/conversion-v3/nodes/response/response-utils.js +0 -1
  126. package/dist/conversion/conversion-v3/nodes/response/responses-response-input-node.d.ts +0 -12
  127. package/dist/conversion/conversion-v3/nodes/response/responses-response-input-node.js +0 -67
  128. package/dist/conversion/conversion-v3/nodes/sse/index.d.ts +0 -3
  129. package/dist/conversion/conversion-v3/nodes/sse/index.js +0 -3
  130. package/dist/conversion/conversion-v3/nodes/sse/sse-input-node.d.ts +0 -27
  131. package/dist/conversion/conversion-v3/nodes/sse/sse-input-node.js +0 -165
  132. package/dist/conversion/conversion-v3/nodes/sse/sse-output-node.d.ts +0 -19
  133. package/dist/conversion/conversion-v3/nodes/sse/sse-output-node.js +0 -267
  134. package/dist/conversion/conversion-v3/nodes/sse/sse-passthrough-node.d.ts +0 -18
  135. package/dist/conversion/conversion-v3/nodes/sse/sse-passthrough-node.js +0 -48
  136. package/dist/conversion/conversion-v3/pipelines/index.d.ts +0 -6
  137. package/dist/conversion/conversion-v3/pipelines/index.js +0 -6
  138. package/dist/conversion/conversion-v3/pipelines/super-pipeline.d.ts +0 -112
  139. package/dist/conversion/conversion-v3/pipelines/super-pipeline.js +0 -566
  140. package/dist/conversion/conversion-v3/response/provider-response-converter.d.ts +0 -28
  141. package/dist/conversion/conversion-v3/response/provider-response-converter.js +0 -249
  142. package/dist/conversion/conversion-v3/sse/index.d.ts +0 -140
  143. package/dist/conversion/conversion-v3/sse/index.js +0 -115
  144. package/dist/conversion/conversion-v3/sse/json-to-sse/anthropic-json-to-sse-converter.d.ts +0 -11
  145. package/dist/conversion/conversion-v3/sse/json-to-sse/anthropic-json-to-sse-converter.js +0 -79
  146. package/dist/conversion/conversion-v3/sse/json-to-sse/chat-json-to-sse-converter.d.ts +0 -79
  147. package/dist/conversion/conversion-v3/sse/json-to-sse/chat-json-to-sse-converter.js +0 -296
  148. package/dist/conversion/conversion-v3/sse/json-to-sse/event-generators/chat.d.ts +0 -55
  149. package/dist/conversion/conversion-v3/sse/json-to-sse/event-generators/chat.js +0 -233
  150. package/dist/conversion/conversion-v3/sse/json-to-sse/event-generators/responses.d.ts +0 -99
  151. package/dist/conversion/conversion-v3/sse/json-to-sse/event-generators/responses.js +0 -599
  152. package/dist/conversion/conversion-v3/sse/json-to-sse/index.d.ts +0 -6
  153. package/dist/conversion/conversion-v3/sse/json-to-sse/index.js +0 -7
  154. package/dist/conversion/conversion-v3/sse/json-to-sse/responses-json-to-sse-converter.d.ts +0 -79
  155. package/dist/conversion/conversion-v3/sse/json-to-sse/responses-json-to-sse-converter.js +0 -322
  156. package/dist/conversion/conversion-v3/sse/json-to-sse/sequencers/chat-sequencer.d.ts +0 -37
  157. package/dist/conversion/conversion-v3/sse/json-to-sse/sequencers/chat-sequencer.js +0 -218
  158. package/dist/conversion/conversion-v3/sse/json-to-sse/sequencers/responses-sequencer.d.ts +0 -40
  159. package/dist/conversion/conversion-v3/sse/json-to-sse/sequencers/responses-sequencer.js +0 -263
  160. package/dist/conversion/conversion-v3/sse/registry/sse-codec-registry.d.ts +0 -32
  161. package/dist/conversion/conversion-v3/sse/registry/sse-codec-registry.js +0 -106
  162. package/dist/conversion/conversion-v3/sse/shared/chat-serializer.d.ts +0 -4
  163. package/dist/conversion/conversion-v3/sse/shared/chat-serializer.js +0 -40
  164. package/dist/conversion/conversion-v3/sse/shared/constants.d.ts +0 -272
  165. package/dist/conversion/conversion-v3/sse/shared/constants.js +0 -321
  166. package/dist/conversion/conversion-v3/sse/shared/serializers/base-serializer.d.ts +0 -158
  167. package/dist/conversion/conversion-v3/sse/shared/serializers/base-serializer.js +0 -210
  168. package/dist/conversion/conversion-v3/sse/shared/serializers/chat-event-serializer.d.ts +0 -82
  169. package/dist/conversion/conversion-v3/sse/shared/serializers/chat-event-serializer.js +0 -275
  170. package/dist/conversion/conversion-v3/sse/shared/serializers/index.d.ts +0 -39
  171. package/dist/conversion/conversion-v3/sse/shared/serializers/index.js +0 -54
  172. package/dist/conversion/conversion-v3/sse/shared/serializers/responses-event-serializer.d.ts +0 -123
  173. package/dist/conversion/conversion-v3/sse/shared/serializers/responses-event-serializer.js +0 -356
  174. package/dist/conversion/conversion-v3/sse/shared/serializers/types.d.ts +0 -51
  175. package/dist/conversion/conversion-v3/sse/shared/serializers/types.js +0 -4
  176. package/dist/conversion/conversion-v3/sse/shared/utils.d.ts +0 -254
  177. package/dist/conversion/conversion-v3/sse/shared/utils.js +0 -543
  178. package/dist/conversion/conversion-v3/sse/shared/writer.d.ts +0 -111
  179. package/dist/conversion/conversion-v3/sse/shared/writer.js +0 -268
  180. package/dist/conversion/conversion-v3/sse/sse-to-json/anthropic-sse-to-json-converter.d.ts +0 -13
  181. package/dist/conversion/conversion-v3/sse/sse-to-json/anthropic-sse-to-json-converter.js +0 -139
  182. package/dist/conversion/conversion-v3/sse/sse-to-json/builders/response-builder.d.ts +0 -165
  183. package/dist/conversion/conversion-v3/sse/sse-to-json/builders/response-builder.js +0 -776
  184. package/dist/conversion/conversion-v3/sse/sse-to-json/chat-sse-to-json-converter.d.ts +0 -106
  185. package/dist/conversion/conversion-v3/sse/sse-to-json/chat-sse-to-json-converter.js +0 -540
  186. package/dist/conversion/conversion-v3/sse/sse-to-json/index.d.ts +0 -6
  187. package/dist/conversion/conversion-v3/sse/sse-to-json/index.js +0 -7
  188. package/dist/conversion/conversion-v3/sse/sse-to-json/parsers/sse-parser.d.ts +0 -73
  189. package/dist/conversion/conversion-v3/sse/sse-to-json/parsers/sse-parser.js +0 -332
  190. package/dist/conversion/conversion-v3/sse/sse-to-json/responses-sse-to-json-converter.d.ts +0 -59
  191. package/dist/conversion/conversion-v3/sse/sse-to-json/responses-sse-to-json-converter.js +0 -270
  192. package/dist/conversion/conversion-v3/sse/types/anthropic-types.d.ts +0 -87
  193. package/dist/conversion/conversion-v3/sse/types/anthropic-types.js +0 -5
  194. package/dist/conversion/conversion-v3/sse/types/chat-types.d.ts +0 -308
  195. package/dist/conversion/conversion-v3/sse/types/chat-types.js +0 -32
  196. package/dist/conversion/conversion-v3/sse/types/conversion-context.d.ts +0 -211
  197. package/dist/conversion/conversion-v3/sse/types/conversion-context.js +0 -20
  198. package/dist/conversion/conversion-v3/sse/types/core-interfaces.d.ts +0 -90
  199. package/dist/conversion/conversion-v3/sse/types/core-interfaces.js +0 -5
  200. package/dist/conversion/conversion-v3/sse/types/index.d.ts +0 -14
  201. package/dist/conversion/conversion-v3/sse/types/index.js +0 -7
  202. package/dist/conversion/conversion-v3/sse/types/responses-types.d.ts +0 -328
  203. package/dist/conversion/conversion-v3/sse/types/responses-types.js +0 -38
  204. package/dist/conversion/conversion-v3/sse/types/sse-events.d.ts +0 -180
  205. package/dist/conversion/conversion-v3/sse/types/sse-events.js +0 -150
  206. package/dist/conversion/conversion-v3/sse/types/stream-state.d.ts +0 -204
  207. package/dist/conversion/conversion-v3/sse/types/stream-state.js +0 -44
  208. package/dist/conversion/conversion-v3/sse/types/utility-types.d.ts +0 -230
  209. package/dist/conversion/conversion-v3/sse/types/utility-types.js +0 -49
  210. package/dist/conversion/conversion-v3/standards/context-adapter.d.ts +0 -146
  211. package/dist/conversion/conversion-v3/standards/context-adapter.js +0 -438
  212. package/dist/conversion/conversion-v3/standards/errors.d.ts +0 -38
  213. package/dist/conversion/conversion-v3/standards/errors.js +0 -27
  214. package/dist/conversion/conversion-v3/standards/index.d.ts +0 -15
  215. package/dist/conversion/conversion-v3/standards/index.js +0 -11
  216. package/dist/conversion/conversion-v3/standards/node-capabilities.d.ts +0 -123
  217. package/dist/conversion/conversion-v3/standards/node-capabilities.js +0 -330
  218. package/dist/conversion/conversion-v3/standards/pipeline-context.d.ts +0 -237
  219. package/dist/conversion/conversion-v3/standards/pipeline-context.js +0 -84
  220. package/dist/conversion/conversion-v3/standards/pipeline-node.d.ts +0 -196
  221. package/dist/conversion/conversion-v3/standards/pipeline-node.js +0 -316
  222. package/dist/conversion/conversion-v3/standards/snapshot-handles.d.ts +0 -24
  223. package/dist/conversion/conversion-v3/standards/snapshot-handles.js +0 -49
  224. package/dist/conversion/conversion-v3/types/config-types.d.ts +0 -242
  225. package/dist/conversion/conversion-v3/types/config-types.js +0 -13
  226. package/dist/conversion/conversion-v3/types/index.d.ts +0 -8
  227. package/dist/conversion/conversion-v3/types/index.js +0 -11
  228. package/dist/conversion/conversion-v3/types/node-types.d.ts +0 -211
  229. package/dist/conversion/conversion-v3/types/node-types.js +0 -20
  230. package/dist/conversion/conversion-v3/types/pipeline-types.d.ts +0 -246
  231. package/dist/conversion/conversion-v3/types/pipeline-types.js +0 -26
  232. package/dist/conversion/conversion-v3/types/request-types.d.ts +0 -293
  233. package/dist/conversion/conversion-v3/types/request-types.js +0 -26
  234. package/dist/conversion/conversion-v3/utils/provider-payload-sanitizer.d.ts +0 -10
  235. package/dist/conversion/conversion-v3/utils/provider-payload-sanitizer.js +0 -103
  236. package/dist/conversion/conversion-v3/validations/index.d.ts +0 -8
  237. package/dist/conversion/conversion-v3/validations/index.js +0 -7
  238. package/dist/conversion/conversion-v3/validations/node-graph-validator.d.ts +0 -116
  239. package/dist/conversion/conversion-v3/validations/node-graph-validator.js +0 -505
  240. package/dist/conversion/conversion-v3/validations/tool-governance-enforcer.d.ts +0 -139
  241. package/dist/conversion/conversion-v3/validations/tool-governance-enforcer.js +0 -338
  242. package/dist/conversion/hub/config/types.d.ts +0 -26
  243. package/dist/conversion/hub/core/detour-registry.d.ts +0 -9
  244. package/dist/conversion/hub/core/hub-context.d.ts +0 -21
  245. package/dist/conversion/hub/core/index.d.ts +0 -3
  246. package/dist/conversion/hub/core/stage-driver.d.ts +0 -30
  247. package/dist/conversion/hub/format-adapters/anthropic-format-adapter.d.ts +0 -16
  248. package/dist/conversion/hub/format-adapters/chat-format-adapter.d.ts +0 -17
  249. package/dist/conversion/hub/format-adapters/gemini-format-adapter.d.ts +0 -16
  250. package/dist/conversion/hub/format-adapters/index.d.ts +0 -21
  251. package/dist/conversion/hub/format-adapters/responses-format-adapter.d.ts +0 -17
  252. package/dist/conversion/hub/hub-feature.d.ts +0 -1
  253. package/dist/conversion/hub/node-support.d.ts +0 -19
  254. package/dist/conversion/hub/pipeline/hub-pipeline.d.ts +0 -68
  255. package/dist/conversion/hub/pipelines/inbound.d.ts +0 -22
  256. package/dist/conversion/hub/pipelines/outbound.d.ts +0 -22
  257. package/dist/conversion/hub/process/chat-process.d.ts +0 -13
  258. package/dist/conversion/hub/registry.d.ts +0 -28
  259. package/dist/conversion/hub/response/chat-response-utils.d.ts +0 -6
  260. package/dist/conversion/hub/response/provider-response.d.ts +0 -20
  261. package/dist/conversion/hub/response/response-mappers.d.ts +0 -19
  262. package/dist/conversion/hub/response/response-runtime.d.ts +0 -3
  263. package/dist/conversion/hub/semantic-mappers/anthropic-mapper.d.ts +0 -7
  264. package/dist/conversion/hub/semantic-mappers/chat-mapper.d.ts +0 -7
  265. package/dist/conversion/hub/semantic-mappers/gemini-mapper.d.ts +0 -7
  266. package/dist/conversion/hub/semantic-mappers/index.d.ts +0 -4
  267. package/dist/conversion/hub/semantic-mappers/responses-mapper.d.ts +0 -21
  268. package/dist/conversion/hub/snapshot-recorder.d.ts +0 -12
  269. package/dist/conversion/hub/standardized-bridge.d.ts +0 -12
  270. package/dist/conversion/hub/types/chat-envelope.d.ts +0 -67
  271. package/dist/conversion/hub/types/chat-schema.d.ts +0 -112
  272. package/dist/conversion/hub/types/errors.d.ts +0 -5
  273. package/dist/conversion/hub/types/format-envelope.d.ts +0 -7
  274. package/dist/conversion/hub/types/index.d.ts +0 -6
  275. package/dist/conversion/hub/types/json.d.ts +0 -9
  276. package/dist/conversion/hub/types/node.d.ts +0 -31
  277. package/dist/conversion/hub/types/standardized.d.ts +0 -94
  278. package/dist/conversion/responses/responses-openai-bridge.d.ts +0 -95
  279. package/dist/conversion/schema-validator.d.ts +0 -7
  280. package/dist/conversion/shared/args-mapping.d.ts +0 -18
  281. package/dist/conversion/shared/chat-request-filters.d.ts +0 -9
  282. package/dist/conversion/shared/jsonish.d.ts +0 -3
  283. package/dist/conversion/shared/mcp-injection.d.ts +0 -2
  284. package/dist/conversion/shared/media.d.ts +0 -1
  285. package/dist/conversion/shared/openai-finalizer.d.ts +0 -9
  286. package/dist/conversion/shared/openai-message-normalize.d.ts +0 -1
  287. package/dist/conversion/shared/payload-budget.d.ts +0 -13
  288. package/dist/conversion/shared/reasoning-mapping.d.ts +0 -5
  289. package/dist/conversion/shared/responses-conversation-store.d.ts +0 -41
  290. package/dist/conversion/shared/responses-id-utils.d.ts +0 -7
  291. package/dist/conversion/shared/responses-instructions.d.ts +0 -1
  292. package/dist/conversion/shared/responses-metadata.d.ts +0 -1
  293. package/dist/conversion/shared/responses-request-adapter.d.ts +0 -66
  294. package/dist/conversion/shared/snapshot-hooks.d.ts +0 -12
  295. package/dist/conversion/shared/streaming-text-extractor.d.ts +0 -26
  296. package/dist/conversion/shared/text-markup-normalizer.d.ts +0 -9
  297. package/dist/conversion/shared/tool-canonicalizer.d.ts +0 -2
  298. package/dist/conversion/shared/tool-filter-pipeline.d.ts +0 -17
  299. package/dist/conversion/shared/tool-governor.d.ts +0 -27
  300. package/dist/conversion/shared/tool-harvester.d.ts +0 -31
  301. package/dist/conversion/shared/tool-mapping.d.ts +0 -10
  302. package/dist/conversion/shared/tooling.d.ts +0 -26
  303. package/dist/conversion/types.d.ts +0 -33
  304. package/dist/core/index.d.ts +0 -6
  305. package/dist/core/index.js +0 -9
  306. package/dist/core/llmswitch-engine-v2.d.ts +0 -132
  307. package/dist/core/llmswitch-engine-v2.js +0 -649
  308. package/dist/core/llmswitch-factory-v2.d.ts +0 -123
  309. package/dist/core/llmswitch-factory-v2.js +0 -521
  310. package/dist/endpoints/base-endpoint-handler.d.ts +0 -128
  311. package/dist/endpoints/base-endpoint-handler.js +0 -545
  312. package/dist/endpoints/chat-endpoint-handler.d.ts +0 -115
  313. package/dist/endpoints/chat-endpoint-handler.js +0 -218
  314. package/dist/endpoints/endpoint-router.d.ts +0 -127
  315. package/dist/endpoints/endpoint-router.js +0 -438
  316. package/dist/endpoints/index.d.ts +0 -13
  317. package/dist/endpoints/index.js +0 -11
  318. package/dist/endpoints/messages-endpoint-handler.d.ts +0 -171
  319. package/dist/endpoints/messages-endpoint-handler.js +0 -238
  320. package/dist/endpoints/responses-endpoint-handler.d.ts +0 -147
  321. package/dist/endpoints/responses-endpoint-handler.js +0 -233
  322. package/dist/filters/builtin/add-fields-filter.d.ts +0 -8
  323. package/dist/filters/builtin/blacklist-filter.d.ts +0 -8
  324. package/dist/filters/builtin/whitelist-filter.d.ts +0 -8
  325. package/dist/filters/engine.d.ts +0 -16
  326. package/dist/filters/index.d.ts +0 -19
  327. package/dist/filters/special/request-streaming-to-nonstreaming.d.ts +0 -12
  328. package/dist/filters/special/request-tool-choice-policy.d.ts +0 -11
  329. package/dist/filters/special/request-tool-list-filter.d.ts +0 -11
  330. package/dist/filters/special/request-toolcalls-stringify.d.ts +0 -10
  331. package/dist/filters/special/request-tools-normalize.d.ts +0 -12
  332. package/dist/filters/special/response-finish-invariants.d.ts +0 -11
  333. package/dist/filters/special/response-openai-to-responses-bridge.d.ts +0 -13
  334. package/dist/filters/special/response-tool-arguments-blacklist.d.ts +0 -12
  335. package/dist/filters/special/response-tool-arguments-schema-converge.d.ts +0 -13
  336. package/dist/filters/special/response-tool-arguments-stringify.d.ts +0 -9
  337. package/dist/filters/special/response-tool-arguments-toon-decode.d.ts +0 -10
  338. package/dist/filters/special/response-tool-arguments-whitelist.d.ts +0 -11
  339. package/dist/filters/special/response-tool-text-canonicalize.d.ts +0 -10
  340. package/dist/filters/special/tool-filter-hooks.d.ts +0 -19
  341. package/dist/filters/special/tool-post-constraints.d.ts +0 -31
  342. package/dist/filters/types.d.ts +0 -68
  343. package/dist/filters/utils/fieldmap-loader.d.ts +0 -2
  344. package/dist/filters/utils/snapshot-writer.d.ts +0 -10
  345. package/dist/guidance/index.d.ts +0 -3
  346. package/dist/hooks/hooks-integration.d.ts +0 -161
  347. package/dist/hooks/hooks-integration.js +0 -519
  348. package/dist/hooks/index.d.ts +0 -10
  349. package/dist/hooks/index.js +0 -13
  350. package/dist/html-to-markdown.d.ts +0 -5
  351. package/dist/html-to-markdown.js +0 -66
  352. package/dist/http/sse-response.d.ts +0 -22
  353. package/dist/router/virtual-router/bootstrap.d.ts +0 -6
  354. package/dist/router/virtual-router/classifier.d.ts +0 -10
  355. package/dist/router/virtual-router/engine.d.ts +0 -35
  356. package/dist/router/virtual-router/error-center.d.ts +0 -10
  357. package/dist/router/virtual-router/features.d.ts +0 -3
  358. package/dist/router/virtual-router/health-manager.d.ts +0 -18
  359. package/dist/router/virtual-router/load-balancer.d.ts +0 -18
  360. package/dist/router/virtual-router/provider-registry.d.ts +0 -11
  361. package/dist/router/virtual-router/types.d.ts +0 -206
  362. package/dist/sse/json-to-sse/anthropic-json-to-sse-converter.d.ts +0 -11
  363. package/dist/sse/json-to-sse/chat-json-to-sse-converter.d.ts +0 -79
  364. package/dist/sse/json-to-sse/event-generators/chat.d.ts +0 -55
  365. package/dist/sse/json-to-sse/event-generators/responses.d.ts +0 -99
  366. package/dist/sse/json-to-sse/index.d.ts +0 -6
  367. package/dist/sse/json-to-sse/responses-json-to-sse-converter.d.ts +0 -79
  368. package/dist/sse/json-to-sse/sequencers/chat-sequencer.d.ts +0 -37
  369. package/dist/sse/json-to-sse/sequencers/responses-sequencer.d.ts +0 -40
  370. package/dist/sse/registry/sse-codec-registry.d.ts +0 -32
  371. package/dist/sse/shared/chat-serializer.d.ts +0 -4
  372. package/dist/sse/shared/constants.d.ts +0 -272
  373. package/dist/sse/shared/serializers/base-serializer.d.ts +0 -158
  374. package/dist/sse/shared/serializers/chat-event-serializer.d.ts +0 -82
  375. package/dist/sse/shared/serializers/index.d.ts +0 -39
  376. package/dist/sse/shared/serializers/responses-event-serializer.d.ts +0 -123
  377. package/dist/sse/shared/serializers/types.d.ts +0 -51
  378. package/dist/sse/shared/utils.d.ts +0 -254
  379. package/dist/sse/shared/writer.d.ts +0 -111
  380. package/dist/sse/sse-to-json/anthropic-sse-to-json-converter.d.ts +0 -13
  381. package/dist/sse/sse-to-json/builders/response-builder.d.ts +0 -165
  382. package/dist/sse/sse-to-json/chat-sse-to-json-converter.d.ts +0 -106
  383. package/dist/sse/sse-to-json/index.d.ts +0 -6
  384. package/dist/sse/sse-to-json/parsers/sse-parser.d.ts +0 -73
  385. package/dist/sse/types/anthropic-types.d.ts +0 -87
  386. package/dist/tools/proxy/anthropic-tool-proxy.d.ts +0 -19
  387. package/dist/tools/proxy/anthropic-tool-proxy.js +0 -57
  388. package/dist/tools/proxy/executors/web-fetch.d.ts +0 -6
  389. package/dist/tools/proxy/executors/web-fetch.js +0 -39
  390. package/dist/tools/proxy/registry.d.ts +0 -8
  391. package/dist/tools/proxy/registry.js +0 -14
  392. package/dist/tools/proxy/types.d.ts +0 -29
  393. package/dist/tools/tool-registry.d.ts +0 -8
  394. package/dist/tools/web-fetch-html.d.ts +0 -15
  395. package/dist/tools/web-fetch-html.js +0 -83
  396. package/dist/utils/conversion-adapter.d.ts +0 -65
  397. package/dist/utils/conversion-adapter.js +0 -183
  398. package/dist/utils/error-factory.d.ts +0 -88
  399. package/dist/utils/error-factory.js +0 -138
  400. package/dist/utils/error-utils.d.ts +0 -334
  401. package/dist/utils/error-utils.js +0 -782
  402. package/dist/utils/index.d.ts +0 -8
  403. package/dist/utils/index.js +0 -13
  404. package/dist/utils/performance-utils.d.ts +0 -205
  405. package/dist/utils/performance-utils.js +0 -440
  406. package/dist/utils/profile-mapper.d.ts +0 -32
  407. package/dist/utils/profile-mapper.js +0 -269
  408. package/dist/utils/request-processor.d.ts +0 -52
  409. package/dist/utils/request-processor.js +0 -210
  410. package/dist/utils/request-utils.d.ts +0 -117
  411. package/dist/utils/request-utils.js +0 -333
  412. package/dist/utils/response-utils.d.ts +0 -127
  413. package/dist/utils/response-utils.js +0 -516
  414. package/dist/utils/token-counter.d.ts +0 -89
  415. package/dist/utils/token-counter.js +0 -541
  416. /package/dist/{tools/proxy → conversion/hub/tool-governance}/types.js +0 -0
@@ -1,268 +0,0 @@
1
- /**
2
- * 统一的SSE事件流写入器
3
- * 处理backpressure、超时、心跳、错误处理等通用流管理逻辑
4
- */
5
- import { defaultResponsesEventSerializer } from './serializers/index.js';
6
- import { TimeUtils } from './utils.js';
7
- import { serializeChatEventToSSE } from './chat-serializer.js';
8
- /**
9
- * 统一的SSE流写入器
10
- */
11
- export class StreamWriter {
12
- stream;
13
- config;
14
- stats;
15
- heartbeatInterval;
16
- isActive = true;
17
- writeQueue = [];
18
- isWriting = false;
19
- constructor(stream, config = {}) {
20
- this.stream = stream;
21
- this.config = {
22
- timeoutMs: config.timeoutMs || 30000,
23
- enableHeartbeat: config.enableHeartbeat ?? false,
24
- heartbeatIntervalMs: config.heartbeatIntervalMs || 15000,
25
- maxBufferSize: config.maxBufferSize || 1000,
26
- enableBackpressure: config.enableBackpressure ?? true,
27
- onEvent: config.onEvent || (() => { }),
28
- onError: config.onError || (() => { }),
29
- onComplete: config.onComplete || (() => { })
30
- };
31
- this.stats = {
32
- totalEvents: 0,
33
- bytesWritten: 0,
34
- startTime: TimeUtils.now(),
35
- lastWriteTime: 0,
36
- errors: 0
37
- };
38
- this.setupHeartbeat();
39
- this.setupErrorHandling();
40
- }
41
- /**
42
- * 设置心跳
43
- */
44
- setupHeartbeat() {
45
- if (!this.config.enableHeartbeat)
46
- return;
47
- this.heartbeatInterval = setInterval(() => {
48
- if (this.isActive) {
49
- this.sendHeartbeat();
50
- }
51
- }, this.config.heartbeatIntervalMs);
52
- }
53
- /**
54
- * 设置错误处理
55
- */
56
- setupErrorHandling() {
57
- this.stream.on('error', (error) => {
58
- this.stats.errors++;
59
- this.config.onError(error);
60
- });
61
- this.stream.on('close', () => {
62
- this.cleanup();
63
- this.config.onComplete();
64
- });
65
- }
66
- /**
67
- * 发送心跳事件
68
- */
69
- sendHeartbeat() {
70
- const heartbeatEvent = {
71
- type: 'heartbeat',
72
- timestamp: TimeUtils.now(),
73
- data: '',
74
- sequenceNumber: -1
75
- };
76
- this.writeEvent(heartbeatEvent);
77
- }
78
- /**
79
- * 写入单个事件
80
- */
81
- async writeEvent(event) {
82
- if (!this.isActive)
83
- return;
84
- try {
85
- // 触发事件回调
86
- this.config.onEvent(event);
87
- // 序列化事件 - 使用协议标识进行类型识别
88
- let serialized;
89
- if (event && event.protocol === 'chat') {
90
- serialized = serializeChatEventToSSE(event);
91
- }
92
- else if (event && event.protocol === 'responses') {
93
- serialized = this.serializeResponsesEvent(event);
94
- }
95
- else {
96
- // 兜底处理:尝试通过事件字段识别
97
- const eventField = event.event;
98
- if (eventField === 'chat_chunk' || eventField === 'chat.done' || eventField === 'error' || eventField === 'ping') {
99
- serialized = serializeChatEventToSSE(event);
100
- }
101
- else {
102
- serialized = this.serializeResponsesEvent(event);
103
- }
104
- }
105
- const needsBackpressure = this.config.enableBackpressure && !this.stream.write(serialized);
106
- if (needsBackpressure) {
107
- await this.handleBackpressure();
108
- }
109
- // 更新统计
110
- this.stats.totalEvents++;
111
- this.stats.bytesWritten += Buffer.byteLength(serialized, 'utf8');
112
- this.stats.lastWriteTime = TimeUtils.now();
113
- }
114
- catch (error) {
115
- this.stats.errors++;
116
- this.config.onError(error);
117
- }
118
- }
119
- /**
120
- * 处理背压
121
- */
122
- async handleBackpressure() {
123
- return new Promise((resolve) => {
124
- const checkDrain = () => {
125
- if (this.stream.writableLength < this.config.maxBufferSize) {
126
- this.stream.removeListener('drain', checkDrain);
127
- resolve();
128
- }
129
- };
130
- this.stream.on('drain', checkDrain);
131
- });
132
- }
133
- /**
134
- * 序列化Responses事件(临时实现,需要 ResponsesSerializer)
135
- * TODO: 等Responses协议修复后,实现完整的ResponsesSerializer
136
- * 当前为临时实现,仅用于避免编译错误
137
- */
138
- serializeResponsesEvent(event) {
139
- try {
140
- if (typeof event.type === 'string' && event.type.startsWith('response.')) {
141
- return defaultResponsesEventSerializer.serializeToWire(event);
142
- }
143
- }
144
- catch {
145
- // ignore and fallback
146
- }
147
- const rawData = event.data;
148
- const dataPayload = typeof rawData === 'string'
149
- ? rawData
150
- : JSON.stringify({
151
- type: event.type,
152
- ...(rawData ?? {})
153
- });
154
- return `event: ${event.type}\ndata: ${dataPayload}\n\n`;
155
- }
156
- /**
157
- * 异步写入事件流
158
- */
159
- async writeEventStream(events) {
160
- if (!this.isActive)
161
- return;
162
- try {
163
- for await (const event of events) {
164
- if (!this.isActive)
165
- break;
166
- await this.writeEvent(event);
167
- }
168
- }
169
- catch (error) {
170
- this.stats.errors++;
171
- this.config.onError(error);
172
- }
173
- }
174
- /**
175
- * 同步写入事件数组
176
- */
177
- async writeEvents(events) {
178
- if (!this.isActive)
179
- return;
180
- for (const event of events) {
181
- if (!this.isActive)
182
- break;
183
- await this.writeEvent(event);
184
- }
185
- }
186
- /**
187
- * 写入Chat事件流
188
- */
189
- async writeChatEvents(events) {
190
- await this.writeEventStream(events);
191
- }
192
- /**
193
- * 写入Responses事件流
194
- */
195
- async writeResponsesEvents(events) {
196
- await this.writeEventStream(events);
197
- }
198
- /**
199
- * 完成流写入
200
- */
201
- complete() {
202
- if (!this.isActive)
203
- return;
204
- this.isActive = false;
205
- // 确保所有数据都写入完成
206
- if (this.stream.writable) {
207
- this.stream.end();
208
- }
209
- }
210
- /**
211
- * 中止流写入
212
- */
213
- abort(error) {
214
- if (!this.isActive)
215
- return;
216
- this.isActive = false;
217
- if (error) {
218
- this.stats.errors++;
219
- this.config.onError(error);
220
- }
221
- if (this.stream.writable) {
222
- this.stream.destroy(error);
223
- }
224
- }
225
- /**
226
- * 获取写入统计
227
- */
228
- getStats() {
229
- return {
230
- ...this.stats,
231
- duration: TimeUtils.now() - this.stats.startTime
232
- };
233
- }
234
- /**
235
- * 检查流是否活跃
236
- */
237
- isStreamActive() {
238
- return this.isActive && this.stream.writable;
239
- }
240
- /**
241
- * 清理资源
242
- */
243
- cleanup() {
244
- this.isActive = false;
245
- if (this.heartbeatInterval) {
246
- clearInterval(this.heartbeatInterval);
247
- this.heartbeatInterval = undefined;
248
- }
249
- }
250
- /**
251
- * 获取底层流
252
- */
253
- getUnderlyingStream() {
254
- return this.stream;
255
- }
256
- }
257
- /**
258
- * 创建Chat流写入器工厂函数
259
- */
260
- export function createChatStreamWriter(stream, config = {}) {
261
- return new StreamWriter(stream, config);
262
- }
263
- /**
264
- * 创建Responses流写入器工厂函数
265
- */
266
- export function createResponsesStreamWriter(stream, config = {}) {
267
- return new StreamWriter(stream, config);
268
- }
@@ -1,13 +0,0 @@
1
- import type { AnthropicMessageResponse, SseToAnthropicJsonOptions } from '../types/anthropic-types.js';
2
- /**
3
- * Minimal Anthropic SSE → JSON converter (v3)
4
- *
5
- * Aggregates a subset of Anthropic events into a single message object:
6
- * - message_start → capture id/model
7
- * - content_block_start/delta/stop → build text/tool_use blocks
8
- * - message_delta → stop_reason hint
9
- * - message_stop → finalize
10
- */
11
- export declare class AnthropicSseToJsonConverter {
12
- convertSseToJson(sseStream: AsyncIterable<string | Buffer>, _options: SseToAnthropicJsonOptions): Promise<AnthropicMessageResponse>;
13
- }
@@ -1,139 +0,0 @@
1
- function isStringOrBuffer(v) {
2
- return typeof v === 'string' || Buffer.isBuffer(v);
3
- }
4
- /**
5
- * Minimal Anthropic SSE → JSON converter (v3)
6
- *
7
- * Aggregates a subset of Anthropic events into a single message object:
8
- * - message_start → capture id/model
9
- * - content_block_start/delta/stop → build text/tool_use blocks
10
- * - message_delta → stop_reason hint
11
- * - message_stop → finalize
12
- */
13
- export class AnthropicSseToJsonConverter {
14
- async convertSseToJson(sseStream, _options) {
15
- const state = { content: [], role: 'assistant', current: null };
16
- let buffer = '';
17
- const flushEvent = (event) => {
18
- const t = String(event?.event || '').trim();
19
- const data = event?.data;
20
- if (!t)
21
- return;
22
- if (t === 'message_start') {
23
- state.id = data?.message?.id || state.id;
24
- state.model = data?.message?.model || state.model;
25
- state.role = data?.message?.role || 'assistant';
26
- return;
27
- }
28
- if (t === 'content_block_start') {
29
- const cb = data?.content_block;
30
- if (cb?.type === 'text') {
31
- state.current = { index: Number(data?.index || 0), kind: 'text' };
32
- }
33
- else if (cb?.type === 'tool_use') {
34
- state.current = {
35
- index: Number(data?.index || 0),
36
- kind: 'tool_use',
37
- id: String(cb?.id || `call_${Math.random().toString(36).slice(2, 10)}`),
38
- name: String(cb?.name || 'unknown_tool'),
39
- json: ''
40
- };
41
- }
42
- return;
43
- }
44
- if (t === 'content_block_delta') {
45
- if (!state.current)
46
- return;
47
- const d = data?.delta;
48
- if (state.current.kind === 'text' && d?.type === 'text_delta' && typeof d?.text === 'string') {
49
- const last = state.content[state.content.length - 1];
50
- if (last && last.type === 'text') {
51
- last.text += d.text;
52
- }
53
- else {
54
- state.content.push({ type: 'text', text: d.text });
55
- }
56
- }
57
- else if (state.current.kind === 'tool_use' && d?.type === 'input_json_delta') {
58
- state.current.json = (state.current.json || '') + String(d?.partial_json || '');
59
- }
60
- return;
61
- }
62
- if (t === 'content_block_stop') {
63
- if (!state.current)
64
- return;
65
- if (state.current.kind === 'tool_use') {
66
- let input = {};
67
- try {
68
- input = state.current.json ? JSON.parse(state.current.json) : {};
69
- }
70
- catch {
71
- input = { _raw: state.current.json };
72
- }
73
- state.content.push({ type: 'tool_use', id: state.current.id, name: state.current.name, input });
74
- }
75
- state.current = null;
76
- return;
77
- }
78
- if (t === 'message_delta') {
79
- const r = data?.delta?.stop_reason;
80
- if (r)
81
- state.stop_reason = r;
82
- return;
83
- }
84
- if (t === 'message_stop') {
85
- // finalize
86
- return;
87
- }
88
- };
89
- // very small SSE line parser (event/data/id); compatible with our Generators
90
- let current = {};
91
- const pushCurrent = () => {
92
- if (Object.keys(current).length) {
93
- flushEvent(current);
94
- current = {};
95
- }
96
- };
97
- for await (const chunk of sseStream) {
98
- const text = isStringOrBuffer(chunk) ? chunk.toString() : String(chunk);
99
- buffer += text;
100
- const lines = buffer.split('\n');
101
- buffer = lines.pop() || '';
102
- for (const raw of lines) {
103
- const line = raw.trim();
104
- if (!line) {
105
- pushCurrent();
106
- continue;
107
- }
108
- if (line.startsWith('event:')) {
109
- current.event = line.slice(6).trim();
110
- continue;
111
- }
112
- if (line.startsWith('data:')) {
113
- const data = line.slice(5).trim();
114
- try {
115
- current.data = JSON.parse(data);
116
- }
117
- catch {
118
- current.data = { raw: data };
119
- }
120
- continue;
121
- }
122
- if (line.startsWith('id:')) {
123
- current.id = line.slice(3).trim();
124
- continue;
125
- }
126
- }
127
- }
128
- // flush tail
129
- pushCurrent();
130
- return {
131
- id: state.id || `msg_${Date.now()}`,
132
- type: 'message',
133
- role: state.role || 'assistant',
134
- model: state.model || 'unknown',
135
- content: state.content,
136
- stop_reason: state.stop_reason || 'end_turn'
137
- };
138
- }
139
- }
@@ -1,165 +0,0 @@
1
- /**
2
- * Responses响应构建器
3
- * 负责状态机和事件聚合,从SSE事件构建完整的Responses响应对象
4
- */
5
- import { ResponsesSseEvent, ResponsesResponse } from '../../types/index.js';
6
- export type ResponseBuilderState = 'initial' | 'building' | 'completed' | 'error';
7
- export interface ResponseBuilderConfig {
8
- enableStrictValidation: boolean;
9
- enableEventRecovery: boolean;
10
- maxOutputItems: number;
11
- maxContentParts: number;
12
- maxSequenceGaps: number;
13
- }
14
- export interface OutputItemState {
15
- id: string;
16
- type: string;
17
- status: 'in_progress' | 'completed';
18
- contentParts: any[];
19
- currentContentIndex: number;
20
- accumulatedContent: any[];
21
- hasContentPartAdded: boolean;
22
- isTextInProgress: boolean;
23
- callId?: string;
24
- name?: string;
25
- arguments?: string;
26
- role?: string;
27
- startTime: number;
28
- lastEventTime: number;
29
- }
30
- export declare const DEFAULT_RESPONSE_BUILDER_CONFIG: ResponseBuilderConfig;
31
- /**
32
- * Responses响应构建器
33
- */
34
- export declare class ResponsesResponseBuilder {
35
- private state;
36
- private response;
37
- private outputItemBuilders;
38
- private lastSequenceNumber;
39
- private config;
40
- private error?;
41
- constructor(config?: Partial<ResponseBuilderConfig>);
42
- /**
43
- * 处理SSE事件
44
- */
45
- processEvent(event: ResponsesSseEvent): boolean;
46
- /**
47
- * 验证序列号
48
- */
49
- private validateSequenceNumber;
50
- /**
51
- * 处理response.start事件
52
- */
53
- private handleResponseStart;
54
- private handleResponseCreated;
55
- private handleResponseInProgress;
56
- /**
57
- * 处理output_item.start事件
58
- */
59
- private handleOutputItemStart;
60
- private mapOutputItemAdded;
61
- /**
62
- * 处理content_part.start事件
63
- */
64
- private handleContentPartStart;
65
- private mapContentPartAdded;
66
- /**
67
- * 处理content_part.delta事件
68
- */
69
- private handleContentPartDelta;
70
- private mapOutputTextDelta;
71
- /**
72
- * 处理content_part.done事件
73
- */
74
- private handleContentPartDone;
75
- private mapContentPartDone;
76
- /**
77
- * 处理function_call.start事件
78
- */
79
- private handleFunctionCallStart;
80
- /**
81
- * 处理function_call.delta事件
82
- */
83
- private handleFunctionCallDelta;
84
- private mapFunctionCallDelta;
85
- /**
86
- * 处理function_call.done事件
87
- */
88
- private handleFunctionCallDone;
89
- private mapFunctionCallDone;
90
- /**
91
- * 处理reasoning.start事件
92
- */
93
- private handleReasoningStart;
94
- /**
95
- * 处理reasoning.delta事件
96
- */
97
- private handleReasoningDelta;
98
- private mapReasoningDelta;
99
- private mapReasoningDone;
100
- /**
101
- * 处理reasoning.done事件
102
- */
103
- private handleReasoningDone;
104
- /**
105
- * 处理output_item.done事件
106
- */
107
- private handleOutputItemDone;
108
- /**
109
- * 处理required_action事件
110
- */
111
- private handleRequiredAction;
112
- /**
113
- * 处理response.done事件
114
- */
115
- private handleResponseDone;
116
- /**
117
- * 处理错误事件
118
- */
119
- private handleError;
120
- private handleResponseCompleted;
121
- /**
122
- * 构建输出项列表
123
- */
124
- private buildOutputItems;
125
- /**
126
- * 构建消息项
127
- */
128
- private buildMessageItem;
129
- /**
130
- * 构建函数调用项
131
- */
132
- private buildFunctionCallItem;
133
- /**
134
- * 构建推理项
135
- */
136
- private buildReasoningItem;
137
- /**
138
- * 获取构建结果
139
- */
140
- getResult(): {
141
- success: boolean;
142
- response?: ResponsesResponse;
143
- error?: Error;
144
- };
145
- /**
146
- * 获取当前状态
147
- */
148
- getState(): ResponseBuilderState;
149
- /**
150
- * 重置构建器
151
- */
152
- reset(): void;
153
- /**
154
- * 获取输出项构建器
155
- */
156
- getOutputItemBuilders(): Map<string, OutputItemState>;
157
- /**
158
- * 获取最后序列号
159
- */
160
- getLastSequenceNumber(): number;
161
- }
162
- /**
163
- * 创建响应构建器工厂
164
- */
165
- export declare function createResponseBuilder(config?: Partial<ResponseBuilderConfig>): ResponsesResponseBuilder;