@dxos/echo 0.8.4-main.72ec0f3 → 0.8.4-main.74a063c4e0

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 (670) hide show
  1. package/README.md +3 -4
  2. package/dist/lib/neutral/Annotation.mjs +37 -0
  3. package/dist/lib/neutral/Database.mjs +47 -0
  4. package/dist/lib/neutral/Entity.mjs +59 -0
  5. package/dist/lib/neutral/Err.mjs +12 -0
  6. package/dist/lib/neutral/Extension.mjs +18 -0
  7. package/dist/lib/neutral/Feed.mjs +48 -0
  8. package/dist/lib/neutral/Filter.mjs +70 -0
  9. package/dist/lib/neutral/Filter.mjs.map +7 -0
  10. package/dist/lib/neutral/Format.mjs +66 -0
  11. package/dist/lib/neutral/Format.mjs.map +7 -0
  12. package/dist/lib/neutral/JsonSchema.mjs +19 -0
  13. package/dist/lib/neutral/JsonSchema.mjs.map +7 -0
  14. package/dist/lib/neutral/Key.mjs +12 -0
  15. package/dist/lib/neutral/Key.mjs.map +7 -0
  16. package/dist/lib/neutral/Obj.mjs +113 -0
  17. package/dist/lib/neutral/Obj.mjs.map +7 -0
  18. package/dist/lib/neutral/Order.mjs +12 -0
  19. package/dist/lib/neutral/Order.mjs.map +7 -0
  20. package/dist/lib/neutral/Query.mjs +38 -0
  21. package/dist/lib/neutral/Query.mjs.map +7 -0
  22. package/dist/lib/neutral/QueryResult.mjs +2 -0
  23. package/dist/lib/neutral/QueryResult.mjs.map +7 -0
  24. package/dist/lib/neutral/Ref.mjs +24 -0
  25. package/dist/lib/neutral/Ref.mjs.map +7 -0
  26. package/dist/lib/neutral/Relation.mjs +94 -0
  27. package/dist/lib/neutral/Relation.mjs.map +7 -0
  28. package/dist/lib/neutral/SchemaRegistry.mjs +2 -0
  29. package/dist/lib/neutral/SchemaRegistry.mjs.map +7 -0
  30. package/dist/lib/neutral/Tag.mjs +29 -0
  31. package/dist/lib/neutral/Tag.mjs.map +7 -0
  32. package/dist/lib/neutral/Type.mjs +37 -0
  33. package/dist/lib/neutral/Type.mjs.map +7 -0
  34. package/dist/lib/neutral/chunk-2U2BZDLU.mjs +121 -0
  35. package/dist/lib/neutral/chunk-2U2BZDLU.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-46QNGNTY.mjs +45 -0
  37. package/dist/lib/neutral/chunk-46QNGNTY.mjs.map +7 -0
  38. package/dist/lib/neutral/chunk-66GBFH43.mjs +298 -0
  39. package/dist/lib/neutral/chunk-66GBFH43.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-6URFBQJH.mjs +361 -0
  41. package/dist/lib/neutral/chunk-6URFBQJH.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-7QQMUDE6.mjs +159 -0
  43. package/dist/lib/neutral/chunk-7QQMUDE6.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-ANHVGJI4.mjs +21 -0
  45. package/dist/lib/neutral/chunk-ANHVGJI4.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-BNCCGLJN.mjs +7 -0
  47. package/dist/lib/neutral/chunk-BNCCGLJN.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-DQYLD2RB.mjs +402 -0
  49. package/dist/lib/neutral/chunk-DQYLD2RB.mjs.map +7 -0
  50. package/dist/lib/neutral/chunk-E5PBQJWV.mjs +27 -0
  51. package/dist/lib/neutral/chunk-E5PBQJWV.mjs.map +7 -0
  52. package/dist/lib/neutral/chunk-EBVB5NOH.mjs +133 -0
  53. package/dist/lib/neutral/chunk-EBVB5NOH.mjs.map +7 -0
  54. package/dist/lib/neutral/chunk-FNEFSO2C.mjs +787 -0
  55. package/dist/lib/neutral/chunk-FNEFSO2C.mjs.map +7 -0
  56. package/dist/lib/neutral/chunk-GZQTCRJB.mjs +73 -0
  57. package/dist/lib/neutral/chunk-GZQTCRJB.mjs.map +7 -0
  58. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  59. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  60. package/dist/lib/neutral/chunk-KPY6FC5I.mjs +415 -0
  61. package/dist/lib/neutral/chunk-KPY6FC5I.mjs.map +7 -0
  62. package/dist/lib/neutral/chunk-MYMU4TWK.mjs +299 -0
  63. package/dist/lib/neutral/chunk-MYMU4TWK.mjs.map +7 -0
  64. package/dist/lib/neutral/chunk-MZXWVR3T.mjs +97 -0
  65. package/dist/lib/neutral/chunk-MZXWVR3T.mjs.map +7 -0
  66. package/dist/lib/neutral/chunk-OMUPQMLR.mjs +7 -0
  67. package/dist/lib/neutral/chunk-OMUPQMLR.mjs.map +7 -0
  68. package/dist/lib/neutral/chunk-QWAOTFCY.mjs +396 -0
  69. package/dist/lib/neutral/chunk-QWAOTFCY.mjs.map +7 -0
  70. package/dist/lib/neutral/chunk-R72KFH2X.mjs +34 -0
  71. package/dist/lib/neutral/chunk-R72KFH2X.mjs.map +7 -0
  72. package/dist/lib/neutral/chunk-TBKX6JQO.mjs +67 -0
  73. package/dist/lib/neutral/chunk-TBKX6JQO.mjs.map +7 -0
  74. package/dist/lib/neutral/chunk-UBEZSGXY.mjs +51 -0
  75. package/dist/lib/neutral/chunk-UBEZSGXY.mjs.map +7 -0
  76. package/dist/lib/neutral/chunk-UI6MWK5W.mjs +42 -0
  77. package/dist/lib/neutral/chunk-UI6MWK5W.mjs.map +7 -0
  78. package/dist/lib/neutral/chunk-VCAP4OOT.mjs +120 -0
  79. package/dist/lib/neutral/chunk-VCAP4OOT.mjs.map +7 -0
  80. package/dist/lib/neutral/chunk-WMFVS4KR.mjs +2830 -0
  81. package/dist/lib/neutral/chunk-WMFVS4KR.mjs.map +7 -0
  82. package/dist/lib/neutral/chunk-XZJUNTML.mjs +335 -0
  83. package/dist/lib/neutral/chunk-XZJUNTML.mjs.map +7 -0
  84. package/dist/lib/neutral/chunk-XZM7FERR.mjs +56 -0
  85. package/dist/lib/neutral/chunk-XZM7FERR.mjs.map +7 -0
  86. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs +50 -0
  87. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs.map +7 -0
  88. package/dist/lib/neutral/chunk-ZIXGDU6F.mjs +45 -0
  89. package/dist/lib/neutral/chunk-ZIXGDU6F.mjs.map +7 -0
  90. package/dist/lib/neutral/index.mjs +101 -0
  91. package/dist/lib/neutral/index.mjs.map +7 -0
  92. package/dist/lib/{node-esm → neutral}/internal/index.mjs +290 -152
  93. package/dist/lib/neutral/internal/index.mjs.map +7 -0
  94. package/dist/lib/neutral/meta.json +1 -0
  95. package/dist/lib/neutral/testing/index.mjs +374 -0
  96. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  97. package/dist/types/src/Annotation.d.ts +24 -0
  98. package/dist/types/src/Annotation.d.ts.map +1 -0
  99. package/dist/types/src/Collection.d.ts +16 -0
  100. package/dist/types/src/Collection.d.ts.map +1 -0
  101. package/dist/types/src/Database.d.ts +196 -0
  102. package/dist/types/src/Database.d.ts.map +1 -0
  103. package/dist/types/src/Dataset.d.ts +19 -0
  104. package/dist/types/src/Dataset.d.ts.map +1 -0
  105. package/dist/types/src/Entity.d.ts +168 -0
  106. package/dist/types/src/Entity.d.ts.map +1 -0
  107. package/dist/types/src/Entity.test.d.ts +2 -0
  108. package/dist/types/src/Entity.test.d.ts.map +1 -0
  109. package/dist/types/src/Err.d.ts +107 -0
  110. package/dist/types/src/Err.d.ts.map +1 -0
  111. package/dist/types/src/Extension.d.ts +80 -0
  112. package/dist/types/src/Extension.d.ts.map +1 -0
  113. package/dist/types/src/Extension.test.d.ts +2 -0
  114. package/dist/types/src/Extension.test.d.ts.map +1 -0
  115. package/dist/types/src/Feed.d.ts +171 -0
  116. package/dist/types/src/Feed.d.ts.map +1 -0
  117. package/dist/types/src/Filter.d.ts +136 -0
  118. package/dist/types/src/Filter.d.ts.map +1 -0
  119. package/dist/types/src/Filter.test.d.ts +2 -0
  120. package/dist/types/src/Filter.test.d.ts.map +1 -0
  121. package/dist/types/src/Format.d.ts +4 -0
  122. package/dist/types/src/Format.d.ts.map +1 -0
  123. package/dist/types/src/Hypergraph.d.ts +65 -0
  124. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  125. package/dist/types/src/JsonSchema.d.ts +16 -0
  126. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  127. package/dist/types/src/Key.d.ts +1 -0
  128. package/dist/types/src/Key.d.ts.map +1 -1
  129. package/dist/types/src/Obj.d.ts +432 -104
  130. package/dist/types/src/Obj.d.ts.map +1 -1
  131. package/dist/types/src/Obj.test.d.ts +2 -0
  132. package/dist/types/src/Obj.test.d.ts.map +1 -0
  133. package/dist/types/src/Order.d.ts +16 -0
  134. package/dist/types/src/Order.d.ts.map +1 -0
  135. package/dist/types/src/Query.d.ts +209 -0
  136. package/dist/types/src/Query.d.ts.map +1 -0
  137. package/dist/types/src/Query.test.d.ts +2 -0
  138. package/dist/types/src/Query.test.d.ts.map +1 -0
  139. package/dist/types/src/QueryResult.d.ts +80 -0
  140. package/dist/types/src/QueryResult.d.ts.map +1 -0
  141. package/dist/types/src/Ref.d.ts +61 -11
  142. package/dist/types/src/Ref.d.ts.map +1 -1
  143. package/dist/types/src/Relation.d.ts +287 -21
  144. package/dist/types/src/Relation.d.ts.map +1 -1
  145. package/dist/types/src/Relation.test.d.ts +2 -0
  146. package/dist/types/src/Relation.test.d.ts.map +1 -0
  147. package/dist/types/src/SchemaRegistry.d.ts +84 -0
  148. package/dist/types/src/SchemaRegistry.d.ts.map +1 -0
  149. package/dist/types/src/Tag.d.ts +8 -7
  150. package/dist/types/src/Tag.d.ts.map +1 -1
  151. package/dist/types/src/Type.d.ts +123 -99
  152. package/dist/types/src/Type.d.ts.map +1 -1
  153. package/dist/types/src/Type.test.d.ts +2 -0
  154. package/dist/types/src/Type.test.d.ts.map +1 -0
  155. package/dist/types/src/View.d.ts +68 -0
  156. package/dist/types/src/View.d.ts.map +1 -0
  157. package/dist/types/src/hierarchy.test.d.ts +2 -0
  158. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  159. package/dist/types/src/index.d.ts +19 -5
  160. package/dist/types/src/index.d.ts.map +1 -1
  161. package/dist/types/src/internal/Annotation/annotations.d.ts +231 -0
  162. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  163. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  164. package/dist/types/src/internal/Annotation/index.d.ts +4 -0
  165. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  166. package/dist/types/src/internal/Annotation/sorting.d.ts +24 -0
  167. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  168. package/dist/types/src/internal/Annotation/util.d.ts +39 -0
  169. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  170. package/dist/types/src/internal/Entity/api.d.ts +13 -0
  171. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  172. package/dist/types/src/internal/Entity/entity.d.ts +20 -0
  173. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  174. package/dist/types/src/internal/Entity/index.d.ts +8 -0
  175. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  176. package/dist/types/src/internal/Entity/model.d.ts +55 -0
  177. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  178. package/dist/types/src/internal/Entity/object.d.ts +18 -0
  179. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  180. package/dist/types/src/internal/Entity/relation.d.ts +35 -0
  181. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  182. package/dist/types/src/internal/Entity/util.d.ts +2 -0
  183. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  184. package/dist/types/src/internal/Entity/version.d.ts +42 -0
  185. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  186. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  187. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  188. package/dist/types/src/internal/{formats → Format}/format.d.ts +4 -2
  189. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  190. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  191. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  192. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  193. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  194. package/dist/types/src/internal/{formats → Format}/select.d.ts +6 -4
  195. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  196. package/dist/types/src/internal/{formats → Format}/string.d.ts +4 -0
  197. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  198. package/dist/types/src/internal/{formats → Format}/types.d.ts +14 -10
  199. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  200. package/dist/types/src/internal/{json → JsonSchema}/annotations.d.ts +1 -1
  201. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  202. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  203. package/dist/types/src/internal/JsonSchema/index.d.ts +5 -0
  204. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  205. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  206. package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-type.d.ts +131 -30
  207. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  208. package/dist/types/src/internal/{json → JsonSchema}/json-schema.d.ts +4 -2
  209. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  210. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  211. package/dist/types/src/internal/Obj/clone.d.ts +8 -0
  212. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  213. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  214. package/dist/types/src/internal/{object/create.d.ts → Obj/create-object.d.ts} +10 -11
  215. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  216. package/dist/types/src/internal/Obj/create-object.test.d.ts +2 -0
  217. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  218. package/dist/types/src/internal/Obj/deleted.d.ts +6 -0
  219. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  220. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
  221. package/dist/types/src/internal/Obj/index.d.ts +11 -0
  222. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  223. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  224. package/dist/types/src/internal/Obj/json-serializer.d.ts +44 -0
  225. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  226. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  227. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  228. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  229. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  230. package/dist/types/src/internal/Obj/set-value.d.ts +7 -0
  231. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  232. package/dist/types/src/internal/Obj/set-value.test.d.ts +2 -0
  233. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  234. package/dist/types/src/internal/Obj/snapshot.d.ts +6 -0
  235. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  236. package/dist/types/src/internal/Obj/typed-object.d.ts +25 -0
  237. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  238. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  239. package/dist/types/src/internal/Query.d.ts +10 -0
  240. package/dist/types/src/internal/Query.d.ts.map +1 -0
  241. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  242. package/dist/types/src/internal/{ref → Ref}/ref-array.d.ts +4 -4
  243. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  244. package/dist/types/src/internal/{ref → Ref}/ref.d.ts +44 -19
  245. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  246. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  247. package/dist/types/src/internal/Type/compose.d.ts +7 -0
  248. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  249. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  250. package/dist/types/src/internal/{schema → Type}/echo-schema.d.ts +27 -14
  251. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
  252. package/dist/types/src/internal/Type/index.d.ts +4 -0
  253. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  254. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  255. package/dist/types/src/internal/Type/persistent-schema.d.ts +20 -0
  256. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
  257. package/dist/types/src/internal/common/api/index.d.ts +11 -0
  258. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  259. package/dist/types/src/internal/common/api/meta.d.ts +42 -0
  260. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  261. package/dist/types/src/internal/common/index.d.ts +4 -0
  262. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  263. package/dist/types/src/internal/common/proxy/change-context.d.ts +55 -0
  264. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  265. package/dist/types/src/internal/common/proxy/change.test.d.ts +2 -0
  266. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  267. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts +5 -0
  268. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  269. package/dist/types/src/internal/common/proxy/errors.d.ts +19 -0
  270. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  271. package/dist/types/src/internal/common/proxy/event-batch.d.ts +10 -0
  272. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  273. package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
  274. package/dist/types/src/internal/common/proxy/index.d.ts +14 -0
  275. package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
  276. package/dist/types/src/internal/common/proxy/json-serializer.d.ts +6 -0
  277. package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
  278. package/dist/types/src/internal/common/proxy/make-object.d.ts +14 -0
  279. package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
  280. package/dist/types/src/internal/common/proxy/ownership.d.ts +57 -0
  281. package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
  282. package/dist/types/src/internal/common/proxy/proxy-types.d.ts +18 -0
  283. package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
  284. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts +47 -0
  285. package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
  286. package/dist/types/src/internal/common/proxy/reactive-array.d.ts +8 -0
  287. package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
  288. package/dist/types/src/internal/common/proxy/reactive.d.ts +39 -0
  289. package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -0
  290. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  291. package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
  292. package/dist/types/src/internal/common/proxy/symbols.d.ts +3 -0
  293. package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
  294. package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.d.ts +16 -12
  295. package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
  296. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  297. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  298. package/dist/types/src/internal/common/types/base.d.ts +27 -0
  299. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  300. package/dist/types/src/internal/common/types/entity.d.ts +37 -0
  301. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  302. package/dist/types/src/internal/common/types/index.d.ts +7 -0
  303. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  304. package/dist/types/src/internal/{object → common/types}/meta.d.ts +18 -16
  305. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  306. package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
  307. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  308. package/dist/types/src/internal/common/types/typename.d.ts +21 -0
  309. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  310. package/dist/types/src/internal/common/types/version.d.ts +15 -0
  311. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  312. package/dist/types/src/internal/index.d.ts +10 -14
  313. package/dist/types/src/internal/index.d.ts.map +1 -1
  314. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  315. package/dist/types/src/testing/index.d.ts +3 -3
  316. package/dist/types/src/testing/index.d.ts.map +1 -1
  317. package/dist/types/src/testing/test-data.d.ts +18 -0
  318. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  319. package/dist/types/src/testing/test-schema.d.ts +304 -0
  320. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  321. package/dist/types/src/testing/util.d.ts +21 -0
  322. package/dist/types/src/testing/util.d.ts.map +1 -0
  323. package/dist/types/tsconfig.tsbuildinfo +1 -1
  324. package/package.json +111 -65
  325. package/src/Annotation.ts +48 -0
  326. package/src/Collection.ts +37 -0
  327. package/src/Database.ts +330 -0
  328. package/src/Dataset.ts +26 -0
  329. package/src/Entity.test.ts +22 -0
  330. package/src/Entity.ts +236 -0
  331. package/src/Err.ts +40 -0
  332. package/src/Extension.test.ts +235 -0
  333. package/src/Extension.ts +122 -0
  334. package/src/Feed.ts +283 -0
  335. package/src/Filter.test.ts +90 -0
  336. package/src/Filter.ts +424 -0
  337. package/src/Format.ts +9 -0
  338. package/src/Hypergraph.ts +79 -0
  339. package/src/JsonSchema.ts +26 -0
  340. package/src/Key.ts +3 -0
  341. package/src/Obj.test.ts +539 -0
  342. package/src/Obj.ts +695 -278
  343. package/src/Order.ts +46 -0
  344. package/src/Query.test.ts +698 -0
  345. package/src/Query.ts +547 -0
  346. package/src/QueryResult.ts +106 -0
  347. package/src/Ref.ts +79 -9
  348. package/src/Relation.test.ts +88 -0
  349. package/src/Relation.ts +443 -58
  350. package/src/SchemaRegistry.ts +106 -0
  351. package/src/Tag.ts +7 -5
  352. package/src/Type.test.ts +52 -0
  353. package/src/Type.ts +167 -153
  354. package/src/View.ts +107 -0
  355. package/src/hierarchy.test.ts +33 -0
  356. package/src/index.ts +20 -6
  357. package/src/internal/Annotation/annotations.test.ts +145 -0
  358. package/src/internal/Annotation/annotations.ts +578 -0
  359. package/src/internal/Annotation/index.ts +7 -0
  360. package/src/internal/Annotation/sorting.ts +51 -0
  361. package/src/internal/Annotation/util.ts +85 -0
  362. package/src/internal/Entity/api.ts +30 -0
  363. package/src/internal/Entity/entity.ts +128 -0
  364. package/src/internal/Entity/index.ts +11 -0
  365. package/src/internal/Entity/model.ts +109 -0
  366. package/src/internal/Entity/object.ts +57 -0
  367. package/src/internal/Entity/relation.ts +154 -0
  368. package/src/internal/Entity/util.ts +33 -0
  369. package/src/internal/Entity/version.ts +96 -0
  370. package/src/internal/{formats → Format}/date.test.ts +1 -2
  371. package/src/internal/{formats → Format}/date.ts +5 -5
  372. package/src/internal/{formats → Format}/format.test.ts +6 -7
  373. package/src/internal/{formats → Format}/format.ts +8 -6
  374. package/src/internal/{formats → Format}/number.ts +5 -5
  375. package/src/internal/{formats → Format}/object.ts +4 -4
  376. package/src/internal/{formats → Format}/select.ts +6 -4
  377. package/src/internal/{formats → Format}/string.ts +14 -9
  378. package/src/internal/{formats → Format}/types.ts +54 -43
  379. package/src/internal/{json → JsonSchema}/annotations.ts +3 -3
  380. package/src/internal/{json-schema → JsonSchema}/index.ts +2 -0
  381. package/src/internal/{json-schema → JsonSchema}/json-schema-normalize.ts +4 -2
  382. package/src/internal/{json-schema → JsonSchema}/json-schema-type.ts +36 -36
  383. package/src/internal/{json → JsonSchema}/json-schema.test.ts +106 -95
  384. package/src/internal/{json → JsonSchema}/json-schema.ts +29 -15
  385. package/src/internal/Obj/clone.ts +48 -0
  386. package/src/internal/{object → Obj}/common.ts +3 -4
  387. package/src/internal/{object/create.test.ts → Obj/create-object.test.ts} +32 -36
  388. package/src/internal/{object/create.ts → Obj/create-object.ts} +35 -37
  389. package/src/internal/Obj/deleted.ts +19 -0
  390. package/src/internal/{object → Obj}/ids.ts +1 -1
  391. package/src/internal/Obj/index.ts +14 -0
  392. package/src/internal/{object → Obj}/inspect.ts +5 -7
  393. package/src/internal/Obj/json-serializer.test.ts +120 -0
  394. package/src/internal/{object → Obj}/json-serializer.ts +99 -109
  395. package/src/internal/{object → Obj}/schema-validator.test.ts +3 -7
  396. package/src/internal/Obj/schema-validator.ts +6 -0
  397. package/src/internal/Obj/set-value.test.ts +281 -0
  398. package/src/internal/Obj/set-value.ts +165 -0
  399. package/src/internal/Obj/snapshot.ts +105 -0
  400. package/src/internal/{object → Obj}/typed-object.test.ts +12 -12
  401. package/src/internal/Obj/typed-object.ts +30 -0
  402. package/src/internal/Query.ts +132 -0
  403. package/src/internal/{ref → Ref}/ref-array.ts +4 -5
  404. package/src/internal/{ref → Ref}/ref.test.ts +11 -11
  405. package/src/internal/{ref → Ref}/ref.ts +108 -57
  406. package/src/internal/{projection → Type}/compose.test.ts +8 -10
  407. package/src/internal/{projection → Type}/compose.ts +14 -9
  408. package/src/internal/{schema → Type}/echo-schema.ts +74 -34
  409. package/src/internal/Type/index.ts +7 -0
  410. package/src/internal/{schema → Type}/manipulation.ts +1 -1
  411. package/src/internal/Type/persistent-schema.ts +33 -0
  412. package/src/internal/common/README.md +102 -0
  413. package/src/internal/common/api/index.ts +15 -0
  414. package/src/internal/common/api/meta.ts +88 -0
  415. package/src/internal/{testing → common}/index.ts +2 -1
  416. package/src/internal/common/proxy/change-context.ts +138 -0
  417. package/src/internal/common/proxy/change.test.ts +519 -0
  418. package/src/internal/common/proxy/define-hidden-property.ts +14 -0
  419. package/src/internal/common/proxy/errors.ts +42 -0
  420. package/src/internal/common/proxy/event-batch.ts +44 -0
  421. package/src/internal/common/proxy/handler.test.ts +121 -0
  422. package/src/internal/common/proxy/index.ts +17 -0
  423. package/src/internal/common/proxy/json-serializer.ts +90 -0
  424. package/src/internal/common/proxy/make-object.ts +105 -0
  425. package/src/internal/common/proxy/ownership.ts +252 -0
  426. package/src/internal/common/proxy/proxy-types.ts +23 -0
  427. package/src/internal/common/proxy/proxy-utils.ts +150 -0
  428. package/src/internal/common/proxy/reactive-array.ts +71 -0
  429. package/src/internal/common/proxy/reactive.ts +68 -0
  430. package/src/internal/{object → common/proxy}/schema-validator.ts +6 -3
  431. package/src/internal/{proxy → common/proxy}/schema.test.ts +31 -22
  432. package/src/internal/common/proxy/symbols.ts +7 -0
  433. package/src/internal/common/proxy/typed-handler.test.ts +313 -0
  434. package/src/internal/common/proxy/typed-handler.ts +447 -0
  435. package/src/internal/common/proxy/typed-object.test.ts +115 -0
  436. package/src/internal/common/types/base.ts +43 -0
  437. package/src/internal/common/types/entity.ts +54 -0
  438. package/src/internal/common/types/index.ts +10 -0
  439. package/src/internal/common/types/meta.ts +67 -0
  440. package/src/internal/common/types/model-symbols.ts +69 -0
  441. package/src/internal/common/types/typename.ts +55 -0
  442. package/src/internal/common/types/version.ts +19 -0
  443. package/src/internal/index.ts +12 -17
  444. package/src/testing/api.test.ts +125 -0
  445. package/src/testing/index.ts +3 -3
  446. package/src/testing/test-data.ts +129 -0
  447. package/src/testing/test-schema.ts +240 -0
  448. package/src/testing/util.ts +85 -0
  449. package/dist/lib/browser/chunk-BIDAASFK.mjs +0 -3727
  450. package/dist/lib/browser/chunk-BIDAASFK.mjs.map +0 -7
  451. package/dist/lib/browser/chunk-ZDLCWGEW.mjs +0 -410
  452. package/dist/lib/browser/chunk-ZDLCWGEW.mjs.map +0 -7
  453. package/dist/lib/browser/chunk-ZFRJKT4A.mjs +0 -585
  454. package/dist/lib/browser/chunk-ZFRJKT4A.mjs.map +0 -7
  455. package/dist/lib/browser/index.mjs +0 -35
  456. package/dist/lib/browser/internal/index.mjs +0 -336
  457. package/dist/lib/browser/meta.json +0 -1
  458. package/dist/lib/browser/query/index.mjs +0 -13
  459. package/dist/lib/browser/testing/index.mjs +0 -267
  460. package/dist/lib/browser/testing/index.mjs.map +0 -7
  461. package/dist/lib/node-esm/chunk-3SVRRCUU.mjs +0 -3727
  462. package/dist/lib/node-esm/chunk-3SVRRCUU.mjs.map +0 -7
  463. package/dist/lib/node-esm/chunk-CGDHRZWH.mjs +0 -585
  464. package/dist/lib/node-esm/chunk-CGDHRZWH.mjs.map +0 -7
  465. package/dist/lib/node-esm/chunk-HWS6VBQC.mjs +0 -410
  466. package/dist/lib/node-esm/chunk-HWS6VBQC.mjs.map +0 -7
  467. package/dist/lib/node-esm/index.mjs +0 -35
  468. package/dist/lib/node-esm/meta.json +0 -1
  469. package/dist/lib/node-esm/query/index.mjs +0 -13
  470. package/dist/lib/node-esm/testing/index.mjs +0 -267
  471. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  472. package/dist/types/src/errors.d.ts +0 -68
  473. package/dist/types/src/errors.d.ts.map +0 -1
  474. package/dist/types/src/internal/ast/annotation-helper.d.ts +0 -8
  475. package/dist/types/src/internal/ast/annotation-helper.d.ts.map +0 -1
  476. package/dist/types/src/internal/ast/annotations.d.ts +0 -131
  477. package/dist/types/src/internal/ast/annotations.d.ts.map +0 -1
  478. package/dist/types/src/internal/ast/annotations.test.d.ts.map +0 -1
  479. package/dist/types/src/internal/ast/entity-kind.d.ts +0 -10
  480. package/dist/types/src/internal/ast/entity-kind.d.ts.map +0 -1
  481. package/dist/types/src/internal/ast/index.d.ts +0 -5
  482. package/dist/types/src/internal/ast/index.d.ts.map +0 -1
  483. package/dist/types/src/internal/ast/types.d.ts +0 -6
  484. package/dist/types/src/internal/ast/types.d.ts.map +0 -1
  485. package/dist/types/src/internal/formats/date.d.ts.map +0 -1
  486. package/dist/types/src/internal/formats/date.test.d.ts.map +0 -1
  487. package/dist/types/src/internal/formats/format.d.ts.map +0 -1
  488. package/dist/types/src/internal/formats/format.test.d.ts.map +0 -1
  489. package/dist/types/src/internal/formats/index.d.ts.map +0 -1
  490. package/dist/types/src/internal/formats/number.d.ts.map +0 -1
  491. package/dist/types/src/internal/formats/object.d.ts.map +0 -1
  492. package/dist/types/src/internal/formats/select.d.ts.map +0 -1
  493. package/dist/types/src/internal/formats/string.d.ts.map +0 -1
  494. package/dist/types/src/internal/formats/types.d.ts.map +0 -1
  495. package/dist/types/src/internal/json/annotations.d.ts.map +0 -1
  496. package/dist/types/src/internal/json/effect-schema.test.d.ts.map +0 -1
  497. package/dist/types/src/internal/json/index.d.ts +0 -2
  498. package/dist/types/src/internal/json/index.d.ts.map +0 -1
  499. package/dist/types/src/internal/json/json-schema.d.ts.map +0 -1
  500. package/dist/types/src/internal/json/json-schema.test.d.ts.map +0 -1
  501. package/dist/types/src/internal/json-schema/index.d.ts +0 -3
  502. package/dist/types/src/internal/json-schema/index.d.ts.map +0 -1
  503. package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +0 -1
  504. package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +0 -1
  505. package/dist/types/src/internal/object/accessors.d.ts +0 -37
  506. package/dist/types/src/internal/object/accessors.d.ts.map +0 -1
  507. package/dist/types/src/internal/object/common.d.ts.map +0 -1
  508. package/dist/types/src/internal/object/create.d.ts.map +0 -1
  509. package/dist/types/src/internal/object/create.test.d.ts +0 -2
  510. package/dist/types/src/internal/object/create.test.d.ts.map +0 -1
  511. package/dist/types/src/internal/object/deleted.d.ts +0 -6
  512. package/dist/types/src/internal/object/deleted.d.ts.map +0 -1
  513. package/dist/types/src/internal/object/entity.d.ts +0 -33
  514. package/dist/types/src/internal/object/entity.d.ts.map +0 -1
  515. package/dist/types/src/internal/object/expando.d.ts +0 -14
  516. package/dist/types/src/internal/object/expando.d.ts.map +0 -1
  517. package/dist/types/src/internal/object/ids.d.ts.map +0 -1
  518. package/dist/types/src/internal/object/index.d.ts +0 -16
  519. package/dist/types/src/internal/object/index.d.ts.map +0 -1
  520. package/dist/types/src/internal/object/inspect.d.ts.map +0 -1
  521. package/dist/types/src/internal/object/json-serializer.d.ts +0 -32
  522. package/dist/types/src/internal/object/json-serializer.d.ts.map +0 -1
  523. package/dist/types/src/internal/object/json-serializer.test.d.ts.map +0 -1
  524. package/dist/types/src/internal/object/meta.d.ts.map +0 -1
  525. package/dist/types/src/internal/object/model.d.ts +0 -117
  526. package/dist/types/src/internal/object/model.d.ts.map +0 -1
  527. package/dist/types/src/internal/object/relation.d.ts +0 -17
  528. package/dist/types/src/internal/object/relation.d.ts.map +0 -1
  529. package/dist/types/src/internal/object/schema-validator.d.ts.map +0 -1
  530. package/dist/types/src/internal/object/schema-validator.test.d.ts.map +0 -1
  531. package/dist/types/src/internal/object/typed-object.d.ts +0 -31
  532. package/dist/types/src/internal/object/typed-object.d.ts.map +0 -1
  533. package/dist/types/src/internal/object/typed-object.test.d.ts.map +0 -1
  534. package/dist/types/src/internal/object/typename.d.ts +0 -15
  535. package/dist/types/src/internal/object/typename.d.ts.map +0 -1
  536. package/dist/types/src/internal/object/version.d.ts +0 -14
  537. package/dist/types/src/internal/object/version.d.ts.map +0 -1
  538. package/dist/types/src/internal/projection/compose.d.ts +0 -6
  539. package/dist/types/src/internal/projection/compose.d.ts.map +0 -1
  540. package/dist/types/src/internal/projection/compose.test.d.ts.map +0 -1
  541. package/dist/types/src/internal/projection/index.d.ts +0 -2
  542. package/dist/types/src/internal/projection/index.d.ts.map +0 -1
  543. package/dist/types/src/internal/proxy/handler.test.d.ts.map +0 -1
  544. package/dist/types/src/internal/proxy/reactive-object.d.ts +0 -15
  545. package/dist/types/src/internal/proxy/reactive-object.d.ts.map +0 -1
  546. package/dist/types/src/internal/proxy/schema.test.d.ts.map +0 -1
  547. package/dist/types/src/internal/proxy/typed-handler.d.ts.map +0 -1
  548. package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +0 -1
  549. package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +0 -1
  550. package/dist/types/src/internal/query/index.d.ts +0 -2
  551. package/dist/types/src/internal/query/index.d.ts.map +0 -1
  552. package/dist/types/src/internal/query/query.d.ts +0 -17
  553. package/dist/types/src/internal/query/query.d.ts.map +0 -1
  554. package/dist/types/src/internal/ref/index.d.ts.map +0 -1
  555. package/dist/types/src/internal/ref/ref-array.d.ts.map +0 -1
  556. package/dist/types/src/internal/ref/ref.d.ts.map +0 -1
  557. package/dist/types/src/internal/ref/ref.test.d.ts.map +0 -1
  558. package/dist/types/src/internal/schema/echo-schema.d.ts.map +0 -1
  559. package/dist/types/src/internal/schema/index.d.ts +0 -7
  560. package/dist/types/src/internal/schema/index.d.ts.map +0 -1
  561. package/dist/types/src/internal/schema/manipulation.d.ts.map +0 -1
  562. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts +0 -18
  563. package/dist/types/src/internal/schema/runtime-schema-registry.d.ts.map +0 -1
  564. package/dist/types/src/internal/schema/snapshot.d.ts +0 -6
  565. package/dist/types/src/internal/schema/snapshot.d.ts.map +0 -1
  566. package/dist/types/src/internal/schema/stored-schema.d.ts +0 -13
  567. package/dist/types/src/internal/schema/stored-schema.d.ts.map +0 -1
  568. package/dist/types/src/internal/testing/index.d.ts +0 -3
  569. package/dist/types/src/internal/testing/index.d.ts.map +0 -1
  570. package/dist/types/src/internal/testing/types.d.ts +0 -381
  571. package/dist/types/src/internal/testing/types.d.ts.map +0 -1
  572. package/dist/types/src/internal/testing/utils.d.ts +0 -10
  573. package/dist/types/src/internal/testing/utils.d.ts.map +0 -1
  574. package/dist/types/src/internal/types/index.d.ts +0 -3
  575. package/dist/types/src/internal/types/index.d.ts.map +0 -1
  576. package/dist/types/src/internal/types/types.d.ts +0 -79
  577. package/dist/types/src/internal/types/types.d.ts.map +0 -1
  578. package/dist/types/src/internal/types/types.test.d.ts +0 -2
  579. package/dist/types/src/internal/types/types.test.d.ts.map +0 -1
  580. package/dist/types/src/internal/types/util.d.ts +0 -5
  581. package/dist/types/src/internal/types/util.d.ts.map +0 -1
  582. package/dist/types/src/query/index.d.ts +0 -2
  583. package/dist/types/src/query/index.d.ts.map +0 -1
  584. package/dist/types/src/query/query.d.ts +0 -248
  585. package/dist/types/src/query/query.d.ts.map +0 -1
  586. package/dist/types/src/query/query.test.d.ts +0 -2
  587. package/dist/types/src/query/query.test.d.ts.map +0 -1
  588. package/dist/types/src/testing/echo-schema.d.ts +0 -7
  589. package/dist/types/src/testing/echo-schema.d.ts.map +0 -1
  590. package/dist/types/src/testing/types.d.ts +0 -228
  591. package/dist/types/src/testing/types.d.ts.map +0 -1
  592. package/src/errors.ts +0 -18
  593. package/src/internal/ast/annotation-helper.ts +0 -22
  594. package/src/internal/ast/annotations.test.ts +0 -98
  595. package/src/internal/ast/annotations.ts +0 -226
  596. package/src/internal/ast/entity-kind.ts +0 -15
  597. package/src/internal/ast/index.ts +0 -8
  598. package/src/internal/ast/types.ts +0 -17
  599. package/src/internal/json/index.ts +0 -5
  600. package/src/internal/object/accessors.ts +0 -153
  601. package/src/internal/object/deleted.ts +0 -19
  602. package/src/internal/object/entity.ts +0 -248
  603. package/src/internal/object/expando.ts +0 -21
  604. package/src/internal/object/index.ts +0 -19
  605. package/src/internal/object/json-serializer.test.ts +0 -99
  606. package/src/internal/object/meta.ts +0 -61
  607. package/src/internal/object/model.ts +0 -170
  608. package/src/internal/object/relation.ts +0 -24
  609. package/src/internal/object/typed-object.ts +0 -88
  610. package/src/internal/object/typename.ts +0 -61
  611. package/src/internal/object/version.ts +0 -22
  612. package/src/internal/projection/index.ts +0 -5
  613. package/src/internal/proxy/handler.test.ts +0 -163
  614. package/src/internal/proxy/reactive-object.ts +0 -108
  615. package/src/internal/proxy/typed-handler.test.ts +0 -102
  616. package/src/internal/proxy/typed-handler.ts +0 -228
  617. package/src/internal/proxy/typed-object.test.ts +0 -100
  618. package/src/internal/query/index.ts +0 -5
  619. package/src/internal/query/query.ts +0 -23
  620. package/src/internal/schema/index.ts +0 -10
  621. package/src/internal/schema/runtime-schema-registry.ts +0 -78
  622. package/src/internal/schema/snapshot.ts +0 -25
  623. package/src/internal/schema/stored-schema.ts +0 -26
  624. package/src/internal/testing/types.ts +0 -144
  625. package/src/internal/testing/utils.ts +0 -54
  626. package/src/internal/types/index.ts +0 -6
  627. package/src/internal/types/types.test.ts +0 -48
  628. package/src/internal/types/types.ts +0 -176
  629. package/src/internal/types/util.ts +0 -9
  630. package/src/query/index.ts +0 -6
  631. package/src/query/query.test.ts +0 -401
  632. package/src/query/query.ts +0 -789
  633. package/src/test/api.test.ts +0 -180
  634. package/src/testing/echo-schema.ts +0 -39
  635. package/src/testing/types.ts +0 -108
  636. /package/dist/lib/{browser/index.mjs.map → neutral/Annotation.mjs.map} +0 -0
  637. /package/dist/lib/{browser/internal/index.mjs.map → neutral/Database.mjs.map} +0 -0
  638. /package/dist/lib/{browser/query/index.mjs.map → neutral/Entity.mjs.map} +0 -0
  639. /package/dist/lib/{node-esm/index.mjs.map → neutral/Err.mjs.map} +0 -0
  640. /package/dist/lib/{node-esm/internal/index.mjs.map → neutral/Extension.mjs.map} +0 -0
  641. /package/dist/lib/{node-esm/query/index.mjs.map → neutral/Feed.mjs.map} +0 -0
  642. /package/dist/types/src/internal/{ast → Annotation}/annotations.test.d.ts +0 -0
  643. /package/dist/types/src/internal/{formats → Format}/date.d.ts +0 -0
  644. /package/dist/types/src/internal/{formats → Format}/date.test.d.ts +0 -0
  645. /package/dist/types/src/internal/{formats → Format}/format.test.d.ts +0 -0
  646. /package/dist/types/src/internal/{formats → Format}/index.d.ts +0 -0
  647. /package/dist/types/src/internal/{formats → Format}/number.d.ts +0 -0
  648. /package/dist/types/src/internal/{formats → Format}/object.d.ts +0 -0
  649. /package/dist/types/src/internal/{json → JsonSchema}/effect-schema.test.d.ts +0 -0
  650. /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-normalize.d.ts +0 -0
  651. /package/dist/types/src/internal/{json → JsonSchema}/json-schema.test.d.ts +0 -0
  652. /package/dist/types/src/internal/{object → Obj}/common.d.ts +0 -0
  653. /package/dist/types/src/internal/{object → Obj}/ids.d.ts +0 -0
  654. /package/dist/types/src/internal/{object → Obj}/inspect.d.ts +0 -0
  655. /package/dist/types/src/internal/{object → Obj}/json-serializer.test.d.ts +0 -0
  656. /package/dist/types/src/internal/{object → Obj}/schema-validator.test.d.ts +0 -0
  657. /package/dist/types/src/internal/{object → Obj}/typed-object.test.d.ts +0 -0
  658. /package/dist/types/src/internal/{ref → Ref}/index.d.ts +0 -0
  659. /package/dist/types/src/internal/{ref → Ref}/ref.test.d.ts +0 -0
  660. /package/dist/types/src/internal/{projection → Type}/compose.test.d.ts +0 -0
  661. /package/dist/types/src/internal/{schema → Type}/manipulation.d.ts +0 -0
  662. /package/dist/types/src/internal/{proxy → common/proxy}/handler.test.d.ts +0 -0
  663. /package/dist/types/src/internal/{object → common/proxy}/schema-validator.d.ts +0 -0
  664. /package/dist/types/src/internal/{proxy → common/proxy}/schema.test.d.ts +0 -0
  665. /package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.test.d.ts +0 -0
  666. /package/dist/types/src/internal/{proxy → common/proxy}/typed-object.test.d.ts +0 -0
  667. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
  668. /package/src/internal/{formats → Format}/index.ts +0 -0
  669. /package/src/internal/{json → JsonSchema}/effect-schema.test.ts +0 -0
  670. /package/src/internal/{ref → Ref}/index.ts +0 -0
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=set-value.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-value.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Obj/set-value.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Returns an immutable snapshot of the reactive object.
3
+ * The snapshot is branded with SnapshotKindId (not KindId).
4
+ */
5
+ export declare const getSnapshot: <T extends object>(obj: T) => T;
6
+ //# sourceMappingURL=snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Obj/snapshot.ts"],"names":[],"mappings":"AAoDA;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,CAgDtD,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type * as Schema from 'effect/Schema';
2
+ import { type TypeMeta } from '../Annotation';
3
+ import { type AnyEntity } from '../common/types';
4
+ /**
5
+ * Definition for an object type that can be stored in an ECHO database.
6
+ * Implements effect schema to define object properties.
7
+ * Has a typename and version.
8
+ *
9
+ * In contrast to {@link EchoSchema} this definition is not recorded in the database.
10
+ *
11
+ * @deprecated Use `Type.AnyObj` from `@dxos/echo` instead.
12
+ */
13
+ export interface TypedObject<A = any, I = any> extends TypeMeta, Schema.Schema<A, I> {
14
+ }
15
+ /**
16
+ * Typed object that could be used as a prototype in class definitions.
17
+ * This is an internal API type.
18
+ *
19
+ * @deprecated Use `Type.AnyObj` from `@dxos/echo` instead.
20
+ */
21
+ export interface TypedObjectPrototype<A = any, I = any> extends TypedObject<A, I> {
22
+ /** Type constructor. */
23
+ new (): AnyEntity & A;
24
+ }
25
+ //# sourceMappingURL=typed-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-object.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Obj/typed-object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAE,SAAQ,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;CAAG;AAEvF;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAE,SAAQ,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/E,wBAAwB;IACxB,QAAQ,SAAS,GAAG,CAAC,CAAC;CACvB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-object.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Obj/typed-object.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { type QueryAST } from '@dxos/echo-protocol';
2
+ /**
3
+ * Returns a human-readable string representation of a Filter AST.
4
+ */
5
+ export declare const prettyFilter: (filter: QueryAST.Filter) => string;
6
+ /**
7
+ * Returns a human-readable string representation of a Query AST.
8
+ */
9
+ export declare const prettyQuery: (query: QueryAST.Query) => string;
10
+ //# sourceMappingURL=Query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../../src/internal/Query.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,QAAQ,CAAC,MAAM,KAAG,MA2CtD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,QAAQ,CAAC,KAAK,KAAG,MA0EnD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Ref/index.ts"],"names":[],"mappings":"AAIA,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type ObjectId } from '@dxos/keys';
2
- import { type AnyEchoObject } from '../types';
2
+ import { type AnyEntity } from '../common/types';
3
3
  import { Ref } from './ref';
