ai 5.0.98 → 5.0.99

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # ai
2
2
 
3
+ ## 5.0.99
4
+
5
+ ### Patch Changes
6
+
7
+ - 15cfac8: feat: export GatewayModelId and use to type LanguageModel
8
+
3
9
  ## 5.0.98
4
10
 
5
11
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,4 +1,5 @@
1
- export { createGateway, gateway } from '@ai-sdk/gateway';
1
+ import { GatewayModelId } from '@ai-sdk/gateway';
2
+ export { GatewayModelId, createGateway, gateway } from '@ai-sdk/gateway';
2
3
  import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
3
4
  import { ModelMessage, Tool, InferToolInput, InferToolOutput, AssistantModelMessage, ToolModelMessage, ReasoningPart, FlexibleSchema, SystemModelMessage, UserModelMessage, ProviderOptions, IdGenerator, ToolCall, InferSchema, DataContent, Validator, StandardSchemaV1, TextPart, FilePart, Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
4
5
  export { AssistantContent, AssistantModelMessage, DataContent, FilePart, IdGenerator, ImagePart, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolCallOptions, ToolCallPart, ToolContent, ToolExecuteFunction, ToolModelMessage, ToolResultPart, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, parseJsonEventStream, tool, zodSchema } from '@ai-sdk/provider-utils';
@@ -196,10 +197,50 @@ type ImageModelResponseMetadata = {
196
197
 
197
198
  type JSONValue = JSONValue$1;
198
199
 
200
+ declare global {
201
+ /**
202
+ * Global interface that can be augmented by third-party packages to register custom model IDs.
203
+ *
204
+ * You can register model IDs in two ways:
205
+ *
206
+ * 1. Register baesd on Model IDs from a provider package:
207
+ * @example
208
+ * ```typescript
209
+ * import { openai } from '@ai-sdk/openai';
210
+ * type OpenAIResponsesModelId = Parameters<typeof openai>[0];
211
+ *
212
+ * declare global {
213
+ * interface RegisteredProviderModels {
214
+ * openai: OpenAIResponsesModelId;
215
+ * }
216
+ * }
217
+ * ```
218
+ *
219
+ * 2. Register individual model IDs directly as keys:
220
+ * @example
221
+ * ```typescript
222
+ * declare global {
223
+ * interface RegisteredProviderModels {
224
+ * 'my-provider:my-model': any;
225
+ * 'my-provider:another-model': any;
226
+ * }
227
+ * }
228
+ * ```
229
+ */
230
+ interface RegisteredProviderModels {
231
+ }
232
+ }
233
+ /**
234
+ * Global provider model ID type that defaults to GatewayModelId but can be augmented
235
+ * by third-party packages via declaration merging.
236
+ */
237
+ type GlobalProviderModelId = [keyof RegisteredProviderModels] extends [
238
+ never
239
+ ] ? GatewayModelId : keyof RegisteredProviderModels | RegisteredProviderModels[keyof RegisteredProviderModels];
199
240
  /**
200
241
  Language model that is used by the AI SDK Core functions.
201
242
  */
202
- type LanguageModel = string | LanguageModelV2;
243
+ type LanguageModel = GlobalProviderModelId | LanguageModelV2;
203
244
  /**
204
245
  Reason why a language model finished generating a response.
205
246
 
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- export { createGateway, gateway } from '@ai-sdk/gateway';
1
+ import { GatewayModelId } from '@ai-sdk/gateway';
2
+ export { GatewayModelId, createGateway, gateway } from '@ai-sdk/gateway';
2
3
  import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
3
4
  import { ModelMessage, Tool, InferToolInput, InferToolOutput, AssistantModelMessage, ToolModelMessage, ReasoningPart, FlexibleSchema, SystemModelMessage, UserModelMessage, ProviderOptions, IdGenerator, ToolCall, InferSchema, DataContent, Validator, StandardSchemaV1, TextPart, FilePart, Resolvable, FetchFunction } from '@ai-sdk/provider-utils';
4
5
  export { AssistantContent, AssistantModelMessage, DataContent, FilePart, IdGenerator, ImagePart, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolCallOptions, ToolCallPart, ToolContent, ToolExecuteFunction, ToolModelMessage, ToolResultPart, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, parseJsonEventStream, tool, zodSchema } from '@ai-sdk/provider-utils';
@@ -196,10 +197,50 @@ type ImageModelResponseMetadata = {
196
197
 
197
198
  type JSONValue = JSONValue$1;
198
199
 
200
+ declare global {
201
+ /**
202
+ * Global interface that can be augmented by third-party packages to register custom model IDs.
203
+ *
204
+ * You can register model IDs in two ways:
205
+ *
206
+ * 1. Register baesd on Model IDs from a provider package:
207
+ * @example
208
+ * ```typescript
209
+ * import { openai } from '@ai-sdk/openai';
210
+ * type OpenAIResponsesModelId = Parameters<typeof openai>[0];
211
+ *
212
+ * declare global {
213
+ * interface RegisteredProviderModels {
214
+ * openai: OpenAIResponsesModelId;
215
+ * }
216
+ * }
217
+ * ```
218
+ *
219
+ * 2. Register individual model IDs directly as keys:
220
+ * @example
221
+ * ```typescript
222
+ * declare global {
223
+ * interface RegisteredProviderModels {
224
+ * 'my-provider:my-model': any;
225
+ * 'my-provider:another-model': any;
226
+ * }
227
+ * }
228
+ * ```
229
+ */
230
+ interface RegisteredProviderModels {
231
+ }
232
+ }
233
+ /**
234
+ * Global provider model ID type that defaults to GatewayModelId but can be augmented
235
+ * by third-party packages via declaration merging.
236
+ */
237
+ type GlobalProviderModelId = [keyof RegisteredProviderModels] extends [
238
+ never
239
+ ] ? GatewayModelId : keyof RegisteredProviderModels | RegisteredProviderModels[keyof RegisteredProviderModels];
199
240
  /**
200
241
  Language model that is used by the AI SDK Core functions.
201
242
  */
202
- type LanguageModel = string | LanguageModelV2;
243
+ type LanguageModel = GlobalProviderModelId | LanguageModelV2;
203
244
  /**
204
245
  Reason why a language model finished generating a response.
205
246
 
package/dist/index.js CHANGED
@@ -777,7 +777,7 @@ function detectMediaType({
777
777
  var import_provider_utils2 = require("@ai-sdk/provider-utils");
778
778
 
779
779
  // src/version.ts
780
- var VERSION = true ? "5.0.98" : "0.0.0-test";
780
+ var VERSION = true ? "5.0.99" : "0.0.0-test";
781
781
 
782
782
  // src/util/download/download.ts
783
783
  var download = async ({ url }) => {