@bastani/atomic 0.9.11-alpha.7 → 0.9.11-alpha.8

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 (325) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +3 -5
  3. package/dist/builtin/intercom/package.json +1 -1
  4. package/dist/builtin/mcp/package.json +1 -1
  5. package/dist/builtin/mcp/sampling-handler.ts +1 -5
  6. package/dist/builtin/subagents/package.json +1 -1
  7. package/dist/builtin/web-access/package.json +1 -1
  8. package/dist/builtin/workflows/CHANGELOG.md +1 -0
  9. package/dist/builtin/workflows/README.md +1 -1
  10. package/dist/builtin/workflows/package.json +1 -1
  11. package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +1 -24
  12. package/dist/builtin/workflows/src/extension/index.bundle.mjs +31 -28
  13. package/dist/builtin/workflows/src/extension/workflow-model-catalog.ts +26 -0
  14. package/dist/builtin/workflows/src/extension/workflow-prompts.ts +3 -2
  15. package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +5 -5
  16. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session-options.ts +3 -3
  17. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session.ts +2 -2
  18. package/dist/cli/list-models.d.ts +2 -2
  19. package/dist/cli/list-models.d.ts.map +1 -1
  20. package/dist/cli/list-models.js +5 -5
  21. package/dist/cli/list-models.js.map +1 -1
  22. package/dist/core/agent-session-accessors.js +1 -1
  23. package/dist/core/agent-session-accessors.js.map +1 -1
  24. package/dist/core/agent-session-auto-compaction.d.ts.map +1 -1
  25. package/dist/core/agent-session-auto-compaction.js +2 -5
  26. package/dist/core/agent-session-auto-compaction.js.map +1 -1
  27. package/dist/core/agent-session-compaction.js +1 -1
  28. package/dist/core/agent-session-compaction.js.map +1 -1
  29. package/dist/core/agent-session-extension-bindings.js +5 -5
  30. package/dist/core/agent-session-extension-bindings.js.map +1 -1
  31. package/dist/core/agent-session-methods.d.ts +4 -4
  32. package/dist/core/agent-session-methods.d.ts.map +1 -1
  33. package/dist/core/agent-session-methods.js.map +1 -1
  34. package/dist/core/agent-session-models.d.ts +1 -1
  35. package/dist/core/agent-session-models.d.ts.map +1 -1
  36. package/dist/core/agent-session-models.js +18 -14
  37. package/dist/core/agent-session-models.js.map +1 -1
  38. package/dist/core/agent-session-post-tool-compaction.d.ts.map +1 -1
  39. package/dist/core/agent-session-post-tool-compaction.js +2 -4
  40. package/dist/core/agent-session-post-tool-compaction.js.map +1 -1
  41. package/dist/core/agent-session-prompt.d.ts.map +1 -1
  42. package/dist/core/agent-session-prompt.js +3 -7
  43. package/dist/core/agent-session-prompt.js.map +1 -1
  44. package/dist/core/agent-session-retry.js +1 -1
  45. package/dist/core/agent-session-retry.js.map +1 -1
  46. package/dist/core/agent-session-runtime-auth.d.ts +3 -3
  47. package/dist/core/agent-session-runtime-auth.d.ts.map +1 -1
  48. package/dist/core/agent-session-runtime-auth.js +4 -14
  49. package/dist/core/agent-session-runtime-auth.js.map +1 -1
  50. package/dist/core/agent-session-runtime.d.ts +1 -1
  51. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  52. package/dist/core/agent-session-runtime.js +3 -3
  53. package/dist/core/agent-session-runtime.js.map +1 -1
  54. package/dist/core/agent-session-services.d.ts +3 -8
  55. package/dist/core/agent-session-services.d.ts.map +1 -1
  56. package/dist/core/agent-session-services.js +16 -23
  57. package/dist/core/agent-session-services.js.map +1 -1
  58. package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
  59. package/dist/core/agent-session-tool-registry.js +2 -1
  60. package/dist/core/agent-session-tool-registry.js.map +1 -1
  61. package/dist/core/agent-session-types.d.ts +2 -2
  62. package/dist/core/agent-session-types.d.ts.map +1 -1
  63. package/dist/core/agent-session-types.js.map +1 -1
  64. package/dist/core/agent-session.d.ts +2 -2
  65. package/dist/core/agent-session.d.ts.map +1 -1
  66. package/dist/core/agent-session.js +1 -1
  67. package/dist/core/agent-session.js.map +1 -1
  68. package/dist/core/auth-storage-backends.d.ts +1 -0
  69. package/dist/core/auth-storage-backends.d.ts.map +1 -1
  70. package/dist/core/auth-storage-backends.js +18 -4
  71. package/dist/core/auth-storage-backends.js.map +1 -1
  72. package/dist/core/auth-storage.d.ts +12 -139
  73. package/dist/core/auth-storage.d.ts.map +1 -1
  74. package/dist/core/auth-storage.js +68 -374
  75. package/dist/core/auth-storage.js.map +1 -1
  76. package/dist/core/copilot-env-routing.d.ts +36 -0
  77. package/dist/core/copilot-env-routing.d.ts.map +1 -0
  78. package/dist/core/copilot-env-routing.js +94 -0
  79. package/dist/core/copilot-env-routing.js.map +1 -0
  80. package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
  81. package/dist/core/extensions/loader-virtual-modules.js +10 -2
  82. package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
  83. package/dist/core/extensions/provider-types.d.ts +0 -40
  84. package/dist/core/extensions/provider-types.d.ts.map +1 -1
  85. package/dist/core/extensions/provider-types.js.map +1 -1
  86. package/dist/core/fallback-models.d.ts +4 -4
  87. package/dist/core/fallback-models.d.ts.map +1 -1
  88. package/dist/core/fallback-models.js +3 -3
  89. package/dist/core/fallback-models.js.map +1 -1
  90. package/dist/core/model-config.d.ts +542 -0
  91. package/dist/core/model-config.d.ts.map +1 -0
  92. package/dist/core/{model-registry-schemas.js → model-config.js} +85 -34
  93. package/dist/core/model-config.js.map +1 -0
  94. package/dist/core/model-registry.d.ts +25 -85
  95. package/dist/core/model-registry.d.ts.map +1 -1
  96. package/dist/core/model-registry.js +65 -388
  97. package/dist/core/model-registry.js.map +1 -1
  98. package/dist/core/model-resolver-cli.d.ts +2 -2
  99. package/dist/core/model-resolver-cli.d.ts.map +1 -1
  100. package/dist/core/model-resolver-cli.js +2 -2
  101. package/dist/core/model-resolver-cli.js.map +1 -1
  102. package/dist/core/model-resolver-initial.d.ts +4 -4
  103. package/dist/core/model-resolver-initial.d.ts.map +1 -1
  104. package/dist/core/model-resolver-initial.js +17 -17
  105. package/dist/core/model-resolver-initial.js.map +1 -1
  106. package/dist/core/model-resolver-scope.d.ts +3 -3
  107. package/dist/core/model-resolver-scope.d.ts.map +1 -1
  108. package/dist/core/model-resolver-scope.js +4 -4
  109. package/dist/core/model-resolver-scope.js.map +1 -1
  110. package/dist/core/model-runtime-auth.d.ts +7 -0
  111. package/dist/core/model-runtime-auth.d.ts.map +1 -0
  112. package/dist/core/model-runtime-auth.js +14 -0
  113. package/dist/core/model-runtime-auth.js.map +1 -0
  114. package/dist/core/model-runtime-providers.d.ts +6 -0
  115. package/dist/core/model-runtime-providers.d.ts.map +1 -0
  116. package/dist/core/model-runtime-providers.js +22 -0
  117. package/dist/core/model-runtime-providers.js.map +1 -0
  118. package/dist/core/model-runtime-restoration.d.ts +6 -0
  119. package/dist/core/model-runtime-restoration.d.ts.map +1 -0
  120. package/dist/core/model-runtime-restoration.js +21 -0
  121. package/dist/core/model-runtime-restoration.js.map +1 -0
  122. package/dist/core/model-runtime-snapshot.d.ts +16 -0
  123. package/dist/core/model-runtime-snapshot.d.ts.map +1 -0
  124. package/dist/core/model-runtime-snapshot.js +52 -0
  125. package/dist/core/model-runtime-snapshot.js.map +1 -0
  126. package/dist/core/model-runtime-streaming.d.ts +17 -0
  127. package/dist/core/model-runtime-streaming.d.ts.map +1 -0
  128. package/dist/core/model-runtime-streaming.js +66 -0
  129. package/dist/core/model-runtime-streaming.js.map +1 -0
  130. package/dist/core/model-runtime-types.d.ts +21 -0
  131. package/dist/core/model-runtime-types.d.ts.map +1 -0
  132. package/dist/core/model-runtime-types.js +2 -0
  133. package/dist/core/model-runtime-types.js.map +1 -0
  134. package/dist/core/model-runtime.d.ts +50 -29
  135. package/dist/core/model-runtime.d.ts.map +1 -1
  136. package/dist/core/model-runtime.js +330 -90
  137. package/dist/core/model-runtime.js.map +1 -1
  138. package/dist/core/models-store.d.ts +2 -10
  139. package/dist/core/models-store.d.ts.map +1 -1
  140. package/dist/core/models-store.js +2 -29
  141. package/dist/core/models-store.js.map +1 -1
  142. package/dist/core/oauth-login.d.ts +24 -0
  143. package/dist/core/oauth-login.d.ts.map +1 -0
  144. package/dist/core/oauth-login.js +87 -0
  145. package/dist/core/oauth-login.js.map +1 -0
  146. package/dist/core/oauth-provider-metadata.d.ts +5 -0
  147. package/dist/core/oauth-provider-metadata.d.ts.map +1 -0
  148. package/dist/core/oauth-provider-metadata.js +19 -0
  149. package/dist/core/oauth-provider-metadata.js.map +1 -0
  150. package/dist/core/provider-composer-internal.d.ts +53 -0
  151. package/dist/core/provider-composer-internal.d.ts.map +1 -0
  152. package/dist/core/provider-composer-internal.js +273 -0
  153. package/dist/core/provider-composer-internal.js.map +1 -0
  154. package/dist/core/provider-composer.d.ts +16 -0
  155. package/dist/core/provider-composer.d.ts.map +1 -0
  156. package/dist/core/provider-composer.js +108 -0
  157. package/dist/core/provider-composer.js.map +1 -0
  158. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  159. package/dist/core/remote-catalog-provider.js +74 -122
  160. package/dist/core/remote-catalog-provider.js.map +1 -1
  161. package/dist/core/resolve-config-value.d.ts +8 -7
  162. package/dist/core/resolve-config-value.d.ts.map +1 -1
  163. package/dist/core/resolve-config-value.js +26 -23
  164. package/dist/core/resolve-config-value.js.map +1 -1
  165. package/dist/core/runtime-credentials.d.ts +16 -0
  166. package/dist/core/runtime-credentials.d.ts.map +1 -0
  167. package/dist/core/runtime-credentials.js +42 -0
  168. package/dist/core/runtime-credentials.js.map +1 -0
  169. package/dist/core/sdk-types.d.ts +1 -7
  170. package/dist/core/sdk-types.d.ts.map +1 -1
  171. package/dist/core/sdk-types.js.map +1 -1
  172. package/dist/core/sdk.d.ts.map +1 -1
  173. package/dist/core/sdk.js +27 -28
  174. package/dist/core/sdk.js.map +1 -1
  175. package/dist/extensions/llama/index.js +1 -1
  176. package/dist/extensions/llama/index.js.map +1 -1
  177. package/dist/extensions/llama/provider.d.ts +2 -4
  178. package/dist/extensions/llama/provider.d.ts.map +1 -1
  179. package/dist/extensions/llama/provider.js +25 -17
  180. package/dist/extensions/llama/provider.js.map +1 -1
  181. package/dist/index.d.ts +2 -3
  182. package/dist/index.d.ts.map +1 -1
  183. package/dist/index.js +3 -4
  184. package/dist/index.js.map +1 -1
  185. package/dist/main-runtime-api-key.d.ts +6 -0
  186. package/dist/main-runtime-api-key.d.ts.map +1 -0
  187. package/dist/main-runtime-api-key.js +6 -0
  188. package/dist/main-runtime-api-key.js.map +1 -0
  189. package/dist/main-session-options.d.ts +2 -2
  190. package/dist/main-session-options.d.ts.map +1 -1
  191. package/dist/main-session-options.js +3 -3
  192. package/dist/main-session-options.js.map +1 -1
  193. package/dist/main.d.ts.map +1 -1
  194. package/dist/main.js +9 -11
  195. package/dist/main.js.map +1 -1
  196. package/dist/modes/interactive/components/footer.js +1 -1
  197. package/dist/modes/interactive/components/footer.js.map +1 -1
  198. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  199. package/dist/modes/interactive/components/login-dialog.js +1 -3
  200. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  201. package/dist/modes/interactive/components/model-selector.d.ts +4 -3
  202. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  203. package/dist/modes/interactive/components/model-selector.js +56 -73
  204. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  205. package/dist/modes/interactive/components/oauth-selector.d.ts +4 -3
  206. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  207. package/dist/modes/interactive/components/oauth-selector.js +15 -24
  208. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  209. package/dist/modes/interactive/interactive-agent-events.js +1 -1
  210. package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
  211. package/dist/modes/interactive/interactive-auth-login.js +20 -31
  212. package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
  213. package/dist/modes/interactive/interactive-auth-routing.d.ts +1 -1
  214. package/dist/modes/interactive/interactive-auth-routing.d.ts.map +1 -1
  215. package/dist/modes/interactive/interactive-auth-routing.js +21 -47
  216. package/dist/modes/interactive/interactive-auth-routing.js.map +1 -1
  217. package/dist/modes/interactive/interactive-autocomplete.js +3 -3
  218. package/dist/modes/interactive/interactive-autocomplete.js.map +1 -1
  219. package/dist/modes/interactive/interactive-deferred-startup.js +8 -8
  220. package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
  221. package/dist/modes/interactive/interactive-extension-runtime.js +2 -1
  222. package/dist/modes/interactive/interactive-extension-runtime.js.map +1 -1
  223. package/dist/modes/interactive/interactive-model-catalog-startup.js +2 -2
  224. package/dist/modes/interactive/interactive-model-catalog-startup.js.map +1 -1
  225. package/dist/modes/interactive/interactive-model-routing.js +11 -11
  226. package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
  227. package/dist/modes/interactive/interactive-render-chat.js +1 -1
  228. package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
  229. package/dist/modes/interactive/interactive-slash-commands.js +2 -2
  230. package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
  231. package/dist/modes/interactive/interactive-startup.js +1 -1
  232. package/dist/modes/interactive/interactive-startup.js.map +1 -1
  233. package/dist/modes/interactive-engine/isolated-auth.d.ts +2 -2
  234. package/dist/modes/interactive-engine/isolated-auth.d.ts.map +1 -1
  235. package/dist/modes/interactive-engine/isolated-auth.js +4 -3
  236. package/dist/modes/interactive-engine/isolated-auth.js.map +1 -1
  237. package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
  238. package/dist/modes/interactive-engine/isolated-runtime.js +4 -3
  239. package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
  240. package/dist/modes/interactive-engine/remote-model-catalog.d.ts +0 -1
  241. package/dist/modes/interactive-engine/remote-model-catalog.d.ts.map +1 -1
  242. package/dist/modes/interactive-engine/remote-model-catalog.js +11 -50
  243. package/dist/modes/interactive-engine/remote-model-catalog.js.map +1 -1
  244. package/dist/modes/rpc/rpc-client-api.d.ts +2 -2
  245. package/dist/modes/rpc/rpc-client-api.d.ts.map +1 -1
  246. package/dist/modes/rpc/rpc-client-api.js.map +1 -1
  247. package/dist/modes/rpc/rpc-command-handler.d.ts.map +1 -1
  248. package/dist/modes/rpc/rpc-command-handler.js +26 -19
  249. package/dist/modes/rpc/rpc-command-handler.js.map +1 -1
  250. package/dist/modes/rpc/rpc-oauth-client.d.ts +1 -1
  251. package/dist/modes/rpc/rpc-oauth-client.d.ts.map +1 -1
  252. package/dist/modes/rpc/rpc-oauth-client.js +1 -1
  253. package/dist/modes/rpc/rpc-oauth-client.js.map +1 -1
  254. package/dist/modes/rpc/rpc-oauth-interaction.d.ts +1 -1
  255. package/dist/modes/rpc/rpc-oauth-interaction.d.ts.map +1 -1
  256. package/dist/modes/rpc/rpc-oauth-interaction.js +1 -1
  257. package/dist/modes/rpc/rpc-oauth-interaction.js.map +1 -1
  258. package/dist/modes/rpc/rpc-provider-auth.d.ts +4 -5
  259. package/dist/modes/rpc/rpc-provider-auth.d.ts.map +1 -1
  260. package/dist/modes/rpc/rpc-provider-auth.js +19 -66
  261. package/dist/modes/rpc/rpc-provider-auth.js.map +1 -1
  262. package/dist/modes/rpc/rpc-session-binding.js +1 -1
  263. package/dist/modes/rpc/rpc-session-binding.js.map +1 -1
  264. package/dist/modes/rpc/rpc-types.d.ts +7 -4
  265. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  266. package/dist/modes/rpc/rpc-types.js.map +1 -1
  267. package/dist/package-manager-cli.d.ts.map +1 -1
  268. package/dist/package-manager-cli.js +5 -7
  269. package/dist/package-manager-cli.js.map +1 -1
  270. package/docs/changelog.mdx +1 -1
  271. package/docs/custom-provider.md +1 -1
  272. package/docs/models.md +4 -6
  273. package/docs/providers.md +13 -0
  274. package/docs/quickstart.md +2 -1
  275. package/docs/sdk.md +32 -49
  276. package/docs/workflows.md +3 -3
  277. package/examples/sdk/02-custom-model.ts +8 -10
  278. package/examples/sdk/09-api-keys-and-oauth.ts +17 -23
  279. package/examples/sdk/12-full-control.ts +9 -11
  280. package/examples/sdk/README.md +17 -21
  281. package/npm-shrinkwrap.json +23 -23
  282. package/package.json +2 -2
  283. package/dist/core/model-registry-auth.d.ts +0 -10
  284. package/dist/core/model-registry-auth.d.ts.map +0 -1
  285. package/dist/core/model-registry-auth.js +0 -98
  286. package/dist/core/model-registry-auth.js.map +0 -1
  287. package/dist/core/model-registry-builtins.d.ts +0 -8
  288. package/dist/core/model-registry-builtins.d.ts.map +0 -1
  289. package/dist/core/model-registry-builtins.js +0 -104
  290. package/dist/core/model-registry-builtins.js.map +0 -1
  291. package/dist/core/model-registry-custom-loader.d.ts +0 -3
  292. package/dist/core/model-registry-custom-loader.d.ts.map +0 -1
  293. package/dist/core/model-registry-custom-loader.js +0 -255
  294. package/dist/core/model-registry-custom-loader.js.map +0 -1
  295. package/dist/core/model-registry-dynamic.d.ts +0 -7
  296. package/dist/core/model-registry-dynamic.d.ts.map +0 -1
  297. package/dist/core/model-registry-dynamic.js +0 -189
  298. package/dist/core/model-registry-dynamic.js.map +0 -1
  299. package/dist/core/model-registry-extension-refresh.d.ts +0 -23
  300. package/dist/core/model-registry-extension-refresh.d.ts.map +0 -1
  301. package/dist/core/model-registry-extension-refresh.js +0 -32
  302. package/dist/core/model-registry-extension-refresh.js.map +0 -1
  303. package/dist/core/model-registry-loader.d.ts +0 -5
  304. package/dist/core/model-registry-loader.d.ts.map +0 -1
  305. package/dist/core/model-registry-loader.js +0 -29
  306. package/dist/core/model-registry-loader.js.map +0 -1
  307. package/dist/core/model-registry-schemas.d.ts +0 -1399
  308. package/dist/core/model-registry-schemas.d.ts.map +0 -1
  309. package/dist/core/model-registry-schemas.js.map +0 -1
  310. package/dist/core/model-registry-types.d.ts +0 -91
  311. package/dist/core/model-registry-types.d.ts.map +0 -1
  312. package/dist/core/model-registry-types.js +0 -2
  313. package/dist/core/model-registry-types.js.map +0 -1
  314. package/dist/core/model-registry-validation.d.ts +0 -7
  315. package/dist/core/model-registry-validation.d.ts.map +0 -1
  316. package/dist/core/model-registry-validation.js +0 -12
  317. package/dist/core/model-registry-validation.js.map +0 -1
  318. package/dist/core/oauth-compat.d.ts +0 -17
  319. package/dist/core/oauth-compat.d.ts.map +0 -1
  320. package/dist/core/oauth-compat.js +0 -2
  321. package/dist/core/oauth-compat.js.map +0 -1
  322. package/dist/core/oauth-provider-bridge.d.ts +0 -63
  323. package/dist/core/oauth-provider-bridge.d.ts.map +0 -1
  324. package/dist/core/oauth-provider-bridge.js +0 -232
  325. package/dist/core/oauth-provider-bridge.js.map +0 -1
