@zuplo/cli 6.72.2 → 6.72.7

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 (102) hide show
  1. package/node_modules/@fastify/reply-from/.github/dependabot.yml +42 -2
  2. package/node_modules/@fastify/reply-from/README.md +3 -3
  3. package/node_modules/@fastify/reply-from/index.js +6 -1
  4. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/.gitattributes +2 -0
  5. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/.github/dependabot.yml +53 -0
  6. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/.github/workflows/ci.yml +33 -0
  7. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/.github/workflows/lock-threads.yml +19 -0
  8. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/LICENSE +21 -0
  9. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/README.md +188 -0
  10. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/eslint.config.js +6 -0
  11. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/index.js +67 -0
  12. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/lib/getPluginName.js +25 -0
  13. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/lib/toCamelCase.js +10 -0
  14. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/package.json +70 -0
  15. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/bundlers.test.js +110 -0
  16. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/checkVersion.test.js +67 -0
  17. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/composite.test.js +14 -0
  18. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/esm/esm.mjs +11 -0
  19. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/esm/index.test.js +11 -0
  20. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/extractPluginName.test.js +49 -0
  21. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/mu1tip1e.composite.test.js +15 -0
  22. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/test.js +396 -0
  23. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/test/toCamelCase.test.js +24 -0
  24. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/types/example-async.tst.ts +19 -0
  25. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/types/example-callback.tst.ts +19 -0
  26. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/types/index.d.ts +54 -0
  27. package/node_modules/@fastify/reply-from/node_modules/fastify-plugin/types/index.tst.ts +249 -0
  28. package/node_modules/@fastify/reply-from/package.json +6 -7
  29. package/node_modules/@fastify/reply-from/test/incomplete-request.test.js +142 -0
  30. package/node_modules/@fastify/reply-from/types/index.tst.ts +123 -0
  31. package/node_modules/@posthog/core/dist/posthog-core-stateless.d.ts +35 -2
  32. package/node_modules/@posthog/core/dist/posthog-core-stateless.d.ts.map +1 -1
  33. package/node_modules/@posthog/core/dist/posthog-core-stateless.js +68 -56
  34. package/node_modules/@posthog/core/dist/posthog-core-stateless.mjs +68 -56
  35. package/node_modules/@posthog/core/dist/posthog-core.d.ts +2 -1
  36. package/node_modules/@posthog/core/dist/posthog-core.d.ts.map +1 -1
  37. package/node_modules/@posthog/core/dist/posthog-core.js +1 -0
  38. package/node_modules/@posthog/core/dist/posthog-core.mjs +1 -0
  39. package/node_modules/@posthog/core/dist/types.d.ts +1 -0
  40. package/node_modules/@posthog/core/dist/types.d.ts.map +1 -1
  41. package/node_modules/@posthog/core/dist/types.js +1 -0
  42. package/node_modules/@posthog/core/dist/types.mjs +1 -0
  43. package/node_modules/@posthog/core/package.json +1 -1
  44. package/node_modules/@posthog/core/src/posthog-core-stateless.ts +135 -72
  45. package/node_modules/@posthog/core/src/posthog-core.ts +3 -1
  46. package/node_modules/@posthog/core/src/types.ts +5 -0
  47. package/node_modules/@zuplo/core/package.json +1 -1
  48. package/node_modules/@zuplo/graphql/package.json +1 -1
  49. package/node_modules/@zuplo/openapi-tools/dist/overlay.d.ts.map +1 -1
  50. package/node_modules/@zuplo/openapi-tools/dist/overlay.js +85 -1
  51. package/node_modules/@zuplo/openapi-tools/dist/overlay.js.map +1 -1
  52. package/node_modules/@zuplo/openapi-tools/dist/overlay.spec.js +82 -0
  53. package/node_modules/@zuplo/openapi-tools/dist/overlay.spec.js.map +1 -1
  54. package/node_modules/@zuplo/openapi-tools/package.json +1 -1
  55. package/node_modules/@zuplo/otel/out/esm/chunk-X7TLQJWO.js +26 -0
  56. package/node_modules/@zuplo/otel/out/esm/chunk-X7TLQJWO.js.map +1 -0
  57. package/node_modules/@zuplo/otel/out/esm/index.js +1 -1
  58. package/node_modules/@zuplo/otel/package.json +1 -1
  59. package/node_modules/@zuplo/runtime/out/esm/chunk-423FXHUV.js +399 -0
  60. package/node_modules/@zuplo/runtime/out/esm/chunk-423FXHUV.js.map +1 -0
  61. package/node_modules/@zuplo/runtime/out/esm/chunk-GBIUQ4JJ.js +30 -0
  62. package/node_modules/@zuplo/runtime/out/esm/chunk-GBIUQ4JJ.js.map +1 -0
  63. package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
  64. package/node_modules/@zuplo/runtime/out/esm/index.js.map +1 -1
  65. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
  66. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js.map +1 -1
  67. package/node_modules/@zuplo/runtime/out/esm/sdks/aws/index.js +26 -0
  68. package/node_modules/@zuplo/runtime/out/esm/sdks/aws/index.js.map +1 -0
  69. package/node_modules/@zuplo/runtime/out/types/index.d.ts +1576 -288
  70. package/node_modules/@zuplo/runtime/out/types/mcp-gateway/index.d.ts +1374 -156
  71. package/node_modules/@zuplo/runtime/out/types/sdks/aws/index.d.ts +2281 -0
  72. package/node_modules/@zuplo/runtime/package.json +5 -1
  73. package/node_modules/hono/dist/adapter/aws-lambda/handler.js +1 -4
  74. package/node_modules/hono/dist/adapter/lambda-edge/handler.js +12 -2
  75. package/node_modules/hono/dist/cjs/adapter/aws-lambda/handler.js +1 -4
  76. package/node_modules/hono/dist/cjs/adapter/lambda-edge/handler.js +12 -2
  77. package/node_modules/hono/dist/cjs/client/client.js +10 -1
  78. package/node_modules/hono/dist/cjs/client/utils.js +1 -1
  79. package/node_modules/hono/dist/cjs/middleware/cache/index.js +1 -1
  80. package/node_modules/hono/dist/cjs/middleware/compress/index.js +2 -1
  81. package/node_modules/hono/dist/cjs/middleware/etag/index.js +2 -1
  82. package/node_modules/hono/dist/cjs/middleware/method-override/index.js +5 -3
  83. package/node_modules/hono/dist/cjs/router/trie-router/node.js +9 -0
  84. package/node_modules/hono/dist/client/client.js +10 -1
  85. package/node_modules/hono/dist/client/utils.js +1 -1
  86. package/node_modules/hono/dist/middleware/cache/index.js +1 -1
  87. package/node_modules/hono/dist/middleware/compress/index.js +2 -1
  88. package/node_modules/hono/dist/middleware/etag/index.js +2 -1
  89. package/node_modules/hono/dist/middleware/method-override/index.js +5 -3
  90. package/node_modules/hono/dist/router/trie-router/node.js +9 -0
  91. package/node_modules/hono/dist/types/adapter/lambda-edge/handler.d.ts +1 -1
  92. package/node_modules/hono/dist/types/helper/websocket/index.d.ts +1 -1
  93. package/node_modules/hono/dist/types/middleware/language/language.d.ts +18 -0
  94. package/node_modules/hono/dist/types/utils/types.d.ts +1 -1
  95. package/node_modules/hono/package.json +4 -4
  96. package/package.json +6 -6
  97. package/node_modules/@fastify/reply-from/types/index.test-d.ts +0 -194
  98. package/node_modules/@zuplo/otel/out/esm/chunk-T25G5RDX.js +0 -26
  99. package/node_modules/@zuplo/otel/out/esm/chunk-T25G5RDX.js.map +0 -1
  100. package/node_modules/@zuplo/runtime/out/esm/chunk-IC7XGD5C.js +0 -403
  101. package/node_modules/@zuplo/runtime/out/esm/chunk-IC7XGD5C.js.map +0 -1
  102. /package/node_modules/@zuplo/runtime/out/esm/{chunk-IC7XGD5C.js.LEGAL.txt → chunk-423FXHUV.js.LEGAL.txt} +0 -0
