@zuplo/cli 6.72.0 → 6.72.1

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 (99) hide show
  1. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/.github/dependabot.yml +42 -2
  2. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/README.md +5 -5
  3. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/index.js +4 -7
  4. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/package.json +3 -3
  5. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/test/additionalProperties.test.js +47 -0
  6. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/test/const.test.js +20 -0
  7. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-json-stringify/test/patternProperties.test.js +24 -0
  8. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/.gitattributes +2 -0
  9. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/.github/dependabot.yml +53 -0
  10. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/.github/workflows/ci.yml +154 -0
  11. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/.github/workflows/lock-threads.yml +19 -0
  12. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/LICENSE +30 -0
  13. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/README.md +152 -0
  14. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/benchmark.mjs +159 -0
  15. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/encoder.mjs +54 -0
  16. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/equal.mjs +51 -0
  17. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/non-simple-domain.mjs +22 -0
  18. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/package.json +17 -0
  19. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/string-array-to-hex-stripped.mjs +24 -0
  20. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/benchmark/ws-is-secure.mjs +65 -0
  21. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/eslint.config.js +6 -0
  22. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/index.js +405 -0
  23. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/lib/schemes.js +267 -0
  24. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/lib/utils.js +585 -0
  25. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/package.json +68 -0
  26. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/ajv.test.js +43 -0
  27. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/equal.test.js +168 -0
  28. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/fixtures/uri-js-parse.json +501 -0
  29. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/fixtures/uri-js-serialize.json +120 -0
  30. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/parse.test.js +325 -0
  31. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/query-fragment-normalization.test.js +33 -0
  32. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/resolve.test.js +87 -0
  33. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/rfc-3986.test.js +90 -0
  34. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/scheme-normalization.test.js +16 -0
  35. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/security-normalization.test.js +39 -0
  36. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/security-utf8-encoding.test.js +0 -0
  37. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/security.test.js +161 -0
  38. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/serialize.test.js +151 -0
  39. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/uri-js-compatibility.test.js +33 -0
  40. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/uri-js.test.js +912 -0
  41. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/test/util.test.js +47 -0
  42. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/tsconfig.json +10 -0
  43. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/types/index.d.ts +51 -0
  44. package/node_modules/@fastify/fast-json-stringify-compiler/node_modules/fast-uri/types/index.tst.ts +15 -0
  45. package/node_modules/@posthog/core/dist/index.d.ts +3 -0
  46. package/node_modules/@posthog/core/dist/index.d.ts.map +1 -1
  47. package/node_modules/@posthog/core/dist/index.js +133 -93
  48. package/node_modules/@posthog/core/dist/index.mjs +2 -1
  49. package/node_modules/@posthog/core/dist/metrics/index.d.ts +61 -0
  50. package/node_modules/@posthog/core/dist/metrics/index.d.ts.map +1 -0
  51. package/node_modules/@posthog/core/dist/metrics/index.js +326 -0
  52. package/node_modules/@posthog/core/dist/metrics/index.mjs +283 -0
  53. package/node_modules/@posthog/core/dist/metrics/metrics-utils.d.ts +41 -0
  54. package/node_modules/@posthog/core/dist/metrics/metrics-utils.d.ts.map +1 -0
  55. package/node_modules/@posthog/core/dist/metrics/metrics-utils.js +117 -0
  56. package/node_modules/@posthog/core/dist/metrics/metrics-utils.mjs +68 -0
  57. package/node_modules/@posthog/core/dist/metrics/types.d.ts +69 -0
  58. package/node_modules/@posthog/core/dist/metrics/types.d.ts.map +1 -0
  59. package/node_modules/@posthog/core/dist/metrics/types.js +18 -0
  60. package/node_modules/@posthog/core/dist/metrics/types.mjs +0 -0
  61. package/node_modules/@posthog/core/dist/posthog-core-stateless.d.ts +2 -0
  62. package/node_modules/@posthog/core/dist/posthog-core-stateless.d.ts.map +1 -1
  63. package/node_modules/@posthog/core/dist/posthog-core-stateless.js +16 -1
  64. package/node_modules/@posthog/core/dist/posthog-core-stateless.mjs +16 -1
  65. package/node_modules/@posthog/core/package.json +2 -2
  66. package/node_modules/@posthog/core/src/index.ts +20 -0
  67. package/node_modules/@posthog/core/src/metrics/index.spec.ts +459 -0
  68. package/node_modules/@posthog/core/src/metrics/index.ts +414 -0
  69. package/node_modules/@posthog/core/src/metrics/metrics-utils.ts +100 -0
  70. package/node_modules/@posthog/core/src/metrics/types.ts +89 -0
  71. package/node_modules/@posthog/core/src/posthog-core-stateless.ts +26 -0
  72. package/node_modules/@posthog/types/dist/capture-metric.d.ts +122 -0
  73. package/node_modules/@posthog/types/dist/capture-metric.d.ts.map +1 -0
  74. package/node_modules/@posthog/types/dist/capture-metric.js +36 -0
  75. package/node_modules/@posthog/types/dist/capture-metric.mjs +2 -0
  76. package/node_modules/@posthog/types/dist/index.d.ts +3 -1
  77. package/node_modules/@posthog/types/dist/index.d.ts.map +1 -1
  78. package/node_modules/@posthog/types/dist/index.js +19 -1
  79. package/node_modules/@posthog/types/dist/index.mjs +2 -0
  80. package/node_modules/@posthog/types/dist/posthog-config.d.ts +60 -0
  81. package/node_modules/@posthog/types/dist/posthog-config.d.ts.map +1 -1
  82. package/node_modules/@posthog/types/package.json +1 -1
  83. package/node_modules/@posthog/types/src/capture-metric.ts +133 -0
  84. package/node_modules/@posthog/types/src/index.ts +17 -0
  85. package/node_modules/@posthog/types/src/posthog-config.ts +62 -0
  86. package/node_modules/@zuplo/core/package.json +1 -1
  87. package/node_modules/@zuplo/graphql/package.json +1 -1
  88. package/node_modules/@zuplo/openapi-tools/package.json +1 -1
  89. package/node_modules/@zuplo/otel/package.json +1 -1
  90. package/node_modules/@zuplo/runtime/out/esm/{chunk-FAOWNDMK.js → chunk-IC7XGD5C.js} +93 -93
  91. package/node_modules/@zuplo/runtime/out/esm/chunk-IC7XGD5C.js.map +1 -0
  92. package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
  93. package/node_modules/@zuplo/runtime/out/esm/index.js.map +1 -1
  94. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
  95. package/node_modules/@zuplo/runtime/out/types/index.d.ts +830 -6
  96. package/node_modules/@zuplo/runtime/package.json +1 -1
  97. package/package.json +6 -6
  98. package/node_modules/@zuplo/runtime/out/esm/chunk-FAOWNDMK.js.map +0 -1
  99. /package/node_modules/@zuplo/runtime/out/esm/{chunk-FAOWNDMK.js.LEGAL.txt → chunk-IC7XGD5C.js.LEGAL.txt} +0 -0
