@zuplo/cli 6.72.2 → 6.72.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. package/node_modules/@zuplo/core/package.json +1 -1
  2. package/node_modules/@zuplo/graphql/package.json +1 -1
  3. package/node_modules/@zuplo/openapi-tools/package.json +1 -1
  4. package/node_modules/@zuplo/otel/package.json +1 -1
  5. package/node_modules/@zuplo/runtime/out/esm/chunk-423FXHUV.js +399 -0
  6. package/node_modules/@zuplo/runtime/out/esm/chunk-423FXHUV.js.map +1 -0
  7. package/node_modules/@zuplo/runtime/out/esm/chunk-GBIUQ4JJ.js +30 -0
  8. package/node_modules/@zuplo/runtime/out/esm/chunk-GBIUQ4JJ.js.map +1 -0
  9. package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
  10. package/node_modules/@zuplo/runtime/out/esm/index.js.map +1 -1
  11. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
  12. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js.map +1 -1
  13. package/node_modules/@zuplo/runtime/out/esm/sdks/aws/index.js +26 -0
  14. package/node_modules/@zuplo/runtime/out/esm/sdks/aws/index.js.map +1 -0
  15. package/node_modules/@zuplo/runtime/out/types/index.d.ts +1421 -129
  16. package/node_modules/@zuplo/runtime/out/types/mcp-gateway/index.d.ts +1370 -152
  17. package/node_modules/@zuplo/runtime/out/types/sdks/aws/index.d.ts +2281 -0
  18. package/node_modules/@zuplo/runtime/package.json +5 -1
  19. package/package.json +6 -6
  20. package/node_modules/@zuplo/runtime/out/esm/chunk-IC7XGD5C.js +0 -403
  21. package/node_modules/@zuplo/runtime/out/esm/chunk-IC7XGD5C.js.map +0 -1
  22. /package/node_modules/@zuplo/runtime/out/esm/{chunk-IC7XGD5C.js.LEGAL.txt → chunk-423FXHUV.js.LEGAL.txt} +0 -0
