@dxos/echo 0.8.4-main.fffef41 → 0.8.4-staging.60fe92afc8

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 (731) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +10 -11
  3. package/dist/lib/neutral/Annotation.mjs +68 -0
  4. package/dist/lib/neutral/Database.mjs +38 -0
  5. package/dist/lib/neutral/Entity.mjs +72 -0
  6. package/dist/lib/neutral/Err.mjs +12 -0
  7. package/dist/lib/neutral/Feed.mjs +54 -0
  8. package/dist/lib/neutral/Filter.mjs +70 -0
  9. package/dist/lib/neutral/Format.mjs +86 -0
  10. package/dist/lib/neutral/Format.mjs.map +7 -0
  11. package/dist/lib/neutral/JsonSchema.mjs +18 -0
  12. package/dist/lib/neutral/JsonSchema.mjs.map +7 -0
  13. package/dist/lib/neutral/Key.mjs +16 -0
  14. package/dist/lib/neutral/Key.mjs.map +7 -0
  15. package/dist/lib/neutral/Migration.mjs +18 -0
  16. package/dist/lib/neutral/Migration.mjs.map +7 -0
  17. package/dist/lib/neutral/Obj.mjs +122 -0
  18. package/dist/lib/neutral/Obj.mjs.map +7 -0
  19. package/dist/lib/neutral/Order.mjs +16 -0
  20. package/dist/lib/neutral/Order.mjs.map +7 -0
  21. package/dist/lib/neutral/Query.mjs +38 -0
  22. package/dist/lib/neutral/Query.mjs.map +7 -0
  23. package/dist/lib/neutral/QueryResult.mjs +2 -0
  24. package/dist/lib/neutral/QueryResult.mjs.map +7 -0
  25. package/dist/lib/neutral/Ref.mjs +25 -0
  26. package/dist/lib/neutral/Ref.mjs.map +7 -0
  27. package/dist/lib/neutral/Registry.mjs +14 -0
  28. package/dist/lib/neutral/Registry.mjs.map +7 -0
  29. package/dist/lib/neutral/Relation.mjs +97 -0
  30. package/dist/lib/neutral/Relation.mjs.map +7 -0
  31. package/dist/lib/neutral/Scope.mjs +12 -0
  32. package/dist/lib/neutral/Scope.mjs.map +7 -0
  33. package/dist/lib/neutral/Tag.mjs +32 -0
  34. package/dist/lib/neutral/Tag.mjs.map +7 -0
  35. package/dist/lib/neutral/Type.mjs +65 -0
  36. package/dist/lib/neutral/Type.mjs.map +7 -0
  37. package/dist/lib/neutral/chunk-35INCYOE.mjs +7 -0
  38. package/dist/lib/neutral/chunk-35INCYOE.mjs.map +7 -0
  39. package/dist/lib/neutral/chunk-3PBP4V4O.mjs +101 -0
  40. package/dist/lib/neutral/chunk-3PBP4V4O.mjs.map +7 -0
  41. package/dist/lib/neutral/chunk-4ZUHOTCG.mjs +184 -0
  42. package/dist/lib/neutral/chunk-4ZUHOTCG.mjs.map +7 -0
  43. package/dist/lib/neutral/chunk-5SMDBFVB.mjs +108 -0
  44. package/dist/lib/neutral/chunk-5SMDBFVB.mjs.map +7 -0
  45. package/dist/lib/neutral/chunk-5SUJPHAE.mjs +34 -0
  46. package/dist/lib/neutral/chunk-5SUJPHAE.mjs.map +7 -0
  47. package/dist/lib/neutral/chunk-6M2Z6WBH.mjs +93 -0
  48. package/dist/lib/neutral/chunk-6M2Z6WBH.mjs.map +7 -0
  49. package/dist/lib/neutral/chunk-6YDI3J37.mjs +346 -0
  50. package/dist/lib/neutral/chunk-6YDI3J37.mjs.map +7 -0
  51. package/dist/lib/neutral/chunk-7FPIAJIV.mjs +2279 -0
  52. package/dist/lib/neutral/chunk-7FPIAJIV.mjs.map +7 -0
  53. package/dist/lib/neutral/chunk-7LOUAPYZ.mjs +25 -0
  54. package/dist/lib/neutral/chunk-7LOUAPYZ.mjs.map +7 -0
  55. package/dist/lib/neutral/chunk-7PI7C4EF.mjs +747 -0
  56. package/dist/lib/neutral/chunk-7PI7C4EF.mjs.map +7 -0
  57. package/dist/lib/neutral/chunk-BBFJWWAV.mjs +51 -0
  58. package/dist/lib/neutral/chunk-BBFJWWAV.mjs.map +7 -0
  59. package/dist/lib/neutral/chunk-EVK6XBXO.mjs +56 -0
  60. package/dist/lib/neutral/chunk-EVK6XBXO.mjs.map +7 -0
  61. package/dist/lib/neutral/chunk-IGK6FN65.mjs +27 -0
  62. package/dist/lib/neutral/chunk-IGK6FN65.mjs.map +7 -0
  63. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  64. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  65. package/dist/lib/neutral/chunk-LWXVKPPW.mjs +281 -0
  66. package/dist/lib/neutral/chunk-LWXVKPPW.mjs.map +7 -0
  67. package/dist/lib/neutral/chunk-MZ7K3MLL.mjs +48 -0
  68. package/dist/lib/neutral/chunk-MZ7K3MLL.mjs.map +7 -0
  69. package/dist/lib/neutral/chunk-O6BH7EPN.mjs +94 -0
  70. package/dist/lib/neutral/chunk-O6BH7EPN.mjs.map +7 -0
  71. package/dist/lib/neutral/chunk-QQIYS74I.mjs +336 -0
  72. package/dist/lib/neutral/chunk-QQIYS74I.mjs.map +7 -0
  73. package/dist/lib/neutral/chunk-R5W6DXR4.mjs +678 -0
  74. package/dist/lib/neutral/chunk-R5W6DXR4.mjs.map +7 -0
  75. package/dist/lib/neutral/chunk-RIVWNMSF.mjs +41 -0
  76. package/dist/lib/neutral/chunk-RIVWNMSF.mjs.map +7 -0
  77. package/dist/lib/neutral/chunk-SBVFRTST.mjs +160 -0
  78. package/dist/lib/neutral/chunk-SBVFRTST.mjs.map +7 -0
  79. package/dist/lib/neutral/chunk-T6E37YIP.mjs +251 -0
  80. package/dist/lib/neutral/chunk-T6E37YIP.mjs.map +7 -0
  81. package/dist/lib/neutral/chunk-TFEWTY5A.mjs +428 -0
  82. package/dist/lib/neutral/chunk-TFEWTY5A.mjs.map +7 -0
  83. package/dist/lib/neutral/chunk-TYGKCRMK.mjs +437 -0
  84. package/dist/lib/neutral/chunk-TYGKCRMK.mjs.map +7 -0
  85. package/dist/lib/neutral/chunk-UUP46KUQ.mjs +205 -0
  86. package/dist/lib/neutral/chunk-UUP46KUQ.mjs.map +7 -0
  87. package/dist/lib/neutral/chunk-WISOH2XH.mjs +36 -0
  88. package/dist/lib/neutral/chunk-WISOH2XH.mjs.map +7 -0
  89. package/dist/lib/neutral/chunk-WTQJHC75.mjs +395 -0
  90. package/dist/lib/neutral/chunk-WTQJHC75.mjs.map +7 -0
  91. package/dist/lib/neutral/chunk-WU3GIANS.mjs +31 -0
  92. package/dist/lib/neutral/chunk-WU3GIANS.mjs.map +7 -0
  93. package/dist/lib/neutral/chunk-ZGNNFYHS.mjs +132 -0
  94. package/dist/lib/neutral/chunk-ZGNNFYHS.mjs.map +7 -0
  95. package/dist/lib/neutral/index.mjs +111 -0
  96. package/dist/lib/neutral/index.mjs.map +7 -0
  97. package/dist/lib/neutral/internal/index.mjs +539 -0
  98. package/dist/lib/neutral/internal/index.mjs.map +7 -0
  99. package/dist/lib/neutral/meta.json +1 -0
  100. package/dist/lib/neutral/testing/index.mjs +458 -0
  101. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  102. package/dist/types/src/Annotation.d.ts +128 -0
  103. package/dist/types/src/Annotation.d.ts.map +1 -0
  104. package/dist/types/src/Annotation.test.d.ts +2 -0
  105. package/dist/types/src/Annotation.test.d.ts.map +1 -0
  106. package/dist/types/src/Collection.d.ts +15 -0
  107. package/dist/types/src/Collection.d.ts.map +1 -0
  108. package/dist/types/src/Database.d.ts +208 -0
  109. package/dist/types/src/Database.d.ts.map +1 -0
  110. package/dist/types/src/Dataset.d.ts +29 -0
  111. package/dist/types/src/Dataset.d.ts.map +1 -0
  112. package/dist/types/src/Entity.d.ts +247 -0
  113. package/dist/types/src/Entity.d.ts.map +1 -0
  114. package/dist/types/src/Entity.test.d.ts +2 -0
  115. package/dist/types/src/Entity.test.d.ts.map +1 -0
  116. package/dist/types/src/Err.d.ts +107 -0
  117. package/dist/types/src/Err.d.ts.map +1 -0
  118. package/dist/types/src/Feed.d.ts +229 -0
  119. package/dist/types/src/Feed.d.ts.map +1 -0
  120. package/dist/types/src/Filter.d.ts +175 -0
  121. package/dist/types/src/Filter.d.ts.map +1 -0
  122. package/dist/types/src/Filter.test.d.ts +2 -0
  123. package/dist/types/src/Filter.test.d.ts.map +1 -0
  124. package/dist/types/src/Format.d.ts +2 -0
  125. package/dist/types/src/Format.d.ts.map +1 -0
  126. package/dist/types/src/Hypergraph.d.ts +70 -0
  127. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  128. package/dist/types/src/Json.d.ts +33 -0
  129. package/dist/types/src/Json.d.ts.map +1 -0
  130. package/dist/types/src/Json.test.d.ts +2 -0
  131. package/dist/types/src/Json.test.d.ts.map +1 -0
  132. package/dist/types/src/JsonSchema.d.ts +16 -0
  133. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  134. package/dist/types/src/Key.d.ts +2 -1
  135. package/dist/types/src/Key.d.ts.map +1 -1
  136. package/dist/types/src/Migration.d.ts +72 -0
  137. package/dist/types/src/Migration.d.ts.map +1 -0
  138. package/dist/types/src/Obj.d.ts +483 -110
  139. package/dist/types/src/Obj.d.ts.map +1 -1
  140. package/dist/types/src/Obj.test.d.ts +2 -0
  141. package/dist/types/src/Obj.test.d.ts.map +1 -0
  142. package/dist/types/src/Order.d.ts +26 -0
  143. package/dist/types/src/Order.d.ts.map +1 -0
  144. package/dist/types/src/Query.d.ts +231 -0
  145. package/dist/types/src/Query.d.ts.map +1 -0
  146. package/dist/types/src/Query.test.d.ts +2 -0
  147. package/dist/types/src/Query.test.d.ts.map +1 -0
  148. package/dist/types/src/QueryResult.d.ts +101 -0
  149. package/dist/types/src/QueryResult.d.ts.map +1 -0
  150. package/dist/types/src/Ref.d.ts +69 -11
  151. package/dist/types/src/Ref.d.ts.map +1 -1
  152. package/dist/types/src/Registry.d.ts +131 -0
  153. package/dist/types/src/Registry.d.ts.map +1 -0
  154. package/dist/types/src/Relation.d.ts +321 -23
  155. package/dist/types/src/Relation.d.ts.map +1 -1
  156. package/dist/types/src/Relation.test.d.ts +2 -0
  157. package/dist/types/src/Relation.test.d.ts.map +1 -0
  158. package/dist/types/src/Scope.d.ts +35 -0
  159. package/dist/types/src/Scope.d.ts.map +1 -0
  160. package/dist/types/src/Tag.d.ts +26 -9
  161. package/dist/types/src/Tag.d.ts.map +1 -1
  162. package/dist/types/src/Type.d.ts +397 -106
  163. package/dist/types/src/Type.d.ts.map +1 -1
  164. package/dist/types/src/Type.test.d.ts +2 -0
  165. package/dist/types/src/Type.test.d.ts.map +1 -0
  166. package/dist/types/src/View.d.ts +65 -0
  167. package/dist/types/src/View.d.ts.map +1 -0
  168. package/dist/types/src/exemplars.test.d.ts +2 -0
  169. package/dist/types/src/exemplars.test.d.ts.map +1 -0
  170. package/dist/types/src/hierarchy.test.d.ts +2 -0
  171. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  172. package/dist/types/src/index.d.ts +21 -5
  173. package/dist/types/src/index.d.ts.map +1 -1
  174. package/dist/types/src/internal/Annotation/annotations.d.ts +272 -0
  175. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  176. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  177. package/dist/types/src/internal/Annotation/dictionary.d.ts +24 -0
  178. package/dist/types/src/internal/Annotation/dictionary.d.ts.map +1 -0
  179. package/dist/types/src/internal/Annotation/entity-dictionary.d.ts +14 -0
  180. package/dist/types/src/internal/Annotation/entity-dictionary.d.ts.map +1 -0
  181. package/dist/types/src/internal/Annotation/index.d.ts +6 -0
  182. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  183. package/dist/types/src/internal/Annotation/sorting.d.ts +24 -0
  184. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  185. package/dist/types/src/internal/Annotation/util.d.ts +48 -0
  186. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  187. package/dist/types/src/internal/Entity/api.d.ts +27 -0
  188. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  189. package/dist/types/src/internal/Entity/entity.d.ts +84 -0
  190. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  191. package/dist/types/src/internal/Entity/guard.d.ts +10 -0
  192. package/dist/types/src/internal/Entity/guard.d.ts.map +1 -0
  193. package/dist/types/src/internal/Entity/index.d.ts +10 -0
  194. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  195. package/dist/types/src/internal/Entity/model.d.ts +59 -0
  196. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  197. package/dist/types/src/internal/Entity/object.d.ts +18 -0
  198. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  199. package/dist/types/src/internal/Entity/relation.d.ts +58 -0
  200. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  201. package/dist/types/src/internal/Entity/type-kind.d.ts +24 -0
  202. package/dist/types/src/internal/Entity/type-kind.d.ts.map +1 -0
  203. package/dist/types/src/internal/Entity/type-uri.d.ts +24 -0
  204. package/dist/types/src/internal/Entity/type-uri.d.ts.map +1 -0
  205. package/dist/types/src/internal/Entity/util.d.ts +2 -0
  206. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  207. package/dist/types/src/internal/Entity/version.d.ts +42 -0
  208. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  209. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  210. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  211. package/dist/types/src/internal/{formats → Format}/format.d.ts +7 -4
  212. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  213. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  214. package/dist/types/src/internal/{formats → Format}/index.d.ts +2 -2
  215. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  216. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  217. package/dist/types/src/internal/{formats → Format}/object.d.ts +3 -1
  218. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  219. package/dist/types/src/internal/{formats → Format}/select.d.ts +6 -4
  220. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  221. package/dist/types/src/internal/{formats → Format}/string.d.ts +4 -0
  222. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  223. package/dist/types/src/internal/{formats → Format}/types.d.ts +14 -10
  224. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  225. package/dist/types/src/internal/{json → JsonSchema}/annotations.d.ts +1 -1
  226. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  227. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  228. package/dist/types/src/internal/JsonSchema/index.d.ts +5 -0
  229. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  230. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  231. package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-type.d.ts +136 -35
  232. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  233. package/dist/types/src/internal/{json → JsonSchema}/json-schema.d.ts +6 -3
  234. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  235. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  236. package/dist/types/src/internal/Obj/atoms.d.ts +38 -0
  237. package/dist/types/src/internal/Obj/atoms.d.ts.map +1 -0
  238. package/dist/types/src/internal/Obj/clone.d.ts +8 -0
  239. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  240. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  241. package/dist/types/src/internal/{object/create.d.ts → Obj/create-object.d.ts} +15 -16
  242. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  243. package/dist/types/src/internal/Obj/create-object.test.d.ts +2 -0
  244. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  245. package/dist/types/src/internal/Obj/deleted.d.ts +6 -0
  246. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  247. package/dist/types/src/internal/Obj/index.d.ts +11 -0
  248. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  249. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  250. package/dist/types/src/internal/Obj/json-serializer.d.ts +45 -0
  251. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  252. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  253. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  254. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  255. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  256. package/dist/types/src/internal/Obj/set-value.d.ts +7 -0
  257. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  258. package/dist/types/src/internal/Obj/set-value.test.d.ts +2 -0
  259. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  260. package/dist/types/src/internal/Obj/snapshot.d.ts +6 -0
  261. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  262. package/dist/types/src/internal/Obj/typed-object.d.ts +25 -0
  263. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  264. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  265. package/dist/types/src/internal/Query/index.d.ts +2 -0
  266. package/dist/types/src/internal/Query/index.d.ts.map +1 -0
  267. package/dist/types/src/internal/Query/pretty.d.ts +10 -0
  268. package/dist/types/src/internal/Query/pretty.d.ts.map +1 -0
  269. package/dist/types/src/internal/Ref/atoms.d.ts +10 -0
  270. package/dist/types/src/internal/Ref/atoms.d.ts.map +1 -0
  271. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  272. package/dist/types/src/internal/Ref/ref-array.d.ts +21 -0
  273. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  274. package/dist/types/src/internal/{ref → Ref}/ref.d.ts +88 -32
  275. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  276. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  277. package/dist/types/src/internal/Ref/utils.d.ts +8 -0
  278. package/dist/types/src/internal/Ref/utils.d.ts.map +1 -0
  279. package/dist/types/src/internal/Type/compose.d.ts +7 -0
  280. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  281. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  282. package/dist/types/src/internal/Type/index.d.ts +3 -0
  283. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  284. package/dist/types/src/internal/{schema → Type}/manipulation.d.ts +0 -1
  285. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  286. package/dist/types/src/internal/Type/type-schema.d.ts +52 -0
  287. package/dist/types/src/internal/Type/type-schema.d.ts.map +1 -0
  288. package/dist/types/src/internal/common/api/index.d.ts +11 -0
  289. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  290. package/dist/types/src/internal/common/api/meta.d.ts +45 -0
  291. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  292. package/dist/types/src/internal/common/index.d.ts +4 -0
  293. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  294. package/dist/types/src/internal/common/proxy/change-context.d.ts +55 -0
  295. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  296. package/dist/types/src/internal/common/proxy/change.test.d.ts +2 -0
  297. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  298. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts +5 -0
  299. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  300. package/dist/types/src/internal/common/proxy/errors.d.ts +19 -0
  301. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  302. package/dist/types/src/internal/common/proxy/event-batch.d.ts +10 -0
  303. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  304. package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
  305. package/dist/types/src/internal/common/proxy/index.d.ts +14 -0
  306. package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
  307. package/dist/types/src/internal/common/proxy/json-serializer.d.ts +6 -0
  308. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
  309. package/dist/types/src/internal/common/proxy/make-object.d.ts +20 -0
  310. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
  311. package/dist/types/src/internal/common/proxy/ownership.d.ts +57 -0
  312. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
  313. package/dist/types/src/internal/common/proxy/proxy-types.d.ts +18 -0
  314. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
  315. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts +47 -0
  316. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
  317. package/dist/types/src/internal/common/proxy/reactive-array.d.ts +8 -0
  318. package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
  319. package/dist/types/src/internal/common/proxy/reactive.d.ts +39 -0
  320. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -0
  321. package/dist/types/src/internal/common/proxy/reactive.test.d.ts +2 -0
  322. package/dist/types/src/internal/common/proxy/reactive.test.d.ts.map +1 -0
  323. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  324. package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
  325. package/dist/types/src/internal/common/proxy/symbols.d.ts +3 -0
  326. package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
  327. package/dist/types/src/internal/common/proxy/typed-handler.d.ts +64 -0
  328. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
  329. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  330. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  331. package/dist/types/src/internal/common/types/base.d.ts +27 -0
  332. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  333. package/dist/types/src/internal/common/types/entity.d.ts +94 -0
  334. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  335. package/dist/types/src/internal/common/types/index.d.ts +7 -0
  336. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  337. package/dist/types/src/internal/common/types/meta.d.ts +54 -0
  338. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  339. package/dist/types/src/internal/common/types/model-symbols.d.ts +65 -0
  340. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  341. package/dist/types/src/internal/common/types/typename.d.ts +28 -0
  342. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  343. package/dist/types/src/internal/common/types/version.d.ts +15 -0
  344. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  345. package/dist/types/src/internal/common/types/well-known-types.d.ts +11 -0
  346. package/dist/types/src/internal/common/types/well-known-types.d.ts.map +1 -0
  347. package/dist/types/src/internal/index.d.ts +10 -14
  348. package/dist/types/src/internal/index.d.ts.map +1 -1
  349. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  350. package/dist/types/src/testing/index.d.ts +4 -3
  351. package/dist/types/src/testing/index.d.ts.map +1 -1
  352. package/dist/types/src/testing/registry.d.ts +9 -0
  353. package/dist/types/src/testing/registry.d.ts.map +1 -0
  354. package/dist/types/src/testing/test-data.d.ts +18 -0
  355. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  356. package/dist/types/src/testing/test-schema.d.ts +298 -0
  357. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  358. package/dist/types/src/testing/util.d.ts +23 -0
  359. package/dist/types/src/testing/util.d.ts.map +1 -0
  360. package/dist/types/tsconfig.tsbuildinfo +1 -1
  361. package/package.json +119 -66
  362. package/src/Annotation.test.ts +439 -0
  363. package/src/Annotation.ts +202 -0
  364. package/src/Collection.ts +33 -0
  365. package/src/Database.ts +345 -0
  366. package/src/Dataset.ts +34 -0
  367. package/src/Entity.test.ts +132 -0
  368. package/src/Entity.ts +345 -0
  369. package/src/Err.ts +40 -0
  370. package/src/Feed.ts +352 -0
  371. package/src/Filter.test.ts +90 -0
  372. package/src/Filter.ts +484 -0
  373. package/src/Format.ts +5 -0
  374. package/src/Hypergraph.ts +84 -0
  375. package/src/Json.test.ts +175 -0
  376. package/src/Json.ts +103 -0
  377. package/src/JsonSchema.ts +26 -0
  378. package/src/Key.ts +4 -1
  379. package/src/Migration.ts +114 -0
  380. package/src/Obj.test.ts +641 -0
  381. package/src/Obj.ts +778 -281
  382. package/src/Order.ts +68 -0
  383. package/src/Query.test.ts +835 -0
  384. package/src/Query.ts +634 -0
  385. package/src/QueryResult.ts +132 -0
  386. package/src/Ref.ts +98 -10
  387. package/src/Registry.ts +155 -0
  388. package/src/Relation.test.ts +88 -0
  389. package/src/Relation.ts +503 -67
  390. package/src/Scope.ts +50 -0
  391. package/src/Tag.md +88 -0
  392. package/src/Tag.ts +53 -8
  393. package/src/Type.test.ts +257 -0
  394. package/src/Type.ts +643 -151
  395. package/src/View.ts +98 -0
  396. package/src/exemplars.test.ts +21 -0
  397. package/src/hierarchy.test.ts +33 -0
  398. package/src/index.ts +22 -6
  399. package/src/internal/Annotation/annotations.test.ts +165 -0
  400. package/src/internal/Annotation/annotations.ts +609 -0
  401. package/src/internal/Annotation/dictionary.ts +47 -0
  402. package/src/internal/Annotation/entity-dictionary.ts +74 -0
  403. package/src/internal/Annotation/index.ts +9 -0
  404. package/src/internal/Annotation/sorting.ts +51 -0
  405. package/src/internal/Annotation/util.ts +94 -0
  406. package/src/internal/Entity/api.ts +77 -0
  407. package/src/internal/Entity/entity.ts +277 -0
  408. package/src/internal/Entity/guard.ts +26 -0
  409. package/src/internal/Entity/index.ts +13 -0
  410. package/src/internal/Entity/model.ts +119 -0
  411. package/src/internal/Entity/object.ts +73 -0
  412. package/src/internal/Entity/relation.ts +188 -0
  413. package/src/internal/Entity/type-kind.ts +75 -0
  414. package/src/internal/Entity/type-uri.ts +92 -0
  415. package/src/internal/Entity/util.ts +33 -0
  416. package/src/internal/Entity/version.ts +96 -0
  417. package/src/internal/{formats → Format}/date.test.ts +1 -2
  418. package/src/internal/{formats → Format}/date.ts +5 -9
  419. package/src/internal/{formats → Format}/format.test.ts +27 -7
  420. package/src/internal/{formats → Format}/format.ts +8 -6
  421. package/src/internal/{formats → Format}/index.ts +2 -3
  422. package/src/internal/{formats → Format}/number.ts +5 -5
  423. package/src/internal/{formats → Format}/object.ts +23 -6
  424. package/src/internal/{formats → Format}/select.ts +6 -4
  425. package/src/internal/{formats → Format}/string.ts +14 -9
  426. package/src/internal/{formats → Format}/types.ts +54 -43
  427. package/src/internal/{json → JsonSchema}/annotations.ts +3 -3
  428. package/src/internal/{json-schema → JsonSchema}/index.ts +2 -0
  429. package/src/internal/{json-schema → JsonSchema}/json-schema-normalize.ts +4 -2
  430. package/src/internal/{json-schema → JsonSchema}/json-schema-type.ts +39 -39
  431. package/src/internal/{json → JsonSchema}/json-schema.test.ts +119 -182
  432. package/src/internal/{json → JsonSchema}/json-schema.ts +70 -42
  433. package/src/internal/Obj/atoms.ts +244 -0
  434. package/src/internal/Obj/clone.ts +53 -0
  435. package/src/internal/{object → Obj}/common.ts +3 -4
  436. package/src/internal/Obj/create-object.test.ts +116 -0
  437. package/src/internal/Obj/create-object.ts +140 -0
  438. package/src/internal/Obj/deleted.ts +19 -0
  439. package/src/internal/Obj/index.ts +14 -0
  440. package/src/internal/{object → Obj}/inspect.ts +7 -7
  441. package/src/internal/Obj/json-serializer.test.ts +199 -0
  442. package/src/internal/Obj/json-serializer.ts +278 -0
  443. package/src/internal/{object → Obj}/schema-validator.test.ts +3 -7
  444. package/src/internal/Obj/schema-validator.ts +6 -0
  445. package/src/internal/Obj/set-value.test.ts +258 -0
  446. package/src/internal/Obj/set-value.ts +158 -0
  447. package/src/internal/Obj/snapshot.ts +114 -0
  448. package/src/internal/Obj/typed-object.test.ts +32 -0
  449. package/src/internal/Obj/typed-object.ts +30 -0
  450. package/src/internal/{json → Query}/index.ts +1 -1
  451. package/src/internal/Query/pretty.ts +162 -0
  452. package/src/internal/Ref/atoms.ts +20 -0
  453. package/src/internal/{ref → Ref}/ref-array.ts +6 -7
  454. package/src/internal/Ref/ref.test.ts +91 -0
  455. package/src/internal/{ref → Ref}/ref.ts +230 -101
  456. package/src/internal/Ref/utils.ts +45 -0
  457. package/src/internal/{projection → Type}/compose.test.ts +9 -9
  458. package/src/internal/{projection → Type}/compose.ts +14 -9
  459. package/src/internal/Type/index.ts +6 -0
  460. package/src/internal/{schema → Type}/manipulation.ts +0 -25
  461. package/src/internal/Type/type-schema.ts +60 -0
  462. package/src/internal/common/README.md +102 -0
  463. package/src/internal/common/api/index.ts +15 -0
  464. package/src/internal/common/api/meta.ts +90 -0
  465. package/src/internal/{testing → common}/index.ts +2 -1
  466. package/src/internal/common/proxy/change-context.ts +138 -0
  467. package/src/internal/common/proxy/change.test.ts +527 -0
  468. package/src/internal/common/proxy/define-hidden-property.ts +14 -0
  469. package/src/internal/common/proxy/errors.ts +42 -0
  470. package/src/internal/common/proxy/event-batch.ts +44 -0
  471. package/src/internal/common/proxy/handler.test.ts +121 -0
  472. package/src/internal/common/proxy/index.ts +17 -0
  473. package/src/internal/common/proxy/json-serializer.ts +101 -0
  474. package/src/internal/common/proxy/make-object.ts +129 -0
  475. package/src/internal/common/proxy/ownership.ts +252 -0
  476. package/src/internal/common/proxy/proxy-types.ts +23 -0
  477. package/src/internal/common/proxy/proxy-utils.ts +150 -0
  478. package/src/internal/common/proxy/reactive-array.ts +71 -0
  479. package/src/internal/common/proxy/reactive.test.ts +54 -0
  480. package/src/internal/common/proxy/reactive.ts +77 -0
  481. package/src/internal/{object → common/proxy}/schema-validator.ts +6 -3
  482. package/src/internal/common/proxy/schema.test.ts +107 -0
  483. package/src/internal/common/proxy/symbols.ts +7 -0
  484. package/src/internal/common/proxy/typed-handler.test.ts +314 -0
  485. package/src/internal/common/proxy/typed-handler.ts +509 -0
  486. package/src/internal/common/proxy/typed-object.test.ts +103 -0
  487. package/src/internal/common/types/base.ts +43 -0
  488. package/src/internal/common/types/entity.ts +133 -0
  489. package/src/internal/common/types/index.ts +15 -0
  490. package/src/internal/common/types/meta.ts +109 -0
  491. package/src/internal/common/types/model-symbols.ts +89 -0
  492. package/src/internal/common/types/typename.ts +91 -0
  493. package/src/internal/common/types/version.ts +19 -0
  494. package/src/internal/common/types/well-known-types.ts +15 -0
  495. package/src/internal/index.ts +14 -17
  496. package/src/testing/api.test.ts +131 -0
  497. package/src/testing/index.ts +4 -3
  498. package/src/testing/registry.ts +44 -0
  499. package/src/testing/test-data.ts +189 -0
  500. package/src/testing/test-schema.ts +204 -0
  501. package/src/testing/util.ts +88 -0
  502. package/dist/lib/browser/chunk-BIDAASFK.mjs +0 -3727
  503. package/dist/lib/browser/chunk-BIDAASFK.mjs.map +0 -7
  504. package/dist/lib/browser/chunk-ZDLCWGEW.mjs +0 -410
  505. package/dist/lib/browser/chunk-ZDLCWGEW.mjs.map +0 -7
  506. package/dist/lib/browser/chunk-ZFRJKT4A.mjs +0 -585
  507. package/dist/lib/browser/chunk-ZFRJKT4A.mjs.map +0 -7
  508. package/dist/lib/browser/index.mjs +0 -35
  509. package/dist/lib/browser/internal/index.mjs +0 -336
  510. package/dist/lib/browser/meta.json +0 -1
  511. package/dist/lib/browser/query/index.mjs +0 -13
  512. package/dist/lib/browser/testing/index.mjs +0 -267
  513. package/dist/lib/browser/testing/index.mjs.map +0 -7
  514. package/dist/lib/node-esm/chunk-3SVRRCUU.mjs +0 -3727
  515. package/dist/lib/node-esm/chunk-3SVRRCUU.mjs.map +0 -7
  516. package/dist/lib/node-esm/chunk-CGDHRZWH.mjs +0 -585
  517. package/dist/lib/node-esm/chunk-CGDHRZWH.mjs.map +0 -7
  518. package/dist/lib/node-esm/chunk-HWS6VBQC.mjs +0 -410
  519. package/dist/lib/node-esm/chunk-HWS6VBQC.mjs.map +0 -7
  520. package/dist/lib/node-esm/index.mjs +0 -35
  521. package/dist/lib/node-esm/internal/index.mjs +0 -336
  522. package/dist/lib/node-esm/meta.json +0 -1
  523. package/dist/lib/node-esm/query/index.mjs +0 -13
  524. package/dist/lib/node-esm/testing/index.mjs +0 -267
  525. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  526. package/dist/types/src/errors.d.ts +0 -68
  527. package/dist/types/src/errors.d.ts.map +0 -1
  528. package/dist/types/src/internal/ast/annotation-helper.d.ts +0 -8
  529. package/dist/types/src/internal/ast/annotation-helper.d.ts.map +0 -1
  530. package/dist/types/src/internal/ast/annotations.d.ts +0 -131
  531. package/dist/types/src/internal/ast/annotations.d.ts.map +0 -1
  532. package/dist/types/src/internal/ast/annotations.test.d.ts.map +0 -1
  533. package/dist/types/src/internal/ast/entity-kind.d.ts +0 -10
  534. package/dist/types/src/internal/ast/entity-kind.d.ts.map +0 -1
  535. package/dist/types/src/internal/ast/index.d.ts +0 -5
  536. package/dist/types/src/internal/ast/index.d.ts.map +0 -1
  537. package/dist/types/src/internal/ast/types.d.ts +0 -6
  538. package/dist/types/src/internal/ast/types.d.ts.map +0 -1
  539. package/dist/types/src/internal/formats/date.d.ts.map +0 -1
  540. package/dist/types/src/internal/formats/date.test.d.ts.map +0 -1
  541. package/dist/types/src/internal/formats/format.d.ts.map +0 -1
  542. package/dist/types/src/internal/formats/format.test.d.ts.map +0 -1
  543. package/dist/types/src/internal/formats/index.d.ts.map +0 -1
  544. package/dist/types/src/internal/formats/number.d.ts.map +0 -1
  545. package/dist/types/src/internal/formats/object.d.ts.map +0 -1
  546. package/dist/types/src/internal/formats/select.d.ts.map +0 -1
  547. package/dist/types/src/internal/formats/string.d.ts.map +0 -1
  548. package/dist/types/src/internal/formats/types.d.ts.map +0 -1
  549. package/dist/types/src/internal/json/annotations.d.ts.map +0 -1
  550. package/dist/types/src/internal/json/effect-schema.test.d.ts.map +0 -1
  551. package/dist/types/src/internal/json/index.d.ts +0 -2
  552. package/dist/types/src/internal/json/index.d.ts.map +0 -1
  553. package/dist/types/src/internal/json/json-schema.d.ts.map +0 -1
  554. package/dist/types/src/internal/json/json-schema.test.d.ts.map +0 -1
  555. package/dist/types/src/internal/json-schema/index.d.ts +0 -3
  556. package/dist/types/src/internal/json-schema/index.d.ts.map +0 -1
  557. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +0 -1
  558. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +0 -1
  559. package/dist/types/src/internal/object/accessors.d.ts +0 -37
  560. package/dist/types/src/internal/object/accessors.d.ts.map +0 -1
  561. package/dist/types/src/internal/object/common.d.ts.map +0 -1
  562. package/dist/types/src/internal/object/create.d.ts.map +0 -1
  563. package/dist/types/src/internal/object/create.test.d.ts +0 -2
  564. package/dist/types/src/internal/object/create.test.d.ts.map +0 -1
  565. package/dist/types/src/internal/object/deleted.d.ts +0 -6
  566. package/dist/types/src/internal/object/deleted.d.ts.map +0 -1
  567. package/dist/types/src/internal/object/entity.d.ts +0 -33
  568. package/dist/types/src/internal/object/entity.d.ts.map +0 -1
  569. package/dist/types/src/internal/object/expando.d.ts +0 -14
  570. package/dist/types/src/internal/object/expando.d.ts.map +0 -1
  571. package/dist/types/src/internal/object/ids.d.ts +0 -6
  572. package/dist/types/src/internal/object/ids.d.ts.map +0 -1
  573. package/dist/types/src/internal/object/index.d.ts +0 -16
  574. package/dist/types/src/internal/object/index.d.ts.map +0 -1
  575. package/dist/types/src/internal/object/inspect.d.ts.map +0 -1
  576. package/dist/types/src/internal/object/json-serializer.d.ts +0 -32
  577. package/dist/types/src/internal/object/json-serializer.d.ts.map +0 -1
  578. package/dist/types/src/internal/object/json-serializer.test.d.ts.map +0 -1
  579. package/dist/types/src/internal/object/meta.d.ts +0 -31
  580. package/dist/types/src/internal/object/meta.d.ts.map +0 -1
  581. package/dist/types/src/internal/object/model.d.ts +0 -117
  582. package/dist/types/src/internal/object/model.d.ts.map +0 -1
  583. package/dist/types/src/internal/object/relation.d.ts +0 -17
  584. package/dist/types/src/internal/object/relation.d.ts.map +0 -1
  585. package/dist/types/src/internal/object/schema-validator.d.ts.map +0 -1
  586. package/dist/types/src/internal/object/schema-validator.test.d.ts.map +0 -1
  587. package/dist/types/src/internal/object/typed-object.d.ts +0 -31
  588. package/dist/types/src/internal/object/typed-object.d.ts.map +0 -1
  589. package/dist/types/src/internal/object/typed-object.test.d.ts.map +0 -1
  590. package/dist/types/src/internal/object/typename.d.ts +0 -15
  591. package/dist/types/src/internal/object/typename.d.ts.map +0 -1
  592. package/dist/types/src/internal/object/version.d.ts +0 -14
  593. package/dist/types/src/internal/object/version.d.ts.map +0 -1
  594. package/dist/types/src/internal/projection/compose.d.ts +0 -6
  595. package/dist/types/src/internal/projection/compose.d.ts.map +0 -1
  596. package/dist/types/src/internal/projection/compose.test.d.ts.map +0 -1
  597. package/dist/types/src/internal/projection/index.d.ts +0 -2
  598. package/dist/types/src/internal/projection/index.d.ts.map +0 -1
  599. package/dist/types/src/internal/proxy/handler.test.d.ts.map +0 -1
  600. package/dist/types/src/internal/proxy/reactive-object.d.ts +0 -15
  601. package/dist/types/src/internal/proxy/reactive-object.d.ts.map +0 -1
  602. package/dist/types/src/internal/proxy/schema.test.d.ts.map +0 -1
  603. package/dist/types/src/internal/proxy/typed-handler.d.ts +0 -44
  604. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +0 -1
  605. package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +0 -1
  606. package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +0 -1
  607. package/dist/types/src/internal/query/index.d.ts +0 -2
  608. package/dist/types/src/internal/query/index.d.ts.map +0 -1
  609. package/dist/types/src/internal/query/query.d.ts +0 -17
  610. package/dist/types/src/internal/query/query.d.ts.map +0 -1
  611. package/dist/types/src/internal/ref/index.d.ts.map +0 -1
  612. package/dist/types/src/internal/ref/ref-array.d.ts +0 -21
  613. package/dist/types/src/internal/ref/ref-array.d.ts.map +0 -1
  614. package/dist/types/src/internal/ref/ref.d.ts.map +0 -1
  615. package/dist/types/src/internal/ref/ref.test.d.ts.map +0 -1
  616. package/dist/types/src/internal/schema/echo-schema.d.ts +0 -168
  617. package/dist/types/src/internal/schema/echo-schema.d.ts.map +0 -1
  618. package/dist/types/src/internal/schema/index.d.ts +0 -7
  619. package/dist/types/src/internal/schema/index.d.ts.map +0 -1
  620. package/dist/types/src/internal/schema/manipulation.d.ts.map +0 -1
  621. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts +0 -18
  622. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts.map +0 -1
  623. package/dist/types/src/internal/schema/snapshot.d.ts +0 -6
  624. package/dist/types/src/internal/schema/snapshot.d.ts.map +0 -1
  625. package/dist/types/src/internal/schema/stored-schema.d.ts +0 -13
  626. package/dist/types/src/internal/schema/stored-schema.d.ts.map +0 -1
  627. package/dist/types/src/internal/testing/index.d.ts +0 -3
  628. package/dist/types/src/internal/testing/index.d.ts.map +0 -1
  629. package/dist/types/src/internal/testing/types.d.ts +0 -381
  630. package/dist/types/src/internal/testing/types.d.ts.map +0 -1
  631. package/dist/types/src/internal/testing/utils.d.ts +0 -10
  632. package/dist/types/src/internal/testing/utils.d.ts.map +0 -1
  633. package/dist/types/src/internal/types/index.d.ts +0 -3
  634. package/dist/types/src/internal/types/index.d.ts.map +0 -1
  635. package/dist/types/src/internal/types/types.d.ts +0 -79
  636. package/dist/types/src/internal/types/types.d.ts.map +0 -1
  637. package/dist/types/src/internal/types/types.test.d.ts +0 -2
  638. package/dist/types/src/internal/types/types.test.d.ts.map +0 -1
  639. package/dist/types/src/internal/types/util.d.ts +0 -5
  640. package/dist/types/src/internal/types/util.d.ts.map +0 -1
  641. package/dist/types/src/query/index.d.ts +0 -2
  642. package/dist/types/src/query/index.d.ts.map +0 -1
  643. package/dist/types/src/query/query.d.ts +0 -248
  644. package/dist/types/src/query/query.d.ts.map +0 -1
  645. package/dist/types/src/query/query.test.d.ts +0 -2
  646. package/dist/types/src/query/query.test.d.ts.map +0 -1
  647. package/dist/types/src/testing/echo-schema.d.ts +0 -7
  648. package/dist/types/src/testing/echo-schema.d.ts.map +0 -1
  649. package/dist/types/src/testing/types.d.ts +0 -228
  650. package/dist/types/src/testing/types.d.ts.map +0 -1
  651. package/src/errors.ts +0 -18
  652. package/src/internal/ast/annotation-helper.ts +0 -22
  653. package/src/internal/ast/annotations.test.ts +0 -98
  654. package/src/internal/ast/annotations.ts +0 -226
  655. package/src/internal/ast/entity-kind.ts +0 -15
  656. package/src/internal/ast/index.ts +0 -8
  657. package/src/internal/ast/types.ts +0 -17
  658. package/src/internal/object/accessors.ts +0 -153
  659. package/src/internal/object/create.test.ts +0 -118
  660. package/src/internal/object/create.ts +0 -96
  661. package/src/internal/object/deleted.ts +0 -19
  662. package/src/internal/object/entity.ts +0 -248
  663. package/src/internal/object/expando.ts +0 -21
  664. package/src/internal/object/ids.ts +0 -12
  665. package/src/internal/object/index.ts +0 -19
  666. package/src/internal/object/json-serializer.test.ts +0 -99
  667. package/src/internal/object/json-serializer.ts +0 -225
  668. package/src/internal/object/meta.ts +0 -61
  669. package/src/internal/object/model.ts +0 -170
  670. package/src/internal/object/relation.ts +0 -24
  671. package/src/internal/object/typed-object.test.ts +0 -34
  672. package/src/internal/object/typed-object.ts +0 -88
  673. package/src/internal/object/typename.ts +0 -61
  674. package/src/internal/object/version.ts +0 -22
  675. package/src/internal/projection/index.ts +0 -5
  676. package/src/internal/proxy/handler.test.ts +0 -163
  677. package/src/internal/proxy/reactive-object.ts +0 -108
  678. package/src/internal/proxy/schema.test.ts +0 -136
  679. package/src/internal/proxy/typed-handler.test.ts +0 -102
  680. package/src/internal/proxy/typed-handler.ts +0 -228
  681. package/src/internal/proxy/typed-object.test.ts +0 -100
  682. package/src/internal/query/index.ts +0 -5
  683. package/src/internal/query/query.ts +0 -23
  684. package/src/internal/ref/ref.test.ts +0 -100
  685. package/src/internal/schema/echo-schema.ts +0 -383
  686. package/src/internal/schema/index.ts +0 -10
  687. package/src/internal/schema/runtime-schema-registry.ts +0 -78
  688. package/src/internal/schema/snapshot.ts +0 -25
  689. package/src/internal/schema/stored-schema.ts +0 -26
  690. package/src/internal/testing/types.ts +0 -144
  691. package/src/internal/testing/utils.ts +0 -54
  692. package/src/internal/types/index.ts +0 -6
  693. package/src/internal/types/types.test.ts +0 -48
  694. package/src/internal/types/types.ts +0 -176
  695. package/src/internal/types/util.ts +0 -9
  696. package/src/query/index.ts +0 -6
  697. package/src/query/query.test.ts +0 -401
  698. package/src/query/query.ts +0 -789
  699. package/src/test/api.test.ts +0 -180
  700. package/src/testing/echo-schema.ts +0 -39
  701. package/src/testing/types.ts +0 -108
  702. /package/dist/lib/{browser/index.mjs.map → neutral/Annotation.mjs.map} +0 -0
  703. /package/dist/lib/{browser/internal/index.mjs.map → neutral/Database.mjs.map} +0 -0
  704. /package/dist/lib/{browser/query/index.mjs.map → neutral/Entity.mjs.map} +0 -0
  705. /package/dist/lib/{node-esm/index.mjs.map → neutral/Err.mjs.map} +0 -0
  706. /package/dist/lib/{node-esm/internal/index.mjs.map → neutral/Feed.mjs.map} +0 -0
  707. /package/dist/lib/{node-esm/query/index.mjs.map → neutral/Filter.mjs.map} +0 -0
  708. /package/dist/types/src/internal/{ast → Annotation}/annotations.test.d.ts +0 -0
  709. /package/dist/types/src/internal/{formats → Format}/date.d.ts +0 -0
  710. /package/dist/types/src/internal/{formats → Format}/date.test.d.ts +0 -0
  711. /package/dist/types/src/internal/{formats → Format}/format.test.d.ts +0 -0
  712. /package/dist/types/src/internal/{formats → Format}/number.d.ts +0 -0
  713. /package/dist/types/src/internal/{json → JsonSchema}/effect-schema.test.d.ts +0 -0
  714. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-normalize.d.ts +0 -0
  715. /package/dist/types/src/internal/{json → JsonSchema}/json-schema.test.d.ts +0 -0
  716. /package/dist/types/src/internal/{object → Obj}/common.d.ts +0 -0
  717. /package/dist/types/src/internal/{object → Obj}/inspect.d.ts +0 -0
  718. /package/dist/types/src/internal/{object → Obj}/json-serializer.test.d.ts +0 -0
  719. /package/dist/types/src/internal/{object → Obj}/schema-validator.test.d.ts +0 -0
  720. /package/dist/types/src/internal/{object → Obj}/typed-object.test.d.ts +0 -0
  721. /package/dist/types/src/internal/{ref → Ref}/index.d.ts +0 -0
  722. /package/dist/types/src/internal/{ref → Ref}/ref.test.d.ts +0 -0
  723. /package/dist/types/src/internal/{projection → Type}/compose.test.d.ts +0 -0
  724. /package/dist/types/src/internal/{proxy → common/proxy}/handler.test.d.ts +0 -0
  725. /package/dist/types/src/internal/{object → common/proxy}/schema-validator.d.ts +0 -0
  726. /package/dist/types/src/internal/{proxy → common/proxy}/schema.test.d.ts +0 -0
  727. /package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.test.d.ts +0 -0
  728. /package/dist/types/src/internal/{proxy → common/proxy}/typed-object.test.d.ts +0 -0
  729. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
  730. /package/src/internal/{json → JsonSchema}/effect-schema.test.ts +0 -0
  731. /package/src/internal/{ref → Ref}/index.ts +0 -0
