@authup/access 1.0.0-beta.50 → 1.0.0-beta.51

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 (43) hide show
  1. package/dist/index.d.mts +138 -15
  2. package/dist/index.d.mts.map +1 -1
  3. package/dist/index.mjs +252 -47
  4. package/dist/index.mjs.map +1 -1
  5. package/dist/permission/evaluator/module.d.ts +2 -2
  6. package/dist/permission/evaluator/module.d.ts.map +1 -1
  7. package/dist/permission/evaluator/types.d.ts +1 -1
  8. package/dist/permission/evaluator/types.d.ts.map +1 -1
  9. package/dist/permission/helpers/aggregate.d.ts +10 -0
  10. package/dist/permission/helpers/aggregate.d.ts.map +1 -0
  11. package/dist/permission/helpers/equal.d.ts +6 -2
  12. package/dist/permission/helpers/equal.d.ts.map +1 -1
  13. package/dist/permission/helpers/grant.d.ts +9 -0
  14. package/dist/permission/helpers/grant.d.ts.map +1 -0
  15. package/dist/permission/helpers/index.d.ts +2 -1
  16. package/dist/permission/helpers/index.d.ts.map +1 -1
  17. package/dist/permission/index.d.ts +1 -0
  18. package/dist/permission/index.d.ts.map +1 -1
  19. package/dist/permission/provider/memory.d.ts +3 -3
  20. package/dist/permission/provider/memory.d.ts.map +1 -1
  21. package/dist/permission/provider/types.d.ts +2 -2
  22. package/dist/permission/provider/types.d.ts.map +1 -1
  23. package/dist/permission/realm-scope/constants.d.ts +20 -0
  24. package/dist/permission/realm-scope/constants.d.ts.map +1 -0
  25. package/dist/permission/realm-scope/helpers.d.ts +23 -0
  26. package/dist/permission/realm-scope/helpers.d.ts.map +1 -0
  27. package/dist/permission/realm-scope/index.d.ts +3 -0
  28. package/dist/permission/realm-scope/index.d.ts.map +1 -0
  29. package/dist/permission/types.d.ts +37 -0
  30. package/dist/permission/types.d.ts.map +1 -1
  31. package/dist/policy/built-in/constants.d.ts +0 -2
  32. package/dist/policy/built-in/constants.d.ts.map +1 -1
  33. package/dist/policy/built-in/realm-match/evaluator.d.ts.map +1 -1
  34. package/dist/policy/built-in/realm-match/types.d.ts +6 -3
  35. package/dist/policy/built-in/realm-match/types.d.ts.map +1 -1
  36. package/dist/policy/built-in/realm-match/validator.d.ts.map +1 -1
  37. package/dist/policy/index.d.ts +1 -0
  38. package/dist/policy/index.d.ts.map +1 -1
  39. package/dist/policy/input.d.ts +26 -0
  40. package/dist/policy/input.d.ts.map +1 -0
  41. package/package.json +6 -10
  42. package/dist/permission/helpers/merge.d.ts +0 -3
  43. package/dist/permission/helpers/merge.d.ts.map +0 -1
package/dist/index.d.mts CHANGED
@@ -286,6 +286,50 @@ declare class PermissionBindingPolicyEvaluator implements IPolicyEvaluator {
286
286
  evaluate(value: Record<string, any>): Promise<PolicyEvaluationResult>;
287
287
  }
288
288
  //#endregion
