pi-namespace-patch 1.2.0-namespace.2 → 1.4.0-namespace.1

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 (233) hide show
  1. package/CHANGELOG.md +102 -0
  2. package/README.md +5 -5
  3. package/dist/bundle/chunks/anthropic-messages-5FHV3XZG.js +6 -0
  4. package/dist/bundle/chunks/azure-openai-responses-KLTRI2FU.js +2 -0
  5. package/dist/bundle/chunks/bedrock-converse-stream.js +12 -9
  6. package/dist/bundle/chunks/{chunk-TRDNDS6A.js → chunk-3V45WARH.js} +6 -3
  7. package/dist/bundle/chunks/chunk-4GGCU36O.js +11 -0
  8. package/dist/bundle/chunks/{chunk-S3GGRYIO.js → chunk-5AGIVGSV.js} +1 -1
  9. package/dist/bundle/chunks/{chunk-F5ZABL6Z.js → chunk-7CBJINYJ.js} +2 -2
  10. package/dist/bundle/chunks/{chunk-DRQDKNXA.js → chunk-7DDKXS2Q.js} +1 -1
  11. package/dist/bundle/chunks/{chunk-CQ3XTLTY.js → chunk-A45IWOC6.js} +4 -4
  12. package/dist/bundle/chunks/{chunk-WJUNYZC5.js → chunk-BSS6T6KQ.js} +1 -1
  13. package/dist/bundle/chunks/{chunk-H3QXYIF7.js → chunk-CF5GWZHW.js} +1 -1
  14. package/dist/bundle/chunks/{chunk-DOST5PQW.js → chunk-EGE5YVUM.js} +1 -1
  15. package/dist/bundle/chunks/{chunk-C2AEIDJZ.js → chunk-FB6L7ZMV.js} +1 -1
  16. package/dist/bundle/chunks/chunk-H76KZMOI.js +2 -0
  17. package/dist/bundle/chunks/{chunk-GDR5JFDJ.js → chunk-INGZIYBC.js} +2 -2
  18. package/dist/bundle/chunks/{chunk-D7PHKNBM.js → chunk-IUWY2KTF.js} +11 -11
  19. package/dist/bundle/chunks/{chunk-4L3WN2XY.js → chunk-JXWJOIH4.js} +1 -1
  20. package/dist/bundle/chunks/{chunk-6CYCI3EJ.js → chunk-LVVZS2NO.js} +1 -1
  21. package/dist/bundle/chunks/{chunk-5GTPJSRI.js → chunk-N43LRJ4N.js} +1 -1
  22. package/dist/bundle/chunks/chunk-NFLURVK3.js +2 -0
  23. package/dist/bundle/chunks/chunk-QSDU2SDK.js +16 -0
  24. package/dist/bundle/chunks/chunk-RISAW7OQ.js +9 -0
  25. package/dist/bundle/chunks/{chunk-AKJ3ZOR3.js → chunk-RWO6Q3KK.js} +1 -1
  26. package/dist/bundle/chunks/{chunk-6MWTY2OB.js → chunk-T726RZZU.js} +10 -9
  27. package/dist/bundle/chunks/{chunk-ZBURYEWF.js → chunk-TMTOQ7H7.js} +1 -1
  28. package/dist/bundle/chunks/chunk-TRERZKRC.js +2 -0
  29. package/dist/bundle/chunks/{chunk-22CYIUS4.js → chunk-UKVNB6C4.js} +1 -1
  30. package/dist/bundle/chunks/chunk-Z6I32PHA.js +2 -0
  31. package/dist/bundle/chunks/{chunk-H7S5Z6OB.js → chunk-ZEIZZEGK.js} +42 -40
  32. package/dist/bundle/chunks/{cli-SWM4FQ6V.js → cli-MIMUTM5L.js} +1 -1
  33. package/dist/bundle/chunks/cloudflare-workers-ai-system-one-7J6REGDV.js +2 -0
  34. package/dist/bundle/chunks/{easter-egg-3d-OX6RUCIS.js → easter-egg-3d-RMLF7AC4.js} +1 -1
  35. package/dist/bundle/chunks/{execute-3CFUPDLS.js → execute-MT7QEDSI.js} +9 -3
  36. package/dist/bundle/chunks/github-copilot.js +1 -1
  37. package/dist/bundle/chunks/google-generative-ai-VPNFZDHO.js +2 -0
  38. package/dist/bundle/chunks/google-vertex-ZFM23MQ4.js +2 -0
  39. package/dist/bundle/chunks/https-proxy-agent-LVOO5TPL.js +13 -0
  40. package/dist/bundle/chunks/{jiti-loader-C3NU2SDH.js → jiti-loader-GL4HJFAD.js} +1 -1
  41. package/dist/bundle/chunks/{jiti-static-loader-E6ANQD5T.js → jiti-static-loader-2RCDI6B4.js} +1 -1
  42. package/dist/bundle/chunks/{lib-TEDK3E5I.js → lib-4AVRLBHM.js} +1 -1
  43. package/dist/bundle/chunks/{llama-cpp-classify-FYN623RH.js → llama-cpp-classify-U4EH6TAM.js} +2 -2
  44. package/dist/bundle/chunks/mistral-conversations-WCAJTBXO.js +5 -0
  45. package/dist/bundle/chunks/{multipart-parser-SQ6GDJL7.js → multipart-parser-FMGQ7342.js} +1 -1
  46. package/dist/bundle/chunks/{node-TWVVAGPO.js → node-AUOGOBCN.js} +1 -1
  47. package/dist/bundle/chunks/{node-N5BSDOA5.js → node-KCMANYC2.js} +1 -1
  48. package/dist/bundle/chunks/openai-codex-responses-JQR3IK2C.js +10 -0
  49. package/dist/bundle/chunks/openai-completions-27RKPL37.js +7 -0
  50. package/dist/bundle/chunks/{openai-decisions-WVPMQ4JD.js → openai-decisions-MJYPUCLX.js} +1 -1
  51. package/dist/bundle/chunks/openai-responses-I2TBW7OL.js +4 -0
  52. package/dist/bundle/chunks/openrouter-images-WBAVKHHY.js +2 -0
  53. package/dist/bundle/chunks/pi-messages-S7RKCD5K.js +8 -0
  54. package/dist/bundle/chunks/{runtime-366HE7CW.js → runtime-GJOZRI5I.js} +1 -1
  55. package/dist/bundle/chunks/{src-UK77SYZE.js → src-QKGKDFSU.js} +1 -1
  56. package/dist/bundle/chunks/typesafe-system-one-4C7ULOVP.js +2 -0
  57. package/dist/bundle/chunks/virtual-modules-6XWNE4NR.js +2 -0
  58. package/dist/bundle/cli-runtime.js +1 -1
  59. package/dist/bundle/index.js +1 -1
  60. package/dist/bundle/rpc-entry.js +1 -1
  61. package/dist/cli/credential-print.d.ts.map +1 -1
  62. package/dist/cli/credential-print.js +4 -4
  63. package/dist/cli/credential-print.js.map +1 -1
  64. package/dist/core/agent-session.d.ts +9 -3
  65. package/dist/core/agent-session.d.ts.map +1 -1
  66. package/dist/core/agent-session.js +45 -15
  67. package/dist/core/agent-session.js.map +1 -1
  68. package/dist/core/client-identity.d.ts +8 -0
  69. package/dist/core/client-identity.d.ts.map +1 -0
  70. package/dist/core/client-identity.js +15 -0
  71. package/dist/core/client-identity.js.map +1 -0
  72. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  73. package/dist/core/compaction/branch-summarization.js +1 -2
  74. package/dist/core/compaction/branch-summarization.js.map +1 -1
  75. package/dist/core/compaction/compaction.d.ts +2 -2
  76. package/dist/core/compaction/compaction.d.ts.map +1 -1
  77. package/dist/core/compaction/compaction.js +20 -15
  78. package/dist/core/compaction/compaction.js.map +1 -1
  79. package/dist/core/export-html/index.d.ts.map +1 -1
  80. package/dist/core/export-html/index.js +2 -0
  81. package/dist/core/export-html/index.js.map +1 -1
  82. package/dist/core/export-html/template.html +1 -0
  83. package/dist/core/export-html/template.js +23 -17
  84. package/dist/core/export-html/vendor/marked-cjk-friendly.min.js +6 -0
  85. package/dist/core/export-html/vendor/marked.min.js +30 -29
  86. package/dist/core/extensions/loader.d.ts.map +1 -1
  87. package/dist/core/extensions/loader.js +3 -0
  88. package/dist/core/extensions/loader.js.map +1 -1
  89. package/dist/core/extensions/virtual-modules.d.ts.map +1 -1
  90. package/dist/core/extensions/virtual-modules.js +3 -0
  91. package/dist/core/extensions/virtual-modules.js.map +1 -1
  92. package/dist/core/model-config.d.ts +939 -8
  93. package/dist/core/model-config.d.ts.map +1 -1
  94. package/dist/core/model-config.js +48 -24
  95. package/dist/core/model-config.js.map +1 -1
  96. package/dist/core/model-resolver.d.ts +56 -43
  97. package/dist/core/model-resolver.d.ts.map +1 -1
  98. package/dist/core/model-resolver.js +253 -358
  99. package/dist/core/model-resolver.js.map +1 -1
  100. package/dist/core/model-runtime.d.ts.map +1 -1
  101. package/dist/core/model-runtime.js +6 -3
  102. package/dist/core/model-runtime.js.map +1 -1
  103. package/dist/core/prompt-templates.d.ts.map +1 -1
  104. package/dist/core/prompt-templates.js +7 -2
  105. package/dist/core/prompt-templates.js.map +1 -1
  106. package/dist/core/provider-composer.d.ts +2 -1
  107. package/dist/core/provider-composer.d.ts.map +1 -1
  108. package/dist/core/provider-composer.js +7 -3
  109. package/dist/core/provider-composer.js.map +1 -1
  110. package/dist/core/sdk.d.ts.map +1 -1
  111. package/dist/core/sdk.js +8 -9
  112. package/dist/core/sdk.js.map +1 -1
  113. package/dist/core/settings-defaults.d.ts +1 -0
  114. package/dist/core/settings-defaults.d.ts.map +1 -1
  115. package/dist/core/settings-defaults.js +1 -0
  116. package/dist/core/settings-defaults.js.map +1 -1
  117. package/dist/core/settings-manager.d.ts +4 -2
  118. package/dist/core/settings-manager.d.ts.map +1 -1
  119. package/dist/core/settings-manager.js +11 -0
  120. package/dist/core/settings-manager.js.map +1 -1
  121. package/dist/core/settings-schema.d.ts +2 -0
  122. package/dist/core/settings-schema.d.ts.map +1 -1
  123. package/dist/core/settings-schema.js +4 -0
  124. package/dist/core/settings-schema.js.map +1 -1
  125. package/dist/core/slash-commands.js +1 -1
  126. package/dist/core/slash-commands.js.map +1 -1
  127. package/dist/core/tools/grep.d.ts.map +1 -1
  128. package/dist/core/tools/grep.js +3 -1
  129. package/dist/core/tools/grep.js.map +1 -1
  130. package/dist/core/tools/render-utils.d.ts +2 -0
  131. package/dist/core/tools/render-utils.d.ts.map +1 -1
  132. package/dist/core/tools/render-utils.js +21 -0
  133. package/dist/core/tools/render-utils.js.map +1 -1
  134. package/dist/core/tools/renderers/read.d.ts.map +1 -1
  135. package/dist/core/tools/renderers/read.js +7 -11
  136. package/dist/core/tools/renderers/read.js.map +1 -1
  137. package/dist/extensions/codemode/execute.d.ts.map +1 -1
  138. package/dist/extensions/codemode/execute.js +101 -14
  139. package/dist/extensions/codemode/execute.js.map +1 -1
  140. package/dist/extensions/mcp/config.d.ts.map +1 -1
  141. package/dist/extensions/mcp/config.js +3 -2
  142. package/dist/extensions/mcp/config.js.map +1 -1
  143. package/dist/index.d.ts +1 -0
  144. package/dist/index.d.ts.map +1 -1
  145. package/dist/index.js +1 -0
  146. package/dist/index.js.map +1 -1
  147. package/dist/main.d.ts.map +1 -1
  148. package/dist/main.js +1 -0
  149. package/dist/main.js.map +1 -1
  150. package/dist/modes/interactive/components/settings-selector.d.ts +3 -1
  151. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  152. package/dist/modes/interactive/components/settings-selector.js +10 -0
  153. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  154. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  155. package/dist/modes/interactive/components/tree-selector.js +2 -9
  156. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  157. package/dist/modes/interactive/interactive-mode.d.ts +11 -15
  158. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  159. package/dist/modes/interactive/interactive-mode.js +76 -111
  160. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  161. package/dist/modes/interactive/session-share.d.ts.map +1 -1
  162. package/dist/modes/interactive/session-share.js +9 -2
  163. package/dist/modes/interactive/session-share.js.map +1 -1
  164. package/dist/package-manager-cli.d.ts.map +1 -1
  165. package/dist/package-manager-cli.js +2 -1
  166. package/dist/package-manager-cli.js.map +1 -1
  167. package/dist/utils/clipboard-command.d.ts.map +1 -1
  168. package/dist/utils/clipboard-command.js +3 -0
  169. package/dist/utils/clipboard-command.js.map +1 -1
  170. package/dist/utils/pi-user-agent.d.ts +1 -0
  171. package/dist/utils/pi-user-agent.d.ts.map +1 -1
  172. package/dist/utils/pi-user-agent.js +3 -2
  173. package/dist/utils/pi-user-agent.js.map +1 -1
  174. package/dist/utils/shell.d.ts.map +1 -1
  175. package/dist/utils/shell.js +45 -13
  176. package/dist/utils/shell.js.map +1 -1
  177. package/dist/utils/tools-manager.d.ts.map +1 -1
  178. package/dist/utils/tools-manager.js +4 -3
  179. package/dist/utils/tools-manager.js.map +1 -1
  180. package/docs/cli.md +3 -3
  181. package/docs/codemode.md +3 -1
  182. package/docs/compaction.md +3 -3
  183. package/docs/custom-provider.md +53 -1
  184. package/docs/docs.json +8 -0
  185. package/docs/environment-variables.md +1 -0
  186. package/docs/extensions.md +133 -10
  187. package/docs/llama-cpp.md +1 -1
  188. package/docs/models-configuration.md +196 -0
  189. package/docs/models.md +21 -5
  190. package/docs/nvidia-rtx-llama-cpp.md +96 -0
  191. package/docs/sessions.md +1 -1
  192. package/docs/settings.md +2 -1
  193. package/docs/tui.md +70 -0
  194. package/docs/usage.md +1 -1
  195. package/docs/windows.md +16 -2
  196. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  197. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  198. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  199. package/examples/extensions/gondolin/package-lock.json +2 -2
  200. package/examples/extensions/gondolin/package.json +1 -1
  201. package/examples/extensions/minimal-mode.ts +4 -5
  202. package/examples/extensions/sandbox/package-lock.json +2 -2
  203. package/examples/extensions/sandbox/package.json +1 -1
  204. package/examples/extensions/subagent/index.ts +4 -6
  205. package/examples/extensions/with-deps/package-lock.json +2 -2
  206. package/examples/extensions/with-deps/package.json +1 -1
  207. package/package.json +7 -6
  208. package/schemas/models.schema.json +88 -34
  209. package/schemas/settings.schema.json +18 -0
  210. package/dist/bundle/chunks/anthropic-messages-Q7SXESRX.js +0 -6
  211. package/dist/bundle/chunks/azure-openai-responses-LM52U7CK.js +0 -2
  212. package/dist/bundle/chunks/chunk-3ZATHNCK.js +0 -9
  213. package/dist/bundle/chunks/chunk-HACVPRBJ.js +0 -11
  214. package/dist/bundle/chunks/chunk-ITZNWD4K.js +0 -2
  215. package/dist/bundle/chunks/chunk-TN4NLWHF.js +0 -11
  216. package/dist/bundle/chunks/chunk-WBQBCFWG.js +0 -2
  217. package/dist/bundle/chunks/chunk-XIX7LUWI.js +0 -2
  218. package/dist/bundle/chunks/cloudflare-workers-ai-system-one-UTBL2KOF.js +0 -2
  219. package/dist/bundle/chunks/google-generative-ai-DXKP72HC.js +0 -2
  220. package/dist/bundle/chunks/google-vertex-W6SIDOVV.js +0 -2
  221. package/dist/bundle/chunks/https-proxy-agent-2VXB7436.js +0 -13
  222. package/dist/bundle/chunks/mistral-conversations-GBMHTSYF.js +0 -5
  223. package/dist/bundle/chunks/openai-codex-responses-RN6B5UPP.js +0 -10
  224. package/dist/bundle/chunks/openai-completions-QW2B4SML.js +0 -7
  225. package/dist/bundle/chunks/openai-responses-KDJUSIU7.js +0 -3
  226. package/dist/bundle/chunks/openrouter-images-DUPG5DZO.js +0 -2
  227. package/dist/bundle/chunks/pi-messages-YHKPQIHC.js +0 -8
  228. package/dist/bundle/chunks/typesafe-system-one-ZSK3RN4B.js +0 -2
  229. package/dist/bundle/chunks/virtual-modules-KHZAOPVZ.js +0 -2
  230. package/dist/core/provider-attribution.d.ts +0 -4
  231. package/dist/core/provider-attribution.d.ts.map +0 -1
  232. package/dist/core/provider-attribution.js +0 -72
  233. package/dist/core/provider-attribution.js.map +0 -1
