@bastani/atomic 0.9.29-alpha.2 → 0.9.30-alpha.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 (111) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/builtin/intercom/package.json +1 -1
  3. package/dist/builtin/mcp/package.json +1 -1
  4. package/dist/builtin/subagents/CHANGELOG.md +6 -0
  5. package/dist/builtin/subagents/package.json +1 -1
  6. package/dist/builtin/web-access/package.json +1 -1
  7. package/dist/builtin/workflows/CHANGELOG.md +6 -0
  8. package/dist/builtin/workflows/package.json +1 -1
  9. package/dist/core/anthropic-thinking-guard.js.map +1 -1
  10. package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
  11. package/dist/core/extensions/loader-virtual-modules.js +6 -0
  12. package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
  13. package/dist/core/http-dispatcher.d.ts +1 -1
  14. package/dist/core/http-dispatcher.d.ts.map +1 -1
  15. package/dist/core/http-dispatcher.js +2 -1
  16. package/dist/core/http-dispatcher.js.map +1 -1
  17. package/dist/core/key-id-schema.d.ts +6 -0
  18. package/dist/core/key-id-schema.d.ts.map +1 -0
  19. package/dist/core/key-id-schema.js +16 -0
  20. package/dist/core/key-id-schema.js.map +1 -0
  21. package/dist/core/keybindings-schema.d.ts +4 -0
  22. package/dist/core/keybindings-schema.d.ts.map +1 -0
  23. package/dist/core/keybindings-schema.js +20 -0
  24. package/dist/core/keybindings-schema.js.map +1 -0
  25. package/dist/core/keybindings.d.ts +226 -79
  26. package/dist/core/keybindings.d.ts.map +1 -1
  27. package/dist/core/keybindings.js +25 -20
  28. package/dist/core/keybindings.js.map +1 -1
  29. package/dist/core/model-config.d.ts +685 -164
  30. package/dist/core/model-config.d.ts.map +1 -1
  31. package/dist/core/model-config.js +22 -176
  32. package/dist/core/model-config.js.map +1 -1
  33. package/dist/core/project-trust.d.ts.map +1 -1
  34. package/dist/core/project-trust.js +2 -1
  35. package/dist/core/project-trust.js.map +1 -1
  36. package/dist/core/settings-defaults.d.ts +80 -0
  37. package/dist/core/settings-defaults.d.ts.map +1 -0
  38. package/dist/core/settings-defaults.js +81 -0
  39. package/dist/core/settings-defaults.js.map +1 -0
  40. package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
  41. package/dist/core/settings-manager-basic-accessors.js +34 -29
  42. package/dist/core/settings-manager-basic-accessors.js.map +1 -1
  43. package/dist/core/settings-manager-resource-accessors.d.ts.map +1 -1
  44. package/dist/core/settings-manager-resource-accessors.js +10 -9
  45. package/dist/core/settings-manager-resource-accessors.js.map +1 -1
  46. package/dist/core/settings-manager-ui-accessors.d.ts.map +1 -1
  47. package/dist/core/settings-manager-ui-accessors.js +26 -18
  48. package/dist/core/settings-manager-ui-accessors.js.map +1 -1
  49. package/dist/core/settings-schema.d.ts +292 -0
  50. package/dist/core/settings-schema.d.ts.map +1 -0
  51. package/dist/core/settings-schema.js +403 -0
  52. package/dist/core/settings-schema.js.map +1 -0
  53. package/dist/core/settings-types.d.ts +2 -181
  54. package/dist/core/settings-types.d.ts.map +1 -1
  55. package/dist/core/settings-types.js.map +1 -1
  56. package/dist/extensions/codemode/index.d.ts.map +1 -1
  57. package/dist/extensions/codemode/index.js +2 -1
  58. package/dist/extensions/codemode/index.js.map +1 -1
  59. package/dist/extensions/codemode/tool.d.ts +1 -1
  60. package/dist/extensions/codemode/tool.d.ts.map +1 -1
  61. package/dist/extensions/codemode/tool.js +2 -1
  62. package/dist/extensions/codemode/tool.js.map +1 -1
  63. package/dist/extensions/herdr/index.d.ts.map +1 -1
  64. package/dist/extensions/herdr/index.js +4 -1
  65. package/dist/extensions/herdr/index.js.map +1 -1
  66. package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
  67. package/dist/modes/interactive/components/settings-selector-items.js +2 -4
  68. package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
  69. package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
  70. package/dist/modes/interactive/components/settings-selector-submenus.js +2 -1
  71. package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
  72. package/dist/modes/interactive/theme/catppuccin-frappe.json +1 -1
  73. package/dist/modes/interactive/theme/catppuccin-latte.json +1 -1
  74. package/dist/modes/interactive/theme/catppuccin-macchiato.json +1 -1
  75. package/dist/modes/interactive/theme/catppuccin-mocha.json +1 -1
  76. package/dist/modes/interactive/theme/dark.json +1 -1
  77. package/dist/modes/interactive/theme/light.json +1 -1
  78. package/dist/modes/interactive/theme/theme-class.d.ts +3 -12
  79. package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
  80. package/dist/modes/interactive/theme/theme-class.js +2 -9
  81. package/dist/modes/interactive/theme/theme-class.js.map +1 -1
  82. package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
  83. package/dist/modes/interactive/theme/theme-loading.js +3 -21
  84. package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
  85. package/dist/modes/interactive/theme/theme-parse.d.ts.map +1 -1
  86. package/dist/modes/interactive/theme/theme-parse.js +3 -0
  87. package/dist/modes/interactive/theme/theme-parse.js.map +1 -1
  88. package/dist/modes/interactive/theme/theme-schema.d.ts +5 -224
  89. package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -1
  90. package/dist/modes/interactive/theme/theme-schema.js +47 -72
  91. package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
  92. package/dist/modes/interactive/theme/theme-tokens.d.ts +262 -0
  93. package/dist/modes/interactive/theme/theme-tokens.d.ts.map +1 -0
  94. package/dist/modes/interactive/theme/theme-tokens.js +126 -0
  95. package/dist/modes/interactive/theme/theme-tokens.js.map +1 -0
  96. package/docs/compaction/reference.md +1 -1
  97. package/docs/compaction.md +2 -2
  98. package/docs/keybindings.md +2 -0
  99. package/docs/models.md +2 -0
  100. package/docs/providers.md +1 -1
  101. package/docs/settings.md +2 -0
  102. package/docs/themes/reference.md +2 -2
  103. package/docs/themes.md +3 -1
  104. package/examples/extensions/dynamic-resources/dynamic.json +1 -1
  105. package/npm-shrinkwrap.json +32 -32
  106. package/package.json +5 -3
  107. package/schemas/keybindings.schema.json +413 -0
  108. package/schemas/models.schema.json +1178 -0
  109. package/schemas/settings.schema.json +940 -0
  110. package/schemas/theme.schema.json +369 -0
  111. package/dist/modes/interactive/theme/theme-schema.json +0 -361