@@ -1,152 +1,443 @@
1
- import type * as EffectSchema from 'effect/Schema';
1
+ import * as Schema from 'effect/Schema';
2
+ import type * as Types from 'effect/Types';
2
3
  import { type EncodedReference } from '@dxos/echo-protocol';
3
- import type * as Keys from '@dxos/keys';
4
- import { type ToMutable } from './internal';
5
- import * as EchoSchema from './internal';
4
+ import { DXN, type EntityId, type URI } from '@dxos/keys';
5
+ import type * as Database from './Database';
6
+ import type * as EntityModule from './Entity';
7
+ import * as internal from './internal';
8
+ import * as typeInternal from './internal/Type';
6
9
  import type * as RelationModule from './Relation';
7
- export declare const KindId: unique symbol;
8
- export type KindId = typeof KindId;
9
- export declare const Kind: typeof EchoSchema.EntityKind;
10
10
  /**
11
- * Assigns a kind to an Object or Relation instance.
11
+ * Structural base shared by the three sibling type-entity interfaces
12
+ * ({@link Obj}, {@link Relation}, {@link Type}). NOT exported — callers
13
+ * should constrain on {@link AnyEntity} when they want "any of the three"
14
+ * and on the specific kind interface otherwise.
12
15
  */
13
- export interface OfKind<Kind extends EchoSchema.EntityKind> {
14
- readonly id: Keys.ObjectId;
15
- readonly [KindId]: Kind;
16
+ interface BaseTypeEntity<A> {
17
+ /**
18
+ * Entity-kind brand of the type-entity value itself — always `EntityKind.Type`.
19
+ * The kind of instance the type *describes* lives on `[SchemaKindId]`
20
+ * (Object / Relation / Type). Lets `Obj.isObject` / `Relation.isRelation`
21
+ * reject type entities by a single `[KindId]` check.
22
+ */
23
+ readonly [internal.KindId]: internal.EntityKind.Type;
24
+ /**
25
+ * Object id. Like all ECHO entities, type entities always carry an id —
26
+ * stamped at construction for in-memory (static) declarations and assigned by
27
+ * the database once persisted. The id does NOT determine the entity's URI:
28
+ * static types resolve to their typename DXN, persisted types to `echo:/<id>`
29
+ * (see `getTypeURIFromSpecifier`).
30
+ */
31
+ readonly id: EntityId;
32
+ readonly name?: string;
33
+ readonly jsonSchema: internal.JsonSchemaType;
34
+ readonly [InstancePhantomId]?: A;
16
35
  }
17
36
  /**
18
- * Base ECHO schema type.
37
+ * TypeScript type for an ECHO object type — a `Type.Type<A>` entity.
38
+ *
39
+ * `T` is the instance type produced by `Obj.make(Foo, props)`. `Fields` is
40
+ * retained as a structural hint (the runtime value still carries `.fields`),
41
+ * but consumers should derive instance/encoded types via `Type.InstanceType`.
42
+ *
43
+ * **Not a `Schema.Schema`.** `Foo.ast` / `Schema.Schema.Type<typeof Foo>` /
44
+ * `Schema.extend(Foo)` no longer typecheck — extract the Effect Schema via
45
+ * `Type.getSchema(Foo)` first, or derive instance types via
46
+ * `Type.InstanceType<typeof Foo>`.
47
+ *
48
+ * @example
49
+ * ```ts
50
+ * const Person = Schema.Struct({
51
+ * name: Schema.String,
52
+ * }).pipe(Type.makeObject(DXN.make('com.example.type.person', '0.1.0')));
53
+ *
54
+ * type Person = Type.InstanceType<typeof Person>;
55
+ * ```
19
56
  */
20
- export type Schema = EchoSchema.EchoSchema;
57
+ export interface Obj<T, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends BaseTypeEntity<T & EntityModule.OfKind<typeof EntityModule.Kind.Object>> {
58
+ /** Schema-kind brand (object). */
59
+ readonly [internal.SchemaKindId]: internal.EntityKind.Object;
60
+ /** Source Effect Schema — used internally by `Type.getSchema(self)`. */
61
+ readonly [internal.StaticTypeSchemaSlot]: Schema.Schema.AnyNoContext;
62
+ /**
63
+ * The fields defined in the original struct schema.
64
+ * Allows accessing field definitions for introspection.
65
+ */
66
+ readonly fields: Fields;
67
+ }
21
68
  /**
22
- * Returns all properties of an object or relation except for the id and kind.
69
+ * Type that represents any ECHO object type a `Type.Type` entity branded
70
+ * with the object entity kind, i.e. what `Type.makeObject(dxn)` produces.
23
71
  */
24
- export type Properties<T = any> = Omit<T, 'id' | KindId | RelationModule.Source | RelationModule.Target>;
25
- interface ObjJsonProps {
26
- id: string;
27
- }
72
+ export type AnyObj = Obj<unknown>;
28
73
  /**
29
- * Return type of the `Obj` schema constructor.
74
+ * Factory function to create an ECHO object type.
75
+ *
76
+ * Returns a `Type.Type` entity — a live, in-memory `TypeSchema` instance,
77
+ * NOT a `Schema.Schema`. Use `Type.InstanceType<typeof Foo>` for the instance
78
+ * type and `Type.getSchema(Foo)` to obtain the underlying Effect Schema.
30
79
  *
31
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
32
- * See Effect's note on interface types.
80
+ * The entity's id defaults to `EntityId.deterministic(typename, version)` so
81
+ * constructing a type never reaches `crypto.getRandomValues()` — required for
82
+ * Cloudflare workerd, which forbids RNG calls in global (module-evaluation)
83
+ * scope. Pass `{ id }` to override (e.g. with `EntityId.random()` from a
84
+ * request handler).
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * const Person = Schema.Struct({
89
+ * name: Schema.String,
90
+ * }).pipe(Type.makeObject(DXN.make('com.example.type.person', '0.1.0')));
91
+ * ```
33
92
  */
34
- export interface obj<Self extends EffectSchema.Schema.Any> extends EchoSchema.TypeMeta, EffectSchema.AnnotableClass<obj<Self>, OfKind<EchoSchema.EntityKind.Object> & ToMutable<EffectSchema.Schema.Type<Self>>, EffectSchema.Simplify<ObjJsonProps & ToMutable<EffectSchema.Schema.Encoded<Self>>>, EffectSchema.Schema.Context<Self>> {
35
- }
93
+ export declare const makeObject: {
94
+ (dxn: DXN.DXN, options?: {
95
+ id?: EntityId;
96
+ }): <Self extends Schema.Schema.Any>(self: Self) => Obj<Schema.Schema.Type<Self>>;
97
+ };
36
98
  /**
37
- * Object schema.
99
+ * ECHO meta-schema entity — stores `{ name?, typename, version, jsonSchema }`.
100
+ * Type-kind sibling of `Type.makeObject(...)` / `Type.makeRelation(...)` outputs.
101
+ * Stored types live under this entity; filter via `Filter.type(Type.Type)`.
38
102
  */
39
- export declare const Obj: {
40
- (opts: EchoSchema.TypeMeta): <Self extends EffectSchema.Schema.Any>(self: Self) => obj<Self>;
103
+ export declare const Type: Type<typeInternal.TypeSchema>;
104
+ /**
105
+ * Common props shared by the type-kind factories. Typename and version are
106
+ * optional — drafts omit typename and default version to {@link DRAFT_VERSION}.
107
+ */
108
+ type MakeTypeProps = {
109
+ jsonSchema: internal.JsonSchemaType;
110
+ typename?: string;
111
+ version?: string;
112
+ name?: string;
113
+ id?: EntityId;
41
114
  };
42
115
  /**
43
- * Object schema type definitions.
116
+ * Construct a new object-kind type entity from raw metadata — for cases where
117
+ * an Effect Schema isn't available (e.g. JSON-Schema arriving over the network
118
+ * or from a UI editor). Parallel to {@link makeObject} but takes pre-built
119
+ * `jsonSchema` instead of piping through an Effect schema.
120
+ *
121
+ * The returned entity is in-memory; persist it with `db.addType(entity)`.
122
+ */
123
+ export declare const makeObjectFromJsonSchema: (props: MakeTypeProps) => Type<typeInternal.TypeSchema>;
124
+ /**
125
+ * Construct a new relation-kind type entity from raw metadata. Parallel to
126
+ * {@link makeRelation} but takes pre-built `jsonSchema` instead of piping
127
+ * through an Effect schema. `source` / `target` accept either a static
128
+ * `Type.Obj` entity or the well-known `Obj.Unknown` schema.
129
+ *
130
+ * The returned entity is in-memory; persist it with `db.addType(entity)`.
44
131
  */
45
- export declare namespace Obj {
132
+ export declare const makeRelationFromJsonSchema: (props: MakeTypeProps & {
133
+ source: AnyObj | internal.UnknownTypeSchema<any, typeof EntityModule.Kind.Object>;
134
+ target: AnyObj | internal.UnknownTypeSchema<any, typeof EntityModule.Kind.Object>;
135
+ }) => Type<typeInternal.TypeSchema>;
136
+ /**
137
+ * TypeScript type for an ECHO relation type — a `Type.Type<A>` entity.
138
+ *
139
+ * `T` is the instance-property type produced by `Relation.make(...)` (excluding
140
+ * source/target endpoints). `Source` and `Target` are the endpoint types.
141
+ *
142
+ * **Not a `Schema.Schema`.** See {@link Obj}'s note.
143
+ */
144
+ export interface Relation<T, Source, Target, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends BaseTypeEntity<RelationModule.Endpoints<Source, Target> & T & EntityModule.OfKind<typeof EntityModule.Kind.Relation>> {
145
+ /** Schema-kind brand (relation). */
146
+ readonly [internal.SchemaKindId]: internal.EntityKind.Relation;
147
+ /** Source Effect Schema — used internally by `Type.getSchema(self)`. */
148
+ readonly [internal.StaticTypeSchemaSlot]: Schema.Schema.AnyNoContext;
46
149
  /**
47
- * Type that represents an arbitrary schema type of an object.
48
- * NOTE: This is not an instance type.
150
+ * The fields defined in the original struct schema.
151
+ * Allows accessing field definitions for introspection.
49
152
  */
50
- type Any = EffectSchema.Schema.AnyNoContext;
51
- }
52
- export interface Expando extends OfKind<EchoSchema.EntityKind.Object> {
53
- [key: string]: any;
54
- }
55
- type ExpandoEncoded = EffectSchema.Simplify<ObjJsonProps & {
56
- [key: string]: any;
57
- }>;
58
- export declare const Expando: EffectSchema.Schema<Expando, ExpandoEncoded, never>;
59
- interface RelationJsonProps {
60
- id: string;
61
- [EchoSchema.ATTR_RELATION_SOURCE]: string;
62
- [EchoSchema.ATTR_RELATION_TARGET]: string;
153
+ readonly fields: Fields;
63
154
  }
64
155
  /**
65
- * Return type of the `Relation` schema constructor.
66
- *
67
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
68
- * See Effect's note on interface types.
156
+ * Type that represents any ECHO relation type a `Type.Type` entity branded
157
+ * with the relation entity kind, i.e. what `Type.makeRelation(...)` produces.
69
158
  */
70
- export interface relation<Self extends EffectSchema.Schema.Any, SourceSchema extends EffectSchema.Schema.Any, TargetSchema extends EffectSchema.Schema.Any> extends EchoSchema.TypeMeta, EffectSchema.AnnotableClass<relation<Self, SourceSchema, TargetSchema>, OfKind<EchoSchema.EntityKind.Relation> & Relation.Endpoints<EffectSchema.Schema.Type<SourceSchema>, EffectSchema.Schema.Type<TargetSchema>> & ToMutable<EffectSchema.Schema.Type<Self>>, EffectSchema.Simplify<RelationJsonProps & ToMutable<EffectSchema.Schema.Encoded<Self>>>, EffectSchema.Schema.Context<Self>> {
71
- }
159
+ export type AnyRelation = Relation<unknown, unknown, unknown>;
72
160
  /**
73
- * Relation schema.
161
+ * Factory function to create an ECHO relation schema.
162
+ * Adds relation metadata annotations to an Effect schema.
163
+ *
164
+ * @example
165
+ * ```ts
166
+ * const WorksFor = Schema.Struct({
167
+ * role: Schema.String,
168
+ * }).pipe(Type.makeRelation({
169
+ * dxn: DXN.make('com.example.type.worksFor', '0.1.0'),
170
+ * source: Person,
171
+ * target: Company,
172
+ * }));
173
+ * ```
74
174
  */
75
- export declare const Relation: {
76
- <Source extends EffectSchema.Schema.AnyNoContext, Target extends EffectSchema.Schema.AnyNoContext>(opts: EchoSchema.EchoRelationOptions<Source, Target>): <Self extends EffectSchema.Schema.Any>(self: Self) => relation<Self, Source, Target>;
175
+ export declare const makeRelation: {
176
+ <SourceInstance, TargetInstance>(opts: {
177
+ dxn: DXN.DXN;
178
+ source: Obj<SourceInstance, any> | internal.UnknownTypeSchema<SourceInstance, typeof EntityModule.Kind.Object>;
179
+ target: Obj<TargetInstance, any> | internal.UnknownTypeSchema<TargetInstance, typeof EntityModule.Kind.Object>;
180
+ /**
181
+ * Override the entity id. Defaults to `EntityId.deterministic(typename, version)`;
182
+ * see `Type.makeObject` for the workerd motivation.
183
+ */
184
+ id?: EntityId;
185
+ }): <Self extends Schema.Schema.Any>(self: Self) => Relation<Schema.Schema.Type<Self>, SourceInstance & EntityModule.OfKind<typeof EntityModule.Kind.Object>, TargetInstance & EntityModule.OfKind<typeof EntityModule.Kind.Object>>;
77
186
  };
78
187
  /**
79
- * Relation schema type definitions.
188
+ * Type that represents any ECHO type-kind entity — a `Type.Type` meta-schema
189
+ * value (static `Type.Type` or a persisted draft from `db.addType(...)`).
190
+ * Mirrors {@link AnyObj} / {@link AnyRelation} for the third sibling kind.
80
191
  */
81
- export declare namespace Relation {
82
- /**
83
- * Type that represents an arbitrary schema type of a relation.
84
- * NOTE: This is not an instance type.
85
- */
86
- type Any = EffectSchema.Schema.AnyNoContext;
87
- /**
88
- * Get relation source type.
89
- */
90
- type Source<A> = A extends Relation.Endpoints<infer S, infer _T> ? S : never;
91
- /**
92
- * Get relation target type.
93
- */
94
- type Target<A> = A extends Relation.Endpoints<infer _S, infer T> ? T : never;
95
- type Endpoints<Source, Target> = {
96
- [RelationModule.Source]: Source;
97
- [RelationModule.Target]: Target;
98
- };
99
- }
192
+ export type AnyType = Type<unknown>;
193
+ /**
194
+ * Any ECHO type-entity one of the three sibling kinds: object-kind, relation-kind,
195
+ * or type-kind (the meta-schema). APIs that want "any ECHO type" use this union;
196
+ * the underlying Effect Schema is retrieved via `Type.getSchema`.
197
+ */
198
+ export type AnyEntity = AnyObj | AnyRelation | AnyType;
199
+ /**
200
+ * Type guard: narrows a `Type.AnyEntity` to an object-kind entity. Checks
201
+ * ENTITIES, not instances use `Obj.isObject` for instances. Raw
202
+ * `Schema.Schema` values (including the branded `Obj.Unknown` companion)
203
+ * are intentionally not accepted; inspect their `TypeAnnotation` directly.
204
+ */
205
+ export declare const isObject: (entity: AnyEntity) => entity is AnyObj;
206
+ /**
207
+ * Type guard: narrows a `Type.AnyEntity` to a relation-kind entity. Checks
208
+ * ENTITIES, not instances — use `Relation.isRelation` for instances.
209
+ */
210
+ export declare const isRelation: (entity: AnyEntity) => entity is AnyRelation;
211
+ /**
212
+ * Type guard: narrows a `Type.AnyEntity` to the type-kind meta-schema
213
+ * (e.g. `Type.Type`). Mirrors {@link isObject} / {@link isRelation}.
214
+ */
215
+ export declare const isTypeKind: (entity: AnyEntity) => entity is Type;
216
+ /**
217
+ * Narrow a `Type.AnyEntity` (e.g. one returned from `schemaRegistry.query(...)`)
218
+ * to `AnyObj`, throwing if it describes a relation or the type-kind
219
+ * meta-schema. Use at call sites that need to pass the value to `Obj.make`,
220
+ * `Filter.type`, or other object-only APIs.
221
+ */
222
+ export declare const assertObject: (entity: AnyEntity) => AnyObj;
223
+ /** Narrow a `Type.AnyEntity` to `AnyRelation`, throwing otherwise. */
224
+ export declare const expectRelation: (entity: AnyEntity) => AnyRelation;
225
+ /** Narrow a `Type.AnyEntity` to the `Type.Type` meta-schema, throwing otherwise. */
226
+ export declare const expectTypeKind: (entity: AnyEntity) => Type;
227
+ /**
228
+ * Type that represents any Ref schema (with unknown target type).
229
+ * This is a schema type, not an instance type.
230
+ */
231
+ export type AnyRef = Schema.Schema<internal.Ref<any>, EncodedReference>;
100
232
  /**
101
- * Return type of the `Ref` schema constructor.
233
+ * Returns the URI identifying a type entity. Always defined.
234
+ *
235
+ * - Static `Type.Obj` / `Type.Relation` → typename DXN (e.g. `dxn:com.example.type.person:0.1.0`).
236
+ * - Persisted `Type.Type` instance (has `id`) → local `EID` (`echo:/<objectId>`).
237
+ * - In-memory `Type.Type` draft (has `id`, no typename) → local `EID`.
102
238
  *
103
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
104
- * See Effect's note on interface types.
239
+ * Only accepts `Type.AnyEntity` entities. Raw `Schema.Schema` values and the
240
+ * branded `Obj.Unknown` / `Relation.Unknown` schemas are intentionally not
241
+ * supported — use `internal.getSchemaURI` or the schema's typename annotation
242
+ * directly when working at the schema level.
105
243
  */
106
- export interface ref<TargetSchema extends EffectSchema.Schema.Any> extends EchoSchema.Ref$<EffectSchema.Schema.Type<TargetSchema>> {
107
- }
244
+ export declare const getURI: (input: AnyEntity) => URI.URI;
108
245
  /**
109
- * Ref schema.
246
+ * @returns The typename. Example: `com.example.type.person`.
247
+ *
248
+ * Persisted `Type.Type` entities carry typename in `EntityMeta.key` (the
249
+ * canonical registry-provenance field); unnamed drafts fall back to the
250
+ * entity's object id so the helper always returns a string. Any `dxn:` or
251
+ * `echo:/` prefix is stripped — typename is a bare identifier, not a URI.
110
252
  */
111
- export declare const Ref: <S extends Obj.Any>(schema: S) => ref<S>;
112
- export interface Ref<T> extends EffectSchema.SchemaClass<EchoSchema.Ref<T>, EncodedReference> {
113
- }
114
- export declare namespace Ref {
115
- /**
116
- * Type that represents an arbitrary schema type of a reference.
117
- * NOTE: This is not an instance type.
118
- */
119
- type Any = EffectSchema.Schema<EchoSchema.Ref<any>, EncodedReference>;
253
+ export declare const getTypename: (input: AnyEntity) => string;
254
+ /**
255
+ * Gets the version.
256
+ * @example 0.1.0
257
+ * @example 0.1.0-<heads> (in-database, versioned by automerge heads)
258
+ *
259
+ * The registry-provenance semver lives in `EntityMeta.version`; unversioned
260
+ * drafts default to {@link DRAFT_VERSION} (`'0.0.0'`). In-database entities are
261
+ * additionally versioned by their automerge heads, which are exposed as the
262
+ * semver pre-release tag (`<semver>-<heads>`). In-memory declarations have no
263
+ * heads and surface the bare semver. Read the registry semver alone via
264
+ * `Type.getMeta(input).version`.
265
+ */
266
+ export declare const getVersion: (input: AnyEntity) => string;
267
+ /**
268
+ * Type predicate: true iff the value is any type-kind ECHO entity — a static
269
+ * `Type.Obj` / `Type.Relation` produced by `Type.makeObject` / `Type.makeRelation`, a
270
+ * static meta `Type.Type`, or a persisted `Type.Type` returned by the database.
271
+ *
272
+ * All three branches stamp `[KindId] = Type`, so this is a single brand check.
273
+ * Use {@link isObject} / {@link isRelation} / {@link isTypeKind}
274
+ * when you need to discriminate further; use {@link getDatabase} when you mean
275
+ * "is this a db-attached type" (vs. an in-memory declaration).
276
+ */
277
+ export declare const isType: (value: unknown) => value is AnyEntity;
278
+ /**
279
+ * Get the database the type entity belongs to, or `undefined` if it is an
280
+ * in-memory declaration (`Type.makeObject` / `Type.makeRelation` result) not
281
+ * yet attached to a database. Mirrors `Obj.getDatabase` / `Relation.getDatabase`.
282
+ *
283
+ * Database attachment is the canonical discriminator between in-memory and
284
+ * in-database type entities — both are live reactive `TypeSchema` instances and
285
+ * are otherwise indistinguishable.
286
+ */
287
+ export declare const getDatabase: (input: AnyEntity) => Database.Database | undefined;
288
+ /**
289
+ * Mutable meta type returned by `Type.getMeta` inside a `Type.update` callback.
290
+ * Mirrors `Obj.Meta` / `Relation.Meta` — `Type.Type` is an Entity like its
291
+ * siblings, so its meta is the same `EntityMeta` record:
292
+ * `{ keys, tags?, key?, version? }`.
293
+ *
294
+ * `key` / `version` here are the canonical registry-provenance pair
295
+ * (typename + semver) on persisted Type.Type entities; they are absent on
296
+ * unnamed drafts. Use {@link getTypename} / {@link getVersion} when you want
297
+ * a non-`undefined` value with id / {@link DRAFT_VERSION} fallbacks.
298
+ */
299
+ export type Meta = internal.Meta;
300
+ /**
301
+ * Deeply read-only version of {@link Meta}.
302
+ * Prevents mutation at all nesting levels (e.g., `meta.keys.push()` is a TS error).
303
+ */
304
+ export type ReadonlyMeta = internal.ReadonlyMeta;
305
+ /**
306
+ * Returns the entity's `EntityMeta`. Same semantics as `Obj.getMeta` /
307
+ * `Relation.getMeta` — `Type.Type` is an Entity and carries the canonical
308
+ * `EntityMeta` directly. Returns mutable meta when passed a mutable type
309
+ * (inside a `Type.update` callback), read-only meta otherwise.
310
+ *
311
+ * For persisted Type entities, `meta.key` holds the typename and
312
+ * `meta.version` holds the semver. Use {@link getTypename} / {@link getVersion}
313
+ * if you want the helpers' id / {@link DRAFT_VERSION} fallbacks for drafts.
314
+ *
315
+ * Both persisted and in-memory type entities (`Type.makeObject` /
316
+ * `Type.makeRelation` results) carry their `EntityMeta` via `[MetaId]`, so the
317
+ * lookup is uniform.
318
+ */
319
+ export declare function getMeta(entity: internal.Mutable<AnyEntity>): Meta;
320
+ export declare function getMeta(entity: Mutable): Meta;
321
+ export declare function getMeta(entity: AnyEntity): ReadonlyMeta;
322
+ /**
323
+ * Get the display label of a type entity.
324
+ * Reads the field(s) nominated by the type's {@link LabelAnnotation} (e.g. `name` on persisted schemas).
325
+ * Returns `undefined` if no label field is populated.
326
+ */
327
+ export declare const getLabel: (entity: AnyEntity, options?: internal.GetLabelOptions) => string | undefined;
328
+ /**
329
+ * String key used to phantom-carry the instance type produced by a `Type.Type`.
330
+ * Used by `Type.InstanceType<typeof Foo>` to recover the schema instance type
331
+ * since `Type.makeObject(dxn)` does not return a `Schema.Schema`.
332
+ *
333
+ * Re-exported from the internal types layer so both `Type.ts` and internal
334
+ * helpers (`makeObject`, `createObject`) reference the same phantom key.
335
+ */
336
+ export declare const InstancePhantomId: "~@dxos/echo/Type.Instance";
337
+ export type InstancePhantomId = internal.InstancePhantomId;
338
+ /**
339
+ * Sibling of {@link Obj} / {@link Relation} for the third ECHO entity kind:
340
+ * **type-kind** entities (meta-schemas). The singleton {@link Type} const is
341
+ * the canonical example — it describes stored type definitions themselves.
342
+ *
343
+ * Not a `Schema.Schema`. Use `Type.getSchema(value)` to obtain the underlying
344
+ * Effect Schema and `Type.update(value, draft => ...)` to mutate.
345
+ *
346
+ * `A` is the instance-type phantom — what `Obj.make(value, ...)` would produce.
347
+ * Merged with the `Type` const value via TypeScript declaration merging.
348
+ */
349
+ export interface Type<A = unknown> extends BaseTypeEntity<A & EntityModule.OfKind<typeof EntityModule.Kind.Type>> {
350
+ /** Schema-kind brand (type — the meta-schema kind). */
351
+ readonly [internal.SchemaKindId]: internal.EntityKind.Type;
352
+ /** Source Effect Schema — used internally by `Type.getSchema(self)`. */
353
+ readonly [internal.StaticTypeSchemaSlot]: Schema.Schema.AnyNoContext;
120
354
  }
121
355
  /**
122
- * Gets the full DXN of the schema.
123
- * Will include the version if it's a `type` DXN.
124
- * @example "dxn:example.com/type/Person:0.1.0"
125
- * @example "dxn:echo:SSSSSSSSSS:XXXXXXXXXXXXX"
356
+ * Instance type produced by a Type entity.
357
+ *
358
+ * Accepts ONLY {@link AnyEntity} inputs — `Type.Obj`, `Type.Relation`, or
359
+ * `Type.Type`. Raw Effect `Schema.Schema` values are rejected: for those, use
360
+ * `Schema.Schema.Type<typeof Foo>` directly. This separation keeps the type
361
+ * system honest about which values represent ECHO entities versus plain
362
+ * Effect schemas.
363
+ *
364
+ * Dispatches on the entity kind:
365
+ * - `Relation<Props, S, T>` → `Endpoints<S,T> & Props & OfKind<Relation>`
366
+ * - `Obj<A>` → `A & OfKind<Object>`
367
+ * - `Type<A>` → `A & OfKind<Type>`
368
+ */
369
+ export type InstanceType<T extends AnyEntity> = T extends Relation<infer Props, infer Source, infer Target, any> ? RelationModule.Endpoints<Source, Target> & Props & EntityModule.OfKind<typeof EntityModule.Kind.Relation> : T extends Obj<infer A, any> ? A & EntityModule.OfKind<typeof EntityModule.Kind.Object> : T extends Type<infer A> ? A & EntityModule.OfKind<typeof EntityModule.Kind.Type> : never;
370
+ /**
371
+ * Returns the Effect Schema for a type entity.
372
+ *
373
+ * - For static `Type.Obj` / `Type.Relation` entities the source Effect Schema is
374
+ * read from a hidden slot — these overloads preserve the instance type.
375
+ * - For `Type.Type` entities (the meta-schema kind) the schema is rebuilt from
376
+ * `type.jsonSchema`; the instance type isn't statically knowable so the wide
377
+ * `AnyEntity` overload widens to `Schema.Schema.AnyNoContext`.
378
+ *
379
+ * Always call this when you need to interact with the Effect Schema API
380
+ * (e.g. before passing to Effect.Schema functions). For ECHO-side APIs
381
+ * (`Obj.make`, `Filter.type`, `Ref`) pass the type entity directly.
382
+ *
383
+ * Only accepts `Type.AnyEntity` — raw `Schema.Schema` values can be used
384
+ * directly without unwrapping.
385
+ */
386
+ export declare function getSchema<T extends AnyObj>(type: T): Schema.Schema<InstanceType<T>>;
387
+ export declare function getSchema<T extends AnyRelation>(type: T): Schema.Schema<InstanceType<T>>;
388
+ export declare function getSchema(type: AnyEntity): Schema.Schema.AnyNoContext;
389
+ /**
390
+ * Mutable view of a `Type.Type` — the shape passed to the `Type.update` callback.
391
+ * Outside `Type.update`, `Type.Type` fields are read-only (both at the type level
392
+ * and at runtime — direct assignment throws). Use this to constrain mutation to
393
+ * the change context, analogous to `Obj.update(obj, (draft) => ...)`.
394
+ *
395
+ * NOTE: `typename` and `version` are intentionally absent — they live in
396
+ * `EntityMeta` (`key` / `version` — the canonical registry-provenance pair).
397
+ * Read them via {@link getTypename} / {@link getVersion} / {@link getMeta};
398
+ * `typename` is treated as immutable on persisted entities.
399
+ *
400
+ * Unlike `Obj.update` — whose mutable view is inferred as `Mutable<A>` over the
401
+ * whole instance type because every data field is editable — a `Type.Type`
402
+ * exposes only `name` and `jsonSchema` for mutation. The rest of its shape
403
+ * (`id`, the `[KindId]` / `[SchemaKindId]` brands, and `typename` / `version`
404
+ * in meta) is immutable, so this view is declared explicitly rather than
405
+ * derived from `InstanceType<Type.Type>`.
126
406
  */
127
- export declare const getDXN: (schema: Obj.Any | Relation.Any) => Keys.DXN | undefined;
407
+ export interface Mutable {
408
+ name?: string;
409
+ jsonSchema: Types.DeepMutable<internal.JsonSchemaType>;
410
+ }
128
411
  /**
129
- * @param schema - Schema to get the typename from.
130
- * @returns The typename of the schema. Example: `example.com/type/Person`.
412
+ * Perform mutations on a `Type.Type` within a change context.
413
+ *
414
+ * The callback receives a {@link Mutable} view of the type — direct mutation of
415
+ * a `Type.Type` outside `Type.update` throws at runtime, mirroring `Obj.update`.
416
+ * Delegates to the same automerge-transaction primitive `Obj.update(obj, cb)` uses.
131
417
  */
132
- export declare const getTypename: (schema: Obj.Any | Relation.Any) => string;
418
+ export declare const update: (type: AnyEntity, callback: (mutable: Mutable) => void) => void;
133
419
  /**
134
- * Gets the version of the schema.
135
- * @example 0.1.0
420
+ * Add fields to a persisted type's schema.
421
+ * @throws if the type is not persisted.
136
422
  */
137
- export declare const getVersion: (schema: Obj.Any | Relation.Any) => string;
423
+ export declare const addFields: (type: AnyEntity, fields: Schema.Struct.Fields) => void;
138
424
  /**
139
- * @returns True if the schema is mutable.
425
+ * Replace existing fields on a persisted type's schema.
426
+ * @throws if the type is not persisted.
140
427
  */
141
- export declare const isMutable: (schema: EffectSchema.Schema.AnyNoContext) => schema is EchoSchema.EchoSchema;
428
+ export declare const updateFields: (type: AnyEntity, fields: Schema.Struct.Fields) => void;
142
429
  /**
143
- * ECHO type metadata.
430
+ * Rename a field on a persisted type's schema.
431
+ * @throws if the type is not persisted.
144
432
  */
145
- export type Meta = EchoSchema.TypeAnnotation;
433
+ export declare const updateFieldPropertyName: (type: Type, { before, after }: {
434
+ before: PropertyKey;
435
+ after: PropertyKey;
436
+ }) => void;
146
437
  /**
147
- * Gets the meta data of the schema.
438
+ * Remove fields from a persisted type's schema.
439
+ * @throws if the type is not persisted.
148
440
  */
149
- export declare const getMeta: (schema: Obj.Any | Relation.Any) => Meta | undefined;
150
- export { SpaceId, ObjectId, DXN } from '@dxos/keys';
151
- export { Format, JsonSchemaType as JsonSchema, toEffectSchema, toJsonSchema } from './internal';
441
+ export declare const removeFields: (type: AnyEntity, fieldNames: string[]) => void;
442
+ export {};
152
443
  //# sourceMappingURL=Type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/Type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Type.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Type.test.d.ts","sourceRoot":"","sources":["../../../src/Type.test.ts"],"names":[],"mappings":""}