@opencode/ai 2.1.3 → 2.1.4

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 (106) hide show
  1. package/dist/experimental/evaluation.js +3 -10
  2. package/dist/image-client.d.ts +8 -8
  3. package/dist/image.d.ts +148 -148
  4. package/dist/promise.d.ts +120 -120
  5. package/dist/protocols/alibaba-chat.d.ts +12 -12
  6. package/dist/protocols/alibaba-messages.d.ts +11 -11
  7. package/dist/protocols/alibaba-responses.d.ts +35 -35
  8. package/dist/protocols/anthropic-messages.d.ts +40 -44
  9. package/dist/protocols/anthropic-messages.js +3 -3
  10. package/dist/protocols/bedrock-converse.d.ts +30 -32
  11. package/dist/protocols/bedrock-converse.js +2 -3
  12. package/dist/protocols/cartesia-speech.d.ts +32 -32
  13. package/dist/protocols/cohere-chat.d.ts +7 -8
  14. package/dist/protocols/deepgram-speech.d.ts +32 -32
  15. package/dist/protocols/elevenlabs-speech.d.ts +32 -32
  16. package/dist/protocols/gemini.d.ts +34 -34
  17. package/dist/protocols/gemini.js +2 -2
  18. package/dist/protocols/google-interactions.d.ts +14 -14
  19. package/dist/protocols/google-interactions.js +2 -2
  20. package/dist/protocols/google-speech.d.ts +32 -32
  21. package/dist/protocols/google-transcription.d.ts +32 -32
  22. package/dist/protocols/meta-messages.d.ts +23 -23
  23. package/dist/protocols/meta-responses.d.ts +78 -78
  24. package/dist/protocols/mistral-chat.d.ts +81 -78
  25. package/dist/protocols/mistral-chat.js +2 -1
  26. package/dist/protocols/open-responses-channel.js +47 -46
  27. package/dist/protocols/open-responses-continuation.d.ts +8 -2
  28. package/dist/protocols/open-responses-continuation.js +3 -1
  29. package/dist/protocols/open-responses.d.ts +398 -398
  30. package/dist/protocols/open-responses.js +8 -7
  31. package/dist/protocols/openai-chat.d.ts +60 -60
  32. package/dist/protocols/openai-chat.js +3 -3
  33. package/dist/protocols/openai-compatible-chat.d.ts +13 -14
  34. package/dist/protocols/openai-compatible-responses.d.ts +36 -37
  35. package/dist/protocols/openai-images.d.ts +32 -32
  36. package/dist/protocols/openai-responses.d.ts +235 -235
  37. package/dist/protocols/openai-responses.js +1 -1
  38. package/dist/protocols/openai-speech.d.ts +32 -32
  39. package/dist/protocols/openai-transcription.d.ts +32 -32
  40. package/dist/protocols/openai-transcription.js +12 -7
  41. package/dist/protocols/utils/partial-json-options.d.ts +0 -1
  42. package/dist/protocols/utils/partial-json-options.js +0 -1
  43. package/dist/protocols/utils/tool-stream.d.ts +1 -1
  44. package/dist/protocols/venice-chat.d.ts +52 -53
  45. package/dist/protocols/venice-chat.js +6 -5
  46. package/dist/protocols/xai-responses.d.ts +78 -78
  47. package/dist/protocols/zai-chat.d.ts +33 -30
  48. package/dist/protocols/zai-chat.js +8 -3
  49. package/dist/protocols/zai-messages.d.ts +21 -19
  50. package/dist/protocols/zai-messages.js +3 -2
  51. package/dist/provider-error.js +5 -3
  52. package/dist/providers/alibaba.d.ts +69 -69
  53. package/dist/providers/amazon-bedrock-mantle.d.ts +202 -202
  54. package/dist/providers/amazon-bedrock.d.ts +15 -15
  55. package/dist/providers/anthropic-compatible.d.ts +13 -13
  56. package/dist/providers/anthropic.d.ts +13 -13
  57. package/dist/providers/azure.d.ts +106 -106
  58. package/dist/providers/baseten.d.ts +24 -24
  59. package/dist/providers/cerebras.d.ts +24 -24
  60. package/dist/providers/cloudflare-ai-gateway.d.ts +230 -227
  61. package/dist/providers/cloudflare-ai-gateway.js +1 -2
  62. package/dist/providers/cloudflare-workers-ai.d.ts +24 -24
  63. package/dist/providers/cohere.d.ts +75 -75
  64. package/dist/providers/deepinfra.d.ts +24 -24
  65. package/dist/providers/deepseek.d.ts +24 -24
  66. package/dist/providers/digitalocean.d.ts +36 -36
  67. package/dist/providers/fireworks.d.ts +24 -24
  68. package/dist/providers/google-vertex-chat.d.ts +12 -12
  69. package/dist/providers/google-vertex-messages.d.ts +13 -13
  70. package/dist/providers/google-vertex-mistral.d.ts +17 -17
  71. package/dist/providers/google-vertex-responses.d.ts +35 -35
  72. package/dist/providers/google-vertex.d.ts +17 -17
  73. package/dist/providers/google-vertex.js +2 -2
  74. package/dist/providers/google.d.ts +17 -17
  75. package/dist/providers/groq.d.ts +24 -24
  76. package/dist/providers/meta.d.ts +179 -179
  77. package/dist/providers/minimax.d.ts +71 -71
  78. package/dist/providers/mistral.d.ts +28 -28
  79. package/dist/providers/moonshot.d.ts +202 -202
  80. package/dist/providers/open-responses-options.d.ts +0 -1
  81. package/dist/providers/open-responses-options.js +1 -1
  82. package/dist/providers/openai-compatible-responses.d.ts +35 -35
  83. package/dist/providers/openai-compatible.d.ts +12 -12
  84. package/dist/providers/openai-compatible.js +1 -1
  85. package/dist/providers/openai-options.d.ts +0 -1
  86. package/dist/providers/openai-options.js +0 -1
  87. package/dist/providers/openai.d.ts +100 -100
  88. package/dist/providers/openrouter.d.ts +36 -36
  89. package/dist/providers/togetherai.d.ts +24 -24
  90. package/dist/providers/venice.d.ts +195 -20
  91. package/dist/providers/xai.d.ts +12 -12
  92. package/dist/providers/zai-coding-plan.d.ts +149 -69
  93. package/dist/providers/zai.d.ts +84 -19
  94. package/dist/route/auth-options.d.ts +0 -3
  95. package/dist/route/auth.d.ts +0 -2
  96. package/dist/route/auth.js +0 -2
  97. package/dist/route/client.d.ts +0 -2
  98. package/dist/route/client.js +3 -4
  99. package/dist/route/executor-service.js +1 -1
  100. package/dist/speech-client.d.ts +8 -8
  101. package/dist/speech.d.ts +148 -148
  102. package/dist/transcription-client.d.ts +8 -8
  103. package/dist/transcription.d.ts +148 -148
  104. package/dist/video-client.d.ts +8 -8
  105. package/dist/video.d.ts +114 -114
  106. package/package.json +6 -5