@@ -1,5 +1,110 @@
1
1
  /** Immutable, credential-blind models.json snapshot. */
2
2
  import { type Static, Type } from "typebox";
3
+ /** Everything pi-ai defines for compatibility, plus Atomic's alias for the grammar-tool capability. */
4
+ export declare const ModelsJsonCompatSchema: Type.TObject<{
5
+ supportsStore: Type.TOptional<Type.TBoolean>;
6
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
7
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
8
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
9
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
10
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
11
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
12
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
13
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
14
+ 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">]>>;
15
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
16
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
17
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
18
+ }>]>>>;
19
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
20
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
21
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
22
+ }>]>>>;
23
+ openRouterRouting: Type.TOptional<Type.TObject<{
24
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
25
+ require_parameters: Type.TOptional<Type.TBoolean>;
26
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
27
+ zdr: Type.TOptional<Type.TBoolean>;
28
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
29
+ order: Type.TOptional<Type.TArray<Type.TString>>;
30
+ only: Type.TOptional<Type.TArray<Type.TString>>;
31
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
32
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
33
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
34
+ by: Type.TOptional<Type.TString>;
35
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
36
+ }>]>>;
37
+ max_price: Type.TOptional<Type.TObject<{
38
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
39
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
40
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
41
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
42
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
43
+ }>>;
44
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
45
+ p50: Type.TOptional<Type.TNumber>;
46
+ p75: Type.TOptional<Type.TNumber>;
47
+ p90: Type.TOptional<Type.TNumber>;
48
+ p99: Type.TOptional<Type.TNumber>;
49
+ }>]>>;
50
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
51
+ p50: Type.TOptional<Type.TNumber>;
52
+ p75: Type.TOptional<Type.TNumber>;
53
+ p90: Type.TOptional<Type.TNumber>;
54
+ p99: Type.TOptional<Type.TNumber>;
55
+ }>]>>;
56
+ }>>;
57
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
58
+ only: Type.TOptional<Type.TArray<Type.TString>>;
59
+ order: Type.TOptional<Type.TArray<Type.TString>>;
60
+ }>>;
61
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
62
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
63
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
64
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
65
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
66
+ vllmPriority: Type.TOptional<Type.TNumber>;
67
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
68
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
69
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
70
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
71
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
72
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
73
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
74
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
75
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
76
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
77
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
78
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
79
+ provider: Type.TString;
80
+ model: Type.TString;
81
+ cost: Type.TObject<{
82
+ input: Type.TNumber;
83
+ output: Type.TNumber;
84
+ cacheRead: Type.TNumber;
85
+ cacheWrite: Type.TNumber;
86
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
87
+ input: Type.TNumber;
88
+ output: Type.TNumber;
89
+ cacheRead: Type.TNumber;
90
+ cacheWrite: Type.TNumber;
91
+ inputTokensAbove: Type.TNumber;
92
+ }>>>;
93
+ }>;
94
+ }>>>;
95
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
96
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
97
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
98
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
99
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
100
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
101
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
102
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
103
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
104
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
105
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
106
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
107
+ }>;
3
108
  declare const ModelDefinitionSchema: Type.TObject<{
4
109
  id: Type.TString;
5
110
  name: Type.TOptional<Type.TString>;
@@ -7,15 +112,15 @@ declare const ModelDefinitionSchema: Type.TObject<{
7
112
  baseUrl: Type.TOptional<Type.TString>;
8
113
  reasoning: Type.TOptional<Type.TBoolean>;
9
114
  thinkingLevelMap: Type.TOptional<Type.TObject<{
10
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
11
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
115
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
12
116
  low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
117
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
13
118
  medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
14
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
119
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
120
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
15
121
  xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
16
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
17
122
  }>>;
18
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">, Type.TLiteral<"pdf">]>>>;
123
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image", "pdf"]>>>;
19
124
  inputLimits: Type.TOptional<Type.TObject<{
20
125
  maxRequestBytes: Type.TOptional<Type.TInteger>;
21
126
  images: Type.TOptional<Type.TObject<{
@@ -43,8 +148,8 @@ declare const ModelDefinitionSchema: Type.TObject<{
43
148
  }>>>;
44
149
  }>>;
45
150
  promptCache: Type.TOptional<Type.TObject<{
46
- short: Type.TOptional<Type.TNumber>;
47
151
  long: Type.TOptional<Type.TNumber>;
152
+ short: Type.TOptional<Type.TNumber>;
48
153
  }>>;
49
154
  contextWindow: Type.TOptional<Type.TNumber>;
50
155
  maxTokens: Type.TOptional<Type.TNumber>;
@@ -59,9 +164,8 @@ declare const ModelDefinitionSchema: Type.TObject<{
59
164
  max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
60
165
  }>>;
61
166
  headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
62
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
167
+ compat: Type.TOptional<Type.TObject<{
63
168
  supportsStore: Type.TOptional<Type.TBoolean>;
64
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
65
169
  supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
66
170
  supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
67
171
  supportsFinishReason: Type.TOptional<Type.TBoolean>;
@@ -70,16 +174,15 @@ declare const ModelDefinitionSchema: Type.TObject<{
70
174
  requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
71
175
  requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
72
176
  requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
73
- thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, 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">]>>;
74
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
75
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
177
+ 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">]>>;
178
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
179
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
76
180
  omitWhenOff: Type.TOptional<Type.TBoolean>;
77
181
  }>]>>>;
78
- chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
79
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
182
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
183
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
80
184
  omitWhenOff: Type.TOptional<Type.TBoolean>;
81
185
  }>]>>>;
82
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
83
186
  openRouterRouting: Type.TOptional<Type.TObject<{
84
187
  allow_fallbacks: Type.TOptional<Type.TBoolean>;
85
188
  require_parameters: Type.TOptional<Type.TBoolean>;
@@ -118,38 +221,23 @@ declare const ModelDefinitionSchema: Type.TObject<{
118
221
  only: Type.TOptional<Type.TArray<Type.TString>>;
119
222
  order: Type.TOptional<Type.TArray<Type.TString>>;
120
223
  }>>;
121
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
122
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
123
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
224
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
225
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
226
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
124
227
  supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
125
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
126
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
127
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
228
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
128
229
  vllmPriority: Type.TOptional<Type.TNumber>;
129
- supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
130
- }>, Type.TObject<{
131
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
132
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
133
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
134
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
135
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
136
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
137
230
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
138
231
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
232
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
139
233
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
140
- }>, Type.TObject<{
141
234
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
142
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
143
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
144
235
  supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
145
- supportsTemperature: Type.TOptional<Type.TBoolean>;
146
236
  forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
147
237
  allowEmptySignature: Type.TOptional<Type.TBoolean>;
148
238
  supportsStrictTools: Type.TOptional<Type.TBoolean>;
149
239
  supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
150
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
151
240
  supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
152
- enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
153
241
  allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
154
242
  provider: Type.TString;
155
243
  model: Type.TString;
@@ -167,21 +255,33 @@ declare const ModelDefinitionSchema: Type.TObject<{
167
255
  }>>>;
168
256
  }>;
169
257
  }>>>;
