@zimtsui/brainswitch 0.0.56 → 0.0.59

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 (322) hide show
  1. package/README.md +109 -54
  2. package/assets/verbatim/declarations.handlebars +11 -0
  3. package/assets/verbatim/instruction.md +49 -0
  4. package/build/adaptor.d.ts +40 -9
  5. package/build/adaptor.js +36 -38
  6. package/build/adaptor.js.map +1 -1
  7. package/build/api-types/anthropic/billing.d.ts +5 -5
  8. package/build/api-types/anthropic/billing.js +1 -2
  9. package/build/api-types/anthropic/billing.js.map +1 -1
  10. package/build/api-types/anthropic/tool-codec.d.ts +11 -12
  11. package/build/api-types/anthropic/tool-codec.js +27 -42
  12. package/build/api-types/anthropic/tool-codec.js.map +1 -1
  13. package/build/api-types/google/billing.d.ts +5 -5
  14. package/build/api-types/google/billing.js +2 -3
  15. package/build/api-types/google/billing.js.map +1 -1
  16. package/build/api-types/google/restful-request.d.ts +1 -1
  17. package/build/api-types/google/restful-request.js +0 -1
  18. package/build/api-types/google/restful-request.js.map +1 -1
  19. package/build/api-types/google/tool-codec.d.ts +11 -11
  20. package/build/api-types/google/tool-codec.js +21 -19
  21. package/build/api-types/google/tool-codec.js.map +1 -1
  22. package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/billing.d.ts +2 -3
  23. package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/billing.js +0 -2
  24. package/build/api-types/openai-chatcompletions/billing.js.map +1 -0
  25. package/build/api-types/openai-chatcompletions/tool-codec.d.ts +17 -0
  26. package/build/api-types/{openai-chatcompletion → openai-chatcompletions}/tool-codec.js +26 -32
  27. package/build/api-types/openai-chatcompletions/tool-codec.js.map +1 -0
  28. package/build/api-types/openai-responses/billing.d.ts +5 -5
  29. package/build/api-types/openai-responses/billing.js +1 -2
  30. package/build/api-types/openai-responses/billing.js.map +1 -1
  31. package/build/api-types/openai-responses/tool-codec.d.ts +11 -11
  32. package/build/api-types/openai-responses/tool-codec.js +36 -32
  33. package/build/api-types/openai-responses/tool-codec.js.map +1 -1
  34. package/build/assets.d.ts +7 -0
  35. package/build/assets.js +8 -0
  36. package/build/assets.js.map +1 -0
  37. package/build/compatible-engine/session.d.ts +67 -0
  38. package/build/compatible-engine/session.js +92 -0
  39. package/build/compatible-engine/session.js.map +1 -0
  40. package/build/compatible-engine/structuring.d.ts +36 -0
  41. package/build/compatible-engine/structuring.js +34 -0
  42. package/build/compatible-engine/structuring.js.map +1 -0
  43. package/build/compatible-engine/validation.d.ts +21 -0
  44. package/build/compatible-engine/validation.js +82 -0
  45. package/build/compatible-engine/validation.js.map +1 -0
  46. package/build/compatible-engine.d/agentloop.d.ts +12 -0
  47. package/build/compatible-engine.d/agentloop.js +52 -0
  48. package/build/compatible-engine.d/agentloop.js.map +1 -0
  49. package/build/compatible-engine.d/aliyun/transport.d.ts +12 -0
  50. package/build/compatible-engine.d/aliyun/transport.js +7 -0
  51. package/build/compatible-engine.d/aliyun/transport.js.map +1 -0
  52. package/build/compatible-engine.d/aliyun.d.ts +24 -0
  53. package/build/compatible-engine.d/aliyun.js +46 -0
  54. package/build/compatible-engine.d/aliyun.js.map +1 -0
  55. package/build/compatible-engine.d/anthropic/choice-codec.d.ts +5 -0
  56. package/build/compatible-engine.d/anthropic/choice-codec.js +26 -0
  57. package/build/compatible-engine.d/anthropic/choice-codec.js.map +1 -0
  58. package/build/compatible-engine.d/anthropic/message-codec.d.ts +36 -0
  59. package/build/compatible-engine.d/anthropic/message-codec.js +86 -0
  60. package/build/compatible-engine.d/anthropic/message-codec.js.map +1 -0
  61. package/build/compatible-engine.d/anthropic/transport.d.ts +34 -0
  62. package/build/compatible-engine.d/anthropic/transport.js +150 -0
  63. package/build/compatible-engine.d/anthropic/transport.js.map +1 -0
  64. package/build/compatible-engine.d/anthropic.d.ts +26 -0
  65. package/build/compatible-engine.d/anthropic.js +46 -0
  66. package/build/compatible-engine.d/anthropic.js.map +1 -0
  67. package/build/compatible-engine.d/google/choice-codec.d.ts +5 -0
  68. package/build/compatible-engine.d/google/choice-codec.js +27 -0
  69. package/build/compatible-engine.d/google/choice-codec.js.map +1 -0
  70. package/build/compatible-engine.d/google/message-codec.d.ts +36 -0
  71. package/build/compatible-engine.d/google/message-codec.js +94 -0
  72. package/build/compatible-engine.d/google/message-codec.js.map +1 -0
  73. package/build/compatible-engine.d/google/transport.d.ts +30 -0
  74. package/build/{compatible.d → compatible-engine.d}/google/transport.js +22 -18
  75. package/build/compatible-engine.d/google/transport.js.map +1 -0
  76. package/build/compatible-engine.d/google.d.ts +26 -0
  77. package/build/compatible-engine.d/google.js +50 -0
  78. package/build/compatible-engine.d/google.js.map +1 -0
  79. package/build/compatible-engine.d/openai-chatcompletions/choice-codec.d.ts +5 -0
  80. package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js +31 -0
  81. package/build/compatible-engine.d/openai-chatcompletions/choice-codec.js.map +1 -0
  82. package/build/compatible-engine.d/openai-chatcompletions/message-codec.d.ts +24 -0
  83. package/build/compatible-engine.d/openai-chatcompletions/message-codec.js +71 -0
  84. package/build/compatible-engine.d/openai-chatcompletions/message-codec.js.map +1 -0
  85. package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.d.ts +38 -0
  86. package/build/{compatible.d/openai-chatcompletions.d → compatible-engine.d/openai-chatcompletions/transport.d}/monolith.js +25 -22
  87. package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js.map +1 -0
  88. package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.d.ts +37 -0
  89. package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js +190 -0
  90. package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js.map +1 -0
  91. package/build/compatible-engine.d/openai-chatcompletions/transport.d.ts +10 -0
  92. package/build/compatible-engine.d/openai-chatcompletions/transport.js +11 -0
  93. package/build/compatible-engine.d/openai-chatcompletions/transport.js.map +1 -0
  94. package/build/compatible-engine.d/openai-chatcompletions.d.ts +17 -0
  95. package/build/compatible-engine.d/openai-chatcompletions.js +14 -0
  96. package/build/compatible-engine.d/openai-chatcompletions.js.map +1 -0
  97. package/build/compatible-engine.d/openai-responses/choice-codec.d.ts +5 -0
  98. package/build/compatible-engine.d/openai-responses/choice-codec.js +30 -0
  99. package/build/compatible-engine.d/openai-responses/choice-codec.js.map +1 -0
  100. package/build/compatible-engine.d/openai-responses/message-codec.d.ts +36 -0
  101. package/build/compatible-engine.d/openai-responses/message-codec.js +96 -0
  102. package/build/compatible-engine.d/openai-responses/message-codec.js.map +1 -0
  103. package/build/compatible-engine.d/openai-responses/transport.d.ts +35 -0
  104. package/build/{compatible.d → compatible-engine.d}/openai-responses/transport.js +21 -29
  105. package/build/compatible-engine.d/openai-responses/transport.js.map +1 -0
  106. package/build/compatible-engine.d/openai-responses.d.ts +26 -0
  107. package/build/compatible-engine.d/openai-responses.js +46 -0
  108. package/build/compatible-engine.d/openai-responses.js.map +1 -0
  109. package/build/compatible-engine.d.ts +22 -0
  110. package/build/compatible-engine.js +29 -0
  111. package/build/compatible-engine.js.map +1 -0
  112. package/build/config.d.ts +1 -0
  113. package/build/config.js +1 -2
  114. package/build/config.js.map +1 -1
  115. package/build/endpoint-spec.d.ts +1 -0
  116. package/build/endpoint-spec.js +2 -1
  117. package/build/endpoint-spec.js.map +1 -1
  118. package/build/engine/session.d.ts +7 -0
  119. package/build/{session.js.map → engine/session.js.map} +1 -1
  120. package/build/engine/transport.d.ts +5 -0
  121. package/build/engine/transport.js +1 -0
  122. package/build/engine/transport.js.map +1 -0
  123. package/build/engine/validation.d.ts +9 -0
  124. package/build/engine/validation.js +1 -0
  125. package/build/engine/validation.js.map +1 -0
  126. package/build/engine.d.ts +49 -40
  127. package/build/engine.js +88 -70
  128. package/build/engine.js.map +1 -1
  129. package/build/exports.d.ts +14 -14
  130. package/build/exports.js +14 -14
  131. package/build/exports.js.map +1 -1
  132. package/build/function.d.ts +79 -66
  133. package/build/function.js +30 -47
  134. package/build/function.js.map +1 -1
  135. package/build/inference-context.d.ts +2 -2
  136. package/build/inference-context.js +0 -1
  137. package/build/inference-context.js.map +1 -1
  138. package/build/native-engines.d/google/message-codec.d.ts +18 -16
  139. package/build/native-engines.d/google/message-codec.js +31 -33
  140. package/build/native-engines.d/google/message-codec.js.map +1 -1
  141. package/build/native-engines.d/google/session.d.ts +44 -51
  142. package/build/native-engines.d/google/session.js +85 -81
  143. package/build/native-engines.d/google/session.js.map +1 -1
  144. package/build/native-engines.d/google/transport.d.ts +22 -19
  145. package/build/native-engines.d/google/transport.js +13 -13
  146. package/build/native-engines.d/google/transport.js.map +1 -1
  147. package/build/native-engines.d/google/validation.d.ts +22 -0
  148. package/build/native-engines.d/google/validation.js +20 -0
  149. package/build/native-engines.d/google/validation.js.map +1 -0
  150. package/build/native-engines.d/google.d/agentloop.d.ts +12 -0
  151. package/build/native-engines.d/google.d/agentloop.js +57 -0
  152. package/build/native-engines.d/google.d/agentloop.js.map +1 -0
  153. package/build/native-engines.d/google.d/exports.d.ts +3 -0
  154. package/build/native-engines.d/google.d/exports.js +4 -0
  155. package/build/native-engines.d/google.d/exports.js.map +1 -0
  156. package/build/native-engines.d/google.d.ts +42 -0
  157. package/build/native-engines.d/google.js +83 -0
  158. package/build/native-engines.d/google.js.map +1 -0
  159. package/build/native-engines.d/openai-responses/choice-codec.d.ts +5 -0
  160. package/build/native-engines.d/openai-responses/choice-codec.js +30 -0
  161. package/build/native-engines.d/openai-responses/choice-codec.js.map +1 -0
  162. package/build/native-engines.d/openai-responses/message-codec.d.ts +19 -17
  163. package/build/native-engines.d/openai-responses/message-codec.js +31 -25
  164. package/build/native-engines.d/openai-responses/message-codec.js.map +1 -1
  165. package/build/native-engines.d/openai-responses/session.d.ts +47 -45
  166. package/build/native-engines.d/openai-responses/session.js +75 -105
  167. package/build/native-engines.d/openai-responses/session.js.map +1 -1
  168. package/build/native-engines.d/openai-responses/structuring.d.ts +19 -0
  169. package/build/native-engines.d/openai-responses/structuring.js +19 -0
  170. package/build/native-engines.d/openai-responses/structuring.js.map +1 -0
  171. package/build/native-engines.d/openai-responses/tool.d.ts +15 -12
  172. package/build/native-engines.d/openai-responses/tool.js +1 -12
  173. package/build/native-engines.d/openai-responses/tool.js.map +1 -1
  174. package/build/native-engines.d/openai-responses/transport.d.ts +24 -25
  175. package/build/native-engines.d/openai-responses/transport.js +21 -41
  176. package/build/native-engines.d/openai-responses/transport.js.map +1 -1
  177. package/build/native-engines.d/openai-responses/validation.d.ts +20 -0
  178. package/build/native-engines.d/openai-responses/validation.js +80 -0
  179. package/build/native-engines.d/openai-responses/validation.js.map +1 -0
  180. package/build/native-engines.d/openai-responses.d/agentloop.d.ts +12 -0
  181. package/build/native-engines.d/openai-responses.d/agentloop.js +61 -0
  182. package/build/native-engines.d/openai-responses.d/agentloop.js.map +1 -0
  183. package/build/native-engines.d/openai-responses.d/exports.d.ts +4 -0
  184. package/build/native-engines.d/openai-responses.d/exports.js +5 -0
  185. package/build/native-engines.d/openai-responses.d/exports.js.map +1 -0
  186. package/build/native-engines.d/openai-responses.d.ts +44 -0
  187. package/build/native-engines.d/openai-responses.js +78 -0
  188. package/build/native-engines.d/openai-responses.js.map +1 -0
  189. package/build/throttle.d.ts +6 -5
  190. package/build/throttle.js +17 -14
  191. package/build/throttle.js.map +1 -1
  192. package/build/tsconfig.tsbuildinfo +1 -1
  193. package/build/verbatim/codec/declarations.d.ts +2 -0
  194. package/build/verbatim/codec/declarations.js +22 -0
  195. package/build/verbatim/codec/declarations.js.map +1 -0
  196. package/build/verbatim/codec/request.d.ts +7 -0
  197. package/build/verbatim/codec/request.js +53 -0
  198. package/build/verbatim/codec/request.js.map +1 -0
  199. package/build/verbatim/codec.d.ts +2 -0
  200. package/build/verbatim/codec.js +3 -0
  201. package/build/verbatim/codec.js.map +1 -0
  202. package/build/verbatim.d.ts +74 -0
  203. package/build/verbatim.js +17 -0
  204. package/build/verbatim.js.map +1 -0
  205. package/examples/agent.ts +65 -0
  206. package/examples/chat.ts +24 -0
  207. package/examples/config.ts +24 -0
  208. package/{test/src → examples}/tsconfig.json +6 -2
  209. package/examples/verbatim.ts +44 -0
  210. package/package.json +15 -13
  211. package/build/agentloop.d.ts +0 -12
  212. package/build/agentloop.js +0 -43
  213. package/build/agentloop.js.map +0 -1
  214. package/build/api-types/openai-chatcompletion/billing.js.map +0 -1
  215. package/build/api-types/openai-chatcompletion/tool-codec.d.ts +0 -18
  216. package/build/api-types/openai-chatcompletion/tool-codec.js.map +0 -1
  217. package/build/compatible/engine.d/aliyun.d.ts +0 -23
  218. package/build/compatible/engine.d/aliyun.js +0 -44
  219. package/build/compatible/engine.d/aliyun.js.map +0 -1
  220. package/build/compatible/engine.d/anthropic.d.ts +0 -23
  221. package/build/compatible/engine.d/anthropic.js +0 -41
  222. package/build/compatible/engine.d/anthropic.js.map +0 -1
  223. package/build/compatible/engine.d/google.d.ts +0 -23
  224. package/build/compatible/engine.d/google.js +0 -45
  225. package/build/compatible/engine.d/google.js.map +0 -1
  226. package/build/compatible/engine.d/openai-responses.d.ts +0 -23
  227. package/build/compatible/engine.d/openai-responses.js +0 -41
  228. package/build/compatible/engine.d/openai-responses.js.map +0 -1
  229. package/build/compatible/engine.d.ts +0 -18
  230. package/build/compatible/engine.js +0 -21
  231. package/build/compatible/engine.js.map +0 -1
  232. package/build/compatible/session.d.ts +0 -78
  233. package/build/compatible/session.js +0 -138
  234. package/build/compatible/session.js.map +0 -1
  235. package/build/compatible/tool-call-validator.d.ts +0 -11
  236. package/build/compatible/tool-call-validator.js +0 -12
  237. package/build/compatible/tool-call-validator.js.map +0 -1
  238. package/build/compatible.d/aliyun/transport.d.ts +0 -11
  239. package/build/compatible.d/aliyun/transport.js +0 -9
  240. package/build/compatible.d/aliyun/transport.js.map +0 -1
  241. package/build/compatible.d/anthropic/message-codec.d.ts +0 -31
  242. package/build/compatible.d/anthropic/message-codec.js +0 -88
  243. package/build/compatible.d/anthropic/message-codec.js.map +0 -1
  244. package/build/compatible.d/anthropic/transport.d.ts +0 -31
  245. package/build/compatible.d/anthropic/transport.js +0 -137
  246. package/build/compatible.d/anthropic/transport.js.map +0 -1
  247. package/build/compatible.d/google/message-codec.d.ts +0 -31
  248. package/build/compatible.d/google/message-codec.js +0 -98
  249. package/build/compatible.d/google/message-codec.js.map +0 -1
  250. package/build/compatible.d/google/transport.d.ts +0 -28
  251. package/build/compatible.d/google/transport.js.map +0 -1
  252. package/build/compatible.d/openai-chatcompletions/message-codec.d.ts +0 -19
  253. package/build/compatible.d/openai-chatcompletions/message-codec.js +0 -66
  254. package/build/compatible.d/openai-chatcompletions/message-codec.js.map +0 -1
  255. package/build/compatible.d/openai-chatcompletions/transport.d.ts +0 -9
  256. package/build/compatible.d/openai-chatcompletions/transport.js +0 -25
  257. package/build/compatible.d/openai-chatcompletions/transport.js.map +0 -1
  258. package/build/compatible.d/openai-chatcompletions.d/monolith.d.ts +0 -36
  259. package/build/compatible.d/openai-chatcompletions.d/monolith.js.map +0 -1
  260. package/build/compatible.d/openai-chatcompletions.d/stream.d.ts +0 -35
  261. package/build/compatible.d/openai-chatcompletions.d/stream.js +0 -196
  262. package/build/compatible.d/openai-chatcompletions.d/stream.js.map +0 -1
  263. package/build/compatible.d/openai-responses/message-codec.d.ts +0 -32
  264. package/build/compatible.d/openai-responses/message-codec.js +0 -105
  265. package/build/compatible.d/openai-responses/message-codec.js.map +0 -1
  266. package/build/compatible.d/openai-responses/transport.d.ts +0 -33
  267. package/build/compatible.d/openai-responses/transport.js.map +0 -1
  268. package/build/frontmatter.d.ts +0 -5
  269. package/build/frontmatter.js +0 -13
  270. package/build/frontmatter.js.map +0 -1
  271. package/build/native-engines.d/google/agentloop.d.ts +0 -12
  272. package/build/native-engines.d/google/agentloop.js +0 -42
  273. package/build/native-engines.d/google/agentloop.js.map +0 -1
  274. package/build/native-engines.d/google/engine.d.ts +0 -35
  275. package/build/native-engines.d/google/engine.js +0 -73
  276. package/build/native-engines.d/google/engine.js.map +0 -1
  277. package/build/native-engines.d/google/exports.d.ts +0 -5
  278. package/build/native-engines.d/google/exports.js +0 -6
  279. package/build/native-engines.d/google/exports.js.map +0 -1
  280. package/build/native-engines.d/openai-responses/agentloop.d.ts +0 -13
  281. package/build/native-engines.d/openai-responses/agentloop.js +0 -53
  282. package/build/native-engines.d/openai-responses/agentloop.js.map +0 -1
  283. package/build/native-engines.d/openai-responses/engine.d.ts +0 -32
  284. package/build/native-engines.d/openai-responses/engine.js +0 -63
  285. package/build/native-engines.d/openai-responses/engine.js.map +0 -1
  286. package/build/native-engines.d/openai-responses/exports.d.ts +0 -6
  287. package/build/native-engines.d/openai-responses/exports.js +0 -7
  288. package/build/native-engines.d/openai-responses/exports.js.map +0 -1
  289. package/build/native-engines.d/openai-responses/tool-call-validator.d.ts +0 -12
  290. package/build/native-engines.d/openai-responses/tool-call-validator.js +0 -33
  291. package/build/native-engines.d/openai-responses/tool-call-validator.js.map +0 -1
  292. package/build/session.d.ts +0 -7
  293. package/test/build/test-codecs.d.ts +0 -1
  294. package/test/build/test-codecs.js +0 -230
  295. package/test/build/test-codecs.js.map +0 -1
  296. package/test/build/test-compatible-engine.d.ts +0 -1
  297. package/test/build/test-compatible-engine.js +0 -27
  298. package/test/build/test-compatible-engine.js.map +0 -1
  299. package/test/build/test-compatible-engines.d.ts +0 -1
  300. package/test/build/test-compatible-engines.js +0 -112
  301. package/test/build/test-compatible-engines.js.map +0 -1
  302. package/test/build/test-engine.d.ts +0 -1
  303. package/test/build/test-engine.js +0 -97
  304. package/test/build/test-engine.js.map +0 -1
  305. package/test/build/test-helpers.d.ts +0 -46
  306. package/test/build/test-helpers.js +0 -45
  307. package/test/build/test-helpers.js.map +0 -1
  308. package/test/build/test-native-engines.d.ts +0 -1
  309. package/test/build/test-native-engines.js +0 -64
  310. package/test/build/test-native-engines.js.map +0 -1
  311. package/test/build/test.d.ts +0 -5
  312. package/test/build/test.js +0 -6
  313. package/test/build/test.js.map +0 -1
  314. package/test/build/tsconfig.tsbuildinfo +0 -1
  315. package/test/src/test-codecs.ts +0 -256
  316. package/test/src/test-compatible-engine.ts +0 -45
  317. package/test/src/test-compatible-engines.ts +0 -129
  318. package/test/src/test-engine.ts +0 -144
  319. package/test/src/test-helpers.ts +0 -53
  320. package/test/src/test-native-engines.ts +0 -75
  321. package/test/src/test.ts +0 -5
  322. /package/build/{session.js → engine/session.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/anthropic/tool-codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/anthropic/tool-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,GAAG,MAAM,KAAK,CAAC;AAGtB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;AAGtB,MAAM,OAAO,SAAS;IACW;IAA7B,YAA6B,GAA2B;QAA3B,QAAG,GAAH,GAAG,CAAwB;IAAG,CAAC;IAErD,kBAAkB,CACrB,EAA2B;QAE3B,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACnF,CAAC;IAEM,kBAAkB,CACrB,KAA6B;QAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,MAAM,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,eAAe,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACzF,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA,CAAC;;YAC/C,MAAM,IAAI,eAAe,CAAC,wCAAwC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3F,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,KAAK;SACe,CAAC,CAAC;IAC1C,CAAC;IAEM,sBAAsB,CACzB,EAA+B;QAE/B,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,KAAK,EAAE,CAAC;QACrC,IAAI,EAAE,YAAY,QAAQ,CAAC,QAAQ,CAAC,UAAU;YAC1C,OAAO;gBACH,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,EAAE,CAAC,EAAE;gBAClB,OAAO,EAAE,EAAE,CAAC,IAAI;aACnB,CAAC;aACD,IAAI,EAAE,YAAY,QAAQ,CAAC,QAAQ,CAAC,MAAM;YAC3C,OAAO;gBACH,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,EAAE,CAAC,EAAE;gBAClB,OAAO,EAAE,EAAE,CAAC,KAAK;aACpB,CAAC;;YACD,MAAM,IAAI,KAAK,EAAE,CAAC;IAC3B,CAAC;IAES,8BAA8B,CACpC,OAAsC;QAEtC,OAAO;YACH,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YAChB,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW;YACnC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAqB;SACjD,CAAC;IACN,CAAC;IAEM,4BAA4B,CAC/B,GAAQ;QAER,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAoC,CAAC;QAEzE,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC,CAAC;IAClF,CAAC;CAEJ"}
@@ -1,11 +1,11 @@
1
1
  import * as Google from '@google/genai';
2
- import type { Pricing } from '#@/engine.ts';
3
- export declare class GoogleBilling {
4
- protected ctx: GoogleBilling.Context;
5
- constructor(ctx: GoogleBilling.Context);
2
+ import type { Pricing } from '../../engine.ts';
3
+ export declare class Billing {
4
+ protected ctx: Billing.Context;
5
+ constructor(ctx: Billing.Context);
6
6
  charge(usageMetadata: Google.GenerateContentResponseUsageMetadata): number;
7
7
  }
8
- export declare namespace GoogleBilling {
8
+ export declare namespace Billing {
9
9
  interface Context {
10
10
  pricing: Pricing;
11
11
  }
@@ -1,6 +1,5 @@
1
- import * as Google from '@google/genai';
2
- import { logger } from '#@/telemetry.ts';
3
- export class GoogleBilling {
1
+ import { logger } from "../../telemetry.js";
2
+ export class Billing {
4
3
  ctx;
5
4
  constructor(ctx) {
6
5
  this.ctx = ctx;
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/google/billing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,MAAM,OAAO,aAAa;IACO;IAA7B,YAA6B,GAA0B;QAA1B,QAAG,GAAH,GAAG,CAAuB;IAAG,CAAC;IAEpD,MAAM,CAAC,aAA0D;QACpE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEpC,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QACrH,MAAM,oBAAoB,GAAG,aAAa,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACrE,MAAM,kBAAkB,GAAG,aAAa,CAAC,uBAAuB,IAAI,CAAC,CAAC;QACtE,MAAM,mBAAmB,GAAG,aAAa,CAAC,gBAAgB,GAAG,kBAAkB,CAAC;QAChF,MAAM,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,IAAI,CAAC,CAAC;QACjE,MAAM,IAAI,GACN,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;YACvD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,kBAAkB,GAAG,GAAG;YACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,oBAAoB,GAAG,GAAG;YACzD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,kBAAkB,GAAG,GAAG,CAAC;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/google/billing.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,MAAM,OAAO,OAAO;IACa;IAA7B,YAA6B,GAAoB;QAApB,QAAG,GAAH,GAAG,CAAiB;IAAG,CAAC;IAE9C,MAAM,CAAC,aAA0D;QACpE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAEpC,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAA,CAAC;;YAAM,MAAM,IAAI,KAAK,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QACrH,MAAM,oBAAoB,GAAG,aAAa,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACrE,MAAM,kBAAkB,GAAG,aAAa,CAAC,uBAAuB,IAAI,CAAC,CAAC;QACtE,MAAM,mBAAmB,GAAG,aAAa,CAAC,gBAAgB,GAAG,kBAAkB,CAAC;QAChF,MAAM,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,IAAI,CAAC,CAAC;QACjE,MAAM,IAAI,GACN,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;YACvD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,kBAAkB,GAAG,GAAG;YACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,oBAAoB,GAAG,GAAG;YACzD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,kBAAkB,GAAG,GAAG,CAAC;QAC5D,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import * as Google from '@google/genai';
2
- export interface GoogleRestfulRequest {
2
+ export interface RestfulRequest {
3
3
  contents: Google.Content[];
4
4
  tools?: Google.Tool[];
5
5
  toolConfig?: Google.ToolConfig;
@@ -1,2 +1 @@
1
- import * as Google from '@google/genai';
2
1
  //# sourceMappingURL=restful-request.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"restful-request.js","sourceRoot":"","sources":["../../../src/api-types/google/restful-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"restful-request.js","sourceRoot":"","sources":["../../../src/api-types/google/restful-request.ts"],"names":[],"mappings":""}
@@ -1,16 +1,16 @@
1
- import { Function } from '#@/function.ts';
1
+ import { Function } from '../../function.ts';
2
2
  import * as Google from '@google/genai';
3
- export declare class GoogleToolCodec<in out fdm extends Function.Declaration.Map> {
4
- protected ctx: GoogleToolCodec.Context<fdm>;
5
- constructor(ctx: GoogleToolCodec.Context<fdm>);
6
- convertFromFunctionCall(fc: Function.Call.From<fdm>): Google.FunctionCall;
7
- convertFromFunctionDeclarationMap(fdm: fdm): Google.FunctionDeclaration[];
8
- protected convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): Google.FunctionDeclaration;
9
- convertToFunctionCall(googlefc: Google.FunctionCall): Function.Call.From<fdm>;
10
- convertFromToolChoice(toolChoice: Function.ToolChoice<fdm>): Google.FunctionCallingConfig;
3
+ export declare class ToolCodec<in out fdm extends Function.Decl.Map.Proto> {
4
+ protected ctx: ToolCodec.Context<fdm>;
5
+ constructor(ctx: ToolCodec.Context<fdm>);
6
+ encodeFunctionCall(fc: Function.Call.From<fdm>): Google.FunctionCall;
7
+ encodeFunctionDeclarationMap(fdm: fdm): Google.FunctionDeclaration[];
8
+ protected encodeFunctionDeclarationEntry(fdentry: Function.Decl.Entry.From<fdm>): Google.FunctionDeclaration;
9
+ decodeFunctionCall(googlefc: Google.FunctionCall): Function.Call.From<fdm>;
10
+ encodeFunctionResponse(fr: Function.Response.From<fdm>): Google.Part;
11
11
  }
12
- export declare namespace GoogleToolCodec {
13
- interface Context<in out fdm extends Function.Declaration.Map> {
12
+ export declare namespace ToolCodec {
13
+ interface Context<in out fdm extends Function.Decl.Map.Proto> {
14
14
  fdm: fdm;
15
15
  }
16
16
  }
@@ -1,26 +1,26 @@
1
- import { ResponseInvalid } from '#@/engine.ts';
2
- import { Function } from '#@/function.ts';
1
+ import { ResponseInvalid } from "../../engine.js";
2
+ import { Function } from "../../function.js";
3
3
  import * as Google from '@google/genai';
4
4
  import Ajv from 'ajv';
5
5
  const ajv = new Ajv();
6
- export class GoogleToolCodec {
6
+ export class ToolCodec {
7
7
  ctx;
8
8
  constructor(ctx) {
9
9
  this.ctx = ctx;
10
10
  }
11
- convertFromFunctionCall(fc) {
11
+ encodeFunctionCall(fc) {
12
12
  return {
13
13
  id: fc.id,
14
14
  name: fc.name,
15
15
  args: fc.args,
16
16
  };
17
17
  }
18
- convertFromFunctionDeclarationMap(fdm) {
18
+ encodeFunctionDeclarationMap(fdm) {
19
19
  const fdentries = Object.entries(fdm);
20
- return fdentries.map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry));
20
+ return fdentries.map(fdentry => this.encodeFunctionDeclarationEntry(fdentry));
21
21
  }
22
- convertFromFunctionDeclarationEntry(fdentry) {
23
- const json = JSON.stringify(fdentry[1].paraschema);
22
+ encodeFunctionDeclarationEntry(fdentry) {
23
+ const json = JSON.stringify(fdentry[1].parameters);
24
24
  const parsed = JSON.parse(json, (key, value) => {
25
25
  if (key === 'type' && typeof value === 'string') {
26
26
  if (value === 'string')
@@ -47,7 +47,7 @@ export class GoogleToolCodec {
47
47
  parameters: parsed,
48
48
  };
49
49
  }
50
- convertToFunctionCall(googlefc) {
50
+ decodeFunctionCall(googlefc) {
51
51
  if (googlefc.name) { }
52
52
  else
53
53
  throw new Error();
@@ -55,24 +55,26 @@ export class GoogleToolCodec {
55
55
  if (fditem) { }
56
56
  else
57
57
  throw new ResponseInvalid('Unknown function call', { cause: googlefc });
58
- if (ajv.validate(fditem.paraschema, googlefc.args)) { }
58
+ if (ajv.validate(fditem.parameters, googlefc.args)) { }
59
59
  else
60
60
  throw new ResponseInvalid('Function call not conforming to schema', { cause: googlefc });
61
- return Function.Call.create({
61
+ return Function.Call.of({
62
62
  id: googlefc.id,
63
63
  name: googlefc.name,
64
64
  args: googlefc.args,
65
65
  });
66
66
  }
67
- convertFromToolChoice(toolChoice) {
68
- if (toolChoice === Function.ToolChoice.NONE)
69
- return { mode: Google.FunctionCallingConfigMode.NONE };
70
- else if (toolChoice === Function.ToolChoice.REQUIRED)
71
- return { mode: Google.FunctionCallingConfigMode.ANY };
72
- else if (toolChoice === Function.ToolChoice.AUTO)
73
- return { mode: Google.FunctionCallingConfigMode.AUTO };
67
+ encodeFunctionResponse(fr) {
68
+ if (fr instanceof Function.Response.Successful)
69
+ return {
70
+ functionResponse: { id: fr.id, name: fr.name, response: { output: fr.text } },
71
+ };
72
+ else if (fr instanceof Function.Response.Failed)
73
+ return {
74
+ functionResponse: { id: fr.id, name: fr.name, response: { error: fr.error } },
75
+ };
74
76
  else
75
- return { mode: Google.FunctionCallingConfigMode.ANY, allowedFunctionNames: [...toolChoice] };
77
+ throw new Error();
76
78
  }
77
79
  }
78
80
  //# sourceMappingURL=tool-codec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/google/tool-codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/google/tool-codec.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import type { Pricing } from '#@/engine.ts';
1
+ import type { Pricing } from '../../engine.ts';
2
2
  import OpenAI from 'openai';
3
- import { Function } from '#@/function.ts';
4
- export declare class OpenAIChatCompletionsBilling<in out fdm extends Function.Declaration.Map> {
3
+ export declare class OpenAIChatCompletionsBilling {
5
4
  protected ctx: OpenAIChatCompletionsBilling.Context;
6
5
  constructor(ctx: OpenAIChatCompletionsBilling.Context);
7
6
  charge(usage: OpenAI.CompletionUsage): number;
@@ -1,5 +1,3 @@
1
- import OpenAI from 'openai';
2
- import { Function } from '#@/function.ts';
3
1
  export class OpenAIChatCompletionsBilling {
4
2
  ctx;
5
3
  constructor(ctx) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/openai-chatcompletions/billing.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,4BAA4B;IACR;IAA7B,YAA6B,GAAyC;QAAzC,QAAG,GAAH,GAAG,CAAsC;IAAG,CAAC;IAEnE,MAAM,CAAC,KAA6B;QACvC,MAAM,kBAAkB,GAAG,KAAK,CAAC,qBAAqB,EAAE,aAAa,IAAI,CAAC,CAAC;QAC3E,MAAM,mBAAmB,GAAG,KAAK,CAAC,aAAa,GAAG,kBAAkB,CAAC;QACrE,OAAO,CACH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;YACvD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,kBAAkB,GAAG,GAAG;YACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAC/D,CAAC;IACN,CAAC;CACJ"}
@@ -0,0 +1,17 @@
1
+ import { Function } from '../../function.ts';
2
+ import OpenAI from 'openai';
3
+ export declare class OpenAIChatCompletionsToolCodec<in out fdm extends Function.Decl.Map.Proto> {
4
+ protected ctx: OpenAIChatCompletionsToolCodec.Context<fdm>;
5
+ constructor(ctx: OpenAIChatCompletionsToolCodec.Context<fdm>);
6
+ encodeFunctionCall(fc: Function.Call.From<fdm>): OpenAI.ChatCompletionMessageToolCall;
7
+ decodeFunctionCall(apifc: OpenAI.ChatCompletionMessageFunctionToolCall): Function.Call.From<fdm>;
8
+ encodeFunctionResponse(fr: Function.Response.From<fdm>): OpenAI.ChatCompletionToolMessageParam;
9
+ protected encodeFunctionDeclarationEntry(fdentry: Function.Decl.Entry.From<fdm>): OpenAI.ChatCompletionTool;
10
+ encodeFunctionDeclarationMap(fdm: fdm): OpenAI.ChatCompletionTool[];
11
+ }
12
+ export declare namespace OpenAIChatCompletionsToolCodec {
13
+ interface Context<in out fdm extends Function.Decl.Map.Proto> {
14
+ parallelToolCall: boolean;
15
+ fdm: fdm;
16
+ }
17
+ }
@@ -1,6 +1,5 @@
1
- import { Function } from '#@/function.ts';
2
- import OpenAI from 'openai';
3
- import { ResponseInvalid } from '#@/engine.ts';
1
+ import { Function } from "../../function.js";
2
+ import { ResponseInvalid } from "../../engine.js";
4
3
  import Ajv from 'ajv';
5
4
  const ajv = new Ajv();
6
5
  export class OpenAIChatCompletionsToolCodec {
@@ -8,7 +7,7 @@ export class OpenAIChatCompletionsToolCodec {
8
7
  constructor(ctx) {
9
8
  this.ctx = ctx;
10
9
  }
11
- convertFromFunctionCall(fc) {
10
+ encodeFunctionCall(fc) {
12
11
  if (fc.id) { }
13
12
  else
14
13
  throw new Error();
@@ -21,7 +20,7 @@ export class OpenAIChatCompletionsToolCodec {
21
20
  },
22
21
  };
23
22
  }
24
- convertToFunctionCall(apifc) {
23
+ decodeFunctionCall(apifc) {
25
24
  const fditem = this.ctx.fdm[apifc.function.name];
26
25
  if (fditem) { }
27
26
  else
@@ -31,56 +30,51 @@ export class OpenAIChatCompletionsToolCodec {
31
30
  return JSON.parse(apifc.function.arguments);
32
31
  }
33
32
  catch (e) {
34
- return new ResponseInvalid('Invalid JSON of function call', { cause: apifc });
33
+ throw new ResponseInvalid('Invalid JSON of function call', { cause: apifc });
35
34
  }
36
35
  })();
37
- if (ajv.validate(fditem.paraschema, args)) { }
36
+ if (ajv.validate(fditem.parameters, args)) { }
38
37
  else
39
38
  throw new ResponseInvalid('Invalid function arguments', { cause: apifc });
40
- return Function.Call.create({
39
+ return Function.Call.of({
41
40
  id: apifc.id,
42
41
  name: apifc.function.name,
43
42
  args,
44
43
  });
45
44
  }
46
- convertFromFunctionResponse(fr) {
45
+ encodeFunctionResponse(fr) {
47
46
  if (fr.id) { }
48
47
  else
49
48
  throw new Error();
50
- return {
51
- role: 'tool',
52
- tool_call_id: fr.id,
53
- content: fr.text,
54
- };
49
+ if (fr instanceof Function.Response.Successful)
50
+ return {
51
+ role: 'tool',
52
+ tool_call_id: fr.id,
53
+ content: fr.text,
54
+ };
55
+ else if (fr instanceof Function.Response.Failed)
56
+ return {
57
+ role: 'tool',
58
+ tool_call_id: fr.id,
59
+ content: fr.error,
60
+ };
61
+ else
62
+ throw new Error();
55
63
  }
56
- convertFromFunctionDeclarationEntry(fdentry) {
64
+ encodeFunctionDeclarationEntry(fdentry) {
57
65
  return {
58
66
  type: 'function',
59
67
  function: {
60
68
  name: fdentry[0],
61
69
  description: fdentry[1].description,
62
70
  strict: true,
63
- parameters: fdentry[1].paraschema,
71
+ parameters: fdentry[1].parameters,
64
72
  },
65
73
  };
66
74
  }
67
- convertFromFunctionDeclarationMap(fdm) {
75
+ encodeFunctionDeclarationMap(fdm) {
68
76
  const fdentries = Object.entries(fdm);
69
- return fdentries.map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry));
70
- }
71
- convertFromToolChoice(toolChoice) {
72
- if (toolChoice === Function.ToolChoice.NONE)
73
- return 'none';
74
- else if (toolChoice === Function.ToolChoice.REQUIRED)
75
- return 'required';
76
- else if (toolChoice === Function.ToolChoice.AUTO)
77
- return 'auto';
78
- else {
79
- if (toolChoice.length === 1) { }
80
- else
81
- throw new Error();
82
- return { type: 'function', function: { name: toolChoice[0] } };
83
- }
77
+ return fdentries.map(fdentry => this.encodeFunctionDeclarationEntry(fdentry));
84
78
  }
85
79
  }
86
80
  //# sourceMappingURL=tool-codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/openai-chatcompletions/tool-codec.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import OpenAI from 'openai';
2
- import type { Pricing } from '#@/engine.ts';
3
- export declare class OpenAIResponsesBilling {
4
- protected ctx: OpenAIResponsesBilling.Context;
5
- constructor(ctx: OpenAIResponsesBilling.Context);
2
+ import type { Pricing } from '../../engine.ts';
3
+ export declare class Billing {
4
+ protected ctx: Billing.Context;
5
+ constructor(ctx: Billing.Context);
6
6
  charge(usage: OpenAI.Responses.ResponseUsage): number;
7
7
  }
8
- export declare namespace OpenAIResponsesBilling {
8
+ export declare namespace Billing {
9
9
  interface Context {
10
10
  pricing: Pricing;
11
11
  }
@@ -1,5 +1,4 @@
1
- import OpenAI from 'openai';
2
- export class OpenAIResponsesBilling {
1
+ export class Billing {
3
2
  ctx;
4
3
  constructor(ctx) {
5
4
  this.ctx = ctx;
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/openai-responses/billing.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAI5B,MAAM,OAAO,sBAAsB;IACF;IAA7B,YAA6B,GAAmC;QAAnC,QAAG,GAAH,GAAG,CAAgC;IAAG,CAAC;IAG7D,MAAM,CAAC,KAAqC;QAC/C,MAAM,kBAAkB,GAAG,KAAK,CAAC,oBAAoB,CAAC,aAAa,CAAC;QACpE,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,GAAG,kBAAkB,CAAC;QACpE,OAAO,CACH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;YACvD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,kBAAkB,GAAG,GAAG;YACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,GAAG,GAAG,CAC3D,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../../src/api-types/openai-responses/billing.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,OAAO;IACa;IAA7B,YAA6B,GAAoB;QAApB,QAAG,GAAH,GAAG,CAAiB;IAAG,CAAC;IAG9C,MAAM,CAAC,KAAqC;QAC/C,MAAM,kBAAkB,GAAG,KAAK,CAAC,oBAAoB,CAAC,aAAa,CAAC;QACpE,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,GAAG,kBAAkB,CAAC;QACpE,OAAO,CACH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,mBAAmB,GAAG,GAAG;YACvD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,GAAG,kBAAkB,GAAG,GAAG;YACtD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,GAAG,GAAG,CAC3D,CAAC;IACN,CAAC;CACJ"}
@@ -1,16 +1,16 @@
1
1
  import OpenAI from 'openai';
2
- import { Function } from '#@/function.ts';
3
- export declare class OpenAIResponsesToolCodec<in out fdm extends Function.Declaration.Map> {
4
- protected ctx: OpenAIResponsesToolCodec.Context<fdm>;
5
- constructor(ctx: OpenAIResponsesToolCodec.Context<fdm>);
6
- convertFromFunctionResponse(fr: Function.Response.Distributive<fdm>): OpenAI.Responses.ResponseInputItem.FunctionCallOutput;
7
- protected convertFromFunctionDeclarationEntry(fdentry: Function.Declaration.Entry.From<fdm>): OpenAI.Responses.FunctionTool;
8
- convertFromFunctionDeclarationMap(fdm: fdm): OpenAI.Responses.FunctionTool[];
9
- convertFromToolChoice(toolChoice: Function.ToolChoice<fdm>): OpenAI.Responses.ToolChoiceOptions | OpenAI.Responses.ToolChoiceAllowed;
10
- convertToFunctionCall(apifc: OpenAI.Responses.ResponseFunctionToolCall): Function.Call.From<fdm>;
2
+ import { Function } from '../../function.ts';
3
+ export declare class ToolCodec<in out fdm extends Function.Decl.Map.Proto> {
4
+ protected ctx: ToolCodec.Context<fdm>;
5
+ constructor(ctx: ToolCodec.Context<fdm>);
6
+ encodeFunctionResponse(fr: Function.Response.From<fdm>): OpenAI.Responses.ResponseInputItem.FunctionCallOutput;
7
+ protected encodeFunctionDeclarationEntry(fdentry: Function.Decl.Entry.From<fdm>): OpenAI.Responses.FunctionTool;
8
+ encodeFunctionDeclarationMap(fdm: fdm): OpenAI.Responses.FunctionTool[];
9
+ decodeFunctionCall(apifc: OpenAI.Responses.ResponseFunctionToolCall): Function.Call.From<fdm>;
10
+ encodeFunctionCall(fc: Function.Call.From<fdm>): OpenAI.Responses.ResponseFunctionToolCall;
11
11
  }
12
- export declare namespace OpenAIResponsesToolCodec {
13
- interface Context<in out fdm extends Function.Declaration.Map> {
12
+ export declare namespace ToolCodec {
13
+ interface Context<in out fdm extends Function.Decl.Map.Proto> {
14
14
  fdm: fdm;
15
15
  }
16
16
  }
@@ -1,52 +1,45 @@
1
- import OpenAI from 'openai';
2
- import { Function } from '#@/function.ts';
3
- import { ResponseInvalid } from '#@/engine.ts';
1
+ import { Function } from "../../function.js";
2
+ import { ResponseInvalid } from "../../engine.js";
4
3
  import Ajv from 'ajv';
5
4
  const ajv = new Ajv();
6
- export class OpenAIResponsesToolCodec {
5
+ export class ToolCodec {
7
6
  ctx;
8
7
  constructor(ctx) {
9
8
  this.ctx = ctx;
10
9
  }
11
- convertFromFunctionResponse(fr) {
10
+ encodeFunctionResponse(fr) {
12
11
  if (fr.id) { }
13
12
  else
14
13
  throw new Error();
15
- return {
16
- type: 'function_call_output',
17
- call_id: fr.id,
18
- output: fr.text,
19
- };
14
+ if (fr instanceof Function.Response.Successful)
15
+ return {
16
+ type: 'function_call_output',
17
+ call_id: fr.id,
18
+ output: fr.text,
19
+ };
20
+ else if (fr instanceof Function.Response.Failed)
21
+ return {
22
+ type: 'function_call_output',
23
+ call_id: fr.id,
24
+ output: fr.error,
25
+ };
26
+ else
27
+ throw new Error();
20
28
  }
21
- convertFromFunctionDeclarationEntry(fdentry) {
29
+ encodeFunctionDeclarationEntry(fdentry) {
22
30
  return {
23
31
  name: fdentry[0],
24
32
  description: fdentry[1].description,
25
- parameters: fdentry[1].paraschema,
33
+ parameters: fdentry[1].parameters,
26
34
  strict: true,
27
35
  type: 'function',
28
36
  };
29
37
  }
30
- convertFromFunctionDeclarationMap(fdm) {
38
+ encodeFunctionDeclarationMap(fdm) {
31
39
  const fdentries = Object.entries(fdm);
32
- return fdentries.map(fdentry => this.convertFromFunctionDeclarationEntry(fdentry));
40
+ return fdentries.map(fdentry => this.encodeFunctionDeclarationEntry(fdentry));
33
41
  }
34
- convertFromToolChoice(toolChoice) {
35
- if (toolChoice === Function.ToolChoice.NONE)
36
- return 'none';
37
- else if (toolChoice === Function.ToolChoice.REQUIRED)
38
- return 'required';
39
- else if (toolChoice === Function.ToolChoice.AUTO)
40
- return 'auto';
41
- else {
42
- return {
43
- type: 'allowed_tools',
44
- mode: 'required',
45
- tools: toolChoice.map(name => ({ type: 'function', name })),
46
- };
47
- }
48
- }
49
- convertToFunctionCall(apifc) {
42
+ decodeFunctionCall(apifc) {
50
43
  const fditem = this.ctx.fdm[apifc.name];
51
44
  if (fditem) { }
52
45
  else
@@ -59,14 +52,25 @@ export class OpenAIResponsesToolCodec {
59
52
  throw new ResponseInvalid('Invalid JSON of function call', { cause: apifc });
60
53
  }
61
54
  })();
62
- if (ajv.validate(fditem.paraschema, args)) { }
55
+ if (ajv.validate(fditem.parameters, args)) { }
63
56
  else
64
57
  throw new ResponseInvalid('Function call not conforming to schema', { cause: apifc });
65
- return Function.Call.create({
58
+ return Function.Call.of({
66
59
  id: apifc.call_id,
67
60
  name: apifc.name,
68
61
  args,
69
62
  });
70
63
  }
64
+ encodeFunctionCall(fc) {
65
+ if (fc.id) { }
66
+ else
67
+ throw new Error();
68
+ return {
69
+ type: 'function_call',
70
+ call_id: fc.id,
71
+ name: fc.name,
72
+ arguments: JSON.stringify(fc.args),
73
+ };
74
+ }
71
75
  }
72
76
  //# sourceMappingURL=tool-codec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/openai-responses/tool-codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-codec.js","sourceRoot":"","sources":["../../../src/api-types/openai-responses/tool-codec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ readonly verbatim: {
3
+ readonly instruction: string;
4
+ readonly declarations: string;
5
+ };
6
+ };
7
+ export default _default;
@@ -0,0 +1,8 @@
1
+ import { loadtext } from '@zimtsui/node-loaders';
2
+ export default {
3
+ verbatim: {
4
+ instruction: loadtext(import.meta.resolve('../assets/verbatim/instruction.md')),
5
+ declarations: loadtext(import.meta.resolve('../assets/verbatim/declarations.handlebars')),
6
+ },
7
+ };
8
+ //# sourceMappingURL=assets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,eAAe;IACX,QAAQ,EAAE;QACN,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QAC/E,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;KAC5F;CACK,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { Function } from '../function.ts';
2
+ import { Engine } from '../engine.ts';
3
+ import { Verbatim } from '../verbatim.ts';
4
+ declare const NOMINAL: unique symbol;
5
+ export interface Session<in out fdu extends Function.Decl.Proto, in out vdu extends Verbatim.Decl.Proto> extends Engine.Session<RoleMessage.User<fdu>, RoleMessage.Ai<fdu, vdu>, RoleMessage.Developer> {
6
+ }
7
+ export declare namespace Session {
8
+ type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = Session<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
9
+ type ChatMessage<fdu extends Function.Decl.Proto, vdu extends Verbatim.Decl.Proto> = Engine.Session.ChatMessage<RoleMessage.User<fdu>, RoleMessage.Ai<fdu, vdu>>;
10
+ namespace ChatMessage {
11
+ type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = ChatMessage<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
12
+ }
13
+ }
14
+ export declare namespace RoleMessage {
15
+ namespace Part {
16
+ class Text<out vdu extends Verbatim.Decl.Proto> {
17
+ text: string;
18
+ vrs: Verbatim.Request.Of<vdu>[];
19
+ static paragraph(text: string): Text<never>;
20
+ protected [NOMINAL]: never;
21
+ constructor(text: string, vrs: Verbatim.Request.Of<vdu>[]);
22
+ }
23
+ }
24
+ class Ai<out fdu extends Function.Decl.Proto, out vdu extends Verbatim.Decl.Proto> {
25
+ protected parts: RoleMessage.Ai.Part<fdu, vdu>[];
26
+ protected [NOMINAL]: never;
27
+ constructor(parts: RoleMessage.Ai.Part<fdu, vdu>[]);
28
+ getParts(): RoleMessage.Ai.Part<fdu, vdu>[];
29
+ allTextPart(): boolean;
30
+ getTextParts(): RoleMessage.Part.Text<vdu>[];
31
+ getText(): string;
32
+ getFunctionCalls(): Function.Call.Of<fdu>[];
33
+ getVerbatimRequests(): Verbatim.Request.Of<vdu>[];
34
+ getOnlyFunctionCall(): Function.Call.Of<fdu>;
35
+ getOnlyVerbatimRequest(): Verbatim.Request.Of<vdu>;
36
+ }
37
+ namespace Ai {
38
+ type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = RoleMessage.Ai<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
39
+ type Part<fdu extends Function.Decl.Proto, vdu extends Verbatim.Decl.Proto> = RoleMessage.Part.Text<vdu> | Function.Call.Of<fdu>;
40
+ namespace Part {
41
+ type From<fdm extends Function.Decl.Map.Proto, vdm extends Verbatim.Decl.Map.Proto> = RoleMessage.Ai.Part<Function.Decl.From<fdm>, Verbatim.Decl.From<vdm>>;
42
+ }
43
+ }
44
+ class User<out fdu extends Function.Decl.Proto> {
45
+ protected parts: RoleMessage.User.Part<fdu>[];
46
+ protected [NOMINAL]: never;
47
+ constructor(parts: RoleMessage.User.Part<fdu>[]);
48
+ getParts(): RoleMessage.User.Part<fdu>[];
49
+ getFunctionResponses(): Function.Response.Of<fdu>[];
50
+ getOnlyFunctionResponse(): Function.Response.Of<fdu>;
51
+ }
52
+ namespace User {
53
+ type From<fdm extends Function.Decl.Map.Proto> = RoleMessage.User<Function.Decl.From<fdm>>;
54
+ type Part<fdu extends Function.Decl.Proto> = RoleMessage.Part.Text<never> | Function.Response.Of<fdu>;
55
+ }
56
+ class Developer {
57
+ protected parts: RoleMessage.Developer.Part[];
58
+ protected [NOMINAL]: never;
59
+ constructor(parts: RoleMessage.Developer.Part[]);
60
+ getParts(): RoleMessage.Developer.Part[];
61
+ getText(): string;
62
+ }
63
+ namespace Developer {
64
+ type Part = RoleMessage.Part.Text<never>;
65
+ }
66
+ }
67
+ export {};