289
+ //#region src/permission/realm-scope/constants.d.ts
290
+ /**
291
+ * Actor-relative realm reach of a permission grant.
292
+ *
293
+ * Total order (least -> most permissive): none < own < ownOrNull < any.
294
+ * A missing/unknown column coerces to `own` (fail-closed); `none` is only ever an
295
+ * explicit value (the grant reaches no realm at all).
296
+ */
297
+ declare enum RealmScope {
298
+ /** No reach — the grant matches no resource realm. */
299
+ NONE = "none",
300
+ /** Own realm only — resource realm must equal the actor's realm. */
301
+ OWN = "own",
302
+ /** Own realm or null/global resources (realm_id === null). */
303
+ OWN_OR_NULL = "ownOrNull",
304
+ /** Any realm, including null/global. */
305
+ ANY = "any"
306
+ }
307
+ /** Numeric restrictiveness order — internal to the fold/compare helpers. */
308
+ declare const REALM_SCOPE_ORDER: Record<`${RealmScope}`, number>;
309
+ //#endregion
310
+ //#region src/permission/realm-scope/helpers.d.ts
311
+ /**
312
+ * Coerce an arbitrary value to a RealmScope, defaulting to `own` for missing /
313
+ * null / unknown input (fail-closed). `none` is honoured only when explicit.
314
+ */
315
+ declare function normalizeRealmScope(value?: `${RealmScope}` | null): `${RealmScope}`;
316
+ /**
317
+ * Numeric comparison of two realm scopes by restrictiveness.
318
+ * Negative when `a` is more restrictive than `b`, positive when less.
319
+ */
320
+ declare function compareRealmScope(a?: `${RealmScope}` | null, b?: `${RealmScope}` | null): number;
321
+ /** Fold scopes to the MOST permissive (ordered max). Empty folds to `own`. */
322
+ declare function maxRealmScope(values: Array<`${RealmScope}` | null | undefined>): `${RealmScope}`;
323
+ /** Fold scopes to the MORE restrictive (ordered min) — used to CAP a grant. Empty folds to `own`. */
324
+ declare function minRealmScope(values: Array<`${RealmScope}` | null | undefined>): `${RealmScope}`;
325
+ /**
326
+ * Whether `scope` reaches the resource. The resource realm may be presented as a single
327
+ * id, `null` (global), or an array of realm ids — the array form (a resource that spans
328
+ * multiple realms) requires the scope to reach EVERY listed realm (unanimous, fail-closed),
329
+ * so any app/entity can express its realm via one or many keys under the canonical contract.
330
+ */
331
+ declare function realmScopeMatches(scope: `${RealmScope}` | null | undefined, resourceRealmId: string | string[] | null | undefined, identityRealmId: string | null | undefined, identityRealmName?: string | null): boolean;
332
+ //#endregion
289
333
  //#region src/policy/built-in/realm-match/types.d.ts
290
334
  interface RealmMatchPolicy extends BasePolicy {
291
335
  /**
@@ -307,10 +351,12 @@ interface RealmMatchPolicy extends BasePolicy {
307
351
  */
308
352
  attribute_null_match_all?: boolean;
309
353
  /**
310
- * Specifies whether the master realm of an identity should match all realm-id/name attributes, including null.
311
- * If true, the master realm can access any resource regardless of its realm value.
354
+ * Coarse, actor-relative realm reach (none/own/ownOrNull/any). When set, the evaluator
355
+ * runs in SCOPE MODE: it matches the resource realm read from the REALM_MATCH data key
356
+ * against the identity realm via `realmScopeMatches`, and ignores `attribute_name` /
357
+ * `attribute_null_match_all`. With no REALM_MATCH key present it neutral-passes.
312
358
  */
313
- identity_master_match_all?: boolean;
359
+ scope?: `${RealmScope}`;
314
360
  }
315
361
  //#endregion
316
362
  //#region src/policy/built-in/realm-match/validator.d.ts