@@ -139,6 +139,7 @@ declare const ModelDefinitionSchema: Type.TObject<{
139
139
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
140
140
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
141
141
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
142
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
142
143
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
143
144
  } & {
144
145
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -174,10 +175,14 @@ declare const ModelDefinitionSchema: Type.TObject<{
174
175
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
175
176
  } & {
176
177
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
177
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
178
+ } & {
179
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
180
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
181
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
178
182
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
179
183
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
180
184
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
185
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
181
186
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
182
187
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
183
188
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -320,6 +325,7 @@ declare const ModelOverrideSchema: Type.TObject<{
320
325
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
321
326
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
322
327
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
328
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
323
329
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
324
330
  } & {
325
331
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -355,10 +361,14 @@ declare const ModelOverrideSchema: Type.TObject<{
355
361
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
356
362
  } & {
357
363
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
358
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
364
+ } & {
365
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
366
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
367
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
359
368
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
360
369
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
361
370
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
371
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
362
372
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
363
373
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
364
374
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -452,6 +462,7 @@ declare const ProviderConfigSchema: Type.TObject<{
452
462
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
453
463
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
454
464
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
465
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
455
466
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
456
467
  } & {
457
468
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -487,10 +498,14 @@ declare const ProviderConfigSchema: Type.TObject<{
487
498
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
488
499
  } & {
489
500
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
490
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
501
+ } & {
502
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
503
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
504
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
491
505
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
492
506
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
493
507
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
508
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
494
509
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
495
510
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
496
511
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -636,6 +651,7 @@ declare const ProviderConfigSchema: Type.TObject<{
636
651
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
637
652
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
638
653
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
654
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
639
655
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
640
656
  } & {
641
657
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -671,10 +687,14 @@ declare const ProviderConfigSchema: Type.TObject<{
671
687
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
672
688
  } & {
673
689
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
674
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
690
+ } & {
691
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
692
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
693
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
675
694
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
676
695
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
677
696
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
697
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
678
698
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
679
699
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
680
700
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -817,6 +837,7 @@ declare const ProviderConfigSchema: Type.TObject<{
817
837
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
818
838
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
819
839
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
840
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
820
841
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
821
842
  } & {
822
843
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -852,10 +873,14 @@ declare const ProviderConfigSchema: Type.TObject<{
852
873
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
853
874
  } & {
854
875
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
855
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
876
+ } & {
877
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
878
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
879
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
856
880
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
857
881
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
858
882
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
883
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
859
884
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
860
885
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
861
886
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -951,6 +976,7 @@ export declare const ModelsConfigSchema: Type.TObject<{
951
976
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
952
977
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
953
978
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
979
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
954
980
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
955
981
  } & {
956
982
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -986,10 +1012,14 @@ export declare const ModelsConfigSchema: Type.TObject<{
986
1012
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
987
1013
  } & {
988
1014
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
989
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1015
+ } & {
1016
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
1017
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
1018
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
990
1019
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
991
1020
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
992
1021
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1022
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
993
1023
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
994
1024
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
995
1025
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -1135,6 +1165,7 @@ export declare const ModelsConfigSchema: Type.TObject<{
1135
1165
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1136
1166
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
1137
1167
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1168
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1138
1169
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1139
1170
  } & {
1140
1171
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -1170,10 +1201,14 @@ export declare const ModelsConfigSchema: Type.TObject<{
1170
1201
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
1171
1202
  } & {
1172
1203
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1173
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1204
+ } & {
1205
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
1206
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
1207
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1174
1208
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1175
1209
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1176
1210
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1211
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1177
1212
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1178
1213
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
1179
1214
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -1316,6 +1351,7 @@ export declare const ModelsConfigSchema: Type.TObject<{
1316
1351
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1317
1352
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
1318
1353
  supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1354
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1319
1355
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1320
1356
  } & {
1321
1357
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
@@ -1351,10 +1387,14 @@ export declare const ModelsConfigSchema: Type.TObject<{
1351
1387
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
1352
1388
  } & {
1353
1389
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1354
- }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1390
+ } & {
1391
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
1392
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
1393
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1355
1394
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1356
1395
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1357
1396
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1397
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1358
1398
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1359
1399
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
1360
1400
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
@@ -1364,6 +1404,897 @@ export declare const ModelsConfigSchema: Type.TObject<{
1364
1404
  }>>;
1365
1405
  $schema: Type.TOptional<Type.TString>;
1366
1406
  }>;
1407
+ /** Entry schemas rendered into docs/models-configuration.md. */
1408
+ export declare const ModelsJsonSchemas: {
1409
+ provider: Type.TObject<{
1410
+ name: Type.TOptional<Type.TString>;
1411
+ baseUrl: Type.TOptional<Type.TString>;
1412
+ apiKey: Type.TOptional<Type.TString>;
1413
+ api: Type.TOptional<Type.TString>;
1414
+ oauth: Type.TOptional<Type.TLiteral<"radius">>;
1415
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
1416
+ compat: Type.TOptional<Type.TObject<Omit<{
1417
+ supportsStore: Type.TOptional<Type.TBoolean>;
1418
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1419
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
1420
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
1421
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
1422
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
1423
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
1424
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
1425
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
1426
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
1427
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"deepseek">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
1428
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1429
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1430
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1431
+ }>]>>>;
1432
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1433
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1434
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1435
+ }>]>>>;
1436
+ openRouterRouting: Type.TOptional<Type.TObject<{
1437
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
1438
+ require_parameters: Type.TOptional<Type.TBoolean>;
1439
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
1440
+ zdr: Type.TOptional<Type.TBoolean>;
1441
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
1442
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1443
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1444
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
1445
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
1446
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
1447
+ by: Type.TOptional<Type.TString>;
1448
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1449
+ }>]>>;
1450
+ max_price: Type.TOptional<Type.TObject<{
1451
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1452
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1453
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1454
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1455
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1456
+ }>>;
1457
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1458
+ p50: Type.TOptional<Type.TNumber>;
1459
+ p75: Type.TOptional<Type.TNumber>;
1460
+ p90: Type.TOptional<Type.TNumber>;
1461
+ p99: Type.TOptional<Type.TNumber>;
1462
+ }>]>>;
1463
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1464
+ p50: Type.TOptional<Type.TNumber>;
1465
+ p75: Type.TOptional<Type.TNumber>;
1466
+ p90: Type.TOptional<Type.TNumber>;
1467
+ p99: Type.TOptional<Type.TNumber>;
1468
+ }>]>>;
1469
+ }>>;
1470
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
1471
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1472
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1473
+ }>>;
1474
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
1475
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
1476
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
1477
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1478
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1479
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
1480
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1481
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
1482
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1483
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1484
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1485
+ vllmPriority: Type.TOptional<Type.TNumber>;
1486
+ } & {
1487
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1488
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1489
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1490
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1491
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1492
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1493
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1494
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
1495
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1496
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1497
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1498
+ } & {
1499
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
1500
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1501
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1502
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
1503
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
1504
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
1505
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
1506
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
1507
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
1508
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1509
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1510
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
1511
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
1512
+ provider: Type.TString;
1513
+ model: Type.TString;
1514
+ cost: Type.TObject<{
1515
+ input: Type.TNumber;
1516
+ output: Type.TNumber;
1517
+ cacheRead: Type.TNumber;
1518
+ cacheWrite: Type.TNumber;
1519
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1520
+ input: Type.TNumber;
1521
+ output: Type.TNumber;
1522
+ cacheRead: Type.TNumber;
1523
+ cacheWrite: Type.TNumber;
1524
+ inputTokensAbove: Type.TNumber;
1525
+ }>>>;
1526
+ }>;
1527
+ }>>>;
1528
+ } & {
1529
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1530
+ } & {
1531
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1532
+ } & {
1533
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
1534
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
1535
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1536
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1537
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1538
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1539
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1540
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1541
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1542
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1543
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1544
+ }>>;
1545
+ authHeader: Type.TOptional<Type.TBoolean>;
1546
+ models: Type.TOptional<Type.TArray<Type.TObject<{
1547
+ id: Type.TString;
1548
+ name: Type.TOptional<Type.TString>;
1549
+ api: Type.TOptional<Type.TString>;
1550
+ baseUrl: Type.TOptional<Type.TString>;
1551
+ reasoning: Type.TOptional<Type.TBoolean>;
1552
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
1553
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1554
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1555
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1556
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1557
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1558
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1559
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1560
+ }>>;
1561
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image"]>>>;
1562
+ inputLimits: Type.TOptional<Type.TObject<{
1563
+ maxRequestBytes: Type.TOptional<Type.TInteger>;
1564
+ images: Type.TOptional<Type.TObject<{
1565
+ resize: Type.TOptional<Type.TObject<{
1566
+ maxWidth: Type.TOptional<Type.TInteger>;
1567
+ maxHeight: Type.TOptional<Type.TInteger>;
1568
+ maxBytes: Type.TOptional<Type.TInteger>;
1569
+ jpegQuality: Type.TOptional<Type.TInteger>;
1570
+ }>>;
1571
+ maxPerMessage: Type.TOptional<Type.TInteger>;
1572
+ maxPerRequest: Type.TOptional<Type.TInteger>;
1573
+ }>>;
1574
+ }>>;
1575
+ cost: Type.TOptional<Type.TObject<{
1576
+ input: Type.TNumber;
1577
+ output: Type.TNumber;
1578
+ cacheRead: Type.TNumber;
1579
+ cacheWrite: Type.TNumber;
1580
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1581
+ input: Type.TNumber;
1582
+ output: Type.TNumber;
1583
+ cacheRead: Type.TNumber;
1584
+ cacheWrite: Type.TNumber;
1585
+ inputTokensAbove: Type.TNumber;
1586
+ }>>>;
1587
+ }>>;
1588
+ promptCache: Type.TOptional<Type.TObject<{
1589
+ long: Type.TOptional<Type.TNumber>;
1590
+ short: Type.TOptional<Type.TNumber>;
1591
+ }>>;
1592
+ contextWindow: Type.TOptional<Type.TNumber>;
1593
+ maxTokens: Type.TOptional<Type.TNumber>;
1594
+ samplingParams: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1595
+ samplingParamsByThinkingLevel: Type.TOptional<Type.TObject<{
1596
+ off: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1597
+ minimal: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1598
+ low: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1599
+ medium: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1600
+ high: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1601
+ xhigh: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1602
+ max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1603
+ }>>;
1604
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
1605
+ compat: Type.TOptional<Type.TObject<Omit<{
1606
+ supportsStore: Type.TOptional<Type.TBoolean>;
1607
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1608
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
1609
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
1610
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
1611
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
1612
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
1613
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
1614
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
1615
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
1616
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"deepseek">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
1617
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1618
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1619
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1620
+ }>]>>>;
1621
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1622
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1623
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1624
+ }>]>>>;
1625
+ openRouterRouting: Type.TOptional<Type.TObject<{
1626
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
1627
+ require_parameters: Type.TOptional<Type.TBoolean>;
1628
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
1629
+ zdr: Type.TOptional<Type.TBoolean>;
1630
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
1631
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1632
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1633
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
1634
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
1635
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
1636
+ by: Type.TOptional<Type.TString>;
1637
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1638
+ }>]>>;
1639
+ max_price: Type.TOptional<Type.TObject<{
1640
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1641
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1642
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1643
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1644
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1645
+ }>>;
1646
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1647
+ p50: Type.TOptional<Type.TNumber>;
1648
+ p75: Type.TOptional<Type.TNumber>;
1649
+ p90: Type.TOptional<Type.TNumber>;
1650
+ p99: Type.TOptional<Type.TNumber>;
1651
+ }>]>>;
1652
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1653
+ p50: Type.TOptional<Type.TNumber>;
1654
+ p75: Type.TOptional<Type.TNumber>;
1655
+ p90: Type.TOptional<Type.TNumber>;
1656
+ p99: Type.TOptional<Type.TNumber>;
1657
+ }>]>>;
1658
+ }>>;
1659
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
1660
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1661
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1662
+ }>>;
1663
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
1664
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
1665
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
1666
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1667
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1668
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
1669
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1670
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
1671
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1672
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1673
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1674
+ vllmPriority: Type.TOptional<Type.TNumber>;
1675
+ } & {
1676
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1677
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1678
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1679
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1680
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1681
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1682
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1683
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
1684
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1685
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1686
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1687
+ } & {
1688
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
1689
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1690
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1691
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
1692
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
1693
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
1694
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
1695
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
1696
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
1697
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1698
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1699
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
1700
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
1701
+ provider: Type.TString;
1702
+ model: Type.TString;
1703
+ cost: Type.TObject<{
1704
+ input: Type.TNumber;
1705
+ output: Type.TNumber;
1706
+ cacheRead: Type.TNumber;
1707
+ cacheWrite: Type.TNumber;
1708
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1709
+ input: Type.TNumber;
1710
+ output: Type.TNumber;
1711
+ cacheRead: Type.TNumber;
1712
+ cacheWrite: Type.TNumber;
1713
+ inputTokensAbove: Type.TNumber;
1714
+ }>>>;
1715
+ }>;
1716
+ }>>>;
1717
+ } & {
1718
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1719
+ } & {
1720
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1721
+ } & {
1722
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
1723
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
1724
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1725
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1726
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1727
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1728
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1729
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1730
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1731
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1732
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1733
+ }>>;
1734
+ }>>>;
1735
+ modelOverrides: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
1736
+ name: Type.TOptional<Type.TString>;
1737
+ reasoning: Type.TOptional<Type.TBoolean>;
1738
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
1739
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1740
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1741
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1742
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1743
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1744
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1745
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1746
+ }>>;
1747
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image"]>>>;
1748
+ inputLimits: Type.TOptional<Type.TObject<{
1749
+ maxRequestBytes: Type.TOptional<Type.TInteger>;
1750
+ images: Type.TOptional<Type.TObject<{
1751
+ resize: Type.TOptional<Type.TObject<{
1752
+ maxWidth: Type.TOptional<Type.TInteger>;
1753
+ maxHeight: Type.TOptional<Type.TInteger>;
1754
+ maxBytes: Type.TOptional<Type.TInteger>;
1755
+ jpegQuality: Type.TOptional<Type.TInteger>;
1756
+ }>>;
1757
+ maxPerMessage: Type.TOptional<Type.TInteger>;
1758
+ maxPerRequest: Type.TOptional<Type.TInteger>;
1759
+ }>>;
1760
+ }>>;
1761
+ cost: Type.TOptional<Type.TObject<{
1762
+ input: Type.TOptional<Type.TNumber>;
1763
+ output: Type.TOptional<Type.TNumber>;
1764
+ cacheRead: Type.TOptional<Type.TNumber>;
1765
+ cacheWrite: Type.TOptional<Type.TNumber>;
1766
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1767
+ input: Type.TNumber;
1768
+ output: Type.TNumber;
1769
+ cacheRead: Type.TNumber;
1770
+ cacheWrite: Type.TNumber;
1771
+ inputTokensAbove: Type.TNumber;
1772
+ }>>>;
1773
+ }>>;
1774
+ promptCache: Type.TOptional<Type.TObject<{
1775
+ long: Type.TOptional<Type.TNumber>;
1776
+ short: Type.TOptional<Type.TNumber>;
1777
+ }>>;
1778
+ contextWindow: Type.TOptional<Type.TNumber>;
1779
+ maxTokens: Type.TOptional<Type.TNumber>;
1780
+ samplingParams: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1781
+ samplingParamsByThinkingLevel: Type.TOptional<Type.TObject<{
1782
+ off: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1783
+ minimal: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1784
+ low: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1785
+ medium: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1786
+ high: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1787
+ xhigh: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1788
+ max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1789
+ }>>;
1790
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
1791
+ compat: Type.TOptional<Type.TObject<Omit<{
1792
+ supportsStore: Type.TOptional<Type.TBoolean>;
1793
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1794
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
1795
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
1796
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
1797
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
1798
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
1799
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
1800
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
1801
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
1802
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"deepseek">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
1803
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1804
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1805
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1806
+ }>]>>>;
1807
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1808
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1809
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1810
+ }>]>>>;
1811
+ openRouterRouting: Type.TOptional<Type.TObject<{
1812
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
1813
+ require_parameters: Type.TOptional<Type.TBoolean>;
1814
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
1815
+ zdr: Type.TOptional<Type.TBoolean>;
1816
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
1817
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1818
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1819
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
1820
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
1821
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
1822
+ by: Type.TOptional<Type.TString>;
1823
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1824
+ }>]>>;
1825
+ max_price: Type.TOptional<Type.TObject<{
1826
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1827
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1828
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1829
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1830
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1831
+ }>>;
1832
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1833
+ p50: Type.TOptional<Type.TNumber>;
1834
+ p75: Type.TOptional<Type.TNumber>;
1835
+ p90: Type.TOptional<Type.TNumber>;
1836
+ p99: Type.TOptional<Type.TNumber>;
1837
+ }>]>>;
1838
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1839
+ p50: Type.TOptional<Type.TNumber>;
1840
+ p75: Type.TOptional<Type.TNumber>;
1841
+ p90: Type.TOptional<Type.TNumber>;
1842
+ p99: Type.TOptional<Type.TNumber>;
1843
+ }>]>>;
1844
+ }>>;
1845
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
1846
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1847
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1848
+ }>>;
1849
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
1850
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
1851
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
1852
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1853
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1854
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
1855
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1856
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
1857
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1858
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1859
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1860
+ vllmPriority: Type.TOptional<Type.TNumber>;
1861
+ } & {
1862
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1863
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1864
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1865
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1866
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1867
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1868
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1869
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
1870
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1871
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1872
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1873
+ } & {
1874
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
1875
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1876
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1877
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
1878
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
1879
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
1880
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
1881
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
1882
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
1883
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1884
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1885
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
1886
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
1887
+ provider: Type.TString;
1888
+ model: Type.TString;
1889
+ cost: Type.TObject<{
1890
+ input: Type.TNumber;
1891
+ output: Type.TNumber;
1892
+ cacheRead: Type.TNumber;
1893
+ cacheWrite: Type.TNumber;
1894
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1895
+ input: Type.TNumber;
1896
+ output: Type.TNumber;
1897
+ cacheRead: Type.TNumber;
1898
+ cacheWrite: Type.TNumber;
1899
+ inputTokensAbove: Type.TNumber;
1900
+ }>>>;
1901
+ }>;
1902
+ }>>>;
1903
+ } & {
1904
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1905
+ } & {
1906
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1907
+ } & {
1908
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
1909
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
1910
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
1911
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1912
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1913
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1914
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1915
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1916
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1917
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1918
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1919
+ }>>;
1920
+ }>>>;
1921
+ }>;
1922
+ model: Type.TObject<{
1923
+ id: Type.TString;
1924
+ name: Type.TOptional<Type.TString>;
1925
+ api: Type.TOptional<Type.TString>;
1926
+ baseUrl: Type.TOptional<Type.TString>;
1927
+ reasoning: Type.TOptional<Type.TBoolean>;
1928
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
1929
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1930
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1931
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1932
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1933
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1934
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1935
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1936
+ }>>;
1937
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image"]>>>;
1938
+ inputLimits: Type.TOptional<Type.TObject<{
1939
+ maxRequestBytes: Type.TOptional<Type.TInteger>;
1940
+ images: Type.TOptional<Type.TObject<{
1941
+ resize: Type.TOptional<Type.TObject<{
1942
+ maxWidth: Type.TOptional<Type.TInteger>;
1943
+ maxHeight: Type.TOptional<Type.TInteger>;
1944
+ maxBytes: Type.TOptional<Type.TInteger>;
1945
+ jpegQuality: Type.TOptional<Type.TInteger>;
1946
+ }>>;
1947
+ maxPerMessage: Type.TOptional<Type.TInteger>;
1948
+ maxPerRequest: Type.TOptional<Type.TInteger>;
1949
+ }>>;
1950
+ }>>;
1951
+ cost: Type.TOptional<Type.TObject<{
1952
+ input: Type.TNumber;
1953
+ output: Type.TNumber;
1954
+ cacheRead: Type.TNumber;
1955
+ cacheWrite: Type.TNumber;
1956
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1957
+ input: Type.TNumber;
1958
+ output: Type.TNumber;
1959
+ cacheRead: Type.TNumber;
1960
+ cacheWrite: Type.TNumber;
1961
+ inputTokensAbove: Type.TNumber;
1962
+ }>>>;
1963
+ }>>;
1964
+ promptCache: Type.TOptional<Type.TObject<{
1965
+ long: Type.TOptional<Type.TNumber>;
1966
+ short: Type.TOptional<Type.TNumber>;
1967
+ }>>;
1968
+ contextWindow: Type.TOptional<Type.TNumber>;
1969
+ maxTokens: Type.TOptional<Type.TNumber>;
1970
+ samplingParams: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1971
+ samplingParamsByThinkingLevel: Type.TOptional<Type.TObject<{
1972
+ off: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1973
+ minimal: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1974
+ low: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1975
+ medium: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1976
+ high: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1977
+ xhigh: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1978
+ max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1979
+ }>>;
1980
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
1981
+ compat: Type.TOptional<Type.TObject<Omit<{
1982
+ supportsStore: Type.TOptional<Type.TBoolean>;
1983
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1984
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
1985
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
1986
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
1987
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
1988
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
1989
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
1990
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
1991
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
1992
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"deepseek">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
1993
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1994
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1995
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1996
+ }>]>>>;
1997
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1998
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1999
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
2000
+ }>]>>>;
2001
+ openRouterRouting: Type.TOptional<Type.TObject<{
2002
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
2003
+ require_parameters: Type.TOptional<Type.TBoolean>;
2004
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
2005
+ zdr: Type.TOptional<Type.TBoolean>;
2006
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
2007
+ order: Type.TOptional<Type.TArray<Type.TString>>;
2008
+ only: Type.TOptional<Type.TArray<Type.TString>>;
2009
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
2010
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
2011
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
2012
+ by: Type.TOptional<Type.TString>;
2013
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2014
+ }>]>>;
2015
+ max_price: Type.TOptional<Type.TObject<{
2016
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2017
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2018
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2019
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2020
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2021
+ }>>;
2022
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
2023
+ p50: Type.TOptional<Type.TNumber>;
2024
+ p75: Type.TOptional<Type.TNumber>;
2025
+ p90: Type.TOptional<Type.TNumber>;
2026
+ p99: Type.TOptional<Type.TNumber>;
2027
+ }>]>>;
2028
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
2029
+ p50: Type.TOptional<Type.TNumber>;
2030
+ p75: Type.TOptional<Type.TNumber>;
2031
+ p90: Type.TOptional<Type.TNumber>;
2032
+ p99: Type.TOptional<Type.TNumber>;
2033
+ }>]>>;
2034
+ }>>;
2035
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
2036
+ only: Type.TOptional<Type.TArray<Type.TString>>;
2037
+ order: Type.TOptional<Type.TArray<Type.TString>>;
2038
+ }>>;
2039
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
2040
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
2041
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
2042
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
2043
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2044
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
2045
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2046
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
2047
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
2048
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
2049
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2050
+ vllmPriority: Type.TOptional<Type.TNumber>;
2051
+ } & {
2052
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
2053
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2054
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
2055
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2056
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2057
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
2058
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
2059
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
2060
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
2061
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
2062
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
2063
+ } & {
2064
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
2065
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2066
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
2067
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
2068
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
2069
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
2070
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
2071
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
2072
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
2073
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
2074
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2075
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
2076
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
2077
+ provider: Type.TString;
2078
+ model: Type.TString;
2079
+ cost: Type.TObject<{
2080
+ input: Type.TNumber;
2081
+ output: Type.TNumber;
2082
+ cacheRead: Type.TNumber;
2083
+ cacheWrite: Type.TNumber;
2084
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
2085
+ input: Type.TNumber;
2086
+ output: Type.TNumber;
2087
+ cacheRead: Type.TNumber;
2088
+ cacheWrite: Type.TNumber;
2089
+ inputTokensAbove: Type.TNumber;
2090
+ }>>>;
2091
+ }>;
2092
+ }>>>;
2093
+ } & {
2094
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2095
+ } & {
2096
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2097
+ } & {
2098
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
2099
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
2100
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
2101
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
2102
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2103
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
2104
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
2105
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2106
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2107
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
2108
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
2109
+ }>>;
2110
+ }>;
2111
+ modelOverride: Type.TObject<{
2112
+ name: Type.TOptional<Type.TString>;
2113
+ reasoning: Type.TOptional<Type.TBoolean>;
2114
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
2115
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2116
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2117
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2118
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2119
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2120
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2121
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2122
+ }>>;
2123
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image"]>>>;
2124
+ inputLimits: Type.TOptional<Type.TObject<{
2125
+ maxRequestBytes: Type.TOptional<Type.TInteger>;
2126
+ images: Type.TOptional<Type.TObject<{
2127
+ resize: Type.TOptional<Type.TObject<{
2128
+ maxWidth: Type.TOptional<Type.TInteger>;
2129
+ maxHeight: Type.TOptional<Type.TInteger>;
2130
+ maxBytes: Type.TOptional<Type.TInteger>;
2131
+ jpegQuality: Type.TOptional<Type.TInteger>;
2132
+ }>>;
2133
+ maxPerMessage: Type.TOptional<Type.TInteger>;
2134
+ maxPerRequest: Type.TOptional<Type.TInteger>;
2135
+ }>>;
2136
+ }>>;
2137
+ cost: Type.TOptional<Type.TObject<{
2138
+ input: Type.TOptional<Type.TNumber>;
2139
+ output: Type.TOptional<Type.TNumber>;
2140
+ cacheRead: Type.TOptional<Type.TNumber>;
2141
+ cacheWrite: Type.TOptional<Type.TNumber>;
2142
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
2143
+ input: Type.TNumber;
2144
+ output: Type.TNumber;
2145
+ cacheRead: Type.TNumber;
2146
+ cacheWrite: Type.TNumber;
2147
+ inputTokensAbove: Type.TNumber;
2148
+ }>>>;
2149
+ }>>;
2150
+ promptCache: Type.TOptional<Type.TObject<{
2151
+ long: Type.TOptional<Type.TNumber>;
2152
+ short: Type.TOptional<Type.TNumber>;
2153
+ }>>;
2154
+ contextWindow: Type.TOptional<Type.TNumber>;
2155
+ maxTokens: Type.TOptional<Type.TNumber>;
2156
+ samplingParams: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2157
+ samplingParamsByThinkingLevel: Type.TOptional<Type.TObject<{
2158
+ off: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2159
+ minimal: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2160
+ low: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2161
+ medium: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2162
+ high: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2163
+ xhigh: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2164
+ max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
2165
+ }>>;
2166
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
2167
+ compat: Type.TOptional<Type.TObject<Omit<{
2168
+ supportsStore: Type.TOptional<Type.TBoolean>;
2169
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
2170
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
2171
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
2172
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
2173
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
2174
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
2175
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
2176
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
2177
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
2178
+ thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"deepseek">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
2179
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
2180
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
2181
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
2182
+ }>]>>>;
2183
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
2184
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
2185
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
2186
+ }>]>>>;
2187
+ openRouterRouting: Type.TOptional<Type.TObject<{
2188
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
2189
+ require_parameters: Type.TOptional<Type.TBoolean>;
2190
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
2191
+ zdr: Type.TOptional<Type.TBoolean>;
2192
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
2193
+ order: Type.TOptional<Type.TArray<Type.TString>>;
2194
+ only: Type.TOptional<Type.TArray<Type.TString>>;
2195
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
2196
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
2197
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
2198
+ by: Type.TOptional<Type.TString>;
2199
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
2200
+ }>]>>;
2201
+ max_price: Type.TOptional<Type.TObject<{
2202
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2203
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2204
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2205
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2206
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
2207
+ }>>;
2208
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
2209
+ p50: Type.TOptional<Type.TNumber>;
2210
+ p75: Type.TOptional<Type.TNumber>;
2211
+ p90: Type.TOptional<Type.TNumber>;
2212
+ p99: Type.TOptional<Type.TNumber>;
2213
+ }>]>>;
2214
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
2215
+ p50: Type.TOptional<Type.TNumber>;
2216
+ p75: Type.TOptional<Type.TNumber>;
2217
+ p90: Type.TOptional<Type.TNumber>;
2218
+ p99: Type.TOptional<Type.TNumber>;
2219
+ }>]>>;
2220
+ }>>;
2221
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
2222
+ only: Type.TOptional<Type.TArray<Type.TString>>;
2223
+ order: Type.TOptional<Type.TArray<Type.TString>>;
2224
+ }>>;
2225
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
2226
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
2227
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
2228
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
2229
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2230
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
2231
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2232
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
2233
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
2234
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
2235
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2236
+ vllmPriority: Type.TOptional<Type.TNumber>;
2237
+ } & {
2238
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
2239
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2240
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
2241
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2242
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2243
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
2244
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
2245
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
2246
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
2247
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
2248
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
2249
+ } & {
2250
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
2251
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2252
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
2253
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
2254
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
2255
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
2256
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
2257
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
2258
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
2259
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
2260
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2261
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
2262
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
2263
+ provider: Type.TString;
2264
+ model: Type.TString;
2265
+ cost: Type.TObject<{
2266
+ input: Type.TNumber;
2267
+ output: Type.TNumber;
2268
+ cacheRead: Type.TNumber;
2269
+ cacheWrite: Type.TNumber;
2270
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
2271
+ input: Type.TNumber;
2272
+ output: Type.TNumber;
2273
+ cacheRead: Type.TNumber;
2274
+ cacheWrite: Type.TNumber;
2275
+ inputTokensAbove: Type.TNumber;
2276
+ }>>>;
2277
+ }>;
2278
+ }>>>;
2279
+ } & {
2280
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2281
+ } & {
2282
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2283
+ } & {
2284
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
2285
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
2286
+ }, "sendSessionAffinityHeaders" | "sessionAffinityFormat" | "supportsDeveloperRole" | "supportsLongCacheRetention" | "supportsMidConvoEffort" | "supportsMidConvoSystemMessages" | "supportsOpenAIGrammarTools" | "supportsStrictMode"> & {
2287
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
2288
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
2289
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
2290
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
2291
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
2292
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
2293
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
2294
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
2295
+ }>>;
2296
+ }>;
2297
+ };
1367
2298
  export type ModelsJsonModel = Static<typeof ModelDefinitionSchema>;
1368
2299
  export type ModelsJsonModelOverride = Static<typeof ModelOverrideSchema>;
1369
2300
  export type ModelsJsonProvider = Static<typeof ProviderConfigSchema>;