@sayknow-cli/ai 0.3.11 → 0.3.13

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 (197) hide show
  1. package/package.json +24 -25
  2. package/src/model-cache.ts +1 -1
  3. package/src/model-manager.ts +14 -3
  4. package/src/model-retirements.ts +13 -0
  5. package/src/model-thinking.ts +34 -2
  6. package/src/models.ts +26 -5
  7. package/src/provider-models/google.ts +1 -0
  8. package/src/providers/amazon-bedrock.ts +37 -33
  9. package/src/providers/anthropic.ts +94 -65
  10. package/src/providers/aws-credential-config.ts +180 -0
  11. package/src/providers/aws-credentials.ts +20 -63
  12. package/src/providers/google-gemini-cli.ts +27 -3
  13. package/src/providers/google-gemini-headers.ts +6 -1
  14. package/src/providers/google-shared.ts +55 -3
  15. package/src/types.ts +2 -0
  16. package/src/utils/discovery/antigravity.ts +16 -2
  17. package/dist/types/api-registry.d.ts +0 -30
  18. package/dist/types/auth-broker/client.d.ts +0 -67
  19. package/dist/types/auth-broker/index.d.ts +0 -5
  20. package/dist/types/auth-broker/refresher.d.ts +0 -25
  21. package/dist/types/auth-broker/remote-store.d.ts +0 -99
  22. package/dist/types/auth-broker/server.d.ts +0 -32
  23. package/dist/types/auth-broker/types.d.ts +0 -110
  24. package/dist/types/auth-broker/wire-schemas.d.ts +0 -443
  25. package/dist/types/auth-gateway/http.d.ts +0 -40
  26. package/dist/types/auth-gateway/index.d.ts +0 -3
  27. package/dist/types/auth-gateway/server.d.ts +0 -17
  28. package/dist/types/auth-gateway/types.d.ts +0 -115
  29. package/dist/types/auth-storage.d.ts +0 -695
  30. package/dist/types/cli.d.ts +0 -2
  31. package/dist/types/index.d.ts +0 -51
  32. package/dist/types/model-cache.d.ts +0 -17
  33. package/dist/types/model-manager.d.ts +0 -62
  34. package/dist/types/model-thinking.d.ts +0 -74
  35. package/dist/types/models.d.ts +0 -12
  36. package/dist/types/provider-details.d.ts +0 -24
  37. package/dist/types/provider-models/bundled-references.d.ts +0 -4
  38. package/dist/types/provider-models/descriptors.d.ts +0 -48
  39. package/dist/types/provider-models/google.d.ts +0 -20
  40. package/dist/types/provider-models/index.d.ts +0 -5
  41. package/dist/types/provider-models/ollama.d.ts +0 -7
  42. package/dist/types/provider-models/openai-compat.d.ts +0 -256
  43. package/dist/types/provider-models/special.d.ts +0 -19
  44. package/dist/types/providers/amazon-bedrock.d.ts +0 -60
  45. package/dist/types/providers/anthropic-messages-server-schema.d.ts +0 -450
  46. package/dist/types/providers/anthropic-messages-server.d.ts +0 -17
  47. package/dist/types/providers/anthropic.d.ts +0 -208
  48. package/dist/types/providers/aws-credentials.d.ts +0 -43
  49. package/dist/types/providers/aws-eventstream.d.ts +0 -38
  50. package/dist/types/providers/aws-sigv4.d.ts +0 -55
  51. package/dist/types/providers/azure-openai-responses.d.ts +0 -15
  52. package/dist/types/providers/composer-discipline.d.ts +0 -26
  53. package/dist/types/providers/cursor/client-version.d.ts +0 -10
  54. package/dist/types/providers/cursor/gen/agent_pb.d.ts +0 -13022
  55. package/dist/types/providers/cursor.d.ts +0 -45
  56. package/dist/types/providers/error-message.d.ts +0 -27
  57. package/dist/types/providers/github-copilot-headers.d.ts +0 -40
  58. package/dist/types/providers/gitlab-duo.d.ts +0 -27
  59. package/dist/types/providers/google-auth.d.ts +0 -24
  60. package/dist/types/providers/google-gemini-cli.d.ts +0 -75
  61. package/dist/types/providers/google-gemini-headers.d.ts +0 -40
  62. package/dist/types/providers/google-shared.d.ts +0 -173
  63. package/dist/types/providers/google-types.d.ts +0 -138
  64. package/dist/types/providers/google-vertex.d.ts +0 -7
  65. package/dist/types/providers/google.d.ts +0 -4
  66. package/dist/types/providers/grammar.d.ts +0 -1
  67. package/dist/types/providers/kimi.d.ts +0 -27
  68. package/dist/types/providers/mock.d.ts +0 -177
  69. package/dist/types/providers/ollama.d.ts +0 -41
  70. package/dist/types/providers/openai-anthropic-shim.d.ts +0 -31
  71. package/dist/types/providers/openai-bounded-rate-limits.d.ts +0 -3
  72. package/dist/types/providers/openai-chat-server-schema.d.ts +0 -815
  73. package/dist/types/providers/openai-chat-server.d.ts +0 -16
  74. package/dist/types/providers/openai-codex/constants.d.ts +0 -26
  75. package/dist/types/providers/openai-codex/request-transformer.d.ts +0 -50
  76. package/dist/types/providers/openai-codex/response-handler.d.ts +0 -17
  77. package/dist/types/providers/openai-codex-responses.d.ts +0 -67
  78. package/dist/types/providers/openai-completions-compat.d.ts +0 -27
  79. package/dist/types/providers/openai-completions.d.ts +0 -33
  80. package/dist/types/providers/openai-request-transform.d.ts +0 -4
  81. package/dist/types/providers/openai-responses-server-schema.d.ts +0 -392
  82. package/dist/types/providers/openai-responses-server.d.ts +0 -17
  83. package/dist/types/providers/openai-responses-shared.d.ts +0 -104
  84. package/dist/types/providers/openai-responses.d.ts +0 -32
  85. package/dist/types/providers/pi-native-client.d.ts +0 -13
  86. package/dist/types/providers/pi-native-server.d.ts +0 -68
  87. package/dist/types/providers/register-builtins.d.ts +0 -31
  88. package/dist/types/providers/synthetic.d.ts +0 -26
  89. package/dist/types/providers/transform-messages.d.ts +0 -14
  90. package/dist/types/providers/vision-guard.d.ts +0 -8
  91. package/dist/types/rate-limit-utils.d.ts +0 -19
  92. package/dist/types/stream.d.ts +0 -43
  93. package/dist/types/types.d.ts +0 -829
  94. package/dist/types/usage/claude.d.ts +0 -3
  95. package/dist/types/usage/gemini.d.ts +0 -2
  96. package/dist/types/usage/github-copilot.d.ts +0 -7
  97. package/dist/types/usage/google-antigravity.d.ts +0 -2
  98. package/dist/types/usage/grok-cli.d.ts +0 -10
  99. package/dist/types/usage/kimi.d.ts +0 -2
  100. package/dist/types/usage/minimax-code.d.ts +0 -2
  101. package/dist/types/usage/openai-codex.d.ts +0 -3
  102. package/dist/types/usage/shared.d.ts +0 -1
  103. package/dist/types/usage/zai.d.ts +0 -2
  104. package/dist/types/usage.d.ts +0 -258
  105. package/dist/types/utils/abort.d.ts +0 -19
  106. package/dist/types/utils/anthropic-auth.d.ts +0 -31
  107. package/dist/types/utils/discovery/antigravity.d.ts +0 -61
  108. package/dist/types/utils/discovery/codex.d.ts +0 -38
  109. package/dist/types/utils/discovery/cursor.d.ts +0 -23
  110. package/dist/types/utils/discovery/gemini.d.ts +0 -25
  111. package/dist/types/utils/discovery/index.d.ts +0 -4
  112. package/dist/types/utils/discovery/openai-compatible.d.ts +0 -74
  113. package/dist/types/utils/event-stream.d.ts +0 -33
  114. package/dist/types/utils/fireworks-model-id.d.ts +0 -10
  115. package/dist/types/utils/foundry.d.ts +0 -1
  116. package/dist/types/utils/h2-fetch.d.ts +0 -22
  117. package/dist/types/utils/http-inspector.d.ts +0 -35
  118. package/dist/types/utils/idle-iterator.d.ts +0 -67
  119. package/dist/types/utils/json-parse.d.ts +0 -18
  120. package/dist/types/utils/oauth/alibaba-coding-plan.d.ts +0 -18
  121. package/dist/types/utils/oauth/anthropic.d.ts +0 -22
  122. package/dist/types/utils/oauth/api-key-login.d.ts +0 -35
  123. package/dist/types/utils/oauth/api-key-validation.d.ts +0 -27
  124. package/dist/types/utils/oauth/callback-server.d.ts +0 -60
  125. package/dist/types/utils/oauth/cerebras.d.ts +0 -1
  126. package/dist/types/utils/oauth/cloudflare-ai-gateway.d.ts +0 -18
  127. package/dist/types/utils/oauth/cursor.d.ts +0 -15
  128. package/dist/types/utils/oauth/deepinfra.d.ts +0 -1
  129. package/dist/types/utils/oauth/deepseek.d.ts +0 -10
  130. package/dist/types/utils/oauth/firepass.d.ts +0 -1
  131. package/dist/types/utils/oauth/fireworks.d.ts +0 -1
  132. package/dist/types/utils/oauth/fugu.d.ts +0 -1
  133. package/dist/types/utils/oauth/github-copilot.d.ts +0 -38
  134. package/dist/types/utils/oauth/gitlab-duo.d.ts +0 -3
  135. package/dist/types/utils/oauth/glm-zcode.d.ts +0 -71
  136. package/dist/types/utils/oauth/google-antigravity.d.ts +0 -11
  137. package/dist/types/utils/oauth/google-gemini-cli.d.ts +0 -10
  138. package/dist/types/utils/oauth/google-oauth-shared.d.ts +0 -28
  139. package/dist/types/utils/oauth/huggingface.d.ts +0 -19
  140. package/dist/types/utils/oauth/index.d.ts +0 -39
  141. package/dist/types/utils/oauth/kagi.d.ts +0 -17
  142. package/dist/types/utils/oauth/kilo.d.ts +0 -5
  143. package/dist/types/utils/oauth/kimi.d.ts +0 -21
  144. package/dist/types/utils/oauth/litellm.d.ts +0 -18
  145. package/dist/types/utils/oauth/lm-studio.d.ts +0 -17
  146. package/dist/types/utils/oauth/minimax-code.d.ts +0 -28
  147. package/dist/types/utils/oauth/moonshot.d.ts +0 -1
  148. package/dist/types/utils/oauth/nanogpt.d.ts +0 -1
  149. package/dist/types/utils/oauth/nvidia.d.ts +0 -18
  150. package/dist/types/utils/oauth/ollama-cloud.d.ts +0 -2
  151. package/dist/types/utils/oauth/ollama.d.ts +0 -18
  152. package/dist/types/utils/oauth/openai-codex.d.ts +0 -21
  153. package/dist/types/utils/oauth/opencode.d.ts +0 -18
  154. package/dist/types/utils/oauth/parallel.d.ts +0 -17
  155. package/dist/types/utils/oauth/perplexity.d.ts +0 -9
  156. package/dist/types/utils/oauth/pkce.d.ts +0 -8
  157. package/dist/types/utils/oauth/qianfan.d.ts +0 -17
  158. package/dist/types/utils/oauth/qwen-portal.d.ts +0 -19
  159. package/dist/types/utils/oauth/synthetic.d.ts +0 -1
  160. package/dist/types/utils/oauth/tavily.d.ts +0 -17
  161. package/dist/types/utils/oauth/together.d.ts +0 -1
  162. package/dist/types/utils/oauth/types.d.ts +0 -45
  163. package/dist/types/utils/oauth/venice.d.ts +0 -18
  164. package/dist/types/utils/oauth/vercel-ai-gateway.d.ts +0 -18
  165. package/dist/types/utils/oauth/vllm.d.ts +0 -16
  166. package/dist/types/utils/oauth/xai.d.ts +0 -30
  167. package/dist/types/utils/oauth/xiaomi.d.ts +0 -25
  168. package/dist/types/utils/oauth/zai.d.ts +0 -18
  169. package/dist/types/utils/oauth/zenmux.d.ts +0 -1
  170. package/dist/types/utils/overflow.d.ts +0 -64
  171. package/dist/types/utils/parse-bind.d.ts +0 -23
  172. package/dist/types/utils/provider-response.d.ts +0 -3
  173. package/dist/types/utils/retry-after.d.ts +0 -3
  174. package/dist/types/utils/retry-budget.d.ts +0 -1
  175. package/dist/types/utils/retry.d.ts +0 -26
  176. package/dist/types/utils/schema/adapt.d.ts +0 -24
  177. package/dist/types/utils/schema/compatibility.d.ts +0 -30
  178. package/dist/types/utils/schema/dereference.d.ts +0 -11
  179. package/dist/types/utils/schema/draft.d.ts +0 -10
  180. package/dist/types/utils/schema/equality.d.ts +0 -4
  181. package/dist/types/utils/schema/fields.d.ts +0 -49
  182. package/dist/types/utils/schema/index.d.ts +0 -14
  183. package/dist/types/utils/schema/json-schema-validator.d.ts +0 -12
  184. package/dist/types/utils/schema/meta-validator.d.ts +0 -2
  185. package/dist/types/utils/schema/normalize.d.ts +0 -93
  186. package/dist/types/utils/schema/root-combinator.d.ts +0 -12
  187. package/dist/types/utils/schema/spill.d.ts +0 -8
  188. package/dist/types/utils/schema/stamps.d.ts +0 -25
  189. package/dist/types/utils/schema/types.d.ts +0 -4
  190. package/dist/types/utils/schema/wire.d.ts +0 -54
  191. package/dist/types/utils/schema/zod-decontaminate.d.ts +0 -31
  192. package/dist/types/utils/sse-debug.d.ts +0 -10
  193. package/dist/types/utils/tool-call-healing.d.ts +0 -71
  194. package/dist/types/utils/tool-choice-capability.d.ts +0 -41
  195. package/dist/types/utils/tool-choice.d.ts +0 -50
  196. package/dist/types/utils/validation.d.ts +0 -17
  197. package/dist/types/utils.d.ts +0 -35
