ai 6.0.0-beta.106 → 6.0.0-beta.108

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,18 @@
1
1
  # ai
2
2
 
3
+ ## 6.0.0-beta.108
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [5dd4c6a]
8
+ - @ai-sdk/gateway@2.0.0-beta.59
9
+
10
+ ## 6.0.0-beta.107
11
+
12
+ ### Patch Changes
13
+
14
+ - 8445d70: feat: export GatewayModelId and use to type LanguageModel
15
+
3
16
  ## 6.0.0-beta.106
4
17
 
5
18
  ### 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 { Tool, InferToolInput, InferToolOutput, FlexibleSchema, InferSchema, AssistantModelMessage, ToolModelMessage, ReasoningPart, ModelMessage, SystemModelMessage, UserModelMessage, ProviderOptions, IdGenerator, ToolCall, MaybePromiseLike, TextPart, FilePart, Resolvable, FetchFunction, DataContent } from '@ai-sdk/provider-utils';
4
5
  export { AssistantContent, AssistantModelMessage, DataContent, FilePart, FlexibleSchema, IdGenerator, ImagePart, InferSchema, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolApprovalRequest, ToolApprovalResponse, ToolCallOptions, ToolCallPart, ToolContent, ToolExecuteFunction, ToolModelMessage, ToolResultPart, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, parseJsonEventStream, tool, zodSchema } from '@ai-sdk/provider-utils';
@@ -50,10 +51,50 @@ type ImageModelResponseMetadata = {
50
51
 
51
52
  type JSONValue = JSONValue$1;
52
53
 
54
+ declare global {
55
+ /**
56
+ * Global interface that can be augmented by third-party packages to register custom model IDs.
57
+ *
58
+ * You can register model IDs in two ways:
59
+ *
60
+ * 1. Register baesd on Model IDs from a provider package:
61
+ * @example
62
+ * ```typescript
63
+ * import { openai } from '@ai-sdk/openai';
64
+ * type OpenAIResponsesModelId = Parameters<typeof openai>[0];
65
+ *
66
+ * declare global {
67
+ * interface RegisteredProviderModels {
68
+ * openai: OpenAIResponsesModelId;
69
+ * }
70
+ * }
71
+ * ```
72
+ *
73
+ * 2. Register individual model IDs directly as keys:
74
+ * @example
75
+ * ```typescript
76
+ * declare global {
77
+ * interface RegisteredProviderModels {
78
+ * 'my-provider:my-model': any;
79
+ * 'my-provider:another-model': any;
80
+ * }
81
+ * }
82
+ * ```
83
+ */
84
+ interface RegisteredProviderModels {
85
+ }
86
+ }
87
+ /**
88
+ * Global provider model ID type that defaults to GatewayModelId but can be augmented
89
+ * by third-party packages via declaration merging.
90
+ */
91
+ type GlobalProviderModelId = [keyof RegisteredProviderModels] extends [
92
+ never
93
+ ] ? GatewayModelId : keyof RegisteredProviderModels | RegisteredProviderModels[keyof RegisteredProviderModels];
53
94
  /**
54
95
  Language model that is used by the AI SDK Core functions.
55
96
  */
56
- type LanguageModel = string | LanguageModelV3 | LanguageModelV2;
97
+ type LanguageModel = GlobalProviderModelId | LanguageModelV3 | LanguageModelV2;
57
98
  /**
58
99
  Reason why a language model finished generating a response.
59
100
 
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 { Tool, InferToolInput, InferToolOutput, FlexibleSchema, InferSchema, AssistantModelMessage, ToolModelMessage, ReasoningPart, ModelMessage, SystemModelMessage, UserModelMessage, ProviderOptions, IdGenerator, ToolCall, MaybePromiseLike, TextPart, FilePart, Resolvable, FetchFunction, DataContent } from '@ai-sdk/provider-utils';
4
5
  export { AssistantContent, AssistantModelMessage, DataContent, FilePart, FlexibleSchema, IdGenerator, ImagePart, InferSchema, InferToolInput, InferToolOutput, ModelMessage, Schema, SystemModelMessage, TextPart, Tool, ToolApprovalRequest, ToolApprovalResponse, ToolCallOptions, ToolCallPart, ToolContent, ToolExecuteFunction, ToolModelMessage, ToolResultPart, UserContent, UserModelMessage, asSchema, createIdGenerator, dynamicTool, generateId, jsonSchema, parseJsonEventStream, tool, zodSchema } from '@ai-sdk/provider-utils';
@@ -50,10 +51,50 @@ type ImageModelResponseMetadata = {
50
51
 
51
52
  type JSONValue = JSONValue$1;
52
53
 
54
+ declare global {
55
+ /**
56
+ * Global interface that can be augmented by third-party packages to register custom model IDs.
57
+ *
58
+ * You can register model IDs in two ways:
59
+ *
60
+ * 1. Register baesd on Model IDs from a provider package:
61
+ * @example
62
+ * ```typescript
63
+ * import { openai } from '@ai-sdk/openai';
64
+ * type OpenAIResponsesModelId = Parameters<typeof openai>[0];
65
+ *
66
+ * declare global {
67
+ * interface RegisteredProviderModels {
68
+ * openai: OpenAIResponsesModelId;
69
+ * }
70
+ * }
71
+ * ```
72
+ *
73
+ * 2. Register individual model IDs directly as keys:
74
+ * @example
75
+ * ```typescript
76
+ * declare global {
77
+ * interface RegisteredProviderModels {
78
+ * 'my-provider:my-model': any;
79
+ * 'my-provider:another-model': any;
80
+ * }
81
+ * }
82
+ * ```
83
+ */
84
+ interface RegisteredProviderModels {
85
+ }
86
+ }
87
+ /**
88
+ * Global provider model ID type that defaults to GatewayModelId but can be augmented
89
+ * by third-party packages via declaration merging.
90
+ */
91
+ type GlobalProviderModelId = [keyof RegisteredProviderModels] extends [
92
+ never
93
+ ] ? GatewayModelId : keyof RegisteredProviderModels | RegisteredProviderModels[keyof RegisteredProviderModels];
53
94
  /**
54
95
  Language model that is used by the AI SDK Core functions.
55
96
  */
56
- type LanguageModel = string | LanguageModelV3 | LanguageModelV2;
97
+ type LanguageModel = GlobalProviderModelId | LanguageModelV3 | LanguageModelV2;
57
98
  /**
58
99
  Reason why a language model finished generating a response.
59
100
 
package/dist/index.js CHANGED
@@ -886,7 +886,7 @@ function detectMediaType({
886
886
  var import_provider_utils2 = require("@ai-sdk/provider-utils");
887
887
 
888
888
  // src/version.ts
889
- var VERSION = true ? "6.0.0-beta.106" : "0.0.0-test";
889
+ var VERSION = true ? "6.0.0-beta.108" : "0.0.0-test";
890
890
 
891
891
  // src/util/download/download.ts
892
892
  var download = async ({ url }) => {