@fractaal/pi-ai 0.86.8 → 1.4.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 (250) hide show
  1. package/README.md +105 -45
  2. package/dist/api/anthropic-messages.d.ts.map +1 -1
  3. package/dist/api/anthropic-messages.js +180 -141
  4. package/dist/api/anthropic-messages.js.map +1 -1
  5. package/dist/api/azure-openai-responses.d.ts.map +1 -1
  6. package/dist/api/azure-openai-responses.js +8 -10
  7. package/dist/api/azure-openai-responses.js.map +1 -1
  8. package/dist/api/bedrock-converse-stream.d.ts.map +1 -1
  9. package/dist/api/bedrock-converse-stream.js +130 -96
  10. package/dist/api/bedrock-converse-stream.js.map +1 -1
  11. package/dist/api/classifier-shared.d.ts +21 -0
  12. package/dist/api/classifier-shared.d.ts.map +1 -0
  13. package/dist/api/classifier-shared.js +99 -0
  14. package/dist/api/classifier-shared.js.map +1 -0
  15. package/dist/api/cloudflare-workers-ai-system-one.d.ts.map +1 -1
  16. package/dist/api/cloudflare-workers-ai-system-one.js +10 -1
  17. package/dist/api/cloudflare-workers-ai-system-one.js.map +1 -1
  18. package/dist/api/constrained-sampling.d.ts +11 -1
  19. package/dist/api/constrained-sampling.d.ts.map +1 -1
  20. package/dist/api/constrained-sampling.js +33 -18
  21. package/dist/api/constrained-sampling.js.map +1 -1
  22. package/dist/api/google-generative-ai.d.ts.map +1 -1
  23. package/dist/api/google-generative-ai.js +4 -10
  24. package/dist/api/google-generative-ai.js.map +1 -1
  25. package/dist/api/google-shared.d.ts +2 -1
  26. package/dist/api/google-shared.d.ts.map +1 -1
  27. package/dist/api/google-shared.js +60 -3
  28. package/dist/api/google-shared.js.map +1 -1
  29. package/dist/api/google-vertex.d.ts.map +1 -1
  30. package/dist/api/google-vertex.js +9 -15
  31. package/dist/api/google-vertex.js.map +1 -1
  32. package/dist/api/lazy.d.ts +7 -2
  33. package/dist/api/lazy.d.ts.map +1 -1
  34. package/dist/api/lazy.js +28 -8
  35. package/dist/api/lazy.js.map +1 -1
  36. package/dist/api/llama-cpp-classify.d.ts.map +1 -1
  37. package/dist/api/llama-cpp-classify.js +4 -1
  38. package/dist/api/llama-cpp-classify.js.map +1 -1
  39. package/dist/api/mistral-conversations.d.ts.map +1 -1
  40. package/dist/api/mistral-conversations.js +50 -60
  41. package/dist/api/mistral-conversations.js.map +1 -1
  42. package/dist/api/openai-codex-responses.d.ts.map +1 -1
  43. package/dist/api/openai-codex-responses.js +23 -14
  44. package/dist/api/openai-codex-responses.js.map +1 -1
  45. package/dist/api/openai-completions.d.ts.map +1 -1
  46. package/dist/api/openai-completions.js +83 -87
  47. package/dist/api/openai-completions.js.map +1 -1
  48. package/dist/api/openai-decisions.d.ts +4 -0
  49. package/dist/api/openai-decisions.d.ts.map +1 -0
  50. package/dist/api/openai-decisions.js +162 -0
  51. package/dist/api/openai-decisions.js.map +1 -0
  52. package/dist/api/openai-decisions.lazy.d.ts +3 -0
  53. package/dist/api/openai-decisions.lazy.d.ts.map +1 -0
  54. package/dist/api/openai-decisions.lazy.js +4 -0
  55. package/dist/api/openai-decisions.lazy.js.map +1 -0
  56. package/dist/api/openai-responses-shared.d.ts +26 -0
  57. package/dist/api/openai-responses-shared.d.ts.map +1 -1
  58. package/dist/api/openai-responses-shared.js +132 -66
  59. package/dist/api/openai-responses-shared.js.map +1 -1
  60. package/dist/api/openai-responses.d.ts.map +1 -1
  61. package/dist/api/openai-responses.js +38 -19
  62. package/dist/api/openai-responses.js.map +1 -1
  63. package/dist/api/openrouter-images.d.ts.map +1 -1
  64. package/dist/api/openrouter-images.js +5 -3
  65. package/dist/api/openrouter-images.js.map +1 -1
  66. package/dist/api/pi-messages.d.ts +2 -0
  67. package/dist/api/pi-messages.d.ts.map +1 -1
  68. package/dist/api/pi-messages.js +18 -12
  69. package/dist/api/pi-messages.js.map +1 -1
  70. package/dist/api/simple-options.d.ts.map +1 -1
  71. package/dist/api/simple-options.js +2 -1
  72. package/dist/api/simple-options.js.map +1 -1
  73. package/dist/api/system-one-shared.d.ts +29 -3
  74. package/dist/api/system-one-shared.d.ts.map +1 -1
  75. package/dist/api/system-one-shared.js +54 -86
  76. package/dist/api/system-one-shared.js.map +1 -1
  77. package/dist/api/transform-messages.d.ts +16 -1
  78. package/dist/api/transform-messages.d.ts.map +1 -1
  79. package/dist/api/transform-messages.js +28 -15
  80. package/dist/api/transform-messages.js.map +1 -1
  81. package/dist/api/typesafe-system-one.d.ts.map +1 -1
  82. package/dist/api/typesafe-system-one.js +12 -1
  83. package/dist/api/typesafe-system-one.js.map +1 -1
  84. package/dist/auth/oauth/anthropic.d.ts.map +1 -1
  85. package/dist/auth/oauth/anthropic.js +14 -6
  86. package/dist/auth/oauth/anthropic.js.map +1 -1
  87. package/dist/auth/oauth/openai-chatgpt.js +1 -1
  88. package/dist/auth/oauth/openai-chatgpt.js.map +1 -1
  89. package/dist/auth/oauth/openai-codex.d.ts.map +1 -1
  90. package/dist/auth/oauth/openai-codex.js +4 -4
  91. package/dist/auth/oauth/openai-codex.js.map +1 -1
  92. package/dist/auth/types.d.ts +9 -0
  93. package/dist/auth/types.d.ts.map +1 -1
  94. package/dist/auth/types.js.map +1 -1
  95. package/dist/compat/extension-oauth-types.d.ts +4 -0
  96. package/dist/compat/extension-oauth-types.d.ts.map +1 -1
  97. package/dist/compat/extension-oauth-types.js.map +1 -1
  98. package/dist/index.d.ts +3 -1
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js +3 -1
  101. package/dist/index.js.map +1 -1
  102. package/dist/models.d.ts +9 -0
  103. package/dist/models.d.ts.map +1 -1
  104. package/dist/models.js +23 -7
  105. package/dist/models.js.map +1 -1
  106. package/dist/providers/compat-schema.d.ts +509 -0
  107. package/dist/providers/compat-schema.d.ts.map +1 -0
  108. package/dist/providers/compat-schema.js +396 -0
  109. package/dist/providers/compat-schema.js.map +1 -0
  110. package/dist/providers/data/.manifest.json +1 -1
  111. package/dist/providers/data/amazon-bedrock.json +1 -1
  112. package/dist/providers/data/anthropic.json +1 -1
  113. package/dist/providers/data/azure.json +1 -1
  114. package/dist/providers/data/baseten.json +1 -1
  115. package/dist/providers/data/cerebras.json +1 -1
  116. package/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  117. package/dist/providers/data/cloudflare-workers-ai.json +1 -1
  118. package/dist/providers/data/fireworks.json +1 -1
  119. package/dist/providers/data/github-copilot.json +1 -1
  120. package/dist/providers/data/google-vertex.json +1 -1
  121. package/dist/providers/data/google.json +1 -1
  122. package/dist/providers/data/groq.json +1 -1
  123. package/dist/providers/data/huggingface.json +1 -1
  124. package/dist/providers/data/kimi-coding.json +1 -1
  125. package/dist/providers/data/meta.json +1 -1
  126. package/dist/providers/data/minimax-cn.json +1 -1
  127. package/dist/providers/data/minimax.json +1 -1
  128. package/dist/providers/data/mistral.json +1 -1
  129. package/dist/providers/data/moonshotai-cn.json +1 -1
  130. package/dist/providers/data/moonshotai.json +1 -1
  131. package/dist/providers/data/nvidia.json +1 -1
  132. package/dist/providers/data/openai-codex.json +1 -1
  133. package/dist/providers/data/openai.json +1 -1
  134. package/dist/providers/data/opencode-go.json +1 -1
  135. package/dist/providers/data/opencode.json +1 -1
  136. package/dist/providers/data/openrouter.json +1 -1
  137. package/dist/providers/data/qwen-token-plan-cn.json +1 -1
  138. package/dist/providers/data/qwen-token-plan.json +1 -1
  139. package/dist/providers/data/radius.json +1 -1
  140. package/dist/providers/data/together.json +1 -1
  141. package/dist/providers/data/typesafe.json +1 -1
  142. package/dist/providers/data/vercel-ai-gateway.json +1 -1
  143. package/dist/providers/data/xai.json +1 -1
  144. package/dist/providers/data/xiaomi-token-plan-ams.json +1 -1
  145. package/dist/providers/data/xiaomi-token-plan-cn.json +1 -1
  146. package/dist/providers/data/xiaomi-token-plan-sgp.json +1 -1
  147. package/dist/providers/data/xiaomi.json +1 -1
  148. package/dist/providers/data/zai-coding-cn.json +1 -1
  149. package/dist/providers/faux.d.ts.map +1 -1
  150. package/dist/providers/faux.js +31 -9
  151. package/dist/providers/faux.js.map +1 -1
  152. package/dist/providers/kimi-coding.d.ts +1 -1
  153. package/dist/providers/kimi-coding.js +3 -3
  154. package/dist/providers/kimi-coding.js.map +1 -1
  155. package/dist/providers/model-schema.d.ts +91 -0
  156. package/dist/providers/model-schema.d.ts.map +1 -0
  157. package/dist/providers/model-schema.js +57 -0
  158. package/dist/providers/model-schema.js.map +1 -0
  159. package/dist/providers/openai.d.ts.map +1 -1
  160. package/dist/providers/openai.js +12 -3
  161. package/dist/providers/openai.js.map +1 -1
  162. package/dist/providers/opencode-go.d.ts +3 -1
  163. package/dist/providers/opencode-go.d.ts.map +1 -1
  164. package/dist/providers/opencode-go.js +2 -0
  165. package/dist/providers/opencode-go.js.map +1 -1
  166. package/dist/providers/openrouter-api.d.ts +40 -0
  167. package/dist/providers/openrouter-api.d.ts.map +1 -0
  168. package/dist/providers/openrouter-api.js +41 -0
  169. package/dist/providers/openrouter-api.js.map +1 -0
  170. package/dist/providers/openrouter.d.ts +11 -1
  171. package/dist/providers/openrouter.d.ts.map +1 -1
  172. package/dist/providers/openrouter.js +52 -1
  173. package/dist/providers/openrouter.js.map +1 -1
  174. package/dist/providers/radius-config.d.ts.map +1 -1
  175. package/dist/providers/radius-config.js +2 -1
  176. package/dist/providers/radius-config.js.map +1 -1
  177. package/dist/providers/radius.d.ts.map +1 -1
  178. package/dist/providers/radius.js +4 -12
  179. package/dist/providers/radius.js.map +1 -1
  180. package/dist/telemetry.d.ts +288 -0
  181. package/dist/telemetry.d.ts.map +1 -0
  182. package/dist/telemetry.js +192 -0
  183. package/dist/telemetry.js.map +1 -0
  184. package/dist/types.d.ts +44 -307
  185. package/dist/types.d.ts.map +1 -1
  186. package/dist/types.js.map +1 -1
  187. package/dist/utils/error-body.d.ts.map +1 -1
  188. package/dist/utils/error-body.js +2 -1
  189. package/dist/utils/error-body.js.map +1 -1
  190. package/dist/utils/estimate.js +1 -1
  191. package/dist/utils/estimate.js.map +1 -1
  192. package/dist/utils/event-stream.d.ts +10 -1
  193. package/dist/utils/event-stream.d.ts.map +1 -1
  194. package/dist/utils/event-stream.js +25 -0
  195. package/dist/utils/event-stream.js.map +1 -1
  196. package/dist/utils/identity.d.ts +65 -0
  197. package/dist/utils/identity.d.ts.map +1 -0
  198. package/dist/utils/identity.js +141 -0
  199. package/dist/utils/identity.js.map +1 -0
  200. package/dist/utils/json-parse.d.ts +10 -0
  201. package/dist/utils/json-parse.d.ts.map +1 -1
  202. package/dist/utils/json-parse.js +26 -1
  203. package/dist/utils/json-parse.js.map +1 -1
  204. package/dist/utils/model-operations.d.ts +3 -1
  205. package/dist/utils/model-operations.d.ts.map +1 -1
  206. package/dist/utils/model-operations.js +6 -0
  207. package/dist/utils/model-operations.js.map +1 -1
  208. package/dist/utils/openrouter-cost.d.ts +24 -0
  209. package/dist/utils/openrouter-cost.d.ts.map +1 -0
  210. package/dist/utils/openrouter-cost.js +34 -0
  211. package/dist/utils/openrouter-cost.js.map +1 -0
  212. package/dist/utils/overflow.d.ts +1 -0
  213. package/dist/utils/overflow.d.ts.map +1 -1
  214. package/dist/utils/overflow.js +6 -1
  215. package/dist/utils/overflow.js.map +1 -1
  216. package/dist/utils/provider-retry.d.ts +2 -0
  217. package/dist/utils/provider-retry.d.ts.map +1 -1
  218. package/dist/utils/provider-retry.js +2 -0
  219. package/dist/utils/provider-retry.js.map +1 -1
  220. package/dist/utils/retry.d.ts.map +1 -1
  221. package/dist/utils/retry.js +26 -10
  222. package/dist/utils/retry.js.map +1 -1
  223. package/dist/utils/streaming-json.d.ts +84 -0
  224. package/dist/utils/streaming-json.d.ts.map +1 -0
  225. package/dist/utils/streaming-json.js +513 -0
  226. package/dist/utils/streaming-json.js.map +1 -0
  227. package/dist/utils/text.d.ts +7 -0
  228. package/dist/utils/text.d.ts.map +1 -1
  229. package/dist/utils/text.js +9 -0
  230. package/dist/utils/text.js.map +1 -1
  231. package/dist/utils/transcript.d.ts +22 -8
  232. package/dist/utils/transcript.d.ts.map +1 -1
  233. package/dist/utils/transcript.js +29 -18
  234. package/dist/utils/transcript.js.map +1 -1
  235. package/dist/utils/validation.d.ts.map +1 -1
  236. package/dist/utils/validation.js +3 -0
  237. package/dist/utils/validation.js.map +1 -1
  238. package/dist/utils/version.d.ts +2 -0
  239. package/dist/utils/version.d.ts.map +1 -0
  240. package/dist/utils/version.js +3 -0
  241. package/dist/utils/version.js.map +1 -0
  242. package/package.json +3 -3
  243. package/dist/utils/assistant-message-frame.d.ts +0 -77
  244. package/dist/utils/assistant-message-frame.d.ts.map +0 -1
  245. package/dist/utils/assistant-message-frame.js +0 -425
  246. package/dist/utils/assistant-message-frame.js.map +0 -1
  247. package/dist/utils/pi-user-agent.d.ts +0 -2
  248. package/dist/utils/pi-user-agent.d.ts.map +0 -1
  249. package/dist/utils/pi-user-agent.js +0 -12
  250. package/dist/utils/pi-user-agent.js.map +0 -1