@@ -0,0 +1,542 @@
1
+ /** Immutable, credential-blind models.json snapshot. */
2
+ import { type Static, Type } from "typebox";
3
+ declare const ModelDefinitionSchema: Type.TObject<{
4
+ id: Type.TString;
5
+ name: Type.TOptional<Type.TString>;
6
+ api: Type.TOptional<Type.TString>;
7
+ baseUrl: Type.TOptional<Type.TString>;
8
+ reasoning: Type.TOptional<Type.TBoolean>;
9
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
10
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
11
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
12
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
13
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
14
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
15
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
16
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
17
+ }>>;
18
+ input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
19
+ cost: Type.TOptional<Type.TObject<{
20
+ input: Type.TNumber;
21
+ output: Type.TNumber;
22
+ cacheRead: Type.TNumber;
23
+ cacheWrite: Type.TNumber;
24
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
25
+ input: Type.TNumber;
26
+ output: Type.TNumber;
27
+ cacheRead: Type.TNumber;
28
+ cacheWrite: Type.TNumber;
29
+ inputTokensAbove: Type.TNumber;
30
+ }>>>;
31
+ }>>;
32
+ contextWindow: Type.TOptional<Type.TNumber>;
33
+ maxTokens: Type.TOptional<Type.TNumber>;
34
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
35
+ compat: Type.TOptional<Type.TUnion<[Type.TObject<{
36
+ supportsStore: Type.TOptional<Type.TBoolean>;
37
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
38
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
39
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
40
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
41
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
42
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
43
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
44
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
45
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"deepseek">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
46
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
47
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
48
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
49
+ }>]>>>;
50
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
51
+ openRouterRouting: Type.TOptional<Type.TObject<{
52
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
53
+ require_parameters: Type.TOptional<Type.TBoolean>;
54
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
55
+ zdr: Type.TOptional<Type.TBoolean>;
56
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
57
+ order: Type.TOptional<Type.TArray<Type.TString>>;
58
+ only: Type.TOptional<Type.TArray<Type.TString>>;
59
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
60
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
61
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
62
+ by: Type.TOptional<Type.TString>;
63
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
64
+ }>]>>;
65
+ max_price: Type.TOptional<Type.TObject<{
66
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
67
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
68
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
69
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
70
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
71
+ }>>;
72
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
73
+ p50: Type.TOptional<Type.TNumber>;
74
+ p75: Type.TOptional<Type.TNumber>;
75
+ p90: Type.TOptional<Type.TNumber>;
76
+ p99: Type.TOptional<Type.TNumber>;
77
+ }>]>>;
78
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
79
+ p50: Type.TOptional<Type.TNumber>;
80
+ p75: Type.TOptional<Type.TNumber>;
81
+ p90: Type.TOptional<Type.TNumber>;
82
+ p99: Type.TOptional<Type.TNumber>;
83
+ }>]>>;
84
+ }>>;
85
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
86
+ only: Type.TOptional<Type.TArray<Type.TString>>;
87
+ order: Type.TOptional<Type.TArray<Type.TString>>;
88
+ }>>;
89
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
90
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
91
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
92
+ deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
93
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
94
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
95
+ }>, Type.TObject<{
96
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
97
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
98
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
99
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
100
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
101
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
102
+ }>, Type.TObject<{
103
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
104
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
105
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
106
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
107
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
108
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
109
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
110
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
111
+ supportsToolReferences: Type.TOptional<Type.TBoolean>;
112
+ }>]>>;
113
+ }>;
114
+ declare const ModelOverrideSchema: Type.TObject<{
115
+ name: Type.TOptional<Type.TString>;
116
+ reasoning: Type.TOptional<Type.TBoolean>;
117
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
118
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
119
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
120
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
121
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
122
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
123
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
124
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
125
+ }>>;
126
+ input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
127
+ cost: Type.TOptional<Type.TObject<{
128
+ input: Type.TOptional<Type.TNumber>;
129
+ output: Type.TOptional<Type.TNumber>;
130
+ cacheRead: Type.TOptional<Type.TNumber>;
131
+ cacheWrite: Type.TOptional<Type.TNumber>;
132
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
133
+ input: Type.TNumber;
134
+ output: Type.TNumber;
135
+ cacheRead: Type.TNumber;
136
+ cacheWrite: Type.TNumber;
137
+ inputTokensAbove: Type.TNumber;
138
+ }>>>;
139
+ }>>;
140
+ contextWindow: Type.TOptional<Type.TNumber>;
141
+ maxTokens: Type.TOptional<Type.TNumber>;
142
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
143
+ compat: Type.TOptional<Type.TUnion<[Type.TObject<{
144
+ supportsStore: Type.TOptional<Type.TBoolean>;
145
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
146
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
147
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
148
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
149
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
150
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
151
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
152
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
153
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"deepseek">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
154
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
155
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
156
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
157
+ }>]>>>;
158
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
159
+ openRouterRouting: Type.TOptional<Type.TObject<{
160
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
161
+ require_parameters: Type.TOptional<Type.TBoolean>;
162
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
163
+ zdr: Type.TOptional<Type.TBoolean>;
164
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
165
+ order: Type.TOptional<Type.TArray<Type.TString>>;
166
+ only: Type.TOptional<Type.TArray<Type.TString>>;
167
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
168
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
169
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
170
+ by: Type.TOptional<Type.TString>;
171
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
172
+ }>]>>;
173
+ max_price: Type.TOptional<Type.TObject<{
174
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
175
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
176
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
177
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
178
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
179
+ }>>;
180
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
181
+ p50: Type.TOptional<Type.TNumber>;
182
+ p75: Type.TOptional<Type.TNumber>;
183
+ p90: Type.TOptional<Type.TNumber>;
184
+ p99: Type.TOptional<Type.TNumber>;
185
+ }>]>>;
186
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
187
+ p50: Type.TOptional<Type.TNumber>;
188
+ p75: Type.TOptional<Type.TNumber>;
189
+ p90: Type.TOptional<Type.TNumber>;
190
+ p99: Type.TOptional<Type.TNumber>;
191
+ }>]>>;
192
+ }>>;
193
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
194
+ only: Type.TOptional<Type.TArray<Type.TString>>;
195
+ order: Type.TOptional<Type.TArray<Type.TString>>;
196
+ }>>;
197
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
198
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
199
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
200
+ deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
201
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
202
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
203
+ }>, Type.TObject<{
204
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
205
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
206
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
207
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
208
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
209
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
210
+ }>, Type.TObject<{
211
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
212
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
213
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
214
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
215
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
216
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
217
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
218
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
219
+ supportsToolReferences: Type.TOptional<Type.TBoolean>;
220
+ }>]>>;
221
+ }>;
222
+ declare const ProviderConfigSchema: Type.TObject<{
223
+ name: Type.TOptional<Type.TString>;
224
+ baseUrl: Type.TOptional<Type.TString>;
225
+ apiKey: Type.TOptional<Type.TString>;
226
+ api: Type.TOptional<Type.TString>;
227
+ oauth: Type.TOptional<Type.TLiteral<"radius">>;
228
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
229
+ compat: Type.TOptional<Type.TUnion<[Type.TObject<{
230
+ supportsStore: Type.TOptional<Type.TBoolean>;
231
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
232
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
233
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
234
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
235
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
236
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
237
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
238
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
239
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"deepseek">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
240
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
241
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
242
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
243
+ }>]>>>;
244
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
245
+ openRouterRouting: Type.TOptional<Type.TObject<{
246
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
247
+ require_parameters: Type.TOptional<Type.TBoolean>;
248
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
249
+ zdr: Type.TOptional<Type.TBoolean>;
250
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
251
+ order: Type.TOptional<Type.TArray<Type.TString>>;
252
+ only: Type.TOptional<Type.TArray<Type.TString>>;
253
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
254
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
255
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
256
+ by: Type.TOptional<Type.TString>;
257
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
258
+ }>]>>;
259
+ max_price: Type.TOptional<Type.TObject<{
260
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
261
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
262
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
263
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
264
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
265
+ }>>;
266
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
267
+ p50: Type.TOptional<Type.TNumber>;
268
+ p75: Type.TOptional<Type.TNumber>;
269
+ p90: Type.TOptional<Type.TNumber>;
270
+ p99: Type.TOptional<Type.TNumber>;
271
+ }>]>>;
272
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
273
+ p50: Type.TOptional<Type.TNumber>;
274
+ p75: Type.TOptional<Type.TNumber>;
275
+ p90: Type.TOptional<Type.TNumber>;
276
+ p99: Type.TOptional<Type.TNumber>;
277
+ }>]>>;
278
+ }>>;
279
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
280
+ only: Type.TOptional<Type.TArray<Type.TString>>;
281
+ order: Type.TOptional<Type.TArray<Type.TString>>;
282
+ }>>;
283
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
284
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
285
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
286
+ deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
287
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
288
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
289
+ }>, Type.TObject<{
290
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
291
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
292
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
293
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
294
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
295
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
296
+ }>, Type.TObject<{
297
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
298
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
299
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
300
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
301
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
302
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
303
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
304
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
305
+ supportsToolReferences: Type.TOptional<Type.TBoolean>;
306
+ }>]>>;
307
+ authHeader: Type.TOptional<Type.TBoolean>;
308
+ models: Type.TOptional<Type.TArray<Type.TObject<{
309
+ id: Type.TString;
310
+ name: Type.TOptional<Type.TString>;
311
+ api: Type.TOptional<Type.TString>;
312
+ baseUrl: Type.TOptional<Type.TString>;
313
+ reasoning: Type.TOptional<Type.TBoolean>;
314
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
315
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
316
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
317
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
318
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
319
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
320
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
321
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
322
+ }>>;
323
+ input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
324
+ cost: Type.TOptional<Type.TObject<{
325
+ input: Type.TNumber;
326
+ output: Type.TNumber;
327
+ cacheRead: Type.TNumber;
328
+ cacheWrite: Type.TNumber;
329
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
330
+ input: Type.TNumber;
331
+ output: Type.TNumber;
332
+ cacheRead: Type.TNumber;
333
+ cacheWrite: Type.TNumber;
334
+ inputTokensAbove: Type.TNumber;
335
+ }>>>;
336
+ }>>;
337
+ contextWindow: Type.TOptional<Type.TNumber>;
338
+ maxTokens: Type.TOptional<Type.TNumber>;
339
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
340
+ compat: Type.TOptional<Type.TUnion<[Type.TObject<{
341
+ supportsStore: Type.TOptional<Type.TBoolean>;
342
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
343
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
344
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
345
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
346
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
347
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
348
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
349
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
350
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"deepseek">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
351
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
352
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
353
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
354
+ }>]>>>;
355
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
356
+ openRouterRouting: Type.TOptional<Type.TObject<{
357
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
358
+ require_parameters: Type.TOptional<Type.TBoolean>;
359
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
360
+ zdr: Type.TOptional<Type.TBoolean>;
361
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
362
+ order: Type.TOptional<Type.TArray<Type.TString>>;
363
+ only: Type.TOptional<Type.TArray<Type.TString>>;
364
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
365
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
366
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
367
+ by: Type.TOptional<Type.TString>;
368
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
369
+ }>]>>;
370
+ max_price: Type.TOptional<Type.TObject<{
371
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
372
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
373
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
374
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
375
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
376
+ }>>;
377
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
378
+ p50: Type.TOptional<Type.TNumber>;
379
+ p75: Type.TOptional<Type.TNumber>;
380
+ p90: Type.TOptional<Type.TNumber>;
381
+ p99: Type.TOptional<Type.TNumber>;
382
+ }>]>>;
383
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
384
+ p50: Type.TOptional<Type.TNumber>;
385
+ p75: Type.TOptional<Type.TNumber>;
386
+ p90: Type.TOptional<Type.TNumber>;
387
+ p99: Type.TOptional<Type.TNumber>;
388
+ }>]>>;
389
+ }>>;
390
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
391
+ only: Type.TOptional<Type.TArray<Type.TString>>;
392
+ order: Type.TOptional<Type.TArray<Type.TString>>;
393
+ }>>;
394
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
395
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
396
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
397
+ deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
398
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
399
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
400
+ }>, Type.TObject<{
401
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
402
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
403
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
404
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
405
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
406
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
407
+ }>, Type.TObject<{
408
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
409
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
410
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
411
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
412
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
413
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
414
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
415
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
416
+ supportsToolReferences: Type.TOptional<Type.TBoolean>;
417
+ }>]>>;
418
+ }>>>;
419
+ modelOverrides: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
420
+ name: Type.TOptional<Type.TString>;
421
+ reasoning: Type.TOptional<Type.TBoolean>;
422
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
423
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
424
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
425
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
426
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
427
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
428
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
429
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
430
+ }>>;
431
+ input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
432
+ cost: Type.TOptional<Type.TObject<{
433
+ input: Type.TOptional<Type.TNumber>;
434
+ output: Type.TOptional<Type.TNumber>;
435
+ cacheRead: Type.TOptional<Type.TNumber>;
436
+ cacheWrite: Type.TOptional<Type.TNumber>;
437
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
438
+ input: Type.TNumber;
439
+ output: Type.TNumber;
440
+ cacheRead: Type.TNumber;
441
+ cacheWrite: Type.TNumber;
442
+ inputTokensAbove: Type.TNumber;
443
+ }>>>;
444
+ }>>;
445
+ contextWindow: Type.TOptional<Type.TNumber>;
446
+ maxTokens: Type.TOptional<Type.TNumber>;
447
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
448
+ compat: Type.TOptional<Type.TUnion<[Type.TObject<{
449
+ supportsStore: Type.TOptional<Type.TBoolean>;
450
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
451
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
452
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
453
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
454
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
455
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
456
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
457
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
458
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"deepseek">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
459
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
460
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
461
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
462
+ }>]>>>;
463
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
464
+ openRouterRouting: Type.TOptional<Type.TObject<{
465
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
466
+ require_parameters: Type.TOptional<Type.TBoolean>;
467
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
468
+ zdr: Type.TOptional<Type.TBoolean>;
469
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
470
+ order: Type.TOptional<Type.TArray<Type.TString>>;
471
+ only: Type.TOptional<Type.TArray<Type.TString>>;
472
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
473
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
474
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
475
+ by: Type.TOptional<Type.TString>;
476
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
477
+ }>]>>;
478
+ max_price: Type.TOptional<Type.TObject<{
479
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
480
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
481
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
482
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
483
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
484
+ }>>;
485
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
486
+ p50: Type.TOptional<Type.TNumber>;
487
+ p75: Type.TOptional<Type.TNumber>;
488
+ p90: Type.TOptional<Type.TNumber>;
489
+ p99: Type.TOptional<Type.TNumber>;
490
+ }>]>>;
491
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
492
+ p50: Type.TOptional<Type.TNumber>;
493
+ p75: Type.TOptional<Type.TNumber>;
494
+ p90: Type.TOptional<Type.TNumber>;
495
+ p99: Type.TOptional<Type.TNumber>;
496
+ }>]>>;
497
+ }>>;
498
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
499
+ only: Type.TOptional<Type.TArray<Type.TString>>;
500
+ order: Type.TOptional<Type.TArray<Type.TString>>;
501
+ }>>;
502
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
503
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
504
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
505
+ deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
506
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
507
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
508
+ }>, Type.TObject<{
509
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
510
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
511
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
512
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
513
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
514
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
515
+ }>, Type.TObject<{
516
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
517
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
518
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
519
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
520
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
521
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
522
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
523
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
524
+ supportsToolReferences: Type.TOptional<Type.TBoolean>;
525
+ }>]>>;
526
+ }>>>;
527
+ }>;
528
+ export type ModelsJsonModel = Static<typeof ModelDefinitionSchema>;
529
+ export type ModelsJsonModelOverride = Static<typeof ModelOverrideSchema>;
530
+ export type ModelsJsonProvider = Static<typeof ProviderConfigSchema>;
531
+ /** One immutable load of models.json. */
532
+ export declare class ModelConfig {
533
+ private readonly providers;
534
+ private readonly error;
535
+ private constructor();
536
+ static load(modelsJsonPath: string | undefined): Promise<ModelConfig>;
537
+ getProvider(providerId: string): ModelsJsonProvider | undefined;
538
+ getProviderIds(): readonly string[];
539
+ getError(): string | undefined;
540
+ }
541
+ export {};
542
+ //# sourceMappingURL=model-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-config.d.ts","sourceRoot":"","sources":["../../src/core/model-config.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAGxD,OAAO,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAsJ5C,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAazB,CAAC;AAEH,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBvB,CAAC;AAEH,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWxB,CAAC;AAOH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACnE,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACzE,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAsBrE,yCAAyC;AACzC,qBAAa,WAAW;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0C;IACpE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;IAE3C,OAAO,eAGN;IAED,OAAa,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAuC1E;IAED,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAE9D;IAED,cAAc,IAAI,SAAS,MAAM,EAAE,CAElC;IAED,QAAQ,IAAI,MAAM,GAAG,SAAS,CAE7B;CACD"}