@aventara/core 1.0.0-rc.1 → 1.0.0-rc.10

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 (228) hide show
  1. package/CHANGELOG.md +943 -16
  2. package/ERRORS.md +142 -0
  3. package/README.md +274 -16
  4. package/dist/adapters/adapter-discovery-diagnostic.guidance.d.ts +6 -0
  5. package/dist/adapters/adapter-discovery-diagnostic.guidance.js +7 -0
  6. package/dist/adapters/adapter-field.d.ts +22 -0
  7. package/dist/adapters/adapter-identifier.d.ts +9 -0
  8. package/dist/adapters/adapter-identifier.js +6 -1
  9. package/dist/adapters/adapter-model.d.ts +9 -0
  10. package/dist/adapters/adapter-operation.d.ts +18 -3
  11. package/dist/adapters/adapter-resource.d.ts +5 -0
  12. package/dist/adapters/adapter.interface.d.ts +10 -0
  13. package/dist/avz/avz.d.ts +1 -1
  14. package/dist/avz/json-shape.registry.d.ts +2 -1
  15. package/dist/compiler/contract-compiler-diagnostic.guidance.d.ts +6 -0
  16. package/dist/compiler/contract-compiler-diagnostic.guidance.js +97 -0
  17. package/dist/compiler/contract.compiler.d.ts +6 -0
  18. package/dist/compiler/contract.compiler.js +227 -24
  19. package/dist/compiler/managed-elsewhere.projector.d.ts +52 -0
  20. package/dist/compiler/managed-elsewhere.projector.js +179 -0
  21. package/dist/compiler/managed-elsewhere.validator.d.ts +9 -0
  22. package/dist/compiler/managed-elsewhere.validator.js +74 -0
  23. package/dist/config/computed-fields.d.ts +62 -0
  24. package/dist/config/computed-fields.js +73 -0
  25. package/dist/config/config-diagnostic.guidance.d.ts +6 -0
  26. package/dist/config/config-diagnostic.guidance.js +32 -0
  27. package/dist/config/config.resolver.d.ts +24 -0
  28. package/dist/config/config.resolver.js +65 -0
  29. package/dist/config/config.validator.js +222 -8
  30. package/dist/config/define-resource.d.ts +1 -5
  31. package/dist/config/entrypoint.normalizer.d.ts +3 -2
  32. package/dist/config/exact-framework-config.d.ts +67 -22
  33. package/dist/config/field-compute.resolver.d.ts +2 -0
  34. package/dist/config/field-compute.resolver.js +8 -0
  35. package/dist/config/framework-config.d.ts +53 -15
  36. package/dist/config/framework-resources-config.d.ts +25 -14
  37. package/dist/config/pipeline-config.d.ts +4 -4
  38. package/dist/config/pipeline-tree.resolver.d.ts +2 -2
  39. package/dist/contracts/access-route.rules.d.ts +10 -0
  40. package/dist/contracts/access-route.rules.js +45 -0
  41. package/dist/contracts/capability.d.ts +26 -1
  42. package/dist/contracts/capability.js +20 -0
  43. package/dist/contracts/client-contract-structure.validator.d.ts +301 -89
  44. package/dist/contracts/client-contract-structure.validator.js +37 -2
  45. package/dist/contracts/contract-access.d.ts +29 -0
  46. package/dist/contracts/contract-access.js +1 -0
  47. package/dist/contracts/contract-canonicalizer.d.ts +9 -1
  48. package/dist/contracts/contract-canonicalizer.js +30 -4
  49. package/dist/contracts/contract-hash.d.ts +0 -1
  50. package/dist/contracts/contract-hash.js +1 -1
  51. package/dist/contracts/contract.d.ts +27 -1
  52. package/dist/contracts/field.d.ts +58 -1
  53. package/dist/contracts/json-schema.projector.d.ts +11 -0
  54. package/dist/contracts/json-schema.projector.js +78 -0
  55. package/dist/contracts/scalar-value-type.d.ts +3 -1
  56. package/dist/framework/access-facade.d.ts +116 -0
  57. package/dist/framework/access-facade.js +120 -0
  58. package/dist/framework/contract-view.d.ts +120 -16
  59. package/dist/framework/framework-construction.error.d.ts +14 -4
  60. package/dist/framework/framework-construction.error.js +18 -2
  61. package/dist/framework/framework.d.ts +26 -5
  62. package/dist/framework/framework.factory.d.ts +1 -1
  63. package/dist/framework/framework.factory.js +115 -23
  64. package/dist/framework/operation-facade.d.ts +80 -13
  65. package/dist/framework/operation-facade.js +2 -1
  66. package/dist/index.d.ts +17 -5
  67. package/dist/index.js +1 -0
  68. package/dist/internal.d.ts +7 -2
  69. package/dist/internal.js +6 -0
  70. package/dist/operations/database-refusal.d.ts +51 -0
  71. package/dist/operations/database-refusal.js +45 -0
  72. package/dist/operations/operation-arguments.d.ts +148 -60
  73. package/dist/operations/operation-call.d.ts +9 -5
  74. package/dist/operations/operation-result.d.ts +6 -4
  75. package/dist/operations/operation-validator-core.js +159 -36
  76. package/dist/operations/operation-validator.d.ts +1 -1
  77. package/dist/operations/structural-limits.walker.d.ts +1 -1
  78. package/dist/operations/validation-code.guidance.d.ts +6 -0
  79. package/dist/operations/validation-code.guidance.js +90 -0
  80. package/dist/operations/write-scope.resolver.d.ts +4 -0
  81. package/dist/operations/write-scope.resolver.js +2 -0
  82. package/dist/policy/access-provider.interface.d.ts +91 -0
  83. package/dist/policy/access-provider.interface.js +1 -0
  84. package/dist/policy/access-provider.registry.d.ts +17 -0
  85. package/dist/policy/access-provider.registry.js +15 -0
  86. package/dist/policy/access-question.d.ts +20 -0
  87. package/dist/policy/access-question.js +1 -0
  88. package/dist/policy/access-question.registry.d.ts +5 -0
  89. package/dist/policy/access-question.registry.js +19 -0
  90. package/dist/policy/access-question.runtime.d.ts +36 -0
  91. package/dist/policy/access-question.runtime.js +297 -0
  92. package/dist/policy/access-verb.table.d.ts +56 -0
  93. package/dist/policy/access-verb.table.js +21 -0
  94. package/dist/policy/access-verbs.d.ts +46 -0
  95. package/dist/policy/access-verbs.js +1 -0
  96. package/dist/policy/policy-admission.d.ts +20 -0
  97. package/dist/policy/policy-admission.js +409 -0
  98. package/dist/policy/policy-after-update.runtime.d.ts +79 -0
  99. package/dist/policy/policy-after-update.runtime.js +208 -0
  100. package/dist/policy/policy-condition.d.ts +15 -0
  101. package/dist/policy/policy-condition.js +36 -0
  102. package/dist/policy/policy-engine.d.ts +205 -0
  103. package/dist/policy/policy-engine.js +1 -0
  104. package/dist/policy/policy-named-rows.d.ts +18 -0
  105. package/dist/policy/policy-named-rows.js +51 -0
  106. package/dist/policy/policy-nested-write.runtime.d.ts +44 -0
  107. package/dist/policy/policy-nested-write.runtime.js +545 -0
  108. package/dist/policy/policy-read.runtime.d.ts +81 -0
  109. package/dist/policy/policy-read.runtime.js +503 -0
  110. package/dist/policy/policy-reference-write.runtime.d.ts +51 -0
  111. package/dist/policy/policy-reference-write.runtime.js +345 -0
  112. package/dist/policy/policy-request.d.ts +41 -0
  113. package/dist/policy/policy-request.js +63 -0
  114. package/dist/policy/policy-session.d.ts +106 -0
  115. package/dist/policy/policy-session.js +295 -0
  116. package/dist/policy/policy-startup.validator.d.ts +10 -0
  117. package/dist/policy/policy-startup.validator.js +112 -0
  118. package/dist/policy/policy-write.runtime.d.ts +39 -0
  119. package/dist/policy/policy-write.runtime.js +532 -0
  120. package/dist/prebuilt/core-version.generated.d.ts +2 -0
  121. package/dist/prebuilt/core-version.generated.js +1 -0
  122. package/dist/prebuilt/prebuilt-changes.d.ts +29 -0
  123. package/dist/prebuilt/prebuilt-changes.js +65 -0
  124. package/dist/prebuilt/prebuilt-contracts.d.ts +40 -0
  125. package/dist/prebuilt/prebuilt-contracts.emitter.d.ts +16 -0
  126. package/dist/prebuilt/prebuilt-contracts.emitter.js +50 -0
  127. package/dist/prebuilt/prebuilt-contracts.js +1 -0
  128. package/dist/prebuilt/prebuilt-contracts.loader.d.ts +19 -0
  129. package/dist/prebuilt/prebuilt-contracts.loader.js +77 -0
  130. package/dist/prebuilt/prebuilt-inputs.fingerprint.d.ts +16 -0
  131. package/dist/prebuilt/prebuilt-inputs.fingerprint.js +229 -0
  132. package/dist/protocol/absent-route.responder.d.ts +9 -27
  133. package/dist/protocol/absent-route.responder.js +36 -3
  134. package/dist/protocol/contract-document.responder.d.ts +2 -1
  135. package/dist/protocol/http-request.decoder.d.ts +19 -3
  136. package/dist/protocol/http-request.decoder.js +24 -1
  137. package/dist/protocol/http-request.reader.d.ts +6 -3
  138. package/dist/protocol/http-request.reader.js +1 -0
  139. package/dist/protocol/http-response.encoder.js +2 -2
  140. package/dist/protocol/protocol-headers.d.ts +3 -3
  141. package/dist/protocol/protocol-surface.d.ts +6 -1
  142. package/dist/protocol/protocol-surface.js +7 -0
  143. package/dist/protocol/protocol.binder.d.ts +16 -1
  144. package/dist/protocol/protocol.binder.js +4 -1
  145. package/dist/protocol/protocol.handler.d.ts +12 -1
  146. package/dist/protocol/protocol.handler.js +86 -17
  147. package/dist/runtime/caller-data.copier.d.ts +18 -3
  148. package/dist/runtime/caller-data.copier.js +21 -8
  149. package/dist/runtime/caller-data.door.d.ts +13 -6
  150. package/dist/runtime/computed-read-runtime.d.ts +6 -1
  151. package/dist/runtime/computed-read-runtime.js +232 -45
  152. package/dist/runtime/computed-value.error.d.ts +3 -2
  153. package/dist/runtime/computed-value.error.js +3 -2
  154. package/dist/runtime/context-executor.runtime.d.ts +4 -3
  155. package/dist/runtime/context-executor.runtime.js +4 -2
  156. package/dist/runtime/core-class.brand.d.ts +10 -0
  157. package/dist/runtime/core-class.brand.js +21 -0
  158. package/dist/runtime/create-requirement.d.ts +31 -5
  159. package/dist/runtime/create-requirement.js +129 -21
  160. package/dist/runtime/decimal.d.ts +14 -0
  161. package/dist/runtime/decimal.js +21 -0
  162. package/dist/runtime/diagnostics-reporter.d.ts +44 -9
  163. package/dist/runtime/diagnostics-reporter.js +13 -1
  164. package/dist/runtime/error-boundary.d.ts +9 -2
  165. package/dist/runtime/error-boundary.js +12 -0
  166. package/dist/runtime/error-guidance.d.ts +12 -0
  167. package/dist/runtime/error-guidance.js +1 -0
  168. package/dist/runtime/error.catalog.d.ts +49 -0
  169. package/dist/runtime/error.catalog.js +49 -0
  170. package/dist/runtime/execution-options.d.ts +8 -0
  171. package/dist/runtime/field-check.evaluator.d.ts +0 -2
  172. package/dist/runtime/field-check.evaluator.js +1 -1
  173. package/dist/runtime/field-compute.d.ts +11 -10
  174. package/dist/runtime/field-stage.runtime.d.ts +3 -1
  175. package/dist/runtime/field-stage.runtime.js +8 -4
  176. package/dist/runtime/field-validator.runtime.d.ts +19 -1
  177. package/dist/runtime/field-validator.runtime.js +47 -8
  178. package/dist/runtime/framework-error.js +9 -0
  179. package/dist/runtime/framework-warning.emitter.d.ts +6 -0
  180. package/dist/runtime/framework-warning.emitter.js +8 -0
  181. package/dist/runtime/json-value.d.ts +10 -5
  182. package/dist/runtime/level-lifecycle.runtime.d.ts +4 -3
  183. package/dist/runtime/level-lifecycle.runtime.js +3 -5
  184. package/dist/runtime/mutation-planner.d.ts +1 -6
  185. package/dist/runtime/mutation-planner.js +3 -14
  186. package/dist/runtime/operation-code.guidance.d.ts +6 -0
  187. package/dist/runtime/operation-code.guidance.js +167 -0
  188. package/dist/runtime/operation-request.d.ts +16 -9
  189. package/dist/runtime/operation-runtime.d.ts +35 -17
  190. package/dist/runtime/operation-runtime.js +220 -49
  191. package/dist/runtime/outcome-mapper.d.ts +2 -1
  192. package/dist/runtime/output-validator.d.ts +1 -1
  193. package/dist/runtime/owned-execution.registry.d.ts +13 -3
  194. package/dist/runtime/pipe-output.validator.d.ts +10 -0
  195. package/dist/runtime/pipe-output.validator.js +4 -2
  196. package/dist/runtime/pipeline.d.ts +47 -22
  197. package/dist/runtime/readonly-value.d.ts +20 -5
  198. package/dist/runtime/readonly-value.js +74 -26
  199. package/dist/runtime/referential-action.d.ts +1 -1
  200. package/dist/runtime/scalar-runtime.d.ts +4 -11
  201. package/dist/runtime/scalar-runtime.js +91 -22
  202. package/dist/runtime/unsent-value.normalizer.d.ts +15 -0
  203. package/dist/runtime/unsent-value.normalizer.js +128 -0
  204. package/dist/transactions/operation-arguments-encoder.js +8 -3
  205. package/dist/transactions/operation-fingerprint.js +2 -2
  206. package/dist/transactions/sql-statement.d.ts +10 -2
  207. package/dist/transactions/sql-statement.validator.d.ts +2 -2
  208. package/dist/transactions/sql-statement.validator.js +38 -5
  209. package/dist/transactions/transaction-envelope.d.ts +5 -4
  210. package/dist/transactions/transaction-integrity-error.js +2 -0
  211. package/dist/transactions/transaction-plan-assembler.d.ts +12 -5
  212. package/dist/transactions/transaction-plan-assembler.js +48 -10
  213. package/dist/transactions/transaction-plan-validator.d.ts +23 -7
  214. package/dist/transactions/transaction-plan-validator.js +27 -1
  215. package/dist/transactions/transaction-reference-resolver.d.ts +3 -2
  216. package/dist/transactions/transaction-reference-validator.d.ts +43 -3
  217. package/dist/transactions/transaction-reference-validator.js +83 -57
  218. package/dist/transactions/transaction-reference.d.ts +1 -1
  219. package/dist/transactions/transaction-reference.js +5 -0
  220. package/dist/transactions/transaction-request.d.ts +8 -8
  221. package/dist/transactions/transaction-runtime.d.ts +5 -2
  222. package/dist/transactions/transaction-runtime.js +79 -27
  223. package/dist/transactions/transaction-settlement.runtime.d.ts +4 -3
  224. package/dist/transactions/transaction-slot-path-error.js +2 -0
  225. package/dist/transactions/transaction-stage.runtime.d.ts +5 -3
  226. package/dist/transactions/transaction-stage.runtime.js +7 -4
  227. package/package.json +6 -5
  228. package/src/runtime/field-check.evaluator.ts +1 -1
