@ai-sdk/gateway 4.0.0-beta.6 → 4.0.0-beta.61

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/dist/index.js CHANGED
@@ -1,46 +1,14 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name8 in all)
8
- __defProp(target, name8, { get: all[name8], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/index.ts
21
- var src_exports = {};
22
- __export(src_exports, {
23
- GatewayAuthenticationError: () => GatewayAuthenticationError,
24
- GatewayError: () => GatewayError,
25
- GatewayInternalServerError: () => GatewayInternalServerError,
26
- GatewayInvalidRequestError: () => GatewayInvalidRequestError,
27
- GatewayModelNotFoundError: () => GatewayModelNotFoundError,
28
- GatewayRateLimitError: () => GatewayRateLimitError,
29
- GatewayResponseError: () => GatewayResponseError,
30
- createGateway: () => createGatewayProvider,
31
- createGatewayProvider: () => createGatewayProvider,
32
- gateway: () => gateway
33
- });
34
- module.exports = __toCommonJS(src_exports);
35
-
36
1
  // src/gateway-provider.ts
37
- var import_provider_utils11 = require("@ai-sdk/provider-utils");
2
+ import {
3
+ loadOptionalSetting,
4
+ withoutTrailingSlash
5
+ } from "@ai-sdk/provider-utils";
38
6
 
39
7
  // src/errors/as-gateway-error.ts
40
- var import_provider = require("@ai-sdk/provider");
8
+ import { APICallError } from "@ai-sdk/provider";
41
9
 
42
10
  // src/errors/create-gateway-error.ts
43
- var import_v42 = require("zod/v4");
11
+ import { z as z2 } from "zod/v4";
44
12
 
45
13
  // src/errors/gateway-error.ts
46
14
  var marker = "vercel.ai.gateway.error";
@@ -99,7 +67,6 @@ var GatewayAuthenticationError = class _GatewayAuthenticationError extends (_b2
99
67
  static createContextualError({
100
68
  apiKeyProvided,
101
69
  oidcTokenProvided,
102
- message = "Authentication failed",
103
70
  statusCode = 401,
104
71
  cause,
105
72
  generationId
@@ -183,15 +150,15 @@ var GatewayRateLimitError = class extends (_b4 = GatewayError, _a4 = symbol4, _b
183
150
  };
184
151
 
185
152
  // src/errors/gateway-model-not-found-error.ts
186
- var import_v4 = require("zod/v4");
187
- var import_provider_utils = require("@ai-sdk/provider-utils");
153
+ import { z } from "zod/v4";
154
+ import { lazySchema, zodSchema } from "@ai-sdk/provider-utils";
188
155
  var name4 = "GatewayModelNotFoundError";
189
156
  var marker5 = `vercel.ai.gateway.error.${name4}`;
190
157
  var symbol5 = Symbol.for(marker5);
191
- var modelNotFoundParamSchema = (0, import_provider_utils.lazySchema)(
192
- () => (0, import_provider_utils.zodSchema)(
193
- import_v4.z.object({
194
- modelId: import_v4.z.string()
158
+ var modelNotFoundParamSchema = lazySchema(
159
+ () => zodSchema(
160
+ z.object({
161
+ modelId: z.string()
195
162
  })
196
163
  )
197
164
  );
@@ -267,7 +234,11 @@ var GatewayResponseError = class extends (_b7 = GatewayError, _a7 = symbol7, _b7
267
234
  };
268
235
 
269
236
  // src/errors/create-gateway-error.ts
270
- var import_provider_utils2 = require("@ai-sdk/provider-utils");
237
+ import {
238
+ lazySchema as lazySchema2,
239
+ safeValidateTypes,
240
+ zodSchema as zodSchema2
241
+ } from "@ai-sdk/provider-utils";
271
242
  async function createGatewayErrorFromResponse({
272
243
  response,
273
244
  statusCode,
@@ -276,7 +247,7 @@ async function createGatewayErrorFromResponse({
276
247
  authMethod
277
248
  }) {
278
249
  var _a9;
279
- const parseResult = await (0, import_provider_utils2.safeValidateTypes)({
250
+ const parseResult = await safeValidateTypes({
280
251
  value: response,
281
252
  schema: gatewayErrorResponseSchema
282
253
  });
@@ -319,7 +290,7 @@ async function createGatewayErrorFromResponse({
319
290
  generationId
320
291
  });
321
292
  case "model_not_found": {
322
- const modelResult = await (0, import_provider_utils2.safeValidateTypes)({
293
+ const modelResult = await safeValidateTypes({
323
294
  value: validatedResponse.error.param,
324
295
  schema: modelNotFoundParamSchema
325
296
  });
@@ -347,16 +318,16 @@ async function createGatewayErrorFromResponse({
347
318
  });
348
319
  }
349
320
  }
350
- var gatewayErrorResponseSchema = (0, import_provider_utils2.lazySchema)(
351
- () => (0, import_provider_utils2.zodSchema)(
352
- import_v42.z.object({
353
- error: import_v42.z.object({
354
- message: import_v42.z.string(),
355
- type: import_v42.z.string().nullish(),
356
- param: import_v42.z.unknown().nullish(),
357
- code: import_v42.z.union([import_v42.z.string(), import_v42.z.number()]).nullish()
321
+ var gatewayErrorResponseSchema = lazySchema2(
322
+ () => zodSchema2(
323
+ z2.object({
324
+ error: z2.object({
325
+ message: z2.string(),
326
+ type: z2.string().nullish(),
327
+ param: z2.unknown().nullish(),
328
+ code: z2.union([z2.string(), z2.number()]).nullish()
358
329
  }),
359
- generationId: import_v42.z.string().nullish()
330
+ generationId: z2.string().nullish()
360
331
  })
361
332
  )
362
333
  );
@@ -430,7 +401,7 @@ async function asGatewayError(error, authMethod) {
430
401
  cause: error
431
402
  });
432
403
  }
433
- if (import_provider.APICallError.isInstance(error)) {
404
+ if (APICallError.isInstance(error)) {
434
405
  if (error.cause && isTimeoutError(error.cause)) {
435
406
  return GatewayTimeoutError.createTimeoutError({
436
407
  originalMessage: error.message,
@@ -470,37 +441,59 @@ function extractApiCallResponse(error) {
470
441
  }
471
442
 
472
443
  // src/errors/parse-auth-method.ts
473
- var import_v43 = require("zod/v4");
474
- var import_provider_utils3 = require("@ai-sdk/provider-utils");
444
+ import { z as z3 } from "zod/v4";
445
+ import {
446
+ lazySchema as lazySchema3,
447
+ safeValidateTypes as safeValidateTypes2,
448
+ zodSchema as zodSchema3
449
+ } from "@ai-sdk/provider-utils";
475
450
  var GATEWAY_AUTH_METHOD_HEADER = "ai-gateway-auth-method";
476
451
  async function parseAuthMethod(headers) {
477
- const result = await (0, import_provider_utils3.safeValidateTypes)({
452
+ const result = await safeValidateTypes2({
478
453
  value: headers[GATEWAY_AUTH_METHOD_HEADER],
479
454
  schema: gatewayAuthMethodSchema
480
455
  });
481
456
  return result.success ? result.value : void 0;
482
457
  }
483
- var gatewayAuthMethodSchema = (0, import_provider_utils3.lazySchema)(
484
- () => (0, import_provider_utils3.zodSchema)(import_v43.z.union([import_v43.z.literal("api-key"), import_v43.z.literal("oidc")]))
458
+ var gatewayAuthMethodSchema = lazySchema3(
459
+ () => zodSchema3(z3.union([z3.literal("api-key"), z3.literal("oidc")]))
485
460
  );
486
461
 
487
462
  // src/gateway-fetch-metadata.ts
488
- var import_provider_utils4 = require("@ai-sdk/provider-utils");
489
- var import_v44 = require("zod/v4");
463
+ import {
464
+ createJsonErrorResponseHandler,
465
+ createJsonResponseHandler,
466
+ getFromApi,
467
+ lazySchema as lazySchema4,
468
+ resolve,
469
+ zodSchema as zodSchema4
470
+ } from "@ai-sdk/provider-utils";
471
+ import { z as z4 } from "zod/v4";
472
+
473
+ // src/gateway-model-entry.ts
474
+ var KNOWN_MODEL_TYPES = [
475
+ "embedding",
476
+ "image",
477
+ "language",
478
+ "reranking",
479
+ "video"
480
+ ];
481
+
482
+ // src/gateway-fetch-metadata.ts
490
483
  var GatewayFetchMetadata = class {
491
484
  constructor(config) {
492
485
  this.config = config;
493
486
  }
494
487
  async getAvailableModels() {
495
488
  try {
496
- const { value } = await (0, import_provider_utils4.getFromApi)({
489
+ const { value } = await getFromApi({
497
490
  url: `${this.config.baseURL}/config`,
498
- headers: await (0, import_provider_utils4.resolve)(this.config.headers()),
499
- successfulResponseHandler: (0, import_provider_utils4.createJsonResponseHandler)(
491
+ headers: this.config.headers ? await resolve(this.config.headers) : void 0,
492
+ successfulResponseHandler: createJsonResponseHandler(
500
493
  gatewayAvailableModelsResponseSchema
501
494
  ),
502
- failedResponseHandler: (0, import_provider_utils4.createJsonErrorResponseHandler)({
503
- errorSchema: import_v44.z.any(),
495
+ failedResponseHandler: createJsonErrorResponseHandler({
496
+ errorSchema: z4.any(),
504
497
  errorToMessage: (data) => data
505
498
  }),
506
499
  fetch: this.config.fetch
@@ -513,14 +506,14 @@ var GatewayFetchMetadata = class {
513
506
  async getCredits() {
514
507
  try {
515
508
  const baseUrl = new URL(this.config.baseURL);
516
- const { value } = await (0, import_provider_utils4.getFromApi)({
509
+ const { value } = await getFromApi({
517
510
  url: `${baseUrl.origin}/v1/credits`,
518
- headers: await (0, import_provider_utils4.resolve)(this.config.headers()),
519
- successfulResponseHandler: (0, import_provider_utils4.createJsonResponseHandler)(
511
+ headers: this.config.headers ? await resolve(this.config.headers) : void 0,
512
+ successfulResponseHandler: createJsonResponseHandler(
520
513
  gatewayCreditsResponseSchema
521
514
  ),
522
- failedResponseHandler: (0, import_provider_utils4.createJsonErrorResponseHandler)({
523
- errorSchema: import_v44.z.any(),
515
+ failedResponseHandler: createJsonErrorResponseHandler({
516
+ errorSchema: z4.any(),
524
517
  errorToMessage: (data) => data
525
518
  }),
526
519
  fetch: this.config.fetch
@@ -531,19 +524,19 @@ var GatewayFetchMetadata = class {
531
524
  }
532
525
  }
533
526
  };
534
- var gatewayAvailableModelsResponseSchema = (0, import_provider_utils4.lazySchema)(
535
- () => (0, import_provider_utils4.zodSchema)(
536
- import_v44.z.object({
537
- models: import_v44.z.array(
538
- import_v44.z.object({
539
- id: import_v44.z.string(),
540
- name: import_v44.z.string(),
541
- description: import_v44.z.string().nullish(),
542
- pricing: import_v44.z.object({
543
- input: import_v44.z.string(),
544
- output: import_v44.z.string(),
545
- input_cache_read: import_v44.z.string().nullish(),
546
- input_cache_write: import_v44.z.string().nullish()
527
+ var gatewayAvailableModelsResponseSchema = lazySchema4(
528
+ () => zodSchema4(
529
+ z4.object({
530
+ models: z4.array(
531
+ z4.object({
532
+ id: z4.string(),
533
+ name: z4.string(),
534
+ description: z4.string().nullish(),
535
+ pricing: z4.object({
536
+ input: z4.string(),
537
+ output: z4.string(),
538
+ input_cache_read: z4.string().nullish(),
539
+ input_cache_write: z4.string().nullish()
547
540
  }).transform(
548
541
  ({ input, output, input_cache_read, input_cache_write }) => ({
549
542
  input,
@@ -552,22 +545,26 @@ var gatewayAvailableModelsResponseSchema = (0, import_provider_utils4.lazySchema
552
545
  ...input_cache_write ? { cacheCreationInputTokens: input_cache_write } : {}
553
546
  })
554
547
  ).nullish(),
555
- specification: import_v44.z.object({
556
- specificationVersion: import_v44.z.literal("v3"),
557
- provider: import_v44.z.string(),
558
- modelId: import_v44.z.string()
548
+ specification: z4.object({
549
+ specificationVersion: z4.literal("v4"),
550
+ provider: z4.string(),
551
+ modelId: z4.string()
559
552
  }),
560
- modelType: import_v44.z.enum(["embedding", "image", "language", "video"]).nullish()
553
+ modelType: z4.string().nullish()
561
554
  })
555
+ ).transform(
556
+ (models) => models.filter(
557
+ (m) => m.modelType == null || KNOWN_MODEL_TYPES.includes(m.modelType)
558
+ )
562
559
  )
563
560
  })
564
561
  )
565
562
  );
566
- var gatewayCreditsResponseSchema = (0, import_provider_utils4.lazySchema)(
567
- () => (0, import_provider_utils4.zodSchema)(
568
- import_v44.z.object({
569
- balance: import_v44.z.string(),
570
- total_used: import_v44.z.string()
563
+ var gatewayCreditsResponseSchema = lazySchema4(
564
+ () => zodSchema4(
565
+ z4.object({
566
+ balance: z4.string(),
567
+ total_used: z4.string()
571
568
  }).transform(({ balance, total_used }) => ({
572
569
  balance,
573
570
  totalUsed: total_used
@@ -575,16 +572,238 @@ var gatewayCreditsResponseSchema = (0, import_provider_utils4.lazySchema)(
575
572
  )
576
573
  );
577
574
 
575
+ // src/gateway-spend-report.ts
576
+ import {
577
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler2,
578
+ createJsonResponseHandler as createJsonResponseHandler2,
579
+ getFromApi as getFromApi2,
580
+ lazySchema as lazySchema5,
581
+ resolve as resolve2,
582
+ zodSchema as zodSchema5
583
+ } from "@ai-sdk/provider-utils";
584
+ import { z as z5 } from "zod/v4";
585
+ var GatewaySpendReport = class {
586
+ constructor(config) {
587
+ this.config = config;
588
+ }
589
+ async getSpendReport(params) {
590
+ try {
591
+ const baseUrl = new URL(this.config.baseURL);
592
+ const searchParams = new URLSearchParams();
593
+ searchParams.set("start_date", params.startDate);
594
+ searchParams.set("end_date", params.endDate);
595
+ if (params.groupBy) {
596
+ searchParams.set("group_by", params.groupBy);
597
+ }
598
+ if (params.datePart) {
599
+ searchParams.set("date_part", params.datePart);
600
+ }
601
+ if (params.userId) {
602
+ searchParams.set("user_id", params.userId);
603
+ }
604
+ if (params.model) {
605
+ searchParams.set("model", params.model);
606
+ }
607
+ if (params.provider) {
608
+ searchParams.set("provider", params.provider);
609
+ }
610
+ if (params.credentialType) {
611
+ searchParams.set("credential_type", params.credentialType);
612
+ }
613
+ if (params.tags && params.tags.length > 0) {
614
+ searchParams.set("tags", params.tags.join(","));
615
+ }
616
+ const { value } = await getFromApi2({
617
+ url: `${baseUrl.origin}/v1/report?${searchParams.toString()}`,
618
+ headers: this.config.headers ? await resolve2(this.config.headers) : void 0,
619
+ successfulResponseHandler: createJsonResponseHandler2(
620
+ gatewaySpendReportResponseSchema
621
+ ),
622
+ failedResponseHandler: createJsonErrorResponseHandler2({
623
+ errorSchema: z5.any(),
624
+ errorToMessage: (data) => data
625
+ }),
626
+ fetch: this.config.fetch
627
+ });
628
+ return value;
629
+ } catch (error) {
630
+ throw await asGatewayError(error);
631
+ }
632
+ }
633
+ };
634
+ var gatewaySpendReportResponseSchema = lazySchema5(
635
+ () => zodSchema5(
636
+ z5.object({
637
+ results: z5.array(
638
+ z5.object({
639
+ day: z5.string().optional(),
640
+ hour: z5.string().optional(),
641
+ user: z5.string().optional(),
642
+ model: z5.string().optional(),
643
+ tag: z5.string().optional(),
644
+ provider: z5.string().optional(),
645
+ credential_type: z5.enum(["byok", "system"]).optional(),
646
+ total_cost: z5.number(),
647
+ market_cost: z5.number().optional(),
648
+ input_tokens: z5.number().optional(),
649
+ output_tokens: z5.number().optional(),
650
+ cached_input_tokens: z5.number().optional(),
651
+ cache_creation_input_tokens: z5.number().optional(),
652
+ reasoning_tokens: z5.number().optional(),
653
+ request_count: z5.number().optional()
654
+ }).transform(
655
+ ({
656
+ credential_type,
657
+ total_cost,
658
+ market_cost,
659
+ input_tokens,
660
+ output_tokens,
661
+ cached_input_tokens,
662
+ cache_creation_input_tokens,
663
+ reasoning_tokens,
664
+ request_count,
665
+ ...rest
666
+ }) => ({
667
+ ...rest,
668
+ ...credential_type !== void 0 ? { credentialType: credential_type } : {},
669
+ totalCost: total_cost,
670
+ ...market_cost !== void 0 ? { marketCost: market_cost } : {},
671
+ ...input_tokens !== void 0 ? { inputTokens: input_tokens } : {},
672
+ ...output_tokens !== void 0 ? { outputTokens: output_tokens } : {},
673
+ ...cached_input_tokens !== void 0 ? { cachedInputTokens: cached_input_tokens } : {},
674
+ ...cache_creation_input_tokens !== void 0 ? { cacheCreationInputTokens: cache_creation_input_tokens } : {},
675
+ ...reasoning_tokens !== void 0 ? { reasoningTokens: reasoning_tokens } : {},
676
+ ...request_count !== void 0 ? { requestCount: request_count } : {}
677
+ })
678
+ )
679
+ )
680
+ })
681
+ )
682
+ );
683
+
684
+ // src/gateway-generation-info.ts
685
+ import {
686
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler3,
687
+ createJsonResponseHandler as createJsonResponseHandler3,
688
+ getFromApi as getFromApi3,
689
+ lazySchema as lazySchema6,
690
+ resolve as resolve3,
691
+ zodSchema as zodSchema6
692
+ } from "@ai-sdk/provider-utils";
693
+ import { z as z6 } from "zod/v4";
694
+ var GatewayGenerationInfoFetcher = class {
695
+ constructor(config) {
696
+ this.config = config;
697
+ }
698
+ async getGenerationInfo(params) {
699
+ try {
700
+ const baseUrl = new URL(this.config.baseURL);
701
+ const { value } = await getFromApi3({
702
+ url: `${baseUrl.origin}/v1/generation?id=${encodeURIComponent(params.id)}`,
703
+ headers: this.config.headers ? await resolve3(this.config.headers) : void 0,
704
+ successfulResponseHandler: createJsonResponseHandler3(
705
+ gatewayGenerationInfoResponseSchema
706
+ ),
707
+ failedResponseHandler: createJsonErrorResponseHandler3({
708
+ errorSchema: z6.any(),
709
+ errorToMessage: (data) => data
710
+ }),
711
+ fetch: this.config.fetch
712
+ });
713
+ return value;
714
+ } catch (error) {
715
+ throw await asGatewayError(error);
716
+ }
717
+ }
718
+ };
719
+ var gatewayGenerationInfoResponseSchema = lazySchema6(
720
+ () => zodSchema6(
721
+ z6.object({
722
+ data: z6.object({
723
+ id: z6.string(),
724
+ total_cost: z6.number(),
725
+ upstream_inference_cost: z6.number(),
726
+ usage: z6.number(),
727
+ created_at: z6.string(),
728
+ model: z6.string(),
729
+ is_byok: z6.boolean(),
730
+ provider_name: z6.string(),
731
+ streamed: z6.boolean(),
732
+ finish_reason: z6.string(),
733
+ latency: z6.number(),
734
+ generation_time: z6.number(),
735
+ native_tokens_prompt: z6.number(),
736
+ native_tokens_completion: z6.number(),
737
+ native_tokens_reasoning: z6.number(),
738
+ native_tokens_cached: z6.number(),
739
+ native_tokens_cache_creation: z6.number(),
740
+ billable_web_search_calls: z6.number()
741
+ }).transform(
742
+ ({
743
+ total_cost,
744
+ upstream_inference_cost,
745
+ created_at,
746
+ is_byok,
747
+ provider_name,
748
+ finish_reason,
749
+ generation_time,
750
+ native_tokens_prompt,
751
+ native_tokens_completion,
752
+ native_tokens_reasoning,
753
+ native_tokens_cached,
754
+ native_tokens_cache_creation,
755
+ billable_web_search_calls,
756
+ ...rest
757
+ }) => ({
758
+ ...rest,
759
+ totalCost: total_cost,
760
+ upstreamInferenceCost: upstream_inference_cost,
761
+ createdAt: created_at,
762
+ isByok: is_byok,
763
+ providerName: provider_name,
764
+ finishReason: finish_reason,
765
+ generationTime: generation_time,
766
+ promptTokens: native_tokens_prompt,
767
+ completionTokens: native_tokens_completion,
768
+ reasoningTokens: native_tokens_reasoning,
769
+ cachedTokens: native_tokens_cached,
770
+ cacheCreationTokens: native_tokens_cache_creation,
771
+ billableWebSearchCalls: billable_web_search_calls
772
+ })
773
+ )
774
+ }).transform(({ data }) => data)
775
+ )
776
+ );
777
+
578
778
  // src/gateway-language-model.ts
579
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
580
- var import_v45 = require("zod/v4");
581
- var GatewayLanguageModel = class {
779
+ import {
780
+ combineHeaders,
781
+ createEventSourceResponseHandler,
782
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler4,
783
+ createJsonResponseHandler as createJsonResponseHandler4,
784
+ postJsonToApi,
785
+ resolve as resolve4,
786
+ serializeModelOptions,
787
+ WORKFLOW_SERIALIZE,
788
+ WORKFLOW_DESERIALIZE
789
+ } from "@ai-sdk/provider-utils";
790
+ import { z as z7 } from "zod/v4";
791
+ var GatewayLanguageModel = class _GatewayLanguageModel {
582
792
  constructor(modelId, config) {
583
793
  this.modelId = modelId;
584
794
  this.config = config;
585
- this.specificationVersion = "v3";
795
+ this.specificationVersion = "v4";
586
796
  this.supportedUrls = { "*/*": [/.*/] };
587
797
  }
798
+ static [WORKFLOW_SERIALIZE](model) {
799
+ return serializeModelOptions({
800
+ modelId: model.modelId,
801
+ config: model.config
802
+ });
803
+ }
804
+ static [WORKFLOW_DESERIALIZE](options) {
805
+ return new _GatewayLanguageModel(options.modelId, options.config);
806
+ }
588
807
  get provider() {
589
808
  return this.config.provider;
590
809
  }
@@ -598,24 +817,24 @@ var GatewayLanguageModel = class {
598
817
  async doGenerate(options) {
599
818
  const { args, warnings } = await this.getArgs(options);
600
819
  const { abortSignal } = options;
601
- const resolvedHeaders = await (0, import_provider_utils5.resolve)(this.config.headers());
820
+ const resolvedHeaders = this.config.headers ? await resolve4(this.config.headers) : void 0;
602
821
  try {
603
822
  const {
604
823
  responseHeaders,
605
824
  value: responseBody,
606
825
  rawValue: rawResponse
607
- } = await (0, import_provider_utils5.postJsonToApi)({
826
+ } = await postJsonToApi({
608
827
  url: this.getUrl(),
609
- headers: (0, import_provider_utils5.combineHeaders)(
828
+ headers: combineHeaders(
610
829
  resolvedHeaders,
611
830
  options.headers,
612
831
  this.getModelConfigHeaders(this.modelId, false),
613
- await (0, import_provider_utils5.resolve)(this.config.o11yHeaders)
832
+ await resolve4(this.config.o11yHeaders)
614
833
  ),
615
834
  body: args,
616
- successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(import_v45.z.any()),
617
- failedResponseHandler: (0, import_provider_utils5.createJsonErrorResponseHandler)({
618
- errorSchema: import_v45.z.any(),
835
+ successfulResponseHandler: createJsonResponseHandler4(z7.any()),
836
+ failedResponseHandler: createJsonErrorResponseHandler4({
837
+ errorSchema: z7.any(),
619
838
  errorToMessage: (data) => data
620
839
  }),
621
840
  ...abortSignal && { abortSignal },
@@ -628,26 +847,29 @@ var GatewayLanguageModel = class {
628
847
  warnings
629
848
  };
630
849
  } catch (error) {
631
- throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));
850
+ throw await asGatewayError(
851
+ error,
852
+ await parseAuthMethod(resolvedHeaders != null ? resolvedHeaders : {})
853
+ );
632
854
  }
633
855
  }
634
856
  async doStream(options) {
635
857
  const { args, warnings } = await this.getArgs(options);
636
858
  const { abortSignal } = options;
637
- const resolvedHeaders = await (0, import_provider_utils5.resolve)(this.config.headers());
859
+ const resolvedHeaders = this.config.headers ? await resolve4(this.config.headers) : void 0;
638
860
  try {
639
- const { value: response, responseHeaders } = await (0, import_provider_utils5.postJsonToApi)({
861
+ const { value: response, responseHeaders } = await postJsonToApi({
640
862
  url: this.getUrl(),
641
- headers: (0, import_provider_utils5.combineHeaders)(
863
+ headers: combineHeaders(
642
864
  resolvedHeaders,
643
865
  options.headers,
644
866
  this.getModelConfigHeaders(this.modelId, true),
645
- await (0, import_provider_utils5.resolve)(this.config.o11yHeaders)
867
+ await resolve4(this.config.o11yHeaders)
646
868
  ),
647
869
  body: args,
648
- successfulResponseHandler: (0, import_provider_utils5.createEventSourceResponseHandler)(import_v45.z.any()),
649
- failedResponseHandler: (0, import_provider_utils5.createJsonErrorResponseHandler)({
650
- errorSchema: import_v45.z.any(),
870
+ successfulResponseHandler: createEventSourceResponseHandler(z7.any()),
871
+ failedResponseHandler: createJsonErrorResponseHandler4({
872
+ errorSchema: z7.any(),
651
873
  errorToMessage: (data) => data
652
874
  }),
653
875
  ...abortSignal && { abortSignal },
@@ -683,7 +905,10 @@ var GatewayLanguageModel = class {
683
905
  response: { headers: responseHeaders }
684
906
  };
685
907
  } catch (error) {
686
- throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));
908
+ throw await asGatewayError(
909
+ error,
910
+ await parseAuthMethod(resolvedHeaders != null ? resolvedHeaders : {})
911
+ );
687
912
  }
688
913
  }
689
914
  isFilePart(part) {
@@ -717,7 +942,7 @@ var GatewayLanguageModel = class {
717
942
  }
718
943
  getModelConfigHeaders(modelId, streaming) {
719
944
  return {
720
- "ai-language-model-specification-version": "3",
945
+ "ai-language-model-specification-version": "4",
721
946
  "ai-language-model-id": modelId,
722
947
  "ai-language-model-streaming": String(streaming)
723
948
  };
@@ -725,16 +950,36 @@ var GatewayLanguageModel = class {
725
950
  };
726
951
 
727
952
  // src/gateway-embedding-model.ts
728
- var import_provider_utils6 = require("@ai-sdk/provider-utils");
729
- var import_v46 = require("zod/v4");
730
- var GatewayEmbeddingModel = class {
953
+ import {
954
+ combineHeaders as combineHeaders2,
955
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler5,
956
+ createJsonResponseHandler as createJsonResponseHandler5,
957
+ lazySchema as lazySchema7,
958
+ postJsonToApi as postJsonToApi2,
959
+ resolve as resolve5,
960
+ serializeModelOptions as serializeModelOptions2,
961
+ WORKFLOW_SERIALIZE as WORKFLOW_SERIALIZE2,
962
+ WORKFLOW_DESERIALIZE as WORKFLOW_DESERIALIZE2,
963
+ zodSchema as zodSchema7
964
+ } from "@ai-sdk/provider-utils";
965
+ import { z as z8 } from "zod/v4";
966
+ var GatewayEmbeddingModel = class _GatewayEmbeddingModel {
731
967
  constructor(modelId, config) {
732
968
  this.modelId = modelId;
733
969
  this.config = config;
734
- this.specificationVersion = "v3";
970
+ this.specificationVersion = "v4";
735
971
  this.maxEmbeddingsPerCall = 2048;
736
972
  this.supportsParallelCalls = true;
737
973
  }
974
+ static [WORKFLOW_SERIALIZE2](model) {
975
+ return serializeModelOptions2({
976
+ modelId: model.modelId,
977
+ config: model.config
978
+ });
979
+ }
980
+ static [WORKFLOW_DESERIALIZE2](options) {
981
+ return new _GatewayEmbeddingModel(options.modelId, options.config);
982
+ }
738
983
  get provider() {
739
984
  return this.config.provider;
740
985
  }
@@ -745,29 +990,29 @@ var GatewayEmbeddingModel = class {
745
990
  providerOptions
746
991
  }) {
747
992
  var _a9;
748
- const resolvedHeaders = await (0, import_provider_utils6.resolve)(this.config.headers());
993
+ const resolvedHeaders = this.config.headers ? await resolve5(this.config.headers) : void 0;
749
994
  try {
750
995
  const {
751
996
  responseHeaders,
752
997
  value: responseBody,
753
998
  rawValue
754
- } = await (0, import_provider_utils6.postJsonToApi)({
999
+ } = await postJsonToApi2({
755
1000
  url: this.getUrl(),
756
- headers: (0, import_provider_utils6.combineHeaders)(
1001
+ headers: combineHeaders2(
757
1002
  resolvedHeaders,
758
1003
  headers != null ? headers : {},
759
1004
  this.getModelConfigHeaders(),
760
- await (0, import_provider_utils6.resolve)(this.config.o11yHeaders)
1005
+ await resolve5(this.config.o11yHeaders)
761
1006
  ),
762
1007
  body: {
763
1008
  values,
764
1009
  ...providerOptions ? { providerOptions } : {}
765
1010
  },
766
- successfulResponseHandler: (0, import_provider_utils6.createJsonResponseHandler)(
1011
+ successfulResponseHandler: createJsonResponseHandler5(
767
1012
  gatewayEmbeddingResponseSchema
768
1013
  ),
769
- failedResponseHandler: (0, import_provider_utils6.createJsonErrorResponseHandler)({
770
- errorSchema: import_v46.z.any(),
1014
+ failedResponseHandler: createJsonErrorResponseHandler5({
1015
+ errorSchema: z8.any(),
771
1016
  errorToMessage: (data) => data
772
1017
  }),
773
1018
  ...abortSignal && { abortSignal },
@@ -781,7 +1026,10 @@ var GatewayEmbeddingModel = class {
781
1026
  warnings: []
782
1027
  };
783
1028
  } catch (error) {
784
- throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));
1029
+ throw await asGatewayError(
1030
+ error,
1031
+ await parseAuthMethod(resolvedHeaders != null ? resolvedHeaders : {})
1032
+ );
785
1033
  }
786
1034
  }
787
1035
  getUrl() {
@@ -789,32 +1037,51 @@ var GatewayEmbeddingModel = class {
789
1037
  }
790
1038
  getModelConfigHeaders() {
791
1039
  return {
792
- "ai-embedding-model-specification-version": "3",
1040
+ "ai-embedding-model-specification-version": "4",
793
1041
  "ai-model-id": this.modelId
794
1042
  };
795
1043
  }
796
1044
  };
797
- var gatewayEmbeddingResponseSchema = (0, import_provider_utils6.lazySchema)(
798
- () => (0, import_provider_utils6.zodSchema)(
799
- import_v46.z.object({
800
- embeddings: import_v46.z.array(import_v46.z.array(import_v46.z.number())),
801
- usage: import_v46.z.object({ tokens: import_v46.z.number() }).nullish(),
802
- providerMetadata: import_v46.z.record(import_v46.z.string(), import_v46.z.record(import_v46.z.string(), import_v46.z.unknown())).optional()
1045
+ var gatewayEmbeddingResponseSchema = lazySchema7(
1046
+ () => zodSchema7(
1047
+ z8.object({
1048
+ embeddings: z8.array(z8.array(z8.number())),
1049
+ usage: z8.object({ tokens: z8.number() }).nullish(),
1050
+ providerMetadata: z8.record(z8.string(), z8.record(z8.string(), z8.unknown())).optional()
803
1051
  })
804
1052
  )
805
1053
  );
806
1054
 
807
1055
  // src/gateway-image-model.ts
808
- var import_provider_utils7 = require("@ai-sdk/provider-utils");
809
- var import_v47 = require("zod/v4");
810
- var GatewayImageModel = class {
1056
+ import {
1057
+ combineHeaders as combineHeaders3,
1058
+ convertUint8ArrayToBase64,
1059
+ createJsonResponseHandler as createJsonResponseHandler6,
1060
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler6,
1061
+ postJsonToApi as postJsonToApi3,
1062
+ resolve as resolve6,
1063
+ serializeModelOptions as serializeModelOptions3,
1064
+ WORKFLOW_SERIALIZE as WORKFLOW_SERIALIZE3,
1065
+ WORKFLOW_DESERIALIZE as WORKFLOW_DESERIALIZE3
1066
+ } from "@ai-sdk/provider-utils";
1067
+ import { z as z9 } from "zod/v4";
1068
+ var GatewayImageModel = class _GatewayImageModel {
811
1069
  constructor(modelId, config) {
812
1070
  this.modelId = modelId;
813
1071
  this.config = config;
814
- this.specificationVersion = "v3";
1072
+ this.specificationVersion = "v4";
815
1073
  // Set a very large number to prevent client-side splitting of requests
816
1074
  this.maxImagesPerCall = Number.MAX_SAFE_INTEGER;
817
1075
  }
1076
+ static [WORKFLOW_SERIALIZE3](model) {
1077
+ return serializeModelOptions3({
1078
+ modelId: model.modelId,
1079
+ config: model.config
1080
+ });
1081
+ }
1082
+ static [WORKFLOW_DESERIALIZE3](options) {
1083
+ return new _GatewayImageModel(options.modelId, options.config);
1084
+ }
818
1085
  get provider() {
819
1086
  return this.config.provider;
820
1087
  }
@@ -831,19 +1098,15 @@ var GatewayImageModel = class {
831
1098
  abortSignal
832
1099
  }) {
833
1100
  var _a9, _b9, _c, _d;
834
- const resolvedHeaders = await (0, import_provider_utils7.resolve)(this.config.headers());
1101
+ const resolvedHeaders = this.config.headers ? await resolve6(this.config.headers) : void 0;
835
1102
  try {
836
- const {
837
- responseHeaders,
838
- value: responseBody,
839
- rawValue
840
- } = await (0, import_provider_utils7.postJsonToApi)({
1103
+ const { responseHeaders, value: responseBody } = await postJsonToApi3({
841
1104
  url: this.getUrl(),
842
- headers: (0, import_provider_utils7.combineHeaders)(
1105
+ headers: combineHeaders3(
843
1106
  resolvedHeaders,
844
1107
  headers != null ? headers : {},
845
1108
  this.getModelConfigHeaders(),
846
- await (0, import_provider_utils7.resolve)(this.config.o11yHeaders)
1109
+ await resolve6(this.config.o11yHeaders)
847
1110
  ),
848
1111
  body: {
849
1112
  prompt,
@@ -857,11 +1120,11 @@ var GatewayImageModel = class {
857
1120
  },
858
1121
  ...mask && { mask: maybeEncodeImageFile(mask) }
859
1122
  },
860
- successfulResponseHandler: (0, import_provider_utils7.createJsonResponseHandler)(
1123
+ successfulResponseHandler: createJsonResponseHandler6(
861
1124
  gatewayImageResponseSchema
862
1125
  ),
863
- failedResponseHandler: (0, import_provider_utils7.createJsonErrorResponseHandler)({
864
- errorSchema: import_v47.z.any(),
1126
+ failedResponseHandler: createJsonErrorResponseHandler6({
1127
+ errorSchema: z9.any(),
865
1128
  errorToMessage: (data) => data
866
1129
  }),
867
1130
  ...abortSignal && { abortSignal },
@@ -886,7 +1149,10 @@ var GatewayImageModel = class {
886
1149
  }
887
1150
  };
888
1151
  } catch (error) {
889
- throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));
1152
+ throw await asGatewayError(
1153
+ error,
1154
+ await parseAuthMethod(resolvedHeaders != null ? resolvedHeaders : {})
1155
+ );
890
1156
  }
891
1157
  }
892
1158
  getUrl() {
@@ -894,7 +1160,7 @@ var GatewayImageModel = class {
894
1160
  }
895
1161
  getModelConfigHeaders() {
896
1162
  return {
897
- "ai-image-model-specification-version": "3",
1163
+ "ai-image-model-specification-version": "4",
898
1164
  "ai-model-id": this.modelId
899
1165
  };
900
1166
  }
@@ -903,52 +1169,59 @@ function maybeEncodeImageFile(file) {
903
1169
  if (file.type === "file" && file.data instanceof Uint8Array) {
904
1170
  return {
905
1171
  ...file,
906
- data: (0, import_provider_utils7.convertUint8ArrayToBase64)(file.data)
1172
+ data: convertUint8ArrayToBase64(file.data)
907
1173
  };
908
1174
  }
909
1175
  return file;
910
1176
  }
911
- var providerMetadataEntrySchema = import_v47.z.object({
912
- images: import_v47.z.array(import_v47.z.unknown()).optional()
913
- }).catchall(import_v47.z.unknown());
914
- var gatewayImageWarningSchema = import_v47.z.discriminatedUnion("type", [
915
- import_v47.z.object({
916
- type: import_v47.z.literal("unsupported"),
917
- feature: import_v47.z.string(),
918
- details: import_v47.z.string().optional()
1177
+ var providerMetadataEntrySchema = z9.object({
1178
+ images: z9.array(z9.unknown()).optional()
1179
+ }).catchall(z9.unknown());
1180
+ var gatewayImageWarningSchema = z9.discriminatedUnion("type", [
1181
+ z9.object({
1182
+ type: z9.literal("unsupported"),
1183
+ feature: z9.string(),
1184
+ details: z9.string().optional()
919
1185
  }),
920
- import_v47.z.object({
921
- type: import_v47.z.literal("compatibility"),
922
- feature: import_v47.z.string(),
923
- details: import_v47.z.string().optional()
1186
+ z9.object({
1187
+ type: z9.literal("compatibility"),
1188
+ feature: z9.string(),
1189
+ details: z9.string().optional()
924
1190
  }),
925
- import_v47.z.object({
926
- type: import_v47.z.literal("other"),
927
- message: import_v47.z.string()
1191
+ z9.object({
1192
+ type: z9.literal("other"),
1193
+ message: z9.string()
928
1194
  })
929
1195
  ]);
930
- var gatewayImageUsageSchema = import_v47.z.object({
931
- inputTokens: import_v47.z.number().nullish(),
932
- outputTokens: import_v47.z.number().nullish(),
933
- totalTokens: import_v47.z.number().nullish()
1196
+ var gatewayImageUsageSchema = z9.object({
1197
+ inputTokens: z9.number().nullish(),
1198
+ outputTokens: z9.number().nullish(),
1199
+ totalTokens: z9.number().nullish()
934
1200
  });
935
- var gatewayImageResponseSchema = import_v47.z.object({
936
- images: import_v47.z.array(import_v47.z.string()),
1201
+ var gatewayImageResponseSchema = z9.object({
1202
+ images: z9.array(z9.string()),
937
1203
  // Always base64 strings over the wire
938
- warnings: import_v47.z.array(gatewayImageWarningSchema).optional(),
939
- providerMetadata: import_v47.z.record(import_v47.z.string(), providerMetadataEntrySchema).optional(),
1204
+ warnings: z9.array(gatewayImageWarningSchema).optional(),
1205
+ providerMetadata: z9.record(z9.string(), providerMetadataEntrySchema).optional(),
940
1206
  usage: gatewayImageUsageSchema.optional()
941
1207
  });
942
1208
 
943
1209
  // src/gateway-video-model.ts
944
- var import_provider2 = require("@ai-sdk/provider");
945
- var import_provider_utils8 = require("@ai-sdk/provider-utils");
946
- var import_v48 = require("zod/v4");
1210
+ import { APICallError as APICallError2 } from "@ai-sdk/provider";
1211
+ import {
1212
+ combineHeaders as combineHeaders4,
1213
+ convertUint8ArrayToBase64 as convertUint8ArrayToBase642,
1214
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler7,
1215
+ parseJsonEventStream,
1216
+ postJsonToApi as postJsonToApi4,
1217
+ resolve as resolve7
1218
+ } from "@ai-sdk/provider-utils";
1219
+ import { z as z10 } from "zod/v4";
947
1220
  var GatewayVideoModel = class {
948
1221
  constructor(modelId, config) {
949
1222
  this.modelId = modelId;
950
1223
  this.config = config;
951
- this.specificationVersion = "v3";
1224
+ this.specificationVersion = "v4";
952
1225
  // Set a very large number to prevent client-side splitting of requests
953
1226
  this.maxVideosPerCall = Number.MAX_SAFE_INTEGER;
954
1227
  }
@@ -969,15 +1242,15 @@ var GatewayVideoModel = class {
969
1242
  abortSignal
970
1243
  }) {
971
1244
  var _a9;
972
- const resolvedHeaders = await (0, import_provider_utils8.resolve)(this.config.headers());
1245
+ const resolvedHeaders = this.config.headers ? await resolve7(this.config.headers) : void 0;
973
1246
  try {
974
- const { responseHeaders, value: responseBody } = await (0, import_provider_utils8.postJsonToApi)({
1247
+ const { responseHeaders, value: responseBody } = await postJsonToApi4({
975
1248
  url: this.getUrl(),
976
- headers: (0, import_provider_utils8.combineHeaders)(
1249
+ headers: combineHeaders4(
977
1250
  resolvedHeaders,
978
1251
  headers != null ? headers : {},
979
1252
  this.getModelConfigHeaders(),
980
- await (0, import_provider_utils8.resolve)(this.config.o11yHeaders),
1253
+ await resolve7(this.config.o11yHeaders),
981
1254
  { accept: "text/event-stream" }
982
1255
  ),
983
1256
  body: {
@@ -997,14 +1270,14 @@ var GatewayVideoModel = class {
997
1270
  requestBodyValues
998
1271
  }) => {
999
1272
  if (response.body == null) {
1000
- throw new import_provider2.APICallError({
1273
+ throw new APICallError2({
1001
1274
  message: "SSE response body is empty",
1002
1275
  url,
1003
1276
  requestBodyValues,
1004
1277
  statusCode: response.status
1005
1278
  });
1006
1279
  }
1007
- const eventStream = (0, import_provider_utils8.parseJsonEventStream)({
1280
+ const eventStream = parseJsonEventStream({
1008
1281
  stream: response.body,
1009
1282
  schema: gatewayVideoEventSchema
1010
1283
  });
@@ -1012,7 +1285,7 @@ var GatewayVideoModel = class {
1012
1285
  const { done, value: parseResult } = await reader.read();
1013
1286
  reader.releaseLock();
1014
1287
  if (done || !parseResult) {
1015
- throw new import_provider2.APICallError({
1288
+ throw new APICallError2({
1016
1289
  message: "SSE stream ended without a data event",
1017
1290
  url,
1018
1291
  requestBodyValues,
@@ -1020,7 +1293,7 @@ var GatewayVideoModel = class {
1020
1293
  });
1021
1294
  }
1022
1295
  if (!parseResult.success) {
1023
- throw new import_provider2.APICallError({
1296
+ throw new APICallError2({
1024
1297
  message: "Failed to parse video SSE event",
1025
1298
  cause: parseResult.error,
1026
1299
  url,
@@ -1030,7 +1303,7 @@ var GatewayVideoModel = class {
1030
1303
  }
1031
1304
  const event = parseResult.value;
1032
1305
  if (event.type === "error") {
1033
- throw new import_provider2.APICallError({
1306
+ throw new APICallError2({
1034
1307
  message: event.message,
1035
1308
  statusCode: event.statusCode,
1036
1309
  url,
@@ -1055,8 +1328,8 @@ var GatewayVideoModel = class {
1055
1328
  responseHeaders: Object.fromEntries([...response.headers])
1056
1329
  };
1057
1330
  },
1058
- failedResponseHandler: (0, import_provider_utils8.createJsonErrorResponseHandler)({
1059
- errorSchema: import_v48.z.any(),
1331
+ failedResponseHandler: createJsonErrorResponseHandler7({
1332
+ errorSchema: z10.any(),
1060
1333
  errorToMessage: (data) => data
1061
1334
  }),
1062
1335
  ...abortSignal && { abortSignal },
@@ -1073,7 +1346,10 @@ var GatewayVideoModel = class {
1073
1346
  }
1074
1347
  };
1075
1348
  } catch (error) {
1076
- throw await asGatewayError(error, await parseAuthMethod(resolvedHeaders));
1349
+ throw await asGatewayError(
1350
+ error,
1351
+ await parseAuthMethod(resolvedHeaders != null ? resolvedHeaders : {})
1352
+ );
1077
1353
  }
1078
1354
  }
1079
1355
  getUrl() {
@@ -1081,7 +1357,7 @@ var GatewayVideoModel = class {
1081
1357
  }
1082
1358
  getModelConfigHeaders() {
1083
1359
  return {
1084
- "ai-video-model-specification-version": "3",
1360
+ "ai-video-model-specification-version": "4",
1085
1361
  "ai-model-id": this.modelId
1086
1362
  };
1087
1363
  }
@@ -1090,116 +1366,215 @@ function maybeEncodeVideoFile(file) {
1090
1366
  if (file.type === "file" && file.data instanceof Uint8Array) {
1091
1367
  return {
1092
1368
  ...file,
1093
- data: (0, import_provider_utils8.convertUint8ArrayToBase64)(file.data)
1369
+ data: convertUint8ArrayToBase642(file.data)
1094
1370
  };
1095
1371
  }
1096
1372
  return file;
1097
1373
  }
1098
- var providerMetadataEntrySchema2 = import_v48.z.object({
1099
- videos: import_v48.z.array(import_v48.z.unknown()).optional()
1100
- }).catchall(import_v48.z.unknown());
1101
- var gatewayVideoDataSchema = import_v48.z.union([
1102
- import_v48.z.object({
1103
- type: import_v48.z.literal("url"),
1104
- url: import_v48.z.string(),
1105
- mediaType: import_v48.z.string()
1374
+ var providerMetadataEntrySchema2 = z10.object({
1375
+ videos: z10.array(z10.unknown()).optional()
1376
+ }).catchall(z10.unknown());
1377
+ var gatewayVideoDataSchema = z10.union([
1378
+ z10.object({
1379
+ type: z10.literal("url"),
1380
+ url: z10.string(),
1381
+ mediaType: z10.string()
1106
1382
  }),
1107
- import_v48.z.object({
1108
- type: import_v48.z.literal("base64"),
1109
- data: import_v48.z.string(),
1110
- mediaType: import_v48.z.string()
1383
+ z10.object({
1384
+ type: z10.literal("base64"),
1385
+ data: z10.string(),
1386
+ mediaType: z10.string()
1111
1387
  })
1112
1388
  ]);
1113
- var gatewayVideoWarningSchema = import_v48.z.discriminatedUnion("type", [
1114
- import_v48.z.object({
1115
- type: import_v48.z.literal("unsupported"),
1116
- feature: import_v48.z.string(),
1117
- details: import_v48.z.string().optional()
1389
+ var gatewayVideoWarningSchema = z10.discriminatedUnion("type", [
1390
+ z10.object({
1391
+ type: z10.literal("unsupported"),
1392
+ feature: z10.string(),
1393
+ details: z10.string().optional()
1118
1394
  }),
1119
- import_v48.z.object({
1120
- type: import_v48.z.literal("compatibility"),
1121
- feature: import_v48.z.string(),
1122
- details: import_v48.z.string().optional()
1395
+ z10.object({
1396
+ type: z10.literal("compatibility"),
1397
+ feature: z10.string(),
1398
+ details: z10.string().optional()
1123
1399
  }),
1124
- import_v48.z.object({
1125
- type: import_v48.z.literal("other"),
1126
- message: import_v48.z.string()
1400
+ z10.object({
1401
+ type: z10.literal("other"),
1402
+ message: z10.string()
1127
1403
  })
1128
1404
  ]);
1129
- var gatewayVideoEventSchema = import_v48.z.discriminatedUnion("type", [
1130
- import_v48.z.object({
1131
- type: import_v48.z.literal("result"),
1132
- videos: import_v48.z.array(gatewayVideoDataSchema),
1133
- warnings: import_v48.z.array(gatewayVideoWarningSchema).optional(),
1134
- providerMetadata: import_v48.z.record(import_v48.z.string(), providerMetadataEntrySchema2).optional()
1405
+ var gatewayVideoEventSchema = z10.discriminatedUnion("type", [
1406
+ z10.object({
1407
+ type: z10.literal("result"),
1408
+ videos: z10.array(gatewayVideoDataSchema),
1409
+ warnings: z10.array(gatewayVideoWarningSchema).optional(),
1410
+ providerMetadata: z10.record(z10.string(), providerMetadataEntrySchema2).optional()
1135
1411
  }),
1136
- import_v48.z.object({
1137
- type: import_v48.z.literal("error"),
1138
- message: import_v48.z.string(),
1139
- errorType: import_v48.z.string(),
1140
- statusCode: import_v48.z.number(),
1141
- param: import_v48.z.unknown().nullable()
1412
+ z10.object({
1413
+ type: z10.literal("error"),
1414
+ message: z10.string(),
1415
+ errorType: z10.string(),
1416
+ statusCode: z10.number(),
1417
+ param: z10.unknown().nullable()
1142
1418
  })
1143
1419
  ]);
1144
1420
 
1421
+ // src/gateway-reranking-model.ts
1422
+ import {
1423
+ combineHeaders as combineHeaders5,
1424
+ createJsonErrorResponseHandler as createJsonErrorResponseHandler8,
1425
+ createJsonResponseHandler as createJsonResponseHandler7,
1426
+ lazySchema as lazySchema8,
1427
+ postJsonToApi as postJsonToApi5,
1428
+ resolve as resolve8,
1429
+ zodSchema as zodSchema8
1430
+ } from "@ai-sdk/provider-utils";
1431
+ import { z as z11 } from "zod/v4";
1432
+ var GatewayRerankingModel = class {
1433
+ constructor(modelId, config) {
1434
+ this.modelId = modelId;
1435
+ this.config = config;
1436
+ this.specificationVersion = "v4";
1437
+ }
1438
+ get provider() {
1439
+ return this.config.provider;
1440
+ }
1441
+ async doRerank({
1442
+ documents,
1443
+ query,
1444
+ topN,
1445
+ headers,
1446
+ abortSignal,
1447
+ providerOptions
1448
+ }) {
1449
+ const resolvedHeaders = this.config.headers ? await resolve8(this.config.headers) : void 0;
1450
+ try {
1451
+ const {
1452
+ responseHeaders,
1453
+ value: responseBody,
1454
+ rawValue
1455
+ } = await postJsonToApi5({
1456
+ url: this.getUrl(),
1457
+ headers: combineHeaders5(
1458
+ resolvedHeaders,
1459
+ headers != null ? headers : {},
1460
+ this.getModelConfigHeaders(),
1461
+ await resolve8(this.config.o11yHeaders)
1462
+ ),
1463
+ body: {
1464
+ documents,
1465
+ query,
1466
+ ...topN != null ? { topN } : {},
1467
+ ...providerOptions ? { providerOptions } : {}
1468
+ },
1469
+ successfulResponseHandler: createJsonResponseHandler7(
1470
+ gatewayRerankingResponseSchema
1471
+ ),
1472
+ failedResponseHandler: createJsonErrorResponseHandler8({
1473
+ errorSchema: z11.any(),
1474
+ errorToMessage: (data) => data
1475
+ }),
1476
+ ...abortSignal && { abortSignal },
1477
+ fetch: this.config.fetch
1478
+ });
1479
+ return {
1480
+ ranking: responseBody.ranking,
1481
+ providerMetadata: responseBody.providerMetadata,
1482
+ response: { headers: responseHeaders, body: rawValue },
1483
+ warnings: []
1484
+ };
1485
+ } catch (error) {
1486
+ throw await asGatewayError(
1487
+ error,
1488
+ await parseAuthMethod(resolvedHeaders != null ? resolvedHeaders : {})
1489
+ );
1490
+ }
1491
+ }
1492
+ getUrl() {
1493
+ return `${this.config.baseURL}/reranking-model`;
1494
+ }
1495
+ getModelConfigHeaders() {
1496
+ return {
1497
+ "ai-reranking-model-specification-version": "4",
1498
+ "ai-model-id": this.modelId
1499
+ };
1500
+ }
1501
+ };
1502
+ var gatewayRerankingResponseSchema = lazySchema8(
1503
+ () => zodSchema8(
1504
+ z11.object({
1505
+ ranking: z11.array(
1506
+ z11.object({
1507
+ index: z11.number(),
1508
+ relevanceScore: z11.number()
1509
+ })
1510
+ ),
1511
+ providerMetadata: z11.record(z11.string(), z11.record(z11.string(), z11.unknown())).optional()
1512
+ })
1513
+ )
1514
+ );
1515
+
1145
1516
  // src/tool/parallel-search.ts
1146
- var import_provider_utils9 = require("@ai-sdk/provider-utils");
1147
- var import_zod = require("zod");
1148
- var parallelSearchInputSchema = (0, import_provider_utils9.lazySchema)(
1149
- () => (0, import_provider_utils9.zodSchema)(
1150
- import_zod.z.object({
1151
- objective: import_zod.z.string().describe(
1517
+ import {
1518
+ createProviderToolFactoryWithOutputSchema,
1519
+ lazySchema as lazySchema9,
1520
+ zodSchema as zodSchema9
1521
+ } from "@ai-sdk/provider-utils";
1522
+ import { z as z12 } from "zod";
1523
+ var parallelSearchInputSchema = lazySchema9(
1524
+ () => zodSchema9(
1525
+ z12.object({
1526
+ objective: z12.string().describe(
1152
1527
  "Natural-language description of the web research goal, including source or freshness guidance and broader context from the task. Maximum 5000 characters."
1153
1528
  ),
1154
- search_queries: import_zod.z.array(import_zod.z.string()).optional().describe(
1529
+ search_queries: z12.array(z12.string()).optional().describe(
1155
1530
  "Optional search queries to supplement the objective. Maximum 200 characters per query."
1156
1531
  ),
1157
- mode: import_zod.z.enum(["one-shot", "agentic"]).optional().describe(
1532
+ mode: z12.enum(["one-shot", "agentic"]).optional().describe(
1158
1533
  'Mode preset: "one-shot" for comprehensive results with longer excerpts (default), "agentic" for concise, token-efficient results for multi-step workflows.'
1159
1534
  ),
1160
- max_results: import_zod.z.number().optional().describe(
1535
+ max_results: z12.number().optional().describe(
1161
1536
  "Maximum number of results to return (1-20). Defaults to 10 if not specified."
1162
1537
  ),
1163
- source_policy: import_zod.z.object({
1164
- include_domains: import_zod.z.array(import_zod.z.string()).optional().describe("List of domains to include in search results."),
1165
- exclude_domains: import_zod.z.array(import_zod.z.string()).optional().describe("List of domains to exclude from search results."),
1166
- after_date: import_zod.z.string().optional().describe(
1538
+ source_policy: z12.object({
1539
+ include_domains: z12.array(z12.string()).optional().describe("List of domains to include in search results."),
1540
+ exclude_domains: z12.array(z12.string()).optional().describe("List of domains to exclude from search results."),
1541
+ after_date: z12.string().optional().describe(
1167
1542
  "Only include results published after this date (ISO 8601 format)."
1168
1543
  )
1169
1544
  }).optional().describe(
1170
1545
  "Source policy for controlling which domains to include/exclude and freshness."
1171
1546
  ),
1172
- excerpts: import_zod.z.object({
1173
- max_chars_per_result: import_zod.z.number().optional().describe("Maximum characters per result."),
1174
- max_chars_total: import_zod.z.number().optional().describe("Maximum total characters across all results.")
1547
+ excerpts: z12.object({
1548
+ max_chars_per_result: z12.number().optional().describe("Maximum characters per result."),
1549
+ max_chars_total: z12.number().optional().describe("Maximum total characters across all results.")
1175
1550
  }).optional().describe("Excerpt configuration for controlling result length."),
1176
- fetch_policy: import_zod.z.object({
1177
- max_age_seconds: import_zod.z.number().optional().describe(
1551
+ fetch_policy: z12.object({
1552
+ max_age_seconds: z12.number().optional().describe(
1178
1553
  "Maximum age in seconds for cached content. Set to 0 to always fetch fresh content."
1179
1554
  )
1180
1555
  }).optional().describe("Fetch policy for controlling content freshness.")
1181
1556
  })
1182
1557
  )
1183
1558
  );
1184
- var parallelSearchOutputSchema = (0, import_provider_utils9.lazySchema)(
1185
- () => (0, import_provider_utils9.zodSchema)(
1186
- import_zod.z.union([
1559
+ var parallelSearchOutputSchema = lazySchema9(
1560
+ () => zodSchema9(
1561
+ z12.union([
1187
1562
  // Success response
1188
- import_zod.z.object({
1189
- searchId: import_zod.z.string(),
1190
- results: import_zod.z.array(
1191
- import_zod.z.object({
1192
- url: import_zod.z.string(),
1193
- title: import_zod.z.string(),
1194
- excerpt: import_zod.z.string(),
1195
- publishDate: import_zod.z.string().nullable().optional(),
1196
- relevanceScore: import_zod.z.number().optional()
1563
+ z12.object({
1564
+ searchId: z12.string(),
1565
+ results: z12.array(
1566
+ z12.object({
1567
+ url: z12.string(),
1568
+ title: z12.string(),
1569
+ excerpt: z12.string(),
1570
+ publishDate: z12.string().nullable().optional(),
1571
+ relevanceScore: z12.number().optional()
1197
1572
  })
1198
1573
  )
1199
1574
  }),
1200
1575
  // Error response
1201
- import_zod.z.object({
1202
- error: import_zod.z.enum([
1576
+ z12.object({
1577
+ error: z12.enum([
1203
1578
  "api_error",
1204
1579
  "rate_limit",
1205
1580
  "timeout",
@@ -1207,13 +1582,13 @@ var parallelSearchOutputSchema = (0, import_provider_utils9.lazySchema)(
1207
1582
  "configuration_error",
1208
1583
  "unknown"
1209
1584
  ]),
1210
- statusCode: import_zod.z.number().optional(),
1211
- message: import_zod.z.string()
1585
+ statusCode: z12.number().optional(),
1586
+ message: z12.string()
1212
1587
  })
1213
1588
  ])
1214
1589
  )
1215
1590
  );
1216
- var parallelSearchToolFactory = (0, import_provider_utils9.createProviderToolFactoryWithOutputSchema)({
1591
+ var parallelSearchToolFactory = createProviderToolFactoryWithOutputSchema({
1217
1592
  id: "gateway.parallel_search",
1218
1593
  inputSchema: parallelSearchInputSchema,
1219
1594
  outputSchema: parallelSearchOutputSchema
@@ -1221,82 +1596,86 @@ var parallelSearchToolFactory = (0, import_provider_utils9.createProviderToolFac
1221
1596
  var parallelSearch = (config = {}) => parallelSearchToolFactory(config);
1222
1597
 
1223
1598
  // src/tool/perplexity-search.ts
1224
- var import_provider_utils10 = require("@ai-sdk/provider-utils");
1225
- var import_zod2 = require("zod");
1226
- var perplexitySearchInputSchema = (0, import_provider_utils10.lazySchema)(
1227
- () => (0, import_provider_utils10.zodSchema)(
1228
- import_zod2.z.object({
1229
- query: import_zod2.z.union([import_zod2.z.string(), import_zod2.z.array(import_zod2.z.string())]).describe(
1599
+ import {
1600
+ createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema2,
1601
+ lazySchema as lazySchema10,
1602
+ zodSchema as zodSchema10
1603
+ } from "@ai-sdk/provider-utils";
1604
+ import { z as z13 } from "zod";
1605
+ var perplexitySearchInputSchema = lazySchema10(
1606
+ () => zodSchema10(
1607
+ z13.object({
1608
+ query: z13.union([z13.string(), z13.array(z13.string())]).describe(
1230
1609
  "Search query (string) or multiple queries (array of up to 5 strings). Multi-query searches return combined results from all queries."
1231
1610
  ),
1232
- max_results: import_zod2.z.number().optional().describe(
1611
+ max_results: z13.number().optional().describe(
1233
1612
  "Maximum number of search results to return (1-20, default: 10)"
1234
1613
  ),
1235
- max_tokens_per_page: import_zod2.z.number().optional().describe(
1614
+ max_tokens_per_page: z13.number().optional().describe(
1236
1615
  "Maximum number of tokens to extract per search result page (256-2048, default: 2048)"
1237
1616
  ),
1238
- max_tokens: import_zod2.z.number().optional().describe(
1617
+ max_tokens: z13.number().optional().describe(
1239
1618
  "Maximum total tokens across all search results (default: 25000, max: 1000000)"
1240
1619
  ),
1241
- country: import_zod2.z.string().optional().describe(
1620
+ country: z13.string().optional().describe(
1242
1621
  "Two-letter ISO 3166-1 alpha-2 country code for regional search results (e.g., 'US', 'GB', 'FR')"
1243
1622
  ),
1244
- search_domain_filter: import_zod2.z.array(import_zod2.z.string()).optional().describe(
1623
+ search_domain_filter: z13.array(z13.string()).optional().describe(
1245
1624
  "List of domains to include or exclude from search results (max 20). To include: ['nature.com', 'science.org']. To exclude: ['-example.com', '-spam.net']"
1246
1625
  ),
1247
- search_language_filter: import_zod2.z.array(import_zod2.z.string()).optional().describe(
1626
+ search_language_filter: z13.array(z13.string()).optional().describe(
1248
1627
  "List of ISO 639-1 language codes to filter results (max 10, lowercase). Examples: ['en', 'fr', 'de']"
1249
1628
  ),
1250
- search_after_date: import_zod2.z.string().optional().describe(
1629
+ search_after_date: z13.string().optional().describe(
1251
1630
  "Include only results published after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."
1252
1631
  ),
1253
- search_before_date: import_zod2.z.string().optional().describe(
1632
+ search_before_date: z13.string().optional().describe(
1254
1633
  "Include only results published before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."
1255
1634
  ),
1256
- last_updated_after_filter: import_zod2.z.string().optional().describe(
1635
+ last_updated_after_filter: z13.string().optional().describe(
1257
1636
  "Include only results last updated after this date. Format: 'MM/DD/YYYY' (e.g., '3/1/2025'). Cannot be used with search_recency_filter."
1258
1637
  ),
1259
- last_updated_before_filter: import_zod2.z.string().optional().describe(
1638
+ last_updated_before_filter: z13.string().optional().describe(
1260
1639
  "Include only results last updated before this date. Format: 'MM/DD/YYYY' (e.g., '3/15/2025'). Cannot be used with search_recency_filter."
1261
1640
  ),
1262
- search_recency_filter: import_zod2.z.enum(["day", "week", "month", "year"]).optional().describe(
1641
+ search_recency_filter: z13.enum(["day", "week", "month", "year"]).optional().describe(
1263
1642
  "Filter results by relative time period. Cannot be used with search_after_date or search_before_date."
1264
1643
  )
1265
1644
  })
1266
1645
  )
1267
1646
  );
1268
- var perplexitySearchOutputSchema = (0, import_provider_utils10.lazySchema)(
1269
- () => (0, import_provider_utils10.zodSchema)(
1270
- import_zod2.z.union([
1647
+ var perplexitySearchOutputSchema = lazySchema10(
1648
+ () => zodSchema10(
1649
+ z13.union([
1271
1650
  // Success response
1272
- import_zod2.z.object({
1273
- results: import_zod2.z.array(
1274
- import_zod2.z.object({
1275
- title: import_zod2.z.string(),
1276
- url: import_zod2.z.string(),
1277
- snippet: import_zod2.z.string(),
1278
- date: import_zod2.z.string().optional(),
1279
- lastUpdated: import_zod2.z.string().optional()
1651
+ z13.object({
1652
+ results: z13.array(
1653
+ z13.object({
1654
+ title: z13.string(),
1655
+ url: z13.string(),
1656
+ snippet: z13.string(),
1657
+ date: z13.string().optional(),
1658
+ lastUpdated: z13.string().optional()
1280
1659
  })
1281
1660
  ),
1282
- id: import_zod2.z.string()
1661
+ id: z13.string()
1283
1662
  }),
1284
1663
  // Error response
1285
- import_zod2.z.object({
1286
- error: import_zod2.z.enum([
1664
+ z13.object({
1665
+ error: z13.enum([
1287
1666
  "api_error",
1288
1667
  "rate_limit",
1289
1668
  "timeout",
1290
1669
  "invalid_input",
1291
1670
  "unknown"
1292
1671
  ]),
1293
- statusCode: import_zod2.z.number().optional(),
1294
- message: import_zod2.z.string()
1672
+ statusCode: z13.number().optional(),
1673
+ message: z13.string()
1295
1674
  })
1296
1675
  ])
1297
1676
  )
1298
1677
  );
1299
- var perplexitySearchToolFactory = (0, import_provider_utils10.createProviderToolFactoryWithOutputSchema)({
1678
+ var perplexitySearchToolFactory = createProviderToolFactoryWithOutputSchema2({
1300
1679
  id: "gateway.perplexity_search",
1301
1680
  inputSchema: perplexitySearchInputSchema,
1302
1681
  outputSchema: perplexitySearchOutputSchema
@@ -1325,18 +1704,18 @@ var gatewayTools = {
1325
1704
  };
1326
1705
 
1327
1706
  // src/vercel-environment.ts
1328
- var import_oidc = require("@vercel/oidc");
1329
- var import_oidc2 = require("@vercel/oidc");
1707
+ import { getContext } from "@vercel/oidc";
1708
+ import { getVercelOidcToken } from "@vercel/oidc";
1330
1709
  async function getVercelRequestId() {
1331
1710
  var _a9;
1332
- return (_a9 = (0, import_oidc.getContext)().headers) == null ? void 0 : _a9["x-vercel-id"];
1711
+ return (_a9 = getContext().headers) == null ? void 0 : _a9["x-vercel-id"];
1333
1712
  }
1334
1713
 
1335
1714
  // src/gateway-provider.ts
1336
- var import_provider_utils12 = require("@ai-sdk/provider-utils");
1715
+ import { withUserAgentSuffix } from "@ai-sdk/provider-utils";
1337
1716
 
1338
1717
  // src/version.ts
1339
- var VERSION = true ? "4.0.0-beta.6" : "0.0.0-test";
1718
+ var VERSION = true ? "4.0.0-beta.61" : "0.0.0-test";
1340
1719
 
1341
1720
  // src/gateway-provider.ts
1342
1721
  var AI_GATEWAY_PROTOCOL_VERSION = "0.0.1";
@@ -1346,11 +1725,11 @@ function createGatewayProvider(options = {}) {
1346
1725
  let metadataCache = null;
1347
1726
  const cacheRefreshMillis = (_a9 = options.metadataCacheRefreshMillis) != null ? _a9 : 1e3 * 60 * 5;
1348
1727
  let lastFetchTime = 0;
1349
- const baseURL = (_b9 = (0, import_provider_utils11.withoutTrailingSlash)(options.baseURL)) != null ? _b9 : "https://ai-gateway.vercel.sh/v3/ai";
1728
+ const baseURL = (_b9 = withoutTrailingSlash(options.baseURL)) != null ? _b9 : "https://ai-gateway.vercel.sh/v4/ai";
1350
1729
  const getHeaders = async () => {
1351
1730
  try {
1352
1731
  const auth = await getGatewayAuthToken(options);
1353
- return (0, import_provider_utils12.withUserAgentSuffix)(
1732
+ return withUserAgentSuffix(
1354
1733
  {
1355
1734
  Authorization: `Bearer ${auth.token}`,
1356
1735
  "ai-gateway-protocol-version": AI_GATEWAY_PROTOCOL_VERSION,
@@ -1369,19 +1748,19 @@ function createGatewayProvider(options = {}) {
1369
1748
  }
1370
1749
  };
1371
1750
  const createO11yHeaders = () => {
1372
- const deploymentId = (0, import_provider_utils11.loadOptionalSetting)({
1751
+ const deploymentId = loadOptionalSetting({
1373
1752
  settingValue: void 0,
1374
1753
  environmentVariableName: "VERCEL_DEPLOYMENT_ID"
1375
1754
  });
1376
- const environment = (0, import_provider_utils11.loadOptionalSetting)({
1755
+ const environment = loadOptionalSetting({
1377
1756
  settingValue: void 0,
1378
1757
  environmentVariableName: "VERCEL_ENV"
1379
1758
  });
1380
- const region = (0, import_provider_utils11.loadOptionalSetting)({
1759
+ const region = loadOptionalSetting({
1381
1760
  settingValue: void 0,
1382
1761
  environmentVariableName: "VERCEL_REGION"
1383
1762
  });
1384
- const projectId = (0, import_provider_utils11.loadOptionalSetting)({
1763
+ const projectId = loadOptionalSetting({
1385
1764
  settingValue: void 0,
1386
1765
  environmentVariableName: "VERCEL_PROJECT_ID"
1387
1766
  });
@@ -1438,6 +1817,30 @@ function createGatewayProvider(options = {}) {
1438
1817
  );
1439
1818
  });
1440
1819
  };
1820
+ const getSpendReport = async (params) => {
1821
+ return new GatewaySpendReport({
1822
+ baseURL,
1823
+ headers: getHeaders,
1824
+ fetch: options.fetch
1825
+ }).getSpendReport(params).catch(async (error) => {
1826
+ throw await asGatewayError(
1827
+ error,
1828
+ await parseAuthMethod(await getHeaders())
1829
+ );
1830
+ });
1831
+ };
1832
+ const getGenerationInfo = async (params) => {
1833
+ return new GatewayGenerationInfoFetcher({
1834
+ baseURL,
1835
+ headers: getHeaders,
1836
+ fetch: options.fetch
1837
+ }).getGenerationInfo(params).catch(async (error) => {
1838
+ throw await asGatewayError(
1839
+ error,
1840
+ await parseAuthMethod(await getHeaders())
1841
+ );
1842
+ });
1843
+ };
1441
1844
  const provider = function(modelId) {
1442
1845
  if (new.target) {
1443
1846
  throw new Error(
@@ -1446,9 +1849,11 @@ function createGatewayProvider(options = {}) {
1446
1849
  }
1447
1850
  return createLanguageModel(modelId);
1448
1851
  };
1449
- provider.specificationVersion = "v3";
1852
+ provider.specificationVersion = "v4";
1450
1853
  provider.getAvailableModels = getAvailableModels;
1451
1854
  provider.getCredits = getCredits;
1855
+ provider.getSpendReport = getSpendReport;
1856
+ provider.getGenerationInfo = getGenerationInfo;
1452
1857
  provider.imageModel = (modelId) => {
1453
1858
  return new GatewayImageModel(modelId, {
1454
1859
  provider: "gateway",
@@ -1479,6 +1884,17 @@ function createGatewayProvider(options = {}) {
1479
1884
  o11yHeaders: createO11yHeaders()
1480
1885
  });
1481
1886
  };
1887
+ const createRerankingModel = (modelId) => {
1888
+ return new GatewayRerankingModel(modelId, {
1889
+ provider: "gateway",
1890
+ baseURL,
1891
+ headers: getHeaders,
1892
+ fetch: options.fetch,
1893
+ o11yHeaders: createO11yHeaders()
1894
+ });
1895
+ };
1896
+ provider.rerankingModel = createRerankingModel;
1897
+ provider.reranking = createRerankingModel;
1482
1898
  provider.chat = provider.languageModel;
1483
1899
  provider.embedding = provider.embeddingModel;
1484
1900
  provider.image = provider.imageModel;
@@ -1488,7 +1904,7 @@ function createGatewayProvider(options = {}) {
1488
1904
  }
1489
1905
  var gateway = createGatewayProvider();
1490
1906
  async function getGatewayAuthToken(options) {
1491
- const apiKey = (0, import_provider_utils11.loadOptionalSetting)({
1907
+ const apiKey = loadOptionalSetting({
1492
1908
  settingValue: options.apiKey,
1493
1909
  environmentVariableName: "AI_GATEWAY_API_KEY"
1494
1910
  });
@@ -1498,14 +1914,13 @@ async function getGatewayAuthToken(options) {
1498
1914
  authMethod: "api-key"
1499
1915
  };
1500
1916
  }
1501
- const oidcToken = await (0, import_oidc2.getVercelOidcToken)();
1917
+ const oidcToken = await getVercelOidcToken();
1502
1918
  return {
1503
1919
  token: oidcToken,
1504
1920
  authMethod: "oidc"
1505
1921
  };
1506
1922
  }
1507
- // Annotate the CommonJS export names for ESM import in node:
1508
- 0 && (module.exports = {
1923
+ export {
1509
1924
  GatewayAuthenticationError,
1510
1925
  GatewayError,
1511
1926
  GatewayInternalServerError,
@@ -1513,8 +1928,8 @@ async function getGatewayAuthToken(options) {
1513
1928
  GatewayModelNotFoundError,
1514
1929
  GatewayRateLimitError,
1515
1930
  GatewayResponseError,
1516
- createGateway,
1931
+ createGatewayProvider as createGateway,
1517
1932
  createGatewayProvider,
1518
1933
  gateway
1519
- });
1934
+ };
1520
1935
  //# sourceMappingURL=index.js.map