@@ -885,6 +885,15 @@ declare interface AmberfloMeteringProperties extends Omit<
885
885
  customerId: string;
886
886
  }
887
887
 
888
+ declare interface AndRule {
889
+ /**
890
+ * Nested rules that must all pass.
891
+ *
892
+ * @minItems 1
893
+ */
894
+ and: [NestedRule, ...NestedRule[]];
895
+ }
896
+
888
897
  declare interface AnthropicMessage {
889
898
  role: "user" | "assistant";
890
899
  content:
@@ -1591,7 +1600,7 @@ export declare interface Auth0JwtInboundPolicyOptions {
1591
1600
  *
1592
1601
  * @title AuthZEN Authorization
1593
1602
  * @product api-gateway
1594
- * @beta
1603
+ * @public
1595
1604
  * @enterprise
1596
1605
  * @param request - The ZuploRequest
1597
1606
  * @param context - The ZuploContext
@@ -1912,7 +1921,7 @@ export declare class AWSLoggingPlugin extends LogPlugin {
1912
1921
  *
1913
1922
  * @title Axiomatics Authorization
1914
1923
  * @product api-gateway
1915
- * @beta
1924
+ * @public
1916
1925
  * @enterprise
1917
1926
  * @param request - The ZuploRequest
1918
1927
  * @param context - The ZuploContext
@@ -2647,6 +2656,18 @@ declare type CheckIntervalMs = number;
2647
2656
  */
2648
2657
  declare type CheckIntervalMs_2 = number;
2649
2658
 
2659
+ /**
2660
+ * A light JSON-path selector into the authenticated user's claims (request.user.data). Use dot notation for nested claims, e.g. 'address.country'. Use bracket notation with quotes for claim names that contain dots or slashes — namespaced claims — e.g. ["https://sts.amazonaws.com/"]["lambda_source_function_arn"]; the two notations may be mixed. A missing claim always fails the check.
2661
+ * @public
2662
+ */
2663
+ declare type Claim = string;
2664
+
2665
+ /**
2666
+ * A single claim check using exactly one operator: eq, in, or startsWith.
2667
+ * @public
2668
+ */
2669
+ declare type ClaimCheck = EqualsRule | InRule | StartsWithRule;
2670
+
2650
2671
  /**
2651
2672
  * Removes all headers from the incoming request except for those in the exclude list.
2652
2673
  *
@@ -3944,6 +3965,14 @@ declare type EnableStreamingAccumulation_2 = boolean;
3944
3965
  */
3945
3966
  export declare const environment: Record<string, string | undefined>;
3946
3967
 
3968
+ declare interface EqualsRule {
3969
+ claim: Claim;
3970
+ /**
3971
+ * The exact value the claim must equal. Comparison is strict and type-sensitive: the string '42' does not equal the number 42. When the claim value is an array, the check passes if any element equals this value.
3972
+ */
3973
+ eq: string | number | boolean;
3974
+ }
3975
+
3947
3976
  /**
3948
3977
  * @beta
3949
3978
  */
@@ -6375,6 +6404,45 @@ declare interface IncomingRequestProperties {
6375
6404
  /* Excluded from this release type: clientCertSubjectDn */
6376
6405
  }
6377
6406
 
6407
+ declare interface InnermostAndRule {
6408
+ /**
6409
+ * Claim checks that must all pass. The maximum combinator nesting depth is reached, so entries must be single claim checks.
6410
+ *
6411
+ * @minItems 1
6412
+ */
6413
+ and: [ClaimCheck, ...ClaimCheck[]];
6414
+ }
6415
+
6416
+ declare interface InnermostOrRule {
6417
+ /**
6418
+ * Claim checks of which at least one must pass. The maximum combinator nesting depth is reached, so entries must be single claim checks.
6419
+ *
6420
+ * @minItems 1
6421
+ */
6422
+ or: [ClaimCheck, ...ClaimCheck[]];
6423
+ }
6424
+
6425
+ /**
6426
+ * A third-level rule: a single claim check or an and/or combination of claim checks. Combinators cannot nest any deeper.
6427
+ * @public
6428
+ */
6429
+ declare type InnermostRule =
6430
+ | InnermostAndRule
6431
+ | InnermostOrRule
6432
+ | EqualsRule
6433
+ | InRule
6434
+ | StartsWithRule;
6435
+
6436
+ declare interface InRule {
6437
+ claim: Claim;
6438
+ /**
6439
+ * Allowed values for the claim. The check passes when the claim value equals any listed value (strict, type-sensitive comparison). When the claim value is an array, the check passes if any element equals any listed value.
6440
+ *
6441
+ * @minItems 1
6442
+ */
6443
+ in: [string | number | boolean, ...(string | number | boolean)[]];
6444
+ }
6445
+
6378
6446
  /**
6379
6447
  * ISO 3166-1 Alpha-2 codes
6380
6448
  * @public
@@ -8756,6 +8824,35 @@ declare interface MultiRequests {
8756
8824
  RequestReference: RequestReference;
8757
8825
  }
8758
8826
 
8827
+ declare interface NestedAndRule {
8828
+ /**
8829
+ * Nested rules that must all pass.
8830
+ *
8831
+ * @minItems 1
8832
+ */
8833
+ and: [InnermostRule, ...InnermostRule[]];
8834
+ }
8835
+
8836
+ declare interface NestedOrRule {
8837
+ /**
8838
+ * Nested rules of which at least one must pass.
8839
+ *
8840
+ * @minItems 1
8841
+ */
8842
+ or: [InnermostRule, ...InnermostRule[]];
8843
+ }
8844
+
8845
+ /**
8846
+ * A second-level rule: a single claim check or an and/or combination of third-level rules.
8847
+ * @public
8848
+ */
8849
+ declare type NestedRule =
8850
+ | NestedAndRule
8851
+ | NestedOrRule
8852
+ | EqualsRule
8853
+ | InRule
8854
+ | StartsWithRule;
8855
+
8759
8856
  declare interface NewRelicLoggingOptions {
8760
8857
  url?: string;
8761
8858
  apiKey: string;
@@ -8849,7 +8946,7 @@ export declare interface OAuthProtectedResourcePluginOptions {
8849
8946
  *
8850
8947
  * @title Okta FGA Authorization
8851
8948
  * @product api-gateway
8852
- * @beta
8949
+ * @public
8853
8950
  * @enterprise
8854
8951
  * @param request - The ZuploRequest
8855
8952
  * @param context - The ZuploContext
@@ -9589,7 +9686,7 @@ declare namespace OpenAPIV3_1 {
9589
9686
  *
9590
9687
  * @title OpenFGA Authorization
9591
9688
  * @product api-gateway
9592
- * @beta
9689
+ * @public
9593
9690
  * @enterprise
9594
9691
  * @param request - The ZuploRequest
9595
9692
  * @param context - The ZuploContext
@@ -9834,6 +9931,15 @@ export declare interface OpenMeterInboundPolicyOptions {
9834
9931
  subjectPath?: string;
9835
9932
  }
9836
9933
 
9934
+ declare interface OrRule {
9935
+ /**
9936
+ * Nested rules of which at least one must pass.
9937
+ *
9938
+ * @minItems 1
9939
+ */
9940
+ or: [NestedRule, ...NestedRule[]];
9941
+ }
9942
+
9837
9943
  /**
9838
9944
  * Context for adding per-request attributes to OTel metrics
9839
9945
  * @public
@@ -11127,6 +11233,708 @@ export declare interface RequireOriginInboundPolicyOptions {
11127
11233
  failureDetail?: string;
11128
11234
  }
11129
11235
 
11236
+ /**
11237
+ * Authorizes requests by validating claims on the authenticated user
11238
+ * (`request.user`) against a configurable rule of `and`/`or` combinators and
11239
+ * per-claim `eq`, `in`, and `startsWith` checks. Run it after any
11240
+ * authentication policy that populates `request.user` — a JWT auth policy, API
11241
+ * key auth, mTLS, and so on — to allow only specific callers (service
11242
+ * accounts, OAuth clients, tenants, groups) without writing custom code.
11243
+ *
11244
+ * Every check fails closed: a missing or non-primitive claim never matches,
11245
+ * comparisons are strict and type-sensitive, and requests without an
11246
+ * authenticated user receive a 401 response. Denied requests receive a 403
11247
+ * response that does not echo claim values or expected values; the failing
11248
+ * checks are written to the request log instead.
11249
+ *
11250
+ * Validation of the options runs lazily inside the policy constructor, which
11251
+ * the runtime caches per policy name. Misconfigured options therefore fail on
11252
+ * first use with a customer-facing `ConfigurationError` instead of failing at
11253
+ * module load.
11254
+ *
11255
+ * @title Require User Claims
11256
+ * @product api-gateway
11257
+ * @public
11258
+ */
11259
+ export declare class RequireUserClaimsInboundPolicy extends InboundPolicy<ValidatedOptions> {
11260
+ #private;
11261
+ static readonly policyType = "require-user-claims";
11262
+ constructor(rawOptions: unknown, policyName: string);
11263
+ handler(
11264
+ request: ZuploRequest,
11265
+ context: ZuploContext
11266
+ ): Promise<ZuploRequest | Response>;
11267
+ }
11268
+
11269
+ /**
11270
+ * The options for this policy.
11271
+ * @public
11272
+ */
11273
+ export declare interface RequireUserClaimsInboundPolicyOptions {
11274
+ rule: Rule;
11275
+ }
11276
+
11277
+ declare const requireUserClaimsOptionsSchema: z.ZodObject<
11278
+ {
11279
+ rule: z.ZodUnion<
11280
+ readonly [
11281
+ z.ZodObject<
11282
+ {
11283
+ and: z.ZodArray<
11284
+ z.ZodUnion<
11285
+ readonly [
11286
+ z.ZodObject<
11287
+ {
11288
+ and: z.ZodArray<
11289
+ z.ZodUnion<
11290
+ readonly [
11291
+ z.ZodObject<
11292
+ {
11293
+ and: z.ZodArray<
11294
+ z.ZodUnion<
11295
+ readonly [
11296
+ z.ZodObject<
11297
+ {
11298
+ claim: z.ZodString;
11299
+ eq: z.ZodUnion<
11300
+ readonly [
11301
+ z.ZodString,
11302
+ z.ZodNumber,
11303
+ z.ZodBoolean,
11304
+ ]
11305
+ >;
11306
+ },
11307
+ z.core.$strict
11308
+ >,
11309
+ z.ZodObject<
11310
+ {
11311
+ claim: z.ZodString;
11312
+ in: z.ZodArray<
11313
+ z.ZodUnion<
11314
+ readonly [
11315
+ z.ZodString,
11316
+ z.ZodNumber,
11317
+ z.ZodBoolean,
11318
+ ]
11319
+ >
11320
+ >;
11321
+ },
11322
+ z.core.$strict
11323
+ >,
11324
+ z.ZodObject<
11325
+ {
11326
+ claim: z.ZodString;
11327
+ startsWith: z.ZodString;
11328
+ },
11329
+ z.core.$strict
11330
+ >,
11331
+ ]
11332
+ >
11333
+ >;
11334
+ },
11335
+ z.core.$strict
11336
+ >,
11337
+ z.ZodObject<
11338
+ {
11339
+ or: z.ZodArray<
11340
+ z.ZodUnion<
11341
+ readonly [
11342
+ z.ZodObject<
11343
+ {
11344
+ claim: z.ZodString;
11345
+ eq: z.ZodUnion<
11346
+ readonly [
11347
+ z.ZodString,
11348
+ z.ZodNumber,
11349
+ z.ZodBoolean,
11350
+ ]
11351
+ >;
11352
+ },
11353
+ z.core.$strict
11354
+ >,
11355
+ z.ZodObject<
11356
+ {
11357
+ claim: z.ZodString;
11358
+ in: z.ZodArray<
11359
+ z.ZodUnion<
11360
+ readonly [
11361
+ z.ZodString,
11362
+ z.ZodNumber,
11363
+ z.ZodBoolean,
11364
+ ]
11365
+ >
11366
+ >;
11367
+ },
11368
+ z.core.$strict
11369
+ >,
11370
+ z.ZodObject<
11371
+ {
11372
+ claim: z.ZodString;
11373
+ startsWith: z.ZodString;
11374
+ },
11375
+ z.core.$strict
11376
+ >,
11377
+ ]
11378
+ >
11379
+ >;
11380
+ },
11381
+ z.core.$strict
11382
+ >,
11383
+ z.ZodObject<
11384
+ {
11385
+ claim: z.ZodString;
11386
+ eq: z.ZodUnion<
11387
+ readonly [
11388
+ z.ZodString,
11389
+ z.ZodNumber,
11390
+ z.ZodBoolean,
11391
+ ]
11392
+ >;
11393
+ },
11394
+ z.core.$strict
11395
+ >,
11396
+ z.ZodObject<
11397
+ {
11398
+ claim: z.ZodString;
11399
+ in: z.ZodArray<
11400
+ z.ZodUnion<
11401
+ readonly [
11402
+ z.ZodString,
11403
+ z.ZodNumber,
11404
+ z.ZodBoolean,
11405
+ ]
11406
+ >
11407
+ >;
11408
+ },
11409
+ z.core.$strict
11410
+ >,
11411
+ z.ZodObject<
11412
+ {
11413
+ claim: z.ZodString;
11414
+ startsWith: z.ZodString;
11415
+ },
11416
+ z.core.$strict
11417
+ >,
11418
+ ]
11419
+ >
11420
+ >;
11421
+ },
11422
+ z.core.$strict
11423
+ >,
11424
+ z.ZodObject<
11425
+ {
11426
+ or: z.ZodArray<
11427
+ z.ZodUnion<
11428
+ readonly [
11429
+ z.ZodObject<
11430
+ {
11431
+ and: z.ZodArray<
11432
+ z.ZodUnion<
11433
+ readonly [
11434
+ z.ZodObject<
11435
+ {
11436
+ claim: z.ZodString;
11437
+ eq: z.ZodUnion<
11438
+ readonly [
11439
+ z.ZodString,
11440
+ z.ZodNumber,
11441
+ z.ZodBoolean,
11442
+ ]
11443
+ >;
11444
+ },
11445
+ z.core.$strict
11446
+ >,
11447
+ z.ZodObject<
11448
+ {
11449
+ claim: z.ZodString;
11450
+ in: z.ZodArray<
11451
+ z.ZodUnion<
11452
+ readonly [
11453
+ z.ZodString,
11454
+ z.ZodNumber,
11455
+ z.ZodBoolean,
11456
+ ]
11457
+ >
11458
+ >;
11459
+ },
11460
+ z.core.$strict
11461
+ >,
11462
+ z.ZodObject<
11463
+ {
11464
+ claim: z.ZodString;
11465
+ startsWith: z.ZodString;
11466
+ },
11467
+ z.core.$strict
11468
+ >,
11469
+ ]
11470
+ >
11471
+ >;
11472
+ },
11473
+ z.core.$strict
11474
+ >,
11475
+ z.ZodObject<
11476
+ {
11477
+ or: z.ZodArray<
11478
+ z.ZodUnion<
11479
+ readonly [
11480
+ z.ZodObject<
11481
+ {
11482
+ claim: z.ZodString;
11483
+ eq: z.ZodUnion<
11484
+ readonly [
11485
+ z.ZodString,
11486
+ z.ZodNumber,
11487
+ z.ZodBoolean,
11488
+ ]
11489
+ >;
11490
+ },
11491
+ z.core.$strict
11492
+ >,
11493
+ z.ZodObject<
11494
+ {
11495
+ claim: z.ZodString;
11496
+ in: z.ZodArray<
11497
+ z.ZodUnion<
11498
+ readonly [
11499
+ z.ZodString,
11500
+ z.ZodNumber,
11501
+ z.ZodBoolean,
11502
+ ]
11503
+ >
11504
+ >;
11505
+ },
11506
+ z.core.$strict
11507
+ >,
11508
+ z.ZodObject<
11509
+ {
11510
+ claim: z.ZodString;
11511
+ startsWith: z.ZodString;
11512
+ },
11513
+ z.core.$strict
11514
+ >,
11515
+ ]
11516
+ >
11517
+ >;
11518
+ },
11519
+ z.core.$strict
11520
+ >,
11521
+ z.ZodObject<
11522
+ {
11523
+ claim: z.ZodString;
11524
+ eq: z.ZodUnion<
11525
+ readonly [
11526
+ z.ZodString,
11527
+ z.ZodNumber,
11528
+ z.ZodBoolean,
11529
+ ]
11530
+ >;
11531
+ },
11532
+ z.core.$strict
11533
+ >,
11534
+ z.ZodObject<
11535
+ {
11536
+ claim: z.ZodString;
11537
+ in: z.ZodArray<
11538
+ z.ZodUnion<
11539
+ readonly [
11540
+ z.ZodString,
11541
+ z.ZodNumber,
11542
+ z.ZodBoolean,
11543
+ ]
11544
+ >
11545
+ >;
11546
+ },
11547
+ z.core.$strict
11548
+ >,
11549
+ z.ZodObject<
11550
+ {
11551
+ claim: z.ZodString;
11552
+ startsWith: z.ZodString;
11553
+ },
11554
+ z.core.$strict
11555
+ >,
11556
+ ]
11557
+ >
11558
+ >;
11559
+ },
11560
+ z.core.$strict
11561
+ >,
11562
+ z.ZodObject<
11563
+ {
11564
+ claim: z.ZodString;
11565
+ eq: z.ZodUnion<
11566
+ readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]
11567
+ >;
11568
+ },
11569
+ z.core.$strict
11570
+ >,
11571
+ z.ZodObject<
11572
+ {
11573
+ claim: z.ZodString;
11574
+ in: z.ZodArray<
11575
+ z.ZodUnion<
11576
+ readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]
11577
+ >
11578
+ >;
11579
+ },
11580
+ z.core.$strict
11581
+ >,
11582
+ z.ZodObject<
11583
+ {
11584
+ claim: z.ZodString;
11585
+ startsWith: z.ZodString;
11586
+ },
11587
+ z.core.$strict
11588
+ >,
11589
+ ]
11590
+ >
11591
+ >;
11592
+ },
11593
+ z.core.$strict
11594
+ >,
11595
+ z.ZodObject<
11596
+ {
11597
+ or: z.ZodArray<
11598
+ z.ZodUnion<
11599
+ readonly [
11600
+ z.ZodObject<
11601
+ {
11602
+ and: z.ZodArray<
11603
+ z.ZodUnion<
11604
+ readonly [
11605
+ z.ZodObject<
11606
+ {
11607
+ and: z.ZodArray<
11608
+ z.ZodUnion<
11609
+ readonly [
11610
+ z.ZodObject<
11611
+ {
11612
+ claim: z.ZodString;
11613
+ eq: z.ZodUnion<
11614
+ readonly [
11615
+ z.ZodString,
11616
+ z.ZodNumber,
11617
+ z.ZodBoolean,
11618
+ ]
11619
+ >;
11620
+ },
11621
+ z.core.$strict
11622
+ >,
11623
+ z.ZodObject<
11624
+ {
11625
+ claim: z.ZodString;
11626
+ in: z.ZodArray<
11627
+ z.ZodUnion<
11628
+ readonly [
11629
+ z.ZodString,
11630
+ z.ZodNumber,
11631
+ z.ZodBoolean,
11632
+ ]
11633
+ >
11634
+ >;
11635
+ },
11636
+ z.core.$strict
11637
+ >,
11638
+ z.ZodObject<
11639
+ {
11640
+ claim: z.ZodString;
11641
+ startsWith: z.ZodString;
11642
+ },
11643
+ z.core.$strict
11644
+ >,
11645
+ ]
11646
+ >
11647
+ >;
11648
+ },
11649
+ z.core.$strict
11650
+ >,
11651
+ z.ZodObject<
11652
+ {
11653
+ or: z.ZodArray<
11654
+ z.ZodUnion<
11655
+ readonly [
11656
+ z.ZodObject<
11657
+ {
11658
+ claim: z.ZodString;
11659
+ eq: z.ZodUnion<
11660
+ readonly [
11661
+ z.ZodString,
11662
+ z.ZodNumber,
11663
+ z.ZodBoolean,
11664
+ ]
11665
+ >;
11666
+ },
11667
+ z.core.$strict
11668
+ >,
11669
+ z.ZodObject<
11670
+ {
11671
+ claim: z.ZodString;
11672
+ in: z.ZodArray<
11673
+ z.ZodUnion<
11674
+ readonly [
11675
+ z.ZodString,
11676
+ z.ZodNumber,
11677
+ z.ZodBoolean,
11678
+ ]
11679
+ >
11680
+ >;
11681
+ },
11682
+ z.core.$strict
11683
+ >,
11684
+ z.ZodObject<
11685
+ {
11686
+ claim: z.ZodString;
11687
+ startsWith: z.ZodString;
11688
+ },
11689
+ z.core.$strict
11690
+ >,
11691
+ ]
11692
+ >
11693
+ >;
11694
+ },
11695
+ z.core.$strict
11696
+ >,
11697
+ z.ZodObject<
11698
+ {
11699
+ claim: z.ZodString;
11700
+ eq: z.ZodUnion<
11701
+ readonly [
11702
+ z.ZodString,
11703
+ z.ZodNumber,
11704
+ z.ZodBoolean,
11705
+ ]
11706
+ >;
11707
+ },
11708
+ z.core.$strict
11709
+ >,
11710
+ z.ZodObject<
11711
+ {
11712
+ claim: z.ZodString;
11713
+ in: z.ZodArray<
11714
+ z.ZodUnion<
11715
+ readonly [
11716
+ z.ZodString,
11717
+ z.ZodNumber,
11718
+ z.ZodBoolean,
11719
+ ]
11720
+ >
11721
+ >;
11722
+ },
11723
+ z.core.$strict
11724
+ >,
11725
+ z.ZodObject<
11726
+ {
11727
+ claim: z.ZodString;
11728
+ startsWith: z.ZodString;
11729
+ },
11730
+ z.core.$strict
11731
+ >,
11732
+ ]
11733
+ >
11734
+ >;
11735
+ },
11736
+ z.core.$strict
11737
+ >,
11738
+ z.ZodObject<
11739
+ {
11740
+ or: z.ZodArray<
11741
+ z.ZodUnion<
11742
+ readonly [
11743
+ z.ZodObject<
11744
+ {
11745
+ and: z.ZodArray<
11746
+ z.ZodUnion<
11747
+ readonly [
11748
+ z.ZodObject<
11749
+ {
11750
+ claim: z.ZodString;
11751
+ eq: z.ZodUnion<
11752
+ readonly [
11753
+ z.ZodString,
11754
+ z.ZodNumber,
11755
+ z.ZodBoolean,
11756
+ ]
11757
+ >;
11758
+ },
11759
+ z.core.$strict
11760
+ >,
11761
+ z.ZodObject<
11762
+ {
11763
+ claim: z.ZodString;
11764
+ in: z.ZodArray<
11765
+ z.ZodUnion<
11766
+ readonly [
11767
+ z.ZodString,
11768
+ z.ZodNumber,
11769
+ z.ZodBoolean,
11770
+ ]
11771
+ >
11772
+ >;
11773
+ },
11774
+ z.core.$strict
11775
+ >,
11776
+ z.ZodObject<
11777
+ {
11778
+ claim: z.ZodString;
11779
+ startsWith: z.ZodString;
11780
+ },
11781
+ z.core.$strict
11782
+ >,
11783
+ ]
11784
+ >
11785
+ >;
11786
+ },
11787
+ z.core.$strict
11788
+ >,
11789
+ z.ZodObject<
11790
+ {
11791
+ or: z.ZodArray<
11792
+ z.ZodUnion<
11793
+ readonly [
11794
+ z.ZodObject<
11795
+ {
11796
+ claim: z.ZodString;
11797
+ eq: z.ZodUnion<
11798
+ readonly [
11799
+ z.ZodString,
11800
+ z.ZodNumber,
11801
+ z.ZodBoolean,
11802
+ ]
11803
+ >;
11804
+ },
11805
+ z.core.$strict
11806
+ >,
11807
+ z.ZodObject<
11808
+ {
11809
+ claim: z.ZodString;
11810
+ in: z.ZodArray<
11811
+ z.ZodUnion<
11812
+ readonly [
11813
+ z.ZodString,
11814
+ z.ZodNumber,
11815
+ z.ZodBoolean,
11816
+ ]
11817
+ >
11818
+ >;
11819
+ },
11820
+ z.core.$strict
11821
+ >,
11822
+ z.ZodObject<
11823
+ {
11824
+ claim: z.ZodString;
11825
+ startsWith: z.ZodString;
11826
+ },
11827
+ z.core.$strict
11828
+ >,
11829
+ ]
11830
+ >
11831
+ >;
11832
+ },
11833
+ z.core.$strict
11834
+ >,
11835
+ z.ZodObject<
11836
+ {
11837
+ claim: z.ZodString;
11838
+ eq: z.ZodUnion<
11839
+ readonly [
11840
+ z.ZodString,
11841
+ z.ZodNumber,
11842
+ z.ZodBoolean,
11843
+ ]
11844
+ >;
11845
+ },
11846
+ z.core.$strict
11847
+ >,
11848
+ z.ZodObject<
11849
+ {
11850
+ claim: z.ZodString;
11851
+ in: z.ZodArray<
11852
+ z.ZodUnion<
11853
+ readonly [
11854
+ z.ZodString,
11855
+ z.ZodNumber,
11856
+ z.ZodBoolean,
11857
+ ]
11858
+ >
11859
+ >;
11860
+ },
11861
+ z.core.$strict
11862
+ >,
11863
+ z.ZodObject<
11864
+ {
11865
+ claim: z.ZodString;
11866
+ startsWith: z.ZodString;
11867
+ },
11868
+ z.core.$strict
11869
+ >,
11870
+ ]
11871
+ >
11872
+ >;
11873
+ },
11874
+ z.core.$strict
11875
+ >,
11876
+ z.ZodObject<
11877
+ {
11878
+ claim: z.ZodString;
11879
+ eq: z.ZodUnion<
11880
+ readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]
11881
+ >;
11882
+ },
11883
+ z.core.$strict
11884
+ >,
11885
+ z.ZodObject<
11886
+ {
11887
+ claim: z.ZodString;
11888
+ in: z.ZodArray<
11889
+ z.ZodUnion<
11890
+ readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]
11891
+ >
11892
+ >;
11893
+ },
11894
+ z.core.$strict
11895
+ >,
11896
+ z.ZodObject<
11897
+ {
11898
+ claim: z.ZodString;
11899
+ startsWith: z.ZodString;
11900
+ },
11901
+ z.core.$strict
11902
+ >,
11903
+ ]
11904
+ >
11905
+ >;
11906
+ },
11907
+ z.core.$strict
11908
+ >,
11909
+ z.ZodObject<
11910
+ {
11911
+ claim: z.ZodString;
11912
+ eq: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
11913
+ },
11914
+ z.core.$strict
11915
+ >,
11916
+ z.ZodObject<
11917
+ {
11918
+ claim: z.ZodString;
11919
+ in: z.ZodArray<
11920
+ z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>
11921
+ >;
11922
+ },
11923
+ z.core.$strict
11924
+ >,
11925
+ z.ZodObject<
11926
+ {
11927
+ claim: z.ZodString;
11928
+ startsWith: z.ZodString;
11929
+ },
11930
+ z.core.$strict
11931
+ >,
11932
+ ]
11933
+ >;
11934
+ },
11935
+ z.core.$strict
11936
+ >;
11937
+
11130
11938
  declare type ResolveRequestParams<
11131
11939
  TParams extends RequestParamsDefault | undefined,
11132
11940
  > = TParams extends RequestParamsDefault ? TParams : RequestParamsDefault;
@@ -11406,6 +12214,12 @@ export declare interface RouteHandler<T = unknown> {
11406
12214
 
11407
12215
  /* Excluded from this release type: Router */
11408
12216
 
12217
+ /**
12218
+ * The authorization rule evaluated against the authenticated user's claims (request.user.data, populated by the authentication policy that runs before this one — a JWT policy, API key auth, mTLS, etc.). A rule is either a single claim check (eq, in, or startsWith) or an and/or combination of nested rules. Combinators may nest up to three levels deep. Requests that fail the rule receive a 403 Forbidden response.
12219
+ * @public
12220
+ */
12221
+ declare type Rule = AndRule | OrRule | EqualsRule | InRule | StartsWithRule;
12222
+
11409
12223
  /* Excluded from this release type: RuntimeEnvironment */
11410
12224
 
11411
12225
  /**
@@ -11558,7 +12372,7 @@ export declare interface SecretMaskingOutboundPolicyOptions {
11558
12372
  *
11559
12373
  * @title Semantic Cache
11560
12374
  * @product ai-gateway
11561
- * @beta
12375
+ * @public
11562
12376
  * @enterprise
11563
12377
  * @requiresAI
11564
12378
  * @param request - The ZuploRequest
@@ -11947,6 +12761,14 @@ export declare class SplunkLoggingPlugin extends LogPlugin {
11947
12761
 
11948
12762
  /* Excluded from this release type: StandardEnv */
11949
12763
 
12764
+ declare interface StartsWithRule {
12765
+ claim: Claim;
12766
+ /**
12767
+ * The prefix the claim's string value must start with. Non-string claim values never match. Must not be empty — an empty prefix would match every value. When the claim value is an array, the check passes if any string element starts with this prefix.
12768
+ */
12769
+ startsWith: string;
12770
+ }
12771
+
11950
12772
  /**
11951
12773
  * Configuration for accumulating and validating streaming responses.
11952
12774
  * @public
@@ -12427,7 +13249,7 @@ export declare interface UpstreamFirebaseUserAuthInboundPolicyOptions {
12427
13249
  *
12428
13250
  * @title Upstream GCP Federated Auth
12429
13251
  * @product api-gateway
12430
- * @beta
13252
+ * @public
12431
13253
  * @enterprise
12432
13254
  * @param request - The ZuploRequest
12433
13255
  * @param context - The ZuploContext
@@ -12799,6 +13621,8 @@ declare type ValidatedAuth0OAuthOptions = z.infer<
12799
13621
  typeof mcpAuth0OAuthOptionsSchema
12800
13622
  >;
12801
13623
 
13624
+ declare type ValidatedOptions = z.infer<typeof requireUserClaimsOptionsSchema>;
13625
+
12802
13626
  /**
12803
13627
  * Validates the body of an incoming request based on a JSON schema.
12804
13628
  *