4
4
  /**
5
5
  * Helper functions for working with arrays of refs.
@@ -8,14 +8,14 @@ export declare const RefArray: Readonly<{
8
8
  /**
9
9
  * @returns all resolved targets.
10
10
  */
11
- targets: <T extends AnyEchoObject>(refs: readonly Ref<T>[]) => T[];
11
+ targets: <T extends AnyEntity>(refs: readonly Ref<T>[]) => T[];
12
12
  /**
13
13
  * Load all referenced objects.
14
14
  */
15
- loadAll: <T extends AnyEchoObject>(refs: readonly Ref<T>[]) => Promise<T[]>;
15
+ loadAll: <T extends AnyEntity>(refs: readonly Ref<T>[]) => Promise<T[]>;
16
16
  /**
17
17
  * Removes the ref with the given id.
18
18
  */
19
- removeById: (refs: Ref<AnyEchoObject>[], id: ObjectId) => void;
19
+ removeById: (refs: Ref<AnyEntity>[], id: ObjectId) => void;
20
20
  }>;
21
21
  //# sourceMappingURL=ref-array.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref-array.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Ref/ref-array.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B;;GAEG;AACH,eAAO,MAAM,QAAQ;IACnB;;OAEG;cACO,CAAC,SAAS,SAAS,QAAQ,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,KAAG,CAAC,EAAE;IAI5D;;OAEG;cACO,CAAC,SAAS,SAAS,QAAQ,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,KAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAIrE;;OAEG;uBACgB,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,QAAQ;EAMjD,CAAC"}