@@ -883,9 +883,6 @@ export declare const lowerTool: (protocolName: string, tool: ToolDefinition) =>
883
883
  strict: boolean;
884
884
  }, AIError, never>;
885
885
  export declare const lowerTools: (tools: ReadonlyArray<ToolDefinition>, adapter: ProviderAdapter) => Effect.Effect<({
886
- readonly [x: string]: unknown;
887
- readonly type: string;
888
- } | {
889
886
  readonly type: "function";
890
887
  readonly name: string;
891
888
  readonly description: string;
@@ -893,6 +890,9 @@ export declare const lowerTools: (tools: ReadonlyArray<ToolDefinition>, adapter:
893
890
  readonly [x: string]: unknown;
894
891
  };
895
892
  readonly strict?: boolean | undefined;
893
+ } | {
894
+ readonly [x: string]: unknown;
895
+ readonly type: string;
896
896
  })[], AIError, never>;
897
897
  export declare const lowerToolChoice: (protocolName: string, toolChoice: NonNullable<LLMRequest["toolChoice"]>) => Effect.Effect<"auto" | "none" | "required" | {
898
898
  type: "function";
@@ -903,55 +903,10 @@ export declare const lowerConversation: (request: LLMRequest<import("../schema/o
903
903
  }, import("../route.js").CompactionOperations | undefined>>, adapter: ProviderAdapter) => Effect.Effect<{
904
904
  model: string & import("effect/Brand").Brand<"AI.ModelID">;
905
905
  input: ({
906
- readonly [x: string]: unknown;
907
- readonly type: "web_search_call";
908
- readonly id: string;
909
- readonly status?: string | undefined;
910
- readonly action?: {
911
- readonly [x: string]: unknown;
912
- } | null | undefined;
913
- } | {
914
- readonly [x: string]: unknown;
915
- readonly type: "file_search_call";
916
- readonly id: string;
917
- readonly status?: string | undefined;
918
- readonly queries?: readonly string[] | undefined;
919
- readonly results?: readonly {
920
- readonly [x: string]: unknown;
921
- }[] | null | undefined;
922
- } | {
923
- readonly [x: string]: unknown;
924
- readonly type: "code_interpreter_call";
925
- readonly id: string;
926
- readonly status?: string | undefined;
927
- readonly code?: string | null | undefined;
928
- readonly container_id?: string | null | undefined;
929
- readonly outputs?: readonly {
930
- readonly [x: string]: unknown;
931
- }[] | null | undefined;
932
- } | {
933
- readonly [x: string]: unknown;
934
- readonly type: "mcp_call";
935
- readonly id: string;
936
- readonly status?: string | undefined;
937
- readonly server_label?: string | undefined;
938
- readonly name?: string | undefined;
939
- readonly arguments?: string | undefined;
940
- readonly output?: string | null | undefined;
941
- readonly error?: unknown;
942
- } | {
943
906
  readonly type: "configuration_update";
944
907
  readonly reasoning: {
945
908
  readonly effort: OpenResponsesOptions.ReasoningEffort;
946
909
  };
947
- } | {
948
- readonly [x: string]: unknown;
949
- readonly type: string;
950
- readonly id: string;
951
- } | {
952
- readonly type: "compaction";
953
- readonly id?: string | null | undefined;
954
- readonly encrypted_content: string;
955
910
  } | {
956
911
  readonly type: "message";
957
912
  readonly role: "system";
@@ -960,10 +915,45 @@ export declare const lowerConversation: (request: LLMRequest<import("../schema/o
960
915
  readonly type: "message";
961
916
  readonly role: "developer";
962
917
  readonly content: string;
918
+ } | {
919
+ readonly type: "function_call_output";
920
+ readonly call_id: string;
921
+ readonly output: string | readonly ({
922
+ readonly type: "input_text";
923
+ readonly text: string;
924
+ } | {
925
+ readonly type: "input_video";
926
+ readonly video_url: string;
927
+ } | {
928
+ readonly type: "input_image";
929
+ readonly image_url: string;
930
+ readonly detail?: string | undefined;
931
+ } | {
932
+ readonly type: "input_file";
933
+ readonly filename: string;
934
+ readonly detail?: string | undefined;
935
+ readonly file_data?: string | undefined;
936
+ readonly file_url?: string | undefined;
937
+ })[];
938
+ } | {
939
+ readonly type: "reasoning";
940
+ readonly id?: string | undefined;
941
+ readonly summary: readonly {
942
+ readonly type: "summary_text";
943
+ readonly text: string;
944
+ }[];
945
+ readonly encrypted_content?: string | null | undefined;
946
+ } | {
947
+ readonly type: "compaction";
948
+ readonly id?: string | null | undefined;
949
+ readonly encrypted_content: string;
963
950
  } | {
964
951
  readonly type: "message";
965
952
  readonly role: "user";
966
953
  readonly content: readonly ({
954
+ readonly type: "input_text";
955
+ readonly text: string;
956
+ } | {
967
957
  readonly type: "input_image";
968
958
  readonly image_url: string;
969
959
  readonly detail?: string | undefined;
@@ -973,9 +963,6 @@ export declare const lowerConversation: (request: LLMRequest<import("../schema/o
973
963
  readonly detail?: string | undefined;
974
964
  readonly file_data?: string | undefined;
975
965
  readonly file_url?: string | undefined;
976
- } | {
977
- readonly type: "input_text";
978
- readonly text: string;
979
966
  })[];
980
967
  readonly id?: string | undefined;
981
968
  readonly status?: string | undefined;
@@ -989,14 +976,6 @@ export declare const lowerConversation: (request: LLMRequest<import("../schema/o
989
976
  }[];
990
977
  readonly phase?: "commentary" | "final_answer" | null | undefined;
991
978
  readonly status?: string | undefined;
992
- } | {
993
- readonly type: "reasoning";
994
- readonly id?: string | undefined;
995
- readonly summary: readonly {
996
- readonly type: "summary_text";
997
- readonly text: string;
998
- }[];
999
- readonly encrypted_content?: string | null | undefined;
1000
979
  } | {
1001
980
  readonly type: "function_call";
1002
981
  readonly id?: string | undefined;
@@ -1005,25 +984,46 @@ export declare const lowerConversation: (request: LLMRequest<import("../schema/o
1005
984
  readonly namespace?: string | undefined;
1006
985
  readonly arguments: string;
1007
986
  } | {
1008
- readonly type: "function_call_output";
1009
- readonly call_id: string;
1010
- readonly output: string | readonly ({
1011
- readonly type: "input_image";
1012
- readonly image_url: string;
1013
- readonly detail?: string | undefined;
1014
- } | {
1015
- readonly type: "input_file";
1016
- readonly filename: string;
1017
- readonly detail?: string | undefined;
1018
- readonly file_data?: string | undefined;
1019
- readonly file_url?: string | undefined;
1020
- } | {
1021
- readonly type: "input_text";
1022
- readonly text: string;
1023
- } | {
1024
- readonly type: "input_video";
1025
- readonly video_url: string;
1026
- })[];
987
+ readonly [x: string]: unknown;
988
+ readonly type: "web_search_call";
989
+ readonly id: string;
990
+ readonly status?: string | undefined;
991
+ readonly action?: {
992
+ readonly [x: string]: unknown;
993
+ } | null | undefined;
994
+ } | {
995
+ readonly [x: string]: unknown;
996
+ readonly type: "file_search_call";
997
+ readonly id: string;
998
+ readonly status?: string | undefined;
999
+ readonly queries?: readonly string[] | undefined;
1000
+ readonly results?: readonly {
1001
+ readonly [x: string]: unknown;
1002
+ }[] | null | undefined;
1003
+ } | {
1004
+ readonly [x: string]: unknown;
1005
+ readonly type: "code_interpreter_call";
1006
+ readonly id: string;
1007
+ readonly status?: string | undefined;
1008
+ readonly code?: string | null | undefined;
1009
+ readonly container_id?: string | null | undefined;
1010
+ readonly outputs?: readonly {
1011
+ readonly [x: string]: unknown;
1012
+ }[] | null | undefined;
1013
+ } | {
1014
+ readonly [x: string]: unknown;
1015
+ readonly type: "mcp_call";
1016
+ readonly id: string;
1017
+ readonly status?: string | undefined;
1018
+ readonly server_label?: string | undefined;
1019
+ readonly name?: string | undefined;
1020
+ readonly arguments?: string | undefined;
1021
+ readonly output?: string | null | undefined;
1022
+ readonly error?: unknown;
1023
+ } | {
1024
+ readonly [x: string]: unknown;
1025
+ readonly type: string;
1026
+ readonly id: string;
1027
1027
  })[];
1028
1028
  instructions?: string | undefined;
1029
1029
  }, AIError, never>;
@@ -1057,8 +1057,8 @@ export declare const lowerGeneration: (request: LLMRequest, options?: OpenRespon
1057
1057
  parallel_tool_calls?: boolean | undefined;
1058
1058
  truncation?: "auto" | "disabled" | undefined;
1059
1059
  };
1060
- export declare const resolveParallelToolCalls: (request: LLMRequest) => boolean | undefined;
1061
- export declare const allowedToolChoice: (request: LLMRequest) => {
1060
+ export declare const resolveParallelToolCalls: (request: LLMRequest, options?: OpenResponsesOptions.Resolved) => boolean | undefined;
1061
+ export declare const allowedToolChoice: (request: LLMRequest, options?: OpenResponsesOptions.Resolved) => {
1062
1062
  type: "allowed_tools";
1063
1063
  mode: "auto" | "none" | "required";
1064
1064
  tools: {
@@ -1071,55 +1071,10 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1071
1071
  }, import("../route.js").CompactionOperations | undefined>>, adapter: ProviderAdapter) => Effect.Effect<{
1072
1072
  model: string & import("effect/Brand").Brand<"AI.ModelID">;
1073
1073
  input: ({
1074
- readonly [x: string]: unknown;
1075
- readonly type: "web_search_call";
1076
- readonly id: string;
1077
- readonly status?: string | undefined;
1078
- readonly action?: {
1079
- readonly [x: string]: unknown;
1080
- } | null | undefined;
1081
- } | {
1082
- readonly [x: string]: unknown;
1083
- readonly type: "file_search_call";
1084
- readonly id: string;
1085
- readonly status?: string | undefined;
1086
- readonly queries?: readonly string[] | undefined;
1087
- readonly results?: readonly {
1088
- readonly [x: string]: unknown;
1089
- }[] | null | undefined;
1090
- } | {
1091
- readonly [x: string]: unknown;
1092
- readonly type: "code_interpreter_call";
1093
- readonly id: string;
1094
- readonly status?: string | undefined;
1095
- readonly code?: string | null | undefined;
1096
- readonly container_id?: string | null | undefined;
1097
- readonly outputs?: readonly {
1098
- readonly [x: string]: unknown;
1099
- }[] | null | undefined;
1100
- } | {
1101
- readonly [x: string]: unknown;
1102
- readonly type: "mcp_call";
1103
- readonly id: string;
1104
- readonly status?: string | undefined;
1105
- readonly server_label?: string | undefined;
1106
- readonly name?: string | undefined;
1107
- readonly arguments?: string | undefined;
1108
- readonly output?: string | null | undefined;
1109
- readonly error?: unknown;
1110
- } | {
1111
1074
  readonly type: "configuration_update";
1112
1075
  readonly reasoning: {
1113
1076
  readonly effort: OpenResponsesOptions.ReasoningEffort;
1114
1077
  };
1115
- } | {
1116
- readonly [x: string]: unknown;
1117
- readonly type: string;
1118
- readonly id: string;
1119
- } | {
1120
- readonly type: "compaction";
1121
- readonly id?: string | null | undefined;
1122
- readonly encrypted_content: string;
1123
1078
  } | {
1124
1079
  readonly type: "message";
1125
1080
  readonly role: "system";
@@ -1128,10 +1083,45 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1128
1083
  readonly type: "message";
1129
1084
  readonly role: "developer";
1130
1085
  readonly content: string;
1086
+ } | {
1087
+ readonly type: "function_call_output";
1088
+ readonly call_id: string;
1089
+ readonly output: string | readonly ({
1090
+ readonly type: "input_text";
1091
+ readonly text: string;
1092
+ } | {
1093
+ readonly type: "input_video";
1094
+ readonly video_url: string;
1095
+ } | {
1096
+ readonly type: "input_image";
1097
+ readonly image_url: string;
1098
+ readonly detail?: string | undefined;
1099
+ } | {
1100
+ readonly type: "input_file";
1101
+ readonly filename: string;
1102
+ readonly detail?: string | undefined;
1103
+ readonly file_data?: string | undefined;
1104
+ readonly file_url?: string | undefined;
1105
+ })[];
1106
+ } | {
1107
+ readonly type: "reasoning";
1108
+ readonly id?: string | undefined;
1109
+ readonly summary: readonly {
1110
+ readonly type: "summary_text";
1111
+ readonly text: string;
1112
+ }[];
1113
+ readonly encrypted_content?: string | null | undefined;
1114
+ } | {
1115
+ readonly type: "compaction";
1116
+ readonly id?: string | null | undefined;
1117
+ readonly encrypted_content: string;
1131
1118
  } | {
1132
1119
  readonly type: "message";
1133
1120
  readonly role: "user";
1134
1121
  readonly content: readonly ({
1122
+ readonly type: "input_text";
1123
+ readonly text: string;
1124
+ } | {
1135
1125
  readonly type: "input_image";
1136
1126
  readonly image_url: string;
1137
1127
  readonly detail?: string | undefined;
@@ -1141,9 +1131,6 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1141
1131
  readonly detail?: string | undefined;
1142
1132
  readonly file_data?: string | undefined;
1143
1133
  readonly file_url?: string | undefined;
1144
- } | {
1145
- readonly type: "input_text";
1146
- readonly text: string;
1147
1134
  })[];
1148
1135
  readonly id?: string | undefined;
1149
1136
  readonly status?: string | undefined;
@@ -1157,14 +1144,6 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1157
1144
  }[];
1158
1145
  readonly phase?: "commentary" | "final_answer" | null | undefined;
1159
1146
  readonly status?: string | undefined;
1160
- } | {
1161
- readonly type: "reasoning";
1162
- readonly id?: string | undefined;
1163
- readonly summary: readonly {
1164
- readonly type: "summary_text";
1165
- readonly text: string;
1166
- }[];
1167
- readonly encrypted_content?: string | null | undefined;
1168
1147
  } | {
1169
1148
  readonly type: "function_call";
1170
1149
  readonly id?: string | undefined;
@@ -1173,25 +1152,46 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1173
1152
  readonly namespace?: string | undefined;
1174
1153
  readonly arguments: string;
1175
1154
  } | {
1176
- readonly type: "function_call_output";
1177
- readonly call_id: string;
1178
- readonly output: string | readonly ({
1179
- readonly type: "input_image";
1180
- readonly image_url: string;
1181
- readonly detail?: string | undefined;
1182
- } | {
1183
- readonly type: "input_file";
1184
- readonly filename: string;
1185
- readonly detail?: string | undefined;
1186
- readonly file_data?: string | undefined;
1187
- readonly file_url?: string | undefined;
1188
- } | {
1189
- readonly type: "input_text";
1190
- readonly text: string;
1191
- } | {
1192
- readonly type: "input_video";
1193
- readonly video_url: string;
1194
- })[];
1155
+ readonly [x: string]: unknown;
1156
+ readonly type: "web_search_call";
1157
+ readonly id: string;
1158
+ readonly status?: string | undefined;
1159
+ readonly action?: {
1160
+ readonly [x: string]: unknown;
1161
+ } | null | undefined;
1162
+ } | {
1163
+ readonly [x: string]: unknown;
1164
+ readonly type: "file_search_call";
1165
+ readonly id: string;
1166
+ readonly status?: string | undefined;
1167
+ readonly queries?: readonly string[] | undefined;
1168
+ readonly results?: readonly {
1169
+ readonly [x: string]: unknown;
1170
+ }[] | null | undefined;
1171
+ } | {
1172
+ readonly [x: string]: unknown;
1173
+ readonly type: "code_interpreter_call";
1174
+ readonly id: string;
1175
+ readonly status?: string | undefined;
1176
+ readonly code?: string | null | undefined;
1177
+ readonly container_id?: string | null | undefined;
1178
+ readonly outputs?: readonly {
1179
+ readonly [x: string]: unknown;
1180
+ }[] | null | undefined;
1181
+ } | {
1182
+ readonly [x: string]: unknown;
1183
+ readonly type: "mcp_call";
1184
+ readonly id: string;
1185
+ readonly status?: string | undefined;
1186
+ readonly server_label?: string | undefined;
1187
+ readonly name?: string | undefined;
1188
+ readonly arguments?: string | undefined;
1189
+ readonly output?: string | null | undefined;
1190
+ readonly error?: unknown;
1191
+ } | {
1192
+ readonly [x: string]: unknown;
1193
+ readonly type: string;
1194
+ readonly id: string;
1195
1195
  })[];
1196
1196
  instructions?: string | undefined;
1197
1197
  stream: true;
@@ -1223,9 +1223,6 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1223
1223
  parallel_tool_calls?: boolean | undefined;
1224
1224
  truncation?: "auto" | "disabled" | undefined;
1225
1225
  tools: ({
1226
- readonly [x: string]: unknown;
1227
- readonly type: string;
1228
- } | {
1229
1226
  readonly type: "function";
1230
1227
  readonly name: string;
1231
1228
  readonly description: string;
@@ -1233,6 +1230,9 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1233
1230
  readonly [x: string]: unknown;
1234
1231
  };
1235
1232
  readonly strict?: boolean | undefined;
1233
+ } | {
1234
+ readonly [x: string]: unknown;
1235
+ readonly type: string;
1236
1236
  })[] | undefined;
1237
1237
  tool_choice: "auto" | "none" | "required" | {
1238
1238
  type: "function";
@@ -1249,55 +1249,10 @@ export declare const fromRequestWithAdapter: (request: LLMRequest<import("../sch
1249
1249
  export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1250
1250
  model: string & import("effect/Brand").Brand<"AI.ModelID">;
1251
1251
  input: ({
1252
- readonly [x: string]: unknown;
1253
- readonly type: "web_search_call";
1254
- readonly id: string;
1255
- readonly status?: string | undefined;
1256
- readonly action?: {
1257
- readonly [x: string]: unknown;
1258
- } | null | undefined;
1259
- } | {
1260
- readonly [x: string]: unknown;
1261
- readonly type: "file_search_call";
1262
- readonly id: string;
1263
- readonly status?: string | undefined;
1264
- readonly queries?: readonly string[] | undefined;
1265
- readonly results?: readonly {
1266
- readonly [x: string]: unknown;
1267
- }[] | null | undefined;
1268
- } | {
1269
- readonly [x: string]: unknown;
1270
- readonly type: "code_interpreter_call";
1271
- readonly id: string;
1272
- readonly status?: string | undefined;
1273
- readonly code?: string | null | undefined;
1274
- readonly container_id?: string | null | undefined;
1275
- readonly outputs?: readonly {
1276
- readonly [x: string]: unknown;
1277
- }[] | null | undefined;
1278
- } | {
1279
- readonly [x: string]: unknown;
1280
- readonly type: "mcp_call";
1281
- readonly id: string;
1282
- readonly status?: string | undefined;
1283
- readonly server_label?: string | undefined;
1284
- readonly name?: string | undefined;
1285
- readonly arguments?: string | undefined;
1286
- readonly output?: string | null | undefined;
1287
- readonly error?: unknown;
1288
- } | {
1289
1252
  readonly type: "configuration_update";
1290
1253
  readonly reasoning: {
1291
1254
  readonly effort: OpenResponsesOptions.ReasoningEffort;
1292
1255
  };
1293
- } | {
1294
- readonly [x: string]: unknown;
1295
- readonly type: string;
1296
- readonly id: string;
1297
- } | {
1298
- readonly type: "compaction";
1299
- readonly id?: string | null | undefined;
1300
- readonly encrypted_content: string;
1301
1256
  } | {
1302
1257
  readonly type: "message";
1303
1258
  readonly role: "system";
@@ -1306,10 +1261,45 @@ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1306
1261
  readonly type: "message";
1307
1262
  readonly role: "developer";
1308
1263
  readonly content: string;
1264
+ } | {
1265
+ readonly type: "function_call_output";
1266
+ readonly call_id: string;
1267
+ readonly output: string | readonly ({
1268
+ readonly type: "input_text";
1269
+ readonly text: string;
1270
+ } | {
1271
+ readonly type: "input_video";
1272
+ readonly video_url: string;
1273
+ } | {
1274
+ readonly type: "input_image";
1275
+ readonly image_url: string;
1276
+ readonly detail?: string | undefined;
1277
+ } | {
1278
+ readonly type: "input_file";
1279
+ readonly filename: string;
1280
+ readonly detail?: string | undefined;
1281
+ readonly file_data?: string | undefined;
1282
+ readonly file_url?: string | undefined;
1283
+ })[];
1284
+ } | {
1285
+ readonly type: "reasoning";
1286
+ readonly id?: string | undefined;
1287
+ readonly summary: readonly {
1288
+ readonly type: "summary_text";
1289
+ readonly text: string;
1290
+ }[];
1291
+ readonly encrypted_content?: string | null | undefined;
1292
+ } | {
1293
+ readonly type: "compaction";
1294
+ readonly id?: string | null | undefined;
1295
+ readonly encrypted_content: string;
1309
1296
  } | {
1310
1297
  readonly type: "message";
1311
1298
  readonly role: "user";
1312
1299
  readonly content: readonly ({
1300
+ readonly type: "input_text";
1301
+ readonly text: string;
1302
+ } | {
1313
1303
  readonly type: "input_image";
1314
1304
  readonly image_url: string;
1315
1305
  readonly detail?: string | undefined;
@@ -1319,9 +1309,6 @@ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1319
1309
  readonly detail?: string | undefined;
1320
1310
  readonly file_data?: string | undefined;
1321
1311
  readonly file_url?: string | undefined;
1322
- } | {
1323
- readonly type: "input_text";
1324
- readonly text: string;
1325
1312
  })[];
1326
1313
  readonly id?: string | undefined;
1327
1314
  readonly status?: string | undefined;
@@ -1335,14 +1322,6 @@ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1335
1322
  }[];
1336
1323
  readonly phase?: "commentary" | "final_answer" | null | undefined;
1337
1324
  readonly status?: string | undefined;
1338
- } | {
1339
- readonly type: "reasoning";
1340
- readonly id?: string | undefined;
1341
- readonly summary: readonly {
1342
- readonly type: "summary_text";
1343
- readonly text: string;
1344
- }[];
1345
- readonly encrypted_content?: string | null | undefined;
1346
1325
  } | {
1347
1326
  readonly type: "function_call";
1348
1327
  readonly id?: string | undefined;
@@ -1351,25 +1330,46 @@ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1351
1330
  readonly namespace?: string | undefined;
1352
1331
  readonly arguments: string;
1353
1332
  } | {
1354
- readonly type: "function_call_output";
1355
- readonly call_id: string;
1356
- readonly output: string | readonly ({
1357
- readonly type: "input_image";
1358
- readonly image_url: string;
1359
- readonly detail?: string | undefined;
1360
- } | {
1361
- readonly type: "input_file";
1362
- readonly filename: string;
1363
- readonly detail?: string | undefined;
1364
- readonly file_data?: string | undefined;
1365
- readonly file_url?: string | undefined;
1366
- } | {
1367
- readonly type: "input_text";
1368
- readonly text: string;
1369
- } | {
1370
- readonly type: "input_video";
1371
- readonly video_url: string;
1372
- })[];
1333
+ readonly [x: string]: unknown;
1334
+ readonly type: "web_search_call";
1335
+ readonly id: string;
1336
+ readonly status?: string | undefined;
1337
+ readonly action?: {
1338
+ readonly [x: string]: unknown;
1339
+ } | null | undefined;
1340
+ } | {
1341
+ readonly [x: string]: unknown;
1342
+ readonly type: "file_search_call";
1343
+ readonly id: string;
1344
+ readonly status?: string | undefined;
1345
+ readonly queries?: readonly string[] | undefined;
1346
+ readonly results?: readonly {
1347
+ readonly [x: string]: unknown;
1348
+ }[] | null | undefined;
1349
+ } | {
1350
+ readonly [x: string]: unknown;
1351
+ readonly type: "code_interpreter_call";
1352
+ readonly id: string;
1353
+ readonly status?: string | undefined;
1354
+ readonly code?: string | null | undefined;
1355
+ readonly container_id?: string | null | undefined;
1356
+ readonly outputs?: readonly {
1357
+ readonly [x: string]: unknown;
1358
+ }[] | null | undefined;
1359
+ } | {
1360
+ readonly [x: string]: unknown;
1361
+ readonly type: "mcp_call";
1362
+ readonly id: string;
1363
+ readonly status?: string | undefined;
1364
+ readonly server_label?: string | undefined;
1365
+ readonly name?: string | undefined;
1366
+ readonly arguments?: string | undefined;
1367
+ readonly output?: string | null | undefined;
1368
+ readonly error?: unknown;
1369
+ } | {
1370
+ readonly [x: string]: unknown;
1371
+ readonly type: string;
1372
+ readonly id: string;
1373
1373
  })[];
1374
1374
  instructions?: string | undefined;
1375
1375
  stream: true;
@@ -1401,9 +1401,6 @@ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1401
1401
  parallel_tool_calls?: boolean | undefined;
1402
1402
  truncation?: "auto" | "disabled" | undefined;
1403
1403
  tools: ({
1404
- readonly [x: string]: unknown;
1405
- readonly type: string;
1406
- } | {
1407
1404
  readonly type: "function";
1408
1405
  readonly name: string;
1409
1406
  readonly description: string;
@@ -1411,6 +1408,9 @@ export declare const fromRequest: (request: LLMRequest) => Effect.Effect<{
1411
1408
  readonly [x: string]: unknown;
1412
1409
  };
1413
1410
  readonly strict?: boolean | undefined;
1411
+ } | {
1412
+ readonly [x: string]: unknown;
1413
+ readonly type: string;
1414
1414
  })[] | undefined;
1415
1415
  tool_choice: "auto" | "none" | "required" | {
1416
1416
  type: "function";
@@ -1662,6 +1662,87 @@ export declare const initial: (request: LLMRequest, adapter?: ProviderAdapter) =
1662
1662
  export declare const protocol: Protocol<{
1663
1663
  readonly model: string;
1664
1664
  readonly input: readonly ({
1665
+ readonly type: "configuration_update";
1666
+ readonly reasoning: {
1667
+ readonly effort: OpenResponsesOptions.ReasoningEffort;
1668
+ };
1669
+ } | {
1670
+ readonly type: "message";
1671
+ readonly role: "system";
1672
+ readonly content: string;
1673
+ } | {
1674
+ readonly type: "message";
1675
+ readonly role: "developer";
1676
+ readonly content: string;
1677
+ } | {
1678
+ readonly type: "function_call_output";
1679
+ readonly call_id: string;
1680
+ readonly output: string | readonly ({
1681
+ readonly type: "input_text";
1682
+ readonly text: string;
1683
+ } | {
1684
+ readonly type: "input_video";
1685
+ readonly video_url: string;
1686
+ } | {
1687
+ readonly type: "input_image";
1688
+ readonly image_url: string;
1689
+ readonly detail?: string | undefined;
1690
+ } | {
1691
+ readonly type: "input_file";
1692
+ readonly filename: string;
1693
+ readonly detail?: string | undefined;
1694
+ readonly file_data?: string | undefined;
1695
+ readonly file_url?: string | undefined;
1696
+ })[];
1697
+ } | {
1698
+ readonly type: "reasoning";
1699
+ readonly id?: string | undefined;
1700
+ readonly summary: readonly {
1701
+ readonly type: "summary_text";
1702
+ readonly text: string;
1703
+ }[];
1704
+ readonly encrypted_content?: string | null | undefined;
1705
+ } | {
1706
+ readonly type: "compaction";
1707
+ readonly id?: string | null | undefined;
1708
+ readonly encrypted_content: string;
1709
+ } | {
1710
+ readonly type: "message";
1711
+ readonly role: "user";
1712
+ readonly content: readonly ({
1713
+ readonly type: "input_text";
1714
+ readonly text: string;
1715
+ } | {
1716
+ readonly type: "input_image";
1717
+ readonly image_url: string;
1718
+ readonly detail?: string | undefined;
1719
+ } | {
1720
+ readonly type: "input_file";
1721
+ readonly filename: string;
1722
+ readonly detail?: string | undefined;
1723
+ readonly file_data?: string | undefined;
1724
+ readonly file_url?: string | undefined;
1725
+ })[];
1726
+ readonly id?: string | undefined;
1727
+ readonly status?: string | undefined;
1728
+ } | {
1729
+ readonly type: "message";
1730
+ readonly id?: string | undefined;
1731
+ readonly role: "assistant";
1732
+ readonly content: readonly {
1733
+ readonly type: "output_text";
1734
+ readonly text: string;
1735
+ }[];
1736
+ readonly phase?: "commentary" | "final_answer" | null | undefined;
1737
+ readonly status?: string | undefined;
1738
+ } | {
1739
+ readonly type: "function_call";
1740
+ readonly id?: string | undefined;
1741
+ readonly call_id: string;
1742
+ readonly name: string;
1743
+ readonly namespace?: string | undefined;
1744
+ readonly arguments: string;
1745
+ } | {
1665
1746
  readonly [x: string]: unknown;
1666
1747
  readonly type: "web_search_call";
1667
1748
  readonly id: string;
@@ -1698,97 +1779,13 @@ export declare const protocol: Protocol<{
1698
1779
  readonly arguments?: string | undefined;
1699
1780
  readonly output?: string | null | undefined;
1700
1781
  readonly error?: unknown;
1701
- } | {
1702
- readonly type: "configuration_update";
1703
- readonly reasoning: {
1704
- readonly effort: OpenResponsesOptions.ReasoningEffort;
1705
- };
1706
1782
  } | {
1707
1783
  readonly [x: string]: unknown;
1708
1784
  readonly type: string;
1709
1785
  readonly id: string;
1710
- } | {
1711
- readonly type: "compaction";
1712
- readonly id?: string | null | undefined;
1713
- readonly encrypted_content: string;
1714
- } | {
1715
- readonly type: "message";
1716
- readonly role: "system";
1717
- readonly content: string;
1718
- } | {
1719
- readonly type: "message";
1720
- readonly role: "developer";
1721
- readonly content: string;
1722
- } | {
1723
- readonly type: "message";
1724
- readonly role: "user";
1725
- readonly content: readonly ({
1726
- readonly type: "input_image";
1727
- readonly image_url: string;
1728
- readonly detail?: string | undefined;
1729
- } | {
1730
- readonly type: "input_file";
1731
- readonly filename: string;
1732
- readonly detail?: string | undefined;
1733
- readonly file_data?: string | undefined;
1734
- readonly file_url?: string | undefined;
1735
- } | {
1736
- readonly type: "input_text";
1737
- readonly text: string;
1738
- })[];
1739
- readonly id?: string | undefined;
1740
- readonly status?: string | undefined;
1741
- } | {
1742
- readonly type: "message";
1743
- readonly id?: string | undefined;
1744
- readonly role: "assistant";
1745
- readonly content: readonly {
1746
- readonly type: "output_text";
1747
- readonly text: string;
1748
- }[];
1749
- readonly phase?: "commentary" | "final_answer" | null | undefined;
1750
- readonly status?: string | undefined;
1751
- } | {
1752
- readonly type: "reasoning";
1753
- readonly id?: string | undefined;
1754
- readonly summary: readonly {
1755
- readonly type: "summary_text";
1756
- readonly text: string;
1757
- }[];
1758
- readonly encrypted_content?: string | null | undefined;
1759
- } | {
1760
- readonly type: "function_call";
1761
- readonly id?: string | undefined;
1762
- readonly call_id: string;
1763
- readonly name: string;
1764
- readonly namespace?: string | undefined;
1765
- readonly arguments: string;
1766
- } | {
1767
- readonly type: "function_call_output";
1768
- readonly call_id: string;
1769
- readonly output: string | readonly ({
1770
- readonly type: "input_image";
1771
- readonly image_url: string;
1772
- readonly detail?: string | undefined;
1773
- } | {
1774
- readonly type: "input_file";
1775
- readonly filename: string;
1776
- readonly detail?: string | undefined;
1777
- readonly file_data?: string | undefined;
1778
- readonly file_url?: string | undefined;
1779
- } | {
1780
- readonly type: "input_text";
1781
- readonly text: string;
1782
- } | {
1783
- readonly type: "input_video";
1784
- readonly video_url: string;
1785
- })[];
1786
1786
  })[];
1787
1787
  readonly instructions?: string | undefined;
1788
1788
  readonly tools?: readonly ({
1789
- readonly [x: string]: unknown;
1790
- readonly type: string;
1791
- } | {
1792
1789
  readonly type: "function";
1793
1790
  readonly name: string;
1794
1791
  readonly description: string;
@@ -1796,6 +1793,9 @@ export declare const protocol: Protocol<{
1796
1793
  readonly [x: string]: unknown;
1797
1794
  };
1798
1795
  readonly strict?: boolean | undefined;
1796
+ } | {
1797
+ readonly [x: string]: unknown;
1798
+ readonly type: string;
1799
1799
  })[] | undefined;
1800
1800
  readonly tool_choice?: "auto" | "none" | "required" | {
1801
1801
  readonly type: "function";
@@ -1898,55 +1898,10 @@ export declare const protocol: Protocol<{
1898
1898
  export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1899
1899
  readonly model: string;
1900
1900
  readonly input: readonly ({
1901
- readonly [x: string]: unknown;
1902
- readonly type: "web_search_call";
1903
- readonly id: string;
1904
- readonly status?: string | undefined;
1905
- readonly action?: {
1906
- readonly [x: string]: unknown;
1907
- } | null | undefined;
1908
- } | {
1909
- readonly [x: string]: unknown;
1910
- readonly type: "file_search_call";
1911
- readonly id: string;
1912
- readonly status?: string | undefined;
1913
- readonly queries?: readonly string[] | undefined;
1914
- readonly results?: readonly {
1915
- readonly [x: string]: unknown;
1916
- }[] | null | undefined;
1917
- } | {
1918
- readonly [x: string]: unknown;
1919
- readonly type: "code_interpreter_call";
1920
- readonly id: string;
1921
- readonly status?: string | undefined;
1922
- readonly code?: string | null | undefined;
1923
- readonly container_id?: string | null | undefined;
1924
- readonly outputs?: readonly {
1925
- readonly [x: string]: unknown;
1926
- }[] | null | undefined;
1927
- } | {
1928
- readonly [x: string]: unknown;
1929
- readonly type: "mcp_call";
1930
- readonly id: string;
1931
- readonly status?: string | undefined;
1932
- readonly server_label?: string | undefined;
1933
- readonly name?: string | undefined;
1934
- readonly arguments?: string | undefined;
1935
- readonly output?: string | null | undefined;
1936
- readonly error?: unknown;
1937
- } | {
1938
1901
  readonly type: "configuration_update";
1939
1902
  readonly reasoning: {
1940
1903
  readonly effort: OpenResponsesOptions.ReasoningEffort;
1941
1904
  };
1942
- } | {
1943
- readonly [x: string]: unknown;
1944
- readonly type: string;
1945
- readonly id: string;
1946
- } | {
1947
- readonly type: "compaction";
1948
- readonly id?: string | null | undefined;
1949
- readonly encrypted_content: string;
1950
1905
  } | {
1951
1906
  readonly type: "message";
1952
1907
  readonly role: "system";
@@ -1955,10 +1910,45 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1955
1910
  readonly type: "message";
1956
1911
  readonly role: "developer";
1957
1912
  readonly content: string;
1913
+ } | {
1914
+ readonly type: "function_call_output";
1915
+ readonly call_id: string;
1916
+ readonly output: string | readonly ({
1917
+ readonly type: "input_text";
1918
+ readonly text: string;
1919
+ } | {
1920
+ readonly type: "input_video";
1921
+ readonly video_url: string;
1922
+ } | {
1923
+ readonly type: "input_image";
1924
+ readonly image_url: string;
1925
+ readonly detail?: string | undefined;
1926
+ } | {
1927
+ readonly type: "input_file";
1928
+ readonly filename: string;
1929
+ readonly detail?: string | undefined;
1930
+ readonly file_data?: string | undefined;
1931
+ readonly file_url?: string | undefined;
1932
+ })[];
1933
+ } | {
1934
+ readonly type: "reasoning";
1935
+ readonly id?: string | undefined;
1936
+ readonly summary: readonly {
1937
+ readonly type: "summary_text";
1938
+ readonly text: string;
1939
+ }[];
1940
+ readonly encrypted_content?: string | null | undefined;
1941
+ } | {
1942
+ readonly type: "compaction";
1943
+ readonly id?: string | null | undefined;
1944
+ readonly encrypted_content: string;
1958
1945
  } | {
1959
1946
  readonly type: "message";
1960
1947
  readonly role: "user";
1961
1948
  readonly content: readonly ({
1949
+ readonly type: "input_text";
1950
+ readonly text: string;
1951
+ } | {
1962
1952
  readonly type: "input_image";
1963
1953
  readonly image_url: string;
1964
1954
  readonly detail?: string | undefined;
@@ -1968,9 +1958,6 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1968
1958
  readonly detail?: string | undefined;
1969
1959
  readonly file_data?: string | undefined;
1970
1960
  readonly file_url?: string | undefined;
1971
- } | {
1972
- readonly type: "input_text";
1973
- readonly text: string;
1974
1961
  })[];
1975
1962
  readonly id?: string | undefined;
1976
1963
  readonly status?: string | undefined;
@@ -1984,14 +1971,6 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
1984
1971
  }[];
1985
1972
  readonly phase?: "commentary" | "final_answer" | null | undefined;
1986
1973
  readonly status?: string | undefined;
1987
- } | {
1988
- readonly type: "reasoning";
1989
- readonly id?: string | undefined;
1990
- readonly summary: readonly {
1991
- readonly type: "summary_text";
1992
- readonly text: string;
1993
- }[];
1994
- readonly encrypted_content?: string | null | undefined;
1995
1974
  } | {
1996
1975
  readonly type: "function_call";
1997
1976
  readonly id?: string | undefined;
@@ -2000,31 +1979,49 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
2000
1979
  readonly namespace?: string | undefined;
2001
1980
  readonly arguments: string;
2002
1981
  } | {
2003
- readonly type: "function_call_output";
2004
- readonly call_id: string;
2005
- readonly output: string | readonly ({
2006
- readonly type: "input_image";
2007
- readonly image_url: string;
2008
- readonly detail?: string | undefined;
2009
- } | {
2010
- readonly type: "input_file";
2011
- readonly filename: string;
2012
- readonly detail?: string | undefined;
2013
- readonly file_data?: string | undefined;
2014
- readonly file_url?: string | undefined;
2015
- } | {
2016
- readonly type: "input_text";
2017
- readonly text: string;
2018
- } | {
2019
- readonly type: "input_video";
2020
- readonly video_url: string;
2021
- })[];
1982
+ readonly [x: string]: unknown;
1983
+ readonly type: "web_search_call";
1984
+ readonly id: string;
1985
+ readonly status?: string | undefined;
1986
+ readonly action?: {
1987
+ readonly [x: string]: unknown;
1988
+ } | null | undefined;
1989
+ } | {
1990
+ readonly [x: string]: unknown;
1991
+ readonly type: "file_search_call";
1992
+ readonly id: string;
1993
+ readonly status?: string | undefined;
1994
+ readonly queries?: readonly string[] | undefined;
1995
+ readonly results?: readonly {
1996
+ readonly [x: string]: unknown;
1997
+ }[] | null | undefined;
1998
+ } | {
1999
+ readonly [x: string]: unknown;
2000
+ readonly type: "code_interpreter_call";
2001
+ readonly id: string;
2002
+ readonly status?: string | undefined;
2003
+ readonly code?: string | null | undefined;
2004
+ readonly container_id?: string | null | undefined;
2005
+ readonly outputs?: readonly {
2006
+ readonly [x: string]: unknown;
2007
+ }[] | null | undefined;
2008
+ } | {
2009
+ readonly [x: string]: unknown;
2010
+ readonly type: "mcp_call";
2011
+ readonly id: string;
2012
+ readonly status?: string | undefined;
2013
+ readonly server_label?: string | undefined;
2014
+ readonly name?: string | undefined;
2015
+ readonly arguments?: string | undefined;
2016
+ readonly output?: string | null | undefined;
2017
+ readonly error?: unknown;
2018
+ } | {
2019
+ readonly [x: string]: unknown;
2020
+ readonly type: string;
2021
+ readonly id: string;
2022
2022
  })[];
2023
2023
  readonly instructions?: string | undefined;
2024
2024
  readonly tools?: readonly ({
2025
- readonly [x: string]: unknown;
2026
- readonly type: string;
2027
- } | {
2028
2025
  readonly type: "function";
2029
2026
  readonly name: string;
2030
2027
  readonly description: string;
@@ -2032,6 +2029,9 @@ export declare const httpTransport: HttpTransport.HttpJsonTransport<{
2032
2029
  readonly [x: string]: unknown;
2033
2030
  };
2034
2031
  readonly strict?: boolean | undefined;
2032
+ } | {
2033
+ readonly [x: string]: unknown;
2034
+ readonly type: string;
2035
2035
  })[] | undefined;
2036
2036
  readonly tool_choice?: "auto" | "none" | "required" | {
2037
2037
  readonly type: "function";