@@ -2742,7 +2742,7 @@ export declare interface ClerkJwtInboundPolicyOptions {
2742
2742
  */
2743
2743
  allowUnauthenticatedRequests?: boolean;
2744
2744
  /**
2745
- * Your Clerk frontend api url, i.e. `https://sensible-skunk-49.clerk.accounts.dev`. Can be found in the Clerk portal: https://dashboard.clerk.com/last-active?path=api-keys.
2745
+ * Your Clerk Frontend API URL, i.e. `https://verb-noun-00.clerk.accounts.dev`. Can be found in the Clerk portal: https://dashboard.clerk.com/last-active?path=api-keys.
2746
2746
  */
2747
2747
  frontendApiUrl: string;
2748
2748
  /**
@@ -7125,20 +7125,20 @@ export declare interface McpAuth0OAuthInboundPolicyOptions {
7125
7125
  */
7126
7126
  enabled: true;
7127
7127
  /**
7128
- * Trusted ID-JAG issuers. These values are never published in OAuth metadata.
7128
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
7129
7129
  *
7130
7130
  * @minItems 1
7131
7131
  */
7132
- trustedIssuers: [
7132
+ trustedIssuers?: [
7133
7133
  {
7134
7134
  /**
7135
- * Exact issuer URL expected in the ID-JAG iss claim.
7135
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7136
7136
  */
7137
- issuer: string;
7137
+ issuer?: string;
7138
7138
  /**
7139
- * JWKS URL used to verify ID-JAG signatures from this issuer.
7139
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7140
7140
  */
7141
- jwksUrl: string;
7141
+ jwksUrl?: string;
7142
7142
  /**
7143
7143
  * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7144
7144
  */
@@ -7150,13 +7150,13 @@ export declare interface McpAuth0OAuthInboundPolicyOptions {
7150
7150
  },
7151
7151
  ...{
7152
7152
  /**
7153
- * Exact issuer URL expected in the ID-JAG iss claim.
7153
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7154
7154
  */
7155
- issuer: string;
7155
+ issuer?: string;
7156
7156
  /**
7157
- * JWKS URL used to verify ID-JAG signatures from this issuer.
7157
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7158
7158
  */
7159
- jwksUrl: string;
7159
+ jwksUrl?: string;
7160
7160
  /**
7161
7161
  * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7162
7162
  */
@@ -7236,7 +7236,7 @@ declare const mcpAuth0OAuthOptionsSchema: z.ZodObject<
7236
7236
  * @public
7237
7237
  * @product mcp-gateway
7238
7238
  */
7239
- export declare class McpClerkOAuthInboundPolicy extends InboundPolicy<McpClerkOAuthInboundPolicyOptions> {
7239
+ export declare class McpClerkOAuthInboundPolicy extends InboundPolicy<ValidatedClerkOAuthOptions> {
7240
7240
  #private;
7241
7241
  static readonly policyType = "mcp-clerk-oauth";
7242
7242
  constructor(rawOptions: unknown, policyName: string);
@@ -7284,6 +7284,69 @@ export declare interface McpClerkOAuthInboundPolicyOptions {
7284
7284
  */
7285
7285
  cimdEnabled?: boolean;
7286
7286
  };
7287
+ /**
7288
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
7289
+ */
7290
+ idJag?:
7291
+ | {
7292
+ /**
7293
+ * Disable ID-JAG support.
7294
+ */
7295
+ enabled: false;
7296
+ }
7297
+ | {
7298
+ /**
7299
+ * Enable ID-JAG support.
7300
+ */
7301
+ enabled: true;
7302
+ /**
7303
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
7304
+ *
7305
+ * @minItems 1
7306
+ */
7307
+ trustedIssuers?: [
7308
+ {
7309
+ /**
7310
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7311
+ */
7312
+ issuer?: string;
7313
+ /**
7314
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7315
+ */
7316
+ jwksUrl?: string;
7317
+ /**
7318
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7319
+ */
7320
+ expectedClientIds?: string[];
7321
+ /**
7322
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7323
+ */
7324
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7325
+ },
7326
+ ...{
7327
+ /**
7328
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7329
+ */
7330
+ issuer?: string;
7331
+ /**
7332
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7333
+ */
7334
+ jwksUrl?: string;
7335
+ /**
7336
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7337
+ */
7338
+ expectedClientIds?: string[];
7339
+ /**
7340
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7341
+ */
7342
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7343
+ }[],
7344
+ ];
7345
+ /**
7346
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
7347
+ */
7348
+ authorizationDetailsTypesAllowed?: string[];
7349
+ };
7287
7350
  /**
7288
7351
  * Optional overrides for the derived browser-login settings.
7289
7352
  */
@@ -7294,6 +7357,37 @@ export declare interface McpClerkOAuthInboundPolicyOptions {
7294
7357
  };
7295
7358
  }
7296
7359
 
7360
+ declare const mcpClerkOAuthOptionsSchema: z.ZodObject<
7361
+ {
7362
+ frontendApiUrl: z.ZodString;
7363
+ clientId: z.ZodString;
7364
+ clientSecret: z.ZodString;
7365
+ scope: z.ZodOptional<z.ZodString>;
7366
+ gateway: z.ZodOptional<
7367
+ z.ZodObject<
7368
+ {
7369
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7370
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7371
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
7372
+ },
7373
+ z.core.$strict
7374
+ >
7375
+ >;
7376
+ idJag: z.ZodOptional<z.ZodUnknown>;
7377
+ browserLoginOverrides: z.ZodOptional<
7378
+ z.ZodObject<
7379
+ {
7380
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
7381
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
7382
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
7383
+ },
7384
+ z.core.$strict
7385
+ >
7386
+ >;
7387
+ },
7388
+ z.core.$strict
7389
+ >;
7390
+
7297
7391
  /**
7298
7392
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
7299
7393
  * with browser login delegated to Amazon Cognito.
@@ -7307,7 +7401,7 @@ export declare interface McpClerkOAuthInboundPolicyOptions {
7307
7401
  * @public
7308
7402
  * @product mcp-gateway
7309
7403
  */
7310
- export declare class McpCognitoOAuthInboundPolicy extends InboundPolicy<McpCognitoOAuthInboundPolicyOptions> {
7404
+ export declare class McpCognitoOAuthInboundPolicy extends InboundPolicy<ValidatedCognitoOAuthOptions> {
7311
7405
  #private;
7312
7406
  static readonly policyType = "mcp-cognito-oauth";
7313
7407
  constructor(rawOptions: unknown, policyName: string);
@@ -7363,6 +7457,69 @@ export declare interface McpCognitoOAuthInboundPolicyOptions {
7363
7457
  */
7364
7458
  cimdEnabled?: boolean;
7365
7459
  };
7460
+ /**
7461
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
7462
+ */
7463
+ idJag?:
7464
+ | {
7465
+ /**
7466
+ * Disable ID-JAG support.
7467
+ */
7468
+ enabled: false;
7469
+ }
7470
+ | {
7471
+ /**
7472
+ * Enable ID-JAG support.
7473
+ */
7474
+ enabled: true;
7475
+ /**
7476
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
7477
+ *
7478
+ * @minItems 1
7479
+ */
7480
+ trustedIssuers?: [
7481
+ {
7482
+ /**
7483
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7484
+ */
7485
+ issuer?: string;
7486
+ /**
7487
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7488
+ */
7489
+ jwksUrl?: string;
7490
+ /**
7491
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7492
+ */
7493
+ expectedClientIds?: string[];
7494
+ /**
7495
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7496
+ */
7497
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7498
+ },
7499
+ ...{
7500
+ /**
7501
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7502
+ */
7503
+ issuer?: string;
7504
+ /**
7505
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7506
+ */
7507
+ jwksUrl?: string;
7508
+ /**
7509
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7510
+ */
7511
+ expectedClientIds?: string[];
7512
+ /**
7513
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7514
+ */
7515
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7516
+ }[],
7517
+ ];
7518
+ /**
7519
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
7520
+ */
7521
+ authorizationDetailsTypesAllowed?: string[];
7522
+ };
7366
7523
  /**
7367
7524
  * Optional overrides for the derived browser-login settings.
7368
7525
  */
@@ -7377,6 +7534,45 @@ export declare interface McpCognitoOAuthInboundPolicyOptions {
7377
7534
  };
7378
7535
  }
7379
7536
 
7537
+ declare const mcpCognitoOAuthOptionsSchema: z.ZodObject<
7538
+ {
7539
+ awsRegion: z.ZodString;
7540
+ userPoolId: z.ZodString;
7541
+ userPoolDomain: z.ZodString;
7542
+ clientId: z.ZodString;
7543
+ clientSecret: z.ZodString;
7544
+ scope: z.ZodOptional<z.ZodString>;
7545
+ gateway: z.ZodOptional<
7546
+ z.ZodObject<
7547
+ {
7548
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7549
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7550
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
7551
+ },
7552
+ z.core.$strict
7553
+ >
7554
+ >;
7555
+ idJag: z.ZodOptional<z.ZodUnknown>;
7556
+ browserLoginOverrides: z.ZodOptional<
7557
+ z.ZodObject<
7558
+ {
7559
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
7560
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
7561
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
7562
+ pkce: z.ZodOptional<
7563
+ z.ZodEnum<{
7564
+ none: "none";
7565
+ S256: "S256";
7566
+ }>
7567
+ >;
7568
+ },
7569
+ z.core.$strict
7570
+ >
7571
+ >;
7572
+ },
7573
+ z.core.$strict
7574
+ >;
7575
+
7380
7576
  /**
7381
7577
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
7382
7578
  * with browser login delegated to Microsoft Entra ID.
@@ -7389,7 +7585,7 @@ export declare interface McpCognitoOAuthInboundPolicyOptions {
7389
7585
  * @public
7390
7586
  * @product mcp-gateway
7391
7587
  */
7392
- export declare class McpEntraOAuthInboundPolicy extends InboundPolicy<McpEntraOAuthInboundPolicyOptions> {
7588
+ export declare class McpEntraOAuthInboundPolicy extends InboundPolicy<ValidatedEntraOAuthOptions> {
7393
7589
  #private;
7394
7590
  static readonly policyType = "mcp-entra-oauth";
7395
7591
  constructor(rawOptions: unknown, policyName: string);
@@ -7437,6 +7633,69 @@ export declare interface McpEntraOAuthInboundPolicyOptions {
7437
7633
  */
7438
7634
  cimdEnabled?: boolean;
7439
7635
  };
7636
+ /**
7637
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
7638
+ */
7639
+ idJag?:
7640
+ | {
7641
+ /**
7642
+ * Disable ID-JAG support.
7643
+ */
7644
+ enabled: false;
7645
+ }
7646
+ | {
7647
+ /**
7648
+ * Enable ID-JAG support.
7649
+ */
7650
+ enabled: true;
7651
+ /**
7652
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
7653
+ *
7654
+ * @minItems 1
7655
+ */
7656
+ trustedIssuers?: [
7657
+ {
7658
+ /**
7659
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7660
+ */
7661
+ issuer?: string;
7662
+ /**
7663
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7664
+ */
7665
+ jwksUrl?: string;
7666
+ /**
7667
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7668
+ */
7669
+ expectedClientIds?: string[];
7670
+ /**
7671
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7672
+ */
7673
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7674
+ },
7675
+ ...{
7676
+ /**
7677
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7678
+ */
7679
+ issuer?: string;
7680
+ /**
7681
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7682
+ */
7683
+ jwksUrl?: string;
7684
+ /**
7685
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7686
+ */
7687
+ expectedClientIds?: string[];
7688
+ /**
7689
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7690
+ */
7691
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7692
+ }[],
7693
+ ];
7694
+ /**
7695
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
7696
+ */
7697
+ authorizationDetailsTypesAllowed?: string[];
7698
+ };
7440
7699
  /**
7441
7700
  * Optional overrides for the derived browser-login settings.
7442
7701
  */
@@ -7451,6 +7710,43 @@ export declare interface McpEntraOAuthInboundPolicyOptions {
7451
7710
  };
7452
7711
  }
7453
7712
 
7713
+ declare const mcpEntraOAuthOptionsSchema: z.ZodObject<
7714
+ {
7715
+ tenantId: z.ZodString;
7716
+ clientId: z.ZodString;
7717
+ clientSecret: z.ZodString;
7718
+ scope: z.ZodOptional<z.ZodString>;
7719
+ gateway: z.ZodOptional<
7720
+ z.ZodObject<
7721
+ {
7722
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7723
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7724
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
7725
+ },
7726
+ z.core.$strict
7727
+ >
7728
+ >;
7729
+ idJag: z.ZodOptional<z.ZodUnknown>;
7730
+ browserLoginOverrides: z.ZodOptional<
7731
+ z.ZodObject<
7732
+ {
7733
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
7734
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
7735
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
7736
+ pkce: z.ZodOptional<
7737
+ z.ZodEnum<{
7738
+ none: "none";
7739
+ S256: "S256";
7740
+ }>
7741
+ >;
7742
+ },
7743
+ z.core.$strict
7744
+ >
7745
+ >;
7746
+ },
7747
+ z.core.$strict
7748
+ >;
7749
+
7454
7750
  /* Excluded from this release type: McpGatewayOAuthProtectedResourcePlugin */
7455
7751
 
7456
7752
  /**
@@ -7466,7 +7762,7 @@ export declare interface McpEntraOAuthInboundPolicyOptions {
7466
7762
  * @public
7467
7763
  * @product mcp-gateway
7468
7764
  */
7469
- export declare class McpGoogleOAuthInboundPolicy extends InboundPolicy<McpGoogleOAuthInboundPolicyOptions> {
7765
+ export declare class McpGoogleOAuthInboundPolicy extends InboundPolicy<ValidatedGoogleOAuthOptions> {
7470
7766
  #private;
7471
7767
  static readonly policyType = "mcp-google-oauth";
7472
7768
  constructor(rawOptions: unknown, policyName: string);
@@ -7510,6 +7806,69 @@ export declare interface McpGoogleOAuthInboundPolicyOptions {
7510
7806
  */
7511
7807
  cimdEnabled?: boolean;
7512
7808
  };
7809
+ /**
7810
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
7811
+ */
7812
+ idJag?:
7813
+ | {
7814
+ /**
7815
+ * Disable ID-JAG support.
7816
+ */
7817
+ enabled: false;
7818
+ }
7819
+ | {
7820
+ /**
7821
+ * Enable ID-JAG support.
7822
+ */
7823
+ enabled: true;
7824
+ /**
7825
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
7826
+ *
7827
+ * @minItems 1
7828
+ */
7829
+ trustedIssuers?: [
7830
+ {
7831
+ /**
7832
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7833
+ */
7834
+ issuer?: string;
7835
+ /**
7836
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7837
+ */
7838
+ jwksUrl?: string;
7839
+ /**
7840
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7841
+ */
7842
+ expectedClientIds?: string[];
7843
+ /**
7844
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7845
+ */
7846
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7847
+ },
7848
+ ...{
7849
+ /**
7850
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7851
+ */
7852
+ issuer?: string;
7853
+ /**
7854
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7855
+ */
7856
+ jwksUrl?: string;
7857
+ /**
7858
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7859
+ */
7860
+ expectedClientIds?: string[];
7861
+ /**
7862
+ * How the ID-JAG subject is mapped into the gateway subject ID.
7863
+ */
7864
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
7865
+ }[],
7866
+ ];
7867
+ /**
7868
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
7869
+ */
7870
+ authorizationDetailsTypesAllowed?: string[];
7871
+ };
7513
7872
  /**
7514
7873
  * Optional overrides for the derived browser-login settings.
7515
7874
  */
@@ -7524,6 +7883,42 @@ export declare interface McpGoogleOAuthInboundPolicyOptions {
7524
7883
  };
7525
7884
  }
7526
7885
 
7886
+ declare const mcpGoogleOAuthOptionsSchema: z.ZodObject<
7887
+ {
7888
+ clientId: z.ZodString;
7889
+ clientSecret: z.ZodString;
7890
+ scope: z.ZodOptional<z.ZodString>;
7891
+ gateway: z.ZodOptional<
7892
+ z.ZodObject<
7893
+ {
7894
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7895
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
7896
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
7897
+ },
7898
+ z.core.$strict
7899
+ >
7900
+ >;
7901
+ idJag: z.ZodOptional<z.ZodUnknown>;
7902
+ browserLoginOverrides: z.ZodOptional<
7903
+ z.ZodObject<
7904
+ {
7905
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
7906
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
7907
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
7908
+ pkce: z.ZodOptional<
7909
+ z.ZodEnum<{
7910
+ none: "none";
7911
+ S256: "S256";
7912
+ }>
7913
+ >;
7914
+ },
7915
+ z.core.$strict
7916
+ >
7917
+ >;
7918
+ },
7919
+ z.core.$strict
7920
+ >;
7921
+
7527
7922
  /**
7528
7923
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
7529
7924
  * with browser login delegated to Keycloak.
@@ -7537,7 +7932,7 @@ export declare interface McpGoogleOAuthInboundPolicyOptions {
7537
7932
  * @public
7538
7933
  * @product mcp-gateway
7539
7934
  */
7540
- export declare class McpKeycloakOAuthInboundPolicy extends InboundPolicy<McpKeycloakOAuthInboundPolicyOptions> {
7935
+ export declare class McpKeycloakOAuthInboundPolicy extends InboundPolicy<ValidatedKeycloakOAuthOptions> {
7541
7936
  #private;
7542
7937
  static readonly policyType = "mcp-keycloak-oauth";
7543
7938
  constructor(rawOptions: unknown, policyName: string);
@@ -7589,6 +7984,69 @@ export declare interface McpKeycloakOAuthInboundPolicyOptions {
7589
7984
  */
7590
7985
  cimdEnabled?: boolean;
7591
7986
  };
7987
+ /**
7988
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
7989
+ */
7990
+ idJag?:
7991
+ | {
7992
+ /**
7993
+ * Disable ID-JAG support.
7994
+ */
7995
+ enabled: false;
7996
+ }
7997
+ | {
7998
+ /**
7999
+ * Enable ID-JAG support.
8000
+ */
8001
+ enabled: true;
8002
+ /**
8003
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
8004
+ *
8005
+ * @minItems 1
8006
+ */
8007
+ trustedIssuers?: [
8008
+ {
8009
+ /**
8010
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8011
+ */
8012
+ issuer?: string;
8013
+ /**
8014
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8015
+ */
8016
+ jwksUrl?: string;
8017
+ /**
8018
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8019
+ */
8020
+ expectedClientIds?: string[];
8021
+ /**
8022
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8023
+ */
8024
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8025
+ },
8026
+ ...{
8027
+ /**
8028
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8029
+ */
8030
+ issuer?: string;
8031
+ /**
8032
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8033
+ */
8034
+ jwksUrl?: string;
8035
+ /**
8036
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8037
+ */
8038
+ expectedClientIds?: string[];
8039
+ /**
8040
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8041
+ */
8042
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8043
+ }[],
8044
+ ];
8045
+ /**
8046
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
8047
+ */
8048
+ authorizationDetailsTypesAllowed?: string[];
8049
+ };
7592
8050
  /**
7593
8051
  * Optional overrides for the derived browser-login settings.
7594
8052
  */
@@ -7603,6 +8061,44 @@ export declare interface McpKeycloakOAuthInboundPolicyOptions {
7603
8061
  };
7604
8062
  }
7605
8063
 
8064
+ declare const mcpKeycloakOAuthOptionsSchema: z.ZodObject<
8065
+ {
8066
+ keycloakBaseUrl: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
8067
+ realm: z.ZodString;
8068
+ clientId: z.ZodString;
8069
+ clientSecret: z.ZodString;
8070
+ scope: z.ZodOptional<z.ZodString>;
8071
+ gateway: z.ZodOptional<
8072
+ z.ZodObject<
8073
+ {
8074
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8075
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8076
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
8077
+ },
8078
+ z.core.$strict
8079
+ >
8080
+ >;
8081
+ idJag: z.ZodOptional<z.ZodUnknown>;
8082
+ browserLoginOverrides: z.ZodOptional<
8083
+ z.ZodObject<
8084
+ {
8085
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
8086
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
8087
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
8088
+ pkce: z.ZodOptional<
8089
+ z.ZodEnum<{
8090
+ none: "none";
8091
+ S256: "S256";
8092
+ }>
8093
+ >;
8094
+ },
8095
+ z.core.$strict
8096
+ >
8097
+ >;
8098
+ },
8099
+ z.core.$strict
8100
+ >;
8101
+
7606
8102
  /**
7607
8103
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
7608
8104
  * with browser login delegated to Logto.
@@ -7615,7 +8111,7 @@ export declare interface McpKeycloakOAuthInboundPolicyOptions {
7615
8111
  * @public
7616
8112
  * @product mcp-gateway
7617
8113
  */
7618
- export declare class McpLogtoOAuthInboundPolicy extends InboundPolicy<McpLogtoOAuthInboundPolicyOptions> {
8114
+ export declare class McpLogtoOAuthInboundPolicy extends InboundPolicy<ValidatedLogtoOAuthOptions> {
7619
8115
  #private;
7620
8116
  static readonly policyType = "mcp-logto-oauth";
7621
8117
  constructor(rawOptions: unknown, policyName: string);
@@ -7663,6 +8159,69 @@ export declare interface McpLogtoOAuthInboundPolicyOptions {
7663
8159
  */
7664
8160
  cimdEnabled?: boolean;
7665
8161
  };
8162
+ /**
8163
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
8164
+ */
8165
+ idJag?:
8166
+ | {
8167
+ /**
8168
+ * Disable ID-JAG support.
8169
+ */
8170
+ enabled: false;
8171
+ }
8172
+ | {
8173
+ /**
8174
+ * Enable ID-JAG support.
8175
+ */
8176
+ enabled: true;
8177
+ /**
8178
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
8179
+ *
8180
+ * @minItems 1
8181
+ */
8182
+ trustedIssuers?: [
8183
+ {
8184
+ /**
8185
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8186
+ */
8187
+ issuer?: string;
8188
+ /**
8189
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8190
+ */
8191
+ jwksUrl?: string;
8192
+ /**
8193
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8194
+ */
8195
+ expectedClientIds?: string[];
8196
+ /**
8197
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8198
+ */
8199
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8200
+ },
8201
+ ...{
8202
+ /**
8203
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8204
+ */
8205
+ issuer?: string;
8206
+ /**
8207
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8208
+ */
8209
+ jwksUrl?: string;
8210
+ /**
8211
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8212
+ */
8213
+ expectedClientIds?: string[];
8214
+ /**
8215
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8216
+ */
8217
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8218
+ }[],
8219
+ ];
8220
+ /**
8221
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
8222
+ */
8223
+ authorizationDetailsTypesAllowed?: string[];
8224
+ };
7666
8225
  /**
7667
8226
  * Optional overrides for the derived browser-login settings.
7668
8227
  */
@@ -7677,6 +8236,43 @@ export declare interface McpLogtoOAuthInboundPolicyOptions {
7677
8236
  };
7678
8237
  }
7679
8238
 
8239
+ declare const mcpLogtoOAuthOptionsSchema: z.ZodObject<
8240
+ {
8241
+ logtoEndpoint: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
8242
+ clientId: z.ZodString;
8243
+ clientSecret: z.ZodString;
8244
+ scope: z.ZodOptional<z.ZodString>;
8245
+ gateway: z.ZodOptional<
8246
+ z.ZodObject<
8247
+ {
8248
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8249
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8250
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
8251
+ },
8252
+ z.core.$strict
8253
+ >
8254
+ >;
8255
+ idJag: z.ZodOptional<z.ZodUnknown>;
8256
+ browserLoginOverrides: z.ZodOptional<
8257
+ z.ZodObject<
8258
+ {
8259
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
8260
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
8261
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
8262
+ pkce: z.ZodOptional<
8263
+ z.ZodEnum<{
8264
+ none: "none";
8265
+ S256: "S256";
8266
+ }>
8267
+ >;
8268
+ },
8269
+ z.core.$strict
8270
+ >
8271
+ >;
8272
+ },
8273
+ z.core.$strict
8274
+ >;
8275
+
7680
8276
  /**
7681
8277
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token.
7682
8278
  *
@@ -7804,20 +8400,20 @@ export declare interface McpOAuthInboundPolicyOptions {
7804
8400
  */
7805
8401
  enabled: true;
7806
8402
  /**
7807
- * Trusted ID-JAG issuers. These values are never published in OAuth metadata.
8403
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
7808
8404
  *
7809
8405
  * @minItems 1
7810
8406
  */
7811
- trustedIssuers: [
8407
+ trustedIssuers?: [
7812
8408
  {
7813
8409
  /**
7814
- * Exact issuer URL expected in the ID-JAG iss claim.
8410
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7815
8411
  */
7816
- issuer: string;
8412
+ issuer?: string;
7817
8413
  /**
7818
- * JWKS URL used to verify ID-JAG signatures from this issuer.
8414
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7819
8415
  */
7820
- jwksUrl: string;
8416
+ jwksUrl?: string;
7821
8417
  /**
7822
8418
  * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7823
8419
  */
@@ -7829,13 +8425,13 @@ export declare interface McpOAuthInboundPolicyOptions {
7829
8425
  },
7830
8426
  ...{
7831
8427
  /**
7832
- * Exact issuer URL expected in the ID-JAG iss claim.
8428
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
7833
8429
  */
7834
- issuer: string;
8430
+ issuer?: string;
7835
8431
  /**
7836
- * JWKS URL used to verify ID-JAG signatures from this issuer.
8432
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
7837
8433
  */
7838
- jwksUrl: string;
8434
+ jwksUrl?: string;
7839
8435
  /**
7840
8436
  * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
7841
8437
  */
@@ -7855,108 +8451,198 @@ export declare interface McpOAuthInboundPolicyOptions {
7855
8451
 
7856
8452
  declare type McpOAuthRuntimeConfig = z.infer<
7857
8453
  typeof mcpOAuthRuntimeConfigSchema
7858
- >;
7859
-
7860
- declare const mcpOAuthRuntimeConfigSchema: z.ZodObject<
7861
- {
7862
- oidc: z.ZodObject<
7863
- {
7864
- issuer: z.ZodURL;
7865
- jwksUrl: z.ZodURL;
7866
- audience: z.ZodOptional<z.ZodString>;
7867
- },
7868
- z.core.$strip
7869
- >;
7870
- browserLogin: z.ZodObject<
7871
- {
7872
- url: z.ZodURL;
7873
- tokenUrl: z.ZodOptional<z.ZodURL>;
7874
- clientId: z.ZodOptional<z.ZodString>;
7875
- clientSecret: z.ZodOptional<z.ZodString>;
7876
- scope: z.ZodDefault<z.ZodString>;
7877
- audience: z.ZodOptional<z.ZodString>;
7878
- pkce: z.ZodDefault<
7879
- z.ZodEnum<{
7880
- none: "none";
7881
- S256: "S256";
7882
- }>
7883
- >;
7884
- remoteTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
7885
- stateTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
7886
- sessionTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
7887
- },
7888
- z.core.$strict
7889
- >;
7890
- gateway: z.ZodPipe<
7891
- z.ZodDefault<
7892
- z.ZodObject<
7893
- {
7894
- accessTokenTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
7895
- refreshTokenTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
7896
- cimdEnabled: z.ZodDefault<z.ZodBoolean>;
7897
- },
7898
- z.core.$strict
7899
- >
7900
- >,
7901
- z.ZodTransform<
8454
+ >;
8455
+
8456
+ declare const mcpOAuthRuntimeConfigSchema: z.ZodPipe<
8457
+ z.ZodObject<
8458
+ {
8459
+ oidc: z.ZodObject<
7902
8460
  {
7903
- accessTokenTtlSeconds: number;
7904
- refreshTokenTtlSeconds: number;
7905
- downstreamCimdEnabled: boolean;
8461
+ issuer: z.ZodURL;
8462
+ jwksUrl: z.ZodURL;
8463
+ audience: z.ZodOptional<z.ZodString>;
7906
8464
  },
8465
+ z.core.$strip
8466
+ >;
8467
+ browserLogin: z.ZodObject<
7907
8468
  {
7908
- accessTokenTtlSeconds: number;
7909
- refreshTokenTtlSeconds: number;
7910
- cimdEnabled: boolean;
7911
- }
7912
- >
7913
- >;
7914
- idJag: z.ZodDefault<
7915
- z.ZodOptional<
8469
+ url: z.ZodURL;
8470
+ tokenUrl: z.ZodOptional<z.ZodURL>;
8471
+ clientId: z.ZodOptional<z.ZodString>;
8472
+ clientSecret: z.ZodOptional<z.ZodString>;
8473
+ scope: z.ZodDefault<z.ZodString>;
8474
+ audience: z.ZodOptional<z.ZodString>;
8475
+ pkce: z.ZodDefault<
8476
+ z.ZodEnum<{
8477
+ none: "none";
8478
+ S256: "S256";
8479
+ }>
8480
+ >;
8481
+ remoteTimeoutMs: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
8482
+ stateTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
8483
+ sessionTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
8484
+ },
8485
+ z.core.$strict
8486
+ >;
8487
+ gateway: z.ZodPipe<
7916
8488
  z.ZodDefault<
7917
- z.ZodDiscriminatedUnion<
7918
- [
7919
- z.ZodObject<
7920
- {
7921
- enabled: z.ZodLiteral<false>;
7922
- },
7923
- z.core.$strict
7924
- >,
7925
- z.ZodObject<
7926
- {
7927
- enabled: z.ZodLiteral<true>;
7928
- trustedIssuers: z.ZodArray<
7929
- z.ZodObject<
7930
- {
7931
- issuer: z.ZodURL;
7932
- jwksUrl: z.ZodURL;
7933
- expectedClientIds: z.ZodOptional<
7934
- z.ZodArray<z.ZodString>
7935
- >;
7936
- subjectMapping: z.ZodDefault<
7937
- z.ZodEnum<{
7938
- iss_prefix: "iss_prefix";
7939
- iss_tenant_prefix: "iss_tenant_prefix";
7940
- sub_id_only: "sub_id_only";
7941
- }>
7942
- >;
7943
- },
7944
- z.core.$strict
7945
- >
7946
- >;
7947
- authorizationDetailsTypesAllowed: z.ZodOptional<
7948
- z.ZodArray<z.ZodString>
7949
- >;
7950
- },
7951
- z.core.$strict
7952
- >,
7953
- ]
8489
+ z.ZodObject<
8490
+ {
8491
+ accessTokenTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
8492
+ refreshTokenTtlSeconds: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
8493
+ cimdEnabled: z.ZodDefault<z.ZodBoolean>;
8494
+ },
8495
+ z.core.$strict
8496
+ >
8497
+ >,
8498
+ z.ZodTransform<
8499
+ {
8500
+ accessTokenTtlSeconds: number;
8501
+ refreshTokenTtlSeconds: number;
8502
+ downstreamCimdEnabled: boolean;
8503
+ },
8504
+ {
8505
+ accessTokenTtlSeconds: number;
8506
+ refreshTokenTtlSeconds: number;
8507
+ cimdEnabled: boolean;
8508
+ }
8509
+ >
8510
+ >;
8511
+ idJag: z.ZodDefault<
8512
+ z.ZodOptional<
8513
+ z.ZodDefault<
8514
+ z.ZodDiscriminatedUnion<
8515
+ [
8516
+ z.ZodObject<
8517
+ {
8518
+ enabled: z.ZodLiteral<false>;
8519
+ },
8520
+ z.core.$strict
8521
+ >,
8522
+ z.ZodObject<
8523
+ {
8524
+ enabled: z.ZodLiteral<true>;
8525
+ trustedIssuers: z.ZodOptional<
8526
+ z.ZodArray<
8527
+ z.ZodObject<
8528
+ {
8529
+ issuer: z.ZodOptional<z.ZodURL>;
8530
+ jwksUrl: z.ZodOptional<z.ZodURL>;
8531
+ expectedClientIds: z.ZodOptional<
8532
+ z.ZodArray<z.ZodString>
8533
+ >;
8534
+ subjectMapping: z.ZodDefault<
8535
+ z.ZodEnum<{
8536
+ iss_prefix: "iss_prefix";
8537
+ iss_tenant_prefix: "iss_tenant_prefix";
8538
+ sub_id_only: "sub_id_only";
8539
+ }>
8540
+ >;
8541
+ },
8542
+ z.core.$strict
8543
+ >
8544
+ >
8545
+ >;
8546
+ authorizationDetailsTypesAllowed: z.ZodOptional<
8547
+ z.ZodArray<z.ZodString>
8548
+ >;
8549
+ },
8550
+ z.core.$strict
8551
+ >,
8552
+ ]
8553
+ >
7954
8554
  >
7955
8555
  >
7956
- >
7957
- >;
7958
- },
7959
- z.core.$strict
8556
+ >;
8557
+ },
8558
+ z.core.$strict
8559
+ >,
8560
+ z.ZodTransform<
8561
+ {
8562
+ idJag:
8563
+ | {
8564
+ enabled: false;
8565
+ }
8566
+ | {
8567
+ enabled: true;
8568
+ trustedIssuers: {
8569
+ issuer: string;
8570
+ jwksUrl: string;
8571
+ subjectMapping:
8572
+ | "iss_prefix"
8573
+ | "iss_tenant_prefix"
8574
+ | "sub_id_only";
8575
+ expectedClientIds?: string[] | undefined;
8576
+ }[];
8577
+ authorizationDetailsTypesAllowed?: string[] | undefined;
8578
+ };
8579
+ oidc: {
8580
+ issuer: string;
8581
+ jwksUrl: string;
8582
+ audience?: string | undefined;
8583
+ };
8584
+ browserLogin: {
8585
+ url: string;
8586
+ scope: string;
8587
+ pkce: "none" | "S256";
8588
+ remoteTimeoutMs: number;
8589
+ stateTtlSeconds: number;
8590
+ sessionTtlSeconds: number;
8591
+ tokenUrl?: string | undefined;
8592
+ clientId?: string | undefined;
8593
+ clientSecret?: string | undefined;
8594
+ audience?: string | undefined;
8595
+ };
8596
+ gateway: {
8597
+ accessTokenTtlSeconds: number;
8598
+ refreshTokenTtlSeconds: number;
8599
+ downstreamCimdEnabled: boolean;
8600
+ };
8601
+ },
8602
+ {
8603
+ oidc: {
8604
+ issuer: string;
8605
+ jwksUrl: string;
8606
+ audience?: string | undefined;
8607
+ };
8608
+ browserLogin: {
8609
+ url: string;
8610
+ scope: string;
8611
+ pkce: "none" | "S256";
8612
+ remoteTimeoutMs: number;
8613
+ stateTtlSeconds: number;
8614
+ sessionTtlSeconds: number;
8615
+ tokenUrl?: string | undefined;
8616
+ clientId?: string | undefined;
8617
+ clientSecret?: string | undefined;
8618
+ audience?: string | undefined;
8619
+ };
8620
+ gateway: {
8621
+ accessTokenTtlSeconds: number;
8622
+ refreshTokenTtlSeconds: number;
8623
+ downstreamCimdEnabled: boolean;
8624
+ };
8625
+ idJag:
8626
+ | {
8627
+ enabled: false;
8628
+ }
8629
+ | {
8630
+ enabled: true;
8631
+ trustedIssuers?:
8632
+ | {
8633
+ subjectMapping:
8634
+ | "iss_prefix"
8635
+ | "iss_tenant_prefix"
8636
+ | "sub_id_only";
8637
+ issuer?: string | undefined;
8638
+ jwksUrl?: string | undefined;
8639
+ expectedClientIds?: string[] | undefined;
8640
+ }[]
8641
+ | undefined;
8642
+ authorizationDetailsTypesAllowed?: string[] | undefined;
8643
+ };
8644
+ }
8645
+ >
7960
8646
  >;
7961
8647
 
7962
8648
  /**
@@ -7971,7 +8657,7 @@ declare const mcpOAuthRuntimeConfigSchema: z.ZodObject<
7971
8657
  * @public
7972
8658
  * @product mcp-gateway
7973
8659
  */
7974
- export declare class McpOktaOAuthInboundPolicy extends InboundPolicy<McpOktaOAuthInboundPolicyOptions> {
8660
+ export declare class McpOktaOAuthInboundPolicy extends InboundPolicy<ValidatedOktaOAuthOptions> {
7975
8661
  #private;
7976
8662
  static readonly policyType = "mcp-okta-oauth";
7977
8663
  constructor(rawOptions: unknown, policyName: string);
@@ -8023,6 +8709,69 @@ export declare interface McpOktaOAuthInboundPolicyOptions {
8023
8709
  */
8024
8710
  cimdEnabled?: boolean;
8025
8711
  };
8712
+ /**
8713
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
8714
+ */
8715
+ idJag?:
8716
+ | {
8717
+ /**
8718
+ * Disable ID-JAG support.
8719
+ */
8720
+ enabled: false;
8721
+ }
8722
+ | {
8723
+ /**
8724
+ * Enable ID-JAG support.
8725
+ */
8726
+ enabled: true;
8727
+ /**
8728
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
8729
+ *
8730
+ * @minItems 1
8731
+ */
8732
+ trustedIssuers?: [
8733
+ {
8734
+ /**
8735
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8736
+ */
8737
+ issuer?: string;
8738
+ /**
8739
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8740
+ */
8741
+ jwksUrl?: string;
8742
+ /**
8743
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8744
+ */
8745
+ expectedClientIds?: string[];
8746
+ /**
8747
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8748
+ */
8749
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8750
+ },
8751
+ ...{
8752
+ /**
8753
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8754
+ */
8755
+ issuer?: string;
8756
+ /**
8757
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8758
+ */
8759
+ jwksUrl?: string;
8760
+ /**
8761
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8762
+ */
8763
+ expectedClientIds?: string[];
8764
+ /**
8765
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8766
+ */
8767
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8768
+ }[],
8769
+ ];
8770
+ /**
8771
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
8772
+ */
8773
+ authorizationDetailsTypesAllowed?: string[];
8774
+ };
8026
8775
  /**
8027
8776
  * Optional overrides for the derived browser-login settings.
8028
8777
  */
@@ -8037,6 +8786,44 @@ export declare interface McpOktaOAuthInboundPolicyOptions {
8037
8786
  };
8038
8787
  }
8039
8788
 
8789
+ declare const mcpOktaOAuthOptionsSchema: z.ZodObject<
8790
+ {
8791
+ oktaDomain: z.ZodString;
8792
+ authorizationServerId: z.ZodOptional<z.ZodString>;
8793
+ clientId: z.ZodString;
8794
+ clientSecret: z.ZodString;
8795
+ scope: z.ZodOptional<z.ZodString>;
8796
+ gateway: z.ZodOptional<
8797
+ z.ZodObject<
8798
+ {
8799
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8800
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8801
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
8802
+ },
8803
+ z.core.$strict
8804
+ >
8805
+ >;
8806
+ idJag: z.ZodOptional<z.ZodUnknown>;
8807
+ browserLoginOverrides: z.ZodOptional<
8808
+ z.ZodObject<
8809
+ {
8810
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
8811
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
8812
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
8813
+ pkce: z.ZodOptional<
8814
+ z.ZodEnum<{
8815
+ none: "none";
8816
+ S256: "S256";
8817
+ }>
8818
+ >;
8819
+ },
8820
+ z.core.$strict
8821
+ >
8822
+ >;
8823
+ },
8824
+ z.core.$strict
8825
+ >;
8826
+
8040
8827
  /**
8041
8828
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
8042
8829
  * with browser login delegated to OneLogin.
@@ -8049,7 +8836,7 @@ export declare interface McpOktaOAuthInboundPolicyOptions {
8049
8836
  * @public
8050
8837
  * @product mcp-gateway
8051
8838
  */
8052
- export declare class McpOneLoginOAuthInboundPolicy extends InboundPolicy<McpOneLoginOAuthInboundPolicyOptions> {
8839
+ export declare class McpOneLoginOAuthInboundPolicy extends InboundPolicy<ValidatedOneLoginOAuthOptions> {
8053
8840
  #private;
8054
8841
  static readonly policyType = "mcp-onelogin-oauth";
8055
8842
  constructor(rawOptions: unknown, policyName: string);
@@ -8097,6 +8884,69 @@ export declare interface McpOneLoginOAuthInboundPolicyOptions {
8097
8884
  */
8098
8885
  cimdEnabled?: boolean;
8099
8886
  };
8887
+ /**
8888
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
8889
+ */
8890
+ idJag?:
8891
+ | {
8892
+ /**
8893
+ * Disable ID-JAG support.
8894
+ */
8895
+ enabled: false;
8896
+ }
8897
+ | {
8898
+ /**
8899
+ * Enable ID-JAG support.
8900
+ */
8901
+ enabled: true;
8902
+ /**
8903
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
8904
+ *
8905
+ * @minItems 1
8906
+ */
8907
+ trustedIssuers?: [
8908
+ {
8909
+ /**
8910
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8911
+ */
8912
+ issuer?: string;
8913
+ /**
8914
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8915
+ */
8916
+ jwksUrl?: string;
8917
+ /**
8918
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8919
+ */
8920
+ expectedClientIds?: string[];
8921
+ /**
8922
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8923
+ */
8924
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8925
+ },
8926
+ ...{
8927
+ /**
8928
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
8929
+ */
8930
+ issuer?: string;
8931
+ /**
8932
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
8933
+ */
8934
+ jwksUrl?: string;
8935
+ /**
8936
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
8937
+ */
8938
+ expectedClientIds?: string[];
8939
+ /**
8940
+ * How the ID-JAG subject is mapped into the gateway subject ID.
8941
+ */
8942
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
8943
+ }[],
8944
+ ];
8945
+ /**
8946
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
8947
+ */
8948
+ authorizationDetailsTypesAllowed?: string[];
8949
+ };
8100
8950
  /**
8101
8951
  * Optional overrides for the derived browser-login settings.
8102
8952
  */
@@ -8107,6 +8957,37 @@ export declare interface McpOneLoginOAuthInboundPolicyOptions {
8107
8957
  };
8108
8958
  }
8109
8959
 
8960
+ declare const mcpOneLoginOAuthOptionsSchema: z.ZodObject<
8961
+ {
8962
+ oneLoginSubdomain: z.ZodString;
8963
+ clientId: z.ZodString;
8964
+ clientSecret: z.ZodString;
8965
+ scope: z.ZodOptional<z.ZodString>;
8966
+ gateway: z.ZodOptional<
8967
+ z.ZodObject<
8968
+ {
8969
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8970
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
8971
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
8972
+ },
8973
+ z.core.$strict
8974
+ >
8975
+ >;
8976
+ idJag: z.ZodOptional<z.ZodUnknown>;
8977
+ browserLoginOverrides: z.ZodOptional<
8978
+ z.ZodObject<
8979
+ {
8980
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
8981
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
8982
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
8983
+ },
8984
+ z.core.$strict
8985
+ >
8986
+ >;
8987
+ },
8988
+ z.core.$strict
8989
+ >;
8990
+
8110
8991
  /**
8111
8992
  * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
8112
8993
  * with browser login delegated to PingOne.
@@ -8120,7 +9001,7 @@ export declare interface McpOneLoginOAuthInboundPolicyOptions {
8120
9001
  * @public
8121
9002
  * @product mcp-gateway
8122
9003
  */
8123
- export declare class McpPingOAuthInboundPolicy extends InboundPolicy<McpPingOAuthInboundPolicyOptions> {
9004
+ export declare class McpPingOAuthInboundPolicy extends InboundPolicy<ValidatedPingOAuthOptions> {
8124
9005
  #private;
8125
9006
  static readonly policyType = "mcp-ping-oauth";
8126
9007
  constructor(rawOptions: unknown, policyName: string);
@@ -8182,6 +9063,69 @@ export declare interface McpPingOAuthInboundPolicyOptions {
8182
9063
  */
8183
9064
  cimdEnabled?: boolean;
8184
9065
  };
9066
+ /**
9067
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
9068
+ */
9069
+ idJag?:
9070
+ | {
9071
+ /**
9072
+ * Disable ID-JAG support.
9073
+ */
9074
+ enabled: false;
9075
+ }
9076
+ | {
9077
+ /**
9078
+ * Enable ID-JAG support.
9079
+ */
9080
+ enabled: true;
9081
+ /**
9082
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
9083
+ *
9084
+ * @minItems 1
9085
+ */
9086
+ trustedIssuers?: [
9087
+ {
9088
+ /**
9089
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
9090
+ */
9091
+ issuer?: string;
9092
+ /**
9093
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
9094
+ */
9095
+ jwksUrl?: string;
9096
+ /**
9097
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
9098
+ */
9099
+ expectedClientIds?: string[];
9100
+ /**
9101
+ * How the ID-JAG subject is mapped into the gateway subject ID.
9102
+ */
9103
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
9104
+ },
9105
+ ...{
9106
+ /**
9107
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
9108
+ */
9109
+ issuer?: string;
9110
+ /**
9111
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
9112
+ */
9113
+ jwksUrl?: string;
9114
+ /**
9115
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
9116
+ */
9117
+ expectedClientIds?: string[];
9118
+ /**
9119
+ * How the ID-JAG subject is mapped into the gateway subject ID.
9120
+ */
9121
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
9122
+ }[],
9123
+ ];
9124
+ /**
9125
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
9126
+ */
9127
+ authorizationDetailsTypesAllowed?: string[];
9128
+ };
8185
9129
  /**
8186
9130
  * Optional overrides for the derived browser-login settings.
8187
9131
  */
@@ -8196,6 +9140,54 @@ export declare interface McpPingOAuthInboundPolicyOptions {
8196
9140
  };
8197
9141
  }
8198
9142
 
9143
+ declare const mcpPingOAuthOptionsSchema: z.ZodObject<
9144
+ {
9145
+ environmentId: z.ZodOptional<z.ZodString>;
9146
+ region: z.ZodOptional<
9147
+ z.ZodEnum<{
9148
+ "north-america": "north-america";
9149
+ canada: "canada";
9150
+ europe: "europe";
9151
+ singapore: "singapore";
9152
+ australia: "australia";
9153
+ "asia-pacific": "asia-pacific";
9154
+ }>
9155
+ >;
9156
+ customDomain: z.ZodOptional<z.ZodString>;
9157
+ clientId: z.ZodString;
9158
+ clientSecret: z.ZodString;
9159
+ scope: z.ZodOptional<z.ZodString>;
9160
+ gateway: z.ZodOptional<
9161
+ z.ZodObject<
9162
+ {
9163
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
9164
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
9165
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
9166
+ },
9167
+ z.core.$strict
9168
+ >
9169
+ >;
9170
+ idJag: z.ZodOptional<z.ZodUnknown>;
9171
+ browserLoginOverrides: z.ZodOptional<
9172
+ z.ZodObject<
9173
+ {
9174
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
9175
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
9176
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
9177
+ pkce: z.ZodOptional<
9178
+ z.ZodEnum<{
9179
+ none: "none";
9180
+ S256: "S256";
9181
+ }>
9182
+ >;
9183
+ },
9184
+ z.core.$strict
9185
+ >
9186
+ >;
9187
+ },
9188
+ z.core.$strict
9189
+ >;
9190
+
8199
9191
  /**
8200
9192
  * An MCP Server handler for Zuplo
8201
9193
  * Only POST requests are supported for the HTTP streamable MCP transport.
@@ -8246,7 +9238,7 @@ declare interface McpTool {
8246
9238
  * @public
8247
9239
  * @product mcp-gateway
8248
9240
  */
8249
- export declare class McpWorkosOAuthInboundPolicy extends InboundPolicy<McpWorkosOAuthInboundPolicyOptions> {
9241
+ export declare class McpWorkosOAuthInboundPolicy extends InboundPolicy<ValidatedWorkosOAuthOptions> {
8250
9242
  #private;
8251
9243
  static readonly policyType = "mcp-workos-oauth";
8252
9244
  constructor(rawOptions: unknown, policyName: string);
@@ -8290,6 +9282,69 @@ export declare interface McpWorkosOAuthInboundPolicyOptions {
8290
9282
  */
8291
9283
  cimdEnabled?: boolean;
8292
9284
  };
9285
+ /**
9286
+ * Optional Identity Assertion JWT Authorization Grant (ID-JAG / XAA) support for the gateway token endpoint.
9287
+ */
9288
+ idJag?:
9289
+ | {
9290
+ /**
9291
+ * Disable ID-JAG support.
9292
+ */
9293
+ enabled: false;
9294
+ }
9295
+ | {
9296
+ /**
9297
+ * Enable ID-JAG support.
9298
+ */
9299
+ enabled: true;
9300
+ /**
9301
+ * Trusted ID-JAG issuers. These values are never published in OAuth metadata. Omit to trust this policy's browser-login IdP.
9302
+ *
9303
+ * @minItems 1
9304
+ */
9305
+ trustedIssuers?: [
9306
+ {
9307
+ /**
9308
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
9309
+ */
9310
+ issuer?: string;
9311
+ /**
9312
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
9313
+ */
9314
+ jwksUrl?: string;
9315
+ /**
9316
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
9317
+ */
9318
+ expectedClientIds?: string[];
9319
+ /**
9320
+ * How the ID-JAG subject is mapped into the gateway subject ID.
9321
+ */
9322
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
9323
+ },
9324
+ ...{
9325
+ /**
9326
+ * Exact issuer URL expected in the ID-JAG iss claim. Provide together with jwksUrl, or omit both to default to this policy's browser-login IdP.
9327
+ */
9328
+ issuer?: string;
9329
+ /**
9330
+ * JWKS URL used to verify ID-JAG signatures from this issuer. Provide together with issuer, or omit both to default to this policy's browser-login IdP.
9331
+ */
9332
+ jwksUrl?: string;
9333
+ /**
9334
+ * Optional allow-list of client IDs accepted from this issuer. The ID-JAG client_id must still match the authenticated token-endpoint client.
9335
+ */
9336
+ expectedClientIds?: string[];
9337
+ /**
9338
+ * How the ID-JAG subject is mapped into the gateway subject ID.
9339
+ */
9340
+ subjectMapping?: "iss_prefix" | "iss_tenant_prefix" | "sub_id_only";
9341
+ }[],
9342
+ ];
9343
+ /**
9344
+ * Optional allow-list of RFC 9396 authorization_details type values accepted from ID-JAGs.
9345
+ */
9346
+ authorizationDetailsTypesAllowed?: string[];
9347
+ };
8293
9348
  /**
8294
9349
  * Optional overrides for the derived browser-login settings.
8295
9350
  */
@@ -8304,6 +9359,42 @@ export declare interface McpWorkosOAuthInboundPolicyOptions {
8304
9359
  };
8305
9360
  }
8306
9361
 
9362
+ declare const mcpWorkosOAuthOptionsSchema: z.ZodObject<
9363
+ {
9364
+ clientId: z.ZodString;
9365
+ clientSecret: z.ZodString;
9366
+ scope: z.ZodOptional<z.ZodString>;
9367
+ gateway: z.ZodOptional<
9368
+ z.ZodObject<
9369
+ {
9370
+ accessTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
9371
+ refreshTokenTtlSeconds: z.ZodOptional<z.ZodNumber>;
9372
+ cimdEnabled: z.ZodOptional<z.ZodBoolean>;
9373
+ },
9374
+ z.core.$strict
9375
+ >
9376
+ >;
9377
+ idJag: z.ZodOptional<z.ZodUnknown>;
9378
+ browserLoginOverrides: z.ZodOptional<
9379
+ z.ZodObject<
9380
+ {
9381
+ remoteTimeoutMs: z.ZodOptional<z.ZodNumber>;
9382
+ stateTtlSeconds: z.ZodOptional<z.ZodNumber>;
9383
+ sessionTtlSeconds: z.ZodOptional<z.ZodNumber>;
9384
+ pkce: z.ZodOptional<
9385
+ z.ZodEnum<{
9386
+ none: "none";
9387
+ S256: "S256";
9388
+ }>
9389
+ >;
9390
+ },
9391
+ z.core.$strict
9392
+ >
9393
+ >;
9394
+ },
9395
+ z.core.$strict
9396
+ >;
9397
+
8307
9398
  declare interface MemoryCacheOptions {
8308
9399
  maxSize: number;
8309
9400
  }
@@ -10384,7 +11475,7 @@ export declare interface PropelAuthJwtInboundPolicyOptions {
10384
11475
  */
10385
11476
  allowUnauthenticatedRequests?: boolean;
10386
11477
  /**
10387
- * Your PropelAuth authUrl. For example, `https://6587563.propelauthtest.com`.
11478
+ * Your PropelAuth authUrl. For example, `https://12345678.propelauthtest.com`.
10388
11479
  */
10389
11480
  authUrl: string;
10390
11481
  /**
@@ -13114,6 +14205,157 @@ declare interface UnauthenticatedCredentialConfig {
13114
14205
  method: "none";
13115
14206
  }
13116
14207
 
14208
+ /**
14209
+ * Resolves AWS credentials with STS AssumeRoleWithWebIdentity using Zuplo's
14210
+ * ambient OIDC identity — no AWS keys are stored anywhere. The role's trust
14211
+ * policy must trust the Zuplo OIDC identity provider. Resolved credentials are
14212
+ * registered on the request context for the AWS Lambda handler and custom code
14213
+ * to sign upstream requests with {@link AwsClient.fromContext}. This policy does
14214
+ * not itself sign or forward the request.
14215
+ *
14216
+ * @title Upstream AWS Federated Auth
14217
+ * @product api-gateway
14218
+ * @beta
14219
+ * @enterprise
14220
+ * @param request - The ZuploRequest
14221
+ * @param context - The ZuploContext
14222
+ * @param options - The policy options set in policies.json
14223
+ * @param policyName - The name of the policy as set in policies.json
14224
+ * @returns A Request or a Response
14225
+ */
14226
+ export declare class UpstreamAwsFederatedAuthInboundPolicy extends InboundPolicy<UpstreamAwsFederatedAuthInboundPolicyOptions> {
14227
+ #private;
14228
+ static readonly policyType = "upstream-aws-federated-auth";
14229
+ constructor(
14230
+ options: UpstreamAwsFederatedAuthInboundPolicyOptions,
14231
+ policyName: string
14232
+ );
14233
+ handler(
14234
+ request: ZuploRequest,
14235
+ context: ZuploContext
14236
+ ): Promise<ZuploRequest | Response>;
14237
+ }
14238
+
14239
+ /**
14240
+ * The options for this policy.
14241
+ * @public
14242
+ */
14243
+ export declare interface UpstreamAwsFederatedAuthInboundPolicyOptions {
14244
+ /**
14245
+ * The IAM role to assume with STS AssumeRoleWithWebIdentity. The role's trust policy must trust the Zuplo OIDC identity provider.
14246
+ */
14247
+ roleArn: string;
14248
+ /**
14249
+ * The AWS region used for the STS endpoint and as the default signing region for consumers of the resolved credentials.
14250
+ */
14251
+ region: string;
14252
+ /**
14253
+ * The audience ('aud' claim) of the Zuplo-issued OIDC token. Must match a client ID configured on the IAM OIDC identity provider.
14254
+ */
14255
+ audience?: string;
14256
+ /**
14257
+ * The STS role session name recorded in AWS CloudTrail. Must match the pattern [\w+=,.@-]{2,64}.
14258
+ */
14259
+ roleSessionName?: string;
14260
+ /**
14261
+ * The lifetime in seconds of the temporary credentials requested from STS (900-43200). The assumed role's maximum session duration may further limit this value.
14262
+ */
14263
+ durationSeconds?: number;
14264
+ /**
14265
+ * Overrides the STS endpoint URL. Only needed for non-standard partitions such as AWS GovCloud or AWS China.
14266
+ */
14267
+ stsEndpoint?: string;
14268
+ /**
14269
+ * The number of times to retry fetching temporary credentials in the event of a failure.
14270
+ */
14271
+ tokenRetries?: number;
14272
+ /**
14273
+ * The number of seconds before credential expiration at which cached credentials are discarded and refreshed.
14274
+ */
14275
+ expirationOffsetSeconds?: number;
14276
+ }
14277
+
14278
+ /**
14279
+ * Resolves AWS credentials from static access keys (optionally exchanged for an
14280
+ * IAM role's temporary credentials via STS AssumeRole) and registers them on
14281
+ * the request context. The AWS Lambda handler and custom code read them with
14282
+ * {@link AwsClient.fromContext} to sign upstream requests. This policy does not
14283
+ * itself sign or forward the request.
14284
+ *
14285
+ * @title Upstream AWS Service Auth
14286
+ * @product api-gateway
14287
+ * @beta
14288
+ * @enterprise
14289
+ * @param request - The ZuploRequest
14290
+ * @param context - The ZuploContext
14291
+ * @param options - The policy options set in policies.json
14292
+ * @param policyName - The name of the policy as set in policies.json
14293
+ * @returns A Request or a Response
14294
+ */
14295
+ export declare class UpstreamAwsServiceAuthInboundPolicy extends InboundPolicy<UpstreamAwsServiceAuthInboundPolicyOptions> {
14296
+ #private;
14297
+ static readonly policyType = "upstream-aws-service-auth";
14298
+ constructor(
14299
+ options: UpstreamAwsServiceAuthInboundPolicyOptions,
14300
+ policyName: string
14301
+ );
14302
+ handler(
14303
+ request: ZuploRequest,
14304
+ context: ZuploContext
14305
+ ): Promise<ZuploRequest | Response>;
14306
+ }
14307
+
14308
+ /**
14309
+ * The options for this policy.
14310
+ * @public
14311
+ */
14312
+ export declare interface UpstreamAwsServiceAuthInboundPolicyOptions {
14313
+ /**
14314
+ * The AWS access key ID. Store the value in an environment variable rather than in source.
14315
+ */
14316
+ accessKeyId: string;
14317
+ /**
14318
+ * The AWS secret access key. Always store this in an environment variable.
14319
+ */
14320
+ secretAccessKey: string;
14321
+ /**
14322
+ * The AWS region. Used for the STS endpoint when 'roleArn' is set, and as the default signing region for consumers of the resolved credentials.
14323
+ */
14324
+ region: string;
14325
+ /**
14326
+ * The AWS session token, required only when the configured access key pair is itself a temporary credential.
14327
+ */
14328
+ sessionToken?: string;
14329
+ /**
14330
+ * An IAM role to assume using STS AssumeRole with the configured access keys. When set, the resolved credentials are the role's temporary credentials instead of the static keys.
14331
+ */
14332
+ roleArn?: string;
14333
+ /**
14334
+ * The external ID to pass to STS AssumeRole when the role's trust policy requires one.
14335
+ */
14336
+ externalId?: string;
14337
+ /**
14338
+ * The STS role session name recorded in AWS CloudTrail. Must match the pattern [\w+=,.@-]{2,64}.
14339
+ */
14340
+ roleSessionName?: string;
14341
+ /**
14342
+ * The lifetime in seconds of the temporary credentials requested from STS (900-43200). The assumed role's maximum session duration may further limit this value.
14343
+ */
14344
+ durationSeconds?: number;
14345
+ /**
14346
+ * Overrides the STS endpoint URL. Only needed for non-standard partitions such as AWS GovCloud or AWS China.
14347
+ */
14348
+ stsEndpoint?: string;
14349
+ /**
14350
+ * The number of times to retry fetching temporary credentials in the event of a failure.
14351
+ */
14352
+ tokenRetries?: number;
14353
+ /**
14354
+ * The number of seconds before credential expiration at which cached credentials are discarded and refreshed.
14355
+ */
14356
+ expirationOffsetSeconds?: number;
14357
+ }
14358
+
13117
14359
  /**
13118
14360
  * Uses Azure Active Directory to add an Authorization header to the request
13119
14361
  * in order to authenticate requests using Azure identity.
@@ -13365,7 +14607,7 @@ export declare const UpstreamGcpServiceAuthInboundPolicy: InboundPolicyHandler<U
13365
14607
  */
13366
14608
  export declare interface UpstreamGcpServiceAuthInboundPolicyOptions {
13367
14609
  /**
13368
- * The audience for the service to be called. This is typically the URL of your service endpoint like 'https://my-service-a2ev-uc.a.run.app'. If calling a Google API, leave this empty.
14610
+ * The audience for the service to be called. This is typically the URL of your service endpoint like 'https://my-backend-api-a1b2c3d4e5-uc.a.run.app'. If calling a Google API, leave this empty.
13369
14611
  */
13370
14612
  audience?: string;
13371
14613
  /**
@@ -13441,6 +14683,16 @@ export declare interface UpstreamZuploJwtAuthInboundPolicyOptions {
13441
14683
  * The audience claim for the JWT.
13442
14684
  */
13443
14685
  audience?: string;
14686
+ /**
14687
+ * The subject ('sub') claim for the minted JWT. Identifies the acting subject of the token (typically the gateway itself).
14688
+ */
14689
+ subject?: string;
14690
+ /**
14691
+ * Maps claims in the minted JWT to values from the authenticated user (request.user). Each key is the claim name to set; each value is a light JSON-path selector into request.user using dot or bracket notation (e.g. 'sub', 'data.role', or 'data["https://example.com/claim"]' for keys containing dots or slashes). When set, the policy requires an authenticated user and returns 401 if request.user is absent — it never mints a token with missing identity.
14692
+ */
14693
+ claimsFromUser?: {
14694
+ [k: string]: string;
14695
+ };
13444
14696
  /**
13445
14697
  * The header name where the JWT will be attached. Defaults to 'Authorization'.
13446
14698
  */
@@ -13621,8 +14873,48 @@ declare type ValidatedAuth0OAuthOptions = z.infer<
13621
14873
  typeof mcpAuth0OAuthOptionsSchema
13622
14874
  >;
13623
14875
 
14876
+ declare type ValidatedClerkOAuthOptions = z.infer<
14877
+ typeof mcpClerkOAuthOptionsSchema
14878
+ >;
14879
+
14880
+ declare type ValidatedCognitoOAuthOptions = z.infer<
14881
+ typeof mcpCognitoOAuthOptionsSchema
14882
+ >;
14883
+
14884
+ declare type ValidatedEntraOAuthOptions = z.infer<
14885
+ typeof mcpEntraOAuthOptionsSchema
14886
+ >;
14887
+
14888
+ declare type ValidatedGoogleOAuthOptions = z.infer<
14889
+ typeof mcpGoogleOAuthOptionsSchema
14890
+ >;
14891
+
14892
+ declare type ValidatedKeycloakOAuthOptions = z.infer<
14893
+ typeof mcpKeycloakOAuthOptionsSchema
14894
+ >;
14895
+
14896
+ declare type ValidatedLogtoOAuthOptions = z.infer<
14897
+ typeof mcpLogtoOAuthOptionsSchema
14898
+ >;
14899
+
14900
+ declare type ValidatedOktaOAuthOptions = z.infer<
14901
+ typeof mcpOktaOAuthOptionsSchema
14902
+ >;
14903
+
14904
+ declare type ValidatedOneLoginOAuthOptions = z.infer<
14905
+ typeof mcpOneLoginOAuthOptionsSchema
14906
+ >;
14907
+
13624
14908
  declare type ValidatedOptions = z.infer<typeof requireUserClaimsOptionsSchema>;
13625
14909
 
14910
+ declare type ValidatedPingOAuthOptions = z.infer<
14911
+ typeof mcpPingOAuthOptionsSchema
14912
+ >;
14913
+
14914
+ declare type ValidatedWorkosOAuthOptions = z.infer<
14915
+ typeof mcpWorkosOAuthOptionsSchema
14916
+ >;
14917
+
13626
14918
  /**
13627
14919
  * Validates the body of an incoming request based on a JSON schema.
13628
14920
  *