@@ -1,9 +1,14 @@
1
+ import * as Equal from 'effect/Equal';
2
+ import * as Hash from 'effect/Hash';
3
+ import * as Pipeable from 'effect/Pipeable';
1
4
  import * as Schema from 'effect/Schema';
2
5
  import * as SchemaAST from 'effect/SchemaAST';
3
- import { type EncodedReference } from '@dxos/echo-protocol';
6
+ import type * as Types from 'effect/Types';
7
+ import { type CustomInspectFunction, inspectCustom } from '@dxos/debug';
8
+ import { EncodedReference } from '@dxos/echo-protocol';
4
9
  import { DXN, ObjectId } from '@dxos/keys';
5
- import { type JsonSchemaType } from '../json-schema';
6
- import type { BaseObject, WithId } from '../types';
10
+ import type { AnyEntity, AnyProperties } from '../common/types';
11
+ import { type JsonSchemaType } from '../JsonSchema';
7
12
  /**
8
13
  * The `$id` and `$ref` fields for an ECHO reference schema.
9
14
  */
@@ -11,7 +16,7 @@ export declare const JSON_SCHEMA_ECHO_REF_ID = "/schemas/echo/ref";
11
16
  export declare const getSchemaReference: (property: JsonSchemaType) => {
12
17
  typename: string;
13
18
  } | undefined;