@@ -420,8 +466,6 @@ declare const SystemPolicyName: {
420
466
  readonly IDENTITY: "system.identity";
421
467
  readonly PERMISSION_BINDING: "system.permission-binding";
422
468
  readonly REALM_MATCH: "system.realm-match";
423
- readonly REALM_BOUND: "system.realm-bound";
424
- readonly REALM_OR_GLOBAL: "system.realm-or-global";
425
469
  readonly CLIENT_NAMES_SELF_MANAGE: "system.client-names-self-manage";
426
470
  readonly ROBOT_NAMES_SELF_MANAGE: "system.robot-names-self-manage";
427
471
  readonly USER_NAMES_SELF_MANAGE: "system.user-names-self-manage";
@@ -457,6 +501,30 @@ declare const PolicyDefaultEvaluators: {
457
501
  readonly time: TimePolicyEvaluator;
458
502
  };
459
503
  //#endregion
504
+ //#region src/policy/input.d.ts
505
+ /**
506
+ * Typed seed for a permission evaluation's {@link PolicyData} bag.
507
+ *
508
+ * The well-known context keys are value-typed, so construction is discoverable and a
509
+ * wrong-typed value is a compile error. The trailing index signature keeps the bag **open** —
510
+ * a third-party evaluator may supply its own key without any change to this published type
511
+ * (the `access` evaluator set is deliberately extensible).
512
+ */
513
+ interface PolicyInput {
514
+ [BuiltInPolicyType.IDENTITY]?: IdentityPolicyData;
515
+ [BuiltInPolicyType.ATTRIBUTES]?: Record<string, any>;
516
+ [BuiltInPolicyType.REALM_MATCH]?: string | string[] | null;
517
+ [key: string]: any;
518
+ }
519
+ /**
520
+ * Build a {@link PolicyData} bag from a typed {@link PolicyInput} seed. Well-known keys
521
+ * (identity / attributes / realmMatch) are type-checked; unknown keys are accepted as-is.
522
+ *
523
+ * Prefer this over `new PolicyData({ ... })` at construction sites so the key vocabulary and
524
+ * per-key value types live in one place.
525
+ */
526
+ declare function definePolicyData(input?: PolicyInput): PolicyData;
527
+ //#endregion
460
528
  //#region src/permission/error/module.d.ts
461
529
  declare const PERMISSION_ERROR_INSTANCE: unique symbol;
462
530
  declare class PermissionError extends AuthupError {
@@ -479,20 +547,75 @@ type BasePermission = {
479
547
  realm_id?: string | null;
480
548
  decision_strategy?: `${DecisionStrategy}` | null;
481
549
  };
550
+ /**
551
+ * A raw permission grant: one permission with its policies and realm reach, as loaded from a
552
+ * role/identity junction. `aggregatePermissionPolicyBindings` groups these per permission into
553
+ * a `PermissionPolicyBindingAggregated` (the lossless disjunction of grants).
554
+ */
482
555
  type PermissionPolicyBinding = {
483
556
  permission: BasePermission;
484
557
  policies?: BasePolicy[];
558
+ /**
559
+ * Relative realm reach of this grant (none/own/ownOrNull/any). Absent coerces to the
560
+ * most restrictive `own` (fail-closed). NOT part of the binding identity key
561
+ * (see isPermissionPolicyBindingEqual).
562
+ */
563
+ realm_scope?: `${RealmScope}`;
564
+ };
565
+ /**
566
+ * One disjunction term of an aggregated binding: a single grant's realm reach paired with its
567
+ * own (single) policy. A disjunction-aware consumer ORs `realmScopeMatches(realm_scope) ∧ policy`
568
+ * across the grants of a permission.
569
+ */
570
+ type PermissionGrant = {
571
+ /** Relative realm reach (none/own/ownOrNull/any), normalized — fail-closed default `own`. */realm_scope: `${RealmScope}`;
572
+ /**
573
+ * The grant's policy: the raw junction policy (its `id` preserved, for propagation) for a
574
+ * single-policy grant, a composite for a multi-policy (Layer-1) binding, or `undefined`
575
+ * when the grant carries no restriction.
576
+ */
577
+ policy?: BasePolicy;
578
+ };
579
+ /**
580
+ * A permission together with the actor's disjunction of grants for it. Output of
581
+ * `aggregatePermissionPolicyBindings` — the honest, lossless replacement for the collapsed
582
+ * `PermissionPolicyBinding` (no top-level realm_scope/policies; the access decision is the
583
+ * OR over `grants`).
584
+ */
585
+ type PermissionPolicyBindingAggregated = {
586
+ permission: BasePermission;
587
+ grants: PermissionGrant[];
485
588
  };
486
589
  //#endregion
590
+ //#region src/permission/helpers/aggregate.d.ts
591
+ /**
592
+ * Group raw permission-policy bindings by permission key into the actor's disjunction of
593
+ * `(realm_scope, policy)` grants per permission — with NO lossy collapse. Every consumer
594
+ * (the binding evaluator, isSuperset, junction propagation, the memory provider) evaluates the
595
+ * grant disjunction directly, so each grant's realm reach stays paired with the policy that
596
+ * gates it.
597
+ */
598
+ declare function aggregatePermissionPolicyBindings(input: PermissionPolicyBinding[]): PermissionPolicyBindingAggregated[];
599
+ //#endregion
487
600
  //#region src/permission/helpers/equal.d.ts
488
- declare function isPermissionPolicyBindingEqual(a: PermissionPolicyBinding, b: PermissionPolicyBinding): boolean;
601
+ declare function isPermissionPolicyBindingEqual(a: {
602
+ permission: BasePermission;
603
+ }, b: {
604
+ permission: BasePermission;
605
+ }): boolean;
606
+ //#endregion
607
+ //#region src/permission/helpers/grant.d.ts
608
+ /**
609
+ * Whether the actor's `parent` grant covers the target's `child` grant: it reaches at least as
610
+ * far (ordered none < own < ownOrNull < any) AND its policy provably covers the child's
611
+ * (see `policyDominates`). Used per grant by `isSuperset` over the aggregated disjunction —
612
+ * every child grant must be dominated by SOME parent grant.
613
+ */
614
+ declare function grantDominates(parent: PermissionGrant, child: PermissionGrant): boolean;
489
615
  //#endregion
490
616
  //#region src/permission/helpers/key.d.ts
491
617
  declare function buildPermissionKey(input: BasePermission): string;
492
618
  //#endregion
493
- //#region src/permission/helpers/merge.d.ts
494
- declare function mergePermissionPolicyBindings(input: PermissionPolicyBinding[]): PermissionPolicyBinding[];
495
- //#endregion
496
619
  //#region src/permission/provider/types.d.ts
497
620
  type PermissionGetOptions = {
498
621
  name: string;
@@ -500,14 +623,14 @@ type PermissionGetOptions = {
500
623
  realmId?: string | null;
501
624
  };
502
625
  interface IPermissionProvider {
503
- findOne(criteria: PermissionGetOptions): Promise<PermissionPolicyBinding | null>;
626
+ findOne(criteria: PermissionGetOptions): Promise<PermissionPolicyBindingAggregated | null>;
504
627
  }
505
628
  //#endregion
506
629
  //#region src/permission/provider/memory.d.ts
507
630
  declare class PermissionMemoryProvider implements IPermissionProvider {
508
- protected items: Record<string, PermissionPolicyBinding>;
631
+ protected items: Record<string, PermissionPolicyBindingAggregated>;
509
632
  constructor(items?: PermissionPolicyBinding[]);
510
- findOne(options: PermissionGetOptions): Promise<PermissionPolicyBinding | null>;
633
+ findOne(options: PermissionGetOptions): Promise<PermissionPolicyBindingAggregated | null>;
511
634
  setMany(input: PermissionPolicyBinding[]): void;
512
635
  }
513
636
  //#endregion
@@ -533,7 +656,7 @@ type PermissionEvaluationContext = {
533
656
  name: string | string[];
534
657
  realmId?: string | null;
535
658
  clientId?: string | null;
536
- input?: PolicyData;
659
+ data?: PolicyData;
537
660
  options?: PermissionEvaluationOptions;
538
661
  };
539
662
  //#endregion
@@ -547,12 +670,12 @@ declare class PermissionEvaluator implements IPermissionEvaluator {
547
670
  protected findOne(input: string, overrides?: {
548
671
  realmId?: string | null;
549
672
  clientId?: string | null;
550
- }): Promise<PermissionPolicyBinding | null>;
673
+ }): Promise<PermissionPolicyBindingAggregated | null>;
551
674
  evaluate(ctx: PermissionEvaluationContext): Promise<void>;
552
675
  evaluateOneOf(ctx: PermissionEvaluationContext): Promise<void>;
553
676
  preEvaluate(ctx: PermissionEvaluationContext): Promise<void>;
554
677
  preEvaluateOneOf(ctx: PermissionEvaluationContext): Promise<void>;
555
678
  }
556
679
  //#endregion
557
- export { AttributeNamesPolicy, AttributeNamesPolicyEvaluator, AttributeNamesPolicyValidator, AttributesPolicy, AttributesPolicyEvaluator, AttributesPolicyQuery, AttributesPolicyValidator, BasePermission, BasePolicy, BuiltInPolicies, BuiltInPolicyType, BuiltInPolicyTypeMap, CompositePolicy, CompositePolicyEvaluator, CompositePolicyValidator, DatePolicy, DatePolicyEvaluator, DatePolicyValidator, IPermissionEvaluator, IPermissionProvider, IPolicyData, IPolicyEngine, IPolicyEvaluator, IdentityPolicy, IdentityPolicyData, IdentityPolicyEvaluator, IdentityPolicyValidator, PERMISSION_ERROR_INSTANCE, POLICY_ERROR_INSTANCE, PermissionBindingPolicy, PermissionBindingPolicyEvaluator, PermissionBindingPolicyValidator, PermissionError, PermissionEvaluationContext, PermissionEvaluationOptions, PermissionEvaluator, PermissionEvaluatorOptions, PermissionGetOptions, PermissionMemoryProvider, PermissionPolicyBinding, PolicyData, PolicyDefaultEvaluators, PolicyEngine, PolicyError, PolicyEvaluationContext, PolicyEvaluationContextInput, PolicyEvaluationResult, PolicyEvaluators, PolicyIssue, PolicyIssueCode, PolicyIssueGroup, PolicyIssueItem, PolicyIssueSeverity, PolicyWithType, RealmMatchPolicy, RealmMatchPolicyEvaluator, RealmMatchPolicyValidator, SystemPolicyName, TimePolicy, TimePolicyEvaluator, TimePolicyInterval, TimePolicyValidator, buildPermissionKey, defineAttributesPolicy, definePolicyEvaluationContext, definePolicyIssueGroup, definePolicyIssueItem, definePolicyWithType, isCompositePolicy, isIntervalForDayOfMonth, isIntervalForDayOfWeek, isIntervalForDayOfYear, isPermissionError, isPermissionPolicyBindingEqual, isPolicyError, maybeInvertPolicyOutcome, mergePermissionPolicyBindings };
680
+ export { AttributeNamesPolicy, AttributeNamesPolicyEvaluator, AttributeNamesPolicyValidator, AttributesPolicy, AttributesPolicyEvaluator, AttributesPolicyQuery, AttributesPolicyValidator, BasePermission, BasePolicy, BuiltInPolicies, BuiltInPolicyType, BuiltInPolicyTypeMap, CompositePolicy, CompositePolicyEvaluator, CompositePolicyValidator, DatePolicy, DatePolicyEvaluator, DatePolicyValidator, IPermissionEvaluator, IPermissionProvider, IPolicyData, IPolicyEngine, IPolicyEvaluator, IdentityPolicy, IdentityPolicyData, IdentityPolicyEvaluator, IdentityPolicyValidator, PERMISSION_ERROR_INSTANCE, POLICY_ERROR_INSTANCE, PermissionBindingPolicy, PermissionBindingPolicyEvaluator, PermissionBindingPolicyValidator, PermissionError, PermissionEvaluationContext, PermissionEvaluationOptions, PermissionEvaluator, PermissionEvaluatorOptions, PermissionGetOptions, PermissionGrant, PermissionMemoryProvider, PermissionPolicyBinding, PermissionPolicyBindingAggregated, PolicyData, PolicyDefaultEvaluators, PolicyEngine, PolicyError, PolicyEvaluationContext, PolicyEvaluationContextInput, PolicyEvaluationResult, PolicyEvaluators, PolicyInput, PolicyIssue, PolicyIssueCode, PolicyIssueGroup, PolicyIssueItem, PolicyIssueSeverity, PolicyWithType, REALM_SCOPE_ORDER, RealmMatchPolicy, RealmMatchPolicyEvaluator, RealmMatchPolicyValidator, RealmScope, SystemPolicyName, TimePolicy, TimePolicyEvaluator, TimePolicyInterval, TimePolicyValidator, aggregatePermissionPolicyBindings, buildPermissionKey, compareRealmScope, defineAttributesPolicy, definePolicyData, definePolicyEvaluationContext, definePolicyIssueGroup, definePolicyIssueItem, definePolicyWithType, grantDominates, isCompositePolicy, isIntervalForDayOfMonth, isIntervalForDayOfWeek, isIntervalForDayOfYear, isPermissionError, isPermissionPolicyBindingEqual, isPolicyError, maxRealmScope, maybeInvertPolicyOutcome, minRealmScope, normalizeRealmScope, realmScopeMatches };
558
681
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/policy/data.ts","../src/policy/evaluation/context/types.ts","../src/policy/evaluation/context/define.ts","../src/policy/evaluation/types.ts","../src/policy/types.ts","../src/policy/engine/types.ts","../src/policy/engine/module.ts","../src/policy/issue/constants.ts","../src/policy/issue/types.ts","../src/policy/issue/define.ts","../src/policy/error/module.ts","../src/policy/error/check.ts","../src/policy/helpers/invert.ts","../src/policy/built-in/attribute-names/types.ts","../src/policy/built-in/attribute-names/validator.ts","../src/policy/built-in/attributes/types.ts","../src/policy/built-in/attributes/define.ts","../src/policy/built-in/attributes/validator.ts","../src/policy/built-in/attributes/evaluator.ts","../src/policy/built-in/attribute-names/evaluator.ts","../src/policy/built-in/composite/types.ts","../src/policy/built-in/composite/validator.ts","../src/policy/built-in/composite/evaluator.ts","../src/policy/built-in/composite/helper.ts","../src/policy/built-in/date/types.ts","../src/policy/built-in/date/validator.ts","../src/policy/built-in/date/evaluator.ts","../src/policy/built-in/identity/types.ts","../src/policy/built-in/identity/data/validator.ts","../src/policy/built-in/identity/validator.ts","../src/policy/built-in/identity/evaluator.ts","../src/policy/built-in/permission-binding/types.ts","../src/policy/built-in/permission-binding/validator.ts","../src/policy/built-in/permission-binding/module.ts","../src/policy/built-in/realm-match/types.ts","../src/policy/built-in/realm-match/validator.ts","../src/policy/built-in/realm-match/evaluator.ts","../src/policy/built-in/time/constants.ts","../src/policy/built-in/time/types.ts","../src/policy/built-in/time/validator.ts","../src/policy/built-in/time/evaluator.ts","../src/policy/built-in/time/helpers.ts","../src/policy/built-in/constants.ts","../src/policy/built-in/types.ts","../src/policy/built-in/define.ts","../src/policy/constants.ts","../src/permission/error/module.ts","../src/permission/error/check.ts","../src/permission/types.ts","../src/permission/helpers/equal.ts","../src/permission/helpers/key.ts","../src/permission/helpers/merge.ts","../src/permission/provider/types.ts","../src/permission/provider/memory.ts","../src/permission/evaluator/types.ts","../src/permission/evaluator/module.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/policy/data.ts","../src/policy/evaluation/context/types.ts","../src/policy/evaluation/context/define.ts","../src/policy/evaluation/types.ts","../src/policy/types.ts","../src/policy/engine/types.ts","../src/policy/engine/module.ts","../src/policy/issue/constants.ts","../src/policy/issue/types.ts","../src/policy/issue/define.ts","../src/policy/error/module.ts","../src/policy/error/check.ts","../src/policy/helpers/invert.ts","../src/policy/built-in/attribute-names/types.ts","../src/policy/built-in/attribute-names/validator.ts","../src/policy/built-in/attributes/types.ts","../src/policy/built-in/attributes/define.ts","../src/policy/built-in/attributes/validator.ts","../src/policy/built-in/attributes/evaluator.ts","../src/policy/built-in/attribute-names/evaluator.ts","../src/policy/built-in/composite/types.ts","../src/policy/built-in/composite/validator.ts","../src/policy/built-in/composite/evaluator.ts","../src/policy/built-in/composite/helper.ts","../src/policy/built-in/date/types.ts","../src/policy/built-in/date/validator.ts","../src/policy/built-in/date/evaluator.ts","../src/policy/built-in/identity/types.ts","../src/policy/built-in/identity/data/validator.ts","../src/policy/built-in/identity/validator.ts","../src/policy/built-in/identity/evaluator.ts","../src/policy/built-in/permission-binding/types.ts","../src/policy/built-in/permission-binding/validator.ts","../src/policy/built-in/permission-binding/module.ts","../src/permission/realm-scope/constants.ts","../src/permission/realm-scope/helpers.ts","../src/policy/built-in/realm-match/types.ts","../src/policy/built-in/realm-match/validator.ts","../src/policy/built-in/realm-match/evaluator.ts","../src/policy/built-in/time/constants.ts","../src/policy/built-in/time/types.ts","../src/policy/built-in/time/validator.ts","../src/policy/built-in/time/evaluator.ts","../src/policy/built-in/time/helpers.ts","../src/policy/built-in/constants.ts","../src/policy/built-in/types.ts","../src/policy/built-in/define.ts","../src/policy/constants.ts","../src/policy/input.ts","../src/permission/error/module.ts","../src/permission/error/check.ts","../src/permission/types.ts","../src/permission/helpers/aggregate.ts","../src/permission/helpers/equal.ts","../src/permission/helpers/grant.ts","../src/permission/helpers/key.ts","../src/permission/provider/types.ts","../src/permission/provider/memory.ts","../src/permission/evaluator/types.ts","../src/permission/evaluator/module.ts"],"mappings":"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"}