@dxos/echo 0.8.4-main.f9ba587 → 0.8.4-main.fcfe5033a5

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 (527) hide show
  1. package/README.md +4 -5
  2. package/dist/lib/neutral/Annotation.mjs +37 -0
  3. package/dist/lib/neutral/Database.mjs +49 -0
  4. package/dist/lib/neutral/Entity.mjs +59 -0
  5. package/dist/lib/neutral/Entity.mjs.map +7 -0
  6. package/dist/lib/neutral/Err.mjs +12 -0
  7. package/dist/lib/neutral/Err.mjs.map +7 -0
  8. package/dist/lib/neutral/Extension.mjs +18 -0
  9. package/dist/lib/neutral/Extension.mjs.map +7 -0
  10. package/dist/lib/neutral/Feed.mjs +50 -0
  11. package/dist/lib/neutral/Feed.mjs.map +7 -0
  12. package/dist/lib/neutral/Filter.mjs +72 -0
  13. package/dist/lib/neutral/Filter.mjs.map +7 -0
  14. package/dist/lib/neutral/Format.mjs +66 -0
  15. package/dist/lib/neutral/Format.mjs.map +7 -0
  16. package/dist/lib/neutral/JsonSchema.mjs +19 -0
  17. package/dist/lib/neutral/JsonSchema.mjs.map +7 -0
  18. package/dist/lib/neutral/Key.mjs +12 -0
  19. package/dist/lib/neutral/Key.mjs.map +7 -0
  20. package/dist/lib/neutral/Migration.mjs +17 -0
  21. package/dist/lib/neutral/Migration.mjs.map +7 -0
  22. package/dist/lib/neutral/Obj.mjs +113 -0
  23. package/dist/lib/neutral/Obj.mjs.map +7 -0
  24. package/dist/lib/neutral/Order.mjs +12 -0
  25. package/dist/lib/neutral/Order.mjs.map +7 -0
  26. package/dist/lib/neutral/Query.mjs +38 -0
  27. package/dist/lib/neutral/Query.mjs.map +7 -0
  28. package/dist/lib/neutral/QueryResult.mjs +2 -0
  29. package/dist/lib/neutral/QueryResult.mjs.map +7 -0
  30. package/dist/lib/neutral/Ref.mjs +24 -0
  31. package/dist/lib/neutral/Ref.mjs.map +7 -0
  32. package/dist/lib/neutral/Relation.mjs +94 -0
  33. package/dist/lib/neutral/Relation.mjs.map +7 -0
  34. package/dist/lib/neutral/SchemaRegistry.mjs +2 -0
  35. package/dist/lib/neutral/SchemaRegistry.mjs.map +7 -0
  36. package/dist/lib/neutral/Tag.mjs +29 -0
  37. package/dist/lib/neutral/Tag.mjs.map +7 -0
  38. package/dist/lib/neutral/Type.mjs +37 -0
  39. package/dist/lib/neutral/Type.mjs.map +7 -0
  40. package/dist/lib/neutral/chunk-2DJT26P7.mjs +286 -0
  41. package/dist/lib/neutral/chunk-2DJT26P7.mjs.map +7 -0
  42. package/dist/lib/neutral/chunk-3Y6LSSJR.mjs +132 -0
  43. package/dist/lib/neutral/chunk-3Y6LSSJR.mjs.map +7 -0
  44. package/dist/lib/neutral/chunk-4U7YKZUA.mjs +361 -0
  45. package/dist/lib/neutral/chunk-4U7YKZUA.mjs.map +7 -0
  46. package/dist/lib/neutral/chunk-6ZQHG2VX.mjs +27 -0
  47. package/dist/lib/neutral/chunk-6ZQHG2VX.mjs.map +7 -0
  48. package/dist/lib/neutral/chunk-ANHVGJI4.mjs +21 -0
  49. package/dist/lib/neutral/chunk-ANHVGJI4.mjs.map +7 -0
  50. package/dist/lib/neutral/chunk-B4NP3BY3.mjs +299 -0
  51. package/dist/lib/neutral/chunk-B4NP3BY3.mjs.map +7 -0
  52. package/dist/lib/neutral/chunk-BNCCGLJN.mjs +7 -0
  53. package/dist/lib/neutral/chunk-BNCCGLJN.mjs.map +7 -0
  54. package/dist/lib/neutral/chunk-DQYLD2RB.mjs +402 -0
  55. package/dist/lib/neutral/chunk-DQYLD2RB.mjs.map +7 -0
  56. package/dist/lib/neutral/chunk-F7EQRJWJ.mjs +56 -0
  57. package/dist/lib/neutral/chunk-F7EQRJWJ.mjs.map +7 -0
  58. package/dist/lib/neutral/chunk-GMAUO3CE.mjs +45 -0
  59. package/dist/lib/neutral/chunk-GMAUO3CE.mjs.map +7 -0
  60. package/dist/lib/neutral/chunk-GZQTCRJB.mjs +73 -0
  61. package/dist/lib/neutral/chunk-GZQTCRJB.mjs.map +7 -0
  62. package/dist/lib/neutral/chunk-HQSGCJPL.mjs +136 -0
  63. package/dist/lib/neutral/chunk-HQSGCJPL.mjs.map +7 -0
  64. package/dist/lib/neutral/chunk-IKAO54M4.mjs +121 -0
  65. package/dist/lib/neutral/chunk-IKAO54M4.mjs.map +7 -0
  66. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  67. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  68. package/dist/lib/neutral/chunk-LLK3YB3N.mjs +2834 -0
  69. package/dist/lib/neutral/chunk-LLK3YB3N.mjs.map +7 -0
  70. package/dist/lib/neutral/chunk-LSMJDE57.mjs +415 -0
  71. package/dist/lib/neutral/chunk-LSMJDE57.mjs.map +7 -0
  72. package/dist/lib/neutral/chunk-LZR62GOA.mjs +34 -0
  73. package/dist/lib/neutral/chunk-LZR62GOA.mjs.map +7 -0
  74. package/dist/lib/neutral/chunk-OMUPQMLR.mjs +7 -0
  75. package/dist/lib/neutral/chunk-OMUPQMLR.mjs.map +7 -0
  76. package/dist/lib/neutral/chunk-OX5WOJZ2.mjs +97 -0
  77. package/dist/lib/neutral/chunk-OX5WOJZ2.mjs.map +7 -0
  78. package/dist/lib/neutral/chunk-SRYQFSA4.mjs +396 -0
  79. package/dist/lib/neutral/chunk-SRYQFSA4.mjs.map +7 -0
  80. package/dist/lib/neutral/chunk-SZJKLCFE.mjs +787 -0
  81. package/dist/lib/neutral/chunk-SZJKLCFE.mjs.map +7 -0
  82. package/dist/lib/neutral/chunk-TBKX6JQO.mjs +67 -0
  83. package/dist/lib/neutral/chunk-TBKX6JQO.mjs.map +7 -0
  84. package/dist/lib/neutral/chunk-UBEZSGXY.mjs +51 -0
  85. package/dist/lib/neutral/chunk-UBEZSGXY.mjs.map +7 -0
  86. package/dist/lib/neutral/chunk-UI6MWK5W.mjs +42 -0
  87. package/dist/lib/neutral/chunk-UI6MWK5W.mjs.map +7 -0
  88. package/dist/lib/neutral/chunk-WABNQYKV.mjs +45 -0
  89. package/dist/lib/neutral/chunk-WABNQYKV.mjs.map +7 -0
  90. package/dist/lib/neutral/chunk-WOEEIQWU.mjs +159 -0
  91. package/dist/lib/neutral/chunk-WOEEIQWU.mjs.map +7 -0
  92. package/dist/lib/neutral/chunk-XL5OYQ4X.mjs +354 -0
  93. package/dist/lib/neutral/chunk-XL5OYQ4X.mjs.map +7 -0
  94. package/dist/lib/neutral/chunk-YP4SEMT6.mjs +36 -0
  95. package/dist/lib/neutral/chunk-YP4SEMT6.mjs.map +7 -0
  96. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs +50 -0
  97. package/dist/lib/neutral/chunk-YS6Q3XAD.mjs.map +7 -0
  98. package/dist/lib/neutral/index.mjs +105 -0
  99. package/dist/lib/neutral/index.mjs.map +7 -0
  100. package/dist/lib/neutral/internal/index.mjs +474 -0
  101. package/dist/lib/neutral/internal/index.mjs.map +7 -0
  102. package/dist/lib/neutral/meta.json +1 -0
  103. package/dist/lib/neutral/testing/index.mjs +375 -0
  104. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  105. package/dist/types/src/Annotation.d.ts +24 -0
  106. package/dist/types/src/Annotation.d.ts.map +1 -0
  107. package/dist/types/src/Collection.d.ts +16 -0
  108. package/dist/types/src/Collection.d.ts.map +1 -0
  109. package/dist/types/src/Database.d.ts +201 -0
  110. package/dist/types/src/Database.d.ts.map +1 -0
  111. package/dist/types/src/Dataset.d.ts +19 -0
  112. package/dist/types/src/Dataset.d.ts.map +1 -0
  113. package/dist/types/src/Entity.d.ts +168 -0
  114. package/dist/types/src/Entity.d.ts.map +1 -0
  115. package/dist/types/src/Entity.test.d.ts +2 -0
  116. package/dist/types/src/Entity.test.d.ts.map +1 -0
  117. package/dist/types/src/Err.d.ts +107 -0
  118. package/dist/types/src/Err.d.ts.map +1 -0
  119. package/dist/types/src/Extension.d.ts +80 -0
  120. package/dist/types/src/Extension.d.ts.map +1 -0
  121. package/dist/types/src/Extension.test.d.ts +2 -0
  122. package/dist/types/src/Extension.test.d.ts.map +1 -0
  123. package/dist/types/src/Feed.d.ts +182 -0
  124. package/dist/types/src/Feed.d.ts.map +1 -0
  125. package/dist/types/src/Filter.d.ts +149 -0
  126. package/dist/types/src/Filter.d.ts.map +1 -0
  127. package/dist/types/src/Filter.test.d.ts +2 -0
  128. package/dist/types/src/Filter.test.d.ts.map +1 -0
  129. package/dist/types/src/Format.d.ts +4 -0
  130. package/dist/types/src/Format.d.ts.map +1 -0
  131. package/dist/types/src/Hypergraph.d.ts +65 -0
  132. package/dist/types/src/Hypergraph.d.ts.map +1 -0
  133. package/dist/types/src/JsonSchema.d.ts +16 -0
  134. package/dist/types/src/JsonSchema.d.ts.map +1 -0
  135. package/dist/types/src/Key.d.ts +1 -0
  136. package/dist/types/src/Key.d.ts.map +1 -1
  137. package/dist/types/src/Migration.d.ts +57 -0
  138. package/dist/types/src/Migration.d.ts.map +1 -0
  139. package/dist/types/src/Obj.d.ts +473 -35
  140. package/dist/types/src/Obj.d.ts.map +1 -1
  141. package/dist/types/src/Obj.test.d.ts +2 -0
  142. package/dist/types/src/Obj.test.d.ts.map +1 -0
  143. package/dist/types/src/Order.d.ts +16 -0
  144. package/dist/types/src/Order.d.ts.map +1 -0
  145. package/dist/types/src/Query.d.ts +209 -0
  146. package/dist/types/src/Query.d.ts.map +1 -0
  147. package/dist/types/src/Query.test.d.ts +2 -0
  148. package/dist/types/src/Query.test.d.ts.map +1 -0
  149. package/dist/types/src/QueryResult.d.ts +80 -0
  150. package/dist/types/src/QueryResult.d.ts.map +1 -0
  151. package/dist/types/src/Ref.d.ts +61 -11
  152. package/dist/types/src/Ref.d.ts.map +1 -1
  153. package/dist/types/src/Relation.d.ts +290 -21
  154. package/dist/types/src/Relation.d.ts.map +1 -1
  155. package/dist/types/src/Relation.test.d.ts +2 -0
  156. package/dist/types/src/Relation.test.d.ts.map +1 -0
  157. package/dist/types/src/SchemaRegistry.d.ts +84 -0
  158. package/dist/types/src/SchemaRegistry.d.ts.map +1 -0
  159. package/dist/types/src/Tag.d.ts +18 -0
  160. package/dist/types/src/Tag.d.ts.map +1 -0
  161. package/dist/types/src/Type.d.ts +123 -100
  162. package/dist/types/src/Type.d.ts.map +1 -1
  163. package/dist/types/src/Type.test.d.ts +2 -0
  164. package/dist/types/src/Type.test.d.ts.map +1 -0
  165. package/dist/types/src/View.d.ts +68 -0
  166. package/dist/types/src/View.d.ts.map +1 -0
  167. package/dist/types/src/hierarchy.test.d.ts +2 -0
  168. package/dist/types/src/hierarchy.test.d.ts.map +1 -0
  169. package/dist/types/src/index.d.ts +21 -3
  170. package/dist/types/src/index.d.ts.map +1 -1
  171. package/dist/types/src/internal/Annotation/annotations.d.ts +231 -0
  172. package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
  173. package/dist/types/src/internal/Annotation/annotations.test.d.ts +2 -0
  174. package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
  175. package/dist/types/src/internal/Annotation/index.d.ts +4 -0
  176. package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
  177. package/dist/types/src/internal/Annotation/sorting.d.ts +24 -0
  178. package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
  179. package/dist/types/src/internal/Annotation/util.d.ts +39 -0
  180. package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
  181. package/dist/types/src/internal/Entity/api.d.ts +13 -0
  182. package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
  183. package/dist/types/src/internal/Entity/entity.d.ts +20 -0
  184. package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
  185. package/dist/types/src/internal/Entity/index.d.ts +8 -0
  186. package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
  187. package/dist/types/src/internal/Entity/model.d.ts +55 -0
  188. package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
  189. package/dist/types/src/internal/Entity/object.d.ts +18 -0
  190. package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
  191. package/dist/types/src/internal/Entity/relation.d.ts +35 -0
  192. package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
  193. package/dist/types/src/internal/Entity/util.d.ts +2 -0
  194. package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
  195. package/dist/types/src/internal/Entity/version.d.ts +42 -0
  196. package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
  197. package/dist/types/src/internal/Format/date.d.ts +63 -0
  198. package/dist/types/src/internal/Format/date.d.ts.map +1 -0
  199. package/dist/types/src/internal/Format/date.test.d.ts +2 -0
  200. package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
  201. package/dist/types/src/internal/Format/format.d.ts +32 -0
  202. package/dist/types/src/internal/Format/format.d.ts.map +1 -0
  203. package/dist/types/src/internal/Format/format.test.d.ts +2 -0
  204. package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
  205. package/dist/types/src/internal/Format/index.d.ts +8 -0
  206. package/dist/types/src/internal/Format/index.d.ts.map +1 -0
  207. package/dist/types/src/internal/Format/number.d.ts +31 -0
  208. package/dist/types/src/internal/Format/number.d.ts.map +1 -0
  209. package/dist/types/src/internal/Format/object.d.ts +35 -0
  210. package/dist/types/src/internal/Format/object.d.ts.map +1 -0
  211. package/dist/types/src/internal/Format/select.d.ts +13 -0
  212. package/dist/types/src/internal/Format/select.d.ts.map +1 -0
  213. package/dist/types/src/internal/Format/string.d.ts +42 -0
  214. package/dist/types/src/internal/Format/string.d.ts.map +1 -0
  215. package/dist/types/src/internal/Format/types.d.ts +72 -0
  216. package/dist/types/src/internal/Format/types.d.ts.map +1 -0
  217. package/dist/types/src/internal/JsonSchema/annotations.d.ts +19 -0
  218. package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
  219. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts +2 -0
  220. package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
  221. package/dist/types/src/internal/JsonSchema/index.d.ts +5 -0
  222. package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
  223. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts +7 -0
  224. package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
  225. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts +351 -0
  226. package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
  227. package/dist/types/src/internal/JsonSchema/json-schema.d.ts +30 -0
  228. package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
  229. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts +2 -0
  230. package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
  231. package/dist/types/src/internal/Obj/clone.d.ts +8 -0
  232. package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
  233. package/dist/types/src/internal/Obj/common.d.ts +18 -0
  234. package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
  235. package/dist/types/src/internal/Obj/create-object.d.ts +39 -0
  236. package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
  237. package/dist/types/src/internal/Obj/create-object.test.d.ts +2 -0
  238. package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
  239. package/dist/types/src/internal/Obj/deleted.d.ts +6 -0
  240. package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
  241. package/dist/types/src/internal/Obj/ids.d.ts +6 -0
  242. package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
  243. package/dist/types/src/internal/Obj/index.d.ts +11 -0
  244. package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
  245. package/dist/types/src/internal/Obj/inspect.d.ts +2 -0
  246. package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
  247. package/dist/types/src/internal/Obj/json-serializer.d.ts +45 -0
  248. package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
  249. package/dist/types/src/internal/Obj/json-serializer.test.d.ts +2 -0
  250. package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
  251. package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
  252. package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
  253. package/dist/types/src/internal/Obj/schema-validator.test.d.ts +2 -0
  254. package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
  255. package/dist/types/src/internal/Obj/set-value.d.ts +7 -0
  256. package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
  257. package/dist/types/src/internal/Obj/set-value.test.d.ts +2 -0
  258. package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
  259. package/dist/types/src/internal/Obj/snapshot.d.ts +6 -0
  260. package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
  261. package/dist/types/src/internal/Obj/typed-object.d.ts +25 -0
  262. package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
  263. package/dist/types/src/internal/Obj/typed-object.test.d.ts +2 -0
  264. package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
  265. package/dist/types/src/internal/Query.d.ts +10 -0
  266. package/dist/types/src/internal/Query.d.ts.map +1 -0
  267. package/dist/types/src/internal/Ref/index.d.ts +3 -0
  268. package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
  269. package/dist/types/src/internal/Ref/ref-array.d.ts +21 -0
  270. package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
  271. package/dist/types/src/internal/Ref/ref.d.ts +231 -0
  272. package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
  273. package/dist/types/src/internal/Ref/ref.test.d.ts +2 -0
  274. package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
  275. package/dist/types/src/internal/Type/compose.d.ts +7 -0
  276. package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
  277. package/dist/types/src/internal/Type/compose.test.d.ts +2 -0
  278. package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
  279. package/dist/types/src/internal/Type/echo-schema.d.ts +181 -0
  280. package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
  281. package/dist/types/src/internal/Type/index.d.ts +4 -0
  282. package/dist/types/src/internal/Type/index.d.ts.map +1 -0
  283. package/dist/types/src/internal/Type/manipulation.d.ts +10 -0
  284. package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
  285. package/dist/types/src/internal/Type/persistent-schema.d.ts +20 -0
  286. package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
  287. package/dist/types/src/internal/common/api/index.d.ts +11 -0
  288. package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
  289. package/dist/types/src/internal/common/api/meta.d.ts +42 -0
  290. package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
  291. package/dist/types/src/internal/common/index.d.ts +4 -0
  292. package/dist/types/src/internal/common/index.d.ts.map +1 -0
  293. package/dist/types/src/internal/common/proxy/change-context.d.ts +55 -0
  294. package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
  295. package/dist/types/src/internal/common/proxy/change.test.d.ts +2 -0
  296. package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
  297. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts +5 -0
  298. package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
  299. package/dist/types/src/internal/common/proxy/errors.d.ts +19 -0
  300. package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
  301. package/dist/types/src/internal/common/proxy/event-batch.d.ts +10 -0
  302. package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
  303. package/dist/types/src/internal/common/proxy/handler.test.d.ts +2 -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 +14 -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/schema-validator.d.ts +15 -0
  322. package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
  323. package/dist/types/src/internal/common/proxy/schema.test.d.ts +2 -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 +48 -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 +2 -0
  330. package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
  331. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts +2 -0
  332. package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
  333. package/dist/types/src/internal/common/types/base.d.ts +27 -0
  334. package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
  335. package/dist/types/src/internal/common/types/entity.d.ts +37 -0
  336. package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
  337. package/dist/types/src/internal/common/types/index.d.ts +7 -0
  338. package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
  339. package/dist/types/src/internal/common/types/meta.d.ts +33 -0
  340. package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
  341. package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
  342. package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
  343. package/dist/types/src/internal/common/types/typename.d.ts +21 -0
  344. package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
  345. package/dist/types/src/internal/common/types/version.d.ts +15 -0
  346. package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
  347. package/dist/types/src/internal/index.d.ts +11 -0
  348. package/dist/types/src/internal/index.d.ts.map +1 -0
  349. package/dist/types/src/{test → testing}/api.test.d.ts.map +1 -1
  350. package/dist/types/src/testing/index.d.ts +3 -1
  351. package/dist/types/src/testing/index.d.ts.map +1 -1
  352. package/dist/types/src/testing/test-data.d.ts +18 -0
  353. package/dist/types/src/testing/test-data.d.ts.map +1 -0
  354. package/dist/types/src/testing/test-schema.d.ts +304 -0
  355. package/dist/types/src/testing/test-schema.d.ts.map +1 -0
  356. package/dist/types/src/testing/util.d.ts +21 -0
  357. package/dist/types/src/testing/util.d.ts.map +1 -0
  358. package/dist/types/tsconfig.tsbuildinfo +1 -1
  359. package/package.json +122 -53
  360. package/src/Annotation.ts +48 -0
  361. package/src/Collection.ts +37 -0
  362. package/src/Database.ts +352 -0
  363. package/src/Dataset.ts +26 -0
  364. package/src/Entity.test.ts +22 -0
  365. package/src/Entity.ts +236 -0
  366. package/src/Err.ts +40 -0
  367. package/src/Extension.test.ts +235 -0
  368. package/src/Extension.ts +122 -0
  369. package/src/Feed.ts +304 -0
  370. package/src/Filter.test.ts +90 -0
  371. package/src/Filter.ts +454 -0
  372. package/src/Format.ts +9 -0
  373. package/src/Hypergraph.ts +79 -0
  374. package/src/JsonSchema.ts +26 -0
  375. package/src/Key.ts +3 -0
  376. package/src/Migration.ts +94 -0
  377. package/src/Obj.test.ts +539 -0
  378. package/src/Obj.ts +766 -80
  379. package/src/Order.ts +46 -0
  380. package/src/Query.test.ts +806 -0
  381. package/src/Query.ts +547 -0
  382. package/src/QueryResult.ts +106 -0
  383. package/src/Ref.ts +78 -9
  384. package/src/Relation.test.ts +88 -0
  385. package/src/Relation.ts +455 -54
  386. package/src/SchemaRegistry.ts +106 -0
  387. package/src/Tag.ts +41 -0
  388. package/src/Type.test.ts +52 -0
  389. package/src/Type.ts +168 -153
  390. package/src/View.ts +107 -0
  391. package/src/hierarchy.test.ts +33 -0
  392. package/src/index.ts +24 -4
  393. package/src/internal/Annotation/annotations.test.ts +145 -0
  394. package/src/internal/Annotation/annotations.ts +577 -0
  395. package/src/internal/Annotation/index.ts +7 -0
  396. package/src/internal/Annotation/sorting.ts +51 -0
  397. package/src/internal/Annotation/util.ts +85 -0
  398. package/src/internal/Entity/api.ts +30 -0
  399. package/src/internal/Entity/entity.ts +128 -0
  400. package/src/internal/Entity/index.ts +11 -0
  401. package/src/internal/Entity/model.ts +109 -0
  402. package/src/internal/Entity/object.ts +57 -0
  403. package/src/internal/Entity/relation.ts +154 -0
  404. package/src/internal/Entity/util.ts +33 -0
  405. package/src/internal/Entity/version.ts +96 -0
  406. package/src/internal/Format/date.test.ts +55 -0
  407. package/src/internal/Format/date.ts +217 -0
  408. package/src/internal/Format/format.test.ts +76 -0
  409. package/src/internal/Format/format.ts +54 -0
  410. package/src/internal/Format/index.ts +12 -0
  411. package/src/internal/Format/number.ts +89 -0
  412. package/src/internal/Format/object.ts +80 -0
  413. package/src/internal/Format/select.ts +18 -0
  414. package/src/internal/Format/string.ts +81 -0
  415. package/src/internal/Format/types.ts +186 -0
  416. package/src/internal/JsonSchema/annotations.ts +50 -0
  417. package/src/internal/JsonSchema/effect-schema.test.ts +143 -0
  418. package/src/internal/JsonSchema/index.ts +8 -0
  419. package/src/internal/JsonSchema/json-schema-normalize.ts +111 -0
  420. package/src/internal/JsonSchema/json-schema-type.ts +403 -0
  421. package/src/internal/JsonSchema/json-schema.test.ts +860 -0
  422. package/src/internal/JsonSchema/json-schema.ts +533 -0
  423. package/src/internal/Obj/clone.ts +48 -0
  424. package/src/internal/Obj/common.ts +75 -0
  425. package/src/internal/Obj/create-object.test.ts +114 -0
  426. package/src/internal/Obj/create-object.ts +94 -0
  427. package/src/internal/Obj/deleted.ts +19 -0
  428. package/src/internal/Obj/ids.ts +12 -0
  429. package/src/internal/Obj/index.ts +14 -0
  430. package/src/internal/Obj/inspect.ts +46 -0
  431. package/src/internal/Obj/json-serializer.test.ts +120 -0
  432. package/src/internal/Obj/json-serializer.ts +222 -0
  433. package/src/internal/Obj/schema-validator.test.ts +182 -0
  434. package/src/internal/Obj/schema-validator.ts +6 -0
  435. package/src/internal/Obj/set-value.test.ts +281 -0
  436. package/src/internal/Obj/set-value.ts +165 -0
  437. package/src/internal/Obj/snapshot.ts +105 -0
  438. package/src/internal/Obj/typed-object.test.ts +34 -0
  439. package/src/internal/Obj/typed-object.ts +30 -0
  440. package/src/internal/Query.ts +134 -0
  441. package/src/internal/Ref/index.ts +6 -0
  442. package/src/internal/Ref/ref-array.ts +38 -0
  443. package/src/internal/Ref/ref.test.ts +100 -0
  444. package/src/internal/Ref/ref.ts +572 -0
  445. package/src/internal/Type/compose.test.ts +41 -0
  446. package/src/internal/Type/compose.ts +41 -0
  447. package/src/internal/Type/echo-schema.ts +423 -0
  448. package/src/internal/Type/index.ts +7 -0
  449. package/src/internal/Type/manipulation.ts +92 -0
  450. package/src/internal/Type/persistent-schema.ts +33 -0
  451. package/src/internal/common/README.md +102 -0
  452. package/src/internal/common/api/index.ts +15 -0
  453. package/src/internal/common/api/meta.ts +88 -0
  454. package/src/internal/common/index.ts +7 -0
  455. package/src/internal/common/proxy/change-context.ts +138 -0
  456. package/src/internal/common/proxy/change.test.ts +519 -0
  457. package/src/internal/common/proxy/define-hidden-property.ts +14 -0
  458. package/src/internal/common/proxy/errors.ts +42 -0
  459. package/src/internal/common/proxy/event-batch.ts +44 -0
  460. package/src/internal/common/proxy/handler.test.ts +121 -0
  461. package/src/internal/common/proxy/index.ts +17 -0
  462. package/src/internal/common/proxy/json-serializer.ts +90 -0
  463. package/src/internal/common/proxy/make-object.ts +105 -0
  464. package/src/internal/common/proxy/ownership.ts +252 -0
  465. package/src/internal/common/proxy/proxy-types.ts +23 -0
  466. package/src/internal/common/proxy/proxy-utils.ts +150 -0
  467. package/src/internal/common/proxy/reactive-array.ts +71 -0
  468. package/src/internal/common/proxy/reactive.ts +68 -0
  469. package/src/internal/common/proxy/schema-validator.ts +244 -0
  470. package/src/internal/common/proxy/schema.test.ts +145 -0
  471. package/src/internal/common/proxy/symbols.ts +7 -0
  472. package/src/internal/common/proxy/typed-handler.test.ts +313 -0
  473. package/src/internal/common/proxy/typed-handler.ts +447 -0
  474. package/src/internal/common/proxy/typed-object.test.ts +115 -0
  475. package/src/internal/common/types/base.ts +43 -0
  476. package/src/internal/common/types/entity.ts +54 -0
  477. package/src/internal/common/types/index.ts +10 -0
  478. package/src/internal/common/types/meta.ts +67 -0
  479. package/src/internal/common/types/model-symbols.ts +69 -0
  480. package/src/internal/common/types/typename.ts +55 -0
  481. package/src/internal/common/types/version.ts +19 -0
  482. package/src/internal/index.ts +17 -0
  483. package/src/testing/api.test.ts +125 -0
  484. package/src/testing/index.ts +3 -1
  485. package/src/testing/test-data.ts +129 -0
  486. package/src/testing/test-schema.ts +240 -0
  487. package/src/testing/util.ts +85 -0
  488. package/dist/lib/browser/chunk-SVSJEELN.mjs +0 -619
  489. package/dist/lib/browser/chunk-SVSJEELN.mjs.map +0 -7
  490. package/dist/lib/browser/index.mjs +0 -22
  491. package/dist/lib/browser/meta.json +0 -1
  492. package/dist/lib/browser/testing/index.mjs +0 -70
  493. package/dist/lib/browser/testing/index.mjs.map +0 -7
  494. package/dist/lib/node-esm/chunk-53HXWYR6.mjs +0 -619
  495. package/dist/lib/node-esm/chunk-53HXWYR6.mjs.map +0 -7
  496. package/dist/lib/node-esm/index.mjs +0 -22
  497. package/dist/lib/node-esm/meta.json +0 -1
  498. package/dist/lib/node-esm/testing/index.mjs +0 -70
  499. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  500. package/dist/types/src/experimental/database.d.ts +0 -8
  501. package/dist/types/src/experimental/database.d.ts.map +0 -1
  502. package/dist/types/src/experimental/index.d.ts +0 -1
  503. package/dist/types/src/experimental/index.d.ts.map +0 -1
  504. package/dist/types/src/experimental/queue.d.ts +0 -8
  505. package/dist/types/src/experimental/queue.d.ts.map +0 -1
  506. package/dist/types/src/experimental/space.d.ts +0 -8
  507. package/dist/types/src/experimental/space.d.ts.map +0 -1
  508. package/dist/types/src/query/dsl.d.ts +0 -218
  509. package/dist/types/src/query/dsl.d.ts.map +0 -1
  510. package/dist/types/src/query/dsl.test.d.ts +0 -2
  511. package/dist/types/src/query/dsl.test.d.ts.map +0 -1
  512. package/dist/types/src/query/index.d.ts +0 -2
  513. package/dist/types/src/query/index.d.ts.map +0 -1
  514. package/dist/types/src/testing/types.d.ts +0 -113
  515. package/dist/types/src/testing/types.d.ts.map +0 -1
  516. package/src/experimental/database.ts +0 -11
  517. package/src/experimental/index.ts +0 -7
  518. package/src/experimental/queue.ts +0 -11
  519. package/src/experimental/space.ts +0 -11
  520. package/src/query/dsl.test.ts +0 -323
  521. package/src/query/dsl.ts +0 -646
  522. package/src/query/index.ts +0 -5
  523. package/src/test/api.test.ts +0 -173
  524. package/src/testing/types.ts +0 -91
  525. /package/dist/lib/{browser/index.mjs.map → neutral/Annotation.mjs.map} +0 -0
  526. /package/dist/lib/{node-esm/index.mjs.map → neutral/Database.mjs.map} +0 -0
  527. /package/dist/types/src/{test → testing}/api.test.d.ts +0 -0