14
- export declare const createSchemaReference: (typename: string) => JsonSchemaType;
19
+ export declare const createSchemaReference: (typename: string) => Types.DeepMutable<JsonSchemaType>;
15
20
  /**
16
21
  * Runtime type-info for a reference extracted from effect AST.
17
22
  */
@@ -30,14 +35,17 @@ export declare const RefTypeId: unique symbol;
30
35
  /**
31
36
  * Reference Schema.
32
37
  */
33
- export interface Ref$<T extends WithId> extends Schema.SchemaClass<Ref<T>, EncodedReference> {
38
+ export interface RefSchema<T extends AnyEntity> extends Schema.SchemaClass<Ref<T>, EncodedReference> {
34
39
  }
40
+ /**
41
+ * Type of the `Ref` function and extra methods attached to it.
42
+ */
35
43
  export interface RefFn {
36
- <S extends Schema.Schema.Any>(schema: S): Ref$<Schema.Schema.Type<S>>;
44
+ <S extends Schema.Schema.Any>(schema: S): RefSchema<Schema.Schema.Type<S>>;
37
45
  /**
38
46
  * @returns True if the object is a reference.
39
47
  */
40
- isRef: (obj: any) => obj is Ref<any>;
48
+ isRef: (obj: unknown) => obj is Ref<any>;
41
49
  /**
42
50
  * @returns True if the reference points to the given object id.
43
51
  */
@@ -45,7 +53,7 @@ export interface RefFn {
45
53
  /**
46
54
  * @returns True if the schema is a reference schema.
47
55
  */
48
- isRefSchema: (schema: Schema.Schema<any, any>) => schema is Ref$<any>;
56
+ isRefSchema: (schema: Schema.Schema<any, any>) => schema is RefSchema<any>;
49
57
  /**
50
58
  * @returns True if the schema AST is a reference schema.
51
59
  */
@@ -53,7 +61,7 @@ export interface RefFn {
53
61
  /**
54
62
  * Constructs a reference that points to the given object.
55
63
  */
56
- make: <T extends WithId>(object: T) => Ref<T>;
64
+ make: <T extends AnyEntity>(object: T) => Ref<T>;
57
65
  /**
58
66
  * Constructs a reference that points to the object specified by the provided DXN.
59
67
  */
@@ -67,17 +75,19 @@ export declare const Ref: RefFn;
67
75
  * Represents materialized reference to a target.
68
76
  * This is the data type for the fields marked as ref.
69
77
  */
70
- export interface Ref<T> {
78
+ export interface Ref<T> extends Pipeable.Pipeable {
71
79
  /**
72
80
  * Target object DXN.
73
81
  */
74
82
  get dxn(): DXN;
83
+ /**
84
+ * Returns true if the reference has a target available (inlined or resolver set).
85
+ */
86
+ get isAvailable(): boolean;
75
87
  /**
76
88
  * @returns The reference target.
77
89
  * May return `undefined` if the object is not loaded in the working set.
78
90
  * Accessing this property, even if it returns `undefined` will trigger the object to be loaded to the working set.
79
- *
80
- * @reactive Supports signal subscriptions.
81
91
  */
82
92
  get target(): T | undefined;
83
93
  /**
@@ -140,11 +150,11 @@ export interface RefResolver {
140
150
  * @param load If true the resolver should attempt to load the object from disk.
141
151
  * @param onLoad Callback to call when the object is loaded.
142
152
  */
143
- resolveSync(dxn: DXN, load: boolean, onLoad?: () => void): BaseObject | undefined;
153
+ resolveSync(dxn: DXN, load: boolean, onLoad?: () => void): AnyProperties | undefined;
144
154
  /**
145
155
  * Resolver ref asynchronously.
146
156
  */
147
- resolve(dxn: DXN): Promise<BaseObject | undefined>;
157
+ resolve(dxn: DXN): Promise<AnyProperties | undefined>;
148
158
  resolveSchema(dxn: DXN): Promise<Schema.Schema.AnyNoContext | undefined>;
149
159
  }
150
160
  export declare class RefImpl<T> implements Ref<T> {
@@ -154,6 +164,10 @@ export declare class RefImpl<T> implements Ref<T> {
154
164
  * @inheritdoc
155
165
  */
156
166
  get dxn(): DXN;
167
+ /**
168
+ * @inheritdoc
169
+ */
170
+ get isAvailable(): boolean;
157
171
  /**
158
172
  * @inheritdoc
159
173
  */
@@ -181,9 +195,20 @@ export declare class RefImpl<T> implements Ref<T> {
181
195
  */
182
196
  toJSON(): EncodedReference;
183
197
  toString(): string;
198
+ [inspectCustom]: CustomInspectFunction;
184
199
  [RefTypeId]: {
185
200
  _T: any;
186
201
  };
202
+ /**
203
+ * Effect Hash trait. Required for MutableHashMap-based caches (e.g., Atom.family)
204
+ * to deduplicate Ref instances that point to the same object.
205
+ * ECHO proxies return new RefImpl instances on every property access,
206
+ * so without this, each access would create a separate cache entry.
207
+ */
208
+ [Hash.symbol](): number;
209
+ /** Effect Equal trait. See {@link Hash.symbol} for rationale. */
210
+ [Equal.symbol](that: Equal.Equal): boolean;
211
+ pipe(): unknown;
187
212
  }
188
213
  /**
189
214
  * Internal API for setting the reference resolver.
@@ -192,15 +217,15 @@ export declare const setRefResolver: (ref: Ref<any>, resolver: RefResolver) => v
192
217
  /**
193
218
  * Internal API for getting the saved target on a reference.
194
219
  */
195
- export declare const getRefSavedTarget: (ref: Ref<any>) => BaseObject | undefined;
220
+ export declare const getRefSavedTarget: (ref: Ref<any>) => AnyProperties | undefined;
196
221
  export declare const refFromEncodedReference: (encodedReference: EncodedReference, resolver?: RefResolver) => Ref<any>;
197
222
  export declare class StaticRefResolver implements RefResolver {
198
- objects: Map<string, BaseObject>;
223
+ objects: Map<string, AnyProperties>;
199
224
  schemas: Map<DXN.String, Schema.Schema.AnyNoContext>;
200
- addObject(obj: BaseObject): this;
225
+ addObject(obj: AnyProperties): this;
201
226
  addSchema(schema: Schema.Schema.AnyNoContext): this;
202
- resolveSync(dxn: DXN, _load: boolean, _onLoad?: () => void): BaseObject | undefined;
203
- resolve(dxn: DXN): Promise<BaseObject | undefined>;
227
+ resolveSync(dxn: DXN, _load: boolean, _onLoad?: () => void): AnyProperties | undefined;
228
+ resolve(dxn: DXN): Promise<AnyProperties | undefined>;
204
229
  resolveSchema(dxn: DXN): Promise<Schema.Schema.AnyNoContext | undefined>;
205
230
  }
206
231
  //# sourceMappingURL=ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Ref/ref.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Ref/ref.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type * as Types from 'effect/Types';
2
+ import { type JsonSchemaType } from '../JsonSchema';
3
+ /**
4
+ * Creates a composite schema from the source and projection schemas.
5
+ */
6
+ export declare const composeSchema: (source: Types.Mutable<JsonSchemaType>, target: Types.Mutable<JsonSchemaType>) => Types.Mutable<JsonSchemaType>;
7
+ //# sourceMappingURL=compose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/compose.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAI3C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD;;GAEG;AAGH,eAAO,MAAM,aAAa,GACxB,QAAQ,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EACrC,QAAQ,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,KACpC,KAAK,CAAC,OAAO,CAAC,cAAc,CAsB9B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.test.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/compose.test.ts"],"names":[],"mappings":""}
@@ -1,10 +1,12 @@
1
1
  import * as Schema from 'effect/Schema';
2
2
  import * as SchemaAST from 'effect/SchemaAST';
3
3
  import { type ObjectId } from '@dxos/keys';
4
- import { type SchemaMeta, SchemaMetaSymbol } from '../ast';
5
- import { type JsonSchemaType } from '../json-schema';
6
- import { type TypedObject, type TypedObjectPrototype } from '../object';
7
- import { StoredSchema } from './stored-schema';
4
+ import type * as Type from '../../Type';
5
+ import { type SchemaMeta, SchemaMetaSymbol } from '../Annotation';
6
+ import { EntityKind, SchemaKindId } from '../common/types';
7
+ import { type JsonSchemaType } from '../JsonSchema';
8
+ import { type TypedObject, type TypedObjectPrototype } from '../Obj';
9
+ import { PersistentSchema } from './persistent-schema';
8
10
  /**
9
11
  * Base schema type.
10
12
  */
@@ -56,6 +58,7 @@ export declare class ImmutableSchema<A = any, I = any> implements BaseSchema<A,
56
58
  <A_1, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I_1 = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never, T = never, U = never>(this: A_1, ab: (_: A_1) => B, bc: (_: B) => C, cd: (_: C) => D, de: (_: D) => E, ef: (_: E) => F, fg: (_: F) => G, gh: (_: G) => H, hi: (_: H) => I_1, ij: (_: I_1) => J, jk: (_: J) => K, kl: (_: K) => L, lm: (_: L) => M, mn: (_: M) => N, no: (_: N) => O, op: (_: O) => P, pq: (_: P) => Q, qr: (_: Q) => R, rs: (_: R) => S, st: (_: S) => T, tu: (_: T) => U): U;
57
59
  <A_1, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I_1 = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never, T = never, U = never>(this: A_1, ab: (_: A_1) => B, bc: (_: B) => C, cd: (_: C) => D, de: (_: D) => E, ef: (_: E) => F, fg: (_: F) => G, gh: (_: G) => H, hi: (_: H) => I_1, ij: (_: I_1) => J, jk: (_: J) => K, kl: (_: K) => L, lm: (_: L) => M, mn: (_: M) => N, no: (_: N) => O, op: (_: O) => P, pq: (_: P) => Q, qr: (_: Q) => R, rs: (_: R) => S, st: (_: S) => T, tu: (_: T) => U): U;
58
60
  };
61
+ get kind(): EntityKind;
59
62
  get typename(): string;
60
63
  get version(): string;
61
64
  get readonly(): boolean;
@@ -66,7 +69,7 @@ export declare class ImmutableSchema<A = any, I = any> implements BaseSchema<A,
66
69
  export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is EchoSchema;
67
70
  declare const EchoSchema_base: TypedObjectPrototype<any, any>;
68
71
  /**
69
- * Represents a schema that is stored in the ECHO database.
72
+ * Represents a schema that is persisted in the ECHO database.
70
73
  * Schema can me mutable or readonly (specified by the {@link EchoSchema.readonly} field).
71
74
  *
72
75
  * Schema that can be modified at runtime via the API.
@@ -77,20 +80,25 @@ declare const EchoSchema_base: TypedObjectPrototype<any, any>;
77
80
  *
78
81
  * @example
79
82
  * ```ts
80
- * export class TableType extends Schema.Struct({...}).pipe(Type.Obj({ typename: 'example.org/type/Table', version: '0.1.0' })){
83
+ * export class TableType extends Schema.Struct({...}).pipe(Type.object({ typename: 'com.example.type.table', version: '0.1.0' })){
81
84
  * title: Schema.String,
82
85
  * schema: Schema.optional(ref(EchoSchema)),
83
86
  * props: Schema.mutable(S.Array(TablePropSchema)),
84
87
  * }) {}
85
88
  * ```
86
89
  *
87
- * The ECHO API will translate any references to StoredSchema objects to be resolved as EchoSchema objects.
90
+ * The ECHO API will translate any references to PersistentSchema objects to be resolved as EchoSchema objects.
88
91
  */
89
92
  export declare class EchoSchema<A = any, I = any> extends EchoSchema_base implements BaseSchema<A, I> {
90
- private readonly _storedSchema;
93
+ private readonly _persistentSchema;
91
94
  private _schema;
92
95
  private _isDirty;
93
- constructor(_storedSchema: StoredSchema);
96
+ /**
97
+ * Schema kind key that marks this as an ECHO schema.
98
+ * Makes EchoSchema satisfy the Type.AnyObj type.
99
+ */
100
+ readonly [SchemaKindId]: EntityKind.Object;
101
+ constructor(_persistentSchema: PersistentSchema);
94
102
  get [Schema.TypeId](): {
95
103
  _A: (_: any) => any;
96
104
  _I: (_: any) => any;
@@ -102,6 +110,7 @@ export declare class EchoSchema<A = any, I = any> extends EchoSchema_base implem
102
110
  get ast(): SchemaAST.AST;
103
111
  get annotations(): (annotations: Schema.Annotations.GenericSchema<any>) => Schema.Schema<any, any, never>;
104
112
  get pipe(): Schema.Schema.AnyNoContext['pipe'];
113
+ get kind(): EntityKind.Object;
105
114
  get typename(): string;
106
115
  get version(): string;
107
116
  get readonly(): boolean;
@@ -110,7 +119,7 @@ export declare class EchoSchema<A = any, I = any> extends EchoSchema_base implem
110
119
  */
111
120
  get snapshot(): Schema.Schema.AnyNoContext;
112
121
  /**
113
- * @reactive
122
+ * Returns the JSON schema for the schema.
114
123
  */
115
124
  get jsonSchema(): JsonSchemaType;
116
125
  /**
@@ -127,9 +136,9 @@ export declare class EchoSchema<A = any, I = any> extends EchoSchema_base implem
127
136
  get name(): string | undefined;
128
137
  get [SchemaMetaSymbol](): SchemaMeta;
129
138
  /**
130
- * Reference to the underlying stored schema object.
139
+ * Reference to the underlying persistent schema object.
131
140
  */
132
- get storedSchema(): StoredSchema;
141
+ get persistentSchema(): Type.PersistentType;
133
142
  getProperties(): SchemaAST.PropertySignature[];
134
143
  /**
135
144
  * @throws Error if the schema is readonly.
@@ -155,14 +164,18 @@ export declare class EchoSchema<A = any, I = any> extends EchoSchema_base implem
155
164
  */
156
165
  removeFields(fieldNames: string[]): void;
157
166
  /**
158
- * Called by EchoSchemaRegistry on update.
167
+ * Wrapper for Obj.change that handles the change context for the persistent schema.
168
+ */
169
+ private _change;
170
+ /**
171
+ * Called by DatabaseSchemaRegistry on update.
159
172
  */
160
173
  _invalidate(): void;
161
174
  /**
162
175
  * Rebuilds this schema if it is dirty.
163
176
  */
164
177
  _rebuild(): void;
165
- private _getSchema;
178
+ _getSchema(): Schema.Schema.AnyNoContext;
166
179
  }
167
180
  export {};
168
181
  //# sourceMappingURL=echo-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"echo-schema.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/echo-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './echo-schema';
2
+ export * from './manipulation';
3
+ export * from './persistent-schema';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manipulation.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/manipulation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AASxC,eAAO,MAAM,iBAAiB,GAC5B,QAAQ,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,QAAQ,MAAM,CAAC,MAAM,CAAC,MAAM,KAC3B,MAAM,CAAC,MAAM,CAAC,YAKhB,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,QAAQ,MAAM,CAAC,MAAM,CAAC,MAAM,KAC3B,MAAM,CAAC,MAAM,CAAC,YAgBhB,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,QAAQ,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,YAAY,MAAM,EAAE,KACnB,MAAM,CAAC,MAAM,CAAC,YAEhB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,QAAQ,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,mBAAmB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,WAAW,CAAA;CAAE,KAC7D,MAAM,CAAC,MAAM,CAAC,YAehB,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,MAAM,CAAC,MAAM,CAAC,YAAY,EAClC,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,YAiBhB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import { EchoObjectSchema } from '../Entity';
3
+ import { JsonSchemaType } from '../JsonSchema';
4
+ /**
5
+ * Persistent representation of a schema.
6
+ */
7
+ export declare const PersistentSchema: EchoObjectSchema<Schema.Struct<{
8
+ name: Schema.optional<typeof Schema.String>;
9
+ typename: Schema.refine<string, typeof Schema.String>;
10
+ version: Schema.refine<string, typeof Schema.String>;
11
+ jsonSchema: Schema.Schema<JsonSchemaType, JsonSchemaType, never>;
12
+ }>, Readonly<{
13
+ name: Schema.optional<typeof Schema.String>;
14
+ typename: Schema.refine<string, typeof Schema.String>;
15
+ version: Schema.refine<string, typeof Schema.String>;
16
+ jsonSchema: Schema.Schema<JsonSchemaType, JsonSchemaType, never>;
17
+ }>>;
18
+ export interface PersistentSchema extends Schema.Schema.Type<typeof PersistentSchema> {
19
+ }
20
+ //# sourceMappingURL=persistent-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistent-schema.d.ts","sourceRoot":"","sources":["../../../../../src/internal/Type/persistent-schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C;;GAEG;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;GAe5B,CAAC;AAEF,MAAM,WAAW,gBAAiB,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC;CAAG"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Shared API helpers for Obj and Relation modules.
3
+ * These implementations use generic Entity types.
4
+ * Obj and Relation modules re-export with strongly-typed signatures.
5
+ *
6
+ * TODO(wittjosiah): Could this become the new "internal" where we slowly refactor
7
+ * existing internal modules into here? This would provide a cleaner boundary
8
+ * and prevent external packages from using internals directly.
9
+ */
10
+ export * from './meta';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/api/index.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { ForeignKey } from '@dxos/echo-protocol';
2
+ import type { DeepReadonly } from '@dxos/util';
3
+ import { type Mutable } from '../proxy';
4
+ import { type AnyProperties, type ObjectMeta } from '../types';
5
+ /**
6
+ * Deeply read-only version of ObjectMeta.
7
+ */
8
+ export type ReadonlyMeta = DeepReadonly<ObjectMeta>;
9
+ /**
10
+ * Mutable meta type received in meta mutation callbacks.
11
+ */
12
+ export type Meta = Mutable<ObjectMeta>;
13
+ /**
14
+ * Get the metadata for an entity with validation.
15
+ * Returns mutable meta when passed a mutable entity (inside change callback).
16
+ * Returns read-only meta when passed a regular entity or snapshot.
17
+ *
18
+ * TODO(burdon): When passed a Snapshot, should return a snapshot of meta, not the live meta proxy.
19
+ */
20
+ export declare function getMetaChecked(entity: Mutable<AnyProperties>): Meta;
21
+ export declare function getMetaChecked(entity: AnyProperties): ReadonlyMeta;
22
+ /**
23
+ * @returns Foreign keys for the entity from the specified source.
24
+ * Accepts both reactive entities and snapshots.
25
+ */
26
+ export declare const getKeys: (entity: AnyProperties, source: string) => ForeignKey[];
27
+ /**
28
+ * Delete all keys from the entity for the specified source.
29
+ * Must be called within an Obj.change or Relation.change callback.
30
+ */
31
+ export declare const deleteKeys: (entity: Mutable<AnyProperties>, source: string) => void;
32
+ /**
33
+ * Add a tag to the entity.
34
+ * Must be called within an Obj.change or Relation.change callback.
35
+ */
36
+ export declare const addTag: (entity: Mutable<AnyProperties>, tag: string) => void;
37
+ /**
38
+ * Remove a tag from the entity.
39
+ * Must be called within an Obj.change or Relation.change callback.
40
+ */
41
+ export declare const removeTag: (entity: Mutable<AnyProperties>, tag: string) => void;
42
+ //# sourceMappingURL=meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/api/meta.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAuB,MAAM,UAAU,CAAC;AAEpF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEvC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;AACrE,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAAC;AAQpE;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,QAAQ,aAAa,EAAE,QAAQ,MAAM,KAAG,UAAU,EAKzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,MAAM,SAQxE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,SAIjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,QAAQ,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,MAAM,SAWpE,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './api';
2
+ export * from './proxy';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/common/index.ts"],"names":[],"mappings":"AAIA,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Enter a change context for the given key.
3
+ * While in a change context, mutations are allowed on the associated object.
4
+ * Nested Obj.change calls are not supported.
5
+ *
6
+ * @param key - The key to enter the change context for (target object or ObjectCore).
7
+ * @returns A cleanup function that exits the change context.
8
+ */
9
+ export declare const enterChangeContext: (key: object) => (() => void);
10
+ /**
11
+ * Check if the given key is currently in a change context.
12
+ *
13
+ * @param key - The key to check (target object or ObjectCore).
14
+ * @returns True if the key is in a change context, false otherwise.
15
+ */
16
+ export declare const isInChangeContext: (key: object) => boolean;
17
+ /**
18
+ * Queue a notification for the given key to be fired when the change context exits.
19
+ *
20
+ * @param key - The key to queue a notification for.
21
+ */
22
+ export declare const queueNotification: (key: object) => void;
23
+ /**
24
+ * Queue an owner notification. Owner notifications are for objects in the ownership
25
+ * chain that should be notified when a nested object changes.
26
+ * These objects have EventId and emit directly.
27
+ * Skip if the target is already the current change context (to avoid duplicate notifications).
28
+ *
29
+ * @param target - The owner target that has EventId.
30
+ */
31
+ export declare const queueOwnerNotification: (target: object) => void;
32
+ /**
33
+ * Check if there are any pending notifications for the given key.
34
+ *
35
+ * @param key - The key to check.
36
+ * @returns True if there are pending notifications, false otherwise.
37
+ */
38
+ export declare const hasPendingNotifications: (key: object) => boolean;
39
+ /**
40
+ * Clear any pending notifications for the given key.
41
+ *
42
+ * @param key - The key to clear notifications for.
43
+ */
44
+ export declare const clearPendingNotifications: (key: object) => void;
45
+ /**
46
+ * Execute a callback within a change context.
47
+ * This is the shared implementation used by both TypedReactiveHandler and EchoReactiveHandler.
48
+ *
49
+ * @param contextKey - The key for the change context (target for typed, ObjectCore for db).
50
+ * @param eventTarget - The object that has the EventId for notifications.
51
+ * @param proxy - The proxy object to pass to the callback.
52
+ * @param callback - The callback to execute with mutations allowed.
53
+ */
54
+ export declare const executeChange: (contextKey: object, eventTarget: object, proxy: any, callback: (proxy: any) => void) => void;
55
+ //# sourceMappingURL=change-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-context.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/change-context.ts"],"names":[],"mappings":"AAkCA;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAAI,KAAK,MAAM,KAAG,CAAC,MAAM,IAAI,CAK3D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,OAE/C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,IAI/C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,KAAG,IAKvD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAAI,KAAK,MAAM,KAAG,OAErD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAI,KAAK,MAAM,KAAG,IAIvD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,aAAa,MAAM,EACnB,OAAO,GAAG,EACV,UAAU,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAC7B,IAiBF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=change.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change.test.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/change.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Define a non-enumerable property on an object.
3
+ */
4
+ export declare const defineHiddenProperty: (object: any, key: string | symbol, value: any) => void;
5
+ //# sourceMappingURL=define-hidden-property.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"define-hidden-property.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/define-hidden-property.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,GAAG,EAAE,KAAK,MAAM,GAAG,MAAM,EAAE,OAAO,GAAG,SAMjF,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Error thrown when attempting to mutate an object outside of an Obj.change() context.
3
+ */
4
+ export declare class MutationOutsideChangeContextError extends Error {
5
+ constructor(operation: string, suggestion: string);
6
+ }
7
+ /**
8
+ * Create an error for attempting to set a property outside of a change context.
9
+ */
10
+ export declare const createPropertySetError: (prop: string | symbol) => MutationOutsideChangeContextError;
11
+ /**
12
+ * Create an error for attempting to delete a property outside of a change context.
13
+ */
14
+ export declare const createPropertyDeleteError: (prop: string | symbol) => MutationOutsideChangeContextError;
15
+ /**
16
+ * Create an error for attempting to call an array method outside of a change context.
17
+ */
18
+ export declare const createArrayMethodError: (method: string) => MutationOutsideChangeContextError;
19
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/common/proxy/errors.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,qBAAa,iCAAkC,SAAQ,KAAK;gBAC9C,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAMlD;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,GAAG,MAAM,KAAG,iCAK9D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,GAAI,MAAM,MAAM,GAAG,MAAM,KAAG,iCAKjE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,KAAG,iCAEvD,CAAC"}