@astrale-os/kernel-dsl 0.2.0-beta.4 → 0.2.0-beta.41

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 (945) hide show
  1. package/dist/index.d.ts +0 -1
  2. package/dist/index.js +0 -1
  3. package/dist/upgrade/contract.d.ts +0 -1
  4. package/dist/upgrade/contract.js +0 -1
  5. package/dist/upgrade/index.d.ts +0 -1
  6. package/dist/upgrade/index.js +0 -1
  7. package/dist/v1/addressing/class-key.d.ts +12 -0
  8. package/dist/v1/addressing/class-key.js +39 -0
  9. package/dist/v1/addressing/definition-ref.d.ts +28 -0
  10. package/dist/v1/addressing/definition-ref.js +63 -0
  11. package/dist/v1/addressing/domain-dependency.d.ts +18 -0
  12. package/dist/v1/addressing/domain-dependency.js +6 -0
  13. package/dist/v1/addressing/index.d.ts +10 -4
  14. package/dist/v1/addressing/index.js +5 -3
  15. package/dist/v1/addressing/key.d.ts +14 -16
  16. package/dist/v1/addressing/key.js +24 -34
  17. package/dist/v1/addressing/method-address.d.ts +9 -0
  18. package/dist/v1/addressing/method-address.js +1 -0
  19. package/dist/v1/addressing/method-key.d.ts +15 -0
  20. package/dist/v1/addressing/method-key.js +60 -0
  21. package/dist/v1/addressing/ordering.d.ts +6 -0
  22. package/dist/v1/addressing/ordering.js +20 -0
  23. package/dist/v1/addressing/patterns.d.ts +12 -3
  24. package/dist/v1/addressing/patterns.js +11 -2
  25. package/dist/v1/addressing/property-key.d.ts +10 -15
  26. package/dist/v1/addressing/property-key.js +24 -15
  27. package/dist/v1/addressing/revision.d.ts +8 -0
  28. package/dist/v1/addressing/revision.js +8 -0
  29. package/dist/v1/builder/callable/authoring.d.ts +143 -0
  30. package/dist/v1/builder/callable/authoring.js +82 -0
  31. package/dist/v1/builder/class/authoring.d.ts +400 -0
  32. package/dist/v1/builder/class/authoring.js +134 -0
  33. package/dist/v1/builder/class/property.d.ts +58 -0
  34. package/dist/v1/builder/class/property.js +57 -0
  35. package/dist/v1/builder/core/authoring.d.ts +47 -0
  36. package/dist/v1/builder/core/authoring.js +39 -0
  37. package/dist/v1/builder/index.d.ts +26 -22
  38. package/dist/v1/builder/index.js +11 -11
  39. package/dist/v1/builder/lowering/callable.d.ts +24 -0
  40. package/dist/v1/builder/lowering/callable.js +150 -0
  41. package/dist/v1/builder/lowering/class.d.ts +22 -0
  42. package/dist/v1/builder/lowering/class.js +134 -0
  43. package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
  44. package/dist/v1/builder/lowering/core-properties.js +76 -0
  45. package/dist/v1/builder/lowering/core.d.ts +22 -0
  46. package/dist/v1/builder/lowering/core.js +50 -0
  47. package/dist/v1/builder/lowering/policy.d.ts +16 -0
  48. package/dist/v1/builder/lowering/policy.js +60 -0
  49. package/dist/v1/builder/lowering/schema/capture.d.ts +4 -0
  50. package/dist/v1/builder/lowering/schema/capture.js +75 -0
  51. package/dist/v1/builder/lowering/schema/compile.d.ts +10 -0
  52. package/dist/v1/builder/lowering/schema/compile.js +80 -0
  53. package/dist/v1/builder/lowering/schema/context.d.ts +49 -0
  54. package/dist/v1/builder/lowering/schema/context.js +277 -0
  55. package/dist/v1/builder/lowering/schema/ownership.d.ts +8 -0
  56. package/dist/v1/builder/lowering/schema/ownership.js +30 -0
  57. package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
  58. package/dist/v1/builder/lowering/value/compile.js +143 -0
  59. package/dist/v1/builder/lowering/value/path.d.ts +3 -0
  60. package/dist/v1/builder/lowering/value/path.js +20 -0
  61. package/dist/v1/builder/lowering/value/zod.d.ts +32 -0
  62. package/dist/v1/builder/lowering/value/zod.js +342 -0
  63. package/dist/v1/builder/lowering/view.d.ts +11 -0
  64. package/dist/v1/builder/lowering/view.js +27 -0
  65. package/dist/v1/builder/policy/authoring.d.ts +61 -0
  66. package/dist/v1/builder/policy/authoring.js +117 -0
  67. package/dist/v1/builder/schema/define.d.ts +11 -0
  68. package/dist/v1/builder/schema/define.js +5 -0
  69. package/dist/v1/builder/schema/diagnostic.d.ts +16 -0
  70. package/dist/v1/builder/schema/diagnostic.js +31 -0
  71. package/dist/v1/builder/schema/handle.d.ts +7 -0
  72. package/dist/v1/builder/schema/handle.js +14 -0
  73. package/dist/v1/builder/schema/input.d.ts +15 -0
  74. package/dist/v1/builder/schema/input.js +1 -0
  75. package/dist/v1/builder/schema/lazy.d.ts +2 -0
  76. package/dist/v1/builder/schema/lazy.js +13 -0
  77. package/dist/v1/builder/schema/projection.d.ts +375 -0
  78. package/dist/v1/builder/schema/projection.js +1 -0
  79. package/dist/v1/builder/value/full-match.d.ts +4 -0
  80. package/dist/v1/builder/value/full-match.js +11 -0
  81. package/dist/v1/builder/value/path-metadata.d.ts +4 -0
  82. package/dist/v1/builder/value/path-metadata.js +7 -0
  83. package/dist/v1/builder/value/path.d.ts +8 -0
  84. package/dist/v1/builder/value/path.js +11 -0
  85. package/dist/v1/builder/value/schema.d.ts +16 -0
  86. package/dist/v1/builder/value/schema.js +10 -0
  87. package/dist/v1/builder/view/authoring.d.ts +17 -0
  88. package/dist/v1/builder/view/authoring.js +16 -0
  89. package/dist/v1/bundle/codec.d.ts +0 -1
  90. package/dist/v1/bundle/codec.js +36 -19
  91. package/dist/v1/bundle/create.d.ts +3 -0
  92. package/dist/v1/bundle/create.js +5 -0
  93. package/dist/v1/bundle/diagnostic.d.ts +10 -0
  94. package/dist/v1/bundle/diagnostic.js +17 -0
  95. package/dist/v1/bundle/index.d.ts +3 -2
  96. package/dist/v1/bundle/index.js +2 -2
  97. package/dist/v1/bundle/model.d.ts +1 -4
  98. package/dist/v1/bundle/model.js +0 -6
  99. package/dist/v1/bundle/structure.d.ts +1 -2
  100. package/dist/v1/bundle/structure.js +6 -6
  101. package/dist/v1/bundle/transport.d.ts +8 -0
  102. package/dist/v1/bundle/transport.js +7 -0
  103. package/dist/v1/compiled/admission/accept.d.ts +3 -0
  104. package/dist/v1/compiled/admission/accept.js +1068 -0
  105. package/dist/v1/compiled/admission/revision.d.ts +4 -0
  106. package/dist/v1/compiled/admission/revision.js +79 -0
  107. package/dist/v1/compiled/admission/semantics.d.ts +7 -0
  108. package/dist/v1/compiled/admission/semantics.js +1187 -0
  109. package/dist/v1/compiled/codec/json.d.ts +3 -0
  110. package/dist/v1/compiled/codec/json.js +9 -0
  111. package/dist/v1/compiled/compiler/compile.d.ts +4 -0
  112. package/dist/v1/compiled/compiler/compile.js +142 -0
  113. package/dist/v1/compiled/diagnostic.d.ts +11 -0
  114. package/dist/v1/compiled/diagnostic.js +13 -0
  115. package/dist/v1/compiled/generated.d.ts +10 -0
  116. package/dist/v1/compiled/generated.js +15 -0
  117. package/dist/v1/compiled/index.d.ts +7 -0
  118. package/dist/v1/compiled/index.js +5 -0
  119. package/dist/v1/compiled/loader/index.d.ts +1 -0
  120. package/dist/v1/compiled/loader/index.js +1 -0
  121. package/dist/v1/compiled/loader/load.d.ts +18 -0
  122. package/dist/v1/compiled/loader/load.js +156 -0
  123. package/dist/v1/compiled/model/schema.d.ts +78 -0
  124. package/dist/v1/compiled/model/schema.js +1 -0
  125. package/dist/v1/domain/create.d.ts +8 -0
  126. package/dist/v1/domain/create.js +273 -0
  127. package/dist/v1/domain/index.d.ts +2 -0
  128. package/dist/v1/domain/index.js +1 -0
  129. package/dist/v1/domain/model/domain.d.ts +59 -0
  130. package/dist/v1/domain/model/domain.js +1 -0
  131. package/dist/v1/domain/model/input.d.ts +31 -0
  132. package/dist/v1/domain/model/input.js +1 -0
  133. package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
  134. package/dist/v1/domain/namespace/member-collection.js +81 -0
  135. package/dist/v1/domain/projection/classes.d.ts +4 -0
  136. package/dist/v1/domain/projection/classes.js +178 -0
  137. package/dist/v1/domain/validation/create.d.ts +18 -0
  138. package/dist/v1/domain/validation/create.js +75 -0
  139. package/dist/v1/index.d.ts +15 -5
  140. package/dist/v1/index.js +7 -3
  141. package/dist/v1/language/callable/composition.d.ts +27 -0
  142. package/dist/v1/language/callable/composition.js +52 -0
  143. package/dist/v1/language/callable/executable.d.ts +6 -0
  144. package/dist/v1/language/callable/executable.js +4 -0
  145. package/dist/v1/language/callable/index.d.ts +2 -0
  146. package/dist/v1/language/callable/index.js +1 -0
  147. package/dist/v1/language/callable/model/callable.d.ts +56 -0
  148. package/dist/v1/language/callable/model/callable.js +3 -0
  149. package/dist/v1/language/callable/resolved.d.ts +83 -0
  150. package/dist/v1/language/callable/resolved.js +1 -0
  151. package/dist/v1/language/class/facets.d.ts +61 -0
  152. package/dist/v1/language/class/facets.js +1 -0
  153. package/dist/v1/language/class/index.d.ts +8 -0
  154. package/dist/v1/language/class/index.js +1 -0
  155. package/dist/v1/language/class/model/class.d.ts +37 -0
  156. package/dist/v1/language/class/model/class.js +1 -0
  157. package/dist/v1/language/class/model/data.d.ts +11 -0
  158. package/dist/v1/language/class/model/data.js +2 -0
  159. package/dist/v1/language/class/model/edge.d.ts +38 -0
  160. package/dist/v1/language/class/model/edge.js +1 -0
  161. package/dist/v1/language/class/model/property.d.ts +17 -0
  162. package/dist/v1/language/class/model/property.js +1 -0
  163. package/dist/v1/language/class/property-values.d.ts +15 -0
  164. package/dist/v1/language/class/property-values.js +33 -0
  165. package/dist/v1/language/class/resolved.d.ts +126 -0
  166. package/dist/v1/language/class/resolved.js +1 -0
  167. package/dist/v1/language/core/index.d.ts +2 -0
  168. package/dist/v1/language/core/index.js +1 -0
  169. package/dist/v1/language/core/model/core.d.ts +26 -0
  170. package/dist/v1/language/core/model/core.js +1 -0
  171. package/dist/v1/language/core/resolved.d.ts +25 -0
  172. package/dist/v1/language/core/resolved.js +1 -0
  173. package/dist/v1/language/definition/metadata.d.ts +12 -0
  174. package/dist/v1/language/definition/metadata.js +12 -0
  175. package/dist/v1/language/definition.d.ts +7 -0
  176. package/dist/v1/language/definition.js +1 -0
  177. package/dist/v1/language/index.d.ts +28 -0
  178. package/dist/v1/language/index.js +5 -0
  179. package/dist/v1/language/policy/analysis/branches.d.ts +20 -0
  180. package/dist/v1/language/policy/analysis/branches.js +174 -0
  181. package/dist/v1/language/policy/analysis/budgets.d.ts +16 -0
  182. package/dist/v1/language/policy/analysis/budgets.js +25 -0
  183. package/dist/v1/language/policy/index.d.ts +4 -0
  184. package/dist/v1/language/policy/index.js +2 -0
  185. package/dist/v1/language/policy/model/policy.d.ts +116 -0
  186. package/dist/v1/language/policy/model/policy.js +35 -0
  187. package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
  188. package/dist/v1/language/policy/normalization/normalize.js +275 -0
  189. package/dist/v1/language/policy/resolved.d.ts +9 -0
  190. package/dist/v1/language/policy/resolved.js +1 -0
  191. package/dist/v1/language/resolved.d.ts +10 -0
  192. package/dist/v1/language/resolved.js +1 -0
  193. package/dist/v1/language/state/index.d.ts +3 -0
  194. package/dist/v1/language/state/index.js +1 -0
  195. package/dist/v1/language/state/machine.d.ts +28 -0
  196. package/dist/v1/language/state/machine.js +40 -0
  197. package/dist/v1/language/state/topology.d.ts +14 -0
  198. package/dist/v1/language/state/topology.js +69 -0
  199. package/dist/v1/language/validation/diagnostic.d.ts +8 -0
  200. package/dist/v1/language/validation/diagnostic.js +3 -0
  201. package/dist/v1/language/value/compile/fields.d.ts +3 -0
  202. package/dist/v1/language/value/compile/fields.js +60 -0
  203. package/dist/v1/language/value/compile/load.d.ts +6 -0
  204. package/dist/v1/language/value/compile/load.js +62 -0
  205. package/dist/v1/language/value/compile/model.d.ts +42 -0
  206. package/dist/v1/language/value/compile/model.js +1 -0
  207. package/dist/v1/language/value/evaluate/assertions.d.ts +8 -0
  208. package/dist/v1/language/value/evaluate/assertions.js +71 -0
  209. package/dist/v1/language/value/evaluate/evaluator.d.ts +4 -0
  210. package/dist/v1/language/value/evaluate/evaluator.js +426 -0
  211. package/dist/v1/language/value/evaluate/preparation.d.ts +22 -0
  212. package/dist/v1/language/value/evaluate/preparation.js +126 -0
  213. package/dist/v1/language/value/evaluate/program.d.ts +3 -0
  214. package/dist/v1/language/value/evaluate/program.js +16 -0
  215. package/dist/v1/language/value/evaluate/types.d.ts +36 -0
  216. package/dist/v1/language/value/evaluate/types.js +9 -0
  217. package/dist/v1/language/value/evaluate/validate.d.ts +16 -0
  218. package/dist/v1/language/value/evaluate/validate.js +50 -0
  219. package/dist/v1/language/value/index.d.ts +11 -0
  220. package/dist/v1/language/value/index.js +8 -0
  221. package/dist/v1/language/value/model/blob.d.ts +33 -0
  222. package/dist/v1/language/value/model/blob.js +90 -0
  223. package/dist/v1/language/value/model/instant.d.ts +9 -0
  224. package/dist/v1/language/value/model/instant.js +37 -0
  225. package/dist/v1/language/value/model/object.d.ts +5 -0
  226. package/dist/v1/language/value/model/object.js +3 -0
  227. package/dist/v1/language/value/model/schema.d.ts +25 -0
  228. package/dist/v1/language/value/model/schema.js +11 -0
  229. package/dist/v1/language/value/ordering.d.ts +15 -0
  230. package/dist/v1/language/value/ordering.js +170 -0
  231. package/dist/v1/language/value/profile/canonicalize.d.ts +4 -0
  232. package/dist/v1/language/value/profile/canonicalize.js +130 -0
  233. package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
  234. package/dist/v1/language/value/profile/json.validate.js +14 -0
  235. package/dist/v1/language/value/profile/meta-schema.compiled.d.ts +78 -0
  236. package/dist/v1/language/value/profile/meta-schema.compiled.js +2079 -0
  237. package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
  238. package/dist/v1/language/value/profile/meta-schema.js +19 -0
  239. package/dist/v1/language/value/profile/rules.d.ts +3 -0
  240. package/dist/v1/language/value/profile/rules.js +141 -0
  241. package/dist/v1/language/value/profile/validate.d.ts +4 -0
  242. package/dist/v1/language/value/profile/validate.js +39 -0
  243. package/dist/v1/language/value/profile/vocabulary.d.ts +2 -0
  244. package/dist/v1/language/value/profile/vocabulary.js +68 -0
  245. package/dist/v1/language/value/reference/closure.d.ts +11 -0
  246. package/dist/v1/language/value/reference/closure.js +51 -0
  247. package/dist/v1/language/value/reference/recursion.d.ts +5 -0
  248. package/dist/v1/language/value/reference/recursion.js +95 -0
  249. package/dist/v1/language/value/reference/references.d.ts +17 -0
  250. package/dist/v1/language/value/reference/references.js +45 -0
  251. package/dist/v1/language/value/reference/registry.d.ts +24 -0
  252. package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
  253. package/dist/v1/language/value/reference/registry.index.js +76 -0
  254. package/dist/v1/language/value/reference/registry.js +1 -0
  255. package/dist/v1/language/value/regexp/ast.d.ts +21 -0
  256. package/dist/v1/language/value/regexp/ast.js +326 -0
  257. package/dist/v1/language/value/regexp/compile.d.ts +3 -0
  258. package/dist/v1/language/value/regexp/compile.js +138 -0
  259. package/dist/v1/language/value/regexp/lower.d.ts +3 -0
  260. package/dist/v1/language/value/regexp/lower.js +26 -0
  261. package/dist/v1/language/value/regexp/matcher.d.ts +10 -0
  262. package/dist/v1/language/value/regexp/matcher.js +207 -0
  263. package/dist/v1/language/value/regexp/pattern.d.ts +2 -0
  264. package/dist/v1/language/value/regexp/pattern.js +38 -0
  265. package/dist/v1/language/value/regexp/syntax.d.ts +2 -0
  266. package/dist/v1/language/value/regexp/syntax.js +5 -0
  267. package/dist/v1/language/value/syntax/full-match.d.ts +6 -0
  268. package/dist/v1/language/value/syntax/full-match.js +20 -0
  269. package/dist/v1/language/value/syntax/keywords.d.ts +3 -0
  270. package/dist/v1/language/value/syntax/keywords.js +20 -0
  271. package/dist/v1/language/value/syntax/node-path/schema.d.ts +5 -0
  272. package/dist/v1/language/value/syntax/node-path/schema.js +18 -0
  273. package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
  274. package/dist/v1/language/value/syntax/node-path/validate.js +78 -0
  275. package/dist/v1/language/value/syntax/pointer.d.ts +4 -0
  276. package/dist/v1/language/value/syntax/pointer.js +49 -0
  277. package/dist/v1/language/value/syntax/walk.d.ts +10 -0
  278. package/dist/v1/language/value/syntax/walk.js +53 -0
  279. package/dist/v1/language/view/index.d.ts +2 -0
  280. package/dist/v1/language/view/index.js +1 -0
  281. package/dist/v1/language/view/model/view.d.ts +11 -0
  282. package/dist/v1/language/view/model/view.js +1 -0
  283. package/dist/v1/language/view/resolved.d.ts +9 -0
  284. package/dist/v1/language/view/resolved.js +1 -0
  285. package/dist/v1/schema/admission/accept.d.ts +3 -0
  286. package/dist/v1/schema/admission/accept.js +26 -0
  287. package/dist/v1/schema/analysis/class.d.ts +69 -0
  288. package/dist/v1/schema/analysis/class.js +145 -0
  289. package/dist/v1/schema/canonical/domain.d.ts +2 -2
  290. package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
  291. package/dist/v1/schema/canonical/domain.digest.js +2 -6
  292. package/dist/v1/schema/canonical/domain.js +3 -224
  293. package/dist/v1/schema/canonical/freeze.d.ts +0 -1
  294. package/dist/v1/schema/canonical/freeze.js +0 -1
  295. package/dist/v1/schema/canonical/revision.d.ts +11 -0
  296. package/dist/v1/schema/canonical/revision.js +20 -0
  297. package/dist/v1/schema/codec/header.d.ts +17 -0
  298. package/dist/v1/schema/codec/header.js +26 -0
  299. package/dist/v1/schema/codec/schema.d.ts +5 -0
  300. package/dist/v1/schema/codec/schema.js +21 -0
  301. package/dist/v1/schema/compatibility/api.d.ts +2 -0
  302. package/dist/v1/schema/compatibility/api.js +1 -0
  303. package/dist/v1/schema/compatibility/comparators/callables.d.ts +32 -0
  304. package/dist/v1/schema/compatibility/comparators/callables.js +88 -0
  305. package/dist/v1/schema/compatibility/comparators/classes.d.ts +28 -0
  306. package/dist/v1/schema/compatibility/comparators/classes.js +96 -0
  307. package/dist/v1/schema/compatibility/comparators/index.d.ts +12 -0
  308. package/dist/v1/schema/compatibility/comparators/index.js +41 -0
  309. package/dist/v1/schema/compatibility/comparators/members.d.ts +4 -0
  310. package/dist/v1/schema/compatibility/comparators/members.js +49 -0
  311. package/dist/v1/schema/compatibility/comparators/values.d.ts +5 -0
  312. package/dist/v1/schema/compatibility/comparators/values.js +37 -0
  313. package/dist/v1/schema/compatibility/compare.d.ts +5 -0
  314. package/dist/v1/schema/compatibility/compare.js +23 -0
  315. package/dist/v1/schema/compatibility/context.d.ts +15 -0
  316. package/dist/v1/schema/compatibility/context.js +43 -0
  317. package/dist/v1/schema/compatibility/coordinate.d.ts +39 -0
  318. package/dist/v1/schema/compatibility/coordinate.js +38 -0
  319. package/dist/v1/schema/compatibility/diff.d.ts +12 -0
  320. package/dist/v1/schema/compatibility/diff.js +39 -0
  321. package/dist/v1/schema/compatibility/evidence.d.ts +5 -0
  322. package/dist/v1/schema/compatibility/evidence.js +51 -0
  323. package/dist/v1/schema/compatibility/fields.d.ts +192 -0
  324. package/dist/v1/schema/compatibility/fields.js +93 -0
  325. package/dist/v1/schema/compatibility/index.d.ts +8 -0
  326. package/dist/v1/schema/compatibility/index.js +4 -0
  327. package/dist/v1/schema/compatibility/legacy/index.d.ts +58 -0
  328. package/dist/v1/schema/compatibility/legacy/index.js +145 -0
  329. package/dist/v1/schema/compatibility/meaning/footprint.d.ts +7 -0
  330. package/dist/v1/schema/compatibility/meaning/footprint.js +57 -0
  331. package/dist/v1/schema/compatibility/meaning/index.d.ts +3 -0
  332. package/dist/v1/schema/compatibility/meaning/index.js +14 -0
  333. package/dist/v1/schema/compatibility/model.d.ts +96 -0
  334. package/dist/v1/schema/compatibility/model.js +1 -0
  335. package/dist/v1/schema/compatibility/references.d.ts +30 -0
  336. package/dist/v1/schema/compatibility/references.js +122 -0
  337. package/dist/v1/schema/compatibility/report.d.ts +26 -0
  338. package/dist/v1/schema/compatibility/report.js +100 -0
  339. package/dist/v1/schema/compatibility/scope.d.ts +27 -0
  340. package/dist/v1/schema/compatibility/scope.js +78 -0
  341. package/dist/v1/schema/compatibility/structure/index.d.ts +3 -0
  342. package/dist/v1/schema/compatibility/structure/index.js +16 -0
  343. package/dist/v1/schema/compatibility/structure/inheritance.d.ts +7 -0
  344. package/dist/v1/schema/compatibility/structure/inheritance.js +68 -0
  345. package/dist/v1/schema/compatibility/structure/requirements.d.ts +7 -0
  346. package/dist/v1/schema/compatibility/structure/requirements.js +70 -0
  347. package/dist/v1/schema/compatibility/subjects.d.ts +34 -0
  348. package/dist/v1/schema/compatibility/subjects.js +86 -0
  349. package/dist/v1/schema/dependency/lookup.d.ts +18 -0
  350. package/dist/v1/schema/dependency/lookup.js +31 -0
  351. package/dist/v1/schema/diagnostic.d.ts +7 -7
  352. package/dist/v1/schema/diagnostic.js +9 -9
  353. package/dist/v1/schema/fingerprint.d.ts +2 -0
  354. package/dist/v1/schema/fingerprint.js +1 -0
  355. package/dist/v1/schema/index.d.ts +27 -40
  356. package/dist/v1/schema/index.js +13 -18
  357. package/dist/v1/schema/model/format.d.ts +2 -0
  358. package/dist/v1/schema/model/format.js +2 -0
  359. package/dist/v1/schema/model/schema.d.ts +30 -0
  360. package/dist/v1/schema/model/schema.js +4 -0
  361. package/dist/v1/schema/normalization/domain.d.ts +2 -0
  362. package/dist/v1/schema/normalization/domain.js +234 -0
  363. package/dist/v1/schema/resolution/closure.d.ts +3 -4
  364. package/dist/v1/schema/resolution/closure.js +6 -7
  365. package/dist/v1/schema/resolution/context.d.ts +11 -12
  366. package/dist/v1/schema/resolution/context.js +82 -50
  367. package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
  368. package/dist/v1/schema/resolution/definition.index.js +8 -18
  369. package/dist/v1/schema/resolution/domain.d.ts +4 -0
  370. package/dist/v1/schema/resolution/domain.js +120 -0
  371. package/dist/v1/schema/resolution/origins.d.ts +27 -14
  372. package/dist/v1/schema/resolution/origins.js +87 -58
  373. package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
  374. package/dist/v1/schema/resolution/value.registry.js +7 -14
  375. package/dist/v1/schema/revision.d.ts +1 -0
  376. package/dist/v1/schema/revision.js +1 -0
  377. package/dist/v1/schema/validation/callable.d.ts +4 -0
  378. package/dist/v1/schema/validation/callable.js +39 -0
  379. package/dist/v1/schema/validation/class.d.ts +5 -0
  380. package/dist/v1/schema/validation/class.js +247 -0
  381. package/dist/v1/schema/validation/core.d.ts +5 -0
  382. package/dist/v1/schema/validation/core.js +318 -0
  383. package/dist/v1/schema/validation/domain.d.ts +11 -0
  384. package/dist/v1/schema/validation/domain.js +38 -0
  385. package/dist/v1/schema/validation/domain.route.d.ts +1 -2
  386. package/dist/v1/schema/validation/domain.route.js +3 -4
  387. package/dist/v1/schema/validation/domain.structure.d.ts +3 -4
  388. package/dist/v1/schema/validation/domain.structure.js +234 -218
  389. package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
  390. package/dist/v1/schema/validation/policy/budgets.js +119 -0
  391. package/dist/v1/schema/validation/policy/context.d.ts +28 -0
  392. package/dist/v1/schema/validation/policy/context.js +89 -0
  393. package/dist/v1/schema/validation/policy/objects.d.ts +4 -0
  394. package/dist/v1/schema/validation/policy/objects.js +71 -0
  395. package/dist/v1/schema/validation/policy/references.d.ts +2 -0
  396. package/dist/v1/schema/validation/policy/references.js +155 -0
  397. package/dist/v1/schema/validation/policy/typing.d.ts +19 -0
  398. package/dist/v1/schema/validation/policy/typing.js +347 -0
  399. package/dist/v1/schema/validation/policy/uses.d.ts +5 -0
  400. package/dist/v1/schema/validation/policy/uses.js +196 -0
  401. package/dist/v1/schema/validation/policy/validate.d.ts +11 -0
  402. package/dist/v1/schema/validation/policy/validate.js +23 -0
  403. package/dist/v1/schema/validation/value-api.d.ts +15 -0
  404. package/dist/v1/schema/validation/value-api.js +24 -0
  405. package/dist/v1/schema/validation/value.d.ts +4 -5
  406. package/dist/v1/schema/validation/value.js +11 -10
  407. package/dist/v1/schema/validation/view.d.ts +3 -0
  408. package/dist/v1/schema/validation/view.js +29 -0
  409. package/dist/v1/value/full-match.d.ts +2 -0
  410. package/dist/v1/value/full-match.js +2 -0
  411. package/dist/v1.d.ts +1 -2
  412. package/dist/v1.js +1 -2
  413. package/dist/value/accept.d.ts +9 -1
  414. package/dist/value/accept.js +78 -6
  415. package/dist/value/canonical.d.ts +3 -1
  416. package/dist/value/canonical.js +13 -6
  417. package/dist/value/decode.d.ts +0 -1
  418. package/dist/value/decode.js +0 -1
  419. package/dist/value/equal.d.ts +0 -1
  420. package/dist/value/equal.js +0 -1
  421. package/dist/value/error.d.ts +0 -1
  422. package/dist/value/error.js +0 -1
  423. package/dist/value/immutable.optimization.d.ts +12 -0
  424. package/dist/value/immutable.optimization.js +28 -0
  425. package/dist/value/index.d.ts +1 -2
  426. package/dist/value/index.js +1 -2
  427. package/dist/value/json.d.ts +1 -2
  428. package/dist/value/json.js +1 -2
  429. package/dist/value/limits.d.ts +0 -1
  430. package/dist/value/limits.js +0 -1
  431. package/dist/value/types.d.ts +0 -1
  432. package/dist/value/types.js +0 -1
  433. package/dist/value/unicode.d.ts +1 -2
  434. package/dist/value/unicode.js +1 -1
  435. package/dist/version/dispatch.d.ts +0 -1
  436. package/dist/version/dispatch.js +0 -1
  437. package/dist/version/index.d.ts +0 -1
  438. package/dist/version/index.js +0 -1
  439. package/package.json +52 -21
  440. package/dist/index.d.ts.map +0 -1
  441. package/dist/index.js.map +0 -1
  442. package/dist/upgrade/contract.d.ts.map +0 -1
  443. package/dist/upgrade/contract.js.map +0 -1
  444. package/dist/upgrade/index.d.ts.map +0 -1
  445. package/dist/upgrade/index.js.map +0 -1
  446. package/dist/v1/addressing/index.d.ts.map +0 -1
  447. package/dist/v1/addressing/index.js.map +0 -1
  448. package/dist/v1/addressing/key.d.ts.map +0 -1
  449. package/dist/v1/addressing/key.js.map +0 -1
  450. package/dist/v1/addressing/patterns.d.ts.map +0 -1
  451. package/dist/v1/addressing/patterns.js.map +0 -1
  452. package/dist/v1/addressing/property-key.d.ts.map +0 -1
  453. package/dist/v1/addressing/property-key.js.map +0 -1
  454. package/dist/v1/addressing/ref.d.ts +0 -35
  455. package/dist/v1/addressing/ref.d.ts.map +0 -1
  456. package/dist/v1/addressing/ref.js +0 -94
  457. package/dist/v1/addressing/ref.js.map +0 -1
  458. package/dist/v1/addressing/schema-ref.d.ts +0 -8
  459. package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
  460. package/dist/v1/addressing/schema-ref.js +0 -2
  461. package/dist/v1/addressing/schema-ref.js.map +0 -1
  462. package/dist/v1/builder/callable.d.ts +0 -91
  463. package/dist/v1/builder/callable.d.ts.map +0 -1
  464. package/dist/v1/builder/callable.js +0 -46
  465. package/dist/v1/builder/callable.js.map +0 -1
  466. package/dist/v1/builder/compiler/callable.d.ts +0 -20
  467. package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
  468. package/dist/v1/builder/compiler/callable.js +0 -138
  469. package/dist/v1/builder/compiler/callable.js.map +0 -1
  470. package/dist/v1/builder/compiler/core.d.ts +0 -6
  471. package/dist/v1/builder/compiler/core.d.ts.map +0 -1
  472. package/dist/v1/builder/compiler/core.js +0 -44
  473. package/dist/v1/builder/compiler/core.js.map +0 -1
  474. package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
  475. package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
  476. package/dist/v1/builder/compiler/core.properties.js +0 -70
  477. package/dist/v1/builder/compiler/core.properties.js.map +0 -1
  478. package/dist/v1/builder/compiler/definition.d.ts +0 -32
  479. package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
  480. package/dist/v1/builder/compiler/definition.js +0 -197
  481. package/dist/v1/builder/compiler/definition.js.map +0 -1
  482. package/dist/v1/builder/compiler/policy.d.ts +0 -17
  483. package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
  484. package/dist/v1/builder/compiler/policy.js +0 -54
  485. package/dist/v1/builder/compiler/policy.js.map +0 -1
  486. package/dist/v1/builder/compiler/schema.capture.d.ts +0 -5
  487. package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
  488. package/dist/v1/builder/compiler/schema.capture.js +0 -85
  489. package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
  490. package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
  491. package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
  492. package/dist/v1/builder/compiler/schema.context.js +0 -255
  493. package/dist/v1/builder/compiler/schema.context.js.map +0 -1
  494. package/dist/v1/builder/compiler/schema.d.ts +0 -10
  495. package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
  496. package/dist/v1/builder/compiler/schema.js +0 -90
  497. package/dist/v1/builder/compiler/schema.js.map +0 -1
  498. package/dist/v1/builder/compiler/schema.ownership.d.ts +0 -9
  499. package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
  500. package/dist/v1/builder/compiler/schema.ownership.js +0 -30
  501. package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
  502. package/dist/v1/builder/compiler/value.d.ts +0 -26
  503. package/dist/v1/builder/compiler/value.d.ts.map +0 -1
  504. package/dist/v1/builder/compiler/value.js +0 -160
  505. package/dist/v1/builder/compiler/value.js.map +0 -1
  506. package/dist/v1/builder/compiler/value.path.d.ts +0 -4
  507. package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
  508. package/dist/v1/builder/compiler/value.path.js +0 -21
  509. package/dist/v1/builder/compiler/value.path.js.map +0 -1
  510. package/dist/v1/builder/compiler/value.zod.d.ts +0 -33
  511. package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
  512. package/dist/v1/builder/compiler/value.zod.js +0 -343
  513. package/dist/v1/builder/compiler/value.zod.js.map +0 -1
  514. package/dist/v1/builder/compiler/view.d.ts +0 -12
  515. package/dist/v1/builder/compiler/view.d.ts.map +0 -1
  516. package/dist/v1/builder/compiler/view.js +0 -27
  517. package/dist/v1/builder/compiler/view.js.map +0 -1
  518. package/dist/v1/builder/core.d.ts +0 -27
  519. package/dist/v1/builder/core.d.ts.map +0 -1
  520. package/dist/v1/builder/core.js +0 -21
  521. package/dist/v1/builder/core.js.map +0 -1
  522. package/dist/v1/builder/definition.d.ts +0 -155
  523. package/dist/v1/builder/definition.d.ts.map +0 -1
  524. package/dist/v1/builder/definition.js +0 -141
  525. package/dist/v1/builder/definition.js.map +0 -1
  526. package/dist/v1/builder/full-match.d.ts +0 -5
  527. package/dist/v1/builder/full-match.d.ts.map +0 -1
  528. package/dist/v1/builder/full-match.js +0 -12
  529. package/dist/v1/builder/full-match.js.map +0 -1
  530. package/dist/v1/builder/index.d.ts.map +0 -1
  531. package/dist/v1/builder/index.js.map +0 -1
  532. package/dist/v1/builder/internal/authoring.d.ts +0 -8
  533. package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
  534. package/dist/v1/builder/internal/authoring.js +0 -15
  535. package/dist/v1/builder/internal/authoring.js.map +0 -1
  536. package/dist/v1/builder/internal/authoring.lazy.d.ts +0 -3
  537. package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
  538. package/dist/v1/builder/internal/authoring.lazy.js +0 -14
  539. package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
  540. package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
  541. package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
  542. package/dist/v1/builder/internal/diagnostic.js +0 -16
  543. package/dist/v1/builder/internal/diagnostic.js.map +0 -1
  544. package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
  545. package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
  546. package/dist/v1/builder/internal/path.metadata.js +0 -8
  547. package/dist/v1/builder/internal/path.metadata.js.map +0 -1
  548. package/dist/v1/builder/path.d.ts +0 -9
  549. package/dist/v1/builder/path.d.ts.map +0 -1
  550. package/dist/v1/builder/path.js +0 -12
  551. package/dist/v1/builder/path.js.map +0 -1
  552. package/dist/v1/builder/policy.d.ts +0 -50
  553. package/dist/v1/builder/policy.d.ts.map +0 -1
  554. package/dist/v1/builder/policy.js +0 -79
  555. package/dist/v1/builder/policy.js.map +0 -1
  556. package/dist/v1/builder/property.d.ts +0 -37
  557. package/dist/v1/builder/property.d.ts.map +0 -1
  558. package/dist/v1/builder/property.js +0 -36
  559. package/dist/v1/builder/property.js.map +0 -1
  560. package/dist/v1/builder/schema.d.ts +0 -6
  561. package/dist/v1/builder/schema.d.ts.map +0 -1
  562. package/dist/v1/builder/schema.input.d.ts +0 -19
  563. package/dist/v1/builder/schema.input.d.ts.map +0 -1
  564. package/dist/v1/builder/schema.input.js +0 -2
  565. package/dist/v1/builder/schema.input.js.map +0 -1
  566. package/dist/v1/builder/schema.js +0 -6
  567. package/dist/v1/builder/schema.js.map +0 -1
  568. package/dist/v1/builder/value-schema.d.ts +0 -17
  569. package/dist/v1/builder/value-schema.d.ts.map +0 -1
  570. package/dist/v1/builder/value-schema.js +0 -11
  571. package/dist/v1/builder/value-schema.js.map +0 -1
  572. package/dist/v1/builder/view.d.ts +0 -19
  573. package/dist/v1/builder/view.d.ts.map +0 -1
  574. package/dist/v1/builder/view.js +0 -7
  575. package/dist/v1/builder/view.js.map +0 -1
  576. package/dist/v1/builder.d.ts +0 -3
  577. package/dist/v1/builder.d.ts.map +0 -1
  578. package/dist/v1/builder.js +0 -2
  579. package/dist/v1/builder.js.map +0 -1
  580. package/dist/v1/bundle/codec.d.ts.map +0 -1
  581. package/dist/v1/bundle/codec.js.map +0 -1
  582. package/dist/v1/bundle/index.d.ts.map +0 -1
  583. package/dist/v1/bundle/index.js.map +0 -1
  584. package/dist/v1/bundle/model.d.ts.map +0 -1
  585. package/dist/v1/bundle/model.js.map +0 -1
  586. package/dist/v1/bundle/structure.d.ts.map +0 -1
  587. package/dist/v1/bundle/structure.js.map +0 -1
  588. package/dist/v1/bundle.d.ts +0 -3
  589. package/dist/v1/bundle.d.ts.map +0 -1
  590. package/dist/v1/bundle.js +0 -3
  591. package/dist/v1/bundle.js.map +0 -1
  592. package/dist/v1/index.d.ts.map +0 -1
  593. package/dist/v1/index.js.map +0 -1
  594. package/dist/v1/schema/callable.d.ts +0 -29
  595. package/dist/v1/schema/callable.d.ts.map +0 -1
  596. package/dist/v1/schema/callable.js +0 -2
  597. package/dist/v1/schema/callable.js.map +0 -1
  598. package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
  599. package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
  600. package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
  601. package/dist/v1/schema/canonical/domain.js.map +0 -1
  602. package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
  603. package/dist/v1/schema/canonical/freeze.js.map +0 -1
  604. package/dist/v1/schema/compiled/admission.d.ts +0 -4
  605. package/dist/v1/schema/compiled/admission.d.ts.map +0 -1
  606. package/dist/v1/schema/compiled/admission.js +0 -217
  607. package/dist/v1/schema/compiled/admission.js.map +0 -1
  608. package/dist/v1/schema/compiled/authored-validator.d.ts +0 -5
  609. package/dist/v1/schema/compiled/authored-validator.d.ts.map +0 -1
  610. package/dist/v1/schema/compiled/authored-validator.js +0 -7
  611. package/dist/v1/schema/compiled/authored-validator.js.map +0 -1
  612. package/dist/v1/schema/compiled/compiler.d.ts +0 -5
  613. package/dist/v1/schema/compiled/compiler.d.ts.map +0 -1
  614. package/dist/v1/schema/compiled/compiler.js +0 -86
  615. package/dist/v1/schema/compiled/compiler.js.map +0 -1
  616. package/dist/v1/schema/compiled/model.d.ts +0 -61
  617. package/dist/v1/schema/compiled/model.d.ts.map +0 -1
  618. package/dist/v1/schema/compiled/model.js +0 -2
  619. package/dist/v1/schema/compiled/model.js.map +0 -1
  620. package/dist/v1/schema/compiled/program.d.ts +0 -5
  621. package/dist/v1/schema/compiled/program.d.ts.map +0 -1
  622. package/dist/v1/schema/compiled/program.js +0 -42
  623. package/dist/v1/schema/compiled/program.js.map +0 -1
  624. package/dist/v1/schema/compiled/validator.d.ts +0 -23
  625. package/dist/v1/schema/compiled/validator.d.ts.map +0 -1
  626. package/dist/v1/schema/compiled/validator.js +0 -62
  627. package/dist/v1/schema/compiled/validator.js.map +0 -1
  628. package/dist/v1/schema/core/declaration.d.ts +0 -17
  629. package/dist/v1/schema/core/declaration.d.ts.map +0 -1
  630. package/dist/v1/schema/core/declaration.js +0 -2
  631. package/dist/v1/schema/core/declaration.js.map +0 -1
  632. package/dist/v1/schema/core/validate.d.ts +0 -6
  633. package/dist/v1/schema/core/validate.d.ts.map +0 -1
  634. package/dist/v1/schema/core/validate.js +0 -257
  635. package/dist/v1/schema/core/validate.js.map +0 -1
  636. package/dist/v1/schema/definition/analysis.d.ts +0 -43
  637. package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
  638. package/dist/v1/schema/definition/analysis.js +0 -190
  639. package/dist/v1/schema/definition/analysis.js.map +0 -1
  640. package/dist/v1/schema/definition/class.d.ts +0 -28
  641. package/dist/v1/schema/definition/class.d.ts.map +0 -1
  642. package/dist/v1/schema/definition/class.js +0 -2
  643. package/dist/v1/schema/definition/class.js.map +0 -1
  644. package/dist/v1/schema/definition/data.d.ts +0 -12
  645. package/dist/v1/schema/definition/data.d.ts.map +0 -1
  646. package/dist/v1/schema/definition/data.js +0 -3
  647. package/dist/v1/schema/definition/data.js.map +0 -1
  648. package/dist/v1/schema/definition/edge.d.ts +0 -35
  649. package/dist/v1/schema/definition/edge.d.ts.map +0 -1
  650. package/dist/v1/schema/definition/edge.js +0 -2
  651. package/dist/v1/schema/definition/edge.js.map +0 -1
  652. package/dist/v1/schema/definition/interface.d.ts +0 -22
  653. package/dist/v1/schema/definition/interface.d.ts.map +0 -1
  654. package/dist/v1/schema/definition/interface.js +0 -2
  655. package/dist/v1/schema/definition/interface.js.map +0 -1
  656. package/dist/v1/schema/definition/property.d.ts +0 -18
  657. package/dist/v1/schema/definition/property.d.ts.map +0 -1
  658. package/dist/v1/schema/definition/property.js +0 -2
  659. package/dist/v1/schema/definition/property.js.map +0 -1
  660. package/dist/v1/schema/definition/validate.d.ts +0 -5
  661. package/dist/v1/schema/definition/validate.d.ts.map +0 -1
  662. package/dist/v1/schema/definition/validate.js +0 -221
  663. package/dist/v1/schema/definition/validate.js.map +0 -1
  664. package/dist/v1/schema/dependency.meaning.d.ts +0 -30
  665. package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
  666. package/dist/v1/schema/dependency.meaning.js +0 -608
  667. package/dist/v1/schema/dependency.meaning.js.map +0 -1
  668. package/dist/v1/schema/diagnostic.d.ts.map +0 -1
  669. package/dist/v1/schema/diagnostic.js.map +0 -1
  670. package/dist/v1/schema/domain.accept.d.ts +0 -4
  671. package/dist/v1/schema/domain.accept.d.ts.map +0 -1
  672. package/dist/v1/schema/domain.accept.js +0 -27
  673. package/dist/v1/schema/domain.accept.js.map +0 -1
  674. package/dist/v1/schema/domain.codec.d.ts +0 -6
  675. package/dist/v1/schema/domain.codec.d.ts.map +0 -1
  676. package/dist/v1/schema/domain.codec.js +0 -22
  677. package/dist/v1/schema/domain.codec.js.map +0 -1
  678. package/dist/v1/schema/domain.header.d.ts +0 -15
  679. package/dist/v1/schema/domain.header.d.ts.map +0 -1
  680. package/dist/v1/schema/domain.header.js +0 -21
  681. package/dist/v1/schema/domain.header.js.map +0 -1
  682. package/dist/v1/schema/domain.ir.d.ts +0 -40
  683. package/dist/v1/schema/domain.ir.d.ts.map +0 -1
  684. package/dist/v1/schema/domain.ir.js +0 -5
  685. package/dist/v1/schema/domain.ir.js.map +0 -1
  686. package/dist/v1/schema/domain.lookup.d.ts +0 -19
  687. package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
  688. package/dist/v1/schema/domain.lookup.js +0 -32
  689. package/dist/v1/schema/domain.lookup.js.map +0 -1
  690. package/dist/v1/schema/domain.resolve.d.ts +0 -26
  691. package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
  692. package/dist/v1/schema/domain.resolve.js +0 -43
  693. package/dist/v1/schema/domain.resolve.js.map +0 -1
  694. package/dist/v1/schema/domain.revision.d.ts +0 -12
  695. package/dist/v1/schema/domain.revision.d.ts.map +0 -1
  696. package/dist/v1/schema/domain.revision.js +0 -18
  697. package/dist/v1/schema/domain.revision.js.map +0 -1
  698. package/dist/v1/schema/domain.validate.d.ts +0 -12
  699. package/dist/v1/schema/domain.validate.d.ts.map +0 -1
  700. package/dist/v1/schema/domain.validate.js +0 -36
  701. package/dist/v1/schema/domain.validate.js.map +0 -1
  702. package/dist/v1/schema/index.d.ts.map +0 -1
  703. package/dist/v1/schema/index.js.map +0 -1
  704. package/dist/v1/schema/metadata.d.ts +0 -13
  705. package/dist/v1/schema/metadata.d.ts.map +0 -1
  706. package/dist/v1/schema/metadata.js +0 -13
  707. package/dist/v1/schema/metadata.js.map +0 -1
  708. package/dist/v1/schema/policy/ast.d.ts +0 -77
  709. package/dist/v1/schema/policy/ast.d.ts.map +0 -1
  710. package/dist/v1/schema/policy/ast.js +0 -2
  711. package/dist/v1/schema/policy/ast.js.map +0 -1
  712. package/dist/v1/schema/policy/normalize.d.ts +0 -5
  713. package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
  714. package/dist/v1/schema/policy/normalize.js +0 -230
  715. package/dist/v1/schema/policy/normalize.js.map +0 -1
  716. package/dist/v1/schema/policy/validation/branches.d.ts +0 -21
  717. package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
  718. package/dist/v1/schema/policy/validation/branches.js +0 -155
  719. package/dist/v1/schema/policy/validation/branches.js.map +0 -1
  720. package/dist/v1/schema/policy/validation/budgets.d.ts +0 -19
  721. package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
  722. package/dist/v1/schema/policy/validation/budgets.js +0 -132
  723. package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
  724. package/dist/v1/schema/policy/validation/context.d.ts +0 -28
  725. package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
  726. package/dist/v1/schema/policy/validation/context.js +0 -99
  727. package/dist/v1/schema/policy/validation/context.js.map +0 -1
  728. package/dist/v1/schema/policy/validation/references.d.ts +0 -3
  729. package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
  730. package/dist/v1/schema/policy/validation/references.js +0 -136
  731. package/dist/v1/schema/policy/validation/references.js.map +0 -1
  732. package/dist/v1/schema/policy/validation/typing.d.ts +0 -23
  733. package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
  734. package/dist/v1/schema/policy/validation/typing.js +0 -360
  735. package/dist/v1/schema/policy/validation/typing.js.map +0 -1
  736. package/dist/v1/schema/policy/validation/uses.d.ts +0 -6
  737. package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
  738. package/dist/v1/schema/policy/validation/uses.js +0 -272
  739. package/dist/v1/schema/policy/validation/uses.js.map +0 -1
  740. package/dist/v1/schema/policy/validation/validate.d.ts +0 -12
  741. package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
  742. package/dist/v1/schema/policy/validation/validate.js +0 -24
  743. package/dist/v1/schema/policy/validation/validate.js.map +0 -1
  744. package/dist/v1/schema/reference.d.ts +0 -43
  745. package/dist/v1/schema/reference.d.ts.map +0 -1
  746. package/dist/v1/schema/reference.js +0 -31
  747. package/dist/v1/schema/reference.js.map +0 -1
  748. package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
  749. package/dist/v1/schema/resolution/closure.js.map +0 -1
  750. package/dist/v1/schema/resolution/context.d.ts.map +0 -1
  751. package/dist/v1/schema/resolution/context.js.map +0 -1
  752. package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
  753. package/dist/v1/schema/resolution/definition.index.js.map +0 -1
  754. package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
  755. package/dist/v1/schema/resolution/origins.js.map +0 -1
  756. package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
  757. package/dist/v1/schema/resolution/value.registry.js.map +0 -1
  758. package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
  759. package/dist/v1/schema/validation/domain.route.js.map +0 -1
  760. package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
  761. package/dist/v1/schema/validation/domain.structure.js.map +0 -1
  762. package/dist/v1/schema/validation/value.d.ts.map +0 -1
  763. package/dist/v1/schema/validation/value.js.map +0 -1
  764. package/dist/v1/schema/value/extensions/node-path/schema.d.ts +0 -6
  765. package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
  766. package/dist/v1/schema/value/extensions/node-path/schema.js +0 -19
  767. package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
  768. package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
  769. package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
  770. package/dist/v1/schema/value/extensions/node-path/validate.js +0 -80
  771. package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
  772. package/dist/v1/schema/value/full-match.d.ts +0 -7
  773. package/dist/v1/schema/value/full-match.d.ts.map +0 -1
  774. package/dist/v1/schema/value/full-match.js +0 -21
  775. package/dist/v1/schema/value/full-match.js.map +0 -1
  776. package/dist/v1/schema/value/index.d.ts +0 -14
  777. package/dist/v1/schema/value/index.d.ts.map +0 -1
  778. package/dist/v1/schema/value/index.js +0 -24
  779. package/dist/v1/schema/value/index.js.map +0 -1
  780. package/dist/v1/schema/value/instance/assertions.d.ts +0 -7
  781. package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
  782. package/dist/v1/schema/value/instance/assertions.js +0 -59
  783. package/dist/v1/schema/value/instance/assertions.js.map +0 -1
  784. package/dist/v1/schema/value/instance/evaluator.d.ts +0 -5
  785. package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
  786. package/dist/v1/schema/value/instance/evaluator.js +0 -362
  787. package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
  788. package/dist/v1/schema/value/instance/preparation.d.ts +0 -14
  789. package/dist/v1/schema/value/instance/preparation.d.ts.map +0 -1
  790. package/dist/v1/schema/value/instance/preparation.js +0 -137
  791. package/dist/v1/schema/value/instance/preparation.js.map +0 -1
  792. package/dist/v1/schema/value/instance/types.d.ts +0 -37
  793. package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
  794. package/dist/v1/schema/value/instance/types.js +0 -10
  795. package/dist/v1/schema/value/instance/types.js.map +0 -1
  796. package/dist/v1/schema/value/instance.validate.d.ts +0 -13
  797. package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
  798. package/dist/v1/schema/value/instance.validate.js +0 -44
  799. package/dist/v1/schema/value/instance.validate.js.map +0 -1
  800. package/dist/v1/schema/value/instant.d.ts +0 -9
  801. package/dist/v1/schema/value/instant.d.ts.map +0 -1
  802. package/dist/v1/schema/value/instant.js +0 -37
  803. package/dist/v1/schema/value/instant.js.map +0 -1
  804. package/dist/v1/schema/value/location/keywords.d.ts +0 -4
  805. package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
  806. package/dist/v1/schema/value/location/keywords.js +0 -21
  807. package/dist/v1/schema/value/location/keywords.js.map +0 -1
  808. package/dist/v1/schema/value/location/pointer.d.ts +0 -5
  809. package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
  810. package/dist/v1/schema/value/location/pointer.js +0 -50
  811. package/dist/v1/schema/value/location/pointer.js.map +0 -1
  812. package/dist/v1/schema/value/location/walk.d.ts +0 -11
  813. package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
  814. package/dist/v1/schema/value/location/walk.js +0 -54
  815. package/dist/v1/schema/value/location/walk.js.map +0 -1
  816. package/dist/v1/schema/value/object.d.ts +0 -5
  817. package/dist/v1/schema/value/object.d.ts.map +0 -1
  818. package/dist/v1/schema/value/object.js +0 -4
  819. package/dist/v1/schema/value/object.js.map +0 -1
  820. package/dist/v1/schema/value/ordering.d.ts +0 -11
  821. package/dist/v1/schema/value/ordering.d.ts.map +0 -1
  822. package/dist/v1/schema/value/ordering.js +0 -172
  823. package/dist/v1/schema/value/ordering.js.map +0 -1
  824. package/dist/v1/schema/value/profile/canonicalize.d.ts +0 -5
  825. package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
  826. package/dist/v1/schema/value/profile/canonicalize.js +0 -133
  827. package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
  828. package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
  829. package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
  830. package/dist/v1/schema/value/profile/dialect.js +0 -36
  831. package/dist/v1/schema/value/profile/dialect.js.map +0 -1
  832. package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
  833. package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
  834. package/dist/v1/schema/value/profile/json.validate.js +0 -15
  835. package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
  836. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts +0 -79
  837. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
  838. package/dist/v1/schema/value/profile/meta-schema.compiled.js +0 -2080
  839. package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
  840. package/dist/v1/schema/value/profile/meta-schema.d.ts +0 -5
  841. package/dist/v1/schema/value/profile/meta-schema.d.ts.map +0 -1
  842. package/dist/v1/schema/value/profile/meta-schema.js +0 -20
  843. package/dist/v1/schema/value/profile/meta-schema.js.map +0 -1
  844. package/dist/v1/schema/value/profile/rules.d.ts +0 -5
  845. package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
  846. package/dist/v1/schema/value/profile/rules.js +0 -152
  847. package/dist/v1/schema/value/profile/rules.js.map +0 -1
  848. package/dist/v1/schema/value/profile/validate.d.ts +0 -5
  849. package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
  850. package/dist/v1/schema/value/profile/validate.js +0 -47
  851. package/dist/v1/schema/value/profile/validate.js.map +0 -1
  852. package/dist/v1/schema/value/profile/vocabulary.d.ts +0 -3
  853. package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
  854. package/dist/v1/schema/value/profile/vocabulary.js +0 -69
  855. package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
  856. package/dist/v1/schema/value/regexp/ast.d.ts +0 -22
  857. package/dist/v1/schema/value/regexp/ast.d.ts.map +0 -1
  858. package/dist/v1/schema/value/regexp/ast.js +0 -327
  859. package/dist/v1/schema/value/regexp/ast.js.map +0 -1
  860. package/dist/v1/schema/value/regexp/compile.d.ts +0 -4
  861. package/dist/v1/schema/value/regexp/compile.d.ts.map +0 -1
  862. package/dist/v1/schema/value/regexp/compile.js +0 -97
  863. package/dist/v1/schema/value/regexp/compile.js.map +0 -1
  864. package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
  865. package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
  866. package/dist/v1/schema/value/regexp/linear.js +0 -24
  867. package/dist/v1/schema/value/regexp/linear.js.map +0 -1
  868. package/dist/v1/schema/value/regexp/lower.d.ts +0 -4
  869. package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
  870. package/dist/v1/schema/value/regexp/lower.js +0 -27
  871. package/dist/v1/schema/value/regexp/lower.js.map +0 -1
  872. package/dist/v1/schema/value/regexp/matcher.d.ts +0 -8
  873. package/dist/v1/schema/value/regexp/matcher.d.ts.map +0 -1
  874. package/dist/v1/schema/value/regexp/matcher.js +0 -51
  875. package/dist/v1/schema/value/regexp/matcher.js.map +0 -1
  876. package/dist/v1/schema/value/regexp/pattern.d.ts +0 -3
  877. package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
  878. package/dist/v1/schema/value/regexp/pattern.js +0 -39
  879. package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
  880. package/dist/v1/schema/value/regexp/syntax.d.ts +0 -3
  881. package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
  882. package/dist/v1/schema/value/regexp/syntax.js +0 -6
  883. package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
  884. package/dist/v1/schema/value/registry.d.ts +0 -22
  885. package/dist/v1/schema/value/registry.d.ts.map +0 -1
  886. package/dist/v1/schema/value/registry.js +0 -2
  887. package/dist/v1/schema/value/registry.js.map +0 -1
  888. package/dist/v1/schema/value/resources/closure.d.ts +0 -12
  889. package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
  890. package/dist/v1/schema/value/resources/closure.js +0 -59
  891. package/dist/v1/schema/value/resources/closure.js.map +0 -1
  892. package/dist/v1/schema/value/resources/recursion.d.ts +0 -6
  893. package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
  894. package/dist/v1/schema/value/resources/recursion.js +0 -96
  895. package/dist/v1/schema/value/resources/recursion.js.map +0 -1
  896. package/dist/v1/schema/value/resources/references.d.ts +0 -25
  897. package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
  898. package/dist/v1/schema/value/resources/references.js +0 -93
  899. package/dist/v1/schema/value/resources/references.js.map +0 -1
  900. package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
  901. package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
  902. package/dist/v1/schema/value/resources/registry.index.js +0 -114
  903. package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
  904. package/dist/v1/schema/value/schema.d.ts +0 -26
  905. package/dist/v1/schema/value/schema.d.ts.map +0 -1
  906. package/dist/v1/schema/value/schema.js +0 -13
  907. package/dist/v1/schema/value/schema.js.map +0 -1
  908. package/dist/v1/schema/view/declaration.d.ts +0 -14
  909. package/dist/v1/schema/view/declaration.d.ts.map +0 -1
  910. package/dist/v1/schema/view/declaration.js +0 -2
  911. package/dist/v1/schema/view/declaration.js.map +0 -1
  912. package/dist/v1/schema/view/validate.d.ts +0 -4
  913. package/dist/v1/schema/view/validate.d.ts.map +0 -1
  914. package/dist/v1/schema/view/validate.js +0 -22
  915. package/dist/v1/schema/view/validate.js.map +0 -1
  916. package/dist/v1/schema.d.ts +0 -3
  917. package/dist/v1/schema.d.ts.map +0 -1
  918. package/dist/v1/schema.js +0 -3
  919. package/dist/v1/schema.js.map +0 -1
  920. package/dist/v1.d.ts.map +0 -1
  921. package/dist/v1.js.map +0 -1
  922. package/dist/value/accept.d.ts.map +0 -1
  923. package/dist/value/accept.js.map +0 -1
  924. package/dist/value/canonical.d.ts.map +0 -1
  925. package/dist/value/canonical.js.map +0 -1
  926. package/dist/value/decode.d.ts.map +0 -1
  927. package/dist/value/decode.js.map +0 -1
  928. package/dist/value/equal.d.ts.map +0 -1
  929. package/dist/value/equal.js.map +0 -1
  930. package/dist/value/error.d.ts.map +0 -1
  931. package/dist/value/error.js.map +0 -1
  932. package/dist/value/index.d.ts.map +0 -1
  933. package/dist/value/index.js.map +0 -1
  934. package/dist/value/json.d.ts.map +0 -1
  935. package/dist/value/json.js.map +0 -1
  936. package/dist/value/limits.d.ts.map +0 -1
  937. package/dist/value/limits.js.map +0 -1
  938. package/dist/value/types.d.ts.map +0 -1
  939. package/dist/value/types.js.map +0 -1
  940. package/dist/value/unicode.d.ts.map +0 -1
  941. package/dist/value/unicode.js.map +0 -1
  942. package/dist/version/dispatch.d.ts.map +0 -1
  943. package/dist/version/dispatch.js.map +0 -1
  944. package/dist/version/index.d.ts.map +0 -1
  945. package/dist/version/index.js.map +0 -1