@@ -1,153 +1,176 @@
1
- import { type Schema } from 'effect';
2
- import { type Simplify } from 'effect/Schema';
1
+ import type * as Schema from 'effect/Schema';
3
2
  import { type EncodedReference } from '@dxos/echo-protocol';
4
- import * as EchoSchema from '@dxos/echo-schema';
5
- import { type ToMutable } from '@dxos/echo-schema';
6
- import type * as Keys from '@dxos/keys';
3
+ import { type DXN } from '@dxos/keys';
4
+ import { type ToMutable } from '@dxos/util';
5
+ import type * as Entity from './Entity';
6
+ import * as internal from './internal';
7
+ import * as typeInternal from './internal/Type';
8
+ import type * as ObjModule from './Obj';
7
9
  import type * as RelationModule from './Relation';
8
- export declare const KindId: unique symbol;
9
- export type KindId = typeof KindId;
10
- export declare const Kind: typeof EchoSchema.EntityKind;
11
10
  /**
12
- * Assigns a kind to an Object or Relation instance.
11
+ * Dynamic type that can be constructed, mutated, and persisted in the ECHO database.
13
12
  */
14
- export interface OfKind<Kind extends EchoSchema.EntityKind> {
15
- readonly id: Keys.ObjectId;
16
- readonly [KindId]: Kind;
17
- }
13
+ export declare const RuntimeType: typeof internal.EchoSchema;
18
14
  /**
19
- * Base ECHO schema type.
15
+ * Dynamic type that can be constructed, mutated, and persisted in the ECHO database.
20
16
  */