@@ -1,58 +1,5 @@
1
1
  import type { AvContractClient } from "./contract.js";
2
2
  import type { JsonSchema } from "./json-shape.js";
3
- /**
4
- * Whether an untrusted value is an `AvContractClient`: every member present, of its JSON
5
- * kind, inside its closed vocabulary, and nothing else. An enum's values must be
6
- * distinct. Reads every member it judges and never throws on any input; a value that
7
- * is not JSON at all is reported.
8
- */
9
- /** A literal a closed vocabulary can hold. */
10
- type Literal = string | number | boolean;
11
- /**
12
- * One node of a structure description. Passive data — no callbacks — so a schema
13
- * is introspectable and {@link Structured} can decode it into a type.
14
- */
15
- export type StructureNode = {
16
- readonly is: "string";
17
- } | {
18
- readonly is: "number";
19
- } | {
20
- readonly is: "boolean";
21
- } | {
22
- readonly is: "literal";
23
- readonly values: readonly Literal[];
24
- } | {
25
- readonly is: "prefixed";
26
- readonly prefix: string;
27
- } | {
28
- readonly is: "list";
29
- readonly item: StructureNode;
30
- /** The fewest entries it holds: 0, 1, or 2 (a pair and more). */
31
- readonly minimum: 0 | 1 | 2;
32
- /** No entry repeats an earlier one. Not a type fact: `Structured` ignores it. */
33
- readonly unique: boolean;
34
- } | {
35
- readonly is: "registry";
36
- readonly entry: StructureNode;
37
- } | {
38
- readonly is: "object";
39
- readonly required: Readonly<Record<string, StructureNode>>;
40
- readonly optional: Readonly<Record<string, StructureNode>>;
41
- } | {
42
- /** Alternatives told apart by one required literal member. */
43
- readonly is: "variants";
44
- readonly key: string;
45
- readonly arms: Readonly<Record<string, StructureNode>>;
46
- } | {
47
- readonly is: "union";
48
- readonly arms: readonly StructureNode[];
49
- } | {
50
- /**
51
- * A Json Shape's schema: recursive, so judged by its own reader
52
- * ({@link jsonSchemaDefect}) rather than spelled out in nodes.
53
- */
54
- readonly is: "jsonSchema";
55
- };
56
3
  /**
57
4
  * The TypeScript type a structure description admits, dispatched through a
58
5
  * table with one entry per node kind.
@@ -70,6 +17,7 @@ type StructuredBy<N> = {
70
17
  readonly prefixed: N extends {
71
18
  readonly prefix: infer P extends string;
72
19
  } ? `${P}${string}` : never;
20
+ readonly route: string;
73
21
  readonly list: N extends {
74
22
  readonly item: infer I;
75
23
  readonly minimum: infer E;
@@ -197,6 +145,24 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
197
145
  readonly minimum: 0;
198
146
  readonly unique: false;
199
147
  };
148
+ readonly filterModes: {
149
+ readonly is: "list";
150
+ readonly item: {
151
+ readonly is: "literal";
152
+ readonly values: readonly ["default", "sensitive", "insensitive"];
153
+ };
154
+ readonly minimum: 0;
155
+ readonly unique: false;
156
+ };
157
+ readonly pathFilterModes: {
158
+ readonly is: "list";
159
+ readonly item: {
160
+ readonly is: "literal";
161
+ readonly values: readonly ["default", "sensitive", "insensitive"];
162
+ };
163
+ readonly minimum: 0;
164
+ readonly unique: false;
165
+ };
200
166
  readonly order: {
201
167
  readonly is: "boolean";
202
168
  };
@@ -480,6 +446,10 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
480
446
  readonly minimum: 0;
481
447
  readonly unique: false;
482
448
  };
449
+ readonly governed: {
450
+ readonly is: "literal";
451
+ readonly values: readonly [true];
452
+ };
483
453
  };
484
454
  };
485
455
  readonly relation: {
@@ -613,7 +583,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
613
583
  readonly is: "list";
614
584
  readonly item: {
615
585
  readonly is: "literal";
616
- readonly values: readonly ["nested", "bulkWrite"];
586
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
617
587
  };
618
588
  readonly minimum: 1;
619
589
  readonly unique: false;
@@ -648,7 +618,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
648
618
  readonly is: "list";
649
619
  readonly item: {
650
620
  readonly is: "literal";
651
- readonly values: readonly ["nested", "bulkWrite"];
621
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
652
622
  };
653
623
  readonly minimum: 1;
654
624
  readonly unique: false;
@@ -664,7 +634,23 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
664
634
  };
665
635
  };
666
636
  };
667
- readonly optional: Record<never, never>;
637
+ readonly optional: {
638
+ readonly inverse: {
639
+ readonly is: "string";
640
+ };
641
+ readonly referenceFields: {
642
+ readonly is: "list";
643
+ readonly item: {
644
+ readonly is: "string";
645
+ };
646
+ readonly minimum: 1;
647
+ readonly unique: false;
648
+ };
649
+ readonly governed: {
650
+ readonly is: "literal";
651
+ readonly values: readonly [true];
652
+ };
653
+ };
668
654
  };
669
655
  };
670
656
  };
@@ -706,7 +692,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
706
692
  readonly optional: {
707
693
  readonly write: {
708
694
  readonly is: "literal";
709
- readonly values: readonly ["nested", "bulkWrite"];
695
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
710
696
  };
711
697
  };
712
698
  }, {
@@ -714,7 +700,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
714
700
  readonly required: {
715
701
  readonly write: {
716
702
  readonly is: "literal";
717
- readonly values: readonly ["nested", "bulkWrite"];
703
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
718
704
  };
719
705
  };
720
706
  readonly optional: {
@@ -741,7 +727,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
741
727
  readonly optional: {
742
728
  readonly write: {
743
729
  readonly is: "literal";
744
- readonly values: readonly ["nested", "bulkWrite"];
730
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
745
731
  };
746
732
  };
747
733
  }, {
@@ -749,7 +735,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
749
735
  readonly required: {
750
736
  readonly write: {
751
737
  readonly is: "literal";
752
- readonly values: readonly ["nested", "bulkWrite"];
738
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
753
739
  };
754
740
  };
755
741
  readonly optional: {
@@ -776,7 +762,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
776
762
  readonly optional: {
777
763
  readonly write: {
778
764
  readonly is: "literal";
779
- readonly values: readonly ["nested", "bulkWrite"];
765
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
780
766
  };
781
767
  };
782
768
  }, {
@@ -784,7 +770,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
784
770
  readonly required: {
785
771
  readonly write: {
786
772
  readonly is: "literal";
787
- readonly values: readonly ["nested", "bulkWrite"];
773
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
788
774
  };
789
775
  };
790
776
  readonly optional: {
@@ -811,7 +797,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
811
797
  readonly optional: {
812
798
  readonly write: {
813
799
  readonly is: "literal";
814
- readonly values: readonly ["nested", "bulkWrite"];
800
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
815
801
  };
816
802
  };
817
803
  }, {
@@ -819,7 +805,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
819
805
  readonly required: {
820
806
  readonly write: {
821
807
  readonly is: "literal";
822
- readonly values: readonly ["nested", "bulkWrite"];
808
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
823
809
  };
824
810
  };
825
811
  readonly optional: {
@@ -852,7 +838,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
852
838
  readonly optional: {
853
839
  readonly write: {
854
840
  readonly is: "literal";
855
- readonly values: readonly ["nested", "bulkWrite"];
841
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
856
842
  };
857
843
  };
858
844
  }, {
@@ -860,7 +846,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
860
846
  readonly required: {
861
847
  readonly write: {
862
848
  readonly is: "literal";
863
- readonly values: readonly ["nested", "bulkWrite"];
849
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
864
850
  };
865
851
  };
866
852
  readonly optional: {
@@ -887,7 +873,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
887
873
  readonly optional: {
888
874
  readonly write: {
889
875
  readonly is: "literal";
890
- readonly values: readonly ["nested", "bulkWrite"];
876
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
891
877
  };
892
878
  };
893
879
  }, {
@@ -895,7 +881,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
895
881
  readonly required: {
896
882
  readonly write: {
897
883
  readonly is: "literal";
898
- readonly values: readonly ["nested", "bulkWrite"];
884
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
899
885
  };
900
886
  };
901
887
  readonly optional: {
@@ -922,7 +908,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
922
908
  readonly optional: {
923
909
  readonly write: {
924
910
  readonly is: "literal";
925
- readonly values: readonly ["nested", "bulkWrite"];
911
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
926
912
  };
927
913
  };
928
914
  }, {
@@ -930,7 +916,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
930
916
  readonly required: {
931
917
  readonly write: {
932
918
  readonly is: "literal";
933
- readonly values: readonly ["nested", "bulkWrite"];
919
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
934
920
  };
935
921
  };
936
922
  readonly optional: {
@@ -963,7 +949,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
963
949
  readonly optional: {
964
950
  readonly write: {
965
951
  readonly is: "literal";
966
- readonly values: readonly ["nested", "bulkWrite"];
952
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
967
953
  };
968
954
  };
969
955
  }, {
@@ -971,7 +957,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
971
957
  readonly required: {
972
958
  readonly write: {
973
959
  readonly is: "literal";
974
- readonly values: readonly ["nested", "bulkWrite"];
960
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
975
961
  };
976
962
  };
977
963
  readonly optional: {
@@ -998,7 +984,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
998
984
  readonly optional: {
999
985
  readonly write: {
1000
986
  readonly is: "literal";
1001
- readonly values: readonly ["nested", "bulkWrite"];
987
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1002
988
  };
1003
989
  };
1004
990
  }, {
@@ -1006,7 +992,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1006
992
  readonly required: {
1007
993
  readonly write: {
1008
994
  readonly is: "literal";
1009
- readonly values: readonly ["nested", "bulkWrite"];
995
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1010
996
  };
1011
997
  };
1012
998
  readonly optional: {
@@ -1033,7 +1019,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1033
1019
  readonly optional: {
1034
1020
  readonly write: {
1035
1021
  readonly is: "literal";
1036
- readonly values: readonly ["nested", "bulkWrite"];
1022
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1037
1023
  };
1038
1024
  };
1039
1025
  }, {
@@ -1041,7 +1027,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1041
1027
  readonly required: {
1042
1028
  readonly write: {
1043
1029
  readonly is: "literal";
1044
- readonly values: readonly ["nested", "bulkWrite"];
1030
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1045
1031
  };
1046
1032
  };
1047
1033
  readonly optional: {
@@ -1068,7 +1054,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1068
1054
  readonly optional: {
1069
1055
  readonly write: {
1070
1056
  readonly is: "literal";
1071
- readonly values: readonly ["nested", "bulkWrite"];
1057
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1072
1058
  };
1073
1059
  };
1074
1060
  }, {
@@ -1076,7 +1062,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1076
1062
  readonly required: {
1077
1063
  readonly write: {
1078
1064
  readonly is: "literal";
1079
- readonly values: readonly ["nested", "bulkWrite"];
1065
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1080
1066
  };
1081
1067
  };
1082
1068
  readonly optional: {
@@ -1109,7 +1095,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1109
1095
  readonly optional: {
1110
1096
  readonly write: {
1111
1097
  readonly is: "literal";
1112
- readonly values: readonly ["nested", "bulkWrite"];
1098
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1113
1099
  };
1114
1100
  };
1115
1101
  }, {
@@ -1117,7 +1103,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1117
1103
  readonly required: {
1118
1104
  readonly write: {
1119
1105
  readonly is: "literal";
1120
- readonly values: readonly ["nested", "bulkWrite"];
1106
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1121
1107
  };
1122
1108
  };
1123
1109
  readonly optional: {
@@ -1144,7 +1130,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1144
1130
  readonly optional: {
1145
1131
  readonly write: {
1146
1132
  readonly is: "literal";
1147
- readonly values: readonly ["nested", "bulkWrite"];
1133
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1148
1134
  };
1149
1135
  };
1150
1136
  }, {
@@ -1152,7 +1138,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1152
1138
  readonly required: {
1153
1139
  readonly write: {
1154
1140
  readonly is: "literal";
1155
- readonly values: readonly ["nested", "bulkWrite"];
1141
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1156
1142
  };
1157
1143
  };
1158
1144
  readonly optional: {
@@ -1179,7 +1165,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1179
1165
  readonly optional: {
1180
1166
  readonly write: {
1181
1167
  readonly is: "literal";
1182
- readonly values: readonly ["nested", "bulkWrite"];
1168
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1183
1169
  };
1184
1170
  };
1185
1171
  }, {
@@ -1187,7 +1173,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1187
1173
  readonly required: {
1188
1174
  readonly write: {
1189
1175
  readonly is: "literal";
1190
- readonly values: readonly ["nested", "bulkWrite"];
1176
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1191
1177
  };
1192
1178
  };
1193
1179
  readonly optional: {
@@ -1214,7 +1200,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1214
1200
  readonly optional: {
1215
1201
  readonly write: {
1216
1202
  readonly is: "literal";
1217
- readonly values: readonly ["nested", "bulkWrite"];
1203
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1218
1204
  };
1219
1205
  };
1220
1206
  }, {
@@ -1222,7 +1208,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1222
1208
  readonly required: {
1223
1209
  readonly write: {
1224
1210
  readonly is: "literal";
1225
- readonly values: readonly ["nested", "bulkWrite"];
1211
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1226
1212
  };
1227
1213
  };
1228
1214
  readonly optional: {
@@ -1255,7 +1241,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1255
1241
  readonly optional: {
1256
1242
  readonly write: {
1257
1243
  readonly is: "literal";
1258
- readonly values: readonly ["nested", "bulkWrite"];
1244
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1259
1245
  };
1260
1246
  };
1261
1247
  }, {
@@ -1263,7 +1249,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1263
1249
  readonly required: {
1264
1250
  readonly write: {
1265
1251
  readonly is: "literal";
1266
- readonly values: readonly ["nested", "bulkWrite"];
1252
+ readonly values: readonly ["nested", "bulkWrite", "loopback"];
1267
1253
  };
1268
1254
  };
1269
1255
  readonly optional: {
@@ -1372,6 +1358,232 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1372
1358
  readonly is: "literal";
1373
1359
  readonly values: readonly ["uniform"];
1374
1360
  };
1361
+ readonly access: {
1362
+ readonly is: "object";
1363
+ readonly required: {};
1364
+ readonly optional: {
1365
+ readonly url: {
1366
+ readonly is: "route";
1367
+ readonly form: "url";
1368
+ };
1369
+ readonly verbs: {
1370
+ readonly is: "object";
1371
+ readonly required: {};
1372
+ readonly optional: {
1373
+ readonly signIn: {
1374
+ readonly is: "object";
1375
+ readonly required: {
1376
+ readonly method: {
1377
+ readonly is: "literal";
1378
+ readonly values: readonly ["GET", "POST"];
1379
+ };
1380
+ readonly path: {
1381
+ readonly is: "route";
1382
+ readonly form: "path";
1383
+ };
1384
+ readonly result: {
1385
+ readonly is: "jsonSchema";
1386
+ };
1387
+ };
1388
+ readonly optional: {
1389
+ readonly args: {
1390
+ readonly is: "jsonSchema";
1391
+ };
1392
+ };
1393
+ };
1394
+ readonly signUp: {
1395
+ readonly is: "object";
1396
+ readonly required: {
1397
+ readonly method: {
1398
+ readonly is: "literal";
1399
+ readonly values: readonly ["GET", "POST"];
1400
+ };
1401
+ readonly path: {
1402
+ readonly is: "route";
1403
+ readonly form: "path";
1404
+ };
1405
+ readonly result: {
1406
+ readonly is: "jsonSchema";
1407
+ };
1408
+ };
1409
+ readonly optional: {
1410
+ readonly args: {
1411
+ readonly is: "jsonSchema";
1412
+ };
1413
+ };
1414
+ };
1415
+ readonly signOut: {
1416
+ readonly is: "object";
1417
+ readonly required: {
1418
+ readonly method: {
1419
+ readonly is: "literal";
1420
+ readonly values: readonly ["GET", "POST"];
1421
+ };
1422
+ readonly path: {
1423
+ readonly is: "route";
1424
+ readonly form: "path";
1425
+ };
1426
+ readonly result: {
1427
+ readonly is: "jsonSchema";
1428
+ };
1429
+ };
1430
+ readonly optional: {
1431
+ readonly args: {
1432
+ readonly is: "jsonSchema";
1433
+ };
1434
+ };
1435
+ };
1436
+ readonly resetPassword: {
1437
+ readonly is: "object";
1438
+ readonly required: {
1439
+ readonly method: {
1440
+ readonly is: "literal";
1441
+ readonly values: readonly ["GET", "POST"];
1442
+ };
1443
+ readonly path: {
1444
+ readonly is: "route";
1445
+ readonly form: "path";
1446
+ };
1447
+ readonly result: {
1448
+ readonly is: "jsonSchema";
1449
+ };
1450
+ };
1451
+ readonly optional: {
1452
+ readonly args: {
1453
+ readonly is: "jsonSchema";
1454
+ };
1455
+ };
1456
+ };
1457
+ readonly me: {
1458
+ readonly is: "object";
1459
+ readonly required: {
1460
+ readonly method: {
1461
+ readonly is: "literal";
1462
+ readonly values: readonly ["GET", "POST"];
1463
+ };
1464
+ readonly path: {
1465
+ readonly is: "route";
1466
+ readonly form: "path";
1467
+ };
1468
+ readonly result: {
1469
+ readonly is: "jsonSchema";
1470
+ };
1471
+ };
1472
+ readonly optional: {
1473
+ readonly args: {
1474
+ readonly is: "jsonSchema";
1475
+ };
1476
+ };
1477
+ };
1478
+ readonly switchUser: {
1479
+ readonly is: "object";
1480
+ readonly required: {
1481
+ readonly method: {
1482
+ readonly is: "literal";
1483
+ readonly values: readonly ["GET", "POST"];
1484
+ };
1485
+ readonly path: {
1486
+ readonly is: "route";
1487
+ readonly form: "path";
1488
+ };
1489
+ readonly result: {
1490
+ readonly is: "jsonSchema";
1491
+ };
1492
+ };
1493
+ readonly optional: {
1494
+ readonly args: {
1495
+ readonly is: "jsonSchema";
1496
+ };
1497
+ };
1498
+ };
1499
+ readonly lock: {
1500
+ readonly is: "object";
1501
+ readonly required: {
1502
+ readonly method: {
1503
+ readonly is: "literal";
1504
+ readonly values: readonly ["GET", "POST"];
1505
+ };
1506
+ readonly path: {
1507
+ readonly is: "route";
1508
+ readonly form: "path";
1509
+ };
1510
+ readonly result: {
1511
+ readonly is: "jsonSchema";
1512
+ };
1513
+ };
1514
+ readonly optional: {
1515
+ readonly args: {
1516
+ readonly is: "jsonSchema";
1517
+ };
1518
+ };
1519
+ };
1520
+ readonly setPin: {
1521
+ readonly is: "object";
1522
+ readonly required: {
1523
+ readonly method: {
1524
+ readonly is: "literal";
1525
+ readonly values: readonly ["GET", "POST"];
1526
+ };
1527
+ readonly path: {
1528
+ readonly is: "route";
1529
+ readonly form: "path";
1530
+ };
1531
+ readonly result: {
1532
+ readonly is: "jsonSchema";
1533
+ };
1534
+ };
1535
+ readonly optional: {
1536
+ readonly args: {
1537
+ readonly is: "jsonSchema";
1538
+ };
1539
+ };
1540
+ };
1541
+ readonly enrollDevice: {
1542
+ readonly is: "object";
1543
+ readonly required: {
1544
+ readonly method: {
1545
+ readonly is: "literal";
1546
+ readonly values: readonly ["GET", "POST"];
1547
+ };
1548
+ readonly path: {
1549
+ readonly is: "route";
1550
+ readonly form: "path";
1551
+ };
1552
+ readonly result: {
1553
+ readonly is: "jsonSchema";
1554
+ };
1555
+ };
1556
+ readonly optional: {
1557
+ readonly args: {
1558
+ readonly is: "jsonSchema";
1559
+ };
1560
+ };
1561
+ };
1562
+ readonly revokeDevice: {
1563
+ readonly is: "object";
1564
+ readonly required: {
1565
+ readonly method: {
1566
+ readonly is: "literal";
1567
+ readonly values: readonly ["GET", "POST"];
1568
+ };
1569
+ readonly path: {
1570
+ readonly is: "route";
1571
+ readonly form: "path";
1572
+ };
1573
+ readonly result: {
1574
+ readonly is: "jsonSchema";
1575
+ };
1576
+ };
1577
+ readonly optional: {
1578
+ readonly args: {
1579
+ readonly is: "jsonSchema";
1580
+ };
1581
+ };
1582
+ };
1583
+ };
1584
+ };
1585
+ };
1586
+ };
1375
1587
  };
1376
1588
  };
1377
1589
  /**
@@ -1379,7 +1591,7 @@ export declare const CLIENT_CONTRACT_STRUCTURE: {
1379
1591
  * first defect found, as a `path` in JSONPath form (`$.resources.Spell`) and
1380
1592
  * a `message` that begins with that path in quotes.
1381
1593
  */
1382
- export type ClientContractStructureVerdict = {
1594
+ type ClientContractStructureVerdict = {
1383
1595
  readonly valid: true;
1384
1596
  readonly contract: AvContractClient;
1385
1597
  } | {