@astrale-os/kernel-dsl 0.2.0-beta.5 → 0.2.0-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (752) 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 +8 -0
  12. package/dist/v1/addressing/domain-dependency.js +1 -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 +8 -3
  24. package/dist/v1/addressing/patterns.js +7 -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.d.ts → callable/authoring.d.ts} +28 -14
  30. package/dist/v1/builder/{callable.js → callable/authoring.js} +23 -5
  31. package/dist/v1/builder/class/authoring.d.ts +128 -0
  32. package/dist/v1/builder/class/authoring.js +135 -0
  33. package/dist/v1/builder/class/property.d.ts +52 -0
  34. package/dist/v1/builder/class/property.js +49 -0
  35. package/dist/v1/builder/core/authoring.d.ts +32 -0
  36. package/dist/v1/builder/{core.js → core/authoring.js} +5 -7
  37. package/dist/v1/builder/index.d.ts +25 -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/{compiler → lowering}/callable.js +11 -14
  41. package/dist/v1/builder/lowering/class.d.ts +22 -0
  42. package/dist/v1/builder/lowering/class.js +129 -0
  43. package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
  44. package/dist/v1/builder/{compiler/core.properties.js → lowering/core-properties.js} +14 -8
  45. package/dist/v1/builder/lowering/core.d.ts +22 -0
  46. package/dist/v1/builder/{compiler → lowering}/core.js +9 -6
  47. package/dist/v1/builder/lowering/policy.d.ts +16 -0
  48. package/dist/v1/builder/{compiler → lowering}/policy.js +19 -14
  49. package/dist/v1/builder/{compiler/schema.capture.d.ts → lowering/schema/capture.d.ts} +2 -3
  50. package/dist/v1/builder/lowering/schema/capture.js +70 -0
  51. package/dist/v1/builder/{compiler/schema.d.ts → lowering/schema/compile.d.ts} +4 -4
  52. package/dist/v1/builder/{compiler/schema.js → lowering/schema/compile.js} +32 -42
  53. package/dist/v1/builder/lowering/schema/context.d.ts +46 -0
  54. package/dist/v1/builder/{compiler/schema.context.js → lowering/schema/context.js} +47 -60
  55. package/dist/v1/builder/{compiler/schema.ownership.d.ts → lowering/schema/ownership.d.ts} +1 -2
  56. package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +1 -2
  57. package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
  58. package/dist/v1/builder/{compiler/value.js → lowering/value/compile.js} +34 -58
  59. package/dist/v1/builder/lowering/value/path.d.ts +3 -0
  60. package/dist/v1/builder/{compiler/value.path.js → lowering/value/path.js} +1 -2
  61. package/dist/v1/builder/{compiler/value.zod.d.ts → lowering/value/zod.d.ts} +4 -5
  62. package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +5 -6
  63. package/dist/v1/builder/lowering/view.d.ts +11 -0
  64. package/dist/v1/builder/{compiler → lowering}/view.js +7 -6
  65. package/dist/v1/builder/{policy.d.ts → policy/authoring.d.ts} +19 -17
  66. package/dist/v1/builder/{policy.js → policy/authoring.js} +23 -12
  67. package/dist/v1/builder/schema/define.d.ts +10 -0
  68. package/dist/v1/builder/{schema.js → schema/define.js} +1 -2
  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/{internal/authoring.d.ts → schema/handle.d.ts} +1 -2
  72. package/dist/v1/builder/{internal/authoring.js → schema/handle.js} +0 -1
  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/{internal/authoring.lazy.d.ts → schema/lazy.d.ts} +0 -1
  76. package/dist/v1/builder/{internal/authoring.lazy.js → schema/lazy.js} +0 -1
  77. package/dist/v1/builder/schema/projection.d.ts +247 -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/{internal/path.metadata.js → value/path-metadata.js} +0 -1
  83. package/dist/v1/builder/value/path.d.ts +8 -0
  84. package/dist/v1/builder/{path.js → value/path.js} +2 -3
  85. package/dist/v1/builder/{value-schema.d.ts → value/schema.d.ts} +2 -3
  86. package/dist/v1/builder/{value-schema.js → value/schema.js} +0 -1
  87. package/dist/v1/builder/view/authoring.d.ts +21 -0
  88. package/dist/v1/builder/view/authoring.js +11 -0
  89. package/dist/v1/bundle/codec.d.ts +0 -1
  90. package/dist/v1/bundle/codec.js +13 -13
  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 +840 -0
  105. package/dist/v1/compiled/admission/revision.d.ts +4 -0
  106. package/dist/v1/compiled/admission/revision.js +73 -0
  107. package/dist/v1/compiled/admission/semantics.d.ts +7 -0
  108. package/dist/v1/compiled/admission/semantics.js +1091 -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 +113 -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/index.d.ts +7 -0
  116. package/dist/v1/compiled/index.js +5 -0
  117. package/dist/v1/compiled/loader/index.d.ts +1 -0
  118. package/dist/v1/compiled/loader/index.js +1 -0
  119. package/dist/v1/compiled/loader/load.d.ts +4 -0
  120. package/dist/v1/compiled/loader/load.js +139 -0
  121. package/dist/v1/compiled/model/schema.d.ts +73 -0
  122. package/dist/v1/compiled/model/schema.js +1 -0
  123. package/dist/v1/domain/create.d.ts +8 -0
  124. package/dist/v1/domain/create.js +192 -0
  125. package/dist/v1/domain/index.d.ts +2 -0
  126. package/dist/v1/domain/index.js +1 -0
  127. package/dist/v1/domain/model/domain.d.ts +53 -0
  128. package/dist/v1/domain/model/domain.js +1 -0
  129. package/dist/v1/domain/model/input.d.ts +27 -0
  130. package/dist/v1/domain/model/input.js +1 -0
  131. package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
  132. package/dist/v1/domain/namespace/member-collection.js +81 -0
  133. package/dist/v1/domain/projection/classes.d.ts +4 -0
  134. package/dist/v1/domain/projection/classes.js +200 -0
  135. package/dist/v1/domain/validation/create.d.ts +18 -0
  136. package/dist/v1/domain/validation/create.js +75 -0
  137. package/dist/v1/index.d.ts +12 -5
  138. package/dist/v1/index.js +5 -3
  139. package/dist/v1/language/callable/index.d.ts +2 -0
  140. package/dist/v1/language/callable/index.js +1 -0
  141. package/dist/v1/language/callable/model/callable.d.ts +33 -0
  142. package/dist/v1/language/callable/model/callable.js +1 -0
  143. package/dist/v1/language/callable/resolved.d.ts +68 -0
  144. package/dist/v1/language/callable/resolved.js +1 -0
  145. package/dist/v1/language/class/facets.d.ts +58 -0
  146. package/dist/v1/language/class/facets.js +1 -0
  147. package/dist/v1/language/class/index.d.ts +8 -0
  148. package/dist/v1/language/class/index.js +1 -0
  149. package/dist/v1/language/class/model/class.d.ts +36 -0
  150. package/dist/v1/language/class/model/class.js +1 -0
  151. package/dist/v1/{schema/definition → language/class/model}/data.d.ts +2 -3
  152. package/dist/v1/{schema/definition → language/class/model}/data.js +0 -1
  153. package/dist/v1/{schema/definition → language/class/model}/edge.d.ts +9 -6
  154. package/dist/v1/language/class/model/edge.js +1 -0
  155. package/dist/v1/{schema/definition → language/class/model}/property.d.ts +6 -6
  156. package/dist/v1/language/class/model/property.js +1 -0
  157. package/dist/v1/language/class/property-values.d.ts +15 -0
  158. package/dist/v1/language/class/property-values.js +30 -0
  159. package/dist/v1/language/class/resolved.d.ts +123 -0
  160. package/dist/v1/language/class/resolved.js +1 -0
  161. package/dist/v1/language/core/index.d.ts +2 -0
  162. package/dist/v1/language/core/index.js +1 -0
  163. package/dist/v1/language/core/model/core.d.ts +20 -0
  164. package/dist/v1/language/core/model/core.js +1 -0
  165. package/dist/v1/language/core/resolved.d.ts +21 -0
  166. package/dist/v1/language/core/resolved.js +1 -0
  167. package/dist/v1/{schema → language/definition}/metadata.d.ts +0 -1
  168. package/dist/v1/{schema → language/definition}/metadata.js +0 -1
  169. package/dist/v1/language/definition.d.ts +7 -0
  170. package/dist/v1/language/definition.js +1 -0
  171. package/dist/v1/language/index.d.ts +23 -0
  172. package/dist/v1/language/index.js +1 -0
  173. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +2 -4
  174. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +5 -28
  175. package/dist/v1/{schema/policy/validation → language/policy/analysis}/budgets.d.ts +1 -4
  176. package/dist/v1/language/policy/analysis/budgets.js +25 -0
  177. package/dist/v1/language/policy/index.d.ts +3 -0
  178. package/dist/v1/language/policy/index.js +1 -0
  179. package/dist/v1/{schema/policy/ast.d.ts → language/policy/model/policy.d.ts} +7 -7
  180. package/dist/v1/language/policy/model/policy.js +1 -0
  181. package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
  182. package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +12 -16
  183. package/dist/v1/language/policy/resolved.d.ts +9 -0
  184. package/dist/v1/language/policy/resolved.js +1 -0
  185. package/dist/v1/language/resolved.d.ts +10 -0
  186. package/dist/v1/language/resolved.js +1 -0
  187. package/dist/v1/language/validation/diagnostic.d.ts +8 -0
  188. package/dist/v1/language/validation/diagnostic.js +3 -0
  189. package/dist/v1/language/value/compile/fields.d.ts +3 -0
  190. package/dist/v1/language/value/compile/fields.js +60 -0
  191. package/dist/v1/{schema/compiled/program.d.ts → language/value/compile/load.d.ts} +1 -2
  192. package/dist/v1/{schema/compiled/program.js → language/value/compile/load.js} +2 -3
  193. package/dist/v1/language/value/compile/model.d.ts +27 -0
  194. package/dist/v1/language/value/compile/model.js +1 -0
  195. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.d.ts +0 -1
  196. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.js +1 -2
  197. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.d.ts +0 -1
  198. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.js +3 -4
  199. package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.d.ts +2 -3
  200. package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.js +6 -8
  201. package/dist/v1/language/value/evaluate/program.d.ts +3 -0
  202. package/dist/v1/language/value/evaluate/program.js +16 -0
  203. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.d.ts +4 -5
  204. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.js +0 -1
  205. package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts} +4 -5
  206. package/dist/v1/{schema/value/instance.validate.js → language/value/evaluate/validate.js} +4 -5
  207. package/dist/v1/language/value/index.d.ts +11 -0
  208. package/dist/v1/language/value/index.js +8 -0
  209. package/dist/v1/{schema/value → language/value/model}/instant.d.ts +1 -1
  210. package/dist/v1/{schema/value → language/value/model}/instant.js +1 -1
  211. package/dist/v1/{schema/value → language/value/model}/object.d.ts +1 -1
  212. package/dist/v1/{schema/value → language/value/model}/object.js +0 -1
  213. package/dist/v1/{schema/value → language/value/model}/schema.d.ts +3 -4
  214. package/dist/v1/{schema/value → language/value/model}/schema.js +0 -2
  215. package/dist/v1/{schema → language}/value/ordering.d.ts +5 -3
  216. package/dist/v1/{schema → language}/value/ordering.js +15 -13
  217. package/dist/v1/{schema → language}/value/profile/canonicalize.d.ts +2 -3
  218. package/dist/v1/{schema → language}/value/profile/canonicalize.js +4 -7
  219. package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
  220. package/dist/v1/{schema → language}/value/profile/json.validate.js +1 -2
  221. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.d.ts +0 -1
  222. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.js +0 -1
  223. package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
  224. package/dist/v1/{schema → language}/value/profile/meta-schema.js +1 -2
  225. package/dist/v1/language/value/profile/rules.d.ts +3 -0
  226. package/dist/v1/{schema → language}/value/profile/rules.js +7 -50
  227. package/dist/v1/language/value/profile/validate.d.ts +4 -0
  228. package/dist/v1/{schema → language}/value/profile/validate.js +13 -21
  229. package/dist/v1/{schema → language}/value/profile/vocabulary.d.ts +0 -1
  230. package/dist/v1/{schema → language}/value/profile/vocabulary.js +0 -1
  231. package/dist/v1/language/value/reference/closure.d.ts +11 -0
  232. package/dist/v1/{schema/value/resources → language/value/reference}/closure.js +13 -21
  233. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.d.ts +3 -4
  234. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.js +5 -6
  235. package/dist/v1/language/value/reference/references.d.ts +17 -0
  236. package/dist/v1/language/value/reference/references.js +45 -0
  237. package/dist/v1/{schema/value → language/value/reference}/registry.d.ts +9 -7
  238. package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
  239. package/dist/v1/{schema/value/resources → language/value/reference}/registry.index.js +7 -45
  240. package/dist/v1/language/value/reference/registry.js +1 -0
  241. package/dist/v1/{schema → language}/value/regexp/ast.d.ts +0 -1
  242. package/dist/v1/{schema → language}/value/regexp/ast.js +0 -1
  243. package/dist/v1/{schema → language}/value/regexp/compile.d.ts +1 -2
  244. package/dist/v1/{schema → language}/value/regexp/compile.js +0 -1
  245. package/dist/v1/{schema → language}/value/regexp/lower.d.ts +1 -2
  246. package/dist/v1/{schema → language}/value/regexp/lower.js +2 -3
  247. package/dist/v1/{schema → language}/value/regexp/matcher.d.ts +1 -2
  248. package/dist/v1/{schema → language}/value/regexp/matcher.js +0 -1
  249. package/dist/v1/{schema → language}/value/regexp/pattern.d.ts +0 -1
  250. package/dist/v1/{schema → language}/value/regexp/pattern.js +0 -1
  251. package/dist/v1/{schema → language}/value/regexp/syntax.d.ts +0 -1
  252. package/dist/v1/{schema → language}/value/regexp/syntax.js +0 -1
  253. package/dist/v1/{schema/value → language/value/syntax}/full-match.d.ts +0 -1
  254. package/dist/v1/{schema/value → language/value/syntax}/full-match.js +3 -4
  255. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.d.ts +0 -1
  256. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.js +0 -1
  257. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.d.ts +1 -2
  258. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.js +2 -3
  259. package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
  260. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/validate.js +12 -12
  261. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.d.ts +0 -1
  262. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.js +1 -2
  263. package/dist/v1/{schema/value/location → language/value/syntax}/walk.d.ts +1 -2
  264. package/dist/v1/{schema/value/location → language/value/syntax}/walk.js +1 -2
  265. package/dist/v1/language/view/index.d.ts +2 -0
  266. package/dist/v1/language/view/index.js +1 -0
  267. package/dist/v1/language/view/model/view.d.ts +11 -0
  268. package/dist/v1/language/view/model/view.js +1 -0
  269. package/dist/v1/language/view/resolved.d.ts +9 -0
  270. package/dist/v1/language/view/resolved.js +1 -0
  271. package/dist/v1/schema/admission/accept.d.ts +3 -0
  272. package/dist/v1/schema/{domain.accept.js → admission/accept.js} +8 -9
  273. package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +15 -17
  274. package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -30
  275. package/dist/v1/schema/canonical/domain.d.ts +2 -2
  276. package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
  277. package/dist/v1/schema/canonical/domain.digest.js +2 -6
  278. package/dist/v1/schema/canonical/domain.js +3 -223
  279. package/dist/v1/schema/canonical/freeze.d.ts +0 -1
  280. package/dist/v1/schema/canonical/freeze.js +0 -1
  281. package/dist/v1/schema/{domain.revision.d.ts → canonical/revision.d.ts} +2 -3
  282. package/dist/v1/schema/{domain.revision.js → canonical/revision.js} +3 -4
  283. package/dist/v1/schema/{domain.header.d.ts → codec/header.d.ts} +6 -4
  284. package/dist/v1/schema/codec/header.js +23 -0
  285. package/dist/v1/schema/{domain.codec.d.ts → codec/schema.d.ts} +2 -3
  286. package/dist/v1/schema/{domain.codec.js → codec/schema.js} +4 -5
  287. package/dist/v1/schema/{dependency.meaning.d.ts → compatibility/meaning.d.ts} +4 -5
  288. package/dist/v1/schema/{dependency.meaning.js → compatibility/meaning.js} +120 -123
  289. package/dist/v1/schema/{domain.lookup.d.ts → dependency/lookup.d.ts} +3 -4
  290. package/dist/v1/schema/{domain.lookup.js → dependency/lookup.js} +1 -2
  291. package/dist/v1/schema/diagnostic.d.ts +7 -7
  292. package/dist/v1/schema/diagnostic.js +9 -9
  293. package/dist/v1/schema/index.d.ts +24 -40
  294. package/dist/v1/schema/index.js +11 -18
  295. package/dist/v1/schema/model/format.d.ts +2 -0
  296. package/dist/v1/schema/model/format.js +2 -0
  297. package/dist/v1/schema/model/schema.d.ts +37 -0
  298. package/dist/v1/schema/model/schema.js +4 -0
  299. package/dist/v1/schema/normalization/domain.d.ts +2 -0
  300. package/dist/v1/schema/normalization/domain.js +207 -0
  301. package/dist/v1/schema/resolution/closure.d.ts +2 -3
  302. package/dist/v1/schema/resolution/closure.js +5 -6
  303. package/dist/v1/schema/resolution/context.d.ts +11 -12
  304. package/dist/v1/schema/resolution/context.js +5 -5
  305. package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
  306. package/dist/v1/schema/resolution/definition.index.js +8 -18
  307. package/dist/v1/schema/resolution/domain.d.ts +4 -0
  308. package/dist/v1/schema/resolution/domain.js +109 -0
  309. package/dist/v1/schema/resolution/origins.d.ts +11 -14
  310. package/dist/v1/schema/resolution/origins.js +31 -42
  311. package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
  312. package/dist/v1/schema/resolution/value.registry.js +5 -12
  313. package/dist/v1/schema/revision.d.ts +1 -0
  314. package/dist/v1/schema/revision.js +1 -0
  315. package/dist/v1/schema/validation/class.d.ts +5 -0
  316. package/dist/v1/schema/validation/class.js +208 -0
  317. package/dist/v1/schema/validation/core.d.ts +5 -0
  318. package/dist/v1/schema/{core/validate.js → validation/core.js} +35 -28
  319. package/dist/v1/schema/validation/domain.d.ts +11 -0
  320. package/dist/v1/schema/{domain.validate.js → validation/domain.js} +12 -12
  321. package/dist/v1/schema/validation/domain.route.d.ts +1 -2
  322. package/dist/v1/schema/validation/domain.route.js +3 -4
  323. package/dist/v1/schema/validation/domain.structure.d.ts +1 -2
  324. package/dist/v1/schema/validation/domain.structure.js +53 -82
  325. package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
  326. package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +2 -32
  327. package/dist/v1/schema/validation/policy/context.d.ts +28 -0
  328. package/dist/v1/schema/{policy/validation → validation/policy}/context.js +23 -33
  329. package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
  330. package/dist/v1/schema/{policy/validation → validation/policy}/references.js +16 -9
  331. package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
  332. package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +24 -66
  333. package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
  334. package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +20 -34
  335. package/dist/v1/schema/{policy/validation → validation/policy}/validate.d.ts +3 -4
  336. package/dist/v1/schema/{policy/validation → validation/policy}/validate.js +0 -1
  337. package/dist/v1/schema/{value/index.d.ts → validation/value-api.d.ts} +9 -10
  338. package/dist/v1/schema/{value/index.js → validation/value-api.js} +4 -5
  339. package/dist/v1/schema/validation/value.d.ts +4 -5
  340. package/dist/v1/schema/validation/value.js +4 -9
  341. package/dist/v1/schema/validation/view.d.ts +3 -0
  342. package/dist/v1/schema/{view/validate.js → validation/view.js} +11 -4
  343. package/dist/v1/value/full-match.d.ts +2 -0
  344. package/dist/v1/value/full-match.js +2 -0
  345. package/dist/v1.d.ts +1 -2
  346. package/dist/v1.js +1 -2
  347. package/dist/value/accept.d.ts +0 -1
  348. package/dist/value/accept.js +0 -1
  349. package/dist/value/canonical.d.ts +0 -1
  350. package/dist/value/canonical.js +0 -1
  351. package/dist/value/decode.d.ts +0 -1
  352. package/dist/value/decode.js +0 -1
  353. package/dist/value/equal.d.ts +0 -1
  354. package/dist/value/equal.js +0 -1
  355. package/dist/value/error.d.ts +0 -1
  356. package/dist/value/error.js +0 -1
  357. package/dist/value/index.d.ts +0 -1
  358. package/dist/value/index.js +0 -1
  359. package/dist/value/json.d.ts +0 -1
  360. package/dist/value/json.js +0 -1
  361. package/dist/value/limits.d.ts +0 -1
  362. package/dist/value/limits.js +0 -1
  363. package/dist/value/types.d.ts +0 -1
  364. package/dist/value/types.js +0 -1
  365. package/dist/value/unicode.d.ts +0 -1
  366. package/dist/value/unicode.js +0 -1
  367. package/dist/version/dispatch.d.ts +0 -1
  368. package/dist/version/dispatch.js +0 -1
  369. package/dist/version/index.d.ts +0 -1
  370. package/dist/version/index.js +0 -1
  371. package/package.json +39 -19
  372. package/dist/index.d.ts.map +0 -1
  373. package/dist/index.js.map +0 -1
  374. package/dist/upgrade/contract.d.ts.map +0 -1
  375. package/dist/upgrade/contract.js.map +0 -1
  376. package/dist/upgrade/index.d.ts.map +0 -1
  377. package/dist/upgrade/index.js.map +0 -1
  378. package/dist/v1/addressing/index.d.ts.map +0 -1
  379. package/dist/v1/addressing/index.js.map +0 -1
  380. package/dist/v1/addressing/key.d.ts.map +0 -1
  381. package/dist/v1/addressing/key.js.map +0 -1
  382. package/dist/v1/addressing/patterns.d.ts.map +0 -1
  383. package/dist/v1/addressing/patterns.js.map +0 -1
  384. package/dist/v1/addressing/property-key.d.ts.map +0 -1
  385. package/dist/v1/addressing/property-key.js.map +0 -1
  386. package/dist/v1/addressing/ref.d.ts +0 -35
  387. package/dist/v1/addressing/ref.d.ts.map +0 -1
  388. package/dist/v1/addressing/ref.js +0 -94
  389. package/dist/v1/addressing/ref.js.map +0 -1
  390. package/dist/v1/addressing/schema-ref.d.ts +0 -8
  391. package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
  392. package/dist/v1/addressing/schema-ref.js +0 -2
  393. package/dist/v1/addressing/schema-ref.js.map +0 -1
  394. package/dist/v1/builder/callable.d.ts.map +0 -1
  395. package/dist/v1/builder/callable.js.map +0 -1
  396. package/dist/v1/builder/compiler/callable.d.ts +0 -20
  397. package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
  398. package/dist/v1/builder/compiler/callable.js.map +0 -1
  399. package/dist/v1/builder/compiler/core.d.ts +0 -6
  400. package/dist/v1/builder/compiler/core.d.ts.map +0 -1
  401. package/dist/v1/builder/compiler/core.js.map +0 -1
  402. package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
  403. package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
  404. package/dist/v1/builder/compiler/core.properties.js.map +0 -1
  405. package/dist/v1/builder/compiler/definition.d.ts +0 -32
  406. package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
  407. package/dist/v1/builder/compiler/definition.js +0 -197
  408. package/dist/v1/builder/compiler/definition.js.map +0 -1
  409. package/dist/v1/builder/compiler/policy.d.ts +0 -17
  410. package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
  411. package/dist/v1/builder/compiler/policy.js.map +0 -1
  412. package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
  413. package/dist/v1/builder/compiler/schema.capture.js +0 -85
  414. package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
  415. package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
  416. package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
  417. package/dist/v1/builder/compiler/schema.context.js.map +0 -1
  418. package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
  419. package/dist/v1/builder/compiler/schema.js.map +0 -1
  420. package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
  421. package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
  422. package/dist/v1/builder/compiler/value.d.ts +0 -26
  423. package/dist/v1/builder/compiler/value.d.ts.map +0 -1
  424. package/dist/v1/builder/compiler/value.js.map +0 -1
  425. package/dist/v1/builder/compiler/value.path.d.ts +0 -4
  426. package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
  427. package/dist/v1/builder/compiler/value.path.js.map +0 -1
  428. package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
  429. package/dist/v1/builder/compiler/value.zod.js.map +0 -1
  430. package/dist/v1/builder/compiler/view.d.ts +0 -12
  431. package/dist/v1/builder/compiler/view.d.ts.map +0 -1
  432. package/dist/v1/builder/compiler/view.js.map +0 -1
  433. package/dist/v1/builder/core.d.ts +0 -27
  434. package/dist/v1/builder/core.d.ts.map +0 -1
  435. package/dist/v1/builder/core.js.map +0 -1
  436. package/dist/v1/builder/definition.d.ts +0 -155
  437. package/dist/v1/builder/definition.d.ts.map +0 -1
  438. package/dist/v1/builder/definition.js +0 -141
  439. package/dist/v1/builder/definition.js.map +0 -1
  440. package/dist/v1/builder/full-match.d.ts +0 -5
  441. package/dist/v1/builder/full-match.d.ts.map +0 -1
  442. package/dist/v1/builder/full-match.js +0 -12
  443. package/dist/v1/builder/full-match.js.map +0 -1
  444. package/dist/v1/builder/index.d.ts.map +0 -1
  445. package/dist/v1/builder/index.js.map +0 -1
  446. package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
  447. package/dist/v1/builder/internal/authoring.js.map +0 -1
  448. package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
  449. package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
  450. package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
  451. package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
  452. package/dist/v1/builder/internal/diagnostic.js +0 -16
  453. package/dist/v1/builder/internal/diagnostic.js.map +0 -1
  454. package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
  455. package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
  456. package/dist/v1/builder/internal/path.metadata.js.map +0 -1
  457. package/dist/v1/builder/path.d.ts +0 -9
  458. package/dist/v1/builder/path.d.ts.map +0 -1
  459. package/dist/v1/builder/path.js.map +0 -1
  460. package/dist/v1/builder/policy.d.ts.map +0 -1
  461. package/dist/v1/builder/policy.js.map +0 -1
  462. package/dist/v1/builder/property.d.ts +0 -37
  463. package/dist/v1/builder/property.d.ts.map +0 -1
  464. package/dist/v1/builder/property.js +0 -36
  465. package/dist/v1/builder/property.js.map +0 -1
  466. package/dist/v1/builder/schema.d.ts +0 -6
  467. package/dist/v1/builder/schema.d.ts.map +0 -1
  468. package/dist/v1/builder/schema.input.d.ts +0 -19
  469. package/dist/v1/builder/schema.input.d.ts.map +0 -1
  470. package/dist/v1/builder/schema.input.js +0 -2
  471. package/dist/v1/builder/schema.input.js.map +0 -1
  472. package/dist/v1/builder/schema.js.map +0 -1
  473. package/dist/v1/builder/value-schema.d.ts.map +0 -1
  474. package/dist/v1/builder/value-schema.js.map +0 -1
  475. package/dist/v1/builder/view.d.ts +0 -17
  476. package/dist/v1/builder/view.d.ts.map +0 -1
  477. package/dist/v1/builder/view.js +0 -7
  478. package/dist/v1/builder/view.js.map +0 -1
  479. package/dist/v1/builder.d.ts +0 -3
  480. package/dist/v1/builder.d.ts.map +0 -1
  481. package/dist/v1/builder.js +0 -2
  482. package/dist/v1/builder.js.map +0 -1
  483. package/dist/v1/bundle/codec.d.ts.map +0 -1
  484. package/dist/v1/bundle/codec.js.map +0 -1
  485. package/dist/v1/bundle/index.d.ts.map +0 -1
  486. package/dist/v1/bundle/index.js.map +0 -1
  487. package/dist/v1/bundle/model.d.ts.map +0 -1
  488. package/dist/v1/bundle/model.js.map +0 -1
  489. package/dist/v1/bundle/structure.d.ts.map +0 -1
  490. package/dist/v1/bundle/structure.js.map +0 -1
  491. package/dist/v1/bundle.d.ts +0 -3
  492. package/dist/v1/bundle.d.ts.map +0 -1
  493. package/dist/v1/bundle.js +0 -3
  494. package/dist/v1/bundle.js.map +0 -1
  495. package/dist/v1/index.d.ts.map +0 -1
  496. package/dist/v1/index.js.map +0 -1
  497. package/dist/v1/schema/callable.d.ts +0 -29
  498. package/dist/v1/schema/callable.d.ts.map +0 -1
  499. package/dist/v1/schema/callable.js +0 -2
  500. package/dist/v1/schema/callable.js.map +0 -1
  501. package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
  502. package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
  503. package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
  504. package/dist/v1/schema/canonical/domain.js.map +0 -1
  505. package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
  506. package/dist/v1/schema/canonical/freeze.js.map +0 -1
  507. package/dist/v1/schema/compiled/admission.d.ts +0 -4
  508. package/dist/v1/schema/compiled/admission.d.ts.map +0 -1
  509. package/dist/v1/schema/compiled/admission.js +0 -217
  510. package/dist/v1/schema/compiled/admission.js.map +0 -1
  511. package/dist/v1/schema/compiled/authored-validator.d.ts +0 -5
  512. package/dist/v1/schema/compiled/authored-validator.d.ts.map +0 -1
  513. package/dist/v1/schema/compiled/authored-validator.js +0 -7
  514. package/dist/v1/schema/compiled/authored-validator.js.map +0 -1
  515. package/dist/v1/schema/compiled/compiler.d.ts +0 -5
  516. package/dist/v1/schema/compiled/compiler.d.ts.map +0 -1
  517. package/dist/v1/schema/compiled/compiler.js +0 -86
  518. package/dist/v1/schema/compiled/compiler.js.map +0 -1
  519. package/dist/v1/schema/compiled/model.d.ts +0 -61
  520. package/dist/v1/schema/compiled/model.d.ts.map +0 -1
  521. package/dist/v1/schema/compiled/model.js +0 -2
  522. package/dist/v1/schema/compiled/model.js.map +0 -1
  523. package/dist/v1/schema/compiled/program.d.ts.map +0 -1
  524. package/dist/v1/schema/compiled/program.js.map +0 -1
  525. package/dist/v1/schema/compiled/validator.d.ts +0 -23
  526. package/dist/v1/schema/compiled/validator.d.ts.map +0 -1
  527. package/dist/v1/schema/compiled/validator.js +0 -62
  528. package/dist/v1/schema/compiled/validator.js.map +0 -1
  529. package/dist/v1/schema/core/declaration.d.ts +0 -17
  530. package/dist/v1/schema/core/declaration.d.ts.map +0 -1
  531. package/dist/v1/schema/core/declaration.js +0 -2
  532. package/dist/v1/schema/core/declaration.js.map +0 -1
  533. package/dist/v1/schema/core/validate.d.ts +0 -6
  534. package/dist/v1/schema/core/validate.d.ts.map +0 -1
  535. package/dist/v1/schema/core/validate.js.map +0 -1
  536. package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
  537. package/dist/v1/schema/definition/analysis.js.map +0 -1
  538. package/dist/v1/schema/definition/class.d.ts +0 -28
  539. package/dist/v1/schema/definition/class.d.ts.map +0 -1
  540. package/dist/v1/schema/definition/class.js +0 -2
  541. package/dist/v1/schema/definition/class.js.map +0 -1
  542. package/dist/v1/schema/definition/data.d.ts.map +0 -1
  543. package/dist/v1/schema/definition/data.js.map +0 -1
  544. package/dist/v1/schema/definition/edge.d.ts.map +0 -1
  545. package/dist/v1/schema/definition/edge.js +0 -2
  546. package/dist/v1/schema/definition/edge.js.map +0 -1
  547. package/dist/v1/schema/definition/interface.d.ts +0 -22
  548. package/dist/v1/schema/definition/interface.d.ts.map +0 -1
  549. package/dist/v1/schema/definition/interface.js +0 -2
  550. package/dist/v1/schema/definition/interface.js.map +0 -1
  551. package/dist/v1/schema/definition/property.d.ts.map +0 -1
  552. package/dist/v1/schema/definition/property.js +0 -2
  553. package/dist/v1/schema/definition/property.js.map +0 -1
  554. package/dist/v1/schema/definition/validate.d.ts +0 -5
  555. package/dist/v1/schema/definition/validate.d.ts.map +0 -1
  556. package/dist/v1/schema/definition/validate.js +0 -221
  557. package/dist/v1/schema/definition/validate.js.map +0 -1
  558. package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
  559. package/dist/v1/schema/dependency.meaning.js.map +0 -1
  560. package/dist/v1/schema/diagnostic.d.ts.map +0 -1
  561. package/dist/v1/schema/diagnostic.js.map +0 -1
  562. package/dist/v1/schema/domain.accept.d.ts +0 -4
  563. package/dist/v1/schema/domain.accept.d.ts.map +0 -1
  564. package/dist/v1/schema/domain.accept.js.map +0 -1
  565. package/dist/v1/schema/domain.codec.d.ts.map +0 -1
  566. package/dist/v1/schema/domain.codec.js.map +0 -1
  567. package/dist/v1/schema/domain.header.d.ts.map +0 -1
  568. package/dist/v1/schema/domain.header.js +0 -21
  569. package/dist/v1/schema/domain.header.js.map +0 -1
  570. package/dist/v1/schema/domain.ir.d.ts +0 -40
  571. package/dist/v1/schema/domain.ir.d.ts.map +0 -1
  572. package/dist/v1/schema/domain.ir.js +0 -5
  573. package/dist/v1/schema/domain.ir.js.map +0 -1
  574. package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
  575. package/dist/v1/schema/domain.lookup.js.map +0 -1
  576. package/dist/v1/schema/domain.resolve.d.ts +0 -26
  577. package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
  578. package/dist/v1/schema/domain.resolve.js +0 -43
  579. package/dist/v1/schema/domain.resolve.js.map +0 -1
  580. package/dist/v1/schema/domain.revision.d.ts.map +0 -1
  581. package/dist/v1/schema/domain.revision.js.map +0 -1
  582. package/dist/v1/schema/domain.validate.d.ts +0 -12
  583. package/dist/v1/schema/domain.validate.d.ts.map +0 -1
  584. package/dist/v1/schema/domain.validate.js.map +0 -1
  585. package/dist/v1/schema/index.d.ts.map +0 -1
  586. package/dist/v1/schema/index.js.map +0 -1
  587. package/dist/v1/schema/metadata.d.ts.map +0 -1
  588. package/dist/v1/schema/metadata.js.map +0 -1
  589. package/dist/v1/schema/policy/ast.d.ts.map +0 -1
  590. package/dist/v1/schema/policy/ast.js +0 -2
  591. package/dist/v1/schema/policy/ast.js.map +0 -1
  592. package/dist/v1/schema/policy/normalize.d.ts +0 -5
  593. package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
  594. package/dist/v1/schema/policy/normalize.js.map +0 -1
  595. package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
  596. package/dist/v1/schema/policy/validation/branches.js.map +0 -1
  597. package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
  598. package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
  599. package/dist/v1/schema/policy/validation/context.d.ts +0 -28
  600. package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
  601. package/dist/v1/schema/policy/validation/context.js.map +0 -1
  602. package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
  603. package/dist/v1/schema/policy/validation/references.js.map +0 -1
  604. package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
  605. package/dist/v1/schema/policy/validation/typing.js.map +0 -1
  606. package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
  607. package/dist/v1/schema/policy/validation/uses.js.map +0 -1
  608. package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
  609. package/dist/v1/schema/policy/validation/validate.js.map +0 -1
  610. package/dist/v1/schema/reference.d.ts +0 -43
  611. package/dist/v1/schema/reference.d.ts.map +0 -1
  612. package/dist/v1/schema/reference.js +0 -31
  613. package/dist/v1/schema/reference.js.map +0 -1
  614. package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
  615. package/dist/v1/schema/resolution/closure.js.map +0 -1
  616. package/dist/v1/schema/resolution/context.d.ts.map +0 -1
  617. package/dist/v1/schema/resolution/context.js.map +0 -1
  618. package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
  619. package/dist/v1/schema/resolution/definition.index.js.map +0 -1
  620. package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
  621. package/dist/v1/schema/resolution/origins.js.map +0 -1
  622. package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
  623. package/dist/v1/schema/resolution/value.registry.js.map +0 -1
  624. package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
  625. package/dist/v1/schema/validation/domain.route.js.map +0 -1
  626. package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
  627. package/dist/v1/schema/validation/domain.structure.js.map +0 -1
  628. package/dist/v1/schema/validation/value.d.ts.map +0 -1
  629. package/dist/v1/schema/validation/value.js.map +0 -1
  630. package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
  631. package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
  632. package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
  633. package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
  634. package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
  635. package/dist/v1/schema/value/full-match.d.ts.map +0 -1
  636. package/dist/v1/schema/value/full-match.js.map +0 -1
  637. package/dist/v1/schema/value/index.d.ts.map +0 -1
  638. package/dist/v1/schema/value/index.js.map +0 -1
  639. package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
  640. package/dist/v1/schema/value/instance/assertions.js.map +0 -1
  641. package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
  642. package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
  643. package/dist/v1/schema/value/instance/preparation.d.ts.map +0 -1
  644. package/dist/v1/schema/value/instance/preparation.js.map +0 -1
  645. package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
  646. package/dist/v1/schema/value/instance/types.js.map +0 -1
  647. package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
  648. package/dist/v1/schema/value/instance.validate.js.map +0 -1
  649. package/dist/v1/schema/value/instant.d.ts.map +0 -1
  650. package/dist/v1/schema/value/instant.js.map +0 -1
  651. package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
  652. package/dist/v1/schema/value/location/keywords.js.map +0 -1
  653. package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
  654. package/dist/v1/schema/value/location/pointer.js.map +0 -1
  655. package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
  656. package/dist/v1/schema/value/location/walk.js.map +0 -1
  657. package/dist/v1/schema/value/object.d.ts.map +0 -1
  658. package/dist/v1/schema/value/object.js.map +0 -1
  659. package/dist/v1/schema/value/ordering.d.ts.map +0 -1
  660. package/dist/v1/schema/value/ordering.js.map +0 -1
  661. package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
  662. package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
  663. package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
  664. package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
  665. package/dist/v1/schema/value/profile/dialect.js +0 -36
  666. package/dist/v1/schema/value/profile/dialect.js.map +0 -1
  667. package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
  668. package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
  669. package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
  670. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
  671. package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
  672. package/dist/v1/schema/value/profile/meta-schema.d.ts +0 -5
  673. package/dist/v1/schema/value/profile/meta-schema.d.ts.map +0 -1
  674. package/dist/v1/schema/value/profile/meta-schema.js.map +0 -1
  675. package/dist/v1/schema/value/profile/rules.d.ts +0 -5
  676. package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
  677. package/dist/v1/schema/value/profile/rules.js.map +0 -1
  678. package/dist/v1/schema/value/profile/validate.d.ts +0 -5
  679. package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
  680. package/dist/v1/schema/value/profile/validate.js.map +0 -1
  681. package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
  682. package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
  683. package/dist/v1/schema/value/regexp/ast.d.ts.map +0 -1
  684. package/dist/v1/schema/value/regexp/ast.js.map +0 -1
  685. package/dist/v1/schema/value/regexp/compile.d.ts.map +0 -1
  686. package/dist/v1/schema/value/regexp/compile.js.map +0 -1
  687. package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
  688. package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
  689. package/dist/v1/schema/value/regexp/linear.js +0 -24
  690. package/dist/v1/schema/value/regexp/linear.js.map +0 -1
  691. package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
  692. package/dist/v1/schema/value/regexp/lower.js.map +0 -1
  693. package/dist/v1/schema/value/regexp/matcher.d.ts.map +0 -1
  694. package/dist/v1/schema/value/regexp/matcher.js.map +0 -1
  695. package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
  696. package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
  697. package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
  698. package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
  699. package/dist/v1/schema/value/registry.d.ts.map +0 -1
  700. package/dist/v1/schema/value/registry.js +0 -2
  701. package/dist/v1/schema/value/registry.js.map +0 -1
  702. package/dist/v1/schema/value/resources/closure.d.ts +0 -12
  703. package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
  704. package/dist/v1/schema/value/resources/closure.js.map +0 -1
  705. package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
  706. package/dist/v1/schema/value/resources/recursion.js.map +0 -1
  707. package/dist/v1/schema/value/resources/references.d.ts +0 -25
  708. package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
  709. package/dist/v1/schema/value/resources/references.js +0 -93
  710. package/dist/v1/schema/value/resources/references.js.map +0 -1
  711. package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
  712. package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
  713. package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
  714. package/dist/v1/schema/value/schema.d.ts.map +0 -1
  715. package/dist/v1/schema/value/schema.js.map +0 -1
  716. package/dist/v1/schema/view/declaration.d.ts +0 -12
  717. package/dist/v1/schema/view/declaration.d.ts.map +0 -1
  718. package/dist/v1/schema/view/declaration.js +0 -2
  719. package/dist/v1/schema/view/declaration.js.map +0 -1
  720. package/dist/v1/schema/view/validate.d.ts +0 -4
  721. package/dist/v1/schema/view/validate.d.ts.map +0 -1
  722. package/dist/v1/schema/view/validate.js.map +0 -1
  723. package/dist/v1/schema.d.ts +0 -3
  724. package/dist/v1/schema.d.ts.map +0 -1
  725. package/dist/v1/schema.js +0 -3
  726. package/dist/v1/schema.js.map +0 -1
  727. package/dist/v1.d.ts.map +0 -1
  728. package/dist/v1.js.map +0 -1
  729. package/dist/value/accept.d.ts.map +0 -1
  730. package/dist/value/accept.js.map +0 -1
  731. package/dist/value/canonical.d.ts.map +0 -1
  732. package/dist/value/canonical.js.map +0 -1
  733. package/dist/value/decode.d.ts.map +0 -1
  734. package/dist/value/decode.js.map +0 -1
  735. package/dist/value/equal.d.ts.map +0 -1
  736. package/dist/value/equal.js.map +0 -1
  737. package/dist/value/error.d.ts.map +0 -1
  738. package/dist/value/error.js.map +0 -1
  739. package/dist/value/index.d.ts.map +0 -1
  740. package/dist/value/index.js.map +0 -1
  741. package/dist/value/json.d.ts.map +0 -1
  742. package/dist/value/json.js.map +0 -1
  743. package/dist/value/limits.d.ts.map +0 -1
  744. package/dist/value/limits.js.map +0 -1
  745. package/dist/value/types.d.ts.map +0 -1
  746. package/dist/value/types.js.map +0 -1
  747. package/dist/value/unicode.d.ts.map +0 -1
  748. package/dist/value/unicode.js.map +0 -1
  749. package/dist/version/dispatch.d.ts.map +0 -1
  750. package/dist/version/dispatch.js.map +0 -1
  751. package/dist/version/index.d.ts.map +0 -1
  752. package/dist/version/index.js.map +0 -1