21
- export type Schema = EchoSchema.EchoSchema;
17
+ export type RuntimeType = typeInternal.EchoSchema;
22
18
  /**
23
- * Returns all properties of an object or relation except for the id and kind.
19
+ * Type that marks a schema as an ECHO schema.
20
+ * The value indicates the entity kind (Object or Relation).
24
21
  */
25
- export type Properties<T> = Omit<T, 'id' | KindId | RelationModule.Source | RelationModule.Target>;
26
- interface ObjJsonProps {
27
- id: string;
28
- }
22
+ type EchoSchemaKind<K extends internal.EntityKind = internal.EntityKind> = {
23
+ readonly [internal.SchemaKindId]: K;
24
+ };
29
25
  /**
30
- * Return type of the `Obj` schema constructor.
26
+ * TypeScript type for an ECHO object schema.
27
+ * `T` is the instance type produced by the schema.
28
+ * `Fields` is the optional struct fields type for introspection.
31
29
  *
32
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
33
- * See Effect's note on interface types.
30
+ * @example
31
+ * ```ts
32
+ * const PersonSchema: Type.Obj<Person> = Schema.Struct({
33
+ * name: Schema.String,
34
+ * }).pipe(Type.object({ typename: 'Person', version: '0.1.0' }));
35
+ *
36
+ * // Access fields for introspection:
37
+ * Object.keys(PersonSchema.fields); // ['name']
38
+ * ```
34
39
  */