170
- }>]>>;
258
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
259
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
260
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
261
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
262
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
263
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
264
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
265
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
266
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
267
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
268
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
269
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
270
+ }>>;
171
271
  }>;
172
272
  declare const ModelOverrideSchema: Type.TObject<{
173
273
  name: Type.TOptional<Type.TString>;
174
274
  reasoning: Type.TOptional<Type.TBoolean>;
175
275
  thinkingLevelMap: Type.TOptional<Type.TObject<{
176
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
177
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
276
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
178
277
  low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
278
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
179
279
  medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
180
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
280
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
281
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
181
282
  xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
182
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
183
283
  }>>;
184
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">, Type.TLiteral<"pdf">]>>>;
284
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image", "pdf"]>>>;
185
285
  inputLimits: Type.TOptional<Type.TObject<{
186
286
  maxRequestBytes: Type.TOptional<Type.TInteger>;
187
287
  images: Type.TOptional<Type.TObject<{
@@ -209,8 +309,8 @@ declare const ModelOverrideSchema: Type.TObject<{
209
309
  }>>>;
210
310
  }>>;
211
311
  promptCache: Type.TOptional<Type.TObject<{
212
- short: Type.TOptional<Type.TNumber>;
213
312
  long: Type.TOptional<Type.TNumber>;
313
+ short: Type.TOptional<Type.TNumber>;
214
314
  }>>;
215
315
  contextWindow: Type.TOptional<Type.TNumber>;
216
316
  maxTokens: Type.TOptional<Type.TNumber>;
@@ -225,9 +325,8 @@ declare const ModelOverrideSchema: Type.TObject<{
225
325
  max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
226
326
  }>>;
227
327
  headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
228
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
328
+ compat: Type.TOptional<Type.TObject<{
229
329
  supportsStore: Type.TOptional<Type.TBoolean>;
230
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
231
330
  supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
232
331
  supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
233
332
  supportsFinishReason: Type.TOptional<Type.TBoolean>;
@@ -236,16 +335,15 @@ declare const ModelOverrideSchema: Type.TObject<{
236
335
  requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
237
336
  requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
238
337
  requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
239
- thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, Type.TLiteral<"deepseek">, Type.TLiteral<"zai">, Type.TLiteral<"qwen">, Type.TLiteral<"chat-template">, Type.TLiteral<"qwen-chat-template">, Type.TLiteral<"string-thinking">, Type.TLiteral<"ant-ling">]>>;
240
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
241
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
338
+ 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">]>>;
339
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
340
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
242
341
  omitWhenOff: Type.TOptional<Type.TBoolean>;
243
342
  }>]>>>;
244
- chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
245
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
343
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
344
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
246
345
  omitWhenOff: Type.TOptional<Type.TBoolean>;
247
346
  }>]>>>;