@@ -125,6 +125,10 @@ export declare function AIGatewayAuthInboundPolicy(
125
125
  * @public
126
126
  */
127
127
  export declare interface AIGatewayAuthInboundPolicyOptions {
128
+ /**
129
+ * The time to cache authentication results for a particular key. Higher values will decrease latency. Cached results will be valid until the cache expires even in the event the key is deleted, etc.
130
+ */
131
+ cacheTtlSeconds?: number;
128
132
  /**
129
133
  * The name of the header with the key.
130
134
  */
@@ -133,10 +137,6 @@ export declare interface AIGatewayAuthInboundPolicyOptions {
133
137
  * The scheme used on the header.
134
138
  */
135
139
  authScheme?: string;
136
- /**
137
- * The time to cache authentication results for a particular key. Higher values will decrease latency. Cached results will be valid until the cache expires even in the event the key is deleted, etc.
138
- */
139
- cacheTtlSeconds?: number;
140
140
  }
141
141
 
142
142
  /**
@@ -383,8 +383,8 @@ export declare function AIGatewaySemanticCacheV2InboundPolicy(
383
383
  export declare interface AIGatewaySemanticCacheV2InboundPolicyOptions {
384
384
  semanticTolerance?: SemanticTolerance;
385
385
  expirationSecondsTtl?: CacheTTLSeconds;
386
- maxConversationLength?: MaxConversationLength;
387
386
  namespace?: CacheNamespace;
387
+ maxConversationLength?: MaxConversationLength;
388
388
  endpoints?: ApplicableEndpoints;
389
389
  onUnknownShape?: OnUnknownShape;
390
390
  }
@@ -1142,6 +1142,10 @@ export declare function ApiKeyInboundPolicy(
1142
1142
  * @public
1143
1143
  */
1144
1144
  export declare interface ApiKeyInboundPolicyOptions {
1145
+ /**
1146
+ * The time to cache authentication results for a particular key. Higher values will decrease latency. Cached results will be valid until the cache expires even in the event the key is deleted, etc.
1147
+ */
1148
+ cacheTtlSeconds?: number;
1145
1149
  /**
1146
1150
  * The name of the header with the key.
1147
1151
  */
@@ -1162,10 +1166,6 @@ export declare interface ApiKeyInboundPolicyOptions {
1162
1166
  * If requests should proceed even if the policy does not successfully authenticate the request. Defaults to false and rejects any request without a valid API key (returning a `401 - Unauthorized` response). Set to `true` to support multiple authentication methods or support both authenticated and anonymous requests.
1163
1167
  */
1164
1168
  allowUnauthenticatedRequests?: boolean;
1165
- /**
1166
- * The time to cache authentication results for a particular key. Higher values will decrease latency. Cached results will be valid until the cache expires even in the event the key is deleted, etc.
1167
- */
1168
- cacheTtlSeconds?: number;
1169
1169
  /**
1170
1170
  * Zuplo will automatically document your API key header within your OpenAPI specification & Developer Portal. Set this to `true` to disable this behavior.
1171
1171
  */
@@ -1577,10 +1577,6 @@ export declare const Auth0JwtInboundPolicy: InboundPolicyHandler<Auth0JwtInbound
1577
1577
  * @public
1578
1578
  */
1579
1579
  export declare interface Auth0JwtInboundPolicyOptions {
1580
- /**
1581
- * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
1582
- */
1583
- allowUnauthenticatedRequests?: boolean;
1584
1580
  /**
1585
1581
  * Your Auth0 domain. For example, `my-company.auth0.com`.
1586
1582
  */
@@ -1589,6 +1585,10 @@ export declare interface Auth0JwtInboundPolicyOptions {
1589
1585
  * The Auth0 audience of your API, for example `https://api.example.com/`.
1590
1586
  */
1591
1587
  audience?: string;
1588
+ /**
1589
+ * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
1590
+ */
1591
+ allowUnauthenticatedRequests?: boolean;
1592
1592
  /**
1593
1593
  * Flag that determines whether OAuth protected resource metadata is enabled.
1594
1594
  */
@@ -1653,10 +1653,6 @@ export declare interface AuthZenInboundPolicyOptions {
1653
1653
  * The hostname of the AuthZen PDP service.
1654
1654
  */
1655
1655
  authorizerHostname: string;
1656
- /**
1657
- * The authorization header to use when communicating with the AuthZen PDP service.
1658
- */
1659
- authorizerAuthorizationHeader?: string;
1660
1656
  /**
1661
1657
  * The subject of the request.
1662
1658
  */
@@ -1695,6 +1691,10 @@ export declare interface AuthZenInboundPolicyOptions {
1695
1691
  name: string;
1696
1692
  [k: string]: unknown;
1697
1693
  };
1694
+ /**
1695
+ * The authorization header to use when communicating with the AuthZen PDP service.
1696
+ */
1697
+ authorizerAuthorizationHeader?: string;
1698
1698
  /**
1699
1699
  * If explicitly set to false, the policy will not throw an error if there is any problem communicating with the AuthZen PDP service and allow calls through. By default throwOnError is assumed to be on/true.
1700
1700
  */
@@ -1992,10 +1992,6 @@ export declare class AxiomaticsAuthZInboundPolicy extends InboundPolicy<Axiomati
1992
1992
  * @public
1993
1993
  */
1994
1994
  export declare interface AxiomaticsAuthZInboundPolicyOptions {
1995
- /**
1996
- * Indicates whether the request should continue if authorization fails. Default is `false` which means unauthorized users will automatically receive a 403 response.
1997
- */
1998
- allowUnauthorizedRequests?: boolean;
1999
1995
  /**
2000
1996
  * The URL to which the plugin will make a JSON POST request before proxying the original request.
2001
1997
  */
@@ -2008,6 +2004,10 @@ export declare interface AxiomaticsAuthZInboundPolicyOptions {
2008
2004
  * The password to use when authenticating with the PDP.
2009
2005
  */
2010
2006
  pdpPassword: string;
2007
+ /**
2008
+ * Indicates whether the request should continue if authorization fails. Default is `false` which means unauthorized users will automatically receive a 403 response.
2009
+ */
2010
+ allowUnauthorizedRequests?: boolean;
2011
2011
  /**
2012
2012
  * Indicates whether the plugin should include default action attributes in the authorization request.
2013
2013
  */
@@ -2261,7 +2261,7 @@ export declare interface BasicAuthInboundPolicyOptions {
2261
2261
  */
2262
2262
  accounts: BasicAuthAccount[];
2263
2263
  /**
2264
- * If 'true' allows the request to continue even if authenticated. When 'false' (the default) any unauthenticated request is automatically rejected with a 401.
2264
+ * If 'true' allows the request to continue even if unauthenticated. When 'false' (the default) any unauthenticated request is automatically rejected with a 401.
2265
2265
  */
2266
2266
  allowUnauthenticatedRequests?: boolean;
2267
2267
  }
@@ -2431,13 +2431,9 @@ export declare function CachingInboundPolicy(
2431
2431
  */
2432
2432
  export declare interface CachingInboundPolicyOptions {
2433
2433
  /**
2434
- * Specifies an id or 'key' for this policy to store cache. This is useful for cache-busting. For example, set this property to an env var and if you change that env var value, you invalidate the cache.
2435
- */
2436
- cacheId?: string;
2437
- /**
2438
- * By default, the Authorization header is always considered in the caching policy. You can disable by setting this to `true`.
2434
+ * The timeout of the cache in seconds.
2439
2435
  */
2440
- dangerouslyIgnoreAuthorizationHeader?: boolean;
2436
+ expirationSecondsTtl?: number;
2441
2437
  /**
2442
2438
  * The headers to be considered when caching.
2443
2439
  */
@@ -2446,14 +2442,18 @@ export declare interface CachingInboundPolicyOptions {
2446
2442
  * HTTP Methods to be cached. Valid methods are: GET, POST, PUT, PATCH, DELETE, HEAD.
2447
2443
  */
2448
2444
  cacheHttpMethods?: ("GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "HEAD")[];
2449
- /**
2450
- * The timeout of the cache in seconds.
2451
- */
2452
- expirationSecondsTtl?: number;
2453
2445
  /**
2454
2446
  * Response status codes to be cached.
2455
2447
  */
2456
2448
  statusCodes?: number[];
2449
+ /**
2450
+ * Specifies an id or 'key' for this policy to store cache. This is useful for cache-busting. For example, set this property to an env var and if you change that env var value, you invalidate the cache.
2451
+ */
2452
+ cacheId?: string;
2453
+ /**
2454
+ * By default, the Authorization header is always considered in the caching policy. You can disable by setting this to `true`.
2455
+ */
2456
+ dangerouslyIgnoreAuthorizationHeader?: boolean;
2457
2457
  }
2458
2458
 
2459
2459
  /**
@@ -2738,13 +2738,13 @@ export declare const ClerkJwtInboundPolicy: InboundPolicyHandler<ClerkJwtInbound
2738
2738
  */
2739
2739
  export declare interface ClerkJwtInboundPolicyOptions {
2740
2740
  /**
2741
- * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
2741
+ * 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.
2742
2742
  */
2743
- allowUnauthenticatedRequests?: boolean;
2743
+ frontendApiUrl: string;
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
+ * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
2746
2746
  */
2747
- frontendApiUrl: string;
2747
+ allowUnauthenticatedRequests?: boolean;
2748
2748
  /**
2749
2749
  * Flag that determines whether OAuth protected resource metadata is enabled.
2750
2750
  */
@@ -2810,10 +2810,6 @@ export declare const CognitoJwtInboundPolicy: InboundPolicyHandler<CognitoJwtInb
2810
2810
  * @public
2811
2811
  */
2812
2812
  export declare interface CognitoJwtInboundPolicyOptions {
2813
- /**
2814
- * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
2815
- */
2816
- allowUnauthenticatedRequests?: boolean;
2817
2813
  /**
2818
2814
  * The AWS region where your Cognito instance is deployed.
2819
2815
  */
@@ -2822,6 +2818,10 @@ export declare interface CognitoJwtInboundPolicyOptions {
2822
2818
  * The user pool identifier.
2823
2819
  */
2824
2820
  userPoolId: string;
2821
+ /**
2822
+ * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
2823
+ */
2824
+ allowUnauthenticatedRequests?: boolean;
2825
2825
  /**
2826
2826
  * Flag that determines whether OAuth protected resource metadata is enabled.
2827
2827
  */
@@ -3677,10 +3677,6 @@ export declare interface DataLossPreventionInboundPolicyOptions {
3677
3677
  | "secret-twilio"
3678
3678
  | "secret-zuplo"
3679
3679
  )[];
3680
- /**
3681
- * Additional customer-defined regex recognizers. Invalid patterns are logged and skipped rather than failing the request.
3682
- */
3683
- customPatterns?: DlpCustomPattern[];
3684
3680
  /**
3685
3681
  * What to do when sensitive data is detected. `mask` redacts matches before forwarding the request, `block` rejects with a 422 listing only the detected entity names, and `log` records a warning and forwards the request unchanged.
3686
3682
  */
@@ -3689,6 +3685,10 @@ export declare interface DataLossPreventionInboundPolicyOptions {
3689
3685
  * The string that replaces detected values when `action` is `mask`.
3690
3686
  */
3691
3687
  mask?: string;
3688
+ /**
3689
+ * Additional customer-defined regex recognizers. Invalid patterns are logged and skipped rather than failing the request.
3690
+ */
3691
+ customPatterns?: DlpCustomPattern[];
3692
3692
  /**
3693
3693
  * Minimum confidence (0-1) a match must reach to count as a finding. Context-dependent recognizers (for example `finance-us-bank-account` or `finance-us-aba-routing`) sit below the default threshold of 0.5 until a context word near the match boosts them above it. Lower the threshold to surface them everywhere; raise it to keep only prefix- or checksum-validated matches.
3694
3694
  */
@@ -3820,10 +3820,6 @@ export declare interface DataLossPreventionOutboundPolicyOptions {
3820
3820
  | "secret-twilio"
3821
3821
  | "secret-zuplo"
3822
3822
  )[];
3823
- /**
3824
- * Additional customer-defined regex recognizers. Invalid patterns are logged and skipped rather than failing the response.
3825
- */
3826
- customPatterns?: DlpCustomPattern_2[];
3827
3823
  /**
3828
3824
  * What to do when sensitive data is detected. `mask` redacts matches before returning the response, `block` replaces the response with a 422 listing only the detected entity names, and `log` records a warning and returns the response unchanged.
3829
3825
  */
@@ -3832,6 +3828,10 @@ export declare interface DataLossPreventionOutboundPolicyOptions {
3832
3828
  * The string that replaces detected values when `action` is `mask`.
3833
3829
  */
3834
3830
  mask?: string;
3831
+ /**
3832
+ * Additional customer-defined regex recognizers. Invalid patterns are logged and skipped rather than failing the response.
3833
+ */
3834
+ customPatterns?: DlpCustomPattern_2[];
3835
3835
  /**
3836
3836
  * Minimum confidence (0-1) a match must reach to count as a finding. Context-dependent recognizers (for example `finance-us-bank-account` or `finance-us-aba-routing`) sit below the default threshold of 0.5 until a context word near the match boosts them above it. Lower the threshold to surface them everywhere; raise it to keep only prefix- or checksum-validated matches.
3837
3837
  */
@@ -4111,14 +4111,14 @@ export declare const FirebaseJwtInboundPolicy: InboundPolicyHandler<FirebaseJwtI
4111
4111
  * @public
4112
4112
  */
4113
4113
  export declare interface FirebaseJwtInboundPolicyOptions {
4114
- /**
4115
- * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
4116
- */
4117
- allowUnauthenticatedRequests?: boolean;
4118
4114
  /**
4119
4115
  * Your Firebase Project ID.
4120
4116
  */
4121
4117
  projectId: string;
4118
+ /**
4119
+ * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
4120
+ */
4121
+ allowUnauthenticatedRequests?: boolean;
4122
4122
  /**
4123
4123
  * Flag that determines whether OAuth protected resource metadata is enabled.
4124
4124
  */
@@ -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,27 +7534,66 @@ export declare interface McpCognitoOAuthInboundPolicyOptions {
7377
7534
  };
7378
7535
  }
7379
7536
 
7380
- /**
7381
- * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
7382
- * with browser login delegated to Microsoft Entra ID.
7383
- *
7384
- * Entra-friendly wrapper around `McpOAuthInboundPolicy`. Provide a tenant UUID,
7385
- * application client id, and client secret; the constructor derives the Entra
7386
- * v2 issuer, JWKS URL, authorize URL, and token URL.
7387
- *
7388
- * @title MCP Microsoft Entra OAuth
7389
- * @public
7390
- * @product mcp-gateway
7391
- */
7392
- export declare class McpEntraOAuthInboundPolicy extends InboundPolicy<McpEntraOAuthInboundPolicyOptions> {
7393
- #private;
7394
- static readonly policyType = "mcp-entra-oauth";
7395
- constructor(rawOptions: unknown, policyName: string);
7396
- handler(
7397
- request: ZuploRequest,
7398
- context: ZuploContext
7399
- ): Promise<ZuploRequest | Response>;
7400
- }
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
+
7576
+ /**
7577
+ * Authenticate MCP gateway requests using a gateway-issued OAuth access token,
7578
+ * with browser login delegated to Microsoft Entra ID.
7579
+ *
7580
+ * Entra-friendly wrapper around `McpOAuthInboundPolicy`. Provide a tenant UUID,
7581
+ * application client id, and client secret; the constructor derives the Entra
7582
+ * v2 issuer, JWKS URL, authorize URL, and token URL.
7583
+ *
7584
+ * @title MCP Microsoft Entra OAuth
7585
+ * @public
7586
+ * @product mcp-gateway
7587
+ */
7588
+ export declare class McpEntraOAuthInboundPolicy extends InboundPolicy<ValidatedEntraOAuthOptions> {
7589
+ #private;
7590
+ static readonly policyType = "mcp-entra-oauth";
7591
+ constructor(rawOptions: unknown, policyName: string);
7592
+ handler(
7593
+ request: ZuploRequest,
7594
+ context: ZuploContext
7595
+ ): Promise<ZuploRequest | Response>;
7596
+ }
7401
7597
 
7402
7598
  /**
7403
7599
  * The options for this policy.
@@ -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
  */
@@ -7857,106 +8453,196 @@ declare type McpOAuthRuntimeConfig = z.infer<
7857
8453
  typeof mcpOAuthRuntimeConfigSchema
7858
8454
  >;
7859
8455
 
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<
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
7954
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
+ }
7955
8509
  >
7956
- >
7957
- >;
7958
- },
7959
- z.core.$strict
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
+ >
8554
+ >
8555
+ >
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
  }
@@ -8656,6 +9747,16 @@ export declare class MonetizationInboundPolicy extends InboundPolicy<Monetizatio
8656
9747
  * @public
8657
9748
  */
8658
9749
  export declare interface MonetizationInboundPolicyOptions {
9750
+ /**
9751
+ * The meters to be used by the policy against the subscription quota.
9752
+ */
9753
+ meters?: {
9754
+ [k: string]: number;
9755
+ };
9756
+ /**
9757
+ * A list of entitlement keys that the subscription must have access to (hasAccess=true) for the request to be allowed. If any required entitlement is missing or does not have access, the request will be rejected with a 403 Forbidden.
9758
+ */
9759
+ requiredEntitlements?: string[];
8659
9760
  /**
8660
9761
  * The name of the header with the key.
8661
9762
  */
@@ -8668,24 +9769,10 @@ export declare interface MonetizationInboundPolicyOptions {
8668
9769
  * The time to cache authentication results for a particular key. Higher values will decrease latency. Cached results will be valid until the cache expires even in the event the key is deleted, etc.
8669
9770
  */
8670
9771
  cacheTtlSeconds?: number;
8671
- /**
8672
- * The meters to be used by the policy against the subscription quota.
8673
- */
8674
- meters?: {
8675
- /**
8676
- * This interface was referenced by `undefined`'s JSON-Schema definition
8677
- * via the `patternProperty` "^.*$".
8678
- */
8679
- [k: string]: number;
8680
- };
8681
9772
  /**
8682
9773
  * A list of successful status codes and ranges "200-299, 304" that should trigger a metering call.
8683
9774
  */
8684
9775
  meterOnStatusCodes?: string | number[];
8685
- /**
8686
- * A list of entitlement keys that the subscription must have access to (hasAccess=true) for the request to be allowed. If any required entitlement is missing or does not have access, the request will be rejected with a 403 Forbidden.
8687
- */
8688
- requiredEntitlements?: string[];
8689
9776
  }
8690
9777
 
8691
9778
  /**
@@ -8780,14 +9867,14 @@ export declare type MTLSAuthInboundPolicyOptions = (
8780
9867
  [k: string]: unknown;
8781
9868
  }
8782
9869
  ) & {
8783
- /**
8784
- * Allows requests to continue even when mTLS verification fails, no client certificate is presented, or the certificate metadata cannot be parsed. Defaults to false.
8785
- */
8786
- allowUnauthenticatedRequests?: boolean;
8787
9870
  /**
8788
9871
  * Fully qualified issuer distinguished name to require on the client certificate. The policy rejects certificates whose parsed issuer DN does not match this string exactly. Required unless `allowUnauthenticatedRequests` is `true`. The expected format matches the parsed metadata issuer, e.g. "CN=example-ca, O=Example, C=US".
8789
9872
  */
8790
9873
  certIssuerDN?: string;
9874
+ /**
9875
+ * Allows requests to continue even when mTLS verification fails, no client certificate is presented, or the certificate metadata cannot be parsed. Defaults to false.
9876
+ */
9877
+ allowUnauthenticatedRequests?: boolean;
8791
9878
  };
8792
9879
 
8793
9880
  /**
@@ -8976,10 +10063,6 @@ export declare interface OktaFGAAuthZInboundPolicyOptions {
8976
10063
  * The ID of the authorization model.
8977
10064
  */
8978
10065
  authorizationModelId: string;
8979
- /**
8980
- * Indicates whether the request should continue if authorization fails. Default is `false` which means unauthorized users will automatically receive a 403 response.
8981
- */
8982
- allowUnauthorizedRequests?: boolean;
8983
10066
  credentials: {
8984
10067
  /**
8985
10068
  * The client ID.
@@ -8991,6 +10074,10 @@ export declare interface OktaFGAAuthZInboundPolicyOptions {
8991
10074
  clientSecret: string;
8992
10075
  [k: string]: unknown;
8993
10076
  };
10077
+ /**
10078
+ * Indicates whether the request should continue if authorization fails. Default is `false` which means unauthorized users will automatically receive a 403 response.
10079
+ */
10080
+ allowUnauthorizedRequests?: boolean;
8994
10081
  }
8995
10082
 
8996
10083
  /**
@@ -9010,12 +10097,8 @@ export declare const OktaJwtInboundPolicy: InboundPolicyHandler<OktaJwtInboundPo
9010
10097
  /**
9011
10098
  * The options for this policy.
9012
10099
  * @public
9013
- */
9014
- export declare interface OktaJwtInboundPolicyOptions {
9015
- /**
9016
- * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
9017
- */
9018
- allowUnauthenticatedRequests?: boolean;
10100
+ */
10101
+ export declare interface OktaJwtInboundPolicyOptions {
9019
10102
  /**
9020
10103
  * Your Okta authorization server's issuer URL. For example, `https://dev-12345.okta.com/oauth2/abc`.
9021
10104
  */
@@ -9024,6 +10107,10 @@ export declare interface OktaJwtInboundPolicyOptions {
9024
10107
  * The Okta audience of your API, for example `api://my-api`.
9025
10108
  */
9026
10109
  audience?: string;
10110
+ /**
10111
+ * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
10112
+ */
10113
+ allowUnauthenticatedRequests?: boolean;
9027
10114
  /**
9028
10115
  * Flag that determines whether OAuth protected resource metadata is enabled.
9029
10116
  */
@@ -9715,15 +10802,15 @@ export declare interface OpenFGAAuthZInboundPolicyOptions {
9715
10802
  * The ID of the authorization model.
9716
10803
  */
9717
10804
  authorizationModelId: string;
9718
- /**
9719
- * Indicates whether the request should continue if authorization fails. Default is `false` which means unauthorized users will automatically receive a 403 response.
9720
- */
9721
- allowUnauthorizedRequests?: boolean;
9722
10805
  credentials:
9723
10806
  | UnauthenticatedCredentialConfig
9724
10807
  | APITokenCredentialConfig
9725
10808
  | HeaderCredentialsConfig
9726
10809
  | ClientCredentialsConfig;
10810
+ /**
10811
+ * Indicates whether the request should continue if authorization fails. Default is `false` which means unauthorized users will automatically receive a 403 response.
10812
+ */
10813
+ allowUnauthorizedRequests?: boolean;
9727
10814
  }
9728
10815
 
9729
10816
  declare interface OpenFGACheck {
@@ -9773,10 +10860,6 @@ declare interface OpenIdJwtInboundPolicyInternalOptions extends Omit<
9773
10860
  * @public
9774
10861
  */
9775
10862
  export declare interface OpenIdJwtInboundPolicyOptions {
9776
- /**
9777
- * The name of the header with the key.
9778
- */
9779
- authHeader?: string;
9780
10863
  /**
9781
10864
  * The expected issuer claim in the JWT token.
9782
10865
  */
@@ -9793,6 +10876,10 @@ export declare interface OpenIdJwtInboundPolicyOptions {
9793
10876
  * The key used to verify the signature of the JWT token (either this or `jwkUrl` must be set).
9794
10877
  */
9795
10878
  secret?: string;
10879
+ /**
10880
+ * The name of the header with the key.
10881
+ */
10882
+ authHeader?: string;
9796
10883
  /**
9797
10884
  * indicates whether the request should continue if authentication fails. Defaults is `false` which means unauthenticated users will automatically receive a 401 response.
9798
10885
  */
@@ -9901,10 +10988,6 @@ export declare class OpenMeterInboundPolicy extends InboundPolicy<OpenMeterInbou
9901
10988
  * @public
9902
10989
  */
9903
10990
  export declare interface OpenMeterInboundPolicyOptions {
9904
- /**
9905
- * The URL of the OpenMeter API endpoint.
9906
- */
9907
- apiUrl?: string;
9908
10991
  /**
9909
10992
  * The API key to use when sending metering calls to OpenMeter.
9910
10993
  */
@@ -9913,6 +10996,14 @@ export declare interface OpenMeterInboundPolicyOptions {
9913
10996
  * A single meter configuration or an array of meter configurations for OpenMeter.
9914
10997
  */
9915
10998
  meter?: Meter | Meter[];
10999
+ /**
11000
+ * A list of entitlements (feature keys) required in order for the call to be allowed.
11001
+ */
11002
+ requiredEntitlements?: string[];
11003
+ /**
11004
+ * The URL of the OpenMeter API endpoint.
11005
+ */
11006
+ apiUrl?: string;
9916
11007
  /**
9917
11008
  * A list of successful status codes and ranges "200-299, 304" that should trigger a metering event.
9918
11009
  */
@@ -9921,10 +11012,6 @@ export declare interface OpenMeterInboundPolicyOptions {
9921
11012
  * The event's source (e.g. the service name).
9922
11013
  */
9923
11014
  eventSource?: string;
9924
- /**
9925
- * A list of entitlements (feature keys) required in order for the call to be allowed.
9926
- */
9927
- requiredEntitlements?: string[];
9928
11015
  /**
9929
11016
  * The path to the property on `request.user` that contains the subject used for meters and entitlements. For example `.data.accountId` would read the `request.user.data.accountId` property.
9930
11017
  */
@@ -10350,14 +11437,14 @@ export declare interface PromptInjectionDetectionOutboundPolicyOptions {
10350
11437
  * Model to use for classification.
10351
11438
  */
10352
11439
  model?: string;
10353
- /**
10354
- * Base URL for the OpenAI compatible API.
10355
- */
10356
- baseUrl?: string;
10357
11440
  /**
10358
11441
  * Whether to block traffic if the classifier fails. When disabled, allows traffic flow if the classifier or inference API is unavailable.
10359
11442
  */
10360
11443
  strict?: boolean;
11444
+ /**
11445
+ * Base URL for the OpenAI compatible API.
11446
+ */
11447
+ baseUrl?: string;
10361
11448
  }
10362
11449
 
10363
11450
  /**
@@ -10380,17 +11467,17 @@ export declare const PropelAuthJwtInboundPolicy: InboundPolicyHandler<PropelAuth
10380
11467
  */
10381
11468
  export declare interface PropelAuthJwtInboundPolicyOptions {
10382
11469
  /**
10383
- * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
10384
- */
10385
- allowUnauthenticatedRequests?: boolean;
10386
- /**
10387
- * Your PropelAuth authUrl. For example, `https://6587563.propelauthtest.com`.
11470
+ * Your PropelAuth authUrl. For example, `https://12345678.propelauthtest.com`.
10388
11471
  */
10389
11472
  authUrl: string;
10390
11473
  /**
10391
11474
  * Your public (verifier) key that is used to verify access tokens. This key has a value that begins with '-----BEGIN PUBLIC KEY-----'. Make sure to remove all line breaks from the key before saving the variable.
10392
11475
  */
10393
11476
  verifierKey: string;
11477
+ /**
11478
+ * Allow unauthenticated requests to proceed. This is use useful if you want to use multiple authentication policies or if you want to allow both authenticated and non-authenticated traffic.
11479
+ */
11480
+ allowUnauthenticatedRequests?: boolean;
10394
11481
  /**
10395
11482
  * Flag that determines whether OAuth protected resource metadata is enabled.
10396
11483
  */
@@ -10486,16 +11573,16 @@ export declare interface QuotaInboundPolicyOptions {
10486
11573
  * The quota by.
10487
11574
  */
10488
11575
  quotaBy: "user" | "function";
10489
- /**
10490
- * How the policy determines the anchor date for ongoing quota cycles - defaults to `first-api-call` which uses the first API call for this key.
10491
- */
10492
- quotaAnchorMode?: "first-api-call" | "function";
10493
11576
  /**
10494
11577
  * The allowances for the quota.
10495
11578
  */
10496
11579
  allowances?: {
10497
11580
  [k: string]: number;
10498
11581
  };
11582
+ /**
11583
+ * How the policy determines the anchor date for ongoing quota cycles - defaults to `first-api-call` which uses the first API call for this key.
11584
+ */
11585
+ quotaAnchorMode?: "first-api-call" | "function";
10499
11586
  /**
10500
11587
  * A list of successful status codes and ranges "200-299, 304" that should trigger a quota increment.
10501
11588
  */
@@ -10720,14 +11807,14 @@ declare interface ReadmeMeteringInboundPolicyOptions {
10720
11807
  * The API key to use when sending metrics calls to Readme.
10721
11808
  */
10722
11809
  apiKey: string;
10723
- /**
10724
- * This is the path to the property on `request.user` that contains the label you want to use. For example `.data.accountNumber` would read the `request.user.data.accountNumber` property.
10725
- */
10726
- userLabelPropertyPath?: string;
10727
11810
  /**
10728
11811
  * This is the path to the property on `request.user` that contains the e-mail of the user. For example `.data.email` would read the `request.user.data.email` property.
10729
11812
  */
10730
11813
  userEmailPropertyPath?: string;
11814
+ /**
11815
+ * This is the path to the property on `request.user` that contains the label you want to use. For example `.data.accountNumber` would read the `request.user.data.accountNumber` property.
11816
+ */
11817
+ userLabelPropertyPath?: string;
10731
11818
  /**
10732
11819
  * Whether the data should be ingested as 'development' mode or not. Defaults to true for working-copy and false for all other environments.
10733
11820
  */
@@ -11190,14 +12277,14 @@ export declare const RequestValidationInboundPolicy: InboundPolicyHandler<Reques
11190
12277
  * @public
11191
12278
  */
11192
12279
  export declare interface RequestValidationInboundPolicyOptions {
11193
- /**
11194
- * The log level to use when logging validation errors.
11195
- */
11196
- logLevel?: "error" | "warn" | "info" | "debug";
11197
12280
  validateBody?: ValidationOptions;
11198
12281
  validateQueryParameters?: ValidationOptions1;
11199
12282
  validatePathParameters?: ValidationOptions2;
11200
12283
  validateHeaders?: ValidationOptions3;
12284
+ /**
12285
+ * The log level to use when logging validation errors.
12286
+ */
12287
+ logLevel?: "error" | "warn" | "info" | "debug";
11201
12288
  /**
11202
12289
  * Whether to include the request in the logs.
11203
12290
  */
@@ -12411,6 +13498,10 @@ export declare type SemanticCacheInboundPolicyOptions = {
12411
13498
  * Determines how the cache key is generated. Use 'function' for custom logic or 'propertyPath' to extract from JSON body.
12412
13499
  */
12413
13500
  cacheBy: "function" | "propertyPath";
13501
+ /**
13502
+ * The path to the property in the request body (JSON) to use as cache key. For example '.userId' would read the 'userId' property from the request body. Only works with cacheBy=propertyPath.
13503
+ */
13504
+ cacheByPropertyPath?: string;
12414
13505
  /**
12415
13506
  * The function that returns dynamic cache key data. Used only with `cacheBy=function`.
12416
13507
  */
@@ -12424,10 +13515,6 @@ export declare type SemanticCacheInboundPolicyOptions = {
12424
13515
  */
12425
13516
  module: string;
12426
13517
  };
12427
- /**
12428
- * The path to the property in the request body (JSON) to use as cache key. For example '.userId' would read the 'userId' property from the request body. Only works with cacheBy=propertyPath.
12429
- */
12430
- cacheByPropertyPath?: string;
12431
13518
  /**
12432
13519
  * Response status codes to be cached.
12433
13520
  */
@@ -12662,14 +13749,14 @@ export declare const SetUpstreamApiKeyInboundPolicy: InboundPolicyHandler<SetUps
12662
13749
  * @public
12663
13750
  */
12664
13751
  export declare interface SetUpstreamApiKeyInboundPolicyOptions {
12665
- /**
12666
- * The name of the header to set on the request. Defaults to `Authorization`.
12667
- */
12668
- header?: string;
12669
13752
  /**
12670
13753
  * The value of the header. Most commonly an environment variable reference such as `Bearer $env(UPSTREAM_API_KEY)` so the secret is sourced from your environment.
12671
13754
  */
12672
13755
  value: string;
13756
+ /**
13757
+ * The name of the header to set on the request. Defaults to `Authorization`.
13758
+ */
13759
+ header?: string;
12673
13760
  /**
12674
13761
  * Overwrite the value if the header is already present in the request.
12675
13762
  */
@@ -12911,7 +13998,7 @@ export declare interface StripeWebhookVerificationInboundPolicyOptions {
12911
13998
  */
12912
13999
  signingSecret: string;
12913
14000
  /**
12914
- * The allowed clock skew in seconds between the time the webhook signature was crated and the current time.
14001
+ * The allowed clock skew in seconds between the time the webhook signature was created and the current time.
12915
14002
  */
12916
14003
  tolerance?: number;
12917
14004
  }
@@ -12960,16 +14047,16 @@ export declare interface SupabaseJwtInboundPolicyOptions {
12960
14047
  * The key used to verify the signature of the JWT token.
12961
14048
  */
12962
14049
  secret: string;
12963
- /**
12964
- * Indicates whether the request should continue if authentication fails. Default is `false` which means unauthenticated users will automatically receive a 401 response.
12965
- */
12966
- allowUnauthenticatedRequests?: boolean;
12967
14050
  /**
12968
14051
  * Any claims that must be present for authentication to succeed - multiple valid values can be specified for each claim.
12969
14052
  */
12970
14053
  requiredClaims?: {
12971
14054
  [k: string]: string[];
12972
14055
  };
14056
+ /**
14057
+ * Indicates whether the request should continue if authentication fails. Default is `false` which means unauthenticated users will automatically receive a 401 response.
14058
+ */
14059
+ allowUnauthenticatedRequests?: boolean;
12973
14060
  /**
12974
14061
  * Flag that determines whether OAuth protected resource metadata is enabled.
12975
14062
  */
@@ -13114,6 +14201,157 @@ declare interface UnauthenticatedCredentialConfig {
13114
14201
  method: "none";
13115
14202
  }
13116
14203
 
14204
+ /**
14205
+ * Resolves AWS credentials with STS AssumeRoleWithWebIdentity using Zuplo's
14206
+ * ambient OIDC identity — no AWS keys are stored anywhere. The role's trust
14207
+ * policy must trust the Zuplo OIDC identity provider. Resolved credentials are
14208
+ * registered on the request context for the AWS Lambda handler and custom code
14209
+ * to sign upstream requests with {@link AwsClient.fromContext}. This policy does
14210
+ * not itself sign or forward the request.
14211
+ *
14212
+ * @title Upstream AWS Federated Auth
14213
+ * @product api-gateway
14214
+ * @beta
14215
+ * @enterprise
14216
+ * @param request - The ZuploRequest
14217
+ * @param context - The ZuploContext
14218
+ * @param options - The policy options set in policies.json
14219
+ * @param policyName - The name of the policy as set in policies.json
14220
+ * @returns A Request or a Response
14221
+ */
14222
+ export declare class UpstreamAwsFederatedAuthInboundPolicy extends InboundPolicy<UpstreamAwsFederatedAuthInboundPolicyOptions> {
14223
+ #private;
14224
+ static readonly policyType = "upstream-aws-federated-auth";
14225
+ constructor(
14226
+ options: UpstreamAwsFederatedAuthInboundPolicyOptions,
14227
+ policyName: string
14228
+ );
14229
+ handler(
14230
+ request: ZuploRequest,
14231
+ context: ZuploContext
14232
+ ): Promise<ZuploRequest | Response>;
14233
+ }
14234
+
14235
+ /**
14236
+ * The options for this policy.
14237
+ * @public
14238
+ */
14239
+ export declare interface UpstreamAwsFederatedAuthInboundPolicyOptions {
14240
+ /**
14241
+ * The IAM role to assume with STS AssumeRoleWithWebIdentity. The role's trust policy must trust the Zuplo OIDC identity provider.
14242
+ */
14243
+ roleArn: string;
14244
+ /**
14245
+ * The AWS region used for the STS endpoint and as the default signing region for consumers of the resolved credentials.
14246
+ */
14247
+ region: string;
14248
+ /**
14249
+ * The audience ('aud' claim) of the Zuplo-issued OIDC token. Must match a client ID configured on the IAM OIDC identity provider.
14250
+ */
14251
+ audience?: string;
14252
+ /**
14253
+ * The STS role session name recorded in AWS CloudTrail. Must match the pattern [\w+=,.@-]{2,64}.
14254
+ */
14255
+ roleSessionName?: string;
14256
+ /**
14257
+ * 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.
14258
+ */
14259
+ durationSeconds?: number;
14260
+ /**
14261
+ * Overrides the STS endpoint URL. Only needed for non-standard partitions such as AWS GovCloud or AWS China.
14262
+ */
14263
+ stsEndpoint?: string;
14264
+ /**
14265
+ * The number of times to retry fetching temporary credentials in the event of a failure.
14266
+ */
14267
+ tokenRetries?: number;
14268
+ /**
14269
+ * The number of seconds before credential expiration at which cached credentials are discarded and refreshed.
14270
+ */
14271
+ expirationOffsetSeconds?: number;
14272
+ }
14273
+
14274
+ /**
14275
+ * Resolves AWS credentials from static access keys (optionally exchanged for an
14276
+ * IAM role's temporary credentials via STS AssumeRole) and registers them on
14277
+ * the request context. The AWS Lambda handler and custom code read them with
14278
+ * {@link AwsClient.fromContext} to sign upstream requests. This policy does not
14279
+ * itself sign or forward the request.
14280
+ *
14281
+ * @title Upstream AWS Service Auth
14282
+ * @product api-gateway
14283
+ * @beta
14284
+ * @enterprise
14285
+ * @param request - The ZuploRequest
14286
+ * @param context - The ZuploContext
14287
+ * @param options - The policy options set in policies.json
14288
+ * @param policyName - The name of the policy as set in policies.json
14289
+ * @returns A Request or a Response
14290
+ */
14291
+ export declare class UpstreamAwsServiceAuthInboundPolicy extends InboundPolicy<UpstreamAwsServiceAuthInboundPolicyOptions> {
14292
+ #private;
14293
+ static readonly policyType = "upstream-aws-service-auth";
14294
+ constructor(
14295
+ options: UpstreamAwsServiceAuthInboundPolicyOptions,
14296
+ policyName: string
14297
+ );
14298
+ handler(
14299
+ request: ZuploRequest,
14300
+ context: ZuploContext
14301
+ ): Promise<ZuploRequest | Response>;
14302
+ }
14303
+
14304
+ /**
14305
+ * The options for this policy.
14306
+ * @public
14307
+ */
14308
+ export declare interface UpstreamAwsServiceAuthInboundPolicyOptions {
14309
+ /**
14310
+ * The AWS access key ID. Store the value in an environment variable rather than in source.
14311
+ */
14312
+ accessKeyId: string;
14313
+ /**
14314
+ * The AWS secret access key. Always store this in an environment variable.
14315
+ */
14316
+ secretAccessKey: string;
14317
+ /**
14318
+ * The AWS region. Used for the STS endpoint when 'roleArn' is set, and as the default signing region for consumers of the resolved credentials.
14319
+ */
14320
+ region: string;
14321
+ /**
14322
+ * The AWS session token, required only when the configured access key pair is itself a temporary credential.
14323
+ */
14324
+ sessionToken?: string;
14325
+ /**
14326
+ * 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.
14327
+ */
14328
+ roleArn?: string;
14329
+ /**
14330
+ * The external ID to pass to STS AssumeRole when the role's trust policy requires one.
14331
+ */
14332
+ externalId?: string;
14333
+ /**
14334
+ * The STS role session name recorded in AWS CloudTrail. Must match the pattern [\w+=,.@-]{2,64}.
14335
+ */
14336
+ roleSessionName?: string;
14337
+ /**
14338
+ * 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.
14339
+ */
14340
+ durationSeconds?: number;
14341
+ /**
14342
+ * Overrides the STS endpoint URL. Only needed for non-standard partitions such as AWS GovCloud or AWS China.
14343
+ */
14344
+ stsEndpoint?: string;
14345
+ /**
14346
+ * The number of times to retry fetching temporary credentials in the event of a failure.
14347
+ */
14348
+ tokenRetries?: number;
14349
+ /**
14350
+ * The number of seconds before credential expiration at which cached credentials are discarded and refreshed.
14351
+ */
14352
+ expirationOffsetSeconds?: number;
14353
+ }
14354
+
13117
14355
  /**
13118
14356
  * Uses Azure Active Directory to add an Authorization header to the request
13119
14357
  * in order to authenticate requests using Azure identity.
@@ -13148,7 +14386,7 @@ export declare interface UpstreamAzureAdServiceAuthInboundPolicyOptions {
13148
14386
  */
13149
14387
  activeDirectoryClientSecret: string;
13150
14388
  /**
13151
- * The number of times to retry fetching the token in the event of a failure..
14389
+ * The number of times to retry fetching the token in the event of a failure.
13152
14390
  */
13153
14391
  tokenRetries?: number;
13154
14392
  /**
@@ -13223,15 +14461,15 @@ export declare interface UpstreamFirebaseUserAuthInboundPolicyOptions {
13223
14461
  * The property on the incoming request.user object to retrieve the value of the userId.
13224
14462
  */
13225
14463
  userIdPropertyPath?: string;
13226
- /**
13227
- * Additional claims to include in the custom token's payload.
13228
- */
13229
- developerClaims?: Record<string, string | number | boolean | null>;
13230
14464
  /**
13231
14465
  * The Firebase Web API Key (found in project settings)
13232
14466
  * @see {@link https://firebase.google.com/docs/projects/api-keys|Firebase API Keys}.
13233
14467
  */
13234
14468
  webApiKey: string;
14469
+ /**
14470
+ * Additional claims to include in the custom token's payload.
14471
+ */
14472
+ developerClaims?: Record<string, string | number | boolean | null>;
13235
14473
  /**
13236
14474
  * The number of times to retry fetching the token in the event of a failure.
13237
14475
  */
@@ -13365,7 +14603,7 @@ export declare const UpstreamGcpServiceAuthInboundPolicy: InboundPolicyHandler<U
13365
14603
  */
13366
14604
  export declare interface UpstreamGcpServiceAuthInboundPolicyOptions {
13367
14605
  /**
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.
14606
+ * 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
14607
  */
13370
14608
  audience?: string;
13371
14609
  /**
@@ -13441,6 +14679,20 @@ export declare interface UpstreamZuploJwtAuthInboundPolicyOptions {
13441
14679
  * The audience claim for the JWT.
13442
14680
  */
13443
14681
  audience?: string;
14682
+ /**
14683
+ * JWT expiration time. Can be a number (seconds) or a string with units (e.g., '5m' for 5 minutes, '1h' for 1 hour, '7d' for 7 days). Defaults to 300 seconds (5 minutes).
14684
+ */
14685
+ expiresIn?: number | 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
  */
@@ -13455,10 +14707,6 @@ export declare interface UpstreamZuploJwtAuthInboundPolicyOptions {
13455
14707
  additionalClaims?: {
13456
14708
  [k: string]: unknown;
13457
14709
  };
13458
- /**
13459
- * JWT expiration time. Can be a number (seconds) or a string with units (e.g., '5m' for 5 minutes, '1h' for 1 hour, '7d' for 7 days). Defaults to 300 seconds (5 minutes).
13460
- */
13461
- expiresIn?: number | string;
13462
14710
  }
13463
14711
 
13464
14712
  declare interface UrlConfig {
@@ -13621,8 +14869,48 @@ declare type ValidatedAuth0OAuthOptions = z.infer<
13621
14869
  typeof mcpAuth0OAuthOptionsSchema
13622
14870
  >;
13623
14871
 
14872
+ declare type ValidatedClerkOAuthOptions = z.infer<
14873
+ typeof mcpClerkOAuthOptionsSchema
14874
+ >;
14875
+
14876
+ declare type ValidatedCognitoOAuthOptions = z.infer<
14877
+ typeof mcpCognitoOAuthOptionsSchema
14878
+ >;
14879
+
14880
+ declare type ValidatedEntraOAuthOptions = z.infer<
14881
+ typeof mcpEntraOAuthOptionsSchema
14882
+ >;
14883
+
14884
+ declare type ValidatedGoogleOAuthOptions = z.infer<
14885
+ typeof mcpGoogleOAuthOptionsSchema
14886
+ >;
14887
+
14888
+ declare type ValidatedKeycloakOAuthOptions = z.infer<
14889
+ typeof mcpKeycloakOAuthOptionsSchema
14890
+ >;
14891
+
14892
+ declare type ValidatedLogtoOAuthOptions = z.infer<
14893
+ typeof mcpLogtoOAuthOptionsSchema
14894
+ >;
14895
+
14896
+ declare type ValidatedOktaOAuthOptions = z.infer<
14897
+ typeof mcpOktaOAuthOptionsSchema
14898
+ >;
14899
+
14900
+ declare type ValidatedOneLoginOAuthOptions = z.infer<
14901
+ typeof mcpOneLoginOAuthOptionsSchema
14902
+ >;
14903
+
13624
14904
  declare type ValidatedOptions = z.infer<typeof requireUserClaimsOptionsSchema>;
13625
14905
 
14906
+ declare type ValidatedPingOAuthOptions = z.infer<
14907
+ typeof mcpPingOAuthOptionsSchema
14908
+ >;
14909
+
14910
+ declare type ValidatedWorkosOAuthOptions = z.infer<
14911
+ typeof mcpWorkosOAuthOptionsSchema
14912
+ >;
14913
+
13626
14914
  /**
13627
14915
  * Validates the body of an incoming request based on a JSON schema.
13628
14916
  *
@@ -13950,6 +15238,10 @@ export declare interface XmlToJsonPolicyOptions {
13950
15238
  * Ignore tag attributes.
13951
15239
  */
13952
15240
  ignoreAttributes?: boolean;
15241
+ /**
15242
+ * Remove surrounding whitespace from tag or attribute value.
15243
+ */
15244
+ trimValues?: boolean;
13953
15245
  /**
13954
15246
  * At particular point, if you don't want to parse a tag and it's nested tags then you can set their path in stopNodes. You can also set tags which should not be processed irrespective of their path using * as the wildcard.
13955
15247
  */
@@ -13962,10 +15254,6 @@ export declare interface XmlToJsonPolicyOptions {
13962
15254
  * Text value of a tag is parsed to #text property by default.
13963
15255
  */
13964
15256
  textNodeName?: string;
13965
- /**
13966
- * Remove surrounding whitespace from tag or attribute value.
13967
- */
13968
- trimValues?: boolean;
13969
15257
  /**
13970
15258
  * A list of status codes and ranges "200-299, 304" that should the XML parser should run on. If not set, the parser will run on all status codes.
13971
15259
  */