@@ -0,0 +1,509 @@
1
+ import { type Static, type TProperties, Type } from "typebox";
2
+ export declare const SessionAffinityFormatSchema: Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>;
3
+ export declare const ThinkingTokenBudgetFieldSchema: Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>;
4
+ export declare const ChatTemplateKwargValueSchema: Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
5
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
6
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
7
+ }>]>;
8
+ export declare const OpenRouterRoutingSchema: Type.TObject<{
9
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
10
+ require_parameters: Type.TOptional<Type.TBoolean>;
11
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
12
+ zdr: Type.TOptional<Type.TBoolean>;
13
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
14
+ order: Type.TOptional<Type.TArray<Type.TString>>;
15
+ only: Type.TOptional<Type.TArray<Type.TString>>;
16
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
17
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
18
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
19
+ by: Type.TOptional<Type.TString>;
20
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
21
+ }>]>>;
22
+ max_price: Type.TOptional<Type.TObject<{
23
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
24
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
25
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
26
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
27
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
28
+ }>>;
29
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
30
+ p50: Type.TOptional<Type.TNumber>;
31
+ p75: Type.TOptional<Type.TNumber>;
32
+ p90: Type.TOptional<Type.TNumber>;
33
+ p99: Type.TOptional<Type.TNumber>;
34
+ }>]>>;
35
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
36
+ p50: Type.TOptional<Type.TNumber>;
37
+ p75: Type.TOptional<Type.TNumber>;
38
+ p90: Type.TOptional<Type.TNumber>;
39
+ p99: Type.TOptional<Type.TNumber>;
40
+ }>]>>;
41
+ }>;
42
+ export declare const VercelGatewayRoutingSchema: Type.TObject<{
43
+ only: Type.TOptional<Type.TArray<Type.TString>>;
44
+ order: Type.TOptional<Type.TArray<Type.TString>>;
45
+ }>;
46
+ export declare const AnthropicAllowedFallbackModelSchema: Type.TObject<{
47
+ provider: Type.TString;
48
+ model: Type.TString;
49
+ cost: Type.TObject<{
50
+ input: Type.TNumber;
51
+ output: Type.TNumber;
52
+ cacheRead: Type.TNumber;
53
+ cacheWrite: Type.TNumber;
54
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
55
+ input: Type.TNumber;
56
+ output: Type.TNumber;
57
+ cacheRead: Type.TNumber;
58
+ cacheWrite: Type.TNumber;
59
+ inputTokensAbove: Type.TNumber;
60
+ }>>>;
61
+ }>;
62
+ }>;
63
+ export declare const OpenAICompletionsCompatSchema: Type.TObject<{
64
+ supportsStore: Type.TOptional<Type.TBoolean>;
65
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
66
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
67
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
68
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
69
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
70
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
71
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
72
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
73
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
74
+ 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">]>>;
75
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
76
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
77
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
78
+ }>]>>>;
79
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
80
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
81
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
82
+ }>]>>>;
83
+ openRouterRouting: Type.TOptional<Type.TObject<{
84
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
85
+ require_parameters: Type.TOptional<Type.TBoolean>;
86
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
87
+ zdr: Type.TOptional<Type.TBoolean>;
88
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
89
+ order: Type.TOptional<Type.TArray<Type.TString>>;
90
+ only: Type.TOptional<Type.TArray<Type.TString>>;
91
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
92
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
93
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
94
+ by: Type.TOptional<Type.TString>;
95
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
96
+ }>]>>;
97
+ max_price: Type.TOptional<Type.TObject<{
98
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
99
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
100
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
101
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
102
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
103
+ }>>;
104
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
105
+ p50: Type.TOptional<Type.TNumber>;
106
+ p75: Type.TOptional<Type.TNumber>;
107
+ p90: Type.TOptional<Type.TNumber>;
108
+ p99: Type.TOptional<Type.TNumber>;
109
+ }>]>>;
110
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
111
+ p50: Type.TOptional<Type.TNumber>;
112
+ p75: Type.TOptional<Type.TNumber>;
113
+ p90: Type.TOptional<Type.TNumber>;
114
+ p99: Type.TOptional<Type.TNumber>;
115
+ }>]>>;
116
+ }>>;
117
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
118
+ only: Type.TOptional<Type.TArray<Type.TString>>;
119
+ order: Type.TOptional<Type.TArray<Type.TString>>;
120
+ }>>;
121
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
122
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
123
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
124
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
125
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
126
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
127
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
128
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
129
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
130
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
131
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
132
+ vllmPriority: Type.TOptional<Type.TNumber>;
133
+ }>;
134
+ export declare const OpenAIResponsesCompatSchema: Type.TObject<{
135
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
136
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
137
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
138
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
139
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
140
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
141
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
142
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
143
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
144
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
145
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
146
+ }>;
147
+ export declare const AnthropicMessagesCompatSchema: Type.TObject<{
148
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
149
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
150
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
151
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
152
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
153
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
154
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
155
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
156
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
157
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
158
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
159
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
160
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
161
+ provider: Type.TString;
162
+ model: Type.TString;
163
+ cost: Type.TObject<{
164
+ input: Type.TNumber;
165
+ output: Type.TNumber;
166
+ cacheRead: Type.TNumber;
167
+ cacheWrite: Type.TNumber;
168
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
169
+ input: Type.TNumber;
170
+ output: Type.TNumber;
171
+ cacheRead: Type.TNumber;
172
+ cacheWrite: Type.TNumber;
173
+ inputTokensAbove: Type.TNumber;
174
+ }>>>;
175
+ }>;
176
+ }>>>;
177
+ }>;
178
+ export declare const BedrockCompatSchema: Type.TObject<{
179
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
180
+ }>;
181
+ export declare const MistralConversationsCompatSchema: Type.TObject<{
182
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
183
+ }>;
184
+ export declare const SystemOneCompatSchema: Type.TObject<{
185
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
186
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
187
+ }>;
188
+ type UnionToIntersection<Union> = (Union extends unknown ? (value: Union) => void : never) extends (value: infer Intersection) => void ? Intersection : never;
189
+ type MergedCompatProperties<PropertyGroups extends readonly TProperties[], Overrides extends TProperties> = Omit<UnionToIntersection<PropertyGroups[number]>, keyof Overrides> & Overrides;
190
+ /** Compatibility schema for each API whose models accept compat. Mirrors the compat type of Model. */
191
+ export declare const CompatSchemasByApi: {
192
+ readonly "openai-completions": Type.TObject<{
193
+ supportsStore: Type.TOptional<Type.TBoolean>;
194
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
195
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
196
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
197
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
198
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
199
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
200
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
201
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
202
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
203
+ 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">]>>;
204
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
205
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
206
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
207
+ }>]>>>;
208
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
209
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
210
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
211
+ }>]>>>;
212
+ openRouterRouting: Type.TOptional<Type.TObject<{
213
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
214
+ require_parameters: Type.TOptional<Type.TBoolean>;
215
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
216
+ zdr: Type.TOptional<Type.TBoolean>;
217
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
218
+ order: Type.TOptional<Type.TArray<Type.TString>>;
219
+ only: Type.TOptional<Type.TArray<Type.TString>>;
220
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
221
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
222
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
223
+ by: Type.TOptional<Type.TString>;
224
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
225
+ }>]>>;
226
+ max_price: Type.TOptional<Type.TObject<{
227
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
228
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
229
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
230
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
231
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
232
+ }>>;
233
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
234
+ p50: Type.TOptional<Type.TNumber>;
235
+ p75: Type.TOptional<Type.TNumber>;
236
+ p90: Type.TOptional<Type.TNumber>;
237
+ p99: Type.TOptional<Type.TNumber>;
238
+ }>]>>;
239
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
240
+ p50: Type.TOptional<Type.TNumber>;
241
+ p75: Type.TOptional<Type.TNumber>;
242
+ p90: Type.TOptional<Type.TNumber>;
243
+ p99: Type.TOptional<Type.TNumber>;
244
+ }>]>>;
245
+ }>>;
246
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
247
+ only: Type.TOptional<Type.TArray<Type.TString>>;
248
+ order: Type.TOptional<Type.TArray<Type.TString>>;
249
+ }>>;
250
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
251
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
252
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
253
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
254
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
255
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
256
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
257
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
258
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
259
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
260
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
261
+ vllmPriority: Type.TOptional<Type.TNumber>;
262
+ }>;
263
+ readonly "openai-responses": Type.TObject<{
264
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
265
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
266
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
267
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
268
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
269
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
270
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
271
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
272
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
273
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
274
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
275
+ }>;
276
+ readonly "azure-openai-responses": Type.TObject<{
277
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
278
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
279
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
280
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
281
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
282
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
283
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
284
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
285
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
286
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
287
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
288
+ }>;
289
+ readonly "openai-codex-responses": Type.TObject<{
290
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
291
+ supportsMidConvoSystemMessages: 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>;
294
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
295
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
296
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
297
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
298
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
299
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
300
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
301
+ }>;
302
+ readonly "anthropic-messages": Type.TObject<{
303
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
304
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
305
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
306
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
307
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
308
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
309
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
310
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
311
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
312
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
313
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
314
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
315
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
316
+ provider: Type.TString;
317
+ model: Type.TString;
318
+ cost: Type.TObject<{
319
+ input: Type.TNumber;
320
+ output: Type.TNumber;
321
+ cacheRead: Type.TNumber;
322
+ cacheWrite: Type.TNumber;
323
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
324
+ input: Type.TNumber;
325
+ output: Type.TNumber;
326
+ cacheRead: Type.TNumber;
327
+ cacheWrite: Type.TNumber;
328
+ inputTokensAbove: Type.TNumber;
329
+ }>>>;
330
+ }>;
331
+ }>>>;
332
+ }>;
333
+ readonly "bedrock-converse-stream": Type.TObject<{
334
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
335
+ }>;
336
+ readonly "mistral-conversations": Type.TObject<{
337
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
338
+ }>;
339
+ readonly "typesafe-system-one": Type.TObject<{
340
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
341
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
342
+ }>;
343
+ readonly "cloudflare-workers-ai-system-one": Type.TObject<{
344
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
345
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
346
+ }>;
347
+ };
348
+ export declare const ProviderCompatSchema: Type.TObject<MergedCompatProperties<({
349
+ supportsStore: Type.TOptional<Type.TBoolean>;
350
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
351
+ supportsReasoningEffort: Type.TOptional<Type.TBoolean>;
352
+ supportsUsageInStreaming: Type.TOptional<Type.TBoolean>;
353
+ supportsFinishReason: Type.TOptional<Type.TBoolean>;
354
+ maxTokensField: Type.TOptional<Type.TUnion<[Type.TLiteral<"max_completion_tokens">, Type.TLiteral<"max_tokens">]>>;
355
+ requiresToolResultName: Type.TOptional<Type.TBoolean>;
356
+ requiresAssistantAfterToolResult: Type.TOptional<Type.TBoolean>;
357
+ requiresThinkingAsText: Type.TOptional<Type.TBoolean>;
358
+ requiresReasoningContentOnAssistantMessages: Type.TOptional<Type.TBoolean>;
359
+ 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">]>>;
360
+ chatTemplateKwargs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
361
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
362
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
363
+ }>]>>>;
364
+ chatTemplateArgs: Type.TOptional<Type.TRecord<"^.*$", Type.TUnion<[Type.TString, Type.TNumber, Type.TBoolean, Type.TNull, Type.TObject<{
365
+ $var: Type.TUnion<[Type.TLiteral<"thinking.enabled">, Type.TLiteral<"thinking.effort">, Type.TLiteral<"thinking.budget">]>;
366
+ omitWhenOff: Type.TOptional<Type.TBoolean>;
367
+ }>]>>>;
368
+ openRouterRouting: Type.TOptional<Type.TObject<{
369
+ allow_fallbacks: Type.TOptional<Type.TBoolean>;
370
+ require_parameters: Type.TOptional<Type.TBoolean>;
371
+ data_collection: Type.TOptional<Type.TUnion<[Type.TLiteral<"deny">, Type.TLiteral<"allow">]>>;
372
+ zdr: Type.TOptional<Type.TBoolean>;
373
+ enforce_distillable_text: Type.TOptional<Type.TBoolean>;
374
+ order: Type.TOptional<Type.TArray<Type.TString>>;
375
+ only: Type.TOptional<Type.TArray<Type.TString>>;
376
+ ignore: Type.TOptional<Type.TArray<Type.TString>>;
377
+ quantizations: Type.TOptional<Type.TArray<Type.TString>>;
378
+ sort: Type.TOptional<Type.TUnion<[Type.TString, Type.TObject<{
379
+ by: Type.TOptional<Type.TString>;
380
+ partition: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
381
+ }>]>>;
382
+ max_price: Type.TOptional<Type.TObject<{
383
+ prompt: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
384
+ completion: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
385
+ image: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
386
+ audio: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
387
+ request: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TString]>>;
388
+ }>>;
389
+ preferred_min_throughput: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
390
+ p50: Type.TOptional<Type.TNumber>;
391
+ p75: Type.TOptional<Type.TNumber>;
392
+ p90: Type.TOptional<Type.TNumber>;
393
+ p99: Type.TOptional<Type.TNumber>;
394
+ }>]>>;
395
+ preferred_max_latency: Type.TOptional<Type.TUnion<[Type.TNumber, Type.TObject<{
396
+ p50: Type.TOptional<Type.TNumber>;
397
+ p75: Type.TOptional<Type.TNumber>;
398
+ p90: Type.TOptional<Type.TNumber>;
399
+ p99: Type.TOptional<Type.TNumber>;
400
+ }>]>>;
401
+ }>>;
402
+ vercelGatewayRouting: Type.TOptional<Type.TObject<{
403
+ only: Type.TOptional<Type.TArray<Type.TString>>;
404
+ order: Type.TOptional<Type.TArray<Type.TString>>;
405
+ }>>;
406
+ zaiToolStream: Type.TOptional<Type.TBoolean>;
407
+ thinkingTokenBudgetField: Type.TOptional<Type.TUnion<[Type.TLiteral<"thinking_token_budget">, Type.TLiteral<"thinking_budget">, Type.TLiteral<"thinking_budget_tokens">]>>;
408
+ supportsThinkingTokenBudget: Type.TOptional<Type.TBoolean>;
409
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
410
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
411
+ supportsMidConvoToolAdditions: Type.TOptional<Type.TBoolean>;
412
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
413
+ cacheControlFormat: Type.TOptional<Type.TLiteral<"anthropic">>;
414
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
415
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
416
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
417
+ vllmPriority: Type.TOptional<Type.TNumber>;
418
+ } | {
419
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
420
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
421
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
422
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
423
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
424
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
425
+ supportsAdditionalTools: Type.TOptional<Type.TBoolean>;
426
+ supportsToolSearch: Type.TOptional<Type.TBoolean>;
427
+ supportsExplicitPromptCacheMode: Type.TOptional<Type.TBoolean>;
428
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
429
+ supportsMaxOutputTokens: Type.TOptional<Type.TBoolean>;
430
+ } | {
431
+ supportsEagerToolInputStreaming: Type.TOptional<Type.TBoolean>;
432
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
433
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
434
+ sessionAffinityFormat: Type.TOptional<Type.TLiteral<"openrouter">>;
435
+ supportsCacheControlOnTools: Type.TOptional<Type.TBoolean>;
436
+ supportsTemperature: Type.TOptional<Type.TBoolean>;
437
+ forceAdaptiveThinking: Type.TOptional<Type.TBoolean>;
438
+ allowEmptySignature: Type.TOptional<Type.TBoolean>;
439
+ supportsStrictTools: Type.TOptional<Type.TBoolean>;
440
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
441
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
442
+ supportsMidConvoToolChanges: Type.TOptional<Type.TBoolean>;
443
+ allowedFallbackModels: Type.TOptional<Type.TArray<Type.TObject<{
444
+ provider: Type.TString;
445
+ model: Type.TString;
446
+ cost: Type.TObject<{
447
+ input: Type.TNumber;
448
+ output: Type.TNumber;
449
+ cacheRead: Type.TNumber;
450
+ cacheWrite: Type.TNumber;
451
+ tiers: Type.TOptional<Type.TArray<Type.TObject<{
452
+ input: Type.TNumber;
453
+ output: Type.TNumber;
454
+ cacheRead: Type.TNumber;
455
+ cacheWrite: Type.TNumber;
456
+ inputTokensAbove: Type.TNumber;
457
+ }>>>;
458
+ }>;
459
+ }>>>;
460
+ } | {
461
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
462
+ } | {
463
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
464
+ } | {
465
+ imageInput: Type.TOptional<Type.TUnion<[Type.TLiteral<"assets">, Type.TLiteral<"images">, Type.TLiteral<"state-image-urls">]>>;
466
+ sendImageOptInHeader: Type.TOptional<Type.TBoolean>;
467
+ })[], {
468
+ supportsDeveloperRole: Type.TOptional<Type.TBoolean>;
469
+ supportsMidConvoSystemMessages: Type.TOptional<Type.TBoolean>;
470
+ sessionAffinityFormat: Type.TOptional<Type.TUnion<[Type.TLiteral<"openai">, Type.TLiteral<"openai-nosession">, Type.TLiteral<"openrouter">]>>;
471
+ supportsMidConvoEffort: Type.TOptional<Type.TBoolean>;
472
+ supportsLongCacheRetention: Type.TOptional<Type.TBoolean>;
473
+ supportsStrictMode: Type.TOptional<Type.TBoolean>;
474
+ supportsOpenAIGrammarTools: Type.TOptional<Type.TBoolean>;
475
+ sendSessionAffinityHeaders: Type.TOptional<Type.TBoolean>;
476
+ }>>;
477
+ export type ChatTemplateKwargValue = Static<typeof ChatTemplateKwargValueSchema>;
478
+ /** Top-level request field used to cap reasoning tokens on OpenAI-compatible servers. */
479
+ export type ThinkingTokenBudgetField = Static<typeof ThinkingTokenBudgetFieldSchema>;
480
+ export type SessionAffinityFormat = Static<typeof SessionAffinityFormatSchema>;
481
+ /** OpenRouter provider routing preferences. */
482
+ export interface OpenRouterRouting extends Static<typeof OpenRouterRoutingSchema> {
483
+ }
484
+ /** Vercel AI Gateway routing preferences. */
485
+ export interface VercelGatewayRouting extends Static<typeof VercelGatewayRoutingSchema> {
486
+ }
487
+ /** An Anthropic server-side refusal fallback model with local pricing metadata. */
488
+ export interface AnthropicAllowedFallbackModel extends Static<typeof AnthropicAllowedFallbackModelSchema> {
489
+ }
490
+ /** Compatibility settings for OpenAI-compatible completions APIs. */
491
+ export interface OpenAICompletionsCompat extends Static<typeof OpenAICompletionsCompatSchema> {
492
+ }
493
+ /** Compatibility settings for OpenAI Responses APIs. */
494
+ export interface OpenAIResponsesCompat extends Static<typeof OpenAIResponsesCompatSchema> {
495
+ }
496
+ /** Compatibility settings for Anthropic Messages-compatible APIs. */
497
+ export interface AnthropicMessagesCompat extends Static<typeof AnthropicMessagesCompatSchema> {
498
+ }
499
+ /** Compatibility settings for Amazon Bedrock models. */
500
+ export interface BedrockCompat extends Static<typeof BedrockCompatSchema> {
501
+ }
502
+ /** Compatibility settings for the Mistral chat API. */
503
+ export interface MistralConversationsCompat extends Static<typeof MistralConversationsCompatSchema> {
504
+ }
505
+ /** Compatibility settings for System One classifier APIs. */
506
+ export interface SystemOneCompat extends Static<typeof SystemOneCompatSchema> {
507
+ }
508
+ export {};
509
+ //# sourceMappingURL=compat-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat-schema.d.ts","sourceRoot":"","sources":["../../src/providers/compat-schema.ts"],"names":[],"mappings":"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"}