248
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
249
347
  openRouterRouting: Type.TOptional<Type.TObject<{
250
348
  allow_fallbacks: Type.TOptional<Type.TBoolean>;
251
349
  require_parameters: Type.TOptional<Type.TBoolean>;
@@ -284,38 +382,23 @@ declare const ModelOverrideSchema: Type.TObject<{
284
382
  only: Type.TOptional<Type.TArray<Type.TString>>;
285
383
  order: Type.TOptional<Type.TArray<Type.TString>>;
286
384
  }>>;
287
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
288
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
289
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
385
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
386
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
387
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
290
388
  supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
291
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
292
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
293
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
389
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
294
390
  vllmPriority: Type.TOptional<Type.TNumber>;
295
- supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
296
- }>, Type.TObject<{
297
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
298
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
299
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
300
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
301
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
302
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
303
391
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
304
392
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
393
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
305
394
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
306
- }>, Type.TObject<{
307
395
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
308
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
309
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
310
396
  supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
311
- supportsTemperature: Type.TOptional<Type.TBoolean>;
312
397
  forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
313
398
  allowEmptySignature: Type.TOptional<Type.TBoolean>;
314
399
  supportsStrictTools: Type.TOptional<Type.TBoolean>;
315
400
  supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
316
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
317
401
  supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
318
- enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
319
402
  allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
320
403
  provider: Type.TString;
321
404
  model: Type.TString;
@@ -333,7 +416,19 @@ declare const ModelOverrideSchema: Type.TObject<{
333
416
  }>>>;
334
417
  }>;
335
418
  }>>>;
336
- }>]>>;
419
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
420
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
421
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
422
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
423
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
424
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
425
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
426
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
427
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
428
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
429
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
430
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
431
+ }>>;
337
432
  }>;
338
433
  declare const ProviderConfigSchema: Type.TObject<{
339
434
  name: Type.TOptional<Type.TString>;
@@ -342,9 +437,8 @@ declare const ProviderConfigSchema: Type.TObject<{
342
437
  api: Type.TOptional<Type.TString>;
343
438
  oauth: Type.TOptional<Type.TLiteral<"radius">>;
344
439
  headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
345
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
440
+ compat: Type.TOptional<Type.TObject<{
346
441
  supportsStore: Type.TOptional<Type.TBoolean>;
347
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
348
442
  supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
349
443
  supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
350
444
  supportsFinishReason: Type.TOptional<Type.TBoolean>;
@@ -353,16 +447,15 @@ declare const ProviderConfigSchema: Type.TObject<{
353
447
  requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
354
448
  requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
355
449
  requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
356
- thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, 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">]>>;
357
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
358
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
450
+ 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">]>>;
451
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
452
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
359
453
  omitWhenOff: Type.TOptional<Type.TBoolean>;
360
454
  }>]>>>;
361
- chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
362
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
455
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
456
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
363
457
  omitWhenOff: Type.TOptional<Type.TBoolean>;
364
458
  }>]>>>;
365
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
366
459
  openRouterRouting: Type.TOptional<Type.TObject<{
367
460
  allow_fallbacks: Type.TOptional<Type.TBoolean>;
368
461
  require_parameters: Type.TOptional<Type.TBoolean>;
@@ -401,38 +494,23 @@ declare const ProviderConfigSchema: Type.TObject<{
401
494
  only: Type.TOptional<Type.TArray<Type.TString>>;
402
495
  order: Type.TOptional<Type.TArray<Type.TString>>;
403
496
  }>>;
404
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
405
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
406
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
497
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
498
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
499
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
407
500
  supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
408
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
409
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
410
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
501
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
411
502
  vllmPriority: Type.TOptional<Type.TNumber>;
412
- supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
413
- }>, Type.TObject<{
414
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
415
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
416
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
417
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
418
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
419
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
420
503
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
421
504
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
505
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
422
506
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
423
- }>, Type.TObject<{
424
507
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
425
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
426
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
427
508
  supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
428
- supportsTemperature: Type.TOptional<Type.TBoolean>;
429
509
  forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
430
510
  allowEmptySignature: Type.TOptional<Type.TBoolean>;
431
511
  supportsStrictTools: Type.TOptional<Type.TBoolean>;
432
512
  supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
433
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
434
513
  supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
435
- enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
436
514
  allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
437
515
  provider: Type.TString;
438
516
  model: Type.TString;
@@ -450,7 +528,19 @@ declare const ProviderConfigSchema: Type.TObject<{
450
528
  }>>>;
451
529
  }>;
452
530
  }>>>;
453
- }>]>>;
531
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
532
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
533
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
534
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
535
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
536
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
537
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
538
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
539
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
540
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
541
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
542
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
543
+ }>>;
454
544
  authHeader: Type.TOptional<Type.TBoolean>;