35
- export interface obj<Self extends Schema.Schema.Any> extends EchoSchema.TypeMeta, Schema.AnnotableClass<obj<Self>, OfKind<EchoSchema.EntityKind.Object> & ToMutable<Schema.Schema.Type<Self>>, Simplify<ObjJsonProps & ToMutable<Schema.Schema.Encoded<Self>>>, Schema.Schema.Context<Self>> {
40
+ export interface Obj<T, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends internal.TypeMeta, EchoSchemaKind<internal.EntityKind.Object>, Schema.AnnotableClass<Obj<T, Fields>, Entity.OfKind<typeof Entity.Kind.Object> & T, Schema.Simplify<ObjModule.BaseObjJson & ToMutable<T>>, never> {
41
+ /**
42
+ * The fields defined in the original struct schema.
43
+ * Allows accessing field definitions for introspection.
44
+ */
45
+ readonly fields: Fields;
36
46
  }
37
47
  /**
38
- * Object schema.
48
+ * Structural base type for any ECHO object schema.
49
+ * Accepts both static schemas (created with Type.object()) and EchoSchema.
50
+ * NOTE: Does not include the brand symbol to avoid TS4053 declaration portability issues.
51
+ * Use Type.isObjectSchema() for runtime type guards.
39
52
  */
40
- export declare const Obj: {
41
- (opts: EchoSchema.TypeMeta): <Self extends Schema.Schema.Any>(self: Self) => obj<Self>;
53
+ type ObjectSchemaBase = Schema.Schema.AnyNoContext & {
54
+ readonly typename: string;
55
+ readonly version: string;
42
56
  };
43
57
  /**
44
- * Object schema type definitions.
58
+ * Type that represents any ECHO object schema.
59
+ * Accepts both static schemas (Type.object()) and mutable schemas (EchoSchema).
45
60
  */
46
- export declare namespace Obj {
47
- /**
48
- * Type that represents an arbitrary schema type of an object.
49
- * NOTE: This is not an instance type.
50
- */
51
- type Any = Schema.Schema.AnyNoContext;
52
- }
53
- export interface Expando extends OfKind<EchoSchema.EntityKind.Object> {
54
- [key: string]: any;
55
- }
56
- type ExpandoEncoded = Simplify<ObjJsonProps & {
57
- [key: string]: any;
58
- }>;
59
- export declare const Expando: Schema.Schema<Expando, ExpandoEncoded, never>;
60
- interface RelationJsonProps {
61
- id: string;
62
- [EchoSchema.ATTR_RELATION_SOURCE]: string;
63
- [EchoSchema.ATTR_RELATION_TARGET]: string;
64
- }
61
+ export type AnyObj = ObjectSchemaBase;
65
62
  /**
66
- * Return type of the `Relation` schema constructor.
63
+ * Factory function to create an ECHO object schema.
64
+ * Adds object metadata annotations to an Effect schema.
67
65
  *
68
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
69
- * See Effect's note on interface types.
66
+ * @example
67
+ * ```ts
68
+ * const Person = Schema.Struct({
69
+ * name: Schema.String,
70
+ * }).pipe(Type.object({ typename: 'com.example.type.person', version: '0.1.0' }));
71
+ * ```
72
+ */
73
+ export declare const object: {
74
+ (opts: internal.TypeMeta): <Self extends Schema.Schema.Any>(self: Self) => Obj<Schema.Schema.Type<Self>>;
75
+ };
76
+ export declare const PersistentType: Obj<typeInternal.PersistentSchema>;
77
+ export interface PersistentType extends Schema.Schema.Type<typeof PersistentType> {
78
+ }
79
+ /**
80
+ * TypeScript type for an ECHO relation schema.
81
+ * `T` is the instance type produced by the schema (excluding source/target).
82
+ * `Source` and `Target` are the endpoint types.
83
+ * `Fields` is the optional struct fields type for introspection.
70
84
  */
71
- export interface relation<Self extends Schema.Schema.Any, SourceSchema extends Schema.Schema.Any, TargetSchema extends Schema.Schema.Any> extends EchoSchema.TypeMeta, Schema.AnnotableClass<relation<Self, SourceSchema, TargetSchema>, OfKind<EchoSchema.EntityKind.Relation> & Relation.Endpoints<Schema.Schema.Type<SourceSchema>, Schema.Schema.Type<TargetSchema>> & ToMutable<Schema.Schema.Type<Self>>, Simplify<RelationJsonProps & ToMutable<Schema.Schema.Encoded<Self>>>, Schema.Schema.Context<Self>> {
85
+ export interface Relation<T, Source, Target, Fields extends Schema.Struct.Fields = Schema.Struct.Fields> extends internal.TypeMeta, EchoSchemaKind<internal.EntityKind.Relation>, Schema.AnnotableClass<Relation<T, Source, Target, Fields>, Entity.OfKind<typeof Entity.Kind.Relation> & RelationModule.Endpoints<Source, Target> & T, Schema.Simplify<RelationModule.BaseRelationJson & ToMutable<T>>, never> {
86
+ /**
87
+ * The fields defined in the original struct schema.
88
+ * Allows accessing field definitions for introspection.
89
+ */
90
+ readonly fields: Fields;
72
91
  }
73
92
  /**
74
- * Relation schema.
93
+ * Structural base type for any ECHO relation schema.
94
+ * Accepts static schemas (created with Type.relation()).
95
+ * NOTE: Does not include the brand symbol to avoid TS4053 declaration portability issues.
96
+ * Use Type.isRelationSchema() for runtime type guards.
75
97
  */
76
- export declare const Relation: {
77
- <Source extends Schema.Schema.AnyNoContext, Target extends Schema.Schema.AnyNoContext>(opts: EchoSchema.EchoRelationOptions<Source, Target>): <Self extends Schema.Schema.Any>(self: Self) => relation<Self, Source, Target>;
98
+ type RelationSchemaBase = Schema.Schema.AnyNoContext & {
99
+ readonly typename: string;
100
+ readonly version: string;
78
101
  };
79
102
  /**
80
- * Relation schema type definitions.
103
+ * Type that represents any ECHO relation schema.
104
+ * Accepts static schemas (Type.relation()).
81
105
  */
82
- export declare namespace Relation {
83
- /**
84
- * Type that represents an arbitrary schema type of a relation.
85
- * NOTE: This is not an instance type.
86
- */
87
- type Any = Schema.Schema.AnyNoContext;
88
- /**
89
- * Get relation source type.
90
- */
91
- type Source<A> = A extends Relation.Endpoints<infer S, infer _T> ? S : never;
92
- /**
93
- * Get relation target type.
94
- */
95
- type Target<A> = A extends Relation.Endpoints<infer _S, infer T> ? T : never;
96
- type Endpoints<Source, Target> = {
97
- [RelationModule.Source]: Source;
98
- [RelationModule.Target]: Target;
99
- };
100
- }
106
+ export type AnyRelation = RelationSchemaBase;
101
107
  /**
102
- * Return type of the `Ref` schema constructor.
108
+ * Factory function to create an ECHO relation schema.
109
+ * Adds relation metadata annotations to an Effect schema.
103
110
  *
104
- * This typedef avoids `TS4023` error (name from external module cannot be used named).
105
- * See Effect's note on interface types.
111
+ * @example
112
+ * ```ts
113
+ * const WorksFor = Schema.Struct({
114
+ * role: Schema.String,
115
+ * }).pipe(Type.relation({
116
+ * typename: 'com.example.type.works-for',
117
+ * version: '0.1.0',
118
+ * source: Person,
119
+ * target: Company,
120
+ * }));
121
+ * ```
122
+ */
123
+ export declare const relation: {
124
+ <SourceSchema extends Schema.Schema.AnyNoContext, TargetSchema extends Schema.Schema.AnyNoContext>(opts: internal.EchoRelationSchemaOptions<SourceSchema, TargetSchema>): <Self extends Schema.Schema.Any>(self: Self) => Relation<Schema.Schema.Type<Self>, Schema.Schema.Type<SourceSchema>, Schema.Schema.Type<TargetSchema>>;
125
+ };
126
+ /**
127
+ * Type alias for any ECHO entity schema (object or relation).
128
+ * Use this in type annotations for schema parameters.
106
129
  */
107
- export interface ref<TargetSchema extends Schema.Schema.Any> extends EchoSchema.Ref$<Schema.Schema.Type<TargetSchema>> {
108
- }
130
+ export type AnyEntity = AnyObj | AnyRelation;
109
131
  /**
110
- * Ref schema.
132
+ * Type guard to check if a schema is an object schema.
133
+ * NOTE: This checks SCHEMAS, not instances. Use Obj.isObject for instances.
111
134
  */
112
- export declare const Ref: <S extends Obj.Any>(schema: S) => ref<S>;
113
- export interface Ref<T> extends Schema.SchemaClass<EchoSchema.Ref<T>, EncodedReference> {
114
- }
115
- export declare namespace Ref {
116
- /**
117
- * Type that represents an arbitrary schema type of a reference.
118
- * NOTE: This is not an instance type.
119
- */
120
- type Any = Schema.Schema<EchoSchema.Ref<any>, EncodedReference>;
121
- }
135
+ export declare const isObjectSchema: (schema: AnyEntity) => schema is AnyObj;
136
+ /**
137
+ * Type guard to check if a schema is a relation schema.
138
+ * NOTE: This checks SCHEMAS, not instances. Use Relation.isRelation for instances.
139
+ */
140
+ export declare const isRelationSchema: (schema: AnyEntity) => schema is AnyRelation;
141
+ /**
142
+ * Type that represents any Ref schema (with unknown target type).
143
+ * This is a schema type, not an instance type.
144
+ */
145
+ export type AnyRef = Schema.Schema<internal.Ref<any>, EncodedReference>;
122
146
  /**
123
147
  * Gets the full DXN of the schema.
124
148
  * Will include the version if it's a `type` DXN.
125
- * @example "dxn:example.com/type/Person:0.1.0"
149
+ * @example "dxn:com.example.type.person:0.1.0"
126
150
  * @example "dxn:echo:SSSSSSSSSS:XXXXXXXXXXXXX"
127
151
  */
128
- export declare const getDXN: (schema: Obj.Any | Relation.Any) => Keys.DXN | undefined;
152
+ export declare const getDXN: (schema: AnyEntity) => DXN | undefined;
129
153
  /**
130
154
  * @param schema - Schema to get the typename from.
131
- * @returns The typename of the schema. Example: `example.com/type/Person`.
155
+ * @returns The typename of the schema. Example: `com.example.type.person`.
132
156
  */
133
- export declare const getTypename: (schema: Obj.Any | Relation.Any) => string;
157
+ export declare const getTypename: (schema: AnyEntity) => string;
134
158
  /**
135
159
  * Gets the version of the schema.
136
160
  * @example 0.1.0
137
161
  */
138
- export declare const getVersion: (schema: Obj.Any | Relation.Any) => string;
162
+ export declare const getVersion: (schema: AnyEntity) => string;
139
163
  /**
140
164
  * @returns True if the schema is mutable.
141
165
  */
142
- export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is EchoSchema.EchoSchema;
166
+ export declare const isMutable: (schema: Schema.Schema.AnyNoContext) => schema is internal.EchoSchema;
143
167
  /**
144
168
  * ECHO type metadata.
145
169
  */
146
- export type Meta = EchoSchema.TypeAnnotation;
170
+ export type Meta = internal.TypeAnnotation;
147
171
  /**
148
172
  * Gets the meta data of the schema.
149
173
  */
150
- export declare const getMeta: (schema: Obj.Any | Relation.Any) => Meta | undefined;
151
- export { SpaceId, ObjectId, DXN } from '@dxos/keys';
152
- export { Format, JsonSchemaType as JsonSchema, toEffectSchema, toJsonSchema } from '@dxos/echo-schema';
174
+ export declare const getMeta: (schema: AnyEntity) => Meta | undefined;
175
+ export {};
153
176
  //# 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":""}
@@ -0,0 +1,68 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import { QueryAST } from '@dxos/echo-protocol';
3
+ import { JsonPath } from '@dxos/effect';
4
+ import * as internal from './internal';
5
+ import * as Obj from './Obj';
6
+ import * as Type from './Type';
7
+ /**
8
+ * Stored field metadata (e.g., for UX).
9
+ */
10
+ export declare const FieldSchema: Schema.Struct<{
11
+ id: typeof Schema.String;
12
+ path: Schema.Schema<JsonPath, JsonPath, never>;
13
+ visible: Schema.optional<typeof Schema.Boolean>;
14
+ referencePath: Schema.optional<Schema.Schema<JsonPath, JsonPath, never>>;
15
+ }>;
16
+ export type FieldType = Schema.Schema.Type<typeof FieldSchema>;
17
+ export declare const KeyValueProps: Schema.Record$<typeof Schema.String, typeof Schema.Any>;
18
+ export declare const createFieldId: () => string;
19
+ export declare const Projection: Schema.Struct<{
20
+ /**
21
+ * Optional schema override used to customize the underlying schema.
22
+ */
23
+ schema: Schema.optional<Schema.Schema<internal.JsonSchemaType, internal.JsonSchemaType, never>>;
24
+ /**
25
+ * UX metadata associated with displayed fields (in table, form, etc.)
26
+ */
27
+ fields: Schema.Array$<Schema.Struct<{
28
+ id: typeof Schema.String;
29
+ path: Schema.Schema<JsonPath, JsonPath, never>;
30
+ visible: Schema.optional<typeof Schema.Boolean>;
31
+ referencePath: Schema.optional<Schema.Schema<JsonPath, JsonPath, never>>;
32
+ }>>;
33
+ /**
34
+ * The id for the field used to pivot the view.
35
+ * E.g., the field to use for kanban columns or the field to use for map coordinates.
36
+ */
37
+ pivotFieldId: Schema.optional<typeof Schema.String>;
38
+ }>;
39
+ export type Projection = Schema.Schema.Type<typeof Projection>;
40
+ /**
41
+ * Views are generated or user-defined projections of a schema's properties.
42
+ * They are used to configure the visual representation of the data.
43
+ */
44
+ declare const ViewSchema: Type.Obj<{
45
+ readonly query: {
46
+ readonly ast: QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryHierarchyTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause | QueryAST.QueryLimitClause | QueryAST.QueryFromClause;
47
+ readonly raw?: string | undefined;
48
+ };
49
+ readonly projection: {
50
+ readonly schema?: internal.JsonSchemaType | undefined;
51
+ readonly fields: readonly {
52
+ readonly id: string;
53
+ readonly path: JsonPath;
54
+ readonly visible?: boolean | undefined;
55
+ readonly referencePath?: JsonPath | undefined;
56
+ }[];
57
+ readonly pivotFieldId?: string | undefined;
58
+ };
59
+ }, Schema.Struct.Fields>;
60
+ export interface View extends Schema.Schema.Type<typeof ViewSchema> {
61
+ }
62
+ /**
63
+ * View instance type.
64
+ */
65
+ export declare const View: Type.Obj<View>;
66
+ export declare const make: (props: Partial<Obj.MakeProps<typeof View>>) => View;
67
+ export {};
68
+ //# sourceMappingURL=View.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../../src/View.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKxC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;EAOtB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,eAAO,MAAM,aAAa,yDAA2D,CAAC;AAEtF,eAAO,MAAM,aAAa,cAAsC,CAAC;AAEjE,eAAO,MAAM,UAAU;IACrB;;OAEG;;IAGH;;OAEG;;;;;;;IAIH;;;OAGG;;EAEH,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/D;;;GAGG;AACH,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;wBAwBf,CAAC;AAEF,MAAM,WAAW,IAAK,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC;CAAG;AAEtE;;GAEG;AAMH,eAAO,MAAM,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAqB,CAAC;AAEtD,eAAO,MAAM,IAAI,GAAI,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,CAAC,KAAG,IAMjE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=hierarchy.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hierarchy.test.d.ts","sourceRoot":"","sources":["../../../src/hierarchy.test.ts"],"names":[],"mappings":""}
@@ -1,9 +1,27 @@
1
+ export { QueryAST } from '@dxos/echo-protocol';
2
+ export { DXN } from '@dxos/keys';
3
+ export * as Annotation from './Annotation';
4
+ export * as Database from './Database';
5
+ export * as Entity from './Entity';
6
+ export * as Err from './Err';
7
+ export * as Feed from './Feed';
8
+ export * as Filter from './Filter';
9
+ export * as Format from './Format';
10
+ export * as Hypergraph from './Hypergraph';
11
+ export * as JsonSchema from './JsonSchema';
1
12
  export * as Key from './Key';
13
+ export * as Migration from './Migration';
2
14
  export * as Obj from './Obj';
15
+ export * as Order from './Order';
16
+ export * as Query from './Query';
17
+ export * as QueryResult from './QueryResult';
3
18
  export * as Ref from './Ref';
4
19
  export * as Relation from './Relation';
20
+ export * as SchemaRegistry from './SchemaRegistry';
21
+ export * as Tag from './Tag';
5
22
  export * as Type from './Type';
6
- export { DXN } from '@dxos/keys';
7
- export { Filter, Query } from './query';
8
- export { type Live } from '@dxos/live-object';
23
+ export * as Collection from './Collection';
24
+ export * as View from './View';
25
+ export * as Dataset from './Dataset';
26
+ export * as Extension from './Extension';
9
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,cAAc,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC"}