@ai-sdk/provider 2.1.0-beta.4 → 2.1.0-beta.5

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,12 @@
1
1
  # @ai-sdk/provider
2
2
 
3
+ ## 2.1.0-beta.5
4
+
5
+ ### Patch Changes
6
+
7
+ - 046aa3b: feat(provider): speech model v3 spec
8
+ - e8109d3: feat: tool execution approval
9
+
3
10
  ## 2.1.0-beta.4
4
11
 
5
12
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1016,12 +1016,24 @@ interface LanguageModelV3ToolResultPart {
1016
1016
  */
1017
1017
  providerOptions?: SharedV3ProviderOptions;
1018
1018
  }
1019
+ /**
1020
+ * Result of a tool call.
1021
+ */
1019
1022
  type LanguageModelV3ToolResultOutput = {
1020
1023
  type: 'text';
1021
1024
  value: string;
1022
1025
  } | {
1023
1026
  type: 'json';
1024
1027
  value: JSONValue;
1028
+ } | {
1029
+ /**
1030
+ * Type when the user has denied the execution of the tool call.
1031
+ */
1032
+ type: 'execution-denied';
1033
+ /**
1034
+ * Optional reason for the execution denial.
1035
+ */
1036
+ reason?: string;
1025
1037
  } | {
1026
1038
  type: 'error-text';
1027
1039
  value: string;
@@ -2524,8 +2536,8 @@ type LanguageModelV2Middleware = {
2524
2536
  }) => PromiseLike<Awaited<ReturnType<LanguageModelV2['doStream']>>>;
2525
2537
  };
2526
2538
 