455
545
  models: Type.TOptional<Type.TArray<Type.TObject<{
456
546
  id: Type.TString;
@@ -459,15 +549,15 @@ declare const ProviderConfigSchema: Type.TObject<{
459
549
  baseUrl: Type.TOptional<Type.TString>;
460
550
  reasoning: Type.TOptional<Type.TBoolean>;
461
551
  thinkingLevelMap: Type.TOptional<Type.TObject<{
462
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
463
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
552
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
464
553
  low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
554
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
465
555
  medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
466
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
556
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
557
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
467
558
  xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
468
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
469
559
  }>>;
470
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">, Type.TLiteral<"pdf">]>>>;
560
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image", "pdf"]>>>;
471
561
  inputLimits: Type.TOptional<Type.TObject<{
472
562
  maxRequestBytes: Type.TOptional<Type.TInteger>;
473
563
  images: Type.TOptional<Type.TObject<{
@@ -495,8 +585,8 @@ declare const ProviderConfigSchema: Type.TObject<{
495
585
  }>>>;
496
586
  }>>;
497
587
  promptCache: Type.TOptional<Type.TObject<{
498
- short: Type.TOptional<Type.TNumber>;
499
588
  long: Type.TOptional<Type.TNumber>;
589
+ short: Type.TOptional<Type.TNumber>;
500
590
  }>>;
501
591
  contextWindow: Type.TOptional<Type.TNumber>;
502
592
  maxTokens: Type.TOptional<Type.TNumber>;
@@ -511,9 +601,8 @@ declare const ProviderConfigSchema: Type.TObject<{
511
601
  max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
512
602
  }>>;
513
603
  headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
514
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
604
+ compat: Type.TOptional<Type.TObject<{
515
605
  supportsStore: Type.TOptional<Type.TBoolean>;
516
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
517
606
  supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
518
607
  supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
519
608
  supportsFinishReason: Type.TOptional<Type.TBoolean>;
@@ -522,16 +611,15 @@ declare const ProviderConfigSchema: Type.TObject<{
522
611
  requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
523
612
  requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
524
613
  requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
525
- thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, 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">]>>;
526
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
527
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
614
+ 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">]>>;
615
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
616
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
528
617
  omitWhenOff: Type.TOptional<Type.TBoolean>;
529
618
  }>]>>>;
530
- chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
531
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
619
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
620
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
532
621
  omitWhenOff: Type.TOptional<Type.TBoolean>;
533
622
  }>]>>>;
534
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
535
623
  openRouterRouting: Type.TOptional<Type.TObject<{
536
624
  allow_fallbacks: Type.TOptional<Type.TBoolean>;
537
625
  require_parameters: Type.TOptional<Type.TBoolean>;
@@ -570,38 +658,23 @@ declare const ProviderConfigSchema: Type.TObject<{
570
658
  only: Type.TOptional<Type.TArray<Type.TString>>;
571
659
  order: Type.TOptional<Type.TArray<Type.TString>>;
572
660
  }>>;
573
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
574
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
575
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
661
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
662
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
663
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
576
664
  supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
577
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
578
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
579
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
665
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
580
666
  vllmPriority: Type.TOptional<Type.TNumber>;
581
- supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
582
- }>, Type.TObject<{
583
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
584
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
585
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
586
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
587
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
588
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
589
667
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
590
668
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
669
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
591
670
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
592
- }>, Type.TObject<{
593
671
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
594
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
595
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
596
672
  supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
597
- supportsTemperature: Type.TOptional<Type.TBoolean>;
598
673
  forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
599
674
  allowEmptySignature: Type.TOptional<Type.TBoolean>;
600
675
  supportsStrictTools: Type.TOptional<Type.TBoolean>;
601
676
  supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
602
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
603
677
  supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
604
- enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
605
678
  allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
606
679
  provider: Type.TString;
607
680
  model: Type.TString;
@@ -619,21 +692,33 @@ declare const ProviderConfigSchema: Type.TObject<{
619
692
  }>>>;
620
693
  }>;
621
694
  }>>>;
622
- }>]>>;
695
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
696
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
697
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
698
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
699
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
700
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
701
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
702
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
703
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
704
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
705
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
706
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
707
+ }>>;
623
708
  }>>>;
624
709
  modelOverrides: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
625
710
  name: Type.TOptional<Type.TString>;
626
711
  reasoning: Type.TOptional<Type.TBoolean>;
627
712
  thinkingLevelMap: Type.TOptional<Type.TObject<{
628
- off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
629
- minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
713
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
630
714
  low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
715
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
631
716
  medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
632
- high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
717
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
718
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
633
719
  xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
634
- max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
635
720
  }>>;
636
- input: Type.TOptional<Type.TArray<Type.TUnion<[Type.TLiteral<"text">, Type.TLiteral<"image">, Type.TLiteral<"pdf">]>>>;
721
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image", "pdf"]>>>;
637
722
  inputLimits: Type.TOptional<Type.TObject<{
638
723
  maxRequestBytes: Type.TOptional<Type.TInteger>;
639
724
  images: Type.TOptional<Type.TObject<{
@@ -661,8 +746,8 @@ declare const ProviderConfigSchema: Type.TObject<{
661
746
  }>>>;
662
747
  }>>;
663
748
  promptCache: Type.TOptional<Type.TObject<{
664
- short: Type.TOptional<Type.TNumber>;
665
749
  long: Type.TOptional<Type.TNumber>;
750
+ short: Type.TOptional<Type.TNumber>;
666
751
  }>>;
667
752
  contextWindow: Type.TOptional<Type.TNumber>;
668
753
  maxTokens: Type.TOptional<Type.TNumber>;
@@ -677,9 +762,8 @@ declare const ProviderConfigSchema: Type.TObject<{
677
762
  max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
678
763
  }>>;
679
764
  headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
680
- compat: Type.TOptional<Type.TUnion<[Type.TObject<{
765
+ compat: Type.TOptional<Type.TObject<{
681
766
  supportsStore: Type.TOptional<Type.TBoolean>;
682
- supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
683
767
  supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
684
768
  supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
685
769
  supportsFinishReason: Type.TOptional<Type.TBoolean>;
@@ -688,16 +772,15 @@ declare const ProviderConfigSchema: Type.TObject<{
688
772
  requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
689
773
  requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
690
774
  requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
691
- thinkingFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openrouter">, Type.TLiteral<"together">, Type.TLiteral<"baseten">, 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">]>>;
692
- chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
693
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
775
+ 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">]>>;
776
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
777
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
694
778
  omitWhenOff: Type.TOptional<Type.TBoolean>;
695
779
  }>]>>>;
696
- chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull]>, Type.TObject<{
697
- $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">]>;
780
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
781
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
698
782
  omitWhenOff: Type.TOptional<Type.TBoolean>;
699
783
  }>]>>>;