@@ -1,815 +0,0 @@
1
- /**
2
- * Zod schemas for the OpenAI chat-completions request shape we accept on the
3
- * gateway. Mirrors https://platform.openai.com/docs/api-reference/chat — only
4
- * the shapes the gateway translation layer understands. Unknown fields on
5
- * permissive objects are accepted-and-stripped (via `z.unknown()` passthroughs
6
- * or `.loose()`) so the official OpenAI SDK — which sends a growing pile of
7
- * non-strict defaults (e.g. `stream_options.include_obfuscation`) — does not
8
- * trip 400s on shapes we simply ignore.
9
- */
10
- import type { ChatCompletionContentPart, ChatCompletionCreateParams, ChatCompletionMessageParam, ChatCompletionMessageToolCall, ChatCompletionTool, ChatCompletionToolChoiceOption } from "openai/resources/chat/completions";
11
- import * as z from "zod/v4";
12
- export declare const textPartSchema: z.ZodObject<{
13
- type: z.ZodLiteral<"text">;
14
- text: z.ZodString;
15
- }, z.core.$strip>;
16
- /**
17
- * OpenAI documents `image_url` as either `{ url: string, detail?: ... }` or —
18
- * older clients — a bare string. Accept both shapes; downstream we extract a
19
- * URL. `detail` is accepted for forward-compat but currently dropped (pi-ai's
20
- * `ImageContent` has no detail field — TODO: plumb through if/when added).
21
- */
22
- export declare const imagePartSchema: z.ZodObject<{
23
- type: z.ZodLiteral<"image_url">;
24
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
25
- url: z.ZodString;
26
- detail: z.ZodOptional<z.ZodEnum<{
27
- auto: "auto";
28
- high: "high";
29
- low: "low";
30
- }>>;
31
- }, z.core.$strip>]>;
32
- }, z.core.$strip>;
33
- /** OpenAI audio input block (gpt-4o-audio). Accepted; currently dropped downstream. */
34
- export declare const inputAudioPartSchema: z.ZodObject<{
35
- type: z.ZodLiteral<"input_audio">;
36
- input_audio: z.ZodObject<{
37
- data: z.ZodString;
38
- format: z.ZodEnum<{
39
- mp3: "mp3";
40
- wav: "wav";
41
- }>;
42
- }, z.core.$strip>;
43
- }, z.core.$strip>;
44
- /** OpenAI file input block (file_search / vision-document). Accepted; currently dropped downstream. */
45
- export declare const filePartSchema: z.ZodObject<{
46
- type: z.ZodLiteral<"file">;
47
- file: z.ZodObject<{
48
- file_id: z.ZodOptional<z.ZodString>;
49
- filename: z.ZodOptional<z.ZodString>;
50
- file_data: z.ZodOptional<z.ZodString>;
51
- }, z.core.$strip>;
52
- }, z.core.$strip>;
53
- /** Replayed assistant refusal block. Accepted; currently dropped downstream. */
54
- export declare const refusalPartSchema: z.ZodObject<{
55
- type: z.ZodLiteral<"refusal">;
56
- refusal: z.ZodString;
57
- }, z.core.$strip>;
58
- /**
59
- * Forward-compat catch-all for unknown content-part types. Matches every other
60
- * `{ type: string, ... }` object so a new OpenAI block kind does not 400 the
61
- * whole request; the walker ignores parts whose `type` it does not know.
62
- */
63
- export declare const unknownPartSchema: z.ZodObject<{
64
- type: z.ZodString;
65
- }, z.core.$loose>;
66
- export declare const userContentPartSchema: z.ZodUnion<readonly [z.ZodObject<{
67
- type: z.ZodLiteral<"text">;
68
- text: z.ZodString;
69
- }, z.core.$strip>, z.ZodObject<{
70
- type: z.ZodLiteral<"image_url">;
71
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
72
- url: z.ZodString;
73
- detail: z.ZodOptional<z.ZodEnum<{
74
- auto: "auto";
75
- high: "high";
76
- low: "low";
77
- }>>;
78
- }, z.core.$strip>]>;
79
- }, z.core.$strip>, z.ZodObject<{
80
- type: z.ZodLiteral<"input_audio">;
81
- input_audio: z.ZodObject<{
82
- data: z.ZodString;
83
- format: z.ZodEnum<{
84
- mp3: "mp3";
85
- wav: "wav";
86
- }>;
87
- }, z.core.$strip>;
88
- }, z.core.$strip>, z.ZodObject<{
89
- type: z.ZodLiteral<"file">;
90
- file: z.ZodObject<{
91
- file_id: z.ZodOptional<z.ZodString>;
92
- filename: z.ZodOptional<z.ZodString>;
93
- file_data: z.ZodOptional<z.ZodString>;
94
- }, z.core.$strip>;
95
- }, z.core.$strip>, z.ZodObject<{
96
- type: z.ZodLiteral<"refusal">;
97
- refusal: z.ZodString;
98
- }, z.core.$strip>, z.ZodObject<{
99
- type: z.ZodString;
100
- }, z.core.$loose>]>;
101
- export declare const toolCallSchema: z.ZodObject<{
102
- id: z.ZodString;
103
- type: z.ZodOptional<z.ZodLiteral<"function">>;
104
- function: z.ZodObject<{
105
- name: z.ZodString;
106
- arguments: z.ZodString;
107
- }, z.core.$strip>;
108
- }, z.core.$strip>;
109
- export declare const toolSchema: z.ZodObject<{
110
- type: z.ZodLiteral<"function">;
111
- function: z.ZodObject<{
112
- name: z.ZodString;
113
- description: z.ZodOptional<z.ZodString>;
114
- parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
115
- strict: z.ZodOptional<z.ZodBoolean>;
116
- }, z.core.$strip>;
117
- }, z.core.$strip>;
118
- export declare const toolChoiceSchema: z.ZodUnion<readonly [z.ZodLiteral<"auto">, z.ZodLiteral<"none">, z.ZodLiteral<"required">, z.ZodObject<{
119
- type: z.ZodLiteral<"function">;
120
- function: z.ZodObject<{
121
- name: z.ZodString;
122
- }, z.core.$strip>;
123
- }, z.core.$strip>, z.ZodObject<{
124
- type: z.ZodLiteral<"tool">;
125
- name: z.ZodString;
126
- }, z.core.$strip>]>;
127
- export declare const systemMessageSchema: z.ZodObject<{
128
- role: z.ZodLiteral<"system">;
129
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
130
- type: z.ZodLiteral<"text">;
131
- text: z.ZodString;
132
- }, z.core.$strip>, z.ZodObject<{
133
- type: z.ZodLiteral<"image_url">;
134
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
135
- url: z.ZodString;
136
- detail: z.ZodOptional<z.ZodEnum<{
137
- auto: "auto";
138
- high: "high";
139
- low: "low";
140
- }>>;
141
- }, z.core.$strip>]>;
142
- }, z.core.$strip>, z.ZodObject<{
143
- type: z.ZodLiteral<"input_audio">;
144
- input_audio: z.ZodObject<{
145
- data: z.ZodString;
146
- format: z.ZodEnum<{
147
- mp3: "mp3";
148
- wav: "wav";
149
- }>;
150
- }, z.core.$strip>;
151
- }, z.core.$strip>, z.ZodObject<{
152
- type: z.ZodLiteral<"file">;
153
- file: z.ZodObject<{
154
- file_id: z.ZodOptional<z.ZodString>;
155
- filename: z.ZodOptional<z.ZodString>;
156
- file_data: z.ZodOptional<z.ZodString>;
157
- }, z.core.$strip>;
158
- }, z.core.$strip>, z.ZodObject<{
159
- type: z.ZodLiteral<"refusal">;
160
- refusal: z.ZodString;
161
- }, z.core.$strip>, z.ZodObject<{
162
- type: z.ZodString;
163
- }, z.core.$loose>]>>]>;
164
- }, z.core.$strip>;
165
- export declare const developerMessageSchema: z.ZodObject<{
166
- role: z.ZodLiteral<"developer">;
167
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
168
- type: z.ZodLiteral<"text">;
169
- text: z.ZodString;
170
- }, z.core.$strip>, z.ZodObject<{
171
- type: z.ZodLiteral<"image_url">;
172
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
173
- url: z.ZodString;
174
- detail: z.ZodOptional<z.ZodEnum<{
175
- auto: "auto";
176
- high: "high";
177
- low: "low";
178
- }>>;
179
- }, z.core.$strip>]>;
180
- }, z.core.$strip>, z.ZodObject<{
181
- type: z.ZodLiteral<"input_audio">;
182
- input_audio: z.ZodObject<{
183
- data: z.ZodString;
184
- format: z.ZodEnum<{
185
- mp3: "mp3";
186
- wav: "wav";
187
- }>;
188
- }, z.core.$strip>;
189
- }, z.core.$strip>, z.ZodObject<{
190
- type: z.ZodLiteral<"file">;
191
- file: z.ZodObject<{
192
- file_id: z.ZodOptional<z.ZodString>;
193
- filename: z.ZodOptional<z.ZodString>;
194
- file_data: z.ZodOptional<z.ZodString>;
195
- }, z.core.$strip>;
196
- }, z.core.$strip>, z.ZodObject<{
197
- type: z.ZodLiteral<"refusal">;
198
- refusal: z.ZodString;
199
- }, z.core.$strip>, z.ZodObject<{
200
- type: z.ZodString;
201
- }, z.core.$loose>]>>]>;
202
- }, z.core.$strip>;
203
- export declare const userMessageSchema: z.ZodObject<{
204
- role: z.ZodLiteral<"user">;
205
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
206
- type: z.ZodLiteral<"text">;
207
- text: z.ZodString;
208
- }, z.core.$strip>, z.ZodObject<{
209
- type: z.ZodLiteral<"image_url">;
210
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
211
- url: z.ZodString;
212
- detail: z.ZodOptional<z.ZodEnum<{
213
- auto: "auto";
214
- high: "high";
215
- low: "low";
216
- }>>;
217
- }, z.core.$strip>]>;
218
- }, z.core.$strip>, z.ZodObject<{
219
- type: z.ZodLiteral<"input_audio">;
220
- input_audio: z.ZodObject<{
221
- data: z.ZodString;
222
- format: z.ZodEnum<{
223
- mp3: "mp3";
224
- wav: "wav";
225
- }>;
226
- }, z.core.$strip>;
227
- }, z.core.$strip>, z.ZodObject<{
228
- type: z.ZodLiteral<"file">;
229
- file: z.ZodObject<{
230
- file_id: z.ZodOptional<z.ZodString>;
231
- filename: z.ZodOptional<z.ZodString>;
232
- file_data: z.ZodOptional<z.ZodString>;
233
- }, z.core.$strip>;
234
- }, z.core.$strip>, z.ZodObject<{
235
- type: z.ZodLiteral<"refusal">;
236
- refusal: z.ZodString;
237
- }, z.core.$strip>, z.ZodObject<{
238
- type: z.ZodString;
239
- }, z.core.$loose>]>>]>;
240
- }, z.core.$strip>;
241
- export declare const assistantMessageSchema: z.ZodObject<{
242
- role: z.ZodLiteral<"assistant">;
243
- content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
244
- type: z.ZodLiteral<"text">;
245
- text: z.ZodString;
246
- }, z.core.$strip>, z.ZodObject<{
247
- type: z.ZodLiteral<"image_url">;
248
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
249
- url: z.ZodString;
250
- detail: z.ZodOptional<z.ZodEnum<{
251
- auto: "auto";
252
- high: "high";
253
- low: "low";
254
- }>>;
255
- }, z.core.$strip>]>;
256
- }, z.core.$strip>, z.ZodObject<{
257
- type: z.ZodLiteral<"input_audio">;
258
- input_audio: z.ZodObject<{
259
- data: z.ZodString;
260
- format: z.ZodEnum<{
261
- mp3: "mp3";
262
- wav: "wav";
263
- }>;
264
- }, z.core.$strip>;
265
- }, z.core.$strip>, z.ZodObject<{
266
- type: z.ZodLiteral<"file">;
267
- file: z.ZodObject<{
268
- file_id: z.ZodOptional<z.ZodString>;
269
- filename: z.ZodOptional<z.ZodString>;
270
- file_data: z.ZodOptional<z.ZodString>;
271
- }, z.core.$strip>;
272
- }, z.core.$strip>, z.ZodObject<{
273
- type: z.ZodLiteral<"refusal">;
274
- refusal: z.ZodString;
275
- }, z.core.$strip>, z.ZodObject<{
276
- type: z.ZodString;
277
- }, z.core.$loose>]>>]>>;
278
- tool_calls: z.ZodOptional<z.ZodArray<z.ZodObject<{
279
- id: z.ZodString;
280
- type: z.ZodOptional<z.ZodLiteral<"function">>;
281
- function: z.ZodObject<{
282
- name: z.ZodString;
283
- arguments: z.ZodString;
284
- }, z.core.$strip>;
285
- }, z.core.$strip>>>;
286
- }, z.core.$strip>;
287
- export declare const toolMessageSchema: z.ZodObject<{
288
- role: z.ZodLiteral<"tool">;
289
- content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
290
- type: z.ZodLiteral<"text">;
291
- text: z.ZodString;
292
- }, z.core.$strip>, z.ZodObject<{
293
- type: z.ZodLiteral<"image_url">;
294
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
295
- url: z.ZodString;
296
- detail: z.ZodOptional<z.ZodEnum<{
297
- auto: "auto";
298
- high: "high";
299
- low: "low";
300
- }>>;
301
- }, z.core.$strip>]>;
302
- }, z.core.$strip>, z.ZodObject<{
303
- type: z.ZodLiteral<"input_audio">;
304
- input_audio: z.ZodObject<{
305
- data: z.ZodString;
306
- format: z.ZodEnum<{
307
- mp3: "mp3";
308
- wav: "wav";
309
- }>;
310
- }, z.core.$strip>;
311
- }, z.core.$strip>, z.ZodObject<{
312
- type: z.ZodLiteral<"file">;
313
- file: z.ZodObject<{
314
- file_id: z.ZodOptional<z.ZodString>;
315
- filename: z.ZodOptional<z.ZodString>;
316
- file_data: z.ZodOptional<z.ZodString>;
317
- }, z.core.$strip>;
318
- }, z.core.$strip>, z.ZodObject<{
319
- type: z.ZodLiteral<"refusal">;
320
- refusal: z.ZodString;
321
- }, z.core.$strip>, z.ZodObject<{
322
- type: z.ZodString;
323
- }, z.core.$loose>]>>]>>;
324
- tool_call_id: z.ZodOptional<z.ZodString>;
325
- }, z.core.$strip>;
326
- /**
327
- * Legacy `function` role (pre-tools API). Translated to a `tool` role
328
- * canonical message in the walker so downstream providers see one shape.
329
- */
330
- export declare const functionMessageSchema: z.ZodObject<{
331
- role: z.ZodLiteral<"function">;
332
- name: z.ZodString;
333
- content: z.ZodNullable<z.ZodString>;
334
- }, z.core.$strip>;
335
- export declare const messageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
336
- role: z.ZodLiteral<"system">;
337
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
338
- type: z.ZodLiteral<"text">;
339
- text: z.ZodString;
340
- }, z.core.$strip>, z.ZodObject<{
341
- type: z.ZodLiteral<"image_url">;
342
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
343
- url: z.ZodString;
344
- detail: z.ZodOptional<z.ZodEnum<{
345
- auto: "auto";
346
- high: "high";
347
- low: "low";
348
- }>>;
349
- }, z.core.$strip>]>;
350
- }, z.core.$strip>, z.ZodObject<{
351
- type: z.ZodLiteral<"input_audio">;
352
- input_audio: z.ZodObject<{
353
- data: z.ZodString;
354
- format: z.ZodEnum<{
355
- mp3: "mp3";
356
- wav: "wav";
357
- }>;
358
- }, z.core.$strip>;
359
- }, z.core.$strip>, z.ZodObject<{
360
- type: z.ZodLiteral<"file">;
361
- file: z.ZodObject<{
362
- file_id: z.ZodOptional<z.ZodString>;
363
- filename: z.ZodOptional<z.ZodString>;
364
- file_data: z.ZodOptional<z.ZodString>;
365
- }, z.core.$strip>;
366
- }, z.core.$strip>, z.ZodObject<{
367
- type: z.ZodLiteral<"refusal">;
368
- refusal: z.ZodString;
369
- }, z.core.$strip>, z.ZodObject<{
370
- type: z.ZodString;
371
- }, z.core.$loose>]>>]>;
372
- }, z.core.$strip>, z.ZodObject<{
373
- role: z.ZodLiteral<"developer">;
374
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
375
- type: z.ZodLiteral<"text">;
376
- text: z.ZodString;
377
- }, z.core.$strip>, z.ZodObject<{
378
- type: z.ZodLiteral<"image_url">;
379
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
380
- url: z.ZodString;
381
- detail: z.ZodOptional<z.ZodEnum<{
382
- auto: "auto";
383
- high: "high";
384
- low: "low";
385
- }>>;
386
- }, z.core.$strip>]>;
387
- }, z.core.$strip>, z.ZodObject<{
388
- type: z.ZodLiteral<"input_audio">;
389
- input_audio: z.ZodObject<{
390
- data: z.ZodString;
391
- format: z.ZodEnum<{
392
- mp3: "mp3";
393
- wav: "wav";
394
- }>;
395
- }, z.core.$strip>;
396
- }, z.core.$strip>, z.ZodObject<{
397
- type: z.ZodLiteral<"file">;
398
- file: z.ZodObject<{
399
- file_id: z.ZodOptional<z.ZodString>;
400
- filename: z.ZodOptional<z.ZodString>;
401
- file_data: z.ZodOptional<z.ZodString>;
402
- }, z.core.$strip>;
403
- }, z.core.$strip>, z.ZodObject<{
404
- type: z.ZodLiteral<"refusal">;
405
- refusal: z.ZodString;
406
- }, z.core.$strip>, z.ZodObject<{
407
- type: z.ZodString;
408
- }, z.core.$loose>]>>]>;
409
- }, z.core.$strip>, z.ZodObject<{
410
- role: z.ZodLiteral<"user">;
411
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
412
- type: z.ZodLiteral<"text">;
413
- text: z.ZodString;
414
- }, z.core.$strip>, z.ZodObject<{
415
- type: z.ZodLiteral<"image_url">;
416
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
417
- url: z.ZodString;
418
- detail: z.ZodOptional<z.ZodEnum<{
419
- auto: "auto";
420
- high: "high";
421
- low: "low";
422
- }>>;
423
- }, z.core.$strip>]>;
424
- }, z.core.$strip>, z.ZodObject<{
425
- type: z.ZodLiteral<"input_audio">;
426
- input_audio: z.ZodObject<{
427
- data: z.ZodString;
428
- format: z.ZodEnum<{
429
- mp3: "mp3";
430
- wav: "wav";
431
- }>;
432
- }, z.core.$strip>;
433
- }, z.core.$strip>, z.ZodObject<{
434
- type: z.ZodLiteral<"file">;
435
- file: z.ZodObject<{
436
- file_id: z.ZodOptional<z.ZodString>;
437
- filename: z.ZodOptional<z.ZodString>;
438
- file_data: z.ZodOptional<z.ZodString>;
439
- }, z.core.$strip>;
440
- }, z.core.$strip>, z.ZodObject<{
441
- type: z.ZodLiteral<"refusal">;
442
- refusal: z.ZodString;
443
- }, z.core.$strip>, z.ZodObject<{
444
- type: z.ZodString;
445
- }, z.core.$loose>]>>]>;
446
- }, z.core.$strip>, z.ZodObject<{
447
- role: z.ZodLiteral<"assistant">;
448
- content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
449
- type: z.ZodLiteral<"text">;
450
- text: z.ZodString;
451
- }, z.core.$strip>, z.ZodObject<{
452
- type: z.ZodLiteral<"image_url">;
453
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
454
- url: z.ZodString;
455
- detail: z.ZodOptional<z.ZodEnum<{
456
- auto: "auto";
457
- high: "high";
458
- low: "low";
459
- }>>;
460
- }, z.core.$strip>]>;
461
- }, z.core.$strip>, z.ZodObject<{
462
- type: z.ZodLiteral<"input_audio">;
463
- input_audio: z.ZodObject<{
464
- data: z.ZodString;
465
- format: z.ZodEnum<{
466
- mp3: "mp3";
467
- wav: "wav";
468
- }>;
469
- }, z.core.$strip>;
470
- }, z.core.$strip>, z.ZodObject<{
471
- type: z.ZodLiteral<"file">;
472
- file: z.ZodObject<{
473
- file_id: z.ZodOptional<z.ZodString>;
474
- filename: z.ZodOptional<z.ZodString>;
475
- file_data: z.ZodOptional<z.ZodString>;
476
- }, z.core.$strip>;
477
- }, z.core.$strip>, z.ZodObject<{
478
- type: z.ZodLiteral<"refusal">;
479
- refusal: z.ZodString;
480
- }, z.core.$strip>, z.ZodObject<{
481
- type: z.ZodString;
482
- }, z.core.$loose>]>>]>>;
483
- tool_calls: z.ZodOptional<z.ZodArray<z.ZodObject<{
484
- id: z.ZodString;
485
- type: z.ZodOptional<z.ZodLiteral<"function">>;
486
- function: z.ZodObject<{
487
- name: z.ZodString;
488
- arguments: z.ZodString;
489
- }, z.core.$strip>;
490
- }, z.core.$strip>>>;
491
- }, z.core.$strip>, z.ZodObject<{
492
- role: z.ZodLiteral<"tool">;
493
- content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
494
- type: z.ZodLiteral<"text">;
495
- text: z.ZodString;
496
- }, z.core.$strip>, z.ZodObject<{
497
- type: z.ZodLiteral<"image_url">;
498
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
499
- url: z.ZodString;
500
- detail: z.ZodOptional<z.ZodEnum<{
501
- auto: "auto";
502
- high: "high";
503
- low: "low";
504
- }>>;
505
- }, z.core.$strip>]>;
506
- }, z.core.$strip>, z.ZodObject<{
507
- type: z.ZodLiteral<"input_audio">;
508
- input_audio: z.ZodObject<{
509
- data: z.ZodString;
510
- format: z.ZodEnum<{
511
- mp3: "mp3";
512
- wav: "wav";
513
- }>;
514
- }, z.core.$strip>;
515
- }, z.core.$strip>, z.ZodObject<{
516
- type: z.ZodLiteral<"file">;
517
- file: z.ZodObject<{
518
- file_id: z.ZodOptional<z.ZodString>;
519
- filename: z.ZodOptional<z.ZodString>;
520
- file_data: z.ZodOptional<z.ZodString>;
521
- }, z.core.$strip>;
522
- }, z.core.$strip>, z.ZodObject<{
523
- type: z.ZodLiteral<"refusal">;
524
- refusal: z.ZodString;
525
- }, z.core.$strip>, z.ZodObject<{
526
- type: z.ZodString;
527
- }, z.core.$loose>]>>]>>;
528
- tool_call_id: z.ZodOptional<z.ZodString>;
529
- }, z.core.$strip>, z.ZodObject<{
530
- role: z.ZodLiteral<"function">;
531
- name: z.ZodString;
532
- content: z.ZodNullable<z.ZodString>;
533
- }, z.core.$strip>], "role">;
534
- /**
535
- * Permissive: the official OpenAI SDK sets `include_obfuscation: false` by
536
- * default. We only consume `include_usage`, so unknown keys are silently
537
- * stripped rather than 400'd.
538
- */
539
- export declare const streamOptionsSchema: z.ZodObject<{
540
- include_usage: z.ZodOptional<z.ZodBoolean>;
541
- }, z.core.$strip>;
542
- export declare const stopSchema: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>;
543
- export declare const openaiChatRequestSchema: z.ZodObject<{
544
- model: z.ZodString;
545
- messages: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
546
- role: z.ZodLiteral<"system">;
547
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
548
- type: z.ZodLiteral<"text">;
549
- text: z.ZodString;
550
- }, z.core.$strip>, z.ZodObject<{
551
- type: z.ZodLiteral<"image_url">;
552
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
553
- url: z.ZodString;
554
- detail: z.ZodOptional<z.ZodEnum<{
555
- auto: "auto";
556
- high: "high";
557
- low: "low";
558
- }>>;
559
- }, z.core.$strip>]>;
560
- }, z.core.$strip>, z.ZodObject<{
561
- type: z.ZodLiteral<"input_audio">;
562
- input_audio: z.ZodObject<{
563
- data: z.ZodString;
564
- format: z.ZodEnum<{
565
- mp3: "mp3";
566
- wav: "wav";
567
- }>;
568
- }, z.core.$strip>;
569
- }, z.core.$strip>, z.ZodObject<{
570
- type: z.ZodLiteral<"file">;
571
- file: z.ZodObject<{
572
- file_id: z.ZodOptional<z.ZodString>;
573
- filename: z.ZodOptional<z.ZodString>;
574
- file_data: z.ZodOptional<z.ZodString>;
575
- }, z.core.$strip>;
576
- }, z.core.$strip>, z.ZodObject<{
577
- type: z.ZodLiteral<"refusal">;
578
- refusal: z.ZodString;
579
- }, z.core.$strip>, z.ZodObject<{
580
- type: z.ZodString;
581
- }, z.core.$loose>]>>]>;
582
- }, z.core.$strip>, z.ZodObject<{
583
- role: z.ZodLiteral<"developer">;
584
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
585
- type: z.ZodLiteral<"text">;
586
- text: z.ZodString;
587
- }, z.core.$strip>, z.ZodObject<{
588
- type: z.ZodLiteral<"image_url">;
589
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
590
- url: z.ZodString;
591
- detail: z.ZodOptional<z.ZodEnum<{
592
- auto: "auto";
593
- high: "high";
594
- low: "low";
595
- }>>;
596
- }, z.core.$strip>]>;
597
- }, z.core.$strip>, z.ZodObject<{
598
- type: z.ZodLiteral<"input_audio">;
599
- input_audio: z.ZodObject<{
600
- data: z.ZodString;
601
- format: z.ZodEnum<{
602
- mp3: "mp3";
603
- wav: "wav";
604
- }>;
605
- }, z.core.$strip>;
606
- }, z.core.$strip>, z.ZodObject<{
607
- type: z.ZodLiteral<"file">;
608
- file: z.ZodObject<{
609
- file_id: z.ZodOptional<z.ZodString>;
610
- filename: z.ZodOptional<z.ZodString>;
611
- file_data: z.ZodOptional<z.ZodString>;
612
- }, z.core.$strip>;
613
- }, z.core.$strip>, z.ZodObject<{
614
- type: z.ZodLiteral<"refusal">;
615
- refusal: z.ZodString;
616
- }, z.core.$strip>, z.ZodObject<{
617
- type: z.ZodString;
618
- }, z.core.$loose>]>>]>;
619
- }, z.core.$strip>, z.ZodObject<{
620
- role: z.ZodLiteral<"user">;
621
- content: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
622
- type: z.ZodLiteral<"text">;
623
- text: z.ZodString;
624
- }, z.core.$strip>, z.ZodObject<{
625
- type: z.ZodLiteral<"image_url">;
626
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
627
- url: z.ZodString;
628
- detail: z.ZodOptional<z.ZodEnum<{
629
- auto: "auto";
630
- high: "high";
631
- low: "low";
632
- }>>;
633
- }, z.core.$strip>]>;
634
- }, z.core.$strip>, z.ZodObject<{
635
- type: z.ZodLiteral<"input_audio">;
636
- input_audio: z.ZodObject<{
637
- data: z.ZodString;
638
- format: z.ZodEnum<{
639
- mp3: "mp3";
640
- wav: "wav";
641
- }>;
642
- }, z.core.$strip>;
643
- }, z.core.$strip>, z.ZodObject<{
644
- type: z.ZodLiteral<"file">;
645
- file: z.ZodObject<{
646
- file_id: z.ZodOptional<z.ZodString>;
647
- filename: z.ZodOptional<z.ZodString>;
648
- file_data: z.ZodOptional<z.ZodString>;
649
- }, z.core.$strip>;
650
- }, z.core.$strip>, z.ZodObject<{
651
- type: z.ZodLiteral<"refusal">;
652
- refusal: z.ZodString;
653
- }, z.core.$strip>, z.ZodObject<{
654
- type: z.ZodString;
655
- }, z.core.$loose>]>>]>;
656
- }, z.core.$strip>, z.ZodObject<{
657
- role: z.ZodLiteral<"assistant">;
658
- content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
659
- type: z.ZodLiteral<"text">;
660
- text: z.ZodString;
661
- }, z.core.$strip>, z.ZodObject<{
662
- type: z.ZodLiteral<"image_url">;
663
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
664
- url: z.ZodString;
665
- detail: z.ZodOptional<z.ZodEnum<{
666
- auto: "auto";
667
- high: "high";
668
- low: "low";
669
- }>>;
670
- }, z.core.$strip>]>;
671
- }, z.core.$strip>, z.ZodObject<{
672
- type: z.ZodLiteral<"input_audio">;
673
- input_audio: z.ZodObject<{
674
- data: z.ZodString;
675
- format: z.ZodEnum<{
676
- mp3: "mp3";
677
- wav: "wav";
678
- }>;
679
- }, z.core.$strip>;
680
- }, z.core.$strip>, z.ZodObject<{
681
- type: z.ZodLiteral<"file">;
682
- file: z.ZodObject<{
683
- file_id: z.ZodOptional<z.ZodString>;
684
- filename: z.ZodOptional<z.ZodString>;
685
- file_data: z.ZodOptional<z.ZodString>;
686
- }, z.core.$strip>;
687
- }, z.core.$strip>, z.ZodObject<{
688
- type: z.ZodLiteral<"refusal">;
689
- refusal: z.ZodString;
690
- }, z.core.$strip>, z.ZodObject<{
691
- type: z.ZodString;
692
- }, z.core.$loose>]>>]>>;
693
- tool_calls: z.ZodOptional<z.ZodArray<z.ZodObject<{
694
- id: z.ZodString;
695
- type: z.ZodOptional<z.ZodLiteral<"function">>;
696
- function: z.ZodObject<{
697
- name: z.ZodString;
698
- arguments: z.ZodString;
699
- }, z.core.$strip>;
700
- }, z.core.$strip>>>;
701
- }, z.core.$strip>, z.ZodObject<{
702
- role: z.ZodLiteral<"tool">;
703
- content: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
704
- type: z.ZodLiteral<"text">;
705
- text: z.ZodString;
706
- }, z.core.$strip>, z.ZodObject<{
707
- type: z.ZodLiteral<"image_url">;
708
- image_url: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
709
- url: z.ZodString;
710
- detail: z.ZodOptional<z.ZodEnum<{
711
- auto: "auto";
712
- high: "high";
713
- low: "low";
714
- }>>;
715
- }, z.core.$strip>]>;
716
- }, z.core.$strip>, z.ZodObject<{
717
- type: z.ZodLiteral<"input_audio">;
718
- input_audio: z.ZodObject<{
719
- data: z.ZodString;
720
- format: z.ZodEnum<{
721
- mp3: "mp3";
722
- wav: "wav";
723
- }>;
724
- }, z.core.$strip>;
725
- }, z.core.$strip>, z.ZodObject<{
726
- type: z.ZodLiteral<"file">;
727
- file: z.ZodObject<{
728
- file_id: z.ZodOptional<z.ZodString>;
729
- filename: z.ZodOptional<z.ZodString>;
730
- file_data: z.ZodOptional<z.ZodString>;
731
- }, z.core.$strip>;
732
- }, z.core.$strip>, z.ZodObject<{
733
- type: z.ZodLiteral<"refusal">;
734
- refusal: z.ZodString;
735
- }, z.core.$strip>, z.ZodObject<{
736
- type: z.ZodString;
737
- }, z.core.$loose>]>>]>>;
738
- tool_call_id: z.ZodOptional<z.ZodString>;
739
- }, z.core.$strip>, z.ZodObject<{
740
- role: z.ZodLiteral<"function">;
741
- name: z.ZodString;
742
- content: z.ZodNullable<z.ZodString>;
743
- }, z.core.$strip>], "role">>;
744
- tools: z.ZodOptional<z.ZodArray<z.ZodObject<{
745
- type: z.ZodLiteral<"function">;
746
- function: z.ZodObject<{
747
- name: z.ZodString;
748
- description: z.ZodOptional<z.ZodString>;
749
- parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
750
- strict: z.ZodOptional<z.ZodBoolean>;
751
- }, z.core.$strip>;
752
- }, z.core.$strip>>>;
753
- tool_choice: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"auto">, z.ZodLiteral<"none">, z.ZodLiteral<"required">, z.ZodObject<{
754
- type: z.ZodLiteral<"function">;
755
- function: z.ZodObject<{
756
- name: z.ZodString;
757
- }, z.core.$strip>;
758
- }, z.core.$strip>, z.ZodObject<{
759
- type: z.ZodLiteral<"tool">;
760
- name: z.ZodString;
761
- }, z.core.$strip>]>>;
762
- max_tokens: z.ZodOptional<z.ZodNumber>;
763
- max_completion_tokens: z.ZodOptional<z.ZodNumber>;
764
- temperature: z.ZodOptional<z.ZodNumber>;
765
- top_p: z.ZodOptional<z.ZodNumber>;
766
- stop: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
767
- stream: z.ZodOptional<z.ZodBoolean>;
768
- stream_options: z.ZodOptional<z.ZodObject<{
769
- include_usage: z.ZodOptional<z.ZodBoolean>;
770
- }, z.core.$strip>>;
771
- response_format: z.ZodOptional<z.ZodUnknown>;
772
- seed: z.ZodOptional<z.ZodNumber>;
773
- presence_penalty: z.ZodOptional<z.ZodNumber>;
774
- frequency_penalty: z.ZodOptional<z.ZodNumber>;
775
- logit_bias: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
776
- user: z.ZodOptional<z.ZodString>;
777
- reasoning_effort: z.ZodOptional<z.ZodEnum<{
778
- high: "high";
779
- low: "low";
780
- max: "max";
781
- medium: "medium";
782
- minimal: "minimal";
783
- xhigh: "xhigh";
784
- }>>;
785
- parallel_tool_calls: z.ZodOptional<z.ZodBoolean>;
786
- service_tier: z.ZodOptional<z.ZodEnum<{
787
- auto: "auto";
788
- default: "default";
789
- flex: "flex";
790
- priority: "priority";
791
- scale: "scale";
792
- }>>;
793
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
794
- logprobs: z.ZodOptional<z.ZodUnknown>;
795
- top_logprobs: z.ZodOptional<z.ZodUnknown>;
796
- prediction: z.ZodOptional<z.ZodUnknown>;
797
- modalities: z.ZodOptional<z.ZodUnknown>;
798
- audio: z.ZodOptional<z.ZodUnknown>;
799
- store: z.ZodOptional<z.ZodUnknown>;
800
- prompt_cache_key: z.ZodOptional<z.ZodUnknown>;
801
- safety_identifier: z.ZodOptional<z.ZodUnknown>;
802
- n: z.ZodOptional<z.ZodUnknown>;
803
- web_search_options: z.ZodOptional<z.ZodUnknown>;
804
- }, z.core.$strip>;
805
- /**
806
- * Public types are sourced from the OpenAI SDK so the gateway stays in
807
- * lock-step with the canonical API surface; the schemas above are runtime
808
- * validators for the subset we actually accept.
809
- */
810
- export type OpenAIChatRequest = ChatCompletionCreateParams;
811
- export type OpenAIChatMessage = ChatCompletionMessageParam;
812
- export type OpenAIChatToolCall = ChatCompletionMessageToolCall;
813
- export type OpenAIChatTool = ChatCompletionTool;
814
- export type OpenAIChatToolChoice = ChatCompletionToolChoiceOption;
815
- export type OpenAIChatContentPart = ChatCompletionContentPart;