@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
@@ -1,1399 +0,0 @@
1
- import { type Static, Type } from "typebox";
2
- import type { TLocalizedValidationError } from "typebox/error";
3
- declare const ModelOverrideSchema: Type.TObject<{
4
- name: Type.TOptional<Type.TString>;
5
- reasoning: Type.TOptional<Type.TBoolean>;
6
- thinkingLevelMap: Type.TOptional<Type.TObject<{
7
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
8
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
9
- low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
10
- medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
11
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
12
- xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
13
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
14
- }>>;
15
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
16
- cost: Type.TOptional<Type.TObject<{
17
- input: Type.TOptional<Type.TNumber>;
18
- output: Type.TOptional<Type.TNumber>;
19
- cacheRead: Type.TOptional<Type.TNumber>;
20
- cacheWrite: Type.TOptional<Type.TNumber>;
21
- tiers: Type.TOptional<Type.TArray<Type.TIntersect<[Type.TObject<{
22
- input: Type.TNumber;
23
- output: Type.TNumber;
24
- cacheRead: Type.TNumber;
25
- cacheWrite: Type.TNumber;
26
- }>, Type.TObject<{
27
- inputTokensAbove: Type.TNumber;
28
- }>]>>>;
29
- }>>;
30
- contextWindow: Type.TOptional<Type.TNumber>;
31
- maxTokens: Type.TOptional<Type.TNumber>;
32
- headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
33
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
34
- supportsStore: Type.TOptional<Type.TBoolean>;
35
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
36
- supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
37
- supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
38
- maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
39
- requiresToolResultName: Type.TOptional<Type.TBoolean>;
40
- requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
41
- requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
42
- requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
43
- 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">]>>;
44
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
45
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
46
- omitWhenOff: Type.TOptional<Type.TBoolean>;
47
- }>]>>>;
48
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
49
- openRouterRouting: Type.TOptional<Type.TObject<{
50
- allow_fallbacks: Type.TOptional<Type.TBoolean>;
51
- require_parameters: Type.TOptional<Type.TBoolean>;
52
- data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
53
- zdr: Type.TOptional<Type.TBoolean>;
54
- enforce_distillable_text: Type.TOptional<Type.TBoolean>;
55
- order: Type.TOptional<Type.TArray<Type.TString>>;
56
- only: Type.TOptional<Type.TArray<Type.TString>>;
57
- ignore: Type.TOptional<Type.TArray<Type.TString>>;
58
- quantizations: Type.TOptional<Type.TArray<Type.TString>>;
59
- sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
60
- by: Type.TOptional<Type.TString>;
61
- partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
62
- }>]>>;
63
- max_price: Type.TOptional<Type.TObject<{
64
- prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
65
- completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
66
- image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
67
- audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
68
- request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
69
- }>>;
70
- preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
71
- p50: Type.TOptional<Type.TNumber>;
72
- p75: Type.TOptional<Type.TNumber>;
73
- p90: Type.TOptional<Type.TNumber>;
74
- p99: Type.TOptional<Type.TNumber>;
75
- }>]>>;
76
- preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
77
- p50: Type.TOptional<Type.TNumber>;
78
- p75: Type.TOptional<Type.TNumber>;
79
- p90: Type.TOptional<Type.TNumber>;
80
- p99: Type.TOptional<Type.TNumber>;
81
- }>]>>;
82
- }>>;
83
- vercelGatewayRouting: Type.TOptional<Type.TObject<{
84
- only: Type.TOptional<Type.TArray<Type.TString>>;
85
- order: Type.TOptional<Type.TArray<Type.TString>>;
86
- }>>;
87
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
88
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
89
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
90
- supportsGrammarTools: 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
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
102
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
103
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
104
- }>, Type.TObject<{
105
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
106
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
107
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
108
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
109
- supportsTemperature: Type.TOptional<Type.TBoolean>;
110
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
111
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
112
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
113
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
114
- }>]>>;
115
- }>;
116
- export type ModelOverride = Static<typeof ModelOverrideSchema>;
117
- declare const ModelsConfigSchema: Type.TObject<{
118
- providers: Type.TRecord<"^.*$", Type.TObject<{
119
- name: Type.TOptional<Type.TString>;
120
- baseUrl: Type.TOptional<Type.TString>;
121
- apiKey: Type.TOptional<Type.TString>;
122
- api: Type.TOptional<Type.TString>;
123
- oauth: Type.TOptional<Type.TLiteral<"radius">>;
124
- headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
125
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
126
- supportsStore: Type.TOptional<Type.TBoolean>;
127
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
128
- supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
129
- supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
130
- maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
131
- requiresToolResultName: Type.TOptional<Type.TBoolean>;
132
- requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
133
- requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
134
- requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
135
- 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">]>>;
136
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
137
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
138
- omitWhenOff: Type.TOptional<Type.TBoolean>;
139
- }>]>>>;
140
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
141
- openRouterRouting: Type.TOptional<Type.TObject<{
142
- allow_fallbacks: Type.TOptional<Type.TBoolean>;
143
- require_parameters: Type.TOptional<Type.TBoolean>;
144
- data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
145
- zdr: Type.TOptional<Type.TBoolean>;
146
- enforce_distillable_text: Type.TOptional<Type.TBoolean>;
147
- order: Type.TOptional<Type.TArray<Type.TString>>;
148
- only: Type.TOptional<Type.TArray<Type.TString>>;
149
- ignore: Type.TOptional<Type.TArray<Type.TString>>;
150
- quantizations: Type.TOptional<Type.TArray<Type.TString>>;
151
- sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
152
- by: Type.TOptional<Type.TString>;
153
- partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
154
- }>]>>;
155
- max_price: Type.TOptional<Type.TObject<{
156
- prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
157
- completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
158
- image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
159
- audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
160
- request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
161
- }>>;
162
- preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
163
- p50: Type.TOptional<Type.TNumber>;
164
- p75: Type.TOptional<Type.TNumber>;
165
- p90: Type.TOptional<Type.TNumber>;
166
- p99: Type.TOptional<Type.TNumber>;
167
- }>]>>;
168
- preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
169
- p50: Type.TOptional<Type.TNumber>;
170
- p75: Type.TOptional<Type.TNumber>;
171
- p90: Type.TOptional<Type.TNumber>;
172
- p99: Type.TOptional<Type.TNumber>;
173
- }>]>>;
174
- }>>;
175
- vercelGatewayRouting: Type.TOptional<Type.TObject<{
176
- only: Type.TOptional<Type.TArray<Type.TString>>;
177
- order: Type.TOptional<Type.TArray<Type.TString>>;
178
- }>>;
179
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
180
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
181
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
182
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
183
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
184
- deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
185
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
186
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
187
- }>, Type.TObject<{
188
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
189
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
190
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
191
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
192
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
193
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
194
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
195
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
196
- }>, Type.TObject<{
197
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
198
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
199
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
200
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
201
- supportsTemperature: Type.TOptional<Type.TBoolean>;
202
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
203
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
204
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
205
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
206
- }>]>>;
207
- authHeader: Type.TOptional<Type.TBoolean>;
208
- models: Type.TOptional<Type.TArray<Type.TObject<{
209
- id: Type.TString;
210
- name: Type.TOptional<Type.TString>;
211
- api: Type.TOptional<Type.TString>;
212
- baseUrl: Type.TOptional<Type.TString>;
213
- reasoning: Type.TOptional<Type.TBoolean>;
214
- thinkingLevelMap: Type.TOptional<Type.TObject<{
215
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
216
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
217
- low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
218
- medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
219
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
220
- xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
221
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
222
- }>>;
223
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
224
- cost: Type.TOptional<Type.TIntersect<[Type.TObject<{
225
- input: Type.TNumber;
226
- output: Type.TNumber;
227
- cacheRead: Type.TNumber;
228
- cacheWrite: Type.TNumber;
229
- }>, Type.TObject<{
230
- tiers: Type.TOptional<Type.TArray<Type.TIntersect<[Type.TObject<{
231
- input: Type.TNumber;
232
- output: Type.TNumber;
233
- cacheRead: Type.TNumber;
234
- cacheWrite: Type.TNumber;
235
- }>, Type.TObject<{
236
- inputTokensAbove: Type.TNumber;
237
- }>]>>>;
238
- }>]>>;
239
- contextWindow: Type.TOptional<Type.TNumber>;
240
- maxTokens: Type.TOptional<Type.TNumber>;
241
- headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
242
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
243
- supportsStore: Type.TOptional<Type.TBoolean>;
244
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
245
- supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
246
- supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
247
- maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
248
- requiresToolResultName: Type.TOptional<Type.TBoolean>;
249
- requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
250
- requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
251
- requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
252
- 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">]>>;
253
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
254
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
255
- omitWhenOff: Type.TOptional<Type.TBoolean>;
256
- }>]>>>;
257
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
258
- openRouterRouting: Type.TOptional<Type.TObject<{
259
- allow_fallbacks: Type.TOptional<Type.TBoolean>;
260
- require_parameters: Type.TOptional<Type.TBoolean>;
261
- data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
262
- zdr: Type.TOptional<Type.TBoolean>;
263
- enforce_distillable_text: Type.TOptional<Type.TBoolean>;
264
- order: Type.TOptional<Type.TArray<Type.TString>>;
265
- only: Type.TOptional<Type.TArray<Type.TString>>;
266
- ignore: Type.TOptional<Type.TArray<Type.TString>>;
267
- quantizations: Type.TOptional<Type.TArray<Type.TString>>;
268
- sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
269
- by: Type.TOptional<Type.TString>;
270
- partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
271
- }>]>>;
272
- max_price: Type.TOptional<Type.TObject<{
273
- prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
274
- completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
275
- image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
276
- audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
277
- request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
278
- }>>;
279
- preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
280
- p50: Type.TOptional<Type.TNumber>;
281
- p75: Type.TOptional<Type.TNumber>;
282
- p90: Type.TOptional<Type.TNumber>;
283
- p99: Type.TOptional<Type.TNumber>;
284
- }>]>>;
285
- preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
286
- p50: Type.TOptional<Type.TNumber>;
287
- p75: Type.TOptional<Type.TNumber>;
288
- p90: Type.TOptional<Type.TNumber>;
289
- p99: Type.TOptional<Type.TNumber>;
290
- }>]>>;
291
- }>>;
292
- vercelGatewayRouting: Type.TOptional<Type.TObject<{
293
- only: Type.TOptional<Type.TArray<Type.TString>>;
294
- order: Type.TOptional<Type.TArray<Type.TString>>;
295
- }>>;
296
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
297
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
298
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
299
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
300
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
301
- deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
302
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
303
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
304
- }>, Type.TObject<{
305
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
306
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
307
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
308
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
309
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
310
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
311
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
312
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
313
- }>, Type.TObject<{
314
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
315
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
316
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
317
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
318
- supportsTemperature: Type.TOptional<Type.TBoolean>;
319
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
320
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
321
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
322
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
323
- }>]>>;
324
- }>>>;
325
- modelOverrides: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
326
- name: Type.TOptional<Type.TString>;
327
- reasoning: Type.TOptional<Type.TBoolean>;
328
- thinkingLevelMap: Type.TOptional<Type.TObject<{
329
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
330
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
331
- low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
332
- medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
333
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
334
- xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
335
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
336
- }>>;
337
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
338
- cost: Type.TOptional<Type.TObject<{
339
- input: Type.TOptional<Type.TNumber>;
340
- output: Type.TOptional<Type.TNumber>;
341
- cacheRead: Type.TOptional<Type.TNumber>;
342
- cacheWrite: Type.TOptional<Type.TNumber>;
343
- tiers: Type.TOptional<Type.TArray<Type.TIntersect<[Type.TObject<{
344
- input: Type.TNumber;
345
- output: Type.TNumber;
346
- cacheRead: Type.TNumber;
347
- cacheWrite: Type.TNumber;
348
- }>, Type.TObject<{
349
- inputTokensAbove: Type.TNumber;
350
- }>]>>>;
351
- }>>;
352
- contextWindow: Type.TOptional<Type.TNumber>;
353
- maxTokens: Type.TOptional<Type.TNumber>;
354
- headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
355
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
356
- supportsStore: Type.TOptional<Type.TBoolean>;
357
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
358
- supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
359
- supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
360
- maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
361
- requiresToolResultName: Type.TOptional<Type.TBoolean>;
362
- requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
363
- requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
364
- requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
365
- 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">]>>;
366
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
367
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
368
- omitWhenOff: Type.TOptional<Type.TBoolean>;
369
- }>]>>>;
370
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
371
- openRouterRouting: Type.TOptional<Type.TObject<{
372
- allow_fallbacks: Type.TOptional<Type.TBoolean>;
373
- require_parameters: Type.TOptional<Type.TBoolean>;
374
- data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
375
- zdr: Type.TOptional<Type.TBoolean>;
376
- enforce_distillable_text: Type.TOptional<Type.TBoolean>;
377
- order: Type.TOptional<Type.TArray<Type.TString>>;
378
- only: Type.TOptional<Type.TArray<Type.TString>>;
379
- ignore: Type.TOptional<Type.TArray<Type.TString>>;
380
- quantizations: Type.TOptional<Type.TArray<Type.TString>>;
381
- sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
382
- by: Type.TOptional<Type.TString>;
383
- partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
384
- }>]>>;
385
- max_price: Type.TOptional<Type.TObject<{
386
- prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
387
- completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
388
- image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
389
- audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
390
- request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
391
- }>>;
392
- preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
393
- p50: Type.TOptional<Type.TNumber>;
394
- p75: Type.TOptional<Type.TNumber>;
395
- p90: Type.TOptional<Type.TNumber>;
396
- p99: Type.TOptional<Type.TNumber>;
397
- }>]>>;
398
- preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
399
- p50: Type.TOptional<Type.TNumber>;
400
- p75: Type.TOptional<Type.TNumber>;
401
- p90: Type.TOptional<Type.TNumber>;
402
- p99: Type.TOptional<Type.TNumber>;
403
- }>]>>;
404
- }>>;
405
- vercelGatewayRouting: Type.TOptional<Type.TObject<{
406
- only: Type.TOptional<Type.TArray<Type.TString>>;
407
- order: Type.TOptional<Type.TArray<Type.TString>>;
408
- }>>;
409
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
410
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
411
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
412
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
413
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
414
- deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
415
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
416
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
417
- }>, Type.TObject<{
418
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
419
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
420
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
421
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
422
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
423
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
424
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
425
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
426
- }>, Type.TObject<{
427
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
428
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
429
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
430
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
431
- supportsTemperature: Type.TOptional<Type.TBoolean>;
432
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
433
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
434
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
435
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
436
- }>]>>;
437
- }>>>;
438
- }>>;
439
- }>;
440
- export declare const validateModelsConfig: import("typebox/compile").Validator<{}, Type.TObject<{
441
- providers: Type.TRecord<"^.*$", Type.TObject<{
442
- name: Type.TOptional<Type.TString>;
443
- baseUrl: Type.TOptional<Type.TString>;
444
- apiKey: Type.TOptional<Type.TString>;
445
- api: Type.TOptional<Type.TString>;
446
- oauth: Type.TOptional<Type.TLiteral<"radius">>;
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
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
503
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
504
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
505
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
506
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
507
- deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
508
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
509
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
510
- }>, Type.TObject<{
511
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
512
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
513
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
514
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
515
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
516
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
517
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
518
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
519
- }>, Type.TObject<{
520
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
521
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
522
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
523
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
524
- supportsTemperature: Type.TOptional<Type.TBoolean>;
525
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
526
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
527
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
528
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
529
- }>]>>;
530
- authHeader: Type.TOptional<Type.TBoolean>;
531
- models: Type.TOptional<Type.TArray<Type.TObject<{
532
- id: Type.TString;
533
- name: Type.TOptional<Type.TString>;
534
- api: Type.TOptional<Type.TString>;
535
- baseUrl: Type.TOptional<Type.TString>;
536
- reasoning: Type.TOptional<Type.TBoolean>;
537
- thinkingLevelMap: Type.TOptional<Type.TObject<{
538
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
539
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
540
- low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
541
- medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
542
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
543
- xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
544
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
545
- }>>;
546
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
547
- cost: Type.TOptional<Type.TIntersect<[Type.TObject<{
548
- input: Type.TNumber;
549
- output: Type.TNumber;
550
- cacheRead: Type.TNumber;
551
- cacheWrite: Type.TNumber;
552
- }>, Type.TObject<{
553
- tiers: Type.TOptional<Type.TArray<Type.TIntersect<[Type.TObject<{
554
- input: Type.TNumber;
555
- output: Type.TNumber;
556
- cacheRead: Type.TNumber;
557
- cacheWrite: Type.TNumber;
558
- }>, Type.TObject<{
559
- inputTokensAbove: Type.TNumber;
560
- }>]>>>;
561
- }>]>>;
562
- contextWindow: Type.TOptional<Type.TNumber>;
563
- maxTokens: Type.TOptional<Type.TNumber>;
564
- headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
565
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
566
- supportsStore: Type.TOptional<Type.TBoolean>;
567
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
568
- supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
569
- supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
570
- maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
571
- requiresToolResultName: Type.TOptional<Type.TBoolean>;
572
- requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
573
- requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
574
- requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
575
- 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">]>>;
576
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
577
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
578
- omitWhenOff: Type.TOptional<Type.TBoolean>;
579
- }>]>>>;
580
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
581
- openRouterRouting: Type.TOptional<Type.TObject<{
582
- allow_fallbacks: Type.TOptional<Type.TBoolean>;
583
- require_parameters: Type.TOptional<Type.TBoolean>;
584
- data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
585
- zdr: Type.TOptional<Type.TBoolean>;
586
- enforce_distillable_text: Type.TOptional<Type.TBoolean>;
587
- order: Type.TOptional<Type.TArray<Type.TString>>;
588
- only: Type.TOptional<Type.TArray<Type.TString>>;
589
- ignore: Type.TOptional<Type.TArray<Type.TString>>;
590
- quantizations: Type.TOptional<Type.TArray<Type.TString>>;
591
- sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
592
- by: Type.TOptional<Type.TString>;
593
- partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
594
- }>]>>;
595
- max_price: Type.TOptional<Type.TObject<{
596
- prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
597
- completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
598
- image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
599
- audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
600
- request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
601
- }>>;
602
- preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
603
- p50: Type.TOptional<Type.TNumber>;
604
- p75: Type.TOptional<Type.TNumber>;
605
- p90: Type.TOptional<Type.TNumber>;
606
- p99: Type.TOptional<Type.TNumber>;
607
- }>]>>;
608
- preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
609
- p50: Type.TOptional<Type.TNumber>;
610
- p75: Type.TOptional<Type.TNumber>;
611
- p90: Type.TOptional<Type.TNumber>;
612
- p99: Type.TOptional<Type.TNumber>;
613
- }>]>>;
614
- }>>;
615
- vercelGatewayRouting: Type.TOptional<Type.TObject<{
616
- only: Type.TOptional<Type.TArray<Type.TString>>;
617
- order: Type.TOptional<Type.TArray<Type.TString>>;
618
- }>>;
619
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
620
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
621
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
622
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
623
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
624
- deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
625
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
626
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
627
- }>, Type.TObject<{
628
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
629
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
630
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
631
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
632
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
633
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
634
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
635
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
636
- }>, Type.TObject<{
637
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
638
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
639
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
640
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
641
- supportsTemperature: Type.TOptional<Type.TBoolean>;
642
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
643
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
644
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
645
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
646
- }>]>>;
647
- }>>>;
648
- modelOverrides: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
649
- name: Type.TOptional<Type.TString>;
650
- reasoning: Type.TOptional<Type.TBoolean>;
651
- thinkingLevelMap: Type.TOptional<Type.TObject<{
652
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
653
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
654
- low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
655
- medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
656
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
657
- xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
658
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
659
- }>>;
660
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">]>>>;
661
- cost: Type.TOptional<Type.TObject<{
662
- input: Type.TOptional<Type.TNumber>;
663
- output: Type.TOptional<Type.TNumber>;
664
- cacheRead: Type.TOptional<Type.TNumber>;
665
- cacheWrite: Type.TOptional<Type.TNumber>;
666
- tiers: Type.TOptional<Type.TArray<Type.TIntersect<[Type.TObject<{
667
- input: Type.TNumber;
668
- output: Type.TNumber;
669
- cacheRead: Type.TNumber;
670
- cacheWrite: Type.TNumber;
671
- }>, Type.TObject<{
672
- inputTokensAbove: Type.TNumber;
673
- }>]>>>;
674
- }>>;
675
- contextWindow: Type.TOptional<Type.TNumber>;
676
- maxTokens: Type.TOptional<Type.TNumber>;
677
- headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
678
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
679
- supportsStore: Type.TOptional<Type.TBoolean>;
680
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
681
- supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
682
- supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
683
- maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
684
- requiresToolResultName: Type.TOptional<Type.TBoolean>;
685
- requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
686
- requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
687
- requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
688
- 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">]>>;
689
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
690
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
691
- omitWhenOff: Type.TOptional<Type.TBoolean>;
692
- }>]>>>;
693
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
694
- openRouterRouting: Type.TOptional<Type.TObject<{
695
- allow_fallbacks: Type.TOptional<Type.TBoolean>;
696
- require_parameters: Type.TOptional<Type.TBoolean>;
697
- data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
698
- zdr: Type.TOptional<Type.TBoolean>;
699
- enforce_distillable_text: Type.TOptional<Type.TBoolean>;
700
- order: Type.TOptional<Type.TArray<Type.TString>>;
701
- only: Type.TOptional<Type.TArray<Type.TString>>;
702
- ignore: Type.TOptional<Type.TArray<Type.TString>>;
703
- quantizations: Type.TOptional<Type.TArray<Type.TString>>;
704
- sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
705
- by: Type.TOptional<Type.TString>;
706
- partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
707
- }>]>>;
708
- max_price: Type.TOptional<Type.TObject<{
709
- prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
710
- completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
711
- image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
712
- audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
713
- request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
714
- }>>;
715
- preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
716
- p50: Type.TOptional<Type.TNumber>;
717
- p75: Type.TOptional<Type.TNumber>;
718
- p90: Type.TOptional<Type.TNumber>;
719
- p99: Type.TOptional<Type.TNumber>;
720
- }>]>>;
721
- preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
722
- p50: Type.TOptional<Type.TNumber>;
723
- p75: Type.TOptional<Type.TNumber>;
724
- p90: Type.TOptional<Type.TNumber>;
725
- p99: Type.TOptional<Type.TNumber>;
726
- }>]>>;
727
- }>>;
728
- vercelGatewayRouting: Type.TOptional<Type.TObject<{
729
- only: Type.TOptional<Type.TArray<Type.TString>>;
730
- order: Type.TOptional<Type.TArray<Type.TString>>;
731
- }>>;
732
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
733
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
734
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
735
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
736
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
737
- deferredToolsMode: Type.TOptional<Type.TLiteral<"kimi">>;
738
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
739
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
740
- }>, Type.TObject<{
741
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
742
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
743
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
744
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
745
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
746
- /** Atomic compatibility alias for supportsOpenAIGrammarTools. */
747
- supportsGrammarTools: Type.TOptional<Type.TBoolean>;
748
- supportsToolSearch: Type.TOptional<Type.TBoolean>;
749
- }>, Type.TObject<{
750
- supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
751
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
752
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
753
- supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
754
- supportsTemperature: Type.TOptional<Type.TBoolean>;
755
- forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
756
- allowEmptySignature: Type.TOptional<Type.TBoolean>;
757
- supportsStrictTools: Type.TOptional<Type.TBoolean>;
758
- supportsToolReferences: Type.TOptional<Type.TBoolean>;
759
- }>]>>;
760
- }>>>;
761
- }>>;
762
- }>, {
763
- providers: Record<string, {
764
- name?: string | undefined;
765
- baseUrl?: string | undefined;
766
- apiKey?: string | undefined;
767
- api?: string | undefined;
768
- oauth?: "radius" | undefined;
769
- headers?: Record<string, string> | undefined;
770
- compat?: {
771
- supportsStore?: boolean | undefined;
772
- supportsDeveloperRole?: boolean | undefined;
773
- supportsReasoningEffort?: boolean | undefined;
774
- supportsUsageInStreaming?: boolean | undefined;
775
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
776
- requiresToolResultName?: boolean | undefined;
777
- requiresAssistantAfterToolResult?: boolean | undefined;
778
- requiresThinkingAsText?: boolean | undefined;
779
- requiresReasoningContentOnAssistantMessages?: boolean | undefined;
780
- thinkingFormat?: "ant-ling" | "chat-template" | "deepseek" | "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "string-thinking" | "together" | "zai" | undefined;
781
- chatTemplateKwargs?: Record<string, string | number | boolean | {
782
- $var: "thinking.effort" | "thinking.enabled";
783
- omitWhenOff?: boolean | undefined;
784
- } | null> | undefined;
785
- cacheControlFormat?: "anthropic" | undefined;
786
- openRouterRouting?: {
787
- allow_fallbacks?: boolean | undefined;
788
- require_parameters?: boolean | undefined;
789
- data_collection?: "allow" | "deny" | undefined;
790
- zdr?: boolean | undefined;
791
- enforce_distillable_text?: boolean | undefined;
792
- order?: string[] | undefined;
793
- only?: string[] | undefined;
794
- ignore?: string[] | undefined;
795
- quantizations?: string[] | undefined;
796
- sort?: string | {
797
- by?: string | undefined;
798
- partition?: string | null | undefined;
799
- } | undefined;
800
- max_price?: {
801
- prompt?: string | number | undefined;
802
- completion?: string | number | undefined;
803
- image?: string | number | undefined;
804
- audio?: string | number | undefined;
805
- request?: string | number | undefined;
806
- } | undefined;
807
- preferred_min_throughput?: number | {
808
- p50?: number | undefined;
809
- p75?: number | undefined;
810
- p90?: number | undefined;
811
- p99?: number | undefined;
812
- } | undefined;
813
- preferred_max_latency?: number | {
814
- p50?: number | undefined;
815
- p75?: number | undefined;
816
- p90?: number | undefined;
817
- p99?: number | undefined;
818
- } | undefined;
819
- } | undefined;
820
- vercelGatewayRouting?: {
821
- only?: string[] | undefined;
822
- order?: string[] | undefined;
823
- } | undefined;
824
- supportsStrictMode?: boolean | undefined;
825
- supportsOpenAIGrammarTools?: boolean | undefined;
826
- supportsGrammarTools?: boolean | undefined;
827
- sendSessionAffinityHeaders?: boolean | undefined;
828
- deferredToolsMode?: "kimi" | undefined;
829
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
830
- supportsLongCacheRetention?: boolean | undefined;
831
- } | {
832
- supportsDeveloperRole?: boolean | undefined;
833
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
834
- supportsLongCacheRetention?: boolean | undefined;
835
- supportsStrictMode?: boolean | undefined;
836
- supportsOpenAIGrammarTools?: boolean | undefined;
837
- supportsGrammarTools?: boolean | undefined;
838
- supportsToolSearch?: boolean | undefined;
839
- } | {
840
- supportsEagerToolInputStreaming?: boolean | undefined;
841
- supportsLongCacheRetention?: boolean | undefined;
842
- sendSessionAffinityHeaders?: boolean | undefined;
843
- supportsCacheControlOnTools?: boolean | undefined;
844
- supportsTemperature?: boolean | undefined;
845
- forceAdaptiveThinking?: boolean | undefined;
846
- allowEmptySignature?: boolean | undefined;
847
- supportsStrictTools?: boolean | undefined;
848
- supportsToolReferences?: boolean | undefined;
849
- } | undefined;
850
- authHeader?: boolean | undefined;
851
- models?: {
852
- id: string;
853
- name?: string | undefined;
854
- api?: string | undefined;
855
- baseUrl?: string | undefined;
856
- reasoning?: boolean | undefined;
857
- thinkingLevelMap?: {
858
- off?: string | null | undefined;
859
- minimal?: string | null | undefined;
860
- low?: string | null | undefined;
861
- medium?: string | null | undefined;
862
- high?: string | null | undefined;
863
- xhigh?: string | null | undefined;
864
- max?: string | null | undefined;
865
- } | undefined;
866
- input?: ("image" | "text")[] | undefined;
867
- cost?: ({
868
- input: number;
869
- output: number;
870
- cacheRead: number;
871
- cacheWrite: number;
872
- } & {
873
- tiers?: ({
874
- input: number;
875
- output: number;
876
- cacheRead: number;
877
- cacheWrite: number;
878
- } & {
879
- inputTokensAbove: number;
880
- })[] | undefined;
881
- }) | undefined;
882
- contextWindow?: number | undefined;
883
- maxTokens?: number | undefined;
884
- headers?: Record<string, string> | undefined;
885
- compat?: {
886
- supportsStore?: boolean | undefined;
887
- supportsDeveloperRole?: boolean | undefined;
888
- supportsReasoningEffort?: boolean | undefined;
889
- supportsUsageInStreaming?: boolean | undefined;
890
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
891
- requiresToolResultName?: boolean | undefined;
892
- requiresAssistantAfterToolResult?: boolean | undefined;
893
- requiresThinkingAsText?: boolean | undefined;
894
- requiresReasoningContentOnAssistantMessages?: boolean | undefined;
895
- thinkingFormat?: "ant-ling" | "chat-template" | "deepseek" | "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "string-thinking" | "together" | "zai" | undefined;
896
- chatTemplateKwargs?: Record<string, string | number | boolean | {
897
- $var: "thinking.effort" | "thinking.enabled";
898
- omitWhenOff?: boolean | undefined;
899
- } | null> | undefined;
900
- cacheControlFormat?: "anthropic" | undefined;
901
- openRouterRouting?: {
902
- allow_fallbacks?: boolean | undefined;
903
- require_parameters?: boolean | undefined;
904
- data_collection?: "allow" | "deny" | undefined;
905
- zdr?: boolean | undefined;
906
- enforce_distillable_text?: boolean | undefined;
907
- order?: string[] | undefined;
908
- only?: string[] | undefined;
909
- ignore?: string[] | undefined;
910
- quantizations?: string[] | undefined;
911
- sort?: string | {
912
- by?: string | undefined;
913
- partition?: string | null | undefined;
914
- } | undefined;
915
- max_price?: {
916
- prompt?: string | number | undefined;
917
- completion?: string | number | undefined;
918
- image?: string | number | undefined;
919
- audio?: string | number | undefined;
920
- request?: string | number | undefined;
921
- } | undefined;
922
- preferred_min_throughput?: number | {
923
- p50?: number | undefined;
924
- p75?: number | undefined;
925
- p90?: number | undefined;
926
- p99?: number | undefined;
927
- } | undefined;
928
- preferred_max_latency?: number | {
929
- p50?: number | undefined;
930
- p75?: number | undefined;
931
- p90?: number | undefined;
932
- p99?: number | undefined;
933
- } | undefined;
934
- } | undefined;
935
- vercelGatewayRouting?: {
936
- only?: string[] | undefined;
937
- order?: string[] | undefined;
938
- } | undefined;
939
- supportsStrictMode?: boolean | undefined;
940
- supportsOpenAIGrammarTools?: boolean | undefined;
941
- supportsGrammarTools?: boolean | undefined;
942
- sendSessionAffinityHeaders?: boolean | undefined;
943
- deferredToolsMode?: "kimi" | undefined;
944
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
945
- supportsLongCacheRetention?: boolean | undefined;
946
- } | {
947
- supportsDeveloperRole?: boolean | undefined;
948
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
949
- supportsLongCacheRetention?: boolean | undefined;
950
- supportsStrictMode?: boolean | undefined;
951
- supportsOpenAIGrammarTools?: boolean | undefined;
952
- supportsGrammarTools?: boolean | undefined;
953
- supportsToolSearch?: boolean | undefined;
954
- } | {
955
- supportsEagerToolInputStreaming?: boolean | undefined;
956
- supportsLongCacheRetention?: boolean | undefined;
957
- sendSessionAffinityHeaders?: boolean | undefined;
958
- supportsCacheControlOnTools?: boolean | undefined;
959
- supportsTemperature?: boolean | undefined;
960
- forceAdaptiveThinking?: boolean | undefined;
961
- allowEmptySignature?: boolean | undefined;
962
- supportsStrictTools?: boolean | undefined;
963
- supportsToolReferences?: boolean | undefined;
964
- } | undefined;
965
- }[] | undefined;
966
- modelOverrides?: Record<string, {
967
- name?: string | undefined;
968
- reasoning?: boolean | undefined;
969
- thinkingLevelMap?: {
970
- off?: string | null | undefined;
971
- minimal?: string | null | undefined;
972
- low?: string | null | undefined;
973
- medium?: string | null | undefined;
974
- high?: string | null | undefined;
975
- xhigh?: string | null | undefined;
976
- max?: string | null | undefined;
977
- } | undefined;
978
- input?: ("image" | "text")[] | undefined;
979
- cost?: {
980
- input?: number | undefined;
981
- output?: number | undefined;
982
- cacheRead?: number | undefined;
983
- cacheWrite?: number | undefined;
984
- tiers?: ({
985
- input: number;
986
- output: number;
987
- cacheRead: number;
988
- cacheWrite: number;
989
- } & {
990
- inputTokensAbove: number;
991
- })[] | undefined;
992
- } | undefined;
993
- contextWindow?: number | undefined;
994
- maxTokens?: number | undefined;
995
- headers?: Record<string, string> | undefined;
996
- compat?: {
997
- supportsStore?: boolean | undefined;
998
- supportsDeveloperRole?: boolean | undefined;
999
- supportsReasoningEffort?: boolean | undefined;
1000
- supportsUsageInStreaming?: boolean | undefined;
1001
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1002
- requiresToolResultName?: boolean | undefined;
1003
- requiresAssistantAfterToolResult?: boolean | undefined;
1004
- requiresThinkingAsText?: boolean | undefined;
1005
- requiresReasoningContentOnAssistantMessages?: boolean | undefined;
1006
- thinkingFormat?: "ant-ling" | "chat-template" | "deepseek" | "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "string-thinking" | "together" | "zai" | undefined;
1007
- chatTemplateKwargs?: Record<string, string | number | boolean | {
1008
- $var: "thinking.effort" | "thinking.enabled";
1009
- omitWhenOff?: boolean | undefined;
1010
- } | null> | undefined;
1011
- cacheControlFormat?: "anthropic" | undefined;
1012
- openRouterRouting?: {
1013
- allow_fallbacks?: boolean | undefined;
1014
- require_parameters?: boolean | undefined;
1015
- data_collection?: "allow" | "deny" | undefined;
1016
- zdr?: boolean | undefined;
1017
- enforce_distillable_text?: boolean | undefined;
1018
- order?: string[] | undefined;
1019
- only?: string[] | undefined;
1020
- ignore?: string[] | undefined;
1021
- quantizations?: string[] | undefined;
1022
- sort?: string | {
1023
- by?: string | undefined;
1024
- partition?: string | null | undefined;
1025
- } | undefined;
1026
- max_price?: {
1027
- prompt?: string | number | undefined;
1028
- completion?: string | number | undefined;
1029
- image?: string | number | undefined;
1030
- audio?: string | number | undefined;
1031
- request?: string | number | undefined;
1032
- } | undefined;
1033
- preferred_min_throughput?: number | {
1034
- p50?: number | undefined;
1035
- p75?: number | undefined;
1036
- p90?: number | undefined;
1037
- p99?: number | undefined;
1038
- } | undefined;
1039
- preferred_max_latency?: number | {
1040
- p50?: number | undefined;
1041
- p75?: number | undefined;
1042
- p90?: number | undefined;
1043
- p99?: number | undefined;
1044
- } | undefined;
1045
- } | undefined;
1046
- vercelGatewayRouting?: {
1047
- only?: string[] | undefined;
1048
- order?: string[] | undefined;
1049
- } | undefined;
1050
- supportsStrictMode?: boolean | undefined;
1051
- supportsOpenAIGrammarTools?: boolean | undefined;
1052
- supportsGrammarTools?: boolean | undefined;
1053
- sendSessionAffinityHeaders?: boolean | undefined;
1054
- deferredToolsMode?: "kimi" | undefined;
1055
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1056
- supportsLongCacheRetention?: boolean | undefined;
1057
- } | {
1058
- supportsDeveloperRole?: boolean | undefined;
1059
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1060
- supportsLongCacheRetention?: boolean | undefined;
1061
- supportsStrictMode?: boolean | undefined;
1062
- supportsOpenAIGrammarTools?: boolean | undefined;
1063
- supportsGrammarTools?: boolean | undefined;
1064
- supportsToolSearch?: boolean | undefined;
1065
- } | {
1066
- supportsEagerToolInputStreaming?: boolean | undefined;
1067
- supportsLongCacheRetention?: boolean | undefined;
1068
- sendSessionAffinityHeaders?: boolean | undefined;
1069
- supportsCacheControlOnTools?: boolean | undefined;
1070
- supportsTemperature?: boolean | undefined;
1071
- forceAdaptiveThinking?: boolean | undefined;
1072
- allowEmptySignature?: boolean | undefined;
1073
- supportsStrictTools?: boolean | undefined;
1074
- supportsToolReferences?: boolean | undefined;
1075
- } | undefined;
1076
- }> | undefined;
1077
- }>;
1078
- }, {
1079
- providers: Record<string, {
1080
- name?: string | undefined;
1081
- baseUrl?: string | undefined;
1082
- apiKey?: string | undefined;
1083
- api?: string | undefined;
1084
- oauth?: "radius" | undefined;
1085
- headers?: Record<string, string> | undefined;
1086
- compat?: {
1087
- supportsStore?: boolean | undefined;
1088
- supportsDeveloperRole?: boolean | undefined;
1089
- supportsReasoningEffort?: boolean | undefined;
1090
- supportsUsageInStreaming?: boolean | undefined;
1091
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1092
- requiresToolResultName?: boolean | undefined;
1093
- requiresAssistantAfterToolResult?: boolean | undefined;
1094
- requiresThinkingAsText?: boolean | undefined;
1095
- requiresReasoningContentOnAssistantMessages?: boolean | undefined;
1096
- thinkingFormat?: "ant-ling" | "chat-template" | "deepseek" | "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "string-thinking" | "together" | "zai" | undefined;
1097
- chatTemplateKwargs?: Record<string, string | number | boolean | {
1098
- $var: "thinking.effort" | "thinking.enabled";
1099
- omitWhenOff?: boolean | undefined;
1100
- } | null> | undefined;
1101
- cacheControlFormat?: "anthropic" | undefined;
1102
- openRouterRouting?: {
1103
- allow_fallbacks?: boolean | undefined;
1104
- require_parameters?: boolean | undefined;
1105
- data_collection?: "allow" | "deny" | undefined;
1106
- zdr?: boolean | undefined;
1107
- enforce_distillable_text?: boolean | undefined;
1108
- order?: string[] | undefined;
1109
- only?: string[] | undefined;
1110
- ignore?: string[] | undefined;
1111
- quantizations?: string[] | undefined;
1112
- sort?: string | {
1113
- by?: string | undefined;
1114
- partition?: string | null | undefined;
1115
- } | undefined;
1116
- max_price?: {
1117
- prompt?: string | number | undefined;
1118
- completion?: string | number | undefined;
1119
- image?: string | number | undefined;
1120
- audio?: string | number | undefined;
1121
- request?: string | number | undefined;
1122
- } | undefined;
1123
- preferred_min_throughput?: number | {
1124
- p50?: number | undefined;
1125
- p75?: number | undefined;
1126
- p90?: number | undefined;
1127
- p99?: number | undefined;
1128
- } | undefined;
1129
- preferred_max_latency?: number | {
1130
- p50?: number | undefined;
1131
- p75?: number | undefined;
1132
- p90?: number | undefined;
1133
- p99?: number | undefined;
1134
- } | undefined;
1135
- } | undefined;
1136
- vercelGatewayRouting?: {
1137
- only?: string[] | undefined;
1138
- order?: string[] | undefined;
1139
- } | undefined;
1140
- supportsStrictMode?: boolean | undefined;
1141
- supportsOpenAIGrammarTools?: boolean | undefined;
1142
- supportsGrammarTools?: boolean | undefined;
1143
- sendSessionAffinityHeaders?: boolean | undefined;
1144
- deferredToolsMode?: "kimi" | undefined;
1145
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1146
- supportsLongCacheRetention?: boolean | undefined;
1147
- } | {
1148
- supportsDeveloperRole?: boolean | undefined;
1149
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1150
- supportsLongCacheRetention?: boolean | undefined;
1151
- supportsStrictMode?: boolean | undefined;
1152
- supportsOpenAIGrammarTools?: boolean | undefined;
1153
- supportsGrammarTools?: boolean | undefined;
1154
- supportsToolSearch?: boolean | undefined;
1155
- } | {
1156
- supportsEagerToolInputStreaming?: boolean | undefined;
1157
- supportsLongCacheRetention?: boolean | undefined;
1158
- sendSessionAffinityHeaders?: boolean | undefined;
1159
- supportsCacheControlOnTools?: boolean | undefined;
1160
- supportsTemperature?: boolean | undefined;
1161
- forceAdaptiveThinking?: boolean | undefined;
1162
- allowEmptySignature?: boolean | undefined;
1163
- supportsStrictTools?: boolean | undefined;
1164
- supportsToolReferences?: boolean | undefined;
1165
- } | undefined;
1166
- authHeader?: boolean | undefined;
1167
- models?: {
1168
- id: string;
1169
- name?: string | undefined;
1170
- api?: string | undefined;
1171
- baseUrl?: string | undefined;
1172
- reasoning?: boolean | undefined;
1173
- thinkingLevelMap?: {
1174
- off?: string | null | undefined;
1175
- minimal?: string | null | undefined;
1176
- low?: string | null | undefined;
1177
- medium?: string | null | undefined;
1178
- high?: string | null | undefined;
1179
- xhigh?: string | null | undefined;
1180
- max?: string | null | undefined;
1181
- } | undefined;
1182
- input?: ("image" | "text")[] | undefined;
1183
- cost?: ({
1184
- input: number;
1185
- output: number;
1186
- cacheRead: number;
1187
- cacheWrite: number;
1188
- } & {
1189
- tiers?: ({
1190
- input: number;
1191
- output: number;
1192
- cacheRead: number;
1193
- cacheWrite: number;
1194
- } & {
1195
- inputTokensAbove: number;
1196
- })[] | undefined;
1197
- }) | undefined;
1198
- contextWindow?: number | undefined;
1199
- maxTokens?: number | undefined;
1200
- headers?: Record<string, string> | undefined;
1201
- compat?: {
1202
- supportsStore?: boolean | undefined;
1203
- supportsDeveloperRole?: boolean | undefined;
1204
- supportsReasoningEffort?: boolean | undefined;
1205
- supportsUsageInStreaming?: boolean | undefined;
1206
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1207
- requiresToolResultName?: boolean | undefined;
1208
- requiresAssistantAfterToolResult?: boolean | undefined;
1209
- requiresThinkingAsText?: boolean | undefined;
1210
- requiresReasoningContentOnAssistantMessages?: boolean | undefined;
1211
- thinkingFormat?: "ant-ling" | "chat-template" | "deepseek" | "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "string-thinking" | "together" | "zai" | undefined;
1212
- chatTemplateKwargs?: Record<string, string | number | boolean | {
1213
- $var: "thinking.effort" | "thinking.enabled";
1214
- omitWhenOff?: boolean | undefined;
1215
- } | null> | undefined;
1216
- cacheControlFormat?: "anthropic" | undefined;
1217
- openRouterRouting?: {
1218
- allow_fallbacks?: boolean | undefined;
1219
- require_parameters?: boolean | undefined;
1220
- data_collection?: "allow" | "deny" | undefined;
1221
- zdr?: boolean | undefined;
1222
- enforce_distillable_text?: boolean | undefined;
1223
- order?: string[] | undefined;
1224
- only?: string[] | undefined;
1225
- ignore?: string[] | undefined;
1226
- quantizations?: string[] | undefined;
1227
- sort?: string | {
1228
- by?: string | undefined;
1229
- partition?: string | null | undefined;
1230
- } | undefined;
1231
- max_price?: {
1232
- prompt?: string | number | undefined;
1233
- completion?: string | number | undefined;
1234
- image?: string | number | undefined;
1235
- audio?: string | number | undefined;
1236
- request?: string | number | undefined;
1237
- } | undefined;
1238
- preferred_min_throughput?: number | {
1239
- p50?: number | undefined;
1240
- p75?: number | undefined;
1241
- p90?: number | undefined;
1242
- p99?: number | undefined;
1243
- } | undefined;
1244
- preferred_max_latency?: number | {
1245
- p50?: number | undefined;
1246
- p75?: number | undefined;
1247
- p90?: number | undefined;
1248
- p99?: number | undefined;
1249
- } | undefined;
1250
- } | undefined;
1251
- vercelGatewayRouting?: {
1252
- only?: string[] | undefined;
1253
- order?: string[] | undefined;
1254
- } | undefined;
1255
- supportsStrictMode?: boolean | undefined;
1256
- supportsOpenAIGrammarTools?: boolean | undefined;
1257
- supportsGrammarTools?: boolean | undefined;
1258
- sendSessionAffinityHeaders?: boolean | undefined;
1259
- deferredToolsMode?: "kimi" | undefined;
1260
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1261
- supportsLongCacheRetention?: boolean | undefined;
1262
- } | {
1263
- supportsDeveloperRole?: boolean | undefined;
1264
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1265
- supportsLongCacheRetention?: boolean | undefined;
1266
- supportsStrictMode?: boolean | undefined;
1267
- supportsOpenAIGrammarTools?: boolean | undefined;
1268
- supportsGrammarTools?: boolean | undefined;
1269
- supportsToolSearch?: boolean | undefined;
1270
- } | {
1271
- supportsEagerToolInputStreaming?: boolean | undefined;
1272
- supportsLongCacheRetention?: boolean | undefined;
1273
- sendSessionAffinityHeaders?: boolean | undefined;
1274
- supportsCacheControlOnTools?: boolean | undefined;
1275
- supportsTemperature?: boolean | undefined;
1276
- forceAdaptiveThinking?: boolean | undefined;
1277
- allowEmptySignature?: boolean | undefined;
1278
- supportsStrictTools?: boolean | undefined;
1279
- supportsToolReferences?: boolean | undefined;
1280
- } | undefined;
1281
- }[] | undefined;
1282
- modelOverrides?: Record<string, {
1283
- name?: string | undefined;
1284
- reasoning?: boolean | undefined;
1285
- thinkingLevelMap?: {
1286
- off?: string | null | undefined;
1287
- minimal?: string | null | undefined;
1288
- low?: string | null | undefined;
1289
- medium?: string | null | undefined;
1290
- high?: string | null | undefined;
1291
- xhigh?: string | null | undefined;
1292
- max?: string | null | undefined;
1293
- } | undefined;
1294
- input?: ("image" | "text")[] | undefined;
1295
- cost?: {
1296
- input?: number | undefined;
1297
- output?: number | undefined;
1298
- cacheRead?: number | undefined;
1299
- cacheWrite?: number | undefined;
1300
- tiers?: ({
1301
- input: number;
1302
- output: number;
1303
- cacheRead: number;
1304
- cacheWrite: number;
1305
- } & {
1306
- inputTokensAbove: number;
1307
- })[] | undefined;
1308
- } | undefined;
1309
- contextWindow?: number | undefined;
1310
- maxTokens?: number | undefined;
1311
- headers?: Record<string, string> | undefined;
1312
- compat?: {
1313
- supportsStore?: boolean | undefined;
1314
- supportsDeveloperRole?: boolean | undefined;
1315
- supportsReasoningEffort?: boolean | undefined;
1316
- supportsUsageInStreaming?: boolean | undefined;
1317
- maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
1318
- requiresToolResultName?: boolean | undefined;
1319
- requiresAssistantAfterToolResult?: boolean | undefined;
1320
- requiresThinkingAsText?: boolean | undefined;
1321
- requiresReasoningContentOnAssistantMessages?: boolean | undefined;
1322
- thinkingFormat?: "ant-ling" | "chat-template" | "deepseek" | "openai" | "openrouter" | "qwen" | "qwen-chat-template" | "string-thinking" | "together" | "zai" | undefined;
1323
- chatTemplateKwargs?: Record<string, string | number | boolean | {
1324
- $var: "thinking.effort" | "thinking.enabled";
1325
- omitWhenOff?: boolean | undefined;
1326
- } | null> | undefined;
1327
- cacheControlFormat?: "anthropic" | undefined;
1328
- openRouterRouting?: {
1329
- allow_fallbacks?: boolean | undefined;
1330
- require_parameters?: boolean | undefined;
1331
- data_collection?: "allow" | "deny" | undefined;
1332
- zdr?: boolean | undefined;
1333
- enforce_distillable_text?: boolean | undefined;
1334
- order?: string[] | undefined;
1335
- only?: string[] | undefined;
1336
- ignore?: string[] | undefined;
1337
- quantizations?: string[] | undefined;
1338
- sort?: string | {
1339
- by?: string | undefined;
1340
- partition?: string | null | undefined;
1341
- } | undefined;
1342
- max_price?: {
1343
- prompt?: string | number | undefined;
1344
- completion?: string | number | undefined;
1345
- image?: string | number | undefined;
1346
- audio?: string | number | undefined;
1347
- request?: string | number | undefined;
1348
- } | undefined;
1349
- preferred_min_throughput?: number | {
1350
- p50?: number | undefined;
1351
- p75?: number | undefined;
1352
- p90?: number | undefined;
1353
- p99?: number | undefined;
1354
- } | undefined;
1355
- preferred_max_latency?: number | {
1356
- p50?: number | undefined;
1357
- p75?: number | undefined;
1358
- p90?: number | undefined;
1359
- p99?: number | undefined;
1360
- } | undefined;
1361
- } | undefined;
1362
- vercelGatewayRouting?: {
1363
- only?: string[] | undefined;
1364
- order?: string[] | undefined;
1365
- } | undefined;
1366
- supportsStrictMode?: boolean | undefined;
1367
- supportsOpenAIGrammarTools?: boolean | undefined;
1368
- supportsGrammarTools?: boolean | undefined;
1369
- sendSessionAffinityHeaders?: boolean | undefined;
1370
- deferredToolsMode?: "kimi" | undefined;
1371
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1372
- supportsLongCacheRetention?: boolean | undefined;
1373
- } | {
1374
- supportsDeveloperRole?: boolean | undefined;
1375
- sessionAffinityFormat?: "openai" | "openai-nosession" | "openrouter" | undefined;
1376
- supportsLongCacheRetention?: boolean | undefined;
1377
- supportsStrictMode?: boolean | undefined;
1378
- supportsOpenAIGrammarTools?: boolean | undefined;
1379
- supportsGrammarTools?: boolean | undefined;
1380
- supportsToolSearch?: boolean | undefined;
1381
- } | {
1382
- supportsEagerToolInputStreaming?: boolean | undefined;
1383
- supportsLongCacheRetention?: boolean | undefined;
1384
- sendSessionAffinityHeaders?: boolean | undefined;
1385
- supportsCacheControlOnTools?: boolean | undefined;
1386
- supportsTemperature?: boolean | undefined;
1387
- forceAdaptiveThinking?: boolean | undefined;
1388
- allowEmptySignature?: boolean | undefined;
1389
- supportsStrictTools?: boolean | undefined;
1390
- supportsToolReferences?: boolean | undefined;
1391
- } | undefined;
1392
- }> | undefined;
1393
- }>;
1394
- }>;
1395
- export type ModelsConfig = Static<typeof ModelsConfigSchema>;
1396
- export declare function formatValidationPath(error: TLocalizedValidationError): string;
1397
- export declare function stripJsonComments(input: string): string;
1398
- export {};
1399
- //# sourceMappingURL=model-registry-schemas.d.ts.map