700
- cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
701
784
  openRouterRouting: Type.TOptional<Type.TObject<{
702
785
  allow_fallbacks: Type.TOptional<Type.TBoolean>;
703
786
  require_parameters: Type.TOptional<Type.TBoolean>;
@@ -736,38 +819,138 @@ declare const ProviderConfigSchema: Type.TObject<{
736
819
  only: Type.TOptional<Type.TArray<Type.TString>>;
737
820
  order: Type.TOptional<Type.TArray<Type.TString>>;
738
821
  }>>;
739
- supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
740
- supportsStrictMode: Type.TOptional<Type.TBoolean>;
741
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
822
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
823
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
824
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
742
825
  supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
743
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
744
- sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
745
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
826
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
746
827
  vllmPriority: Type.TOptional<Type.TNumber>;
747
- supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
748
- }>, Type.TObject<{
828
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
829
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
830
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
831
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
832
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
833
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
834
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
835
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
836
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
837
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
838
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
839
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
840
+ provider: Type.TString;
841
+ model: Type.TString;
842
+ cost: Type.TObject<{
843
+ input: Type.TNumber;
844
+ output: Type.TNumber;
845
+ cacheRead: Type.TNumber;
846
+ cacheWrite: Type.TNumber;
847
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
848
+ input: Type.TNumber;
849
+ output: Type.TNumber;
850
+ cacheRead: Type.TNumber;
851
+ cacheWrite: Type.TNumber;
852
+ inputTokensAbove: Type.TNumber;
853
+ }>>>;
854
+ }>;
855
+ }>>>;
856
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
857
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
749
858
  supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
750
859
  supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
751
860
  sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
752
861
  supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
753
862
  supportsStrictMode: Type.TOptional<Type.TBoolean>;
754
863
  supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
864
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
865
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
866
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
867
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
868
+ }>>;
869
+ }>>>;
870
+ }>;
871
+ export declare const ModelsConfigSchema: Type.TObject<{
872
+ $schema: Type.TOptional<Type.TString>;
873
+ providers: Type.TRecord<"^.*$", Type.TObject<{
874
+ name: Type.TOptional<Type.TString>;
875
+ baseUrl: Type.TOptional<Type.TString>;
876
+ apiKey: Type.TOptional<Type.TString>;
877
+ api: Type.TOptional<Type.TString>;
878
+ oauth: Type.TOptional<Type.TLiteral<"radius">>;
879
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
880
+ compat: Type.TOptional<Type.TObject<{
881
+ supportsStore: Type.TOptional<Type.TBoolean>;
882
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
883
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
884
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
885
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
886
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
887
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
888
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
889
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
890
+ 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">]>>;
891
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
892
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
893
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
894
+ }>]>>>;
895
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
896
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
897
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
898
+ }>]>>>;
899
+ openRouterRouting: Type.TOptional<Type.TObject<{
900
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
901
+ require_parameters: Type.TOptional<Type.TBoolean>;
902
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
903
+ zdr: Type.TOptional<Type.TBoolean>;
904
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
905
+ order: Type.TOptional<Type.TArray<Type.TString>>;
906
+ only: Type.TOptional<Type.TArray<Type.TString>>;
907
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
908
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
909
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
910
+ by: Type.TOptional<Type.TString>;
911
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
912
+ }>]>>;
913
+ max_price: Type.TOptional<Type.TObject<{
914
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
915
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
916
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
917
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
918
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
919
+ }>>;
920
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
921
+ p50: Type.TOptional<Type.TNumber>;
922
+ p75: Type.TOptional<Type.TNumber>;
923
+ p90: Type.TOptional<Type.TNumber>;
924
+ p99: Type.TOptional<Type.TNumber>;
925
+ }>]>>;
926
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
927
+ p50: Type.TOptional<Type.TNumber>;
928
+ p75: Type.TOptional<Type.TNumber>;
929
+ p90: Type.TOptional<Type.TNumber>;
930
+ p99: Type.TOptional<Type.TNumber>;
931
+ }>]>>;
932
+ }>>;
933
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
934
+ only: Type.TOptional<Type.TArray<Type.TString>>;
935
+ order: Type.TOptional<Type.TArray<Type.TString>>;
936
+ }>>;
937
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
938
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
939
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
940
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
941
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
942
+ vllmPriority: Type.TOptional<Type.TNumber>;
755
943
  supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
756
944
  supportsToolSearch: Type.TOptional<Type.TBoolean>;
945
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
757
946
  supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
758
- }>, Type.TObject<{
759
947
  supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
760
- supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
761
- sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
762
948
  supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
763
- supportsTemperature: Type.TOptional<Type.TBoolean>;
764
949
  forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
765
950
  allowEmptySignature: Type.TOptional<Type.TBoolean>;
766
951
  supportsStrictTools: Type.TOptional<Type.TBoolean>;
767
952
  supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
768
- supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
769
953
  supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
770
- enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
771
954
  allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
772
955
  provider: Type.TString;
773
956
  model: Type.TString;
@@ -785,8 +968,346 @@ declare const ProviderConfigSchema: Type.TObject<{
785
968
  }>>>;
786
969
  }>;
787
970
  }>>>;