@@ -0,0 +1,126 @@
1
+ import type { Value as PortableValue } from '@astrale-os/kernel-dsl/value';
2
+ import type { ClassRef, DefinitionKey, Key, PropertyKey } from '../../addressing/index.js';
3
+ import type { ResolvedMethodCollection } from '../callable/resolved.js';
4
+ import type { StateTopology } from '../state/index.js';
5
+ import type { Diagnostic } from '../validation/diagnostic.js';
6
+ import type { OrderingKind } from '../value/ordering.js';
7
+ import type { ClassDefinition, ClassKind } from './model/class.js';
8
+ import type { DataDefinition } from './model/data.js';
9
+ import type { PropertyDefinition } from './model/property.js';
10
+ import type { PropertyValues } from './property-values.js';
11
+ export interface ResolvedProperty<out Value = PortableValue, out Required extends boolean = boolean, out State extends StateTopology | undefined = StateTopology | undefined, out Input = Value> {
12
+ readonly owner: AnyResolvedClass;
13
+ readonly name: string;
14
+ readonly key: PropertyKey;
15
+ readonly definition: Omit<PropertyDefinition, 'required' | 'state'> & {
16
+ readonly required: Required;
17
+ readonly state?: State;
18
+ };
19
+ /** The one portable scalar ordering domain, when the Property is orderable. */
20
+ readonly ordering?: OrderingKind;
21
+ validate(input: unknown): readonly Diagnostic[];
22
+ readonly __value?: Value;
23
+ readonly __input?: Input;
24
+ }
25
+ export interface ResolvedData {
26
+ readonly owner: ResolvedClass<'node'>;
27
+ readonly definition: DataDefinition;
28
+ }
29
+ export type ResolvedPropertyCollection<ByKey extends Readonly<Record<PropertyKey, ResolvedProperty<unknown>>> = Readonly<Record<PropertyKey, ResolvedProperty<unknown>>>, ByName extends Readonly<Record<string, ResolvedProperty<unknown>>> = Readonly<Record<never, never>>> = Readonly<ByName> & Iterable<ByKey[keyof ByKey]> & {
30
+ readonly byKey: ByKey;
31
+ get<Key extends keyof ByKey>(key: Key): ByKey[Key];
32
+ get(key: PropertyKey): ResolvedProperty | undefined;
33
+ from(input: PropertyInput<ByKey, ByName>): PropertyValues;
34
+ };
35
+ export interface ResolvedClass<Kind extends ClassKind = ClassKind, Properties extends ResolvedPropertyCollection = ResolvedPropertyCollection, InstanceMethods extends ResolvedMethodCollection = ResolvedMethodCollection, StaticMethods extends ResolvedMethodCollection = ResolvedMethodCollection, SelfProperties extends ResolvedPropertyCollection = ResolvedPropertyCollection, SelfInstanceMethods extends ResolvedMethodCollection = ResolvedMethodCollection, SelfStaticMethods extends ResolvedMethodCollection = ResolvedMethodCollection, Definition extends Extract<ClassDefinition, {
36
+ readonly kind: Kind;
37
+ }> = Extract<ClassDefinition, {
38
+ readonly kind: Kind;
39
+ }>, Parents extends readonly unknown[] = readonly unknown[]> {
40
+ readonly ref: ClassRef;
41
+ readonly key: DefinitionKey<string, 'class'>;
42
+ readonly kind: Kind;
43
+ readonly abstract: boolean;
44
+ readonly definition: Definition;
45
+ readonly extends: Parents & readonly ResolvedClass<Kind>[];
46
+ /** Local observation Policies; Class inheritance never contributes an attachment. */
47
+ readonly policies: Definition['policies'];
48
+ readonly data: Kind extends 'node' ? ResolvedData | undefined : undefined;
49
+ readonly properties: Properties;
50
+ readonly methods: Kind extends 'node' ? InstanceMethods : ResolvedMethodCollection<Record<never, never>>;
51
+ readonly static: {
52
+ readonly methods: Kind extends 'node' ? StaticMethods : ResolvedMethodCollection<Record<never, never>>;
53
+ };
54
+ readonly self: {
55
+ readonly data: Kind extends 'node' ? ResolvedData | undefined : undefined;
56
+ readonly properties: SelfProperties;
57
+ readonly methods: Kind extends 'node' ? SelfInstanceMethods : ResolvedMethodCollection<Record<never, never>>;
58
+ readonly static: {
59
+ readonly methods: Kind extends 'node' ? SelfStaticMethods : ResolvedMethodCollection<Record<never, never>>;
60
+ };
61
+ };
62
+ satisfies(selected: ResolvedClass<Kind>): boolean;
63
+ validateProperties(input: unknown): readonly Diagnostic[];
64
+ }
65
+ /** One resolved Class with an exact graph kind, used at heterogeneous Domain boundaries. */
66
+ export type AnyResolvedClass = ResolvedClass<'node'> | ResolvedClass<'edge'>;
67
+ /** Exact Class keys satisfied by one resolved Class, including transitive parents. */
68
+ export type ClassSatisfactionKeysOf<Class> = ClassSatisfactionKeys<Class, never>;
69
+ type ClassSatisfactionKeys<Class, Seen> = Class extends Seen ? never : (Class extends {
70
+ readonly key: infer ExactKey extends DefinitionKey<Key.Origin, 'class'>;
71
+ } ? ExactKey : never) | (Class extends ResolvedClass<ClassKind, ResolvedPropertyCollection, ResolvedMethodCollection, ResolvedMethodCollection, ResolvedPropertyCollection, ResolvedMethodCollection, ResolvedMethodCollection, ClassDefinition, infer Parents> ? ClassSatisfactionKeys<Extract<Parents[number], ResolvedClass>, Seen | Class> : never);
72
+ export type PropertyValueOf<Property> = Property extends ResolvedProperty<infer Value, boolean, StateTopology | undefined, unknown> ? Value : never;
73
+ export type PropertiesOf<Class> = Class extends {
74
+ readonly properties: infer Properties extends ResolvedPropertyCollection;
75
+ } ? Properties : ResolvedPropertyCollection<Record<never, never>>;
76
+ export type PropertyValuesOf<Class> = PropertyValues & Readonly<{
77
+ [Key in keyof PropertyByKeyOf<Class>]?: PropertyValueOf<PropertyByKeyOf<Class>[Key]>;
78
+ }>;
79
+ export type PropertyInputOf<Class> = PropertyWriteInput<PropertyByKeyOf<Class>, PropertyByNameOf<Class>>;
80
+ export type MethodsOf<Class> = Class extends {
81
+ readonly kind: 'node';
82
+ readonly methods: infer Methods extends ResolvedMethodCollection;
83
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
84
+ export type StaticMethodsOf<Class> = Class extends {
85
+ readonly kind: 'node';
86
+ readonly static: {
87
+ readonly methods: infer Methods extends ResolvedMethodCollection;
88
+ };
89
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
90
+ export type SelfPropertiesOf<Class> = Class extends {
91
+ readonly self: {
92
+ readonly properties: infer Properties extends ResolvedPropertyCollection;
93
+ };
94
+ } ? Properties : ResolvedPropertyCollection<Record<never, never>>;
95
+ export type SelfMethodsOf<Class> = Class extends {
96
+ readonly kind: 'node';
97
+ readonly self: {
98
+ readonly methods: infer Methods extends ResolvedMethodCollection;
99
+ };
100
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
101
+ export type SelfStaticMethodsOf<Class> = Class extends {
102
+ readonly kind: 'node';
103
+ readonly self: {
104
+ readonly static: {
105
+ readonly methods: infer Methods extends ResolvedMethodCollection;
106
+ };
107
+ };
108
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
109
+ type PropertyInput<ByKey extends Readonly<Record<PropertyKey, ResolvedProperty<unknown>>>, ByName extends Readonly<Record<string, ResolvedProperty<unknown>>>> = Readonly<{
110
+ [Key in keyof ByKey]?: PropertyValueOf<ByKey[Key]>;
111
+ } & {
112
+ [Name in keyof ByName]?: PropertyValueOf<ByName[Name]>;
113
+ }>;
114
+ type PropertyWriteInput<ByKey extends Readonly<Record<PropertyKey, ResolvedProperty<unknown>>>, ByName extends Readonly<Record<string, ResolvedProperty<unknown>>>> = Readonly<{
115
+ [Key in keyof ByKey]?: PropertyWriteValueOf<ByKey[Key]>;
116
+ } & {
117
+ [Name in keyof ByName]?: PropertyWriteValueOf<ByName[Name]>;
118
+ }>;
119
+ type PropertyWriteValueOf<Property> = Property extends ResolvedProperty<unknown, boolean, StateTopology | undefined, infer Input> ? Input : never;
120
+ type PropertyByKeyOf<Class> = PropertiesOf<Class> extends {
121
+ readonly byKey: infer ByKey extends Readonly<Record<PropertyKey, ResolvedProperty<unknown>>>;
122
+ } ? ByKey : Readonly<Record<never, never>>;
123
+ type PropertyByNameOf<Class> = Readonly<{
124
+ [Name in Exclude<keyof PropertiesOf<Class>, keyof ResolvedPropertyCollection>]: Extract<PropertiesOf<Class>[Name], ResolvedProperty<unknown, boolean, StateTopology | undefined, unknown>>;
125
+ }>;
126
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export type * from './model/core.js';
2
+ export type * from './resolved.js';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,26 @@
1
+ import type { ClassRef, CoreRef, DefinitionBase } from '../../../addressing/index.js';
2
+ import type { PropertyValues } from '../../class/property-values.js';
3
+ import type { PolicyObjectRef } from '../../policy/model/policy.js';
4
+ export interface DomainEndpointRef {
5
+ readonly kind: 'domain';
6
+ }
7
+ /**
8
+ * One Core Edge endpoint: the owning Domain itself, or any local Definition whose installed
9
+ * projection resolves through an exact member Path. That is the same projected-member vocabulary
10
+ * a Policy object names, so both languages address one identity the same way.
11
+ */
12
+ export type CoreEndpointRef = PolicyObjectRef | DomainEndpointRef;
13
+ export interface CoreDefinition extends DefinitionBase<CoreRef> {
14
+ readonly class: ClassRef;
15
+ readonly properties: PropertyValues;
16
+ }
17
+ export interface CoreEdge {
18
+ readonly class: ClassRef;
19
+ readonly source: CoreEndpointRef;
20
+ readonly target: CoreEndpointRef;
21
+ readonly properties: PropertyValues;
22
+ }
23
+ export interface CoreContent {
24
+ readonly nodes: Readonly<Record<string, CoreDefinition>>;
25
+ readonly edges: readonly CoreEdge[];
26
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,25 @@
1
+ import type { DefinitionKey } from '../../addressing/index.js';
2
+ import type { ResolvedMethod } from '../callable/resolved.js';
3
+ import type { PropertyValues } from '../class/property-values.js';
4
+ import type { ResolvedClass } from '../class/resolved.js';
5
+ import type { ResolvedDefinition } from '../resolved.js';
6
+ import type { CoreDefinition } from './model/core.js';
7
+ export interface ResolvedCoreDefinition {
8
+ readonly ref: CoreDefinition['ref'];
9
+ readonly key: DefinitionKey<string, 'core'>;
10
+ readonly class: ResolvedClass<'node'>;
11
+ readonly properties: PropertyValues;
12
+ readonly definition: CoreDefinition;
13
+ }
14
+ export interface ResolvedDomainEndpoint {
15
+ readonly kind: 'domain';
16
+ readonly origin: string;
17
+ }
18
+ /** The owning Domain, one local Definition, or one local Class-owned Method. */
19
+ export type ResolvedCoreEndpoint = ResolvedDefinition | ResolvedMethod | ResolvedDomainEndpoint;
20
+ export interface ResolvedCoreEdge {
21
+ readonly class: ResolvedClass<'edge'>;
22
+ readonly source: ResolvedCoreEndpoint;
23
+ readonly target: ResolvedCoreEndpoint;
24
+ readonly properties: PropertyValues;
25
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,12 @@
1
+ /** Exact V1 bound for optional human-facing declaration descriptions. */
2
+ export declare const description: Readonly<{
3
+ readonly type: 'string';
4
+ readonly minLength: 1;
5
+ readonly maxLength: 1000;
6
+ }>;
7
+ /** Exact V1 bound for optional Node Class presentation icons. */
8
+ export declare const icon: Readonly<{
9
+ readonly type: 'string';
10
+ readonly minLength: 1;
11
+ readonly maxLength: 8000;
12
+ }>;
@@ -0,0 +1,12 @@
1
+ /** Exact V1 bound for optional human-facing declaration descriptions. */
2
+ export const description = Object.freeze({
3
+ type: 'string',
4
+ minLength: 1,
5
+ maxLength: 1000,
6
+ });
7
+ /** Exact V1 bound for optional Node Class presentation icons. */
8
+ export const icon = Object.freeze({
9
+ type: 'string',
10
+ minLength: 1,
11
+ maxLength: 8000,
12
+ });
@@ -0,0 +1,7 @@
1
+ import type { FunctionDefinition } from './callable/model/callable.js';
2
+ import type { ClassDefinition } from './class/model/class.js';
3
+ import type { CoreDefinition } from './core/model/core.js';
4
+ import type { PolicyDefinition } from './policy/model/policy.js';
5
+ import type { ViewDefinition } from './view/model/view.js';
6
+ /** Every named V1 product Definition. Property and Method remain Class-owned members. */
7
+ export type Definition = ClassDefinition | FunctionDefinition | PolicyDefinition | ViewDefinition | CoreDefinition;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,28 @@
1
+ export { isMethodExecutable } from './callable/executable.js';
2
+ export { isBinaryInput } from './callable/model/callable.js';
3
+ export type { ClassRef, CoreRef, DefinitionBase, DefinitionKey, DefinitionRef, FunctionRef, MethodKey, PolicyRef, PropertyKey, ViewRef, } from '../addressing/index.js';
4
+ export type { Value as PropertyValue } from '@astrale-os/kernel-dsl/value';
5
+ export type { JsonSchema as ValueSchema, JsonSchemaObject as ValueSchemaObject, } from './value/model/schema.js';
6
+ export type { OrderingKind } from './value/ordering.js';
7
+ export { stateMachine } from './state/index.js';
8
+ export type { EventOf, StateMachine, StateOf, StateTopology } from './state/index.js';
9
+ export type * from './callable/model/callable.js';
10
+ export type * from './callable/resolved.js';
11
+ export type * from './class/model/class.js';
12
+ export type { DataDefinition, DataFacet, MediaType } from './class/model/data.js';
13
+ export type * from './class/model/edge.js';
14
+ export type * from './class/model/property.js';
15
+ export type * from './class/resolved.js';
16
+ export type * from './class/facets.js';
17
+ export { PropertyValues } from './class/property-values.js';
18
+ export type { PropertyValuesOperations } from './class/property-values.js';
19
+ export type * from './core/model/core.js';
20
+ export type * from './core/resolved.js';
21
+ export type { Definition } from './definition.js';
22
+ export type { ResolvedDefinition, ResolvedDefinitionOf } from './resolved.js';
23
+ export type { Diagnostic, DiagnosticCode } from './validation/diagnostic.js';
24
+ export type * from './policy/model/policy.js';
25
+ export { policyVariableClass, policyVariableSelector, policyObjectKey, policyObjectOrigin, projectedMemberClass, } from './policy/model/policy.js';
26
+ export type * from './policy/resolved.js';
27
+ export type * from './view/model/view.js';
28
+ export type * from './view/resolved.js';
@@ -0,0 +1,5 @@
1
+ export { isMethodExecutable } from './callable/executable.js';
2
+ export { isBinaryInput } from './callable/model/callable.js';
3
+ export { stateMachine } from './state/index.js';
4
+ export { PropertyValues } from './class/property-values.js';
5
+ export { policyVariableClass, policyVariableSelector, policyObjectKey, policyObjectOrigin, projectedMemberClass, } from './policy/model/policy.js';
@@ -0,0 +1,20 @@
1
+ import type { PolicyEdgePattern, PolicyPatternExpression, PolicyPatternTerm, PolicyVariableSelector } from '../model/policy.js';
2
+ export interface PatternBranch {
3
+ readonly terms: ReadonlyMap<string, PolicyPatternTerm>;
4
+ readonly equalities: readonly (readonly [string, string])[];
5
+ readonly edges: readonly PatternEdgeUse[];
6
+ readonly variables: ReadonlyMap<string, PolicyVariableSelector>;
7
+ readonly requiredVariables: ReadonlySet<string>;
8
+ readonly namespace: string;
9
+ }
10
+ export interface PatternEdgeUse {
11
+ readonly pattern: PolicyEdgePattern;
12
+ readonly namespace: string;
13
+ }
14
+ export type PolicyTargetMode = 'object' | 'edge';
15
+ export declare function branchesOf(pattern: PolicyPatternExpression, namespace: string): readonly PatternBranch[];
16
+ export declare function branchProduct(children: readonly (readonly PatternBranch[])[]): readonly PatternBranch[];
17
+ export declare function capBranches(values: readonly PatternBranch[]): readonly PatternBranch[];
18
+ export declare function isConnected(branch: PatternBranch): boolean;
19
+ export declare function targetMode(branch: PatternBranch): PolicyTargetMode | undefined;
20
+ export declare function termKey(term: PolicyPatternTerm, namespace: string): string;
@@ -0,0 +1,174 @@
1
+ import { definitionRefIndex } from '../../../addressing/ordering.js';
2
+ import { policyObjectKey, policyVariableSelector } from '../model/policy.js';
3
+ import { BRANCH_OVERFLOW } from './budgets.js';
4
+ export function branchesOf(pattern, namespace) {
5
+ const variables = collectVariableClasses(pattern, namespace);
6
+ return branchesForNode(pattern, namespace, variables);
7
+ }
8
+ export function branchProduct(children) {
9
+ let result = [emptyBranch()];
10
+ for (const child of children) {
11
+ const next = [];
12
+ for (const left of result) {
13
+ for (const right of child) {
14
+ next.push(mergeBranches(left, right));
15
+ if (next.length >= BRANCH_OVERFLOW)
16
+ return next;
17
+ }
18
+ }
19
+ result = next;
20
+ }
21
+ return result;
22
+ }
23
+ export function capBranches(values) {
24
+ return values.length <= BRANCH_OVERFLOW ? values : values.slice(0, BRANCH_OVERFLOW);
25
+ }
26
+ export function isConnected(branch) {
27
+ const mode = targetMode(branch);
28
+ if (mode === undefined)
29
+ return false;
30
+ const vertices = new Set(['subject', ...branch.terms.keys()]);
31
+ for (const variable of branch.requiredVariables)
32
+ vertices.add(variable);
33
+ const union = new UnionFind(vertices);
34
+ for (const edge of branch.edges) {
35
+ const source = termKey(edge.pattern.source, edge.namespace);
36
+ const target = termKey(edge.pattern.target, edge.namespace);
37
+ union.add(source);
38
+ union.add(target);
39
+ union.join(source, target);
40
+ }
41
+ for (const [left, right] of branch.equalities)
42
+ union.join(left, right);
43
+ const root = union.find('subject');
44
+ return [...vertices].every((vertex) => union.find(vertex) === root);
45
+ }
46
+ export function targetMode(branch) {
47
+ let object = false;
48
+ let source = false;
49
+ let target = false;
50
+ for (const term of branch.terms.values()) {
51
+ object ||= term.kind === 'object';
52
+ source ||= term.kind === 'source';
53
+ target ||= term.kind === 'target';
54
+ }
55
+ if (object && !source && !target)
56
+ return 'object';
57
+ if (!object && (source || target))
58
+ return 'edge';
59
+ return undefined;
60
+ }
61
+ export function termKey(term, namespace) {
62
+ return term.kind === 'variable'
63
+ ? variableKey(namespace, term.id)
64
+ : term.kind === 'ref'
65
+ ? `ref:${term.ref.kind === 'method' ? policyObjectKey(term.ref) : definitionRefIndex(term.ref)}`
66
+ : term.kind;
67
+ }
68
+ function branchesForNode(pattern, namespace, variables) {
69
+ if ('source' in pattern) {
70
+ return [
71
+ {
72
+ terms: new Map([pattern.source, pattern.target].map((term) => [termKey(term, namespace), term])),
73
+ equalities: [],
74
+ edges: [{ pattern, namespace }],
75
+ variables,
76
+ requiredVariables: new Set(),
77
+ namespace,
78
+ },
79
+ ];
80
+ }
81
+ if ('sameNode' in pattern) {
82
+ const terms = new Map([pattern.sameNode.left, pattern.sameNode.right].map((term) => [
83
+ termKey(term, namespace),
84
+ term,
85
+ ]));
86
+ return [
87
+ {
88
+ terms,
89
+ equalities: [
90
+ [termKey(pattern.sameNode.left, namespace), termKey(pattern.sameNode.right, namespace)],
91
+ ],
92
+ edges: [],
93
+ variables,
94
+ requiredVariables: new Set(),
95
+ namespace,
96
+ },
97
+ ];
98
+ }
99
+ if ('exists' in pattern) {
100
+ const direct = new Set(pattern.exists.nodes.map((node) => variableKey(namespace, node.variable.id)));
101
+ return branchesForNode(pattern.exists.where, namespace, variables).map((branch) => ({
102
+ ...branch,
103
+ requiredVariables: new Set([...branch.requiredVariables, ...direct]),
104
+ }));
105
+ }
106
+ const children = ('allOf' in pattern ? pattern.allOf : pattern.anyOf).map((child) => branchesForNode(child, namespace, variables));
107
+ return 'allOf' in pattern ? branchProduct(children) : capBranches(children.flat());
108
+ }
109
+ function emptyBranch() {
110
+ return {
111
+ terms: new Map(),
112
+ equalities: [],
113
+ edges: [],
114
+ variables: new Map(),
115
+ requiredVariables: new Set(),
116
+ namespace: '$',
117
+ };
118
+ }
119
+ function mergeBranches(left, right) {
120
+ return {
121
+ terms: new Map([...left.terms, ...right.terms]),
122
+ equalities: [...left.equalities, ...right.equalities],
123
+ edges: [...left.edges, ...right.edges],
124
+ variables: new Map([...left.variables, ...right.variables]),
125
+ requiredVariables: new Set([...left.requiredVariables, ...right.requiredVariables]),
126
+ namespace: `${left.namespace}&${right.namespace}`,
127
+ };
128
+ }
129
+ function collectVariableClasses(pattern, namespace) {
130
+ const result = new Map();
131
+ const visit = (node) => {
132
+ if ('exists' in node) {
133
+ for (const variable of node.exists.nodes) {
134
+ result.set(variableKey(namespace, variable.variable.id), policyVariableSelector(variable));
135
+ }
136
+ visit(node.exists.where);
137
+ }
138
+ else if ('allOf' in node)
139
+ node.allOf.forEach(visit);
140
+ else if ('anyOf' in node)
141
+ node.anyOf.forEach(visit);
142
+ };
143
+ visit(pattern);
144
+ return result;
145
+ }
146
+ function variableKey(namespace, id) {
147
+ return `variable:${namespace}:${id}`;
148
+ }
149
+ class UnionFind {
150
+ #parents = new Map();
151
+ constructor(values) {
152
+ for (const value of values)
153
+ this.add(value);
154
+ }
155
+ add(value) {
156
+ if (!this.#parents.has(value))
157
+ this.#parents.set(value, value);
158
+ }
159
+ find(value) {
160
+ this.add(value);
161
+ const parent = this.#parents.get(value);
162
+ if (parent === value)
163
+ return value;
164
+ const root = this.find(parent);
165
+ this.#parents.set(value, root);
166
+ return root;
167
+ }
168
+ join(left, right) {
169
+ const a = this.find(left);
170
+ const b = this.find(right);
171
+ if (a !== b)
172
+ this.#parents.set(b, a);
173
+ }
174
+ }
@@ -0,0 +1,16 @@
1
+ import type { PolicyCheckExpression } from '../model/policy.js';
2
+ export declare const MAX_PATTERN_DEPTH = 4;
3
+ export declare const MAX_BRANCHES = 8;
4
+ export declare const MAX_VARIABLES = 4;
5
+ export declare const MAX_EDGES = 6;
6
+ export declare const MAX_REPEAT = 3;
7
+ export declare const MAX_DOMAINS = 4;
8
+ export declare const MAX_CHECK_DEPTH = 4;
9
+ export declare const MAX_CHECK_LEAVES = 8;
10
+ export declare const BRANCH_OVERFLOW: number;
11
+ export interface CheckMeasure {
12
+ readonly depth: number;
13
+ readonly branches: number;
14
+ readonly leaves: number;
15
+ }
16
+ export declare function measureChecks(expression: PolicyCheckExpression): CheckMeasure;
@@ -0,0 +1,25 @@
1
+ export const MAX_PATTERN_DEPTH = 4;
2
+ export const MAX_BRANCHES = 8;
3
+ export const MAX_VARIABLES = 4;
4
+ export const MAX_EDGES = 6;
5
+ export const MAX_REPEAT = 3;
6
+ export const MAX_DOMAINS = 4;
7
+ export const MAX_CHECK_DEPTH = 4;
8
+ export const MAX_CHECK_LEAVES = 8;
9
+ export const BRANCH_OVERFLOW = MAX_BRANCHES + 1;
10
+ export function measureChecks(expression) {
11
+ if ('check' in expression || 'sameNode' in expression)
12
+ return { depth: 1, branches: 1, leaves: 1 };
13
+ const children = ('allOf' in expression ? expression.allOf : expression.anyOf).map(measureChecks);
14
+ const branches = 'allOf' in expression
15
+ ? children.reduce((value, child) => saturatingProduct(value, child.branches), 1)
16
+ : children.reduce((value, child) => Math.min(BRANCH_OVERFLOW, value + child.branches), 0);
17
+ return {
18
+ depth: 1 + Math.max(0, ...children.map((child) => child.depth)),
19
+ branches,
20
+ leaves: children.reduce((value, child) => value + child.leaves, 0),
21
+ };
22
+ }
23
+ function saturatingProduct(left, right) {
24
+ return Math.min(BRANCH_OVERFLOW, left * right);
25
+ }
@@ -0,0 +1,4 @@
1
+ export type * from './model/policy.js';
2
+ export { policyVariableClass, policyVariableSelector, policyObjectKey, policyObjectOrigin, projectedMemberClass, } from './model/policy.js';
3
+ export type * from './resolved.js';
4
+ export * from './normalization/normalize.js';
@@ -0,0 +1,2 @@
1
+ export { policyVariableClass, policyVariableSelector, policyObjectKey, policyObjectOrigin, projectedMemberClass, } from './model/policy.js';
2
+ export * from './normalization/normalize.js';
@@ -0,0 +1,116 @@
1
+ import type { CoreRef, ClassRef, FunctionRef, PolicyRef, ViewRef, DefinitionBase, MethodAddress } from '../../../addressing/index.js';
2
+ export type PolicyPatternTerm = {
3
+ readonly kind: 'subject';
4
+ } | {
5
+ readonly kind: 'object';
6
+ } | {
7
+ readonly kind: 'source';
8
+ } | {
9
+ readonly kind: 'target';
10
+ } | {
11
+ readonly kind: 'variable';
12
+ readonly id: number;
13
+ } | {
14
+ readonly kind: 'ref';
15
+ readonly ref: PolicyObjectRef;
16
+ };
17
+ /** Identity equality; both terms must resolve to one valid Node. */
18
+ export interface PolicySameNode<Term> {
19
+ readonly sameNode: {
20
+ readonly left: Term;
21
+ readonly right: Term;
22
+ };
23
+ }
24
+ export interface ExactPolicyVariable {
25
+ readonly variable: {
26
+ readonly kind: 'variable';
27
+ readonly id: number;
28
+ };
29
+ readonly class: ClassRef;
30
+ }
31
+ export interface SelectedPolicyVariable {
32
+ readonly variable: {
33
+ readonly kind: 'variable';
34
+ readonly id: number;
35
+ };
36
+ readonly selector: {
37
+ readonly kind: 'any';
38
+ } | {
39
+ readonly kind: 'satisfies';
40
+ readonly class: ClassRef;
41
+ };
42
+ }
43
+ /**
44
+ * An existential Node binding. The class-bearing legacy form is deliberately retained as the
45
+ * canonical exact selector so persisted V1 DomainSchema documents keep their original meaning.
46
+ */
47
+ export type PolicyVariable = ExactPolicyVariable | SelectedPolicyVariable;
48
+ export type PolicyVariableSelector = {
49
+ readonly kind: 'exact';
50
+ readonly class: ClassRef;
51
+ } | SelectedPolicyVariable['selector'];
52
+ /** Resolve the semantic selector while preserving the legacy exact wire representation. */
53
+ export declare function policyVariableSelector(variable: PolicyVariable): PolicyVariableSelector;
54
+ /** Return the selector's referenced Class, when it has one. */
55
+ export declare function policyVariableClass(variable: PolicyVariable): ClassRef | undefined;
56
+ export interface PolicyRepeat {
57
+ readonly min: number;
58
+ readonly max: number;
59
+ }
60
+ export interface PolicyEdgePattern {
61
+ readonly source: PolicyPatternTerm;
62
+ readonly class: ClassRef;
63
+ readonly target: PolicyPatternTerm;
64
+ readonly repeat?: PolicyRepeat;
65
+ }
66
+ export type PolicyPatternExpression = PolicyEdgePattern | PolicySameNode<PolicyPatternTerm> | {
67
+ readonly exists: {
68
+ readonly nodes: readonly PolicyVariable[];
69
+ readonly where: PolicyPatternExpression;
70
+ };
71
+ } | {
72
+ readonly allOf: readonly PolicyPatternExpression[];
73
+ } | {
74
+ readonly anyOf: readonly PolicyPatternExpression[];
75
+ };
76
+ export type PolicyExpression = {
77
+ readonly match: PolicyPatternExpression;
78
+ } | {
79
+ readonly allOf: readonly PolicyRef[];
80
+ } | {
81
+ readonly anyOf: readonly PolicyRef[];
82
+ };
83
+ export interface PolicyDefinition extends DefinitionBase<PolicyRef> {
84
+ readonly expression: PolicyExpression;
85
+ readonly description?: string;
86
+ }
87
+ /** Local Domain members whose installed projection resolves through one exact member Path. */
88
+ export type PolicyObjectRef = ClassRef | FunctionRef | PolicyRef | ViewRef | CoreRef | MethodAddress;
89
+ /** Exact projected identity, including Class-owned Method declarations. */
90
+ export declare function policyObjectKey(ref: PolicyObjectRef): string;
91
+ export declare function policyObjectOrigin(ref: PolicyObjectRef): string;
92
+ export declare function projectedMemberClass(ref: Exclude<PolicyObjectRef, CoreRef>): ClassRef;
93
+ export type PolicyCheckObject = {
94
+ readonly kind: 'self';
95
+ } | {
96
+ readonly kind: 'input';
97
+ readonly field: string;
98
+ } | {
99
+ readonly kind: 'ref';
100
+ readonly ref: PolicyObjectRef;
101
+ };
102
+ /** Versioned Policy-check grammar specialized by each lifecycle boundary. */
103
+ export type PolicyCheckExpression<Policy = PolicyRef, Object = PolicyCheckObject> = {
104
+ readonly check: Policy;
105
+ readonly object: Object;
106
+ } | PolicySameNode<Object> | {
107
+ readonly allOf: readonly [
108
+ PolicyCheckExpression<Policy, Object>,
109
+ ...PolicyCheckExpression<Policy, Object>[]
110
+ ];
111
+ } | {
112
+ readonly anyOf: readonly [
113
+ PolicyCheckExpression<Policy, Object>,
114
+ ...PolicyCheckExpression<Policy, Object>[]
115
+ ];
116
+ };