@@ -0,0 +1,58 @@
1
+ import type { CallableInputOf, CallableOutputOf, ResolvedMethod, ResolvedMethodCollection } from '../callable/resolved.js';
2
+ import type { ResolvedProperty, ResolvedPropertyCollection } from './resolved.js';
3
+ type MemberName = string | number | symbol;
4
+ type ValueAt<Collection, Key> = Key extends keyof Collection ? Collection[Key] : never;
5
+ type PropertyCollectionOf<Class> = Class extends {
6
+ readonly properties: infer Properties;
7
+ } ? Properties : never;
8
+ type PropertyByKeyOf<Class> = PropertyCollectionOf<Class> extends {
9
+ readonly byKey: infer ByKey extends Readonly<Record<string, ResolvedProperty>>;
10
+ } ? ByKey : Readonly<Record<never, never>>;
11
+ type PropertyByNameOf<Class> = Pick<PropertyCollectionOf<Class>, Exclude<keyof PropertyCollectionOf<Class>, keyof ResolvedPropertyCollection>>;
12
+ type MethodCollectionOf<Class> = Class extends {
13
+ readonly kind: 'node';
14
+ readonly methods: infer Methods extends ResolvedMethodCollection;
15
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
16
+ type MethodByKeyOf<Class> = MethodCollectionOf<Class> extends {
17
+ readonly byKey: infer ByKey extends Readonly<Record<string, ResolvedMethod>>;
18
+ } ? ByKey : Readonly<Record<never, never>>;
19
+ type MethodByNameOf<Class> = Pick<MethodCollectionOf<Class>, Exclude<keyof MethodCollectionOf<Class>, keyof ResolvedMethodCollection>>;
20
+ export type PropertyOutputOf<Property> = Property extends ResolvedProperty<infer Value, infer Required> ? Required extends true ? Value : Value | undefined : never;
21
+ /** Collision-safe direct Property values. Client supplies graph/wrapper reserved names. */
22
+ export type PropertyShortcutsOf<Class, Reserved extends MemberName = never> = Readonly<{
23
+ [Name in Exclude<keyof PropertyByNameOf<Class>, keyof MethodByNameOf<Class> | Reserved>]: PropertyOutputOf<ValueAt<PropertyByNameOf<Class>, Name>>;
24
+ }>;
25
+ type EffectiveProperty<Class> = PropertyByKeyOf<Class>[keyof PropertyByKeyOf<Class>];
26
+ /** Exact and unambiguous Property access signatures, independent of graph values. */
27
+ export type PropertyAccessOf<Class> = {
28
+ readonly property: {
29
+ <Property extends EffectiveProperty<Class>>(property: Property): PropertyOutputOf<Property>;
30
+ <Key extends keyof PropertyByKeyOf<Class>>(key: Key): PropertyOutputOf<PropertyByKeyOf<Class>[Key]>;
31
+ <Name extends keyof PropertyByNameOf<Class>>(name: Name): PropertyOutputOf<PropertyByNameOf<Class>[Name]>;
32
+ };
33
+ };
34
+ export type CallableResultOf<Callable, Binary = unknown> = CallableOutputOf<Callable> extends infer Output ? Output extends {
35
+ readonly mode: 'value';
36
+ readonly value: infer Value;
37
+ } ? Value : Output extends {
38
+ readonly mode: 'stream';
39
+ readonly item: infer Item;
40
+ } ? AsyncIterable<Item> : Output extends {
41
+ readonly mode: 'binary';
42
+ } ? Binary : never : never;
43
+ type ExecutableMethod<Method> = Method extends ResolvedMethod<unknown, unknown, false, infer Inheritance> ? Inheritance extends 'abstract' ? never : Method : never;
44
+ export type BoundMethodOf<Method, Binary = unknown> = ExecutableMethod<Method> extends infer Callable ? [Callable] extends [never] ? never : (input: CallableInputOf<Callable>) => Promise<CallableResultOf<Callable, Binary>> : never;
45
+ /** Collision-safe direct bound Methods. Client supplies graph/wrapper reserved names. */
46
+ export type BoundMethodShortcutsOf<Class, Binary = unknown, Reserved extends MemberName = never> = Readonly<{
47
+ [Name in Exclude<keyof MethodByNameOf<Class>, keyof PropertyByNameOf<Class> | Reserved> as BoundMethodOf<ValueAt<MethodByNameOf<Class>, Name>, Binary> extends never ? never : Name]: BoundMethodOf<ValueAt<MethodByNameOf<Class>, Name>, Binary>;
48
+ }>;
49
+ type EffectiveMethod<Class> = MethodByKeyOf<Class>[keyof MethodByKeyOf<Class>];
50
+ /** Exact and unambiguous bound Method access signatures, independent of Client provenance. */
51
+ export type MethodAccessOf<Class, Binary = unknown> = {
52
+ readonly method: {
53
+ <Method extends EffectiveMethod<Class>>(method: Method): BoundMethodOf<Method, Binary>;
54
+ <Key extends keyof MethodByKeyOf<Class>>(key: Key): BoundMethodOf<MethodByKeyOf<Class>[Key], Binary>;
55
+ <Name extends keyof MethodByNameOf<Class>>(name: Name): BoundMethodOf<MethodByNameOf<Class>[Name], Binary>;
56
+ };
57
+ };
58
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ export type * from './model/class.js';
2
+ export type * from './model/data.js';
3
+ export type * from './model/edge.js';
4
+ export type * from './model/property.js';
5
+ export { PropertyValues } from './property-values.js';
6
+ export type { PropertyValuesOperations } from './property-values.js';
7
+ export type * from './facets.js';
8
+ export type * from './resolved.js';
@@ -0,0 +1 @@
1
+ export { PropertyValues } from './property-values.js';
@@ -0,0 +1,36 @@
1
+ import type { ClassRef, DefinitionBase, PolicyRef } from '../../../addressing/index.js';
2
+ import type { MethodRecord } from '../../callable/model/callable.js';
3
+ import type { DataFacet } from './data.js';
4
+ import type { EdgeContract } from './edge.js';
5
+ import type { PropertyFacet } from './property.js';
6
+ export type ClassKind = 'node' | 'edge';
7
+ export interface NodeClassPolicies {
8
+ readonly read?: PolicyRef;
9
+ readonly traverse?: PolicyRef;
10
+ }
11
+ export interface EdgeClassPolicies {
12
+ readonly traverse?: PolicyRef;
13
+ }
14
+ export interface NodeClassDefinition extends DefinitionBase<ClassRef>, PropertyFacet, DataFacet {
15
+ readonly kind: 'node';
16
+ readonly abstract: boolean;
17
+ readonly description?: string;
18
+ readonly extends: readonly ClassRef[];
19
+ readonly methods: MethodRecord;
20
+ readonly icon?: string;
21
+ readonly policies: NodeClassPolicies;
22
+ }
23
+ export type EdgeClassDefinition = DefinitionBase<ClassRef> & PropertyFacet & EdgeContract & {
24
+ readonly kind: 'edge';
25
+ readonly abstract: boolean;
26
+ readonly description?: string;
27
+ readonly extends: readonly ClassRef[];
28
+ readonly policies: EdgeClassPolicies;
29
+ };
30
+ export type ClassDefinition = NodeClassDefinition | EdgeClassDefinition;
31
+ export type DirectedEdgeDefinition = Extract<EdgeClassDefinition, {
32
+ readonly orientation: 'directed';
33
+ }>;
34
+ export type UndirectedEdgeDefinition = Extract<EdgeClassDefinition, {
35
+ readonly orientation: 'undirected';
36
+ }>;
@@ -0,0 +1 @@
1
+ export {};
@@ -3,10 +3,9 @@ import type { Object as JsonObject } from '@astrale-os/kernel-dsl/value';
3
3
  export declare const MEDIA_TYPE_PATTERN: RegExp;
4
4
  export type MediaType = string;
5
5
  /** Schema-level contract for one externally stored Node payload. */
6
- export type DataDeclaration = JsonObject & {
6
+ export type DataDefinition = JsonObject & {
7
7
  readonly mediaType: MediaType;
8
8
  };
9
9
  export interface DataFacet {
10
- readonly data?: DataDeclaration;
10
+ readonly data?: DataDefinition;
11
11
  }
12
- //# sourceMappingURL=data.d.ts.map
@@ -1,3 +1,2 @@
1
1
  /** Canonical lowercase RFC 6838 media type without parameters. */
2
2
  export const MEDIA_TYPE_PATTERN = /^[a-z0-9][a-z0-9!#$&^_.+-]{0,126}\/[a-z0-9][a-z0-9!#$&^_.+-]{0,126}$/u;
3
- //# sourceMappingURL=data.js.map
@@ -1,9 +1,9 @@
1
- import type { DefinitionRef } from '../reference.js';
1
+ import type { ClassRef } from '../../../addressing/index.js';
2
2
  export type EdgeCount = '0..*' | '1..*' | '0..1' | '1';
3
3
  export type EdgeOrientation = 'directed' | 'undirected';
4
4
  export interface EdgeEndpointBase {
5
5
  readonly role: string;
6
- readonly accepts: readonly DefinitionRef[];
6
+ readonly accepts: readonly ClassRef[];
7
7
  }
8
8
  export interface DirectedSourceEndpoint extends EdgeEndpointBase {
9
9
  readonly outgoing: EdgeCount;
@@ -14,22 +14,25 @@ export interface DirectedTargetEndpoint extends EdgeEndpointBase {
14
14
  export interface IncidentEndpoint extends EdgeEndpointBase {
15
15
  readonly incident: EdgeCount;
16
16
  }
17
- export interface EdgeConstraints {
17
+ export interface DirectedEdgeConstraints {
18
18
  readonly noSelf?: true;
19
19
  readonly acyclic?: true;
20
20
  }
21
+ export interface UndirectedEdgeConstraints {
22
+ readonly noSelf?: true;
23
+ readonly acyclic?: never;
24
+ }
21
25
  export interface DirectedEdgeContract {
22
26
  readonly orientation: 'directed';
23
27
  readonly endpoints: {
24
28
  readonly source: DirectedSourceEndpoint;
25
29
  readonly target: DirectedTargetEndpoint;
26
30
  };
27
- readonly constraints: EdgeConstraints;
31
+ readonly constraints: DirectedEdgeConstraints;
28
32
  }
29
33
  export interface UndirectedEdgeContract {
30
34
  readonly orientation: 'undirected';
31
35
  readonly endpoints: readonly [IncidentEndpoint, IncidentEndpoint];
32
- readonly constraints: EdgeConstraints;
36
+ readonly constraints: UndirectedEdgeConstraints;
33
37
  }
34
38
  export type EdgeContract = DirectedEdgeContract | UndirectedEdgeContract;
35
- //# sourceMappingURL=edge.d.ts.map
@@ -0,0 +1 @@
1
+ export {};
@@ -1,4 +1,3 @@
1
- import type { PropertyObjectSchema } from '../value/schema.js';
2
1
  export type PropertyVisibility = 'public' | 'private';
3
2
  export type AutoEvent = 'create' | 'update';
4
3
  export type AutoSet = 'instant';
@@ -6,13 +5,14 @@ export interface PropertyAuto {
6
5
  readonly on: readonly AutoEvent[];
7
6
  readonly set: AutoSet;
8
7
  }
9
- export interface PropertyMetadata {
8
+ export interface PropertyDefinition {
9
+ readonly schema: import('../../value/model/schema.js').JsonSchema;
10
+ readonly required: boolean;
10
11
  readonly visibility: PropertyVisibility;
11
12
  readonly auto?: PropertyAuto;
13
+ readonly description?: string;
12
14
  }
13
- export type PropertyMetadataRecord = Readonly<Record<string, PropertyMetadata>>;
15
+ export type PropertyRecord = Readonly<Record<string, PropertyDefinition>>;
14
16
  export interface PropertyFacet {
15
- readonly properties: PropertyObjectSchema;
16
- readonly propertyMetadata: PropertyMetadataRecord;
17
+ readonly properties: PropertyRecord;
17
18
  }
18
- //# sourceMappingURL=property.d.ts.map
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,15 @@
1
+ import type { Value as PortableValue } from '@astrale-os/kernel-dsl/value';
2
+ import type { PropertyKey } from '../../addressing/index.js';
3
+ declare const PROPERTY_VALUES: unique symbol;
4
+ /** Detached, sorted, deeply frozen values keyed by exact declaring Property identity. */
5
+ export type PropertyValues = Readonly<Record<PropertyKey, PortableValue>> & {
6
+ readonly [PROPERTY_VALUES]: true;
7
+ };
8
+ export interface PropertyValuesOperations {
9
+ accept(input: unknown, pointer?: string): PropertyValues;
10
+ create(entries: Iterable<readonly [PropertyKey, PortableValue]>): PropertyValues;
11
+ }
12
+ export declare function acceptPropertyValues(input: unknown, pointer?: string): PropertyValues;
13
+ export declare function createPropertyValues(entries: Iterable<readonly [PropertyKey, PortableValue]>): PropertyValues;
14
+ export declare const PropertyValues: PropertyValuesOperations;
15
+ export {};
@@ -0,0 +1,30 @@
1
+ import { accept as acceptPortable } from '@astrale-os/kernel-dsl/value';
2
+ import { PropertyKey as admitPropertyKey } from '../../addressing/index.js';
3
+ export function acceptPropertyValues(input, pointer = '') {
4
+ const admitted = acceptPortable(input);
5
+ if (admitted === null || typeof admitted !== 'object' || Array.isArray(admitted)) {
6
+ throw new TypeError(`Expected PropertyValues object at ${pointer || '/'}.`);
7
+ }
8
+ return createPropertyValues(Object.entries(admitted).map(([key, value]) => [admitPropertyKey(key), value]));
9
+ }
10
+ export function createPropertyValues(entries) {
11
+ const output = Object.create(null);
12
+ for (const [key, value] of [...entries].sort(([left], [right]) => compare(left, right))) {
13
+ Object.defineProperty(output, key, { enumerable: true, value: freeze(value) });
14
+ }
15
+ return Object.freeze(output);
16
+ }
17
+ export const PropertyValues = Object.freeze({
18
+ accept: acceptPropertyValues,
19
+ create: createPropertyValues,
20
+ });
21
+ function freeze(value) {
22
+ if (value === null || typeof value !== 'object')
23
+ return value;
24
+ for (const member of Object.values(value))
25
+ freeze(member);
26
+ return Object.freeze(value);
27
+ }
28
+ function compare(left, right) {
29
+ return left < right ? -1 : left > right ? 1 : 0;
30
+ }
@@ -0,0 +1,123 @@
1
+ import type { Value as PortableValue } from '@astrale-os/kernel-dsl/value';
2
+ import type { ClassRef, DefinitionKey, Key, PolicyRef, PropertyKey } from '../../addressing/index.js';
3
+ import type { ResolvedMethodCollection } from '../callable/resolved.js';
4
+ import type { Diagnostic } from '../validation/diagnostic.js';
5
+ import type { OrderingKind } from '../value/ordering.js';
6
+ import type { ClassDefinition, ClassKind } from './model/class.js';
7
+ import type { DataDefinition } from './model/data.js';
8
+ import type { PropertyDefinition } from './model/property.js';
9
+ import type { PropertyValues } from './property-values.js';
10
+ export interface ResolvedProperty<out Value = PortableValue, out Required extends boolean = boolean> {
11
+ readonly owner: AnyResolvedClass;
12
+ readonly name: string;
13
+ readonly key: PropertyKey;
14
+ readonly definition: PropertyDefinition & {
15
+ readonly required: Required;
16
+ };
17
+ /** The one portable scalar ordering domain, when the Property is orderable. */
18
+ readonly ordering?: OrderingKind;
19
+ validate(input: unknown): readonly Diagnostic[];
20
+ readonly __value?: Value;
21
+ }
22
+ export interface ResolvedData {
23
+ readonly owner: ResolvedClass<'node'>;
24
+ readonly definition: DataDefinition;
25
+ }
26
+ export interface ResolvedClassPolicies<Kind extends ClassKind = ClassKind> {
27
+ readonly read: Kind extends 'node' ? readonly PolicyRef[] : readonly [];
28
+ readonly traverse: readonly PolicyRef[];
29
+ }
30
+ 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]> & {
31
+ readonly byKey: ByKey;
32
+ get<Key extends keyof ByKey>(key: Key): ByKey[Key];
33
+ get(key: PropertyKey): ResolvedProperty | undefined;
34
+ from(input: PropertyInput<ByKey, ByName>): PropertyValues;
35
+ };
36
+ 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, {
37
+ readonly kind: Kind;
38
+ }> = Extract<ClassDefinition, {
39
+ readonly kind: Kind;
40
+ }>, Parents extends readonly unknown[] = readonly unknown[]> {
41
+ readonly ref: ClassRef;
42
+ readonly key: DefinitionKey<string, 'class'>;
43
+ readonly kind: Kind;
44
+ readonly abstract: boolean;
45
+ readonly definition: Definition;
46
+ readonly extends: Parents & readonly ResolvedClass<Kind>[];
47
+ /** Effective inherited Policy conjunction, deduplicated by exact Policy ref. */
48
+ readonly policies: ResolvedClassPolicies<Kind>;
49
+ readonly data: Kind extends 'node' ? ResolvedData | undefined : undefined;
50
+ readonly properties: Properties;
51
+ readonly methods: Kind extends 'node' ? InstanceMethods : ResolvedMethodCollection<Record<never, never>>;
52
+ readonly static: {
53
+ readonly methods: Kind extends 'node' ? StaticMethods : ResolvedMethodCollection<Record<never, never>>;
54
+ };
55
+ readonly self: {
56
+ readonly data: Kind extends 'node' ? ResolvedData | undefined : undefined;
57
+ readonly properties: SelfProperties;
58
+ /** Policies declared by this exact Class only. */
59
+ readonly policies: Definition['policies'];
60
+ readonly methods: Kind extends 'node' ? SelfInstanceMethods : ResolvedMethodCollection<Record<never, never>>;
61
+ readonly static: {
62
+ readonly methods: Kind extends 'node' ? SelfStaticMethods : ResolvedMethodCollection<Record<never, never>>;
63
+ };
64
+ };
65
+ satisfies(selected: ResolvedClass<Kind>): boolean;
66
+ validateProperties(input: unknown): readonly Diagnostic[];
67
+ }
68
+ /** One resolved Class with an exact graph kind, used at heterogeneous Domain boundaries. */
69
+ export type AnyResolvedClass = ResolvedClass<'node'> | ResolvedClass<'edge'>;
70
+ /** Exact Class keys satisfied by one resolved Class, including transitive parents. */
71
+ export type ClassSatisfactionKeysOf<Class> = ClassSatisfactionKeys<Class, never>;
72
+ type ClassSatisfactionKeys<Class, Seen> = Class extends Seen ? never : (Class extends {
73
+ readonly key: infer ExactKey extends DefinitionKey<Key.Origin, 'class'>;
74
+ } ? ExactKey : never) | (Class extends ResolvedClass<ClassKind, ResolvedPropertyCollection, ResolvedMethodCollection, ResolvedMethodCollection, ResolvedPropertyCollection, ResolvedMethodCollection, ResolvedMethodCollection, ClassDefinition, infer Parents> ? ClassSatisfactionKeys<Extract<Parents[number], ResolvedClass>, Seen | Class> : never);
75
+ export type PropertyValueOf<Property> = Property extends ResolvedProperty<infer Value> ? Value : never;
76
+ export type PropertiesOf<Class> = Class extends {
77
+ readonly properties: infer Properties extends ResolvedPropertyCollection;
78
+ } ? Properties : ResolvedPropertyCollection<Record<never, never>>;
79
+ export type PropertyValuesOf<Class> = PropertyValues & Readonly<{
80
+ [Key in keyof PropertyByKeyOf<Class>]?: PropertyValueOf<PropertyByKeyOf<Class>[Key]>;
81
+ }>;
82
+ export type PropertyInputOf<Class> = PropertyInput<PropertyByKeyOf<Class>, PropertyByNameOf<Class>>;
83
+ export type MethodsOf<Class> = Class extends {
84
+ readonly kind: 'node';
85
+ readonly methods: infer Methods extends ResolvedMethodCollection;
86
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
87
+ export type StaticMethodsOf<Class> = Class extends {
88
+ readonly kind: 'node';
89
+ readonly static: {
90
+ readonly methods: infer Methods extends ResolvedMethodCollection;
91
+ };
92
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
93
+ export type SelfPropertiesOf<Class> = Class extends {
94
+ readonly self: {
95
+ readonly properties: infer Properties extends ResolvedPropertyCollection;
96
+ };
97
+ } ? Properties : ResolvedPropertyCollection<Record<never, never>>;
98
+ export type SelfMethodsOf<Class> = Class extends {
99
+ readonly kind: 'node';
100
+ readonly self: {
101
+ readonly methods: infer Methods extends ResolvedMethodCollection;
102
+ };
103
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
104
+ export type SelfStaticMethodsOf<Class> = Class extends {
105
+ readonly kind: 'node';
106
+ readonly self: {
107
+ readonly static: {
108
+ readonly methods: infer Methods extends ResolvedMethodCollection;
109
+ };
110
+ };
111
+ } ? Methods : ResolvedMethodCollection<Record<never, never>>;
112
+ type PropertyInput<ByKey extends Readonly<Record<PropertyKey, ResolvedProperty<unknown>>>, ByName extends Readonly<Record<string, ResolvedProperty<unknown>>>> = Readonly<{
113
+ [Key in keyof ByKey]?: PropertyValueOf<ByKey[Key]>;
114
+ } & {
115
+ [Name in keyof ByName]?: PropertyValueOf<ByName[Name]>;
116
+ }>;
117
+ type PropertyByKeyOf<Class> = PropertiesOf<Class> extends {
118
+ readonly byKey: infer ByKey extends Readonly<Record<PropertyKey, ResolvedProperty<unknown>>>;
119
+ } ? ByKey : Readonly<Record<never, never>>;
120
+ type PropertyByNameOf<Class> = Readonly<{
121
+ [Name in Exclude<keyof PropertiesOf<Class>, keyof ResolvedPropertyCollection>]: Extract<PropertiesOf<Class>[Name], ResolvedProperty>;
122
+ }>;
123
+ 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,20 @@
1
+ import type { ClassRef, CoreRef, DefinitionBase } from '../../../addressing/index.js';
2
+ import type { PropertyValues } from '../../class/property-values.js';
3
+ export interface DomainEndpointRef {
4
+ readonly kind: 'domain';
5
+ }
6
+ export type CoreEndpointRef = CoreRef | DomainEndpointRef;
7
+ export interface CoreDefinition extends DefinitionBase<CoreRef> {
8
+ readonly class: ClassRef;
9
+ readonly properties: PropertyValues;
10
+ }
11
+ export interface CoreEdge {
12
+ readonly class: ClassRef;
13
+ readonly source: CoreEndpointRef;
14
+ readonly target: CoreEndpointRef;
15
+ readonly properties: PropertyValues;
16
+ }
17
+ export interface CoreContent {
18
+ readonly nodes: Readonly<Record<string, CoreDefinition>>;
19
+ readonly edges: readonly CoreEdge[];
20
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ import type { DefinitionKey } from '../../addressing/index.js';
2
+ import type { PropertyValues } from '../class/property-values.js';
3
+ import type { ResolvedClass } from '../class/resolved.js';
4
+ import type { CoreDefinition } from './model/core.js';
5
+ export interface ResolvedCoreDefinition {
6
+ readonly ref: CoreDefinition['ref'];
7
+ readonly key: DefinitionKey<string, 'core'>;
8
+ readonly class: ResolvedClass<'node'>;
9
+ readonly properties: PropertyValues;
10
+ readonly definition: CoreDefinition;
11
+ }
12
+ export interface ResolvedDomainEndpoint {
13
+ readonly kind: 'domain';
14
+ readonly origin: string;
15
+ }
16
+ export interface ResolvedCoreEdge {
17
+ readonly class: ResolvedClass<'edge'>;
18
+ readonly source: ResolvedCoreDefinition | ResolvedDomainEndpoint;
19
+ readonly target: ResolvedCoreDefinition | ResolvedDomainEndpoint;
20
+ readonly properties: PropertyValues;
21
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -10,4 +10,3 @@ export declare const icon: Readonly<{
10
10
  readonly minLength: 1;
11
11
  readonly maxLength: 8000;
12
12
  }>;
13
- //# sourceMappingURL=metadata.d.ts.map
@@ -10,4 +10,3 @@ export const icon = Object.freeze({
10
10
  minLength: 1,
11
11
  maxLength: 8000,
12
12
  });
13
- //# sourceMappingURL=metadata.js.map
@@ -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,23 @@
1
+ export type { ClassRef, CoreRef, DefinitionBase, DefinitionKey, DefinitionRef, FunctionRef, MethodKey, PolicyRef, PropertyKey, ViewRef, } from '../addressing/index.js';
2
+ export type { Value as PropertyValue } from '@astrale-os/kernel-dsl/value';
3
+ export type { JsonSchema as ValueSchema, JsonSchemaObject as ValueSchemaObject, } from './value/model/schema.js';
4
+ export type { OrderingKind } from './value/ordering.js';
5
+ export type * from './callable/model/callable.js';
6
+ export type * from './callable/resolved.js';
7
+ export type * from './class/model/class.js';
8
+ export type { DataDefinition, DataFacet, MediaType } from './class/model/data.js';
9
+ export type * from './class/model/edge.js';
10
+ export type * from './class/model/property.js';
11
+ export type * from './class/resolved.js';
12
+ export type * from './class/facets.js';
13
+ export { PropertyValues } from './class/property-values.js';
14
+ export type { PropertyValuesOperations } from './class/property-values.js';
15
+ export type * from './core/model/core.js';
16
+ export type * from './core/resolved.js';
17
+ export type { Definition } from './definition.js';
18
+ export type { ResolvedDefinition, ResolvedDefinitionOf } from './resolved.js';
19
+ export type { Diagnostic, DiagnosticCode } from './validation/diagnostic.js';
20
+ export type * from './policy/model/policy.js';
21
+ export type * from './policy/resolved.js';
22
+ export type * from './view/model/view.js';
23
+ export type * from './view/resolved.js';
@@ -0,0 +1 @@
1
+ export { PropertyValues } from './class/property-values.js';
@@ -1,5 +1,5 @@
1
- import type { ClassRef } from '../../reference.js';
2
- import type { PolicyEdgePattern, PolicyPatternExpression, PolicyPatternTerm } from '../ast.js';
1
+ import type { ClassRef } from '../../../addressing/index.js';
2
+ import type { PolicyEdgePattern, PolicyPatternExpression, PolicyPatternTerm } from '../model/policy.js';
3
3
  export interface PatternBranch {
4
4
  readonly edges: readonly PatternEdgeUse[];
5
5
  readonly variables: ReadonlyMap<string, ClassRef>;
@@ -15,7 +15,5 @@ export declare function branchesOf(pattern: PolicyPatternExpression, namespace:
15
15
  export declare function branchProduct(children: readonly (readonly PatternBranch[])[]): readonly PatternBranch[];
16
16
  export declare function capBranches(values: readonly PatternBranch[]): readonly PatternBranch[];
17
17
  export declare function isConnected(branch: PatternBranch): boolean;
18
- /** A normalized branch targets either one object or both authored Edge endpoints, never a mixture. */
19
18
  export declare function targetMode(branch: PatternBranch): PolicyTargetMode | undefined;
20
19
  export declare function termKey(term: PolicyPatternTerm, namespace: string): string;
21
- //# sourceMappingURL=branches.d.ts.map
@@ -39,7 +39,6 @@ export function isConnected(branch) {
39
39
  const root = union.find('subject');
40
40
  return [...vertices].every((vertex) => union.find(vertex) === root);
41
41
  }
42
- /** A normalized branch targets either one object or both authored Edge endpoints, never a mixture. */
43
42
  export function targetMode(branch) {
44
43
  let object = false;
45
44
  let source = false;
@@ -61,15 +60,8 @@ export function termKey(term, namespace) {
61
60
  return term.kind === 'variable' ? variableKey(namespace, term.id) : term.kind;
62
61
  }
63
62
  function branchesForNode(pattern, namespace, variables) {
64
- if (isEdge(pattern)) {
65
- return [
66
- {
67
- edges: [{ pattern, namespace }],
68
- variables,
69
- requiredVariables: new Set(),
70
- namespace,
71
- },
72
- ];
63
+ if ('source' in pattern) {
64
+ return [{ edges: [{ pattern, namespace }], variables, requiredVariables: new Set(), namespace }];
73
65
  }
74
66
  if ('exists' in pattern) {
75
67
  const direct = new Set(pattern.exists.nodes.map((node) => variableKey(namespace, node.variable.id)));
@@ -78,17 +70,11 @@ function branchesForNode(pattern, namespace, variables) {
78
70
  requiredVariables: new Set([...branch.requiredVariables, ...direct]),
79
71
  }));
80
72
  }
81
- const { key, values } = patternOperands(pattern);
82
- const children = values.map((child) => branchesForNode(child, namespace, variables));
83
- return key === 'allOf' ? branchProduct(children) : capBranches(children.flat());
73
+ const children = ('allOf' in pattern ? pattern.allOf : pattern.anyOf).map((child) => branchesForNode(child, namespace, variables));
74
+ return 'allOf' in pattern ? branchProduct(children) : capBranches(children.flat());
84
75
  }
85
76
  function emptyBranch() {
86
- return {
87
- edges: [],
88
- variables: new Map(),
89
- requiredVariables: new Set(),
90
- namespace: '$',
91
- };
77
+ return { edges: [], variables: new Map(), requiredVariables: new Set(), namespace: '$' };
92
78
  }
93
79
  function mergeBranches(left, right) {
94
80
  return {
@@ -118,14 +104,6 @@ function collectVariableClasses(pattern, namespace) {
118
104
  function variableKey(namespace, id) {
119
105
  return `variable:${namespace}:${id}`;
120
106
  }
121
- function patternOperands(value) {
122
- return 'allOf' in value
123
- ? { key: 'allOf', values: value.allOf }
124
- : { key: 'anyOf', values: value.anyOf };
125
- }
126
- function isEdge(value) {
127
- return 'source' in value;
128
- }
129
107
  class UnionFind {
130
108
  #parents = new Map();
131
109
  constructor(values) {
@@ -152,4 +130,3 @@ class UnionFind {
152
130
  this.#parents.set(b, a);
153
131
  }
154
132
  }
155
- //# sourceMappingURL=branches.js.map
@@ -1,5 +1,4 @@
1
- import type { PolicyCheckExpression } from '../ast.js';
2
- import type { PolicyValidationContext } from './context.js';
1
+ import type { PolicyCheckExpression } from '../model/policy.js';
3
2
  export declare const MAX_PATTERN_DEPTH = 4;
4
3
  export declare const MAX_BRANCHES = 8;
5
4
  export declare const MAX_VARIABLES = 4;
@@ -14,6 +13,4 @@ export interface CheckMeasure {
14
13
  readonly branches: number;
15
14
  readonly leaves: number;
16
15
  }
17
- export declare function validatePolicyBudgets(context: PolicyValidationContext): void;
18
16
  export declare function measureChecks(expression: PolicyCheckExpression): CheckMeasure;
19
- //# sourceMappingURL=budgets.d.ts.map
@@ -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)
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,3 @@
1
+ export type * from './model/policy.js';
2
+ export type * from './resolved.js';
3
+ export * from './normalization/normalize.js';
@@ -0,0 +1 @@
1
+ export * from './normalization/normalize.js';