788
- }>]>>;
789
- }>>>;
971
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
972
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
973
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
974
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
975
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
976
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
977
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
978
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
979
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
980
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
981
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
982
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
983
+ }>>;
984
+ authHeader: Type.TOptional<Type.TBoolean>;
985
+ models: Type.TOptional<Type.TArray<Type.TObject<{
986
+ id: Type.TString;
987
+ name: Type.TOptional<Type.TString>;
988
+ api: Type.TOptional<Type.TString>;
989
+ baseUrl: Type.TOptional<Type.TString>;
990
+ reasoning: Type.TOptional<Type.TBoolean>;
991
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
992
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
993
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
994
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
995
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
996
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
997
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
998
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
999
+ }>>;
1000
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image", "pdf"]>>>;
1001
+ inputLimits: Type.TOptional<Type.TObject<{
1002
+ maxRequestBytes: Type.TOptional<Type.TInteger>;
1003
+ images: Type.TOptional<Type.TObject<{
1004
+ resize: Type.TOptional<Type.TObject<{
1005
+ maxWidth: Type.TOptional<Type.TInteger>;
1006
+ maxHeight: Type.TOptional<Type.TInteger>;
1007
+ maxBytes: Type.TOptional<Type.TInteger>;
1008
+ jpegQuality: Type.TOptional<Type.TInteger>;
1009
+ }>>;
1010
+ maxPerMessage: Type.TOptional<Type.TInteger>;
1011
+ maxPerRequest: Type.TOptional<Type.TInteger>;
1012
+ }>>;
1013
+ }>>;
1014
+ cost: Type.TOptional<Type.TObject<{
1015
+ input: Type.TNumber;
1016
+ output: Type.TNumber;
1017
+ cacheRead: Type.TNumber;
1018
+ cacheWrite: Type.TNumber;
1019
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1020
+ input: Type.TNumber;
1021
+ output: Type.TNumber;
1022
+ cacheRead: Type.TNumber;
1023
+ cacheWrite: Type.TNumber;
1024
+ inputTokensAbove: Type.TNumber;
1025
+ }>>>;
1026
+ }>>;
1027
+ promptCache: Type.TOptional<Type.TObject<{
1028
+ long: Type.TOptional<Type.TNumber>;
1029
+ short: Type.TOptional<Type.TNumber>;
1030
+ }>>;
1031
+ contextWindow: Type.TOptional<Type.TNumber>;
1032
+ maxTokens: Type.TOptional<Type.TNumber>;
1033
+ samplingParams: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1034
+ samplingParamsByThinkingLevel: Type.TOptional<Type.TObject<{
1035
+ off: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1036
+ minimal: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1037
+ low: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1038
+ medium: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1039
+ high: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1040
+ xhigh: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1041
+ max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1042
+ }>>;
1043
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
1044
+ compat: Type.TOptional<Type.TObject<{
1045
+ supportsStore: Type.TOptional<Type.TBoolean>;
1046
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
1047
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
1048
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
1049
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
1050
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
1051
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
1052
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
1053
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
1054
+ 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">]>>;
1055
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1056
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1057
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1058
+ }>]>>>;
1059
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1060
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1061
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1062
+ }>]>>>;
1063
+ openRouterRouting: Type.TOptional<Type.TObject<{
1064
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
1065
+ require_parameters: Type.TOptional<Type.TBoolean>;
1066
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
1067
+ zdr: Type.TOptional<Type.TBoolean>;
1068
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
1069
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1070
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1071
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
1072
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
1073
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
1074
+ by: Type.TOptional<Type.TString>;
1075
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1076
+ }>]>>;
1077
+ max_price: Type.TOptional<Type.TObject<{
1078
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1079
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1080
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1081
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1082
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1083
+ }>>;
1084
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1085
+ p50: Type.TOptional<Type.TNumber>;
1086
+ p75: Type.TOptional<Type.TNumber>;
1087
+ p90: Type.TOptional<Type.TNumber>;
1088
+ p99: Type.TOptional<Type.TNumber>;
1089
+ }>]>>;
1090
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1091
+ p50: Type.TOptional<Type.TNumber>;
1092
+ p75: Type.TOptional<Type.TNumber>;
1093
+ p90: Type.TOptional<Type.TNumber>;
1094
+ p99: Type.TOptional<Type.TNumber>;
1095
+ }>]>>;
1096
+ }>>;
1097
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
1098
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1099
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1100
+ }>>;
1101
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
1102
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
1103
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
1104
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
1105
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
1106
+ vllmPriority: Type.TOptional<Type.TNumber>;
1107
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1108
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
1109
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1110
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1111
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
1112
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
1113
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
1114
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
1115
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
1116
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1117
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
1118
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
1119
+ provider: Type.TString;
1120
+ model: Type.TString;
1121
+ cost: Type.TObject<{
1122
+ input: Type.TNumber;
1123
+ output: Type.TNumber;
1124
+ cacheRead: Type.TNumber;
1125
+ cacheWrite: Type.TNumber;
1126
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1127
+ input: Type.TNumber;
1128
+ output: Type.TNumber;
1129
+ cacheRead: Type.TNumber;
1130
+ cacheWrite: Type.TNumber;
1131
+ inputTokensAbove: Type.TNumber;
1132
+ }>>>;
1133
+ }>;
1134
+ }>>>;
1135
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
1136
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
1137
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1138
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1139
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1140
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1141
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1142
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1143
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1144
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
1145
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
1146
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
1147
+ }>>;
1148
+ }>>>;
1149
+ modelOverrides: Type.TOptional<Type.TRecord<"^.*$", Type.TObject<{
1150
+ name: Type.TOptional<Type.TString>;
1151
+ reasoning: Type.TOptional<Type.TBoolean>;
1152
+ thinkingLevelMap: Type.TOptional<Type.TObject<{
1153
+ high: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1154
+ low: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1155
+ max: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1156
+ medium: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1157
+ minimal: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1158
+ off: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1159
+ xhigh: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1160
+ }>>;
1161
+ input: Type.TOptional<Type.TArray<Type.TEnum<["text", "image", "pdf"]>>>;
1162
+ inputLimits: Type.TOptional<Type.TObject<{
1163
+ maxRequestBytes: Type.TOptional<Type.TInteger>;
1164
+ images: Type.TOptional<Type.TObject<{
1165
+ resize: Type.TOptional<Type.TObject<{
1166
+ maxWidth: Type.TOptional<Type.TInteger>;
1167
+ maxHeight: Type.TOptional<Type.TInteger>;
1168
+ maxBytes: Type.TOptional<Type.TInteger>;
1169
+ jpegQuality: Type.TOptional<Type.TInteger>;
1170
+ }>>;
1171
+ maxPerMessage: Type.TOptional<Type.TInteger>;
1172
+ maxPerRequest: Type.TOptional<Type.TInteger>;
1173
+ }>>;
1174
+ }>>;
1175
+ cost: Type.TOptional<Type.TObject<{
1176
+ input: Type.TOptional<Type.TNumber>;
1177
+ output: Type.TOptional<Type.TNumber>;
1178
+ cacheRead: Type.TOptional<Type.TNumber>;
1179
+ cacheWrite: Type.TOptional<Type.TNumber>;
1180
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1181
+ input: Type.TNumber;
1182
+ output: Type.TNumber;
1183
+ cacheRead: Type.TNumber;
1184
+ cacheWrite: Type.TNumber;
1185
+ inputTokensAbove: Type.TNumber;
1186
+ }>>>;
1187
+ }>>;
1188
+ promptCache: Type.TOptional<Type.TObject<{
1189
+ long: Type.TOptional<Type.TNumber>;
1190
+ short: Type.TOptional<Type.TNumber>;
1191
+ }>>;
1192
+ contextWindow: Type.TOptional<Type.TNumber>;
1193
+ maxTokens: Type.TOptional<Type.TNumber>;
1194
+ samplingParams: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1195
+ samplingParamsByThinkingLevel: Type.TOptional<Type.TObject<{
1196
+ off: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1197
+ minimal: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1198
+ low: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1199
+ medium: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1200
+ high: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1201
+ xhigh: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1202
+ max: Type.TOptional<Type.TRecord<"^.*$", Type.TUnknown>>;
1203
+ }>>;
1204
+ headers: Type.TOptional<Type.TRecord<"^.*$", Type.TString>>;
1205
+ compat: Type.TOptional<Type.TObject<{
1206
+ supportsStore: Type.TOptional<Type.TBoolean>;
1207
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
1208
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
1209
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
1210
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
1211
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
1212
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
1213
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
1214
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
1215
+ 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">]>>;
1216
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1217
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1218
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1219
+ }>]>>>;
1220
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
1221
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
1222
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
1223
+ }>]>>>;
1224
+ openRouterRouting: Type.TOptional<Type.TObject<{
1225
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
1226
+ require_parameters: Type.TOptional<Type.TBoolean>;
1227
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
1228
+ zdr: Type.TOptional<Type.TBoolean>;
1229
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
1230
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1231
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1232
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
1233
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
1234
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
1235
+ by: Type.TOptional<Type.TString>;
1236
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
1237
+ }>]>>;
1238
+ max_price: Type.TOptional<Type.TObject<{
1239
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1240
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1241
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1242
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1243
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
1244
+ }>>;
1245
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1246
+ p50: Type.TOptional<Type.TNumber>;
1247
+ p75: Type.TOptional<Type.TNumber>;
1248
+ p90: Type.TOptional<Type.TNumber>;
1249
+ p99: Type.TOptional<Type.TNumber>;
1250
+ }>]>>;
1251
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
1252
+ p50: Type.TOptional<Type.TNumber>;
1253
+ p75: Type.TOptional<Type.TNumber>;
1254
+ p90: Type.TOptional<Type.TNumber>;
1255
+ p99: Type.TOptional<Type.TNumber>;
1256
+ }>]>>;
1257
+ }>>;
1258
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
1259
+ only: Type.TOptional<Type.TArray<Type.TString>>;
1260
+ order: Type.TOptional<Type.TArray<Type.TString>>;
1261
+ }>>;
1262
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
1263
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
1264
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
1265
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
1266
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
1267
+ vllmPriority: Type.TOptional<Type.TNumber>;
1268
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
1269
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
1270
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
1271
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
1272
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
1273
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
1274
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
1275
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
1276
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
1277
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
1278
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
1279
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
1280
+ provider: Type.TString;
1281
+ model: Type.TString;
1282
+ cost: Type.TObject<{
1283
+ input: Type.TNumber;
1284
+ output: Type.TNumber;
1285
+ cacheRead: Type.TNumber;
1286
+ cacheWrite: Type.TNumber;
1287
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
1288
+ input: Type.TNumber;
1289
+ output: Type.TNumber;
1290
+ cacheRead: Type.TNumber;
1291
+ cacheWrite: Type.TNumber;
1292
+ inputTokensAbove: Type.TNumber;
1293
+ }>>>;
1294
+ }>;
1295
+ }>>>;
1296
+ enforcesPreservedThinkingBinding: Type.TOptional<Type.TBoolean>;
1297
+ delegatesThinkingModelBinding: Type.TOptional<Type.TBoolean>;
1298
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
1299
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
1300
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
1301
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
1302
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
1303
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
1304
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
1305
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
1306
+ supportsForcedToolChoice: Type.TOptional<Type.TBoolean>;
1307
+ supportsGrammarTools: Type.TOptional<Type.TBoolean>;
1308
+ }>>;
1309
+ }>>>;
1310
+ }>>;
790
1311
  }>;
791
1312
  export type ModelsJsonModel = Static<typeof ModelDefinitionSchema>;
792
1313
  export type ModelsJsonModelOverride = Static<typeof ModelOverrideSchema>;