2527
- type SpeechModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
2528
- type SpeechModelV2CallOptions = {
2539
+ type SpeechModelV3ProviderOptions = Record<string, Record<string, JSONValue>>;
2540
+ type SpeechModelV3CallOptions = {
2529
2541
  /**
2530
2542
  * Text to convert to speech.
2531
2543
  */
@@ -2564,7 +2576,7 @@ type SpeechModelV2CallOptions = {
2564
2576
  * }
2565
2577
  * ```
2566
2578
  */
2567
- providerOptions?: SpeechModelV2ProviderOptions;
2579
+ providerOptions?: SpeechModelV3ProviderOptions;
2568
2580
  /**
2569
2581
  * Abort signal for cancelling the operation.
2570
2582
  */
@@ -2580,9 +2592,9 @@ type SpeechModelV2CallOptions = {
2580
2592
  * Warning from the model provider for this call. The call will proceed, but e.g.
2581
2593
  * some settings might not be supported, which can lead to suboptimal results.
2582
2594
  */
2583
- type SpeechModelV2CallWarning = {
2595
+ type SpeechModelV3CallWarning = {
2584
2596
  type: 'unsupported-setting';
2585
- setting: keyof SpeechModelV2CallOptions;
2597
+ setting: keyof SpeechModelV3CallOptions;
2586
2598
  details?: string;
2587
2599
  } | {
2588
2600
  type: 'other';
@@ -2590,9 +2602,9 @@ type SpeechModelV2CallWarning = {
2590
2602
  };
2591
2603
 
2592
2604
  /**
2593
- * Speech model specification version 2.
2605
+ * Speech model specification version 3.
2594
2606
  */
2595
- type SpeechModelV2 = {
2607
+ type SpeechModelV3 = {
2596
2608
  /**
2597
2609
  * The speech model must specify which speech model interface
2598
2610
  * version it implements. This will allow us to evolve the speech
@@ -2600,7 +2612,7 @@ type SpeechModelV2 = {
2600
2612
  * implementation versions can be handled as a discriminated union
2601
2613
  * on our side.
2602
2614
  */
2603
- readonly specificationVersion: 'v2';
2615
+ readonly specificationVersion: 'v3';
2604
2616
  /**
2605
2617
  * Name of the provider for logging purposes.
2606
2618
  */
@@ -2612,7 +2624,7 @@ type SpeechModelV2 = {
2612
2624
  /**
2613
2625
  * Generates speech audio from text.
2614
2626
  */
2615
- doGenerate(options: SpeechModelV2CallOptions): PromiseLike<{
2627
+ doGenerate(options: SpeechModelV3CallOptions): PromiseLike<{
2616
2628
  /**
2617
2629
  * Generated audio as an ArrayBuffer.
2618
2630
  * The audio should be returned without any unnecessary conversion.
@@ -2624,7 +2636,7 @@ type SpeechModelV2 = {
2624
2636
  /**
2625
2637
  * Warnings for the call, e.g. unsupported settings.
2626
2638
  */
2627
- warnings: Array<SpeechModelV2CallWarning>;
2639
+ warnings: Array<SpeechModelV3CallWarning>;
2628
2640
  /**
2629
2641
  * Optional request information for telemetry and debugging purposes.
2630
2642
  */
@@ -2664,8 +2676,8 @@ type SpeechModelV2 = {
2664
2676
  }>;
2665
2677
  };
2666
2678
 
2667
- type TranscriptionModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
2668
- type TranscriptionModelV2CallOptions = {
2679
+ type TranscriptionModelV3ProviderOptions = Record<string, Record<string, JSONValue>>;
2680
+ type TranscriptionModelV3CallOptions = {
2669
2681
  /**
2670
2682
  Audio data to transcribe.
2671
2683
  Accepts a `Uint8Array` or `string`, where `string` is a base64 encoded audio file.
@@ -2691,7 +2703,7 @@ type TranscriptionModelV2CallOptions = {
2691
2703
  }
2692
2704
  ```
2693
2705
  */
2694
- providerOptions?: TranscriptionModelV2ProviderOptions;
2706
+ providerOptions?: TranscriptionModelV3ProviderOptions;
2695
2707
  /**
2696
2708
  Abort signal for cancelling the operation.
2697
2709
  */
@@ -2707,9 +2719,9 @@ type TranscriptionModelV2CallOptions = {
2707
2719
  Warning from the model provider for this call. The call will proceed, but e.g.
2708
2720
  some settings might not be supported, which can lead to suboptimal results.
2709
2721
  */
2710
- type TranscriptionModelV2CallWarning = {
2722
+ type TranscriptionModelV3CallWarning = {
2711
2723
  type: 'unsupported-setting';
2712
- setting: keyof TranscriptionModelV2CallOptions;
2724
+ setting: keyof TranscriptionModelV3CallOptions;
2713
2725
  details?: string;
2714
2726
  } | {
2715
2727
  type: 'other';
@@ -2717,9 +2729,9 @@ type TranscriptionModelV2CallWarning = {
2717
2729
  };
2718
2730
 
2719
2731
  /**
2720
- Transcription model specification version 2.
2732
+ Transcription model specification version 3.
2721
2733
  */
2722
- type TranscriptionModelV2 = {
2734
+ type TranscriptionModelV3 = {
2723
2735
  /**
2724
2736
  The transcription model must specify which transcription model interface
2725
2737
  version it implements. This will allow us to evolve the transcription
@@ -2727,7 +2739,7 @@ type TranscriptionModelV2 = {
2727
2739
  implementation versions can be handled as a discriminated union
2728
2740
  on our side.
2729
2741
  */
2730
- readonly specificationVersion: 'v2';
2742
+ readonly specificationVersion: 'v3';
2731
2743
  /**
2732
2744
  Name of the provider for logging purposes.
2733
2745
  */
@@ -2739,7 +2751,7 @@ type TranscriptionModelV2 = {
2739
2751
  /**
2740
2752
  Generates a transcript.
2741
2753
  */
2742
- doGenerate(options: TranscriptionModelV2CallOptions): PromiseLike<{
2754
+ doGenerate(options: TranscriptionModelV3CallOptions): PromiseLike<{
2743
2755
  /**
2744
2756
  * The complete transcribed text from the audio.
2745
2757
  */
@@ -2775,7 +2787,7 @@ type TranscriptionModelV2 = {
2775
2787
  /**
2776
2788
  Warnings for the call, e.g. unsupported settings.
2777
2789
  */
2778
- warnings: Array<TranscriptionModelV2CallWarning>;
2790
+ warnings: Array<TranscriptionModelV3CallWarning>;
2779
2791
  /**
2780
2792
  Optional request information for telemetry and debugging purposes.
2781
2793
  */
@@ -2801,7 +2813,7 @@ type TranscriptionModelV2 = {
2801
2813
  /**
2802
2814
  Response headers.
2803
2815
  */
2804
- headers?: SharedV2Headers;
2816
+ headers?: SharedV3Headers;
2805
2817
  /**
2806
2818
  Response body.
2807
2819
  */
@@ -2859,7 +2871,7 @@ interface ProviderV3 {
2859
2871
 
2860
2872
  @returns {TranscriptionModel} The transcription model associated with the id
2861
2873
  */
2862
- transcriptionModel?(modelId: string): TranscriptionModelV2;
2874
+ transcriptionModel?(modelId: string): TranscriptionModelV3;
2863
2875
  /**
2864
2876
  Returns the speech model with the given id.
2865
2877
  The model id is then passed to the provider function to get the model.
@@ -2868,9 +2880,301 @@ interface ProviderV3 {
2868
2880
 
2869
2881
  @returns {SpeechModel} The speech model associated with the id
2870
2882
  */
2871
- speechModel?(modelId: string): SpeechModelV2;
2883
+ speechModel?(modelId: string): SpeechModelV3;
2872
2884
  }
2873
2885
 
2886
+ type SpeechModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
2887
+ type SpeechModelV2CallOptions = {
2888
+ /**
2889
+ * Text to convert to speech.
2890
+ */
2891
+ text: string;
2892
+ /**
2893
+ * The voice to use for speech synthesis.
2894
+ * This is provider-specific and may be a voice ID, name, or other identifier.
2895
+ */
2896
+ voice?: string;
2897
+ /**
2898
+ * The desired output format for the audio e.g. "mp3", "wav", etc.
2899
+ */
2900
+ outputFormat?: string;
2901
+ /**
2902
+ * Instructions for the speech generation e.g. "Speak in a slow and steady tone".
2903
+ */
2904
+ instructions?: string;
2905
+ /**
2906
+ * The speed of the speech generation.
2907
+ */
2908
+ speed?: number;
2909
+ /**
2910
+ * The language for speech generation. This should be an ISO 639-1 language code (e.g. "en", "es", "fr")
2911
+ * or "auto" for automatic language detection. Provider support varies.
2912
+ */
2913
+ language?: string;
2914
+ /**
2915
+ * Additional provider-specific options that are passed through to the provider
2916
+ * as body parameters.
2917
+ *
2918
+ * The outer record is keyed by the provider name, and the inner
2919
+ * record is keyed by the provider-specific metadata key.
2920
+ * ```ts
2921
+ * {
2922
+ * "openai": {}
2923
+ * }
2924
+ * ```
2925
+ */
2926
+ providerOptions?: SpeechModelV2ProviderOptions;
2927
+ /**
2928
+ * Abort signal for cancelling the operation.
2929
+ */
2930
+ abortSignal?: AbortSignal;
2931
+ /**
2932
+ * Additional HTTP headers to be sent with the request.
2933
+ * Only applicable for HTTP-based providers.
2934
+ */
2935
+ headers?: Record<string, string | undefined>;
2936
+ };
2937
+
2938
+ /**
2939
+ * Warning from the model provider for this call. The call will proceed, but e.g.
2940
+ * some settings might not be supported, which can lead to suboptimal results.
2941
+ */
2942
+ type SpeechModelV2CallWarning = {
2943
+ type: 'unsupported-setting';
2944
+ setting: keyof SpeechModelV2CallOptions;
2945
+ details?: string;
2946
+ } | {
2947
+ type: 'other';
2948
+ message: string;
2949
+ };
2950
+
2951
+ /**
2952
+ * Speech model specification version 2.
2953
+ */
2954
+ type SpeechModelV2 = {
2955
+ /**
2956
+ * The speech model must specify which speech model interface
2957
+ * version it implements. This will allow us to evolve the speech
2958
+ * model interface and retain backwards compatibility. The different
2959
+ * implementation versions can be handled as a discriminated union
2960
+ * on our side.
2961
+ */
2962
+ readonly specificationVersion: 'v2';
2963
+ /**
2964
+ * Name of the provider for logging purposes.
2965
+ */
2966
+ readonly provider: string;
2967
+ /**
2968
+ * Provider-specific model ID for logging purposes.
2969
+ */
2970
+ readonly modelId: string;
2971
+ /**
2972
+ * Generates speech audio from text.
2973
+ */
2974
+ doGenerate(options: SpeechModelV2CallOptions): PromiseLike<{
2975
+ /**
2976
+ * Generated audio as an ArrayBuffer.
2977
+ * The audio should be returned without any unnecessary conversion.
2978
+ * If the API returns base64 encoded strings, the audio should be returned
2979
+ * as base64 encoded strings. If the API returns binary data, the audio
2980
+ * should be returned as binary data.
2981
+ */
2982
+ audio: string | Uint8Array;
2983
+ /**
2984
+ * Warnings for the call, e.g. unsupported settings.
2985
+ */
2986
+ warnings: Array<SpeechModelV2CallWarning>;
2987
+ /**
2988
+ * Optional request information for telemetry and debugging purposes.
2989
+ */
2990
+ request?: {
2991
+ /**
2992
+ * Response body (available only for providers that use HTTP requests).
2993
+ */
2994
+ body?: unknown;
2995
+ };
2996
+ /**
2997
+ * Response information for telemetry and debugging purposes.
2998
+ */
2999
+ response: {
3000
+ /**
3001
+ * Timestamp for the start of the generated response.
3002
+ */
3003
+ timestamp: Date;
3004
+ /**
3005
+ * The ID of the response model that was used to generate the response.
3006
+ */
3007
+ modelId: string;
3008
+ /**
3009
+ * Response headers.
3010
+ */
3011
+ headers?: SharedV2Headers;
3012
+ /**
3013
+ * Response body.
3014
+ */
3015
+ body?: unknown;
3016
+ };
3017
+ /**
3018
+ * Additional provider-specific metadata. They are passed through
3019
+ * from the provider to the AI SDK and enable provider-specific
3020
+ * results that can be fully encapsulated in the provider.
3021
+ */
3022
+ providerMetadata?: Record<string, Record<string, JSONValue>>;
3023
+ }>;
3024
+ };
3025
+
3026
+ type TranscriptionModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
3027
+ type TranscriptionModelV2CallOptions = {
3028
+ /**
3029
+ Audio data to transcribe.
3030
+ Accepts a `Uint8Array` or `string`, where `string` is a base64 encoded audio file.
3031
+ */
3032
+ audio: Uint8Array | string;
3033
+ /**
3034
+ The IANA media type of the audio data.
3035
+
3036
+ @see https://www.iana.org/assignments/media-types/media-types.xhtml
3037
+ */
3038
+ mediaType: string;
3039
+ /**
3040
+ Additional provider-specific options that are passed through to the provider
3041
+ as body parameters.
3042
+
3043
+ The outer record is keyed by the provider name, and the inner
3044
+ record is keyed by the provider-specific metadata key.
3045
+ ```ts
3046
+ {
3047
+ "openai": {
3048
+ "timestampGranularities": ["word"]
3049
+ }
3050
+ }
3051
+ ```
3052
+ */
3053
+ providerOptions?: TranscriptionModelV2ProviderOptions;
3054
+ /**
3055
+ Abort signal for cancelling the operation.
3056
+ */
3057
+ abortSignal?: AbortSignal;
3058
+ /**
3059
+ Additional HTTP headers to be sent with the request.
3060
+ Only applicable for HTTP-based providers.
3061
+ */
3062
+ headers?: Record<string, string | undefined>;
3063
+ };
3064
+
3065
+ /**
3066
+ Warning from the model provider for this call. The call will proceed, but e.g.
3067
+ some settings might not be supported, which can lead to suboptimal results.
3068
+ */
3069
+ type TranscriptionModelV2CallWarning = {
3070
+ type: 'unsupported-setting';
3071
+ setting: keyof TranscriptionModelV2CallOptions;
3072
+ details?: string;
3073
+ } | {
3074
+ type: 'other';
3075
+ message: string;
3076
+ };
3077
+
3078
+ /**
3079
+ Transcription model specification version 2.
3080
+ */
3081
+ type TranscriptionModelV2 = {
3082
+ /**
3083
+ The transcription model must specify which transcription model interface
3084
+ version it implements. This will allow us to evolve the transcription
3085
+ model interface and retain backwards compatibility. The different
3086
+ implementation versions can be handled as a discriminated union
3087
+ on our side.
3088
+ */
3089
+ readonly specificationVersion: 'v2';
3090
+ /**
3091
+ Name of the provider for logging purposes.
3092
+ */
3093
+ readonly provider: string;
3094
+ /**
3095
+ Provider-specific model ID for logging purposes.
3096
+ */
3097
+ readonly modelId: string;
3098
+ /**
3099
+ Generates a transcript.
3100
+ */
3101
+ doGenerate(options: TranscriptionModelV2CallOptions): PromiseLike<{
3102
+ /**
3103
+ * The complete transcribed text from the audio.
3104
+ */
3105
+ text: string;
3106
+ /**
3107
+ * Array of transcript segments with timing information.
3108
+ * Each segment represents a portion of the transcribed text with start and end times.
3109
+ */
3110
+ segments: Array<{
3111
+ /**
3112
+ * The text content of this segment.
3113
+ */
3114
+ text: string;
3115
+ /**
3116
+ * The start time of this segment in seconds.
3117
+ */
3118
+ startSecond: number;
3119
+ /**
3120
+ * The end time of this segment in seconds.
3121
+ */
3122
+ endSecond: number;
3123
+ }>;
3124
+ /**
3125
+ * The detected language of the audio content, as an ISO-639-1 code (e.g., 'en' for English).
3126
+ * May be undefined if the language couldn't be detected.
3127
+ */
3128
+ language: string | undefined;
3129
+ /**
3130
+ * The total duration of the audio file in seconds.
3131
+ * May be undefined if the duration couldn't be determined.
3132
+ */
3133
+ durationInSeconds: number | undefined;
3134
+ /**
3135
+ Warnings for the call, e.g. unsupported settings.
3136
+ */
3137
+ warnings: Array<TranscriptionModelV2CallWarning>;
3138
+ /**
3139
+ Optional request information for telemetry and debugging purposes.
3140
+ */
3141
+ request?: {
3142
+ /**
3143
+ Raw request HTTP body that was sent to the provider API as a string (JSON should be stringified).
3144
+ Non-HTTP(s) providers should not set this.
3145
+ */
3146
+ body?: string;
3147
+ };
3148
+ /**
3149
+ Response information for telemetry and debugging purposes.
3150
+ */
3151
+ response: {
3152
+ /**
3153
+ Timestamp for the start of the generated response.
3154
+ */
3155
+ timestamp: Date;
3156
+ /**
3157
+ The ID of the response model that was used to generate the response.
3158
+ */
3159
+ modelId: string;
3160
+ /**
3161
+ Response headers.
3162
+ */
3163
+ headers?: SharedV2Headers;
3164
+ /**
3165
+ Response body.
3166
+ */
3167
+ body?: unknown;
3168
+ };
3169
+ /**
3170
+ Additional provider-specific metadata. They are passed through
3171
+ from the provider to the AI SDK and enable provider-specific
3172
+ results that can be fully encapsulated in the provider.
3173
+ */
3174
+ providerMetadata?: Record<string, Record<string, JSONValue>>;
3175
+ }>;
3176
+ };
3177
+
2874
3178
  /**
2875
3179
  * Provider for language, text embedding, and image generation models.
2876
3180
  */
@@ -2926,4 +3230,4 @@ interface ProviderV2 {
2926
3230
  speechModel?(modelId: string): SpeechModelV2;
2927
3231
  }
2928
3232
 
2929
- export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, type EmbeddingModelV3, type EmbeddingModelV3Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, type ImageModelV3, type ImageModelV3CallOptions, type ImageModelV3CallWarning, type ImageModelV3ProviderMetadata, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultOutput, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, type LanguageModelV3, type LanguageModelV3CallOptions, type LanguageModelV3CallWarning, type LanguageModelV3Content, type LanguageModelV3DataContent, type LanguageModelV3File, type LanguageModelV3FilePart, type LanguageModelV3FinishReason, type LanguageModelV3FunctionTool, type LanguageModelV3Message, type LanguageModelV3Middleware, type LanguageModelV3Prompt, type LanguageModelV3ProviderDefinedTool, type LanguageModelV3Reasoning, type LanguageModelV3ReasoningPart, type LanguageModelV3ResponseMetadata, type LanguageModelV3Source, type LanguageModelV3StreamPart, type LanguageModelV3Text, type LanguageModelV3TextPart, type LanguageModelV3ToolCall, type LanguageModelV3ToolCallPart, type LanguageModelV3ToolChoice, type LanguageModelV3ToolResult, type LanguageModelV3ToolResultOutput, type LanguageModelV3ToolResultPart, type LanguageModelV3Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV2, type ProviderV3, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SharedV3Headers, type SharedV3ProviderMetadata, type SharedV3ProviderOptions, type SpeechModelV2, type SpeechModelV2CallOptions, type SpeechModelV2CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV2, type TranscriptionModelV2CallOptions, type TranscriptionModelV2CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
3233
+ export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, type EmbeddingModelV3, type EmbeddingModelV3Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, type ImageModelV3, type ImageModelV3CallOptions, type ImageModelV3CallWarning, type ImageModelV3ProviderMetadata, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultOutput, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, type LanguageModelV3, type LanguageModelV3CallOptions, type LanguageModelV3CallWarning, type LanguageModelV3Content, type LanguageModelV3DataContent, type LanguageModelV3File, type LanguageModelV3FilePart, type LanguageModelV3FinishReason, type LanguageModelV3FunctionTool, type LanguageModelV3Message, type LanguageModelV3Middleware, type LanguageModelV3Prompt, type LanguageModelV3ProviderDefinedTool, type LanguageModelV3Reasoning, type LanguageModelV3ReasoningPart, type LanguageModelV3ResponseMetadata, type LanguageModelV3Source, type LanguageModelV3StreamPart, type LanguageModelV3Text, type LanguageModelV3TextPart, type LanguageModelV3ToolCall, type LanguageModelV3ToolCallPart, type LanguageModelV3ToolChoice, type LanguageModelV3ToolResult, type LanguageModelV3ToolResultOutput, type LanguageModelV3ToolResultPart, type LanguageModelV3Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV2, type ProviderV3, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SharedV3Headers, type SharedV3ProviderMetadata, type SharedV3ProviderOptions, type SpeechModelV2, type SpeechModelV2CallOptions, type SpeechModelV2CallWarning, type SpeechModelV3, type SpeechModelV3CallOptions, type SpeechModelV3CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV2, type TranscriptionModelV2CallOptions, type TranscriptionModelV2CallWarning, type TranscriptionModelV3, type TranscriptionModelV3CallOptions, type TranscriptionModelV3CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
package/dist/index.d.ts CHANGED
@@ -1016,12 +1016,24 @@ interface LanguageModelV3ToolResultPart {
1016
1016
  */
1017
1017
  providerOptions?: SharedV3ProviderOptions;
1018
1018
  }
1019
+ /**
1020
+ * Result of a tool call.
1021
+ */
1019
1022
  type LanguageModelV3ToolResultOutput = {
1020
1023
  type: 'text';
1021
1024
  value: string;
1022
1025
  } | {
1023
1026
  type: 'json';
1024
1027
  value: JSONValue;
1028
+ } | {
1029
+ /**
1030
+ * Type when the user has denied the execution of the tool call.
1031
+ */
1032
+ type: 'execution-denied';
1033
+ /**
1034
+ * Optional reason for the execution denial.
1035
+ */
1036
+ reason?: string;
1025
1037
  } | {
1026
1038
  type: 'error-text';
1027
1039
  value: string;
@@ -2524,8 +2536,8 @@ type LanguageModelV2Middleware = {
2524
2536
  }) => PromiseLike<Awaited<ReturnType<LanguageModelV2['doStream']>>>;
2525
2537
  };
2526
2538
 
2527
- type SpeechModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
2528
- type SpeechModelV2CallOptions = {
2539
+ type SpeechModelV3ProviderOptions = Record<string, Record<string, JSONValue>>;
2540
+ type SpeechModelV3CallOptions = {
2529
2541
  /**
2530
2542
  * Text to convert to speech.
2531
2543
  */
@@ -2564,7 +2576,7 @@ type SpeechModelV2CallOptions = {
2564
2576
  * }
2565
2577
  * ```
2566
2578
  */
2567
- providerOptions?: SpeechModelV2ProviderOptions;
2579
+ providerOptions?: SpeechModelV3ProviderOptions;
2568
2580
  /**
2569
2581
  * Abort signal for cancelling the operation.
2570
2582
  */
@@ -2580,9 +2592,9 @@ type SpeechModelV2CallOptions = {
2580
2592
  * Warning from the model provider for this call. The call will proceed, but e.g.
2581
2593
  * some settings might not be supported, which can lead to suboptimal results.
2582
2594
  */
2583
- type SpeechModelV2CallWarning = {
2595
+ type SpeechModelV3CallWarning = {
2584
2596
  type: 'unsupported-setting';
2585
- setting: keyof SpeechModelV2CallOptions;
2597
+ setting: keyof SpeechModelV3CallOptions;
2586
2598
  details?: string;
2587
2599
  } | {
2588
2600
  type: 'other';
@@ -2590,9 +2602,9 @@ type SpeechModelV2CallWarning = {
2590
2602
  };
2591
2603
 
2592
2604
  /**
2593
- * Speech model specification version 2.
2605
+ * Speech model specification version 3.
2594
2606
  */
2595
- type SpeechModelV2 = {
2607
+ type SpeechModelV3 = {
2596
2608
  /**
2597
2609
  * The speech model must specify which speech model interface
2598
2610
  * version it implements. This will allow us to evolve the speech
@@ -2600,7 +2612,7 @@ type SpeechModelV2 = {
2600
2612
  * implementation versions can be handled as a discriminated union
2601
2613
  * on our side.
2602
2614
  */
2603
- readonly specificationVersion: 'v2';
2615
+ readonly specificationVersion: 'v3';
2604
2616
  /**
2605
2617
  * Name of the provider for logging purposes.
2606
2618
  */
@@ -2612,7 +2624,7 @@ type SpeechModelV2 = {
2612
2624
  /**
2613
2625
  * Generates speech audio from text.
2614
2626
  */
2615
- doGenerate(options: SpeechModelV2CallOptions): PromiseLike<{
2627
+ doGenerate(options: SpeechModelV3CallOptions): PromiseLike<{
2616
2628
  /**
2617
2629
  * Generated audio as an ArrayBuffer.
2618
2630
  * The audio should be returned without any unnecessary conversion.
@@ -2624,7 +2636,7 @@ type SpeechModelV2 = {
2624
2636
  /**
2625
2637
  * Warnings for the call, e.g. unsupported settings.
2626
2638
  */
2627
- warnings: Array<SpeechModelV2CallWarning>;
2639
+ warnings: Array<SpeechModelV3CallWarning>;
2628
2640
  /**
2629
2641
  * Optional request information for telemetry and debugging purposes.
2630
2642
  */
@@ -2664,8 +2676,8 @@ type SpeechModelV2 = {
2664
2676
  }>;
2665
2677
  };
2666
2678
 
2667
- type TranscriptionModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
2668
- type TranscriptionModelV2CallOptions = {
2679
+ type TranscriptionModelV3ProviderOptions = Record<string, Record<string, JSONValue>>;
2680
+ type TranscriptionModelV3CallOptions = {
2669
2681
  /**
2670
2682
  Audio data to transcribe.
2671
2683
  Accepts a `Uint8Array` or `string`, where `string` is a base64 encoded audio file.
@@ -2691,7 +2703,7 @@ type TranscriptionModelV2CallOptions = {
2691
2703
  }
2692
2704
  ```
2693
2705
  */
2694
- providerOptions?: TranscriptionModelV2ProviderOptions;
2706
+ providerOptions?: TranscriptionModelV3ProviderOptions;
2695
2707
  /**
2696
2708
  Abort signal for cancelling the operation.
2697
2709
  */
@@ -2707,9 +2719,9 @@ type TranscriptionModelV2CallOptions = {
2707
2719
  Warning from the model provider for this call. The call will proceed, but e.g.
2708
2720
  some settings might not be supported, which can lead to suboptimal results.
2709
2721
  */
2710
- type TranscriptionModelV2CallWarning = {
2722
+ type TranscriptionModelV3CallWarning = {
2711
2723
  type: 'unsupported-setting';
2712
- setting: keyof TranscriptionModelV2CallOptions;
2724
+ setting: keyof TranscriptionModelV3CallOptions;
2713
2725
  details?: string;
2714
2726
  } | {
2715
2727
  type: 'other';
@@ -2717,9 +2729,9 @@ type TranscriptionModelV2CallWarning = {
2717
2729
  };
2718
2730
 
2719
2731
  /**
2720
- Transcription model specification version 2.
2732
+ Transcription model specification version 3.
2721
2733
  */
2722
- type TranscriptionModelV2 = {
2734
+ type TranscriptionModelV3 = {
2723
2735
  /**
2724
2736
  The transcription model must specify which transcription model interface
2725
2737
  version it implements. This will allow us to evolve the transcription
@@ -2727,7 +2739,7 @@ type TranscriptionModelV2 = {
2727
2739
  implementation versions can be handled as a discriminated union
2728
2740
  on our side.
2729
2741
  */
2730
- readonly specificationVersion: 'v2';
2742
+ readonly specificationVersion: 'v3';
2731
2743
  /**
2732
2744
  Name of the provider for logging purposes.
2733
2745
  */
@@ -2739,7 +2751,7 @@ type TranscriptionModelV2 = {
2739
2751
  /**
2740
2752
  Generates a transcript.
2741
2753
  */
2742
- doGenerate(options: TranscriptionModelV2CallOptions): PromiseLike<{
2754
+ doGenerate(options: TranscriptionModelV3CallOptions): PromiseLike<{
2743
2755
  /**
2744
2756
  * The complete transcribed text from the audio.
2745
2757
  */
@@ -2775,7 +2787,7 @@ type TranscriptionModelV2 = {
2775
2787
  /**
2776
2788
  Warnings for the call, e.g. unsupported settings.
2777
2789
  */
2778
- warnings: Array<TranscriptionModelV2CallWarning>;
2790
+ warnings: Array<TranscriptionModelV3CallWarning>;
2779
2791
  /**
2780
2792
  Optional request information for telemetry and debugging purposes.
2781
2793
  */
@@ -2801,7 +2813,7 @@ type TranscriptionModelV2 = {
2801
2813
  /**
2802
2814
  Response headers.
2803
2815
  */
2804
- headers?: SharedV2Headers;
2816
+ headers?: SharedV3Headers;
2805
2817
  /**
2806
2818
  Response body.
2807
2819
  */
@@ -2859,7 +2871,7 @@ interface ProviderV3 {
2859
2871
 
2860
2872
  @returns {TranscriptionModel} The transcription model associated with the id
2861
2873
  */
2862
- transcriptionModel?(modelId: string): TranscriptionModelV2;
2874
+ transcriptionModel?(modelId: string): TranscriptionModelV3;
2863
2875
  /**
2864
2876
  Returns the speech model with the given id.
2865
2877
  The model id is then passed to the provider function to get the model.
@@ -2868,9 +2880,301 @@ interface ProviderV3 {
2868
2880
 
2869
2881
  @returns {SpeechModel} The speech model associated with the id
2870
2882
  */
2871
- speechModel?(modelId: string): SpeechModelV2;
2883
+ speechModel?(modelId: string): SpeechModelV3;
2872
2884
  }
2873
2885
 
2886
+ type SpeechModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
2887
+ type SpeechModelV2CallOptions = {
2888
+ /**
2889
+ * Text to convert to speech.
2890
+ */
2891
+ text: string;
2892
+ /**
2893
+ * The voice to use for speech synthesis.
2894
+ * This is provider-specific and may be a voice ID, name, or other identifier.
2895
+ */
2896
+ voice?: string;
2897
+ /**
2898
+ * The desired output format for the audio e.g. "mp3", "wav", etc.
2899
+ */
2900
+ outputFormat?: string;
2901
+ /**
2902
+ * Instructions for the speech generation e.g. "Speak in a slow and steady tone".
2903
+ */
2904
+ instructions?: string;
2905
+ /**
2906
+ * The speed of the speech generation.
2907
+ */
2908
+ speed?: number;
2909
+ /**
2910
+ * The language for speech generation. This should be an ISO 639-1 language code (e.g. "en", "es", "fr")
2911
+ * or "auto" for automatic language detection. Provider support varies.
2912
+ */
2913
+ language?: string;
2914
+ /**
2915
+ * Additional provider-specific options that are passed through to the provider
2916
+ * as body parameters.
2917
+ *
2918
+ * The outer record is keyed by the provider name, and the inner
2919
+ * record is keyed by the provider-specific metadata key.
2920
+ * ```ts
2921
+ * {
2922
+ * "openai": {}
2923
+ * }
2924
+ * ```
2925
+ */
2926
+ providerOptions?: SpeechModelV2ProviderOptions;
2927
+ /**
2928
+ * Abort signal for cancelling the operation.
2929
+ */
2930
+ abortSignal?: AbortSignal;
2931
+ /**
2932
+ * Additional HTTP headers to be sent with the request.
2933
+ * Only applicable for HTTP-based providers.
2934
+ */
2935
+ headers?: Record<string, string | undefined>;
2936
+ };
2937
+
2938
+ /**
2939
+ * Warning from the model provider for this call. The call will proceed, but e.g.
2940
+ * some settings might not be supported, which can lead to suboptimal results.
2941
+ */
2942
+ type SpeechModelV2CallWarning = {
2943
+ type: 'unsupported-setting';
2944
+ setting: keyof SpeechModelV2CallOptions;
2945
+ details?: string;
2946
+ } | {
2947
+ type: 'other';
2948
+ message: string;
2949
+ };
2950
+
2951
+ /**
2952
+ * Speech model specification version 2.
2953
+ */
2954
+ type SpeechModelV2 = {
2955
+ /**
2956
+ * The speech model must specify which speech model interface
2957
+ * version it implements. This will allow us to evolve the speech
2958
+ * model interface and retain backwards compatibility. The different
2959
+ * implementation versions can be handled as a discriminated union
2960
+ * on our side.
2961
+ */
2962
+ readonly specificationVersion: 'v2';
2963
+ /**
2964
+ * Name of the provider for logging purposes.
2965
+ */
2966
+ readonly provider: string;
2967
+ /**
2968
+ * Provider-specific model ID for logging purposes.
2969
+ */
2970
+ readonly modelId: string;
2971
+ /**
2972
+ * Generates speech audio from text.
2973
+ */
2974
+ doGenerate(options: SpeechModelV2CallOptions): PromiseLike<{
2975
+ /**
2976
+ * Generated audio as an ArrayBuffer.
2977
+ * The audio should be returned without any unnecessary conversion.
2978
+ * If the API returns base64 encoded strings, the audio should be returned
2979
+ * as base64 encoded strings. If the API returns binary data, the audio
2980
+ * should be returned as binary data.
2981
+ */
2982
+ audio: string | Uint8Array;
2983
+ /**
2984
+ * Warnings for the call, e.g. unsupported settings.
2985
+ */
2986
+ warnings: Array<SpeechModelV2CallWarning>;
2987
+ /**
2988
+ * Optional request information for telemetry and debugging purposes.
2989
+ */
2990
+ request?: {
2991
+ /**
2992
+ * Response body (available only for providers that use HTTP requests).
2993
+ */
2994
+ body?: unknown;
2995
+ };
2996
+ /**
2997
+ * Response information for telemetry and debugging purposes.
2998
+ */
2999
+ response: {
3000
+ /**
3001
+ * Timestamp for the start of the generated response.
3002
+ */
3003
+ timestamp: Date;
3004
+ /**
3005
+ * The ID of the response model that was used to generate the response.
3006
+ */
3007
+ modelId: string;
3008
+ /**
3009
+ * Response headers.
3010
+ */
3011
+ headers?: SharedV2Headers;
3012
+ /**
3013
+ * Response body.
3014
+ */
3015
+ body?: unknown;
3016
+ };
3017
+ /**
3018
+ * Additional provider-specific metadata. They are passed through
3019
+ * from the provider to the AI SDK and enable provider-specific
3020
+ * results that can be fully encapsulated in the provider.
3021
+ */
3022
+ providerMetadata?: Record<string, Record<string, JSONValue>>;
3023
+ }>;
3024
+ };
3025
+
3026
+ type TranscriptionModelV2ProviderOptions = Record<string, Record<string, JSONValue>>;
3027
+ type TranscriptionModelV2CallOptions = {
3028
+ /**
3029
+ Audio data to transcribe.
3030
+ Accepts a `Uint8Array` or `string`, where `string` is a base64 encoded audio file.
3031
+ */
3032
+ audio: Uint8Array | string;
3033
+ /**
3034
+ The IANA media type of the audio data.
3035
+
3036
+ @see https://www.iana.org/assignments/media-types/media-types.xhtml
3037
+ */
3038
+ mediaType: string;
3039
+ /**
3040
+ Additional provider-specific options that are passed through to the provider
3041
+ as body parameters.
3042
+
3043
+ The outer record is keyed by the provider name, and the inner
3044
+ record is keyed by the provider-specific metadata key.
3045
+ ```ts
3046
+ {
3047
+ "openai": {
3048
+ "timestampGranularities": ["word"]
3049
+ }
3050
+ }
3051
+ ```
3052
+ */
3053
+ providerOptions?: TranscriptionModelV2ProviderOptions;
3054
+ /**
3055
+ Abort signal for cancelling the operation.
3056
+ */
3057
+ abortSignal?: AbortSignal;
3058
+ /**
3059
+ Additional HTTP headers to be sent with the request.
3060
+ Only applicable for HTTP-based providers.
3061
+ */
3062
+ headers?: Record<string, string | undefined>;
3063
+ };
3064
+
3065
+ /**
3066
+ Warning from the model provider for this call. The call will proceed, but e.g.
3067
+ some settings might not be supported, which can lead to suboptimal results.
3068
+ */
3069
+ type TranscriptionModelV2CallWarning = {
3070
+ type: 'unsupported-setting';
3071
+ setting: keyof TranscriptionModelV2CallOptions;
3072
+ details?: string;
3073
+ } | {
3074
+ type: 'other';
3075
+ message: string;
3076
+ };
3077
+
3078
+ /**
3079
+ Transcription model specification version 2.
3080
+ */
3081
+ type TranscriptionModelV2 = {
3082
+ /**
3083
+ The transcription model must specify which transcription model interface
3084
+ version it implements. This will allow us to evolve the transcription
3085
+ model interface and retain backwards compatibility. The different
3086
+ implementation versions can be handled as a discriminated union
3087
+ on our side.
3088
+ */
3089
+ readonly specificationVersion: 'v2';
3090
+ /**
3091
+ Name of the provider for logging purposes.
3092
+ */
3093
+ readonly provider: string;
3094
+ /**
3095
+ Provider-specific model ID for logging purposes.
3096
+ */
3097
+ readonly modelId: string;
3098
+ /**
3099
+ Generates a transcript.
3100
+ */
3101
+ doGenerate(options: TranscriptionModelV2CallOptions): PromiseLike<{
3102
+ /**
3103
+ * The complete transcribed text from the audio.
3104
+ */
3105
+ text: string;
3106
+ /**
3107
+ * Array of transcript segments with timing information.
3108
+ * Each segment represents a portion of the transcribed text with start and end times.
3109
+ */
3110
+ segments: Array<{
3111
+ /**
3112
+ * The text content of this segment.
3113
+ */
3114
+ text: string;
3115
+ /**
3116
+ * The start time of this segment in seconds.
3117
+ */
3118
+ startSecond: number;
3119
+ /**
3120
+ * The end time of this segment in seconds.
3121
+ */
3122
+ endSecond: number;
3123
+ }>;
3124
+ /**
3125
+ * The detected language of the audio content, as an ISO-639-1 code (e.g., 'en' for English).
3126
+ * May be undefined if the language couldn't be detected.
3127
+ */
3128
+ language: string | undefined;
3129
+ /**
3130
+ * The total duration of the audio file in seconds.
3131
+ * May be undefined if the duration couldn't be determined.
3132
+ */
3133
+ durationInSeconds: number | undefined;
3134
+ /**
3135
+ Warnings for the call, e.g. unsupported settings.
3136
+ */
3137
+ warnings: Array<TranscriptionModelV2CallWarning>;
3138
+ /**
3139
+ Optional request information for telemetry and debugging purposes.
3140
+ */
3141
+ request?: {
3142
+ /**
3143
+ Raw request HTTP body that was sent to the provider API as a string (JSON should be stringified).
3144
+ Non-HTTP(s) providers should not set this.
3145
+ */
3146
+ body?: string;
3147
+ };
3148
+ /**
3149
+ Response information for telemetry and debugging purposes.
3150
+ */
3151
+ response: {
3152
+ /**
3153
+ Timestamp for the start of the generated response.
3154
+ */
3155
+ timestamp: Date;
3156
+ /**
3157
+ The ID of the response model that was used to generate the response.
3158
+ */
3159
+ modelId: string;
3160
+ /**
3161
+ Response headers.
3162
+ */
3163
+ headers?: SharedV2Headers;
3164
+ /**
3165
+ Response body.
3166
+ */
3167
+ body?: unknown;
3168
+ };
3169
+ /**
3170
+ Additional provider-specific metadata. They are passed through
3171
+ from the provider to the AI SDK and enable provider-specific
3172
+ results that can be fully encapsulated in the provider.
3173
+ */
3174
+ providerMetadata?: Record<string, Record<string, JSONValue>>;
3175
+ }>;
3176
+ };
3177
+
2874
3178
  /**
2875
3179
  * Provider for language, text embedding, and image generation models.
2876
3180
  */
@@ -2926,4 +3230,4 @@ interface ProviderV2 {
2926
3230
  speechModel?(modelId: string): SpeechModelV2;
2927
3231
  }
2928
3232
 
2929
- export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, type EmbeddingModelV3, type EmbeddingModelV3Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, type ImageModelV3, type ImageModelV3CallOptions, type ImageModelV3CallWarning, type ImageModelV3ProviderMetadata, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultOutput, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, type LanguageModelV3, type LanguageModelV3CallOptions, type LanguageModelV3CallWarning, type LanguageModelV3Content, type LanguageModelV3DataContent, type LanguageModelV3File, type LanguageModelV3FilePart, type LanguageModelV3FinishReason, type LanguageModelV3FunctionTool, type LanguageModelV3Message, type LanguageModelV3Middleware, type LanguageModelV3Prompt, type LanguageModelV3ProviderDefinedTool, type LanguageModelV3Reasoning, type LanguageModelV3ReasoningPart, type LanguageModelV3ResponseMetadata, type LanguageModelV3Source, type LanguageModelV3StreamPart, type LanguageModelV3Text, type LanguageModelV3TextPart, type LanguageModelV3ToolCall, type LanguageModelV3ToolCallPart, type LanguageModelV3ToolChoice, type LanguageModelV3ToolResult, type LanguageModelV3ToolResultOutput, type LanguageModelV3ToolResultPart, type LanguageModelV3Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV2, type ProviderV3, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SharedV3Headers, type SharedV3ProviderMetadata, type SharedV3ProviderOptions, type SpeechModelV2, type SpeechModelV2CallOptions, type SpeechModelV2CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV2, type TranscriptionModelV2CallOptions, type TranscriptionModelV2CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
3233
+ export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, type EmbeddingModelV3, type EmbeddingModelV3Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, type ImageModelV3, type ImageModelV3CallOptions, type ImageModelV3CallWarning, type ImageModelV3ProviderMetadata, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultOutput, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, type LanguageModelV3, type LanguageModelV3CallOptions, type LanguageModelV3CallWarning, type LanguageModelV3Content, type LanguageModelV3DataContent, type LanguageModelV3File, type LanguageModelV3FilePart, type LanguageModelV3FinishReason, type LanguageModelV3FunctionTool, type LanguageModelV3Message, type LanguageModelV3Middleware, type LanguageModelV3Prompt, type LanguageModelV3ProviderDefinedTool, type LanguageModelV3Reasoning, type LanguageModelV3ReasoningPart, type LanguageModelV3ResponseMetadata, type LanguageModelV3Source, type LanguageModelV3StreamPart, type LanguageModelV3Text, type LanguageModelV3TextPart, type LanguageModelV3ToolCall, type LanguageModelV3ToolCallPart, type LanguageModelV3ToolChoice, type LanguageModelV3ToolResult, type LanguageModelV3ToolResultOutput, type LanguageModelV3ToolResultPart, type LanguageModelV3Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV2, type ProviderV3, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SharedV3Headers, type SharedV3ProviderMetadata, type SharedV3ProviderOptions, type SpeechModelV2, type SpeechModelV2CallOptions, type SpeechModelV2CallWarning, type SpeechModelV3, type SpeechModelV3CallOptions, type SpeechModelV3CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV2, type TranscriptionModelV2CallOptions, type TranscriptionModelV2CallWarning, type TranscriptionModelV3, type TranscriptionModelV3CallOptions, type TranscriptionModelV3CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/provider",
3
- "version": "2.1.0-beta.4",
3
+ "version": "2.1.0-beta.5",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",