@fluidframework/tree 2.0.0-dev-rc.1.0.0.224419

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 (2212) hide show
  1. package/.dependency-cruiser-known-violations.json +111 -0
  2. package/.dependency-cruiser.js +442 -0
  3. package/.eslintrc.js +34 -0
  4. package/.mocharc.js +13 -0
  5. package/.vscode/Tree.code-workspace +15 -0
  6. package/.vscode/extensions.json +7 -0
  7. package/.vscode/launch.json +16 -0
  8. package/.vscode/settings.json +16 -0
  9. package/CHANGELOG.md +302 -0
  10. package/DEV.md +3 -0
  11. package/LICENSE +21 -0
  12. package/README.md +388 -0
  13. package/api-extractor-lint.json +13 -0
  14. package/api-extractor.json +4 -0
  15. package/api-report/tree.api.md +2022 -0
  16. package/dist/class-tree/index.d.ts +15 -0
  17. package/dist/class-tree/index.d.ts.map +1 -0
  18. package/dist/class-tree/index.js +57 -0
  19. package/dist/class-tree/index.js.map +1 -0
  20. package/dist/class-tree/integerIndexable.d.ts +31 -0
  21. package/dist/class-tree/integerIndexable.d.ts.map +1 -0
  22. package/dist/class-tree/integerIndexable.js +97 -0
  23. package/dist/class-tree/integerIndexable.js.map +1 -0
  24. package/dist/class-tree/internal.d.ts +6 -0
  25. package/dist/class-tree/internal.d.ts.map +1 -0
  26. package/dist/class-tree/internal.js +12 -0
  27. package/dist/class-tree/internal.js.map +1 -0
  28. package/dist/class-tree/schemaCreationUtilities.d.ts +96 -0
  29. package/dist/class-tree/schemaCreationUtilities.d.ts.map +1 -0
  30. package/dist/class-tree/schemaCreationUtilities.js +137 -0
  31. package/dist/class-tree/schemaCreationUtilities.js.map +1 -0
  32. package/dist/class-tree/schemaFactory.d.ts +225 -0
  33. package/dist/class-tree/schemaFactory.d.ts.map +1 -0
  34. package/dist/class-tree/schemaFactory.js +330 -0
  35. package/dist/class-tree/schemaFactory.js.map +1 -0
  36. package/dist/class-tree/schemaFactoryRecursive.d.ts +41 -0
  37. package/dist/class-tree/schemaFactoryRecursive.d.ts.map +1 -0
  38. package/dist/class-tree/schemaFactoryRecursive.js +66 -0
  39. package/dist/class-tree/schemaFactoryRecursive.js.map +1 -0
  40. package/dist/class-tree/schemaTypes.d.ts +237 -0
  41. package/dist/class-tree/schemaTypes.d.ts.map +1 -0
  42. package/dist/class-tree/schemaTypes.js +71 -0
  43. package/dist/class-tree/schemaTypes.js.map +1 -0
  44. package/dist/class-tree/testRecursiveDomain.d.ts +28 -0
  45. package/dist/class-tree/testRecursiveDomain.d.ts.map +1 -0
  46. package/dist/class-tree/testRecursiveDomain.js +40 -0
  47. package/dist/class-tree/testRecursiveDomain.js.map +1 -0
  48. package/dist/class-tree/toFlexSchema.d.ts +58 -0
  49. package/dist/class-tree/toFlexSchema.d.ts.map +1 -0
  50. package/dist/class-tree/toFlexSchema.js +207 -0
  51. package/dist/class-tree/toFlexSchema.js.map +1 -0
  52. package/dist/class-tree/tree.d.ts +98 -0
  53. package/dist/class-tree/tree.d.ts.map +1 -0
  54. package/dist/class-tree/tree.js +46 -0
  55. package/dist/class-tree/tree.js.map +1 -0
  56. package/dist/class-tree/treeApi.d.ts +69 -0
  57. package/dist/class-tree/treeApi.d.ts.map +1 -0
  58. package/dist/class-tree/treeApi.js +56 -0
  59. package/dist/class-tree/treeApi.js.map +1 -0
  60. package/dist/codec/codec.d.ts +214 -0
  61. package/dist/codec/codec.d.ts.map +1 -0
  62. package/dist/codec/codec.js +168 -0
  63. package/dist/codec/codec.js.map +1 -0
  64. package/dist/codec/discriminatedUnions.d.ts +82 -0
  65. package/dist/codec/discriminatedUnions.d.ts.map +1 -0
  66. package/dist/codec/discriminatedUnions.js +91 -0
  67. package/dist/codec/discriminatedUnions.js.map +1 -0
  68. package/dist/codec/index.d.ts +8 -0
  69. package/dist/codec/index.d.ts.map +1 -0
  70. package/dist/codec/index.js +19 -0
  71. package/dist/codec/index.js.map +1 -0
  72. package/dist/codec/noopValidator.d.ts +13 -0
  73. package/dist/codec/noopValidator.d.ts.map +1 -0
  74. package/dist/codec/noopValidator.js +17 -0
  75. package/dist/codec/noopValidator.js.map +1 -0
  76. package/dist/core/change-family/changeFamily.d.ts +32 -0
  77. package/dist/core/change-family/changeFamily.d.ts.map +1 -0
  78. package/dist/core/change-family/changeFamily.js +7 -0
  79. package/dist/core/change-family/changeFamily.js.map +1 -0
  80. package/dist/core/change-family/editBuilder.d.ts +19 -0
  81. package/dist/core/change-family/editBuilder.d.ts.map +1 -0
  82. package/dist/core/change-family/editBuilder.js +25 -0
  83. package/dist/core/change-family/editBuilder.js.map +1 -0
  84. package/dist/core/change-family/index.d.ts +7 -0
  85. package/dist/core/change-family/index.d.ts.map +1 -0
  86. package/dist/core/change-family/index.js +10 -0
  87. package/dist/core/change-family/index.js.map +1 -0
  88. package/dist/core/forest/editableForest.d.ts +54 -0
  89. package/dist/core/forest/editableForest.d.ts.map +1 -0
  90. package/dist/core/forest/editableForest.js +27 -0
  91. package/dist/core/forest/editableForest.js.map +1 -0
  92. package/dist/core/forest/forest.d.ts +200 -0
  93. package/dist/core/forest/forest.d.ts.map +1 -0
  94. package/dist/core/forest/forest.js +66 -0
  95. package/dist/core/forest/forest.js.map +1 -0
  96. package/dist/core/forest/index.d.ts +7 -0
  97. package/dist/core/forest/index.d.ts.map +1 -0
  98. package/dist/core/forest/index.js +15 -0
  99. package/dist/core/forest/index.js.map +1 -0
  100. package/dist/core/index.d.ts +12 -0
  101. package/dist/core/index.d.ts.map +1 -0
  102. package/dist/core/index.js +106 -0
  103. package/dist/core/index.js.map +1 -0
  104. package/dist/core/rebase/changeRebaser.d.ts +132 -0
  105. package/dist/core/rebase/changeRebaser.d.ts.map +1 -0
  106. package/dist/core/rebase/changeRebaser.js +34 -0
  107. package/dist/core/rebase/changeRebaser.js.map +1 -0
  108. package/dist/core/rebase/index.d.ts +9 -0
  109. package/dist/core/rebase/index.d.ts.map +1 -0
  110. package/dist/core/rebase/index.js +32 -0
  111. package/dist/core/rebase/index.js.map +1 -0
  112. package/dist/core/rebase/types.d.ts +93 -0
  113. package/dist/core/rebase/types.d.ts.map +1 -0
  114. package/dist/core/rebase/types.js +59 -0
  115. package/dist/core/rebase/types.js.map +1 -0
  116. package/dist/core/rebase/utils.d.ts +215 -0
  117. package/dist/core/rebase/utils.d.ts.map +1 -0
  118. package/dist/core/rebase/utils.js +297 -0
  119. package/dist/core/rebase/utils.js.map +1 -0
  120. package/dist/core/rebase/verifyChangeRebaser.d.ts +76 -0
  121. package/dist/core/rebase/verifyChangeRebaser.d.ts.map +1 -0
  122. package/dist/core/rebase/verifyChangeRebaser.js +291 -0
  123. package/dist/core/rebase/verifyChangeRebaser.js.map +1 -0
  124. package/dist/core/revertible/index.d.ts +6 -0
  125. package/dist/core/revertible/index.d.ts.map +1 -0
  126. package/dist/core/revertible/index.js +12 -0
  127. package/dist/core/revertible/index.js.map +1 -0
  128. package/dist/core/revertible/revertible.d.ts +72 -0
  129. package/dist/core/revertible/revertible.d.ts.map +1 -0
  130. package/dist/core/revertible/revertible.js +51 -0
  131. package/dist/core/revertible/revertible.js.map +1 -0
  132. package/dist/core/schema-stored/format.d.ts +97 -0
  133. package/dist/core/schema-stored/format.d.ts.map +1 -0
  134. package/dist/core/schema-stored/format.js +65 -0
  135. package/dist/core/schema-stored/format.js.map +1 -0
  136. package/dist/core/schema-stored/index.d.ts +10 -0
  137. package/dist/core/schema-stored/index.d.ts.map +1 -0
  138. package/dist/core/schema-stored/index.js +47 -0
  139. package/dist/core/schema-stored/index.js.map +1 -0
  140. package/dist/core/schema-stored/schema.d.ts +195 -0
  141. package/dist/core/schema-stored/schema.d.ts.map +1 -0
  142. package/dist/core/schema-stored/schema.js +174 -0
  143. package/dist/core/schema-stored/schema.js.map +1 -0
  144. package/dist/core/schema-stored/storedSchemaRepository.d.ts +71 -0
  145. package/dist/core/schema-stored/storedSchemaRepository.d.ts.map +1 -0
  146. package/dist/core/schema-stored/storedSchemaRepository.js +81 -0
  147. package/dist/core/schema-stored/storedSchemaRepository.js.map +1 -0
  148. package/dist/core/schema-view/index.d.ts +6 -0
  149. package/dist/core/schema-view/index.d.ts.map +1 -0
  150. package/dist/core/schema-view/index.js +12 -0
  151. package/dist/core/schema-view/index.js.map +1 -0
  152. package/dist/core/schema-view/view.d.ts +64 -0
  153. package/dist/core/schema-view/view.d.ts.map +1 -0
  154. package/dist/core/schema-view/view.js +55 -0
  155. package/dist/core/schema-view/view.js.map +1 -0
  156. package/dist/core/tree/anchorSet.d.ts +318 -0
  157. package/dist/core/tree/anchorSet.d.ts.map +1 -0
  158. package/dist/core/tree/anchorSet.js +895 -0
  159. package/dist/core/tree/anchorSet.js.map +1 -0
  160. package/dist/core/tree/cursor.d.ts +358 -0
  161. package/dist/core/tree/cursor.d.ts.map +1 -0
  162. package/dist/core/tree/cursor.js +169 -0
  163. package/dist/core/tree/cursor.js.map +1 -0
  164. package/dist/core/tree/delta.d.ts +241 -0
  165. package/dist/core/tree/delta.d.ts.map +1 -0
  166. package/dist/core/tree/delta.js +7 -0
  167. package/dist/core/tree/delta.js.map +1 -0
  168. package/dist/core/tree/deltaUtil.d.ts +19 -0
  169. package/dist/core/tree/deltaUtil.d.ts.map +1 -0
  170. package/dist/core/tree/deltaUtil.js +82 -0
  171. package/dist/core/tree/deltaUtil.js.map +1 -0
  172. package/dist/core/tree/detachedFieldIndex.d.ts +64 -0
  173. package/dist/core/tree/detachedFieldIndex.d.ts.map +1 -0
  174. package/dist/core/tree/detachedFieldIndex.js +119 -0
  175. package/dist/core/tree/detachedFieldIndex.js.map +1 -0
  176. package/dist/core/tree/detachedFieldIndexCodec.d.ts +8 -0
  177. package/dist/core/tree/detachedFieldIndexCodec.d.ts.map +1 -0
  178. package/dist/core/tree/detachedFieldIndexCodec.js +53 -0
  179. package/dist/core/tree/detachedFieldIndexCodec.js.map +1 -0
  180. package/dist/core/tree/detachedFieldIndexFormat.d.ts +18 -0
  181. package/dist/core/tree/detachedFieldIndexFormat.d.ts.map +1 -0
  182. package/dist/core/tree/detachedFieldIndexFormat.js +25 -0
  183. package/dist/core/tree/detachedFieldIndexFormat.js.map +1 -0
  184. package/dist/core/tree/detachedFieldIndexTypes.d.ts +13 -0
  185. package/dist/core/tree/detachedFieldIndexTypes.d.ts.map +1 -0
  186. package/dist/core/tree/detachedFieldIndexTypes.js +7 -0
  187. package/dist/core/tree/detachedFieldIndexTypes.js.map +1 -0
  188. package/dist/core/tree/index.d.ts +19 -0
  189. package/dist/core/tree/index.d.ts.map +1 -0
  190. package/dist/core/tree/index.js +67 -0
  191. package/dist/core/tree/index.js.map +1 -0
  192. package/dist/core/tree/mapTree.d.ts +22 -0
  193. package/dist/core/tree/mapTree.d.ts.map +1 -0
  194. package/dist/core/tree/mapTree.js +25 -0
  195. package/dist/core/tree/mapTree.js.map +1 -0
  196. package/dist/core/tree/pathTree.d.ts +156 -0
  197. package/dist/core/tree/pathTree.d.ts.map +1 -0
  198. package/dist/core/tree/pathTree.js +99 -0
  199. package/dist/core/tree/pathTree.js.map +1 -0
  200. package/dist/core/tree/persistedTreeTextFormat.d.ts +93 -0
  201. package/dist/core/tree/persistedTreeTextFormat.d.ts.map +1 -0
  202. package/dist/core/tree/persistedTreeTextFormat.js +23 -0
  203. package/dist/core/tree/persistedTreeTextFormat.js.map +1 -0
  204. package/dist/core/tree/sparseTree.d.ts +91 -0
  205. package/dist/core/tree/sparseTree.d.ts.map +1 -0
  206. package/dist/core/tree/sparseTree.js +149 -0
  207. package/dist/core/tree/sparseTree.js.map +1 -0
  208. package/dist/core/tree/treeTextFormat.d.ts +94 -0
  209. package/dist/core/tree/treeTextFormat.d.ts.map +1 -0
  210. package/dist/core/tree/treeTextFormat.js +88 -0
  211. package/dist/core/tree/treeTextFormat.js.map +1 -0
  212. package/dist/core/tree/types.d.ts +145 -0
  213. package/dist/core/tree/types.d.ts.map +1 -0
  214. package/dist/core/tree/types.js +60 -0
  215. package/dist/core/tree/types.js.map +1 -0
  216. package/dist/core/tree/visitDelta.d.ts +135 -0
  217. package/dist/core/tree/visitDelta.d.ts.map +1 -0
  218. package/dist/core/tree/visitDelta.js +304 -0
  219. package/dist/core/tree/visitDelta.js.map +1 -0
  220. package/dist/core/tree/visitPath.d.ts +103 -0
  221. package/dist/core/tree/visitPath.d.ts.map +1 -0
  222. package/dist/core/tree/visitPath.js +3 -0
  223. package/dist/core/tree/visitPath.js.map +1 -0
  224. package/dist/core/tree/visitorUtils.d.ts +37 -0
  225. package/dist/core/tree/visitorUtils.d.ts.map +1 -0
  226. package/dist/core/tree/visitorUtils.js +60 -0
  227. package/dist/core/tree/visitorUtils.js.map +1 -0
  228. package/dist/domains/index.d.ts +9 -0
  229. package/dist/domains/index.d.ts.map +1 -0
  230. package/dist/domains/index.js +23 -0
  231. package/dist/domains/index.js.map +1 -0
  232. package/dist/domains/json/index.d.ts +7 -0
  233. package/dist/domains/json/index.d.ts.map +1 -0
  234. package/dist/domains/json/index.js +16 -0
  235. package/dist/domains/json/index.js.map +1 -0
  236. package/dist/domains/json/jsonCursor.d.ts +18 -0
  237. package/dist/domains/json/jsonCursor.d.ts.map +1 -0
  238. package/dist/domains/json/jsonCursor.js +125 -0
  239. package/dist/domains/json/jsonCursor.js.map +1 -0
  240. package/dist/domains/json/jsonDomainSchema.d.ts +14 -0
  241. package/dist/domains/json/jsonDomainSchema.d.ts.map +1 -0
  242. package/dist/domains/json/jsonDomainSchema.js +24 -0
  243. package/dist/domains/json/jsonDomainSchema.js.map +1 -0
  244. package/dist/domains/leafDomain.d.ts +73 -0
  245. package/dist/domains/leafDomain.d.ts.map +1 -0
  246. package/dist/domains/leafDomain.js +89 -0
  247. package/dist/domains/leafDomain.js.map +1 -0
  248. package/dist/domains/nodeKey/index.d.ts +6 -0
  249. package/dist/domains/nodeKey/index.d.ts.map +1 -0
  250. package/dist/domains/nodeKey/index.js +12 -0
  251. package/dist/domains/nodeKey/index.js.map +1 -0
  252. package/dist/domains/nodeKey/nodeKeySchema.d.ts +30 -0
  253. package/dist/domains/nodeKey/nodeKeySchema.d.ts.map +1 -0
  254. package/dist/domains/nodeKey/nodeKeySchema.js +36 -0
  255. package/dist/domains/nodeKey/nodeKeySchema.js.map +1 -0
  256. package/dist/domains/schemaBuilder.d.ts +190 -0
  257. package/dist/domains/schemaBuilder.d.ts.map +1 -0
  258. package/dist/domains/schemaBuilder.js +204 -0
  259. package/dist/domains/schemaBuilder.js.map +1 -0
  260. package/dist/domains/testRecursiveDomain.d.ts +21 -0
  261. package/dist/domains/testRecursiveDomain.d.ts.map +1 -0
  262. package/dist/domains/testRecursiveDomain.js +42 -0
  263. package/dist/domains/testRecursiveDomain.js.map +1 -0
  264. package/dist/events/events.d.ts +187 -0
  265. package/dist/events/events.d.ts.map +1 -0
  266. package/dist/events/events.js +124 -0
  267. package/dist/events/events.js.map +1 -0
  268. package/dist/events/index.d.ts +6 -0
  269. package/dist/events/index.d.ts.map +1 -0
  270. package/dist/events/index.js +11 -0
  271. package/dist/events/index.js.map +1 -0
  272. package/dist/external-utilities/index.d.ts +6 -0
  273. package/dist/external-utilities/index.d.ts.map +1 -0
  274. package/dist/external-utilities/index.js +10 -0
  275. package/dist/external-utilities/index.js.map +1 -0
  276. package/dist/external-utilities/typeboxValidator.d.ts +18 -0
  277. package/dist/external-utilities/typeboxValidator.d.ts.map +1 -0
  278. package/dist/external-utilities/typeboxValidator.js +30 -0
  279. package/dist/external-utilities/typeboxValidator.js.map +1 -0
  280. package/dist/feature-libraries/chunked-forest/basicChunk.d.ts +111 -0
  281. package/dist/feature-libraries/chunked-forest/basicChunk.d.ts.map +1 -0
  282. package/dist/feature-libraries/chunked-forest/basicChunk.js +460 -0
  283. package/dist/feature-libraries/chunked-forest/basicChunk.js.map +1 -0
  284. package/dist/feature-libraries/chunked-forest/chunk.d.ts +89 -0
  285. package/dist/feature-libraries/chunked-forest/chunk.d.ts.map +1 -0
  286. package/dist/feature-libraries/chunked-forest/chunk.js +28 -0
  287. package/dist/feature-libraries/chunked-forest/chunk.js.map +1 -0
  288. package/dist/feature-libraries/chunked-forest/chunkTree.d.ts +156 -0
  289. package/dist/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -0
  290. package/dist/feature-libraries/chunked-forest/chunkTree.js +357 -0
  291. package/dist/feature-libraries/chunked-forest/chunkTree.js.map +1 -0
  292. package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts +57 -0
  293. package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -0
  294. package/dist/feature-libraries/chunked-forest/chunkedForest.js +300 -0
  295. package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -0
  296. package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts +114 -0
  297. package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts.map +1 -0
  298. package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js +135 -0
  299. package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js.map +1 -0
  300. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +61 -0
  301. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -0
  302. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js +219 -0
  303. package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -0
  304. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +30 -0
  305. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -0
  306. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +53 -0
  307. package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -0
  308. package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts +81 -0
  309. package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts.map +1 -0
  310. package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js +126 -0
  311. package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js.map +1 -0
  312. package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts +32 -0
  313. package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -0
  314. package/dist/feature-libraries/chunked-forest/codec/codecs.js +68 -0
  315. package/dist/feature-libraries/chunked-forest/codec/codecs.js.map +1 -0
  316. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +149 -0
  317. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -0
  318. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js +280 -0
  319. package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -0
  320. package/dist/feature-libraries/chunked-forest/codec/fieldBatch.d.ts +11 -0
  321. package/dist/feature-libraries/chunked-forest/codec/fieldBatch.d.ts.map +1 -0
  322. package/dist/feature-libraries/chunked-forest/codec/fieldBatch.js +7 -0
  323. package/dist/feature-libraries/chunked-forest/codec/fieldBatch.js.map +1 -0
  324. package/dist/feature-libraries/chunked-forest/codec/format.d.ts +208 -0
  325. package/dist/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -0
  326. package/dist/feature-libraries/chunked-forest/codec/format.js +138 -0
  327. package/dist/feature-libraries/chunked-forest/codec/format.js.map +1 -0
  328. package/dist/feature-libraries/chunked-forest/codec/formatGeneric.d.ts +43 -0
  329. package/dist/feature-libraries/chunked-forest/codec/formatGeneric.d.ts.map +1 -0
  330. package/dist/feature-libraries/chunked-forest/codec/formatGeneric.js +45 -0
  331. package/dist/feature-libraries/chunked-forest/codec/formatGeneric.js.map +1 -0
  332. package/dist/feature-libraries/chunked-forest/codec/index.d.ts +8 -0
  333. package/dist/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -0
  334. package/dist/feature-libraries/chunked-forest/codec/index.js +13 -0
  335. package/dist/feature-libraries/chunked-forest/codec/index.js.map +1 -0
  336. package/dist/feature-libraries/chunked-forest/codec/nodeShape.d.ts +23 -0
  337. package/dist/feature-libraries/chunked-forest/codec/nodeShape.d.ts.map +1 -0
  338. package/dist/feature-libraries/chunked-forest/codec/nodeShape.js +94 -0
  339. package/dist/feature-libraries/chunked-forest/codec/nodeShape.js.map +1 -0
  340. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts +28 -0
  341. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts.map +1 -0
  342. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js +99 -0
  343. package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js.map +1 -0
  344. package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts +16 -0
  345. package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts.map +1 -0
  346. package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.js +61 -0
  347. package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.js.map +1 -0
  348. package/dist/feature-libraries/chunked-forest/emptyChunk.d.ts +19 -0
  349. package/dist/feature-libraries/chunked-forest/emptyChunk.d.ts.map +1 -0
  350. package/dist/feature-libraries/chunked-forest/emptyChunk.js +107 -0
  351. package/dist/feature-libraries/chunked-forest/emptyChunk.js.map +1 -0
  352. package/dist/feature-libraries/chunked-forest/index.d.ts +10 -0
  353. package/dist/feature-libraries/chunked-forest/index.d.ts.map +1 -0
  354. package/dist/feature-libraries/chunked-forest/index.js +25 -0
  355. package/dist/feature-libraries/chunked-forest/index.js.map +1 -0
  356. package/dist/feature-libraries/chunked-forest/sequenceChunk.d.ts +26 -0
  357. package/dist/feature-libraries/chunked-forest/sequenceChunk.d.ts.map +1 -0
  358. package/dist/feature-libraries/chunked-forest/sequenceChunk.js +51 -0
  359. package/dist/feature-libraries/chunked-forest/sequenceChunk.js.map +1 -0
  360. package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts +186 -0
  361. package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -0
  362. package/dist/feature-libraries/chunked-forest/uniformChunk.js +397 -0
  363. package/dist/feature-libraries/chunked-forest/uniformChunk.js.map +1 -0
  364. package/dist/feature-libraries/contextuallyTyped.d.ts +212 -0
  365. package/dist/feature-libraries/contextuallyTyped.d.ts.map +1 -0
  366. package/dist/feature-libraries/contextuallyTyped.js +342 -0
  367. package/dist/feature-libraries/contextuallyTyped.js.map +1 -0
  368. package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts +136 -0
  369. package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -0
  370. package/dist/feature-libraries/default-schema/defaultEditBuilder.js +245 -0
  371. package/dist/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -0
  372. package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts +112 -0
  373. package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -0
  374. package/dist/feature-libraries/default-schema/defaultFieldKinds.js +110 -0
  375. package/dist/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -0
  376. package/dist/feature-libraries/default-schema/defaultSchema.d.ts +11 -0
  377. package/dist/feature-libraries/default-schema/defaultSchema.d.ts.map +1 -0
  378. package/dist/feature-libraries/default-schema/defaultSchema.js +16 -0
  379. package/dist/feature-libraries/default-schema/defaultSchema.js.map +1 -0
  380. package/dist/feature-libraries/default-schema/index.d.ts +8 -0
  381. package/dist/feature-libraries/default-schema/index.d.ts.map +1 -0
  382. package/dist/feature-libraries/default-schema/index.js +18 -0
  383. package/dist/feature-libraries/default-schema/index.js.map +1 -0
  384. package/dist/feature-libraries/deltaUtils.d.ts +62 -0
  385. package/dist/feature-libraries/deltaUtils.d.ts.map +1 -0
  386. package/dist/feature-libraries/deltaUtils.js +126 -0
  387. package/dist/feature-libraries/deltaUtils.js.map +1 -0
  388. package/dist/feature-libraries/detachedFieldIndexSummarizer.d.ts +21 -0
  389. package/dist/feature-libraries/detachedFieldIndexSummarizer.d.ts.map +1 -0
  390. package/dist/feature-libraries/detachedFieldIndexSummarizer.js +46 -0
  391. package/dist/feature-libraries/detachedFieldIndexSummarizer.js.map +1 -0
  392. package/dist/feature-libraries/editableTreeBinder.d.ts +325 -0
  393. package/dist/feature-libraries/editableTreeBinder.d.ts.map +1 -0
  394. package/dist/feature-libraries/editableTreeBinder.js +578 -0
  395. package/dist/feature-libraries/editableTreeBinder.js.map +1 -0
  396. package/dist/feature-libraries/fieldGenerator.d.ts +46 -0
  397. package/dist/feature-libraries/fieldGenerator.d.ts.map +1 -0
  398. package/dist/feature-libraries/fieldGenerator.js +14 -0
  399. package/dist/feature-libraries/fieldGenerator.js.map +1 -0
  400. package/dist/feature-libraries/flex-tree/context.d.ts +87 -0
  401. package/dist/feature-libraries/flex-tree/context.d.ts.map +1 -0
  402. package/dist/feature-libraries/flex-tree/context.js +110 -0
  403. package/dist/feature-libraries/flex-tree/context.js.map +1 -0
  404. package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts +793 -0
  405. package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -0
  406. package/dist/feature-libraries/flex-tree/flexTreeTypes.js +57 -0
  407. package/dist/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -0
  408. package/dist/feature-libraries/flex-tree/index.d.ts +11 -0
  409. package/dist/feature-libraries/flex-tree/index.d.ts.map +1 -0
  410. package/dist/feature-libraries/flex-tree/index.js +24 -0
  411. package/dist/feature-libraries/flex-tree/index.js.map +1 -0
  412. package/dist/feature-libraries/flex-tree/lazyEntity.d.ts +49 -0
  413. package/dist/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -0
  414. package/dist/feature-libraries/flex-tree/lazyEntity.js +104 -0
  415. package/dist/feature-libraries/flex-tree/lazyEntity.js.map +1 -0
  416. package/dist/feature-libraries/flex-tree/lazyField.d.ts +87 -0
  417. package/dist/feature-libraries/flex-tree/lazyField.d.ts.map +1 -0
  418. package/dist/feature-libraries/flex-tree/lazyField.js +341 -0
  419. package/dist/feature-libraries/flex-tree/lazyField.js.map +1 -0
  420. package/dist/feature-libraries/flex-tree/lazyNode.d.ts +75 -0
  421. package/dist/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -0
  422. package/dist/feature-libraries/flex-tree/lazyNode.js +426 -0
  423. package/dist/feature-libraries/flex-tree/lazyNode.js.map +1 -0
  424. package/dist/feature-libraries/flex-tree/navigation.d.ts +46 -0
  425. package/dist/feature-libraries/flex-tree/navigation.d.ts.map +1 -0
  426. package/dist/feature-libraries/flex-tree/navigation.js +104 -0
  427. package/dist/feature-libraries/flex-tree/navigation.js.map +1 -0
  428. package/dist/feature-libraries/flex-tree/nodeKeys.d.ts +42 -0
  429. package/dist/feature-libraries/flex-tree/nodeKeys.d.ts.map +1 -0
  430. package/dist/feature-libraries/flex-tree/nodeKeys.js +24 -0
  431. package/dist/feature-libraries/flex-tree/nodeKeys.js.map +1 -0
  432. package/dist/feature-libraries/flex-tree/treeEvents.d.ts +111 -0
  433. package/dist/feature-libraries/flex-tree/treeEvents.d.ts.map +1 -0
  434. package/dist/feature-libraries/flex-tree/treeEvents.js +7 -0
  435. package/dist/feature-libraries/flex-tree/treeEvents.js.map +1 -0
  436. package/dist/feature-libraries/flex-tree/unboxed.d.ts +24 -0
  437. package/dist/feature-libraries/flex-tree/unboxed.d.ts.map +1 -0
  438. package/dist/feature-libraries/flex-tree/unboxed.js +54 -0
  439. package/dist/feature-libraries/flex-tree/unboxed.js.map +1 -0
  440. package/dist/feature-libraries/flex-tree/utilities.d.ts +29 -0
  441. package/dist/feature-libraries/flex-tree/utilities.d.ts.map +1 -0
  442. package/dist/feature-libraries/flex-tree/utilities.js +58 -0
  443. package/dist/feature-libraries/flex-tree/utilities.js.map +1 -0
  444. package/dist/feature-libraries/forest-summary/codec.d.ts +16 -0
  445. package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -0
  446. package/dist/feature-libraries/forest-summary/codec.js +39 -0
  447. package/dist/feature-libraries/forest-summary/codec.js.map +1 -0
  448. package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts +40 -0
  449. package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -0
  450. package/dist/feature-libraries/forest-summary/forestSummarizer.js +112 -0
  451. package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -0
  452. package/dist/feature-libraries/forest-summary/format.d.ts +16 -0
  453. package/dist/feature-libraries/forest-summary/format.d.ts.map +1 -0
  454. package/dist/feature-libraries/forest-summary/format.js +17 -0
  455. package/dist/feature-libraries/forest-summary/format.js.map +1 -0
  456. package/dist/feature-libraries/forest-summary/index.d.ts +6 -0
  457. package/dist/feature-libraries/forest-summary/index.d.ts.map +1 -0
  458. package/dist/feature-libraries/forest-summary/index.js +10 -0
  459. package/dist/feature-libraries/forest-summary/index.js.map +1 -0
  460. package/dist/feature-libraries/incrementalSummarizationUtils.d.ts +20 -0
  461. package/dist/feature-libraries/incrementalSummarizationUtils.d.ts.map +1 -0
  462. package/dist/feature-libraries/incrementalSummarizationUtils.js +7 -0
  463. package/dist/feature-libraries/incrementalSummarizationUtils.js.map +1 -0
  464. package/dist/feature-libraries/index.d.ts +35 -0
  465. package/dist/feature-libraries/index.d.ts.map +1 -0
  466. package/dist/feature-libraries/index.js +181 -0
  467. package/dist/feature-libraries/index.js.map +1 -0
  468. package/dist/feature-libraries/mapTreeCursor.d.ts +19 -0
  469. package/dist/feature-libraries/mapTreeCursor.d.ts.map +1 -0
  470. package/dist/feature-libraries/mapTreeCursor.js +53 -0
  471. package/dist/feature-libraries/mapTreeCursor.js.map +1 -0
  472. package/dist/feature-libraries/memoizedIdRangeAllocator.d.ts +42 -0
  473. package/dist/feature-libraries/memoizedIdRangeAllocator.d.ts.map +1 -0
  474. package/dist/feature-libraries/memoizedIdRangeAllocator.js +75 -0
  475. package/dist/feature-libraries/memoizedIdRangeAllocator.js.map +1 -0
  476. package/dist/feature-libraries/mitigatedChangeFamily.d.ts +22 -0
  477. package/dist/feature-libraries/mitigatedChangeFamily.d.ts.map +1 -0
  478. package/dist/feature-libraries/mitigatedChangeFamily.js +55 -0
  479. package/dist/feature-libraries/mitigatedChangeFamily.js.map +1 -0
  480. package/dist/feature-libraries/modular-schema/comparison.d.ts +63 -0
  481. package/dist/feature-libraries/modular-schema/comparison.d.ts.map +1 -0
  482. package/dist/feature-libraries/modular-schema/comparison.js +203 -0
  483. package/dist/feature-libraries/modular-schema/comparison.js.map +1 -0
  484. package/dist/feature-libraries/modular-schema/crossFieldQueries.d.ts +37 -0
  485. package/dist/feature-libraries/modular-schema/crossFieldQueries.d.ts.map +1 -0
  486. package/dist/feature-libraries/modular-schema/crossFieldQueries.js +29 -0
  487. package/dist/feature-libraries/modular-schema/crossFieldQueries.js.map +1 -0
  488. package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts +140 -0
  489. package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -0
  490. package/dist/feature-libraries/modular-schema/fieldChangeHandler.js +44 -0
  491. package/dist/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -0
  492. package/dist/feature-libraries/modular-schema/fieldKind.d.ts +94 -0
  493. package/dist/feature-libraries/modular-schema/fieldKind.d.ts.map +1 -0
  494. package/dist/feature-libraries/modular-schema/fieldKind.js +101 -0
  495. package/dist/feature-libraries/modular-schema/fieldKind.js.map +1 -0
  496. package/dist/feature-libraries/modular-schema/genericFieldKind.d.ts +27 -0
  497. package/dist/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -0
  498. package/dist/feature-libraries/modular-schema/genericFieldKind.js +168 -0
  499. package/dist/feature-libraries/modular-schema/genericFieldKind.js.map +1 -0
  500. package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts +9 -0
  501. package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -0
  502. package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js +33 -0
  503. package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -0
  504. package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +34 -0
  505. package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -0
  506. package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js +31 -0
  507. package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -0
  508. package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts +23 -0
  509. package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -0
  510. package/dist/feature-libraries/modular-schema/genericFieldKindTypes.js +7 -0
  511. package/dist/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -0
  512. package/dist/feature-libraries/modular-schema/index.d.ts +15 -0
  513. package/dist/feature-libraries/modular-schema/index.d.ts.map +1 -0
  514. package/dist/feature-libraries/modular-schema/index.js +43 -0
  515. package/dist/feature-libraries/modular-schema/index.js.map +1 -0
  516. package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts +12 -0
  517. package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -0
  518. package/dist/feature-libraries/modular-schema/modularChangeCodecs.js +188 -0
  519. package/dist/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -0
  520. package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts +125 -0
  521. package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -0
  522. package/dist/feature-libraries/modular-schema/modularChangeFamily.js +733 -0
  523. package/dist/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -0
  524. package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts +149 -0
  525. package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -0
  526. package/dist/feature-libraries/modular-schema/modularChangeFormat.js +77 -0
  527. package/dist/feature-libraries/modular-schema/modularChangeFormat.js.map +1 -0
  528. package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts +69 -0
  529. package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -0
  530. package/dist/feature-libraries/modular-schema/modularChangeTypes.js +7 -0
  531. package/dist/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -0
  532. package/dist/feature-libraries/multiplicity.d.ts +55 -0
  533. package/dist/feature-libraries/multiplicity.d.ts.map +1 -0
  534. package/dist/feature-libraries/multiplicity.js +59 -0
  535. package/dist/feature-libraries/multiplicity.js.map +1 -0
  536. package/dist/feature-libraries/node-key/index.d.ts +8 -0
  537. package/dist/feature-libraries/node-key/index.d.ts.map +1 -0
  538. package/dist/feature-libraries/node-key/index.js +17 -0
  539. package/dist/feature-libraries/node-key/index.js.map +1 -0
  540. package/dist/feature-libraries/node-key/nodeKey.d.ts +50 -0
  541. package/dist/feature-libraries/node-key/nodeKey.d.ts.map +1 -0
  542. package/dist/feature-libraries/node-key/nodeKey.js +36 -0
  543. package/dist/feature-libraries/node-key/nodeKey.js.map +1 -0
  544. package/dist/feature-libraries/node-key/nodeKeyIndex.d.ts +41 -0
  545. package/dist/feature-libraries/node-key/nodeKeyIndex.d.ts.map +1 -0
  546. package/dist/feature-libraries/node-key/nodeKeyIndex.js +102 -0
  547. package/dist/feature-libraries/node-key/nodeKeyIndex.js.map +1 -0
  548. package/dist/feature-libraries/node-key/nodeKeyManager.d.ts +36 -0
  549. package/dist/feature-libraries/node-key/nodeKeyManager.d.ts.map +1 -0
  550. package/dist/feature-libraries/node-key/nodeKeyManager.js +66 -0
  551. package/dist/feature-libraries/node-key/nodeKeyManager.js.map +1 -0
  552. package/dist/feature-libraries/object-forest/index.d.ts +6 -0
  553. package/dist/feature-libraries/object-forest/index.d.ts.map +1 -0
  554. package/dist/feature-libraries/object-forest/index.js +10 -0
  555. package/dist/feature-libraries/object-forest/index.js.map +1 -0
  556. package/dist/feature-libraries/object-forest/objectForest.d.ts +86 -0
  557. package/dist/feature-libraries/object-forest/objectForest.d.ts.map +1 -0
  558. package/dist/feature-libraries/object-forest/objectForest.js +382 -0
  559. package/dist/feature-libraries/object-forest/objectForest.js.map +1 -0
  560. package/dist/feature-libraries/optional-field/index.d.ts +8 -0
  561. package/dist/feature-libraries/optional-field/index.d.ts.map +1 -0
  562. package/dist/feature-libraries/optional-field/index.js +16 -0
  563. package/dist/feature-libraries/optional-field/index.js.map +1 -0
  564. package/dist/feature-libraries/optional-field/optionalField.d.ts +31 -0
  565. package/dist/feature-libraries/optional-field/optionalField.d.ts.map +1 -0
  566. package/dist/feature-libraries/optional-field/optionalField.js +448 -0
  567. package/dist/feature-libraries/optional-field/optionalField.js.map +1 -0
  568. package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts +38 -0
  569. package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts.map +1 -0
  570. package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.js +26 -0
  571. package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.js.map +1 -0
  572. package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts +55 -0
  573. package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts.map +1 -0
  574. package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.js +7 -0
  575. package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.js.map +1 -0
  576. package/dist/feature-libraries/optional-field/optionalFieldCodecs.d.ts +11 -0
  577. package/dist/feature-libraries/optional-field/optionalFieldCodecs.d.ts.map +1 -0
  578. package/dist/feature-libraries/optional-field/optionalFieldCodecs.js +86 -0
  579. package/dist/feature-libraries/optional-field/optionalFieldCodecs.js.map +1 -0
  580. package/dist/feature-libraries/schema-aware/index.d.ts +6 -0
  581. package/dist/feature-libraries/schema-aware/index.d.ts.map +1 -0
  582. package/dist/feature-libraries/schema-aware/index.js +7 -0
  583. package/dist/feature-libraries/schema-aware/index.js.map +1 -0
  584. package/dist/feature-libraries/schema-aware/schemaAware.d.ts +77 -0
  585. package/dist/feature-libraries/schema-aware/schemaAware.d.ts.map +1 -0
  586. package/dist/feature-libraries/schema-aware/schemaAware.js +9 -0
  587. package/dist/feature-libraries/schema-aware/schemaAware.js.map +1 -0
  588. package/dist/feature-libraries/schema-edits/index.d.ts +8 -0
  589. package/dist/feature-libraries/schema-edits/index.d.ts.map +1 -0
  590. package/dist/feature-libraries/schema-edits/index.js +12 -0
  591. package/dist/feature-libraries/schema-edits/index.js.map +1 -0
  592. package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +9 -0
  593. package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -0
  594. package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js +31 -0
  595. package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -0
  596. package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts +53 -0
  597. package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -0
  598. package/dist/feature-libraries/schema-edits/schemaChangeFormat.js +14 -0
  599. package/dist/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -0
  600. package/dist/feature-libraries/schema-edits/schemaChangeTypes.d.ts +18 -0
  601. package/dist/feature-libraries/schema-edits/schemaChangeTypes.d.ts.map +1 -0
  602. package/dist/feature-libraries/schema-edits/schemaChangeTypes.js +7 -0
  603. package/dist/feature-libraries/schema-edits/schemaChangeTypes.js.map +1 -0
  604. package/dist/feature-libraries/schema-index/codec.d.ts +13 -0
  605. package/dist/feature-libraries/schema-index/codec.d.ts.map +1 -0
  606. package/dist/feature-libraries/schema-index/codec.js +56 -0
  607. package/dist/feature-libraries/schema-index/codec.js.map +1 -0
  608. package/dist/feature-libraries/schema-index/format.d.ts +60 -0
  609. package/dist/feature-libraries/schema-index/format.d.ts.map +1 -0
  610. package/dist/feature-libraries/schema-index/format.js +33 -0
  611. package/dist/feature-libraries/schema-index/format.js.map +1 -0
  612. package/dist/feature-libraries/schema-index/index.d.ts +8 -0
  613. package/dist/feature-libraries/schema-index/index.d.ts.map +1 -0
  614. package/dist/feature-libraries/schema-index/index.js +15 -0
  615. package/dist/feature-libraries/schema-index/index.js.map +1 -0
  616. package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts +41 -0
  617. package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -0
  618. package/dist/feature-libraries/schema-index/schemaSummarizer.js +86 -0
  619. package/dist/feature-libraries/schema-index/schemaSummarizer.js.map +1 -0
  620. package/dist/feature-libraries/schemaBuilder.d.ts +31 -0
  621. package/dist/feature-libraries/schemaBuilder.d.ts.map +1 -0
  622. package/dist/feature-libraries/schemaBuilder.js +40 -0
  623. package/dist/feature-libraries/schemaBuilder.js.map +1 -0
  624. package/dist/feature-libraries/schemaBuilderBase.d.ts +217 -0
  625. package/dist/feature-libraries/schemaBuilderBase.d.ts.map +1 -0
  626. package/dist/feature-libraries/schemaBuilderBase.js +227 -0
  627. package/dist/feature-libraries/schemaBuilderBase.js.map +1 -0
  628. package/dist/feature-libraries/sequence-field/compose.d.ts +45 -0
  629. package/dist/feature-libraries/sequence-field/compose.d.ts.map +1 -0
  630. package/dist/feature-libraries/sequence-field/compose.js +438 -0
  631. package/dist/feature-libraries/sequence-field/compose.js.map +1 -0
  632. package/dist/feature-libraries/sequence-field/format.d.ts +427 -0
  633. package/dist/feature-libraries/sequence-field/format.d.ts.map +1 -0
  634. package/dist/feature-libraries/sequence-field/format.js +78 -0
  635. package/dist/feature-libraries/sequence-field/format.js.map +1 -0
  636. package/dist/feature-libraries/sequence-field/helperTypes.d.ts +34 -0
  637. package/dist/feature-libraries/sequence-field/helperTypes.d.ts.map +1 -0
  638. package/dist/feature-libraries/sequence-field/helperTypes.js +18 -0
  639. package/dist/feature-libraries/sequence-field/helperTypes.js.map +1 -0
  640. package/dist/feature-libraries/sequence-field/index.d.ts +18 -0
  641. package/dist/feature-libraries/sequence-field/index.d.ts.map +1 -0
  642. package/dist/feature-libraries/sequence-field/index.js +41 -0
  643. package/dist/feature-libraries/sequence-field/index.js.map +1 -0
  644. package/dist/feature-libraries/sequence-field/invert.d.ts +19 -0
  645. package/dist/feature-libraries/sequence-field/invert.d.ts.map +1 -0
  646. package/dist/feature-libraries/sequence-field/invert.js +221 -0
  647. package/dist/feature-libraries/sequence-field/invert.js.map +1 -0
  648. package/dist/feature-libraries/sequence-field/markListFactory.d.ts +21 -0
  649. package/dist/feature-libraries/sequence-field/markListFactory.d.ts.map +1 -0
  650. package/dist/feature-libraries/sequence-field/markListFactory.js +55 -0
  651. package/dist/feature-libraries/sequence-field/markListFactory.js.map +1 -0
  652. package/dist/feature-libraries/sequence-field/markQueue.d.ts +30 -0
  653. package/dist/feature-libraries/sequence-field/markQueue.d.ts.map +1 -0
  654. package/dist/feature-libraries/sequence-field/markQueue.js +74 -0
  655. package/dist/feature-libraries/sequence-field/markQueue.js.map +1 -0
  656. package/dist/feature-libraries/sequence-field/moveEffectTable.d.ts +48 -0
  657. package/dist/feature-libraries/sequence-field/moveEffectTable.d.ts.map +1 -0
  658. package/dist/feature-libraries/sequence-field/moveEffectTable.js +253 -0
  659. package/dist/feature-libraries/sequence-field/moveEffectTable.js.map +1 -0
  660. package/dist/feature-libraries/sequence-field/prune.d.ts +8 -0
  661. package/dist/feature-libraries/sequence-field/prune.d.ts.map +1 -0
  662. package/dist/feature-libraries/sequence-field/prune.js +25 -0
  663. package/dist/feature-libraries/sequence-field/prune.js.map +1 -0
  664. package/dist/feature-libraries/sequence-field/rebase.d.ts +26 -0
  665. package/dist/feature-libraries/sequence-field/rebase.d.ts.map +1 -0
  666. package/dist/feature-libraries/sequence-field/rebase.js +619 -0
  667. package/dist/feature-libraries/sequence-field/rebase.js.map +1 -0
  668. package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +9 -0
  669. package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -0
  670. package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js +50 -0
  671. package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -0
  672. package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts +10 -0
  673. package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts.map +1 -0
  674. package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.js +22 -0
  675. package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.js.map +1 -0
  676. package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts +19 -0
  677. package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts.map +1 -0
  678. package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js +19 -0
  679. package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js.map +1 -0
  680. package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +10 -0
  681. package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -0
  682. package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js +239 -0
  683. package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -0
  684. package/dist/feature-libraries/sequence-field/sequenceFieldEditor.d.ts +33 -0
  685. package/dist/feature-libraries/sequence-field/sequenceFieldEditor.d.ts.map +1 -0
  686. package/dist/feature-libraries/sequence-field/sequenceFieldEditor.js +113 -0
  687. package/dist/feature-libraries/sequence-field/sequenceFieldEditor.js.map +1 -0
  688. package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +9 -0
  689. package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -0
  690. package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js +165 -0
  691. package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -0
  692. package/dist/feature-libraries/sequence-field/types.d.ts +182 -0
  693. package/dist/feature-libraries/sequence-field/types.d.ts.map +1 -0
  694. package/dist/feature-libraries/sequence-field/types.js +9 -0
  695. package/dist/feature-libraries/sequence-field/types.js.map +1 -0
  696. package/dist/feature-libraries/sequence-field/utils.d.ts +198 -0
  697. package/dist/feature-libraries/sequence-field/utils.d.ts.map +1 -0
  698. package/dist/feature-libraries/sequence-field/utils.js +977 -0
  699. package/dist/feature-libraries/sequence-field/utils.js.map +1 -0
  700. package/dist/feature-libraries/storedToViewSchema.d.ts +18 -0
  701. package/dist/feature-libraries/storedToViewSchema.d.ts.map +1 -0
  702. package/dist/feature-libraries/storedToViewSchema.js +70 -0
  703. package/dist/feature-libraries/storedToViewSchema.js.map +1 -0
  704. package/dist/feature-libraries/treeCompressionUtils.d.ts +23 -0
  705. package/dist/feature-libraries/treeCompressionUtils.d.ts.map +1 -0
  706. package/dist/feature-libraries/treeCompressionUtils.js +27 -0
  707. package/dist/feature-libraries/treeCompressionUtils.js.map +1 -0
  708. package/dist/feature-libraries/treeCursorUtils.d.ts +101 -0
  709. package/dist/feature-libraries/treeCursorUtils.d.ts.map +1 -0
  710. package/dist/feature-libraries/treeCursorUtils.js +374 -0
  711. package/dist/feature-libraries/treeCursorUtils.js.map +1 -0
  712. package/dist/feature-libraries/treeTextCursor.d.ts +62 -0
  713. package/dist/feature-libraries/treeTextCursor.d.ts.map +1 -0
  714. package/dist/feature-libraries/treeTextCursor.js +104 -0
  715. package/dist/feature-libraries/treeTextCursor.js.map +1 -0
  716. package/dist/feature-libraries/typed-schema/flexList.d.ts +97 -0
  717. package/dist/feature-libraries/typed-schema/flexList.d.ts.map +1 -0
  718. package/dist/feature-libraries/typed-schema/flexList.js +58 -0
  719. package/dist/feature-libraries/typed-schema/flexList.js.map +1 -0
  720. package/dist/feature-libraries/typed-schema/index.d.ts +11 -0
  721. package/dist/feature-libraries/typed-schema/index.d.ts.map +1 -0
  722. package/dist/feature-libraries/typed-schema/index.js +61 -0
  723. package/dist/feature-libraries/typed-schema/index.js.map +1 -0
  724. package/dist/feature-libraries/typed-schema/internal.d.ts +7 -0
  725. package/dist/feature-libraries/typed-schema/internal.d.ts.map +1 -0
  726. package/dist/feature-libraries/typed-schema/internal.js +7 -0
  727. package/dist/feature-libraries/typed-schema/internal.js.map +1 -0
  728. package/dist/feature-libraries/typed-schema/schemaCollection.d.ts +67 -0
  729. package/dist/feature-libraries/typed-schema/schemaCollection.d.ts.map +1 -0
  730. package/dist/feature-libraries/typed-schema/schemaCollection.js +207 -0
  731. package/dist/feature-libraries/typed-schema/schemaCollection.js.map +1 -0
  732. package/dist/feature-libraries/typed-schema/typeUtils.d.ts +22 -0
  733. package/dist/feature-libraries/typed-schema/typeUtils.d.ts.map +1 -0
  734. package/dist/feature-libraries/typed-schema/typeUtils.js +14 -0
  735. package/dist/feature-libraries/typed-schema/typeUtils.js.map +1 -0
  736. package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts +294 -0
  737. package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -0
  738. package/dist/feature-libraries/typed-schema/typedTreeSchema.js +334 -0
  739. package/dist/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -0
  740. package/dist/feature-libraries/typed-schema/view.d.ts +55 -0
  741. package/dist/feature-libraries/typed-schema/view.d.ts.map +1 -0
  742. package/dist/feature-libraries/typed-schema/view.js +117 -0
  743. package/dist/feature-libraries/typed-schema/view.js.map +1 -0
  744. package/dist/feature-libraries/utils.d.ts +9 -0
  745. package/dist/feature-libraries/utils.d.ts.map +1 -0
  746. package/dist/feature-libraries/utils.js +28 -0
  747. package/dist/feature-libraries/utils.js.map +1 -0
  748. package/dist/feature-libraries/valueUtilities.d.ts +21 -0
  749. package/dist/feature-libraries/valueUtilities.d.ts.map +1 -0
  750. package/dist/feature-libraries/valueUtilities.js +70 -0
  751. package/dist/feature-libraries/valueUtilities.js.map +1 -0
  752. package/dist/feature-libraries/versioned/codec.d.ts +11 -0
  753. package/dist/feature-libraries/versioned/codec.d.ts.map +1 -0
  754. package/dist/feature-libraries/versioned/codec.js +31 -0
  755. package/dist/feature-libraries/versioned/codec.js.map +1 -0
  756. package/dist/feature-libraries/versioned/format.d.ts +10 -0
  757. package/dist/feature-libraries/versioned/format.d.ts.map +1 -0
  758. package/dist/feature-libraries/versioned/format.js +12 -0
  759. package/dist/feature-libraries/versioned/format.js.map +1 -0
  760. package/dist/feature-libraries/versioned/index.d.ts +7 -0
  761. package/dist/feature-libraries/versioned/index.d.ts.map +1 -0
  762. package/dist/feature-libraries/versioned/index.js +13 -0
  763. package/dist/feature-libraries/versioned/index.js.map +1 -0
  764. package/dist/index.d.ts +21 -0
  765. package/dist/index.d.ts.map +1 -0
  766. package/dist/index.js +133 -0
  767. package/dist/index.js.map +1 -0
  768. package/dist/internal.d.ts +8 -0
  769. package/dist/internal.d.ts.map +1 -0
  770. package/dist/internal.js +11 -0
  771. package/dist/internal.js.map +1 -0
  772. package/dist/shared-tree/index.d.ts +10 -0
  773. package/dist/shared-tree/index.d.ts.map +1 -0
  774. package/dist/shared-tree/index.js +19 -0
  775. package/dist/shared-tree/index.js.map +1 -0
  776. package/dist/shared-tree/schematizedTree.d.ts +94 -0
  777. package/dist/shared-tree/schematizedTree.d.ts.map +1 -0
  778. package/dist/shared-tree/schematizedTree.js +158 -0
  779. package/dist/shared-tree/schematizedTree.js.map +1 -0
  780. package/dist/shared-tree/sharedTree.d.ts +143 -0
  781. package/dist/shared-tree/sharedTree.d.ts.map +1 -0
  782. package/dist/shared-tree/sharedTree.js +220 -0
  783. package/dist/shared-tree/sharedTree.js.map +1 -0
  784. package/dist/shared-tree/sharedTreeChangeCodecs.d.ts +11 -0
  785. package/dist/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -0
  786. package/dist/shared-tree/sharedTreeChangeCodecs.js +59 -0
  787. package/dist/shared-tree/sharedTreeChangeCodecs.js.map +1 -0
  788. package/dist/shared-tree/sharedTreeChangeFamily.d.ts +25 -0
  789. package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -0
  790. package/dist/shared-tree/sharedTreeChangeFamily.js +120 -0
  791. package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -0
  792. package/dist/shared-tree/sharedTreeChangeFormat.d.ts +178 -0
  793. package/dist/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -0
  794. package/dist/shared-tree/sharedTreeChangeFormat.js +15 -0
  795. package/dist/shared-tree/sharedTreeChangeFormat.js.map +1 -0
  796. package/dist/shared-tree/sharedTreeChangeTypes.d.ts +26 -0
  797. package/dist/shared-tree/sharedTreeChangeTypes.d.ts.map +1 -0
  798. package/dist/shared-tree/sharedTreeChangeTypes.js +7 -0
  799. package/dist/shared-tree/sharedTreeChangeTypes.js.map +1 -0
  800. package/dist/shared-tree/sharedTreeEditBuilder.d.ts +42 -0
  801. package/dist/shared-tree/sharedTreeEditBuilder.d.ts.map +1 -0
  802. package/dist/shared-tree/sharedTreeEditBuilder.js +34 -0
  803. package/dist/shared-tree/sharedTreeEditBuilder.js.map +1 -0
  804. package/dist/shared-tree/treeCheckout.d.ts +228 -0
  805. package/dist/shared-tree/treeCheckout.d.ts.map +1 -0
  806. package/dist/shared-tree/treeCheckout.js +190 -0
  807. package/dist/shared-tree/treeCheckout.js.map +1 -0
  808. package/dist/shared-tree/treeView.d.ts +66 -0
  809. package/dist/shared-tree/treeView.d.ts.map +1 -0
  810. package/dist/shared-tree/treeView.js +33 -0
  811. package/dist/shared-tree/treeView.js.map +1 -0
  812. package/dist/shared-tree-core/branch.d.ts +199 -0
  813. package/dist/shared-tree-core/branch.d.ts.map +1 -0
  814. package/dist/shared-tree-core/branch.js +413 -0
  815. package/dist/shared-tree-core/branch.js.map +1 -0
  816. package/dist/shared-tree-core/editManager.d.ts +126 -0
  817. package/dist/shared-tree-core/editManager.d.ts.map +1 -0
  818. package/dist/shared-tree-core/editManager.js +435 -0
  819. package/dist/shared-tree-core/editManager.js.map +1 -0
  820. package/dist/shared-tree-core/editManagerCodecs.d.ts +9 -0
  821. package/dist/shared-tree-core/editManagerCodecs.d.ts.map +1 -0
  822. package/dist/shared-tree-core/editManagerCodecs.js +52 -0
  823. package/dist/shared-tree-core/editManagerCodecs.js.map +1 -0
  824. package/dist/shared-tree-core/editManagerFormat.d.ts +68 -0
  825. package/dist/shared-tree-core/editManagerFormat.d.ts.map +1 -0
  826. package/dist/shared-tree-core/editManagerFormat.js +58 -0
  827. package/dist/shared-tree-core/editManagerFormat.js.map +1 -0
  828. package/dist/shared-tree-core/editManagerSummarizer.d.ts +25 -0
  829. package/dist/shared-tree-core/editManagerSummarizer.d.ts.map +1 -0
  830. package/dist/shared-tree-core/editManagerSummarizer.js +56 -0
  831. package/dist/shared-tree-core/editManagerSummarizer.js.map +1 -0
  832. package/dist/shared-tree-core/index.d.ts +13 -0
  833. package/dist/shared-tree-core/index.d.ts.map +1 -0
  834. package/dist/shared-tree-core/index.js +25 -0
  835. package/dist/shared-tree-core/index.js.map +1 -0
  836. package/dist/shared-tree-core/messageCodecs.d.ts +9 -0
  837. package/dist/shared-tree-core/messageCodecs.d.ts.map +1 -0
  838. package/dist/shared-tree-core/messageCodecs.js +35 -0
  839. package/dist/shared-tree-core/messageCodecs.js.map +1 -0
  840. package/dist/shared-tree-core/messageFormat.d.ts +30 -0
  841. package/dist/shared-tree-core/messageFormat.d.ts.map +1 -0
  842. package/dist/shared-tree-core/messageFormat.js +16 -0
  843. package/dist/shared-tree-core/messageFormat.js.map +1 -0
  844. package/dist/shared-tree-core/messageTypes.d.ts +10 -0
  845. package/dist/shared-tree-core/messageTypes.d.ts.map +1 -0
  846. package/dist/shared-tree-core/messageTypes.js +7 -0
  847. package/dist/shared-tree-core/messageTypes.js.map +1 -0
  848. package/dist/shared-tree-core/revisionTagCodecs.d.ts +11 -0
  849. package/dist/shared-tree-core/revisionTagCodecs.d.ts.map +1 -0
  850. package/dist/shared-tree-core/revisionTagCodecs.js +17 -0
  851. package/dist/shared-tree-core/revisionTagCodecs.js.map +1 -0
  852. package/dist/shared-tree-core/sharedTreeCore.d.ts +112 -0
  853. package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -0
  854. package/dist/shared-tree-core/sharedTreeCore.js +197 -0
  855. package/dist/shared-tree-core/sharedTreeCore.js.map +1 -0
  856. package/dist/shared-tree-core/transactionStack.d.ts +30 -0
  857. package/dist/shared-tree-core/transactionStack.d.ts.map +1 -0
  858. package/dist/shared-tree-core/transactionStack.js +42 -0
  859. package/dist/shared-tree-core/transactionStack.js.map +1 -0
  860. package/dist/simple-tree/flexNode.d.ts +34 -0
  861. package/dist/simple-tree/flexNode.d.ts.map +1 -0
  862. package/dist/simple-tree/flexNode.js +57 -0
  863. package/dist/simple-tree/flexNode.js.map +1 -0
  864. package/dist/simple-tree/index.d.ts +10 -0
  865. package/dist/simple-tree/index.d.ts.map +1 -0
  866. package/dist/simple-tree/index.js +17 -0
  867. package/dist/simple-tree/index.js.map +1 -0
  868. package/dist/simple-tree/insertable.d.ts +44 -0
  869. package/dist/simple-tree/insertable.d.ts.map +1 -0
  870. package/dist/simple-tree/insertable.js +7 -0
  871. package/dist/simple-tree/insertable.js.map +1 -0
  872. package/dist/simple-tree/objectFactory.d.ts +30 -0
  873. package/dist/simple-tree/objectFactory.d.ts.map +1 -0
  874. package/dist/simple-tree/objectFactory.js +20 -0
  875. package/dist/simple-tree/objectFactory.js.map +1 -0
  876. package/dist/simple-tree/proxies.d.ts +112 -0
  877. package/dist/simple-tree/proxies.d.ts.map +1 -0
  878. package/dist/simple-tree/proxies.js +811 -0
  879. package/dist/simple-tree/proxies.js.map +1 -0
  880. package/dist/simple-tree/rawNode.d.ts +96 -0
  881. package/dist/simple-tree/rawNode.d.ts.map +1 -0
  882. package/dist/simple-tree/rawNode.js +141 -0
  883. package/dist/simple-tree/rawNode.js.map +1 -0
  884. package/dist/simple-tree/toMapTree.d.ts +101 -0
  885. package/dist/simple-tree/toMapTree.d.ts.map +1 -0
  886. package/dist/simple-tree/toMapTree.js +299 -0
  887. package/dist/simple-tree/toMapTree.js.map +1 -0
  888. package/dist/simple-tree/treeListNode.d.ts +60 -0
  889. package/dist/simple-tree/treeListNode.d.ts.map +1 -0
  890. package/dist/simple-tree/treeListNode.js +53 -0
  891. package/dist/simple-tree/treeListNode.js.map +1 -0
  892. package/dist/simple-tree/types.d.ts +243 -0
  893. package/dist/simple-tree/types.d.ts.map +1 -0
  894. package/dist/simple-tree/types.js +21 -0
  895. package/dist/simple-tree/types.js.map +1 -0
  896. package/dist/tree-alpha.d.ts +1789 -0
  897. package/dist/tree-beta.d.ts +1789 -0
  898. package/dist/tree-public.d.ts +728 -0
  899. package/dist/tree-untrimmed.d.ts +6411 -0
  900. package/dist/treeFactory.d.ts +55 -0
  901. package/dist/treeFactory.d.ts.map +1 -0
  902. package/dist/treeFactory.js +85 -0
  903. package/dist/treeFactory.js.map +1 -0
  904. package/dist/tsdoc-metadata.json +11 -0
  905. package/dist/util/brand.d.ts +179 -0
  906. package/dist/util/brand.d.ts.map +1 -0
  907. package/dist/util/brand.js +130 -0
  908. package/dist/util/brand.js.map +1 -0
  909. package/dist/util/brandedMap.d.ts +46 -0
  910. package/dist/util/brandedMap.d.ts.map +1 -0
  911. package/dist/util/brandedMap.js +32 -0
  912. package/dist/util/brandedMap.js.map +1 -0
  913. package/dist/util/idAllocator.d.ts +29 -0
  914. package/dist/util/idAllocator.d.ts.map +1 -0
  915. package/dist/util/idAllocator.js +34 -0
  916. package/dist/util/idAllocator.js.map +1 -0
  917. package/dist/util/index.d.ts +18 -0
  918. package/dist/util/index.d.ts.map +1 -0
  919. package/dist/util/index.js +82 -0
  920. package/dist/util/index.js.map +1 -0
  921. package/dist/util/nestedMap.d.ts +129 -0
  922. package/dist/util/nestedMap.d.ts.map +1 -0
  923. package/dist/util/nestedMap.js +239 -0
  924. package/dist/util/nestedMap.js.map +1 -0
  925. package/dist/util/nestedSet.d.ts +9 -0
  926. package/dist/util/nestedSet.d.ts.map +1 -0
  927. package/dist/util/nestedSet.js +17 -0
  928. package/dist/util/nestedSet.js.map +1 -0
  929. package/dist/util/offsetList.d.ts +22 -0
  930. package/dist/util/offsetList.d.ts.map +1 -0
  931. package/dist/util/offsetList.js +44 -0
  932. package/dist/util/offsetList.js.map +1 -0
  933. package/dist/util/rangeMap.d.ts +40 -0
  934. package/dist/util/rangeMap.d.ts.map +1 -0
  935. package/dist/util/rangeMap.js +103 -0
  936. package/dist/util/rangeMap.js.map +1 -0
  937. package/dist/util/referenceCounting.d.ts +30 -0
  938. package/dist/util/referenceCounting.d.ts.map +1 -0
  939. package/dist/util/referenceCounting.js +34 -0
  940. package/dist/util/referenceCounting.js.map +1 -0
  941. package/dist/util/stackyIterator.d.ts +20 -0
  942. package/dist/util/stackyIterator.d.ts.map +1 -0
  943. package/dist/util/stackyIterator.js +49 -0
  944. package/dist/util/stackyIterator.js.map +1 -0
  945. package/dist/util/transactionResult.d.ts +20 -0
  946. package/dist/util/transactionResult.d.ts.map +1 -0
  947. package/dist/util/transactionResult.js +24 -0
  948. package/dist/util/transactionResult.js.map +1 -0
  949. package/dist/util/typeCheck.d.ts +183 -0
  950. package/dist/util/typeCheck.d.ts.map +1 -0
  951. package/dist/util/typeCheck.js +7 -0
  952. package/dist/util/typeCheck.js.map +1 -0
  953. package/dist/util/typeCheckTests.d.ts +60 -0
  954. package/dist/util/typeCheckTests.d.ts.map +1 -0
  955. package/dist/util/typeCheckTests.js +7 -0
  956. package/dist/util/typeCheckTests.js.map +1 -0
  957. package/dist/util/typeUtils.d.ts +129 -0
  958. package/dist/util/typeUtils.d.ts.map +1 -0
  959. package/dist/util/typeUtils.js +11 -0
  960. package/dist/util/typeUtils.js.map +1 -0
  961. package/dist/util/utils.d.ts +287 -0
  962. package/dist/util/utils.d.ts.map +1 -0
  963. package/dist/util/utils.js +376 -0
  964. package/dist/util/utils.js.map +1 -0
  965. package/docs/.attachments/UndoAfterCollab.png +0 -0
  966. package/docs/.attachments/UndoAfterCollabFast.png +0 -0
  967. package/docs/.attachments/UndoDangerZone.drawio +1 -0
  968. package/docs/.attachments/UndoDuringCollab.png +0 -0
  969. package/docs/.attachments/children.drawio.svg +297 -0
  970. package/docs/.attachments/data-model.drawio.svg +654 -0
  971. package/docs/.attachments/explicit-sequence.drawio.svg +180 -0
  972. package/docs/.attachments/implicit-sequence.drawio.svg +106 -0
  973. package/docs/.attachments/root.drawio.svg +32 -0
  974. package/docs/.attachments/scalar-nodes.drawio.svg +87 -0
  975. package/docs/.markdownlint.json +4 -0
  976. package/docs/README.md +22 -0
  977. package/docs/main/cell-model-of-collaborative-editing.md +225 -0
  978. package/docs/main/compatibility.md +149 -0
  979. package/docs/main/data-model.md +191 -0
  980. package/docs/main/indexes-and-branches.md +143 -0
  981. package/docs/main/modular-change-family.md +125 -0
  982. package/docs/main/repair-data.md +275 -0
  983. package/docs/main/schema2.md +141 -0
  984. package/docs/main/semantic-format.md +315 -0
  985. package/docs/main/stored-and-view-schema-options.md +120 -0
  986. package/docs/main/stored-and-view-schema.md +331 -0
  987. package/docs/main/tree-content-apis.md +104 -0
  988. package/docs/main/tree-storage.md +816 -0
  989. package/docs/main/undo.md +191 -0
  990. package/docs/main/v1-undo-example-flow.md +273 -0
  991. package/docs/main/v1-undo.md +591 -0
  992. package/docs/roadmap.md +419 -0
  993. package/docs/wip/anchorInterfaces.ts +81 -0
  994. package/docs/wip/changeset.ts +1239 -0
  995. package/docs/wip/inverse-changes.md +876 -0
  996. package/lib/class-tree/index.d.ts +15 -0
  997. package/lib/class-tree/index.d.ts.map +1 -0
  998. package/lib/class-tree/index.js +18 -0
  999. package/lib/class-tree/index.js.map +1 -0
  1000. package/lib/class-tree/integerIndexable.d.ts +31 -0
  1001. package/lib/class-tree/integerIndexable.d.ts.map +1 -0
  1002. package/lib/class-tree/integerIndexable.js +92 -0
  1003. package/lib/class-tree/integerIndexable.js.map +1 -0
  1004. package/lib/class-tree/internal.d.ts +6 -0
  1005. package/lib/class-tree/internal.d.ts.map +1 -0
  1006. package/lib/class-tree/internal.js +7 -0
  1007. package/lib/class-tree/internal.js.map +1 -0
  1008. package/lib/class-tree/schemaCreationUtilities.d.ts +96 -0
  1009. package/lib/class-tree/schemaCreationUtilities.d.ts.map +1 -0
  1010. package/lib/class-tree/schemaCreationUtilities.js +130 -0
  1011. package/lib/class-tree/schemaCreationUtilities.js.map +1 -0
  1012. package/lib/class-tree/schemaFactory.d.ts +225 -0
  1013. package/lib/class-tree/schemaFactory.d.ts.map +1 -0
  1014. package/lib/class-tree/schemaFactory.js +325 -0
  1015. package/lib/class-tree/schemaFactory.js.map +1 -0
  1016. package/lib/class-tree/schemaFactoryRecursive.d.ts +41 -0
  1017. package/lib/class-tree/schemaFactoryRecursive.d.ts.map +1 -0
  1018. package/lib/class-tree/schemaFactoryRecursive.js +62 -0
  1019. package/lib/class-tree/schemaFactoryRecursive.js.map +1 -0
  1020. package/lib/class-tree/schemaTypes.d.ts +237 -0
  1021. package/lib/class-tree/schemaTypes.d.ts.map +1 -0
  1022. package/lib/class-tree/schemaTypes.js +67 -0
  1023. package/lib/class-tree/schemaTypes.js.map +1 -0
  1024. package/lib/class-tree/testRecursiveDomain.d.ts +28 -0
  1025. package/lib/class-tree/testRecursiveDomain.d.ts.map +1 -0
  1026. package/lib/class-tree/testRecursiveDomain.js +36 -0
  1027. package/lib/class-tree/testRecursiveDomain.js.map +1 -0
  1028. package/lib/class-tree/toFlexSchema.d.ts +58 -0
  1029. package/lib/class-tree/toFlexSchema.d.ts.map +1 -0
  1030. package/lib/class-tree/toFlexSchema.js +195 -0
  1031. package/lib/class-tree/toFlexSchema.js.map +1 -0
  1032. package/lib/class-tree/tree.d.ts +98 -0
  1033. package/lib/class-tree/tree.d.ts.map +1 -0
  1034. package/lib/class-tree/tree.js +41 -0
  1035. package/lib/class-tree/tree.js.map +1 -0
  1036. package/lib/class-tree/treeApi.d.ts +69 -0
  1037. package/lib/class-tree/treeApi.d.ts.map +1 -0
  1038. package/lib/class-tree/treeApi.js +53 -0
  1039. package/lib/class-tree/treeApi.js.map +1 -0
  1040. package/lib/codec/codec.d.ts +214 -0
  1041. package/lib/codec/codec.d.ts.map +1 -0
  1042. package/lib/codec/codec.js +160 -0
  1043. package/lib/codec/codec.js.map +1 -0
  1044. package/lib/codec/discriminatedUnions.d.ts +82 -0
  1045. package/lib/codec/discriminatedUnions.d.ts.map +1 -0
  1046. package/lib/codec/discriminatedUnions.js +87 -0
  1047. package/lib/codec/discriminatedUnions.js.map +1 -0
  1048. package/lib/codec/index.d.ts +8 -0
  1049. package/lib/codec/index.d.ts.map +1 -0
  1050. package/lib/codec/index.js +8 -0
  1051. package/lib/codec/index.js.map +1 -0
  1052. package/lib/codec/noopValidator.d.ts +13 -0
  1053. package/lib/codec/noopValidator.d.ts.map +1 -0
  1054. package/lib/codec/noopValidator.js +14 -0
  1055. package/lib/codec/noopValidator.js.map +1 -0
  1056. package/lib/core/change-family/changeFamily.d.ts +32 -0
  1057. package/lib/core/change-family/changeFamily.d.ts.map +1 -0
  1058. package/lib/core/change-family/changeFamily.js +6 -0
  1059. package/lib/core/change-family/changeFamily.js.map +1 -0
  1060. package/lib/core/change-family/editBuilder.d.ts +19 -0
  1061. package/lib/core/change-family/editBuilder.d.ts.map +1 -0
  1062. package/lib/core/change-family/editBuilder.js +21 -0
  1063. package/lib/core/change-family/editBuilder.js.map +1 -0
  1064. package/lib/core/change-family/index.d.ts +7 -0
  1065. package/lib/core/change-family/index.d.ts.map +1 -0
  1066. package/lib/core/change-family/index.js +6 -0
  1067. package/lib/core/change-family/index.js.map +1 -0
  1068. package/lib/core/forest/editableForest.d.ts +54 -0
  1069. package/lib/core/forest/editableForest.d.ts.map +1 -0
  1070. package/lib/core/forest/editableForest.js +22 -0
  1071. package/lib/core/forest/editableForest.js.map +1 -0
  1072. package/lib/core/forest/forest.d.ts +200 -0
  1073. package/lib/core/forest/forest.d.ts.map +1 -0
  1074. package/lib/core/forest/forest.js +61 -0
  1075. package/lib/core/forest/forest.js.map +1 -0
  1076. package/lib/core/forest/index.d.ts +7 -0
  1077. package/lib/core/forest/index.d.ts.map +1 -0
  1078. package/lib/core/forest/index.js +7 -0
  1079. package/lib/core/forest/index.js.map +1 -0
  1080. package/lib/core/index.d.ts +12 -0
  1081. package/lib/core/index.d.ts.map +1 -0
  1082. package/lib/core/index.js +12 -0
  1083. package/lib/core/index.js.map +1 -0
  1084. package/lib/core/rebase/changeRebaser.d.ts +132 -0
  1085. package/lib/core/rebase/changeRebaser.d.ts.map +1 -0
  1086. package/lib/core/rebase/changeRebaser.js +27 -0
  1087. package/lib/core/rebase/changeRebaser.js.map +1 -0
  1088. package/lib/core/rebase/index.d.ts +9 -0
  1089. package/lib/core/rebase/index.d.ts.map +1 -0
  1090. package/lib/core/rebase/index.js +9 -0
  1091. package/lib/core/rebase/index.js.map +1 -0
  1092. package/lib/core/rebase/types.d.ts +93 -0
  1093. package/lib/core/rebase/types.d.ts.map +1 -0
  1094. package/lib/core/rebase/types.js +51 -0
  1095. package/lib/core/rebase/types.js.map +1 -0
  1096. package/lib/core/rebase/utils.d.ts +215 -0
  1097. package/lib/core/rebase/utils.d.ts.map +1 -0
  1098. package/lib/core/rebase/utils.js +288 -0
  1099. package/lib/core/rebase/utils.js.map +1 -0
  1100. package/lib/core/rebase/verifyChangeRebaser.d.ts +76 -0
  1101. package/lib/core/rebase/verifyChangeRebaser.d.ts.map +1 -0
  1102. package/lib/core/rebase/verifyChangeRebaser.js +287 -0
  1103. package/lib/core/rebase/verifyChangeRebaser.js.map +1 -0
  1104. package/lib/core/revertible/index.d.ts +6 -0
  1105. package/lib/core/revertible/index.d.ts.map +1 -0
  1106. package/lib/core/revertible/index.js +6 -0
  1107. package/lib/core/revertible/index.js.map +1 -0
  1108. package/lib/core/revertible/revertible.d.ts +72 -0
  1109. package/lib/core/revertible/revertible.d.ts.map +1 -0
  1110. package/lib/core/revertible/revertible.js +48 -0
  1111. package/lib/core/revertible/revertible.js.map +1 -0
  1112. package/lib/core/schema-stored/format.d.ts +97 -0
  1113. package/lib/core/schema-stored/format.d.ts.map +1 -0
  1114. package/lib/core/schema-stored/format.js +62 -0
  1115. package/lib/core/schema-stored/format.js.map +1 -0
  1116. package/lib/core/schema-stored/index.d.ts +10 -0
  1117. package/lib/core/schema-stored/index.d.ts.map +1 -0
  1118. package/lib/core/schema-stored/index.js +9 -0
  1119. package/lib/core/schema-stored/index.js.map +1 -0
  1120. package/lib/core/schema-stored/schema.d.ts +195 -0
  1121. package/lib/core/schema-stored/schema.d.ts.map +1 -0
  1122. package/lib/core/schema-stored/schema.js +165 -0
  1123. package/lib/core/schema-stored/schema.js.map +1 -0
  1124. package/lib/core/schema-stored/storedSchemaRepository.d.ts +71 -0
  1125. package/lib/core/schema-stored/storedSchemaRepository.d.ts.map +1 -0
  1126. package/lib/core/schema-stored/storedSchemaRepository.js +73 -0
  1127. package/lib/core/schema-stored/storedSchemaRepository.js.map +1 -0
  1128. package/lib/core/schema-view/index.d.ts +6 -0
  1129. package/lib/core/schema-view/index.d.ts.map +1 -0
  1130. package/lib/core/schema-view/index.js +6 -0
  1131. package/lib/core/schema-view/index.js.map +1 -0
  1132. package/lib/core/schema-view/view.d.ts +64 -0
  1133. package/lib/core/schema-view/view.d.ts.map +1 -0
  1134. package/lib/core/schema-view/view.js +51 -0
  1135. package/lib/core/schema-view/view.js.map +1 -0
  1136. package/lib/core/tree/anchorSet.d.ts +318 -0
  1137. package/lib/core/tree/anchorSet.d.ts.map +1 -0
  1138. package/lib/core/tree/anchorSet.js +890 -0
  1139. package/lib/core/tree/anchorSet.js.map +1 -0
  1140. package/lib/core/tree/cursor.d.ts +358 -0
  1141. package/lib/core/tree/cursor.d.ts.map +1 -0
  1142. package/lib/core/tree/cursor.js +156 -0
  1143. package/lib/core/tree/cursor.js.map +1 -0
  1144. package/lib/core/tree/delta.d.ts +241 -0
  1145. package/lib/core/tree/delta.d.ts.map +1 -0
  1146. package/lib/core/tree/delta.js +6 -0
  1147. package/lib/core/tree/delta.js.map +1 -0
  1148. package/lib/core/tree/deltaUtil.d.ts +19 -0
  1149. package/lib/core/tree/deltaUtil.d.ts.map +1 -0
  1150. package/lib/core/tree/deltaUtil.js +70 -0
  1151. package/lib/core/tree/deltaUtil.js.map +1 -0
  1152. package/lib/core/tree/detachedFieldIndex.d.ts +64 -0
  1153. package/lib/core/tree/detachedFieldIndex.d.ts.map +1 -0
  1154. package/lib/core/tree/detachedFieldIndex.js +115 -0
  1155. package/lib/core/tree/detachedFieldIndex.js.map +1 -0
  1156. package/lib/core/tree/detachedFieldIndexCodec.d.ts +8 -0
  1157. package/lib/core/tree/detachedFieldIndexCodec.d.ts.map +1 -0
  1158. package/lib/core/tree/detachedFieldIndexCodec.js +49 -0
  1159. package/lib/core/tree/detachedFieldIndexCodec.js.map +1 -0
  1160. package/lib/core/tree/detachedFieldIndexFormat.d.ts +18 -0
  1161. package/lib/core/tree/detachedFieldIndexFormat.d.ts.map +1 -0
  1162. package/lib/core/tree/detachedFieldIndexFormat.js +22 -0
  1163. package/lib/core/tree/detachedFieldIndexFormat.js.map +1 -0
  1164. package/lib/core/tree/detachedFieldIndexTypes.d.ts +13 -0
  1165. package/lib/core/tree/detachedFieldIndexTypes.d.ts.map +1 -0
  1166. package/lib/core/tree/detachedFieldIndexTypes.js +6 -0
  1167. package/lib/core/tree/detachedFieldIndexTypes.js.map +1 -0
  1168. package/lib/core/tree/index.d.ts +19 -0
  1169. package/lib/core/tree/index.d.ts.map +1 -0
  1170. package/lib/core/tree/index.js +17 -0
  1171. package/lib/core/tree/index.js.map +1 -0
  1172. package/lib/core/tree/mapTree.d.ts +22 -0
  1173. package/lib/core/tree/mapTree.d.ts.map +1 -0
  1174. package/lib/core/tree/mapTree.js +21 -0
  1175. package/lib/core/tree/mapTree.js.map +1 -0
  1176. package/lib/core/tree/pathTree.d.ts +156 -0
  1177. package/lib/core/tree/pathTree.d.ts.map +1 -0
  1178. package/lib/core/tree/pathTree.js +90 -0
  1179. package/lib/core/tree/pathTree.js.map +1 -0
  1180. package/lib/core/tree/persistedTreeTextFormat.d.ts +93 -0
  1181. package/lib/core/tree/persistedTreeTextFormat.d.ts.map +1 -0
  1182. package/lib/core/tree/persistedTreeTextFormat.js +20 -0
  1183. package/lib/core/tree/persistedTreeTextFormat.js.map +1 -0
  1184. package/lib/core/tree/sparseTree.d.ts +91 -0
  1185. package/lib/core/tree/sparseTree.d.ts.map +1 -0
  1186. package/lib/core/tree/sparseTree.js +144 -0
  1187. package/lib/core/tree/sparseTree.js.map +1 -0
  1188. package/lib/core/tree/treeTextFormat.d.ts +94 -0
  1189. package/lib/core/tree/treeTextFormat.d.ts.map +1 -0
  1190. package/lib/core/tree/treeTextFormat.js +81 -0
  1191. package/lib/core/tree/treeTextFormat.js.map +1 -0
  1192. package/lib/core/tree/types.d.ts +145 -0
  1193. package/lib/core/tree/types.d.ts.map +1 -0
  1194. package/lib/core/tree/types.js +55 -0
  1195. package/lib/core/tree/types.js.map +1 -0
  1196. package/lib/core/tree/visitDelta.d.ts +135 -0
  1197. package/lib/core/tree/visitDelta.d.ts.map +1 -0
  1198. package/lib/core/tree/visitDelta.js +300 -0
  1199. package/lib/core/tree/visitDelta.js.map +1 -0
  1200. package/lib/core/tree/visitPath.d.ts +103 -0
  1201. package/lib/core/tree/visitPath.d.ts.map +1 -0
  1202. package/lib/core/tree/visitPath.js +2 -0
  1203. package/lib/core/tree/visitPath.js.map +1 -0
  1204. package/lib/core/tree/visitorUtils.d.ts +37 -0
  1205. package/lib/core/tree/visitorUtils.d.ts.map +1 -0
  1206. package/lib/core/tree/visitorUtils.js +53 -0
  1207. package/lib/core/tree/visitorUtils.js.map +1 -0
  1208. package/lib/domains/index.d.ts +9 -0
  1209. package/lib/domains/index.d.ts.map +1 -0
  1210. package/lib/domains/index.js +9 -0
  1211. package/lib/domains/index.js.map +1 -0
  1212. package/lib/domains/json/index.d.ts +7 -0
  1213. package/lib/domains/json/index.d.ts.map +1 -0
  1214. package/lib/domains/json/index.js +7 -0
  1215. package/lib/domains/json/index.js.map +1 -0
  1216. package/lib/domains/json/jsonCursor.d.ts +18 -0
  1217. package/lib/domains/json/jsonCursor.d.ts.map +1 -0
  1218. package/lib/domains/json/jsonCursor.js +120 -0
  1219. package/lib/domains/json/jsonCursor.js.map +1 -0
  1220. package/lib/domains/json/jsonDomainSchema.d.ts +14 -0
  1221. package/lib/domains/json/jsonDomainSchema.d.ts.map +1 -0
  1222. package/lib/domains/json/jsonDomainSchema.js +21 -0
  1223. package/lib/domains/json/jsonDomainSchema.js.map +1 -0
  1224. package/lib/domains/leafDomain.d.ts +73 -0
  1225. package/lib/domains/leafDomain.d.ts.map +1 -0
  1226. package/lib/domains/leafDomain.js +86 -0
  1227. package/lib/domains/leafDomain.js.map +1 -0
  1228. package/lib/domains/nodeKey/index.d.ts +6 -0
  1229. package/lib/domains/nodeKey/index.d.ts.map +1 -0
  1230. package/lib/domains/nodeKey/index.js +6 -0
  1231. package/lib/domains/nodeKey/index.js.map +1 -0
  1232. package/lib/domains/nodeKey/nodeKeySchema.d.ts +30 -0
  1233. package/lib/domains/nodeKey/nodeKeySchema.d.ts.map +1 -0
  1234. package/lib/domains/nodeKey/nodeKeySchema.js +33 -0
  1235. package/lib/domains/nodeKey/nodeKeySchema.js.map +1 -0
  1236. package/lib/domains/schemaBuilder.d.ts +190 -0
  1237. package/lib/domains/schemaBuilder.d.ts.map +1 -0
  1238. package/lib/domains/schemaBuilder.js +199 -0
  1239. package/lib/domains/schemaBuilder.js.map +1 -0
  1240. package/lib/domains/testRecursiveDomain.d.ts +21 -0
  1241. package/lib/domains/testRecursiveDomain.d.ts.map +1 -0
  1242. package/lib/domains/testRecursiveDomain.js +39 -0
  1243. package/lib/domains/testRecursiveDomain.js.map +1 -0
  1244. package/lib/events/events.d.ts +187 -0
  1245. package/lib/events/events.d.ts.map +1 -0
  1246. package/lib/events/events.js +119 -0
  1247. package/lib/events/events.js.map +1 -0
  1248. package/lib/events/index.d.ts +6 -0
  1249. package/lib/events/index.d.ts.map +1 -0
  1250. package/lib/events/index.js +6 -0
  1251. package/lib/events/index.js.map +1 -0
  1252. package/lib/external-utilities/index.d.ts +6 -0
  1253. package/lib/external-utilities/index.d.ts.map +1 -0
  1254. package/lib/external-utilities/index.js +6 -0
  1255. package/lib/external-utilities/index.js.map +1 -0
  1256. package/lib/external-utilities/typeboxValidator.d.ts +18 -0
  1257. package/lib/external-utilities/typeboxValidator.d.ts.map +1 -0
  1258. package/lib/external-utilities/typeboxValidator.js +27 -0
  1259. package/lib/external-utilities/typeboxValidator.js.map +1 -0
  1260. package/lib/feature-libraries/chunked-forest/basicChunk.d.ts +111 -0
  1261. package/lib/feature-libraries/chunked-forest/basicChunk.d.ts.map +1 -0
  1262. package/lib/feature-libraries/chunked-forest/basicChunk.js +455 -0
  1263. package/lib/feature-libraries/chunked-forest/basicChunk.js.map +1 -0
  1264. package/lib/feature-libraries/chunked-forest/chunk.d.ts +89 -0
  1265. package/lib/feature-libraries/chunked-forest/chunk.d.ts.map +1 -0
  1266. package/lib/feature-libraries/chunked-forest/chunk.js +24 -0
  1267. package/lib/feature-libraries/chunked-forest/chunk.js.map +1 -0
  1268. package/lib/feature-libraries/chunked-forest/chunkTree.d.ts +156 -0
  1269. package/lib/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -0
  1270. package/lib/feature-libraries/chunked-forest/chunkTree.js +340 -0
  1271. package/lib/feature-libraries/chunked-forest/chunkTree.js.map +1 -0
  1272. package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts +57 -0
  1273. package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -0
  1274. package/lib/feature-libraries/chunked-forest/chunkedForest.js +295 -0
  1275. package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -0
  1276. package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts +114 -0
  1277. package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts.map +1 -0
  1278. package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js +124 -0
  1279. package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js.map +1 -0
  1280. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +61 -0
  1281. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -0
  1282. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js +209 -0
  1283. package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -0
  1284. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +30 -0
  1285. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -0
  1286. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +47 -0
  1287. package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -0
  1288. package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts +81 -0
  1289. package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts.map +1 -0
  1290. package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js +120 -0
  1291. package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js.map +1 -0
  1292. package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts +32 -0
  1293. package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -0
  1294. package/lib/feature-libraries/chunked-forest/codec/codecs.js +63 -0
  1295. package/lib/feature-libraries/chunked-forest/codec/codecs.js.map +1 -0
  1296. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +149 -0
  1297. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -0
  1298. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js +269 -0
  1299. package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -0
  1300. package/lib/feature-libraries/chunked-forest/codec/fieldBatch.d.ts +11 -0
  1301. package/lib/feature-libraries/chunked-forest/codec/fieldBatch.d.ts.map +1 -0
  1302. package/lib/feature-libraries/chunked-forest/codec/fieldBatch.js +6 -0
  1303. package/lib/feature-libraries/chunked-forest/codec/fieldBatch.js.map +1 -0
  1304. package/lib/feature-libraries/chunked-forest/codec/format.d.ts +208 -0
  1305. package/lib/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -0
  1306. package/lib/feature-libraries/chunked-forest/codec/format.js +135 -0
  1307. package/lib/feature-libraries/chunked-forest/codec/format.js.map +1 -0
  1308. package/lib/feature-libraries/chunked-forest/codec/formatGeneric.d.ts +43 -0
  1309. package/lib/feature-libraries/chunked-forest/codec/formatGeneric.d.ts.map +1 -0
  1310. package/lib/feature-libraries/chunked-forest/codec/formatGeneric.js +41 -0
  1311. package/lib/feature-libraries/chunked-forest/codec/formatGeneric.js.map +1 -0
  1312. package/lib/feature-libraries/chunked-forest/codec/index.d.ts +8 -0
  1313. package/lib/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -0
  1314. package/lib/feature-libraries/chunked-forest/codec/index.js +7 -0
  1315. package/lib/feature-libraries/chunked-forest/codec/index.js.map +1 -0
  1316. package/lib/feature-libraries/chunked-forest/codec/nodeShape.d.ts +23 -0
  1317. package/lib/feature-libraries/chunked-forest/codec/nodeShape.d.ts.map +1 -0
  1318. package/lib/feature-libraries/chunked-forest/codec/nodeShape.js +89 -0
  1319. package/lib/feature-libraries/chunked-forest/codec/nodeShape.js.map +1 -0
  1320. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts +28 -0
  1321. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts.map +1 -0
  1322. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js +91 -0
  1323. package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js.map +1 -0
  1324. package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts +16 -0
  1325. package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts.map +1 -0
  1326. package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.js +57 -0
  1327. package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.js.map +1 -0
  1328. package/lib/feature-libraries/chunked-forest/emptyChunk.d.ts +19 -0
  1329. package/lib/feature-libraries/chunked-forest/emptyChunk.d.ts.map +1 -0
  1330. package/lib/feature-libraries/chunked-forest/emptyChunk.js +104 -0
  1331. package/lib/feature-libraries/chunked-forest/emptyChunk.js.map +1 -0
  1332. package/lib/feature-libraries/chunked-forest/index.d.ts +10 -0
  1333. package/lib/feature-libraries/chunked-forest/index.d.ts.map +1 -0
  1334. package/lib/feature-libraries/chunked-forest/index.js +10 -0
  1335. package/lib/feature-libraries/chunked-forest/index.js.map +1 -0
  1336. package/lib/feature-libraries/chunked-forest/sequenceChunk.d.ts +26 -0
  1337. package/lib/feature-libraries/chunked-forest/sequenceChunk.d.ts.map +1 -0
  1338. package/lib/feature-libraries/chunked-forest/sequenceChunk.js +47 -0
  1339. package/lib/feature-libraries/chunked-forest/sequenceChunk.js.map +1 -0
  1340. package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts +186 -0
  1341. package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -0
  1342. package/lib/feature-libraries/chunked-forest/uniformChunk.js +390 -0
  1343. package/lib/feature-libraries/chunked-forest/uniformChunk.js.map +1 -0
  1344. package/lib/feature-libraries/contextuallyTyped.d.ts +212 -0
  1345. package/lib/feature-libraries/contextuallyTyped.d.ts.map +1 -0
  1346. package/lib/feature-libraries/contextuallyTyped.js +324 -0
  1347. package/lib/feature-libraries/contextuallyTyped.js.map +1 -0
  1348. package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts +136 -0
  1349. package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -0
  1350. package/lib/feature-libraries/default-schema/defaultEditBuilder.js +238 -0
  1351. package/lib/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -0
  1352. package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts +112 -0
  1353. package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -0
  1354. package/lib/feature-libraries/default-schema/defaultFieldKinds.js +107 -0
  1355. package/lib/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -0
  1356. package/lib/feature-libraries/default-schema/defaultSchema.d.ts +11 -0
  1357. package/lib/feature-libraries/default-schema/defaultSchema.d.ts.map +1 -0
  1358. package/lib/feature-libraries/default-schema/defaultSchema.js +13 -0
  1359. package/lib/feature-libraries/default-schema/defaultSchema.js.map +1 -0
  1360. package/lib/feature-libraries/default-schema/index.d.ts +8 -0
  1361. package/lib/feature-libraries/default-schema/index.d.ts.map +1 -0
  1362. package/lib/feature-libraries/default-schema/index.js +8 -0
  1363. package/lib/feature-libraries/default-schema/index.js.map +1 -0
  1364. package/lib/feature-libraries/deltaUtils.d.ts +62 -0
  1365. package/lib/feature-libraries/deltaUtils.d.ts.map +1 -0
  1366. package/lib/feature-libraries/deltaUtils.js +117 -0
  1367. package/lib/feature-libraries/deltaUtils.js.map +1 -0
  1368. package/lib/feature-libraries/detachedFieldIndexSummarizer.d.ts +21 -0
  1369. package/lib/feature-libraries/detachedFieldIndexSummarizer.d.ts.map +1 -0
  1370. package/lib/feature-libraries/detachedFieldIndexSummarizer.js +42 -0
  1371. package/lib/feature-libraries/detachedFieldIndexSummarizer.js.map +1 -0
  1372. package/lib/feature-libraries/editableTreeBinder.d.ts +325 -0
  1373. package/lib/feature-libraries/editableTreeBinder.d.ts.map +1 -0
  1374. package/lib/feature-libraries/editableTreeBinder.js +567 -0
  1375. package/lib/feature-libraries/editableTreeBinder.js.map +1 -0
  1376. package/lib/feature-libraries/fieldGenerator.d.ts +46 -0
  1377. package/lib/feature-libraries/fieldGenerator.d.ts.map +1 -0
  1378. package/lib/feature-libraries/fieldGenerator.js +13 -0
  1379. package/lib/feature-libraries/fieldGenerator.js.map +1 -0
  1380. package/lib/feature-libraries/flex-tree/context.d.ts +87 -0
  1381. package/lib/feature-libraries/flex-tree/context.d.ts.map +1 -0
  1382. package/lib/feature-libraries/flex-tree/context.js +105 -0
  1383. package/lib/feature-libraries/flex-tree/context.js.map +1 -0
  1384. package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts +793 -0
  1385. package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -0
  1386. package/lib/feature-libraries/flex-tree/flexTreeTypes.js +52 -0
  1387. package/lib/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -0
  1388. package/lib/feature-libraries/flex-tree/index.d.ts +11 -0
  1389. package/lib/feature-libraries/flex-tree/index.d.ts.map +1 -0
  1390. package/lib/feature-libraries/flex-tree/index.js +8 -0
  1391. package/lib/feature-libraries/flex-tree/index.js.map +1 -0
  1392. package/lib/feature-libraries/flex-tree/lazyEntity.d.ts +49 -0
  1393. package/lib/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -0
  1394. package/lib/feature-libraries/flex-tree/lazyEntity.js +97 -0
  1395. package/lib/feature-libraries/flex-tree/lazyEntity.js.map +1 -0
  1396. package/lib/feature-libraries/flex-tree/lazyField.d.ts +87 -0
  1397. package/lib/feature-libraries/flex-tree/lazyField.d.ts.map +1 -0
  1398. package/lib/feature-libraries/flex-tree/lazyField.js +331 -0
  1399. package/lib/feature-libraries/flex-tree/lazyField.js.map +1 -0
  1400. package/lib/feature-libraries/flex-tree/lazyNode.d.ts +75 -0
  1401. package/lib/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -0
  1402. package/lib/feature-libraries/flex-tree/lazyNode.js +415 -0
  1403. package/lib/feature-libraries/flex-tree/lazyNode.js.map +1 -0
  1404. package/lib/feature-libraries/flex-tree/navigation.d.ts +46 -0
  1405. package/lib/feature-libraries/flex-tree/navigation.d.ts.map +1 -0
  1406. package/lib/feature-libraries/flex-tree/navigation.js +97 -0
  1407. package/lib/feature-libraries/flex-tree/navigation.js.map +1 -0
  1408. package/lib/feature-libraries/flex-tree/nodeKeys.d.ts +42 -0
  1409. package/lib/feature-libraries/flex-tree/nodeKeys.d.ts.map +1 -0
  1410. package/lib/feature-libraries/flex-tree/nodeKeys.js +20 -0
  1411. package/lib/feature-libraries/flex-tree/nodeKeys.js.map +1 -0
  1412. package/lib/feature-libraries/flex-tree/treeEvents.d.ts +111 -0
  1413. package/lib/feature-libraries/flex-tree/treeEvents.d.ts.map +1 -0
  1414. package/lib/feature-libraries/flex-tree/treeEvents.js +6 -0
  1415. package/lib/feature-libraries/flex-tree/treeEvents.js.map +1 -0
  1416. package/lib/feature-libraries/flex-tree/unboxed.d.ts +24 -0
  1417. package/lib/feature-libraries/flex-tree/unboxed.d.ts.map +1 -0
  1418. package/lib/feature-libraries/flex-tree/unboxed.js +48 -0
  1419. package/lib/feature-libraries/flex-tree/unboxed.js.map +1 -0
  1420. package/lib/feature-libraries/flex-tree/utilities.d.ts +29 -0
  1421. package/lib/feature-libraries/flex-tree/utilities.d.ts.map +1 -0
  1422. package/lib/feature-libraries/flex-tree/utilities.js +53 -0
  1423. package/lib/feature-libraries/flex-tree/utilities.js.map +1 -0
  1424. package/lib/feature-libraries/forest-summary/codec.d.ts +16 -0
  1425. package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -0
  1426. package/lib/feature-libraries/forest-summary/codec.js +35 -0
  1427. package/lib/feature-libraries/forest-summary/codec.js.map +1 -0
  1428. package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts +40 -0
  1429. package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -0
  1430. package/lib/feature-libraries/forest-summary/forestSummarizer.js +108 -0
  1431. package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -0
  1432. package/lib/feature-libraries/forest-summary/format.d.ts +16 -0
  1433. package/lib/feature-libraries/forest-summary/format.d.ts.map +1 -0
  1434. package/lib/feature-libraries/forest-summary/format.js +14 -0
  1435. package/lib/feature-libraries/forest-summary/format.js.map +1 -0
  1436. package/lib/feature-libraries/forest-summary/index.d.ts +6 -0
  1437. package/lib/feature-libraries/forest-summary/index.d.ts.map +1 -0
  1438. package/lib/feature-libraries/forest-summary/index.js +6 -0
  1439. package/lib/feature-libraries/forest-summary/index.js.map +1 -0
  1440. package/lib/feature-libraries/incrementalSummarizationUtils.d.ts +20 -0
  1441. package/lib/feature-libraries/incrementalSummarizationUtils.d.ts.map +1 -0
  1442. package/lib/feature-libraries/incrementalSummarizationUtils.js +6 -0
  1443. package/lib/feature-libraries/incrementalSummarizationUtils.js.map +1 -0
  1444. package/lib/feature-libraries/index.d.ts +35 -0
  1445. package/lib/feature-libraries/index.d.ts.map +1 -0
  1446. package/lib/feature-libraries/index.js +34 -0
  1447. package/lib/feature-libraries/index.js.map +1 -0
  1448. package/lib/feature-libraries/mapTreeCursor.d.ts +19 -0
  1449. package/lib/feature-libraries/mapTreeCursor.d.ts.map +1 -0
  1450. package/lib/feature-libraries/mapTreeCursor.js +47 -0
  1451. package/lib/feature-libraries/mapTreeCursor.js.map +1 -0
  1452. package/lib/feature-libraries/memoizedIdRangeAllocator.d.ts +42 -0
  1453. package/lib/feature-libraries/memoizedIdRangeAllocator.d.ts.map +1 -0
  1454. package/lib/feature-libraries/memoizedIdRangeAllocator.js +72 -0
  1455. package/lib/feature-libraries/memoizedIdRangeAllocator.js.map +1 -0
  1456. package/lib/feature-libraries/mitigatedChangeFamily.d.ts +22 -0
  1457. package/lib/feature-libraries/mitigatedChangeFamily.d.ts.map +1 -0
  1458. package/lib/feature-libraries/mitigatedChangeFamily.js +50 -0
  1459. package/lib/feature-libraries/mitigatedChangeFamily.js.map +1 -0
  1460. package/lib/feature-libraries/modular-schema/comparison.d.ts +63 -0
  1461. package/lib/feature-libraries/modular-schema/comparison.d.ts.map +1 -0
  1462. package/lib/feature-libraries/modular-schema/comparison.js +190 -0
  1463. package/lib/feature-libraries/modular-schema/comparison.js.map +1 -0
  1464. package/lib/feature-libraries/modular-schema/crossFieldQueries.d.ts +37 -0
  1465. package/lib/feature-libraries/modular-schema/crossFieldQueries.d.ts.map +1 -0
  1466. package/lib/feature-libraries/modular-schema/crossFieldQueries.js +23 -0
  1467. package/lib/feature-libraries/modular-schema/crossFieldQueries.js.map +1 -0
  1468. package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts +140 -0
  1469. package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -0
  1470. package/lib/feature-libraries/modular-schema/fieldChangeHandler.js +38 -0
  1471. package/lib/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -0
  1472. package/lib/feature-libraries/modular-schema/fieldKind.d.ts +94 -0
  1473. package/lib/feature-libraries/modular-schema/fieldKind.d.ts.map +1 -0
  1474. package/lib/feature-libraries/modular-schema/fieldKind.js +95 -0
  1475. package/lib/feature-libraries/modular-schema/fieldKind.js.map +1 -0
  1476. package/lib/feature-libraries/modular-schema/genericFieldKind.d.ts +27 -0
  1477. package/lib/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -0
  1478. package/lib/feature-libraries/modular-schema/genericFieldKind.js +163 -0
  1479. package/lib/feature-libraries/modular-schema/genericFieldKind.js.map +1 -0
  1480. package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts +9 -0
  1481. package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -0
  1482. package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js +29 -0
  1483. package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -0
  1484. package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +34 -0
  1485. package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -0
  1486. package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js +26 -0
  1487. package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -0
  1488. package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts +23 -0
  1489. package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -0
  1490. package/lib/feature-libraries/modular-schema/genericFieldKindTypes.js +6 -0
  1491. package/lib/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -0
  1492. package/lib/feature-libraries/modular-schema/index.d.ts +15 -0
  1493. package/lib/feature-libraries/modular-schema/index.d.ts.map +1 -0
  1494. package/lib/feature-libraries/modular-schema/index.js +13 -0
  1495. package/lib/feature-libraries/modular-schema/index.js.map +1 -0
  1496. package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts +12 -0
  1497. package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -0
  1498. package/lib/feature-libraries/modular-schema/modularChangeCodecs.js +184 -0
  1499. package/lib/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -0
  1500. package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts +125 -0
  1501. package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -0
  1502. package/lib/feature-libraries/modular-schema/modularChangeFamily.js +723 -0
  1503. package/lib/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -0
  1504. package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts +149 -0
  1505. package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -0
  1506. package/lib/feature-libraries/modular-schema/modularChangeFormat.js +74 -0
  1507. package/lib/feature-libraries/modular-schema/modularChangeFormat.js.map +1 -0
  1508. package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts +69 -0
  1509. package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -0
  1510. package/lib/feature-libraries/modular-schema/modularChangeTypes.js +6 -0
  1511. package/lib/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -0
  1512. package/lib/feature-libraries/multiplicity.d.ts +55 -0
  1513. package/lib/feature-libraries/multiplicity.d.ts.map +1 -0
  1514. package/lib/feature-libraries/multiplicity.js +56 -0
  1515. package/lib/feature-libraries/multiplicity.js.map +1 -0
  1516. package/lib/feature-libraries/node-key/index.d.ts +8 -0
  1517. package/lib/feature-libraries/node-key/index.d.ts.map +1 -0
  1518. package/lib/feature-libraries/node-key/index.js +8 -0
  1519. package/lib/feature-libraries/node-key/index.js.map +1 -0
  1520. package/lib/feature-libraries/node-key/nodeKey.d.ts +50 -0
  1521. package/lib/feature-libraries/node-key/nodeKey.d.ts.map +1 -0
  1522. package/lib/feature-libraries/node-key/nodeKey.js +32 -0
  1523. package/lib/feature-libraries/node-key/nodeKey.js.map +1 -0
  1524. package/lib/feature-libraries/node-key/nodeKeyIndex.d.ts +41 -0
  1525. package/lib/feature-libraries/node-key/nodeKeyIndex.d.ts.map +1 -0
  1526. package/lib/feature-libraries/node-key/nodeKeyIndex.js +98 -0
  1527. package/lib/feature-libraries/node-key/nodeKeyIndex.js.map +1 -0
  1528. package/lib/feature-libraries/node-key/nodeKeyManager.d.ts +36 -0
  1529. package/lib/feature-libraries/node-key/nodeKeyManager.d.ts.map +1 -0
  1530. package/lib/feature-libraries/node-key/nodeKeyManager.js +61 -0
  1531. package/lib/feature-libraries/node-key/nodeKeyManager.js.map +1 -0
  1532. package/lib/feature-libraries/object-forest/index.d.ts +6 -0
  1533. package/lib/feature-libraries/object-forest/index.d.ts.map +1 -0
  1534. package/lib/feature-libraries/object-forest/index.js +6 -0
  1535. package/lib/feature-libraries/object-forest/index.js.map +1 -0
  1536. package/lib/feature-libraries/object-forest/objectForest.d.ts +86 -0
  1537. package/lib/feature-libraries/object-forest/objectForest.d.ts.map +1 -0
  1538. package/lib/feature-libraries/object-forest/objectForest.js +377 -0
  1539. package/lib/feature-libraries/object-forest/objectForest.js.map +1 -0
  1540. package/lib/feature-libraries/optional-field/index.d.ts +8 -0
  1541. package/lib/feature-libraries/optional-field/index.d.ts.map +1 -0
  1542. package/lib/feature-libraries/optional-field/index.js +7 -0
  1543. package/lib/feature-libraries/optional-field/index.js.map +1 -0
  1544. package/lib/feature-libraries/optional-field/optionalField.d.ts +31 -0
  1545. package/lib/feature-libraries/optional-field/optionalField.d.ts.map +1 -0
  1546. package/lib/feature-libraries/optional-field/optionalField.js +444 -0
  1547. package/lib/feature-libraries/optional-field/optionalField.js.map +1 -0
  1548. package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts +38 -0
  1549. package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts.map +1 -0
  1550. package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.js +22 -0
  1551. package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.js.map +1 -0
  1552. package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts +55 -0
  1553. package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts.map +1 -0
  1554. package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.js +6 -0
  1555. package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.js.map +1 -0
  1556. package/lib/feature-libraries/optional-field/optionalFieldCodecs.d.ts +11 -0
  1557. package/lib/feature-libraries/optional-field/optionalFieldCodecs.d.ts.map +1 -0
  1558. package/lib/feature-libraries/optional-field/optionalFieldCodecs.js +82 -0
  1559. package/lib/feature-libraries/optional-field/optionalFieldCodecs.js.map +1 -0
  1560. package/lib/feature-libraries/schema-aware/index.d.ts +6 -0
  1561. package/lib/feature-libraries/schema-aware/index.d.ts.map +1 -0
  1562. package/lib/feature-libraries/schema-aware/index.js +6 -0
  1563. package/lib/feature-libraries/schema-aware/index.js.map +1 -0
  1564. package/lib/feature-libraries/schema-aware/schemaAware.d.ts +77 -0
  1565. package/lib/feature-libraries/schema-aware/schemaAware.d.ts.map +1 -0
  1566. package/lib/feature-libraries/schema-aware/schemaAware.js +7 -0
  1567. package/lib/feature-libraries/schema-aware/schemaAware.js.map +1 -0
  1568. package/lib/feature-libraries/schema-edits/index.d.ts +8 -0
  1569. package/lib/feature-libraries/schema-edits/index.d.ts.map +1 -0
  1570. package/lib/feature-libraries/schema-edits/index.js +7 -0
  1571. package/lib/feature-libraries/schema-edits/index.js.map +1 -0
  1572. package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +9 -0
  1573. package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -0
  1574. package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js +27 -0
  1575. package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -0
  1576. package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts +53 -0
  1577. package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -0
  1578. package/lib/feature-libraries/schema-edits/schemaChangeFormat.js +11 -0
  1579. package/lib/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -0
  1580. package/lib/feature-libraries/schema-edits/schemaChangeTypes.d.ts +18 -0
  1581. package/lib/feature-libraries/schema-edits/schemaChangeTypes.d.ts.map +1 -0
  1582. package/lib/feature-libraries/schema-edits/schemaChangeTypes.js +6 -0
  1583. package/lib/feature-libraries/schema-edits/schemaChangeTypes.js.map +1 -0
  1584. package/lib/feature-libraries/schema-index/codec.d.ts +13 -0
  1585. package/lib/feature-libraries/schema-index/codec.d.ts.map +1 -0
  1586. package/lib/feature-libraries/schema-index/codec.js +51 -0
  1587. package/lib/feature-libraries/schema-index/codec.js.map +1 -0
  1588. package/lib/feature-libraries/schema-index/format.d.ts +60 -0
  1589. package/lib/feature-libraries/schema-index/format.d.ts.map +1 -0
  1590. package/lib/feature-libraries/schema-index/format.js +30 -0
  1591. package/lib/feature-libraries/schema-index/format.js.map +1 -0
  1592. package/lib/feature-libraries/schema-index/index.d.ts +8 -0
  1593. package/lib/feature-libraries/schema-index/index.d.ts.map +1 -0
  1594. package/lib/feature-libraries/schema-index/index.js +8 -0
  1595. package/lib/feature-libraries/schema-index/index.js.map +1 -0
  1596. package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts +41 -0
  1597. package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -0
  1598. package/lib/feature-libraries/schema-index/schemaSummarizer.js +81 -0
  1599. package/lib/feature-libraries/schema-index/schemaSummarizer.js.map +1 -0
  1600. package/lib/feature-libraries/schemaBuilder.d.ts +31 -0
  1601. package/lib/feature-libraries/schemaBuilder.d.ts.map +1 -0
  1602. package/lib/feature-libraries/schemaBuilder.js +36 -0
  1603. package/lib/feature-libraries/schemaBuilder.js.map +1 -0
  1604. package/lib/feature-libraries/schemaBuilderBase.d.ts +217 -0
  1605. package/lib/feature-libraries/schemaBuilderBase.d.ts.map +1 -0
  1606. package/lib/feature-libraries/schemaBuilderBase.js +221 -0
  1607. package/lib/feature-libraries/schemaBuilderBase.js.map +1 -0
  1608. package/lib/feature-libraries/sequence-field/compose.d.ts +45 -0
  1609. package/lib/feature-libraries/sequence-field/compose.d.ts.map +1 -0
  1610. package/lib/feature-libraries/sequence-field/compose.js +432 -0
  1611. package/lib/feature-libraries/sequence-field/compose.js.map +1 -0
  1612. package/lib/feature-libraries/sequence-field/format.d.ts +427 -0
  1613. package/lib/feature-libraries/sequence-field/format.d.ts.map +1 -0
  1614. package/lib/feature-libraries/sequence-field/format.js +74 -0
  1615. package/lib/feature-libraries/sequence-field/format.js.map +1 -0
  1616. package/lib/feature-libraries/sequence-field/helperTypes.d.ts +34 -0
  1617. package/lib/feature-libraries/sequence-field/helperTypes.d.ts.map +1 -0
  1618. package/lib/feature-libraries/sequence-field/helperTypes.js +13 -0
  1619. package/lib/feature-libraries/sequence-field/helperTypes.js.map +1 -0
  1620. package/lib/feature-libraries/sequence-field/index.d.ts +18 -0
  1621. package/lib/feature-libraries/sequence-field/index.d.ts.map +1 -0
  1622. package/lib/feature-libraries/sequence-field/index.js +17 -0
  1623. package/lib/feature-libraries/sequence-field/index.js.map +1 -0
  1624. package/lib/feature-libraries/sequence-field/invert.d.ts +19 -0
  1625. package/lib/feature-libraries/sequence-field/invert.d.ts.map +1 -0
  1626. package/lib/feature-libraries/sequence-field/invert.js +217 -0
  1627. package/lib/feature-libraries/sequence-field/invert.js.map +1 -0
  1628. package/lib/feature-libraries/sequence-field/markListFactory.d.ts +21 -0
  1629. package/lib/feature-libraries/sequence-field/markListFactory.d.ts.map +1 -0
  1630. package/lib/feature-libraries/sequence-field/markListFactory.js +51 -0
  1631. package/lib/feature-libraries/sequence-field/markListFactory.js.map +1 -0
  1632. package/lib/feature-libraries/sequence-field/markQueue.d.ts +30 -0
  1633. package/lib/feature-libraries/sequence-field/markQueue.d.ts.map +1 -0
  1634. package/lib/feature-libraries/sequence-field/markQueue.js +70 -0
  1635. package/lib/feature-libraries/sequence-field/markQueue.js.map +1 -0
  1636. package/lib/feature-libraries/sequence-field/moveEffectTable.d.ts +48 -0
  1637. package/lib/feature-libraries/sequence-field/moveEffectTable.d.ts.map +1 -0
  1638. package/lib/feature-libraries/sequence-field/moveEffectTable.js +242 -0
  1639. package/lib/feature-libraries/sequence-field/moveEffectTable.js.map +1 -0
  1640. package/lib/feature-libraries/sequence-field/prune.d.ts +8 -0
  1641. package/lib/feature-libraries/sequence-field/prune.d.ts.map +1 -0
  1642. package/lib/feature-libraries/sequence-field/prune.js +21 -0
  1643. package/lib/feature-libraries/sequence-field/prune.js.map +1 -0
  1644. package/lib/feature-libraries/sequence-field/rebase.d.ts +26 -0
  1645. package/lib/feature-libraries/sequence-field/rebase.d.ts.map +1 -0
  1646. package/lib/feature-libraries/sequence-field/rebase.js +615 -0
  1647. package/lib/feature-libraries/sequence-field/rebase.js.map +1 -0
  1648. package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +9 -0
  1649. package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -0
  1650. package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js +46 -0
  1651. package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -0
  1652. package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts +10 -0
  1653. package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts.map +1 -0
  1654. package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.js +19 -0
  1655. package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.js.map +1 -0
  1656. package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts +19 -0
  1657. package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts.map +1 -0
  1658. package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js +16 -0
  1659. package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js.map +1 -0
  1660. package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +10 -0
  1661. package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -0
  1662. package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js +235 -0
  1663. package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -0
  1664. package/lib/feature-libraries/sequence-field/sequenceFieldEditor.d.ts +33 -0
  1665. package/lib/feature-libraries/sequence-field/sequenceFieldEditor.d.ts.map +1 -0
  1666. package/lib/feature-libraries/sequence-field/sequenceFieldEditor.js +110 -0
  1667. package/lib/feature-libraries/sequence-field/sequenceFieldEditor.js.map +1 -0
  1668. package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +9 -0
  1669. package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -0
  1670. package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js +161 -0
  1671. package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -0
  1672. package/lib/feature-libraries/sequence-field/types.d.ts +182 -0
  1673. package/lib/feature-libraries/sequence-field/types.d.ts.map +1 -0
  1674. package/lib/feature-libraries/sequence-field/types.js +6 -0
  1675. package/lib/feature-libraries/sequence-field/types.js.map +1 -0
  1676. package/lib/feature-libraries/sequence-field/utils.d.ts +198 -0
  1677. package/lib/feature-libraries/sequence-field/utils.d.ts.map +1 -0
  1678. package/lib/feature-libraries/sequence-field/utils.js +924 -0
  1679. package/lib/feature-libraries/sequence-field/utils.js.map +1 -0
  1680. package/lib/feature-libraries/storedToViewSchema.d.ts +18 -0
  1681. package/lib/feature-libraries/storedToViewSchema.d.ts.map +1 -0
  1682. package/lib/feature-libraries/storedToViewSchema.js +65 -0
  1683. package/lib/feature-libraries/storedToViewSchema.js.map +1 -0
  1684. package/lib/feature-libraries/treeCompressionUtils.d.ts +23 -0
  1685. package/lib/feature-libraries/treeCompressionUtils.d.ts.map +1 -0
  1686. package/lib/feature-libraries/treeCompressionUtils.js +24 -0
  1687. package/lib/feature-libraries/treeCompressionUtils.js.map +1 -0
  1688. package/lib/feature-libraries/treeCursorUtils.d.ts +101 -0
  1689. package/lib/feature-libraries/treeCursorUtils.d.ts.map +1 -0
  1690. package/lib/feature-libraries/treeCursorUtils.js +364 -0
  1691. package/lib/feature-libraries/treeCursorUtils.js.map +1 -0
  1692. package/lib/feature-libraries/treeTextCursor.d.ts +62 -0
  1693. package/lib/feature-libraries/treeTextCursor.d.ts.map +1 -0
  1694. package/lib/feature-libraries/treeTextCursor.js +96 -0
  1695. package/lib/feature-libraries/treeTextCursor.js.map +1 -0
  1696. package/lib/feature-libraries/typed-schema/flexList.d.ts +97 -0
  1697. package/lib/feature-libraries/typed-schema/flexList.d.ts.map +1 -0
  1698. package/lib/feature-libraries/typed-schema/flexList.js +51 -0
  1699. package/lib/feature-libraries/typed-schema/flexList.js.map +1 -0
  1700. package/lib/feature-libraries/typed-schema/index.d.ts +11 -0
  1701. package/lib/feature-libraries/typed-schema/index.d.ts.map +1 -0
  1702. package/lib/feature-libraries/typed-schema/index.js +12 -0
  1703. package/lib/feature-libraries/typed-schema/index.js.map +1 -0
  1704. package/lib/feature-libraries/typed-schema/internal.d.ts +7 -0
  1705. package/lib/feature-libraries/typed-schema/internal.d.ts.map +1 -0
  1706. package/lib/feature-libraries/typed-schema/internal.js +6 -0
  1707. package/lib/feature-libraries/typed-schema/internal.js.map +1 -0
  1708. package/lib/feature-libraries/typed-schema/schemaCollection.d.ts +67 -0
  1709. package/lib/feature-libraries/typed-schema/schemaCollection.d.ts.map +1 -0
  1710. package/lib/feature-libraries/typed-schema/schemaCollection.js +199 -0
  1711. package/lib/feature-libraries/typed-schema/schemaCollection.js.map +1 -0
  1712. package/lib/feature-libraries/typed-schema/typeUtils.d.ts +22 -0
  1713. package/lib/feature-libraries/typed-schema/typeUtils.d.ts.map +1 -0
  1714. package/lib/feature-libraries/typed-schema/typeUtils.js +10 -0
  1715. package/lib/feature-libraries/typed-schema/typeUtils.js.map +1 -0
  1716. package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts +294 -0
  1717. package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -0
  1718. package/lib/feature-libraries/typed-schema/typedTreeSchema.js +316 -0
  1719. package/lib/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -0
  1720. package/lib/feature-libraries/typed-schema/view.d.ts +55 -0
  1721. package/lib/feature-libraries/typed-schema/view.d.ts.map +1 -0
  1722. package/lib/feature-libraries/typed-schema/view.js +113 -0
  1723. package/lib/feature-libraries/typed-schema/view.js.map +1 -0
  1724. package/lib/feature-libraries/utils.d.ts +9 -0
  1725. package/lib/feature-libraries/utils.d.ts.map +1 -0
  1726. package/lib/feature-libraries/utils.js +23 -0
  1727. package/lib/feature-libraries/utils.js.map +1 -0
  1728. package/lib/feature-libraries/valueUtilities.d.ts +21 -0
  1729. package/lib/feature-libraries/valueUtilities.d.ts.map +1 -0
  1730. package/lib/feature-libraries/valueUtilities.js +62 -0
  1731. package/lib/feature-libraries/valueUtilities.js.map +1 -0
  1732. package/lib/feature-libraries/versioned/codec.d.ts +11 -0
  1733. package/lib/feature-libraries/versioned/codec.d.ts.map +1 -0
  1734. package/lib/feature-libraries/versioned/codec.js +26 -0
  1735. package/lib/feature-libraries/versioned/codec.js.map +1 -0
  1736. package/lib/feature-libraries/versioned/format.d.ts +10 -0
  1737. package/lib/feature-libraries/versioned/format.d.ts.map +1 -0
  1738. package/lib/feature-libraries/versioned/format.js +9 -0
  1739. package/lib/feature-libraries/versioned/format.js.map +1 -0
  1740. package/lib/feature-libraries/versioned/index.d.ts +7 -0
  1741. package/lib/feature-libraries/versioned/index.d.ts.map +1 -0
  1742. package/lib/feature-libraries/versioned/index.js +7 -0
  1743. package/lib/feature-libraries/versioned/index.js.map +1 -0
  1744. package/lib/index.d.ts +21 -0
  1745. package/lib/index.d.ts.map +1 -0
  1746. package/lib/index.js +26 -0
  1747. package/lib/index.js.map +1 -0
  1748. package/lib/internal.d.ts +8 -0
  1749. package/lib/internal.d.ts.map +1 -0
  1750. package/lib/internal.js +6 -0
  1751. package/lib/internal.js.map +1 -0
  1752. package/lib/shared-tree/index.d.ts +10 -0
  1753. package/lib/shared-tree/index.d.ts.map +1 -0
  1754. package/lib/shared-tree/index.js +9 -0
  1755. package/lib/shared-tree/index.js.map +1 -0
  1756. package/lib/shared-tree/schematizedTree.d.ts +94 -0
  1757. package/lib/shared-tree/schematizedTree.d.ts.map +1 -0
  1758. package/lib/shared-tree/schematizedTree.js +151 -0
  1759. package/lib/shared-tree/schematizedTree.js.map +1 -0
  1760. package/lib/shared-tree/sharedTree.d.ts +143 -0
  1761. package/lib/shared-tree/sharedTree.d.ts.map +1 -0
  1762. package/lib/shared-tree/sharedTree.js +215 -0
  1763. package/lib/shared-tree/sharedTree.js.map +1 -0
  1764. package/lib/shared-tree/sharedTreeChangeCodecs.d.ts +11 -0
  1765. package/lib/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -0
  1766. package/lib/shared-tree/sharedTreeChangeCodecs.js +54 -0
  1767. package/lib/shared-tree/sharedTreeChangeCodecs.js.map +1 -0
  1768. package/lib/shared-tree/sharedTreeChangeFamily.d.ts +25 -0
  1769. package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -0
  1770. package/lib/shared-tree/sharedTreeChangeFamily.js +116 -0
  1771. package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -0
  1772. package/lib/shared-tree/sharedTreeChangeFormat.d.ts +178 -0
  1773. package/lib/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -0
  1774. package/lib/shared-tree/sharedTreeChangeFormat.js +12 -0
  1775. package/lib/shared-tree/sharedTreeChangeFormat.js.map +1 -0
  1776. package/lib/shared-tree/sharedTreeChangeTypes.d.ts +26 -0
  1777. package/lib/shared-tree/sharedTreeChangeTypes.d.ts.map +1 -0
  1778. package/lib/shared-tree/sharedTreeChangeTypes.js +6 -0
  1779. package/lib/shared-tree/sharedTreeChangeTypes.js.map +1 -0
  1780. package/lib/shared-tree/sharedTreeEditBuilder.d.ts +42 -0
  1781. package/lib/shared-tree/sharedTreeEditBuilder.d.ts.map +1 -0
  1782. package/lib/shared-tree/sharedTreeEditBuilder.js +30 -0
  1783. package/lib/shared-tree/sharedTreeEditBuilder.js.map +1 -0
  1784. package/lib/shared-tree/treeCheckout.d.ts +228 -0
  1785. package/lib/shared-tree/treeCheckout.d.ts.map +1 -0
  1786. package/lib/shared-tree/treeCheckout.js +184 -0
  1787. package/lib/shared-tree/treeCheckout.js.map +1 -0
  1788. package/lib/shared-tree/treeView.d.ts +66 -0
  1789. package/lib/shared-tree/treeView.d.ts.map +1 -0
  1790. package/lib/shared-tree/treeView.js +29 -0
  1791. package/lib/shared-tree/treeView.js.map +1 -0
  1792. package/lib/shared-tree-core/branch.d.ts +199 -0
  1793. package/lib/shared-tree-core/branch.d.ts.map +1 -0
  1794. package/lib/shared-tree-core/branch.js +407 -0
  1795. package/lib/shared-tree-core/branch.js.map +1 -0
  1796. package/lib/shared-tree-core/editManager.d.ts +126 -0
  1797. package/lib/shared-tree-core/editManager.d.ts.map +1 -0
  1798. package/lib/shared-tree-core/editManager.js +428 -0
  1799. package/lib/shared-tree-core/editManager.js.map +1 -0
  1800. package/lib/shared-tree-core/editManagerCodecs.d.ts +9 -0
  1801. package/lib/shared-tree-core/editManagerCodecs.d.ts.map +1 -0
  1802. package/lib/shared-tree-core/editManagerCodecs.js +48 -0
  1803. package/lib/shared-tree-core/editManagerCodecs.js.map +1 -0
  1804. package/lib/shared-tree-core/editManagerFormat.d.ts +68 -0
  1805. package/lib/shared-tree-core/editManagerFormat.d.ts.map +1 -0
  1806. package/lib/shared-tree-core/editManagerFormat.js +49 -0
  1807. package/lib/shared-tree-core/editManagerFormat.js.map +1 -0
  1808. package/lib/shared-tree-core/editManagerSummarizer.d.ts +25 -0
  1809. package/lib/shared-tree-core/editManagerSummarizer.d.ts.map +1 -0
  1810. package/lib/shared-tree-core/editManagerSummarizer.js +52 -0
  1811. package/lib/shared-tree-core/editManagerSummarizer.js.map +1 -0
  1812. package/lib/shared-tree-core/index.d.ts +13 -0
  1813. package/lib/shared-tree-core/index.d.ts.map +1 -0
  1814. package/lib/shared-tree-core/index.js +12 -0
  1815. package/lib/shared-tree-core/index.js.map +1 -0
  1816. package/lib/shared-tree-core/messageCodecs.d.ts +9 -0
  1817. package/lib/shared-tree-core/messageCodecs.d.ts.map +1 -0
  1818. package/lib/shared-tree-core/messageCodecs.js +31 -0
  1819. package/lib/shared-tree-core/messageCodecs.js.map +1 -0
  1820. package/lib/shared-tree-core/messageFormat.d.ts +30 -0
  1821. package/lib/shared-tree-core/messageFormat.d.ts.map +1 -0
  1822. package/lib/shared-tree-core/messageFormat.js +12 -0
  1823. package/lib/shared-tree-core/messageFormat.js.map +1 -0
  1824. package/lib/shared-tree-core/messageTypes.d.ts +10 -0
  1825. package/lib/shared-tree-core/messageTypes.d.ts.map +1 -0
  1826. package/lib/shared-tree-core/messageTypes.js +6 -0
  1827. package/lib/shared-tree-core/messageTypes.js.map +1 -0
  1828. package/lib/shared-tree-core/revisionTagCodecs.d.ts +11 -0
  1829. package/lib/shared-tree-core/revisionTagCodecs.d.ts.map +1 -0
  1830. package/lib/shared-tree-core/revisionTagCodecs.js +13 -0
  1831. package/lib/shared-tree-core/revisionTagCodecs.js.map +1 -0
  1832. package/lib/shared-tree-core/sharedTreeCore.d.ts +112 -0
  1833. package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -0
  1834. package/lib/shared-tree-core/sharedTreeCore.js +193 -0
  1835. package/lib/shared-tree-core/sharedTreeCore.js.map +1 -0
  1836. package/lib/shared-tree-core/transactionStack.d.ts +30 -0
  1837. package/lib/shared-tree-core/transactionStack.d.ts.map +1 -0
  1838. package/lib/shared-tree-core/transactionStack.js +38 -0
  1839. package/lib/shared-tree-core/transactionStack.js.map +1 -0
  1840. package/lib/simple-tree/flexNode.d.ts +34 -0
  1841. package/lib/simple-tree/flexNode.d.ts.map +1 -0
  1842. package/lib/simple-tree/flexNode.js +50 -0
  1843. package/lib/simple-tree/flexNode.js.map +1 -0
  1844. package/lib/simple-tree/index.d.ts +10 -0
  1845. package/lib/simple-tree/index.d.ts.map +1 -0
  1846. package/lib/simple-tree/index.js +9 -0
  1847. package/lib/simple-tree/index.js.map +1 -0
  1848. package/lib/simple-tree/insertable.d.ts +44 -0
  1849. package/lib/simple-tree/insertable.d.ts.map +1 -0
  1850. package/lib/simple-tree/insertable.js +6 -0
  1851. package/lib/simple-tree/insertable.js.map +1 -0
  1852. package/lib/simple-tree/objectFactory.d.ts +30 -0
  1853. package/lib/simple-tree/objectFactory.d.ts.map +1 -0
  1854. package/lib/simple-tree/objectFactory.js +16 -0
  1855. package/lib/simple-tree/objectFactory.js.map +1 -0
  1856. package/lib/simple-tree/proxies.d.ts +112 -0
  1857. package/lib/simple-tree/proxies.d.ts.map +1 -0
  1858. package/lib/simple-tree/proxies.js +800 -0
  1859. package/lib/simple-tree/proxies.js.map +1 -0
  1860. package/lib/simple-tree/rawNode.d.ts +96 -0
  1861. package/lib/simple-tree/rawNode.d.ts.map +1 -0
  1862. package/lib/simple-tree/rawNode.js +132 -0
  1863. package/lib/simple-tree/rawNode.js.map +1 -0
  1864. package/lib/simple-tree/toMapTree.d.ts +101 -0
  1865. package/lib/simple-tree/toMapTree.d.ts.map +1 -0
  1866. package/lib/simple-tree/toMapTree.js +291 -0
  1867. package/lib/simple-tree/toMapTree.js.map +1 -0
  1868. package/lib/simple-tree/treeListNode.d.ts +60 -0
  1869. package/lib/simple-tree/treeListNode.d.ts.map +1 -0
  1870. package/lib/simple-tree/treeListNode.js +49 -0
  1871. package/lib/simple-tree/treeListNode.js.map +1 -0
  1872. package/lib/simple-tree/types.d.ts +243 -0
  1873. package/lib/simple-tree/types.d.ts.map +1 -0
  1874. package/lib/simple-tree/types.js +17 -0
  1875. package/lib/simple-tree/types.js.map +1 -0
  1876. package/lib/treeFactory.d.ts +55 -0
  1877. package/lib/treeFactory.d.ts.map +1 -0
  1878. package/lib/treeFactory.js +80 -0
  1879. package/lib/treeFactory.js.map +1 -0
  1880. package/lib/util/brand.d.ts +179 -0
  1881. package/lib/util/brand.d.ts.map +1 -0
  1882. package/lib/util/brand.js +118 -0
  1883. package/lib/util/brand.js.map +1 -0
  1884. package/lib/util/brandedMap.d.ts +46 -0
  1885. package/lib/util/brandedMap.d.ts.map +1 -0
  1886. package/lib/util/brandedMap.js +27 -0
  1887. package/lib/util/brandedMap.js.map +1 -0
  1888. package/lib/util/idAllocator.d.ts +29 -0
  1889. package/lib/util/idAllocator.d.ts.map +1 -0
  1890. package/lib/util/idAllocator.js +29 -0
  1891. package/lib/util/idAllocator.js.map +1 -0
  1892. package/lib/util/index.d.ts +18 -0
  1893. package/lib/util/index.d.ts.map +1 -0
  1894. package/lib/util/index.js +16 -0
  1895. package/lib/util/index.js.map +1 -0
  1896. package/lib/util/nestedMap.d.ts +129 -0
  1897. package/lib/util/nestedMap.d.ts.map +1 -0
  1898. package/lib/util/nestedMap.js +224 -0
  1899. package/lib/util/nestedMap.js.map +1 -0
  1900. package/lib/util/nestedSet.d.ts +9 -0
  1901. package/lib/util/nestedSet.d.ts.map +1 -0
  1902. package/lib/util/nestedSet.js +12 -0
  1903. package/lib/util/nestedSet.js.map +1 -0
  1904. package/lib/util/offsetList.d.ts +22 -0
  1905. package/lib/util/offsetList.d.ts.map +1 -0
  1906. package/lib/util/offsetList.js +40 -0
  1907. package/lib/util/offsetList.js.map +1 -0
  1908. package/lib/util/rangeMap.d.ts +40 -0
  1909. package/lib/util/rangeMap.d.ts.map +1 -0
  1910. package/lib/util/rangeMap.js +97 -0
  1911. package/lib/util/rangeMap.js.map +1 -0
  1912. package/lib/util/referenceCounting.d.ts +30 -0
  1913. package/lib/util/referenceCounting.d.ts.map +1 -0
  1914. package/lib/util/referenceCounting.js +30 -0
  1915. package/lib/util/referenceCounting.js.map +1 -0
  1916. package/lib/util/stackyIterator.d.ts +20 -0
  1917. package/lib/util/stackyIterator.d.ts.map +1 -0
  1918. package/lib/util/stackyIterator.js +45 -0
  1919. package/lib/util/stackyIterator.js.map +1 -0
  1920. package/lib/util/transactionResult.d.ts +20 -0
  1921. package/lib/util/transactionResult.d.ts.map +1 -0
  1922. package/lib/util/transactionResult.js +21 -0
  1923. package/lib/util/transactionResult.js.map +1 -0
  1924. package/lib/util/typeCheck.d.ts +183 -0
  1925. package/lib/util/typeCheck.d.ts.map +1 -0
  1926. package/lib/util/typeCheck.js +6 -0
  1927. package/lib/util/typeCheck.js.map +1 -0
  1928. package/lib/util/typeCheckTests.d.ts +60 -0
  1929. package/lib/util/typeCheckTests.d.ts.map +1 -0
  1930. package/lib/util/typeCheckTests.js +6 -0
  1931. package/lib/util/typeCheckTests.js.map +1 -0
  1932. package/lib/util/typeUtils.d.ts +129 -0
  1933. package/lib/util/typeUtils.d.ts.map +1 -0
  1934. package/lib/util/typeUtils.js +10 -0
  1935. package/lib/util/typeUtils.js.map +1 -0
  1936. package/lib/util/utils.d.ts +287 -0
  1937. package/lib/util/utils.d.ts.map +1 -0
  1938. package/lib/util/utils.js +346 -0
  1939. package/lib/util/utils.js.map +1 -0
  1940. package/package.json +129 -0
  1941. package/prettier.config.cjs +8 -0
  1942. package/src/class-tree/README.md +67 -0
  1943. package/src/class-tree/index.ts +43 -0
  1944. package/src/class-tree/integerIndexable.ts +120 -0
  1945. package/src/class-tree/internal.ts +20 -0
  1946. package/src/class-tree/schemaCreationUtilities.ts +178 -0
  1947. package/src/class-tree/schemaFactory.ts +685 -0
  1948. package/src/class-tree/schemaFactoryRecursive.ts +95 -0
  1949. package/src/class-tree/schemaTypes.ts +334 -0
  1950. package/src/class-tree/testRecursiveDomain.ts +47 -0
  1951. package/src/class-tree/toFlexSchema.ts +279 -0
  1952. package/src/class-tree/tree.ts +123 -0
  1953. package/src/class-tree/treeApi.ts +147 -0
  1954. package/src/codec/README.md +15 -0
  1955. package/src/codec/codec.ts +346 -0
  1956. package/src/codec/discriminatedUnions.ts +114 -0
  1957. package/src/codec/index.ts +23 -0
  1958. package/src/codec/noopValidator.ts +17 -0
  1959. package/src/core/README.md +9 -0
  1960. package/src/core/change-family/README.md +14 -0
  1961. package/src/core/change-family/changeFamily.ts +36 -0
  1962. package/src/core/change-family/editBuilder.ts +25 -0
  1963. package/src/core/change-family/index.ts +7 -0
  1964. package/src/core/forest/README.md +11 -0
  1965. package/src/core/forest/editableForest.ts +81 -0
  1966. package/src/core/forest/forest.ts +263 -0
  1967. package/src/core/forest/index.ts +22 -0
  1968. package/src/core/index.ts +193 -0
  1969. package/src/core/rebase/README.md +5 -0
  1970. package/src/core/rebase/changeRebaser.ts +169 -0
  1971. package/src/core/rebase/index.ts +51 -0
  1972. package/src/core/rebase/types.ts +129 -0
  1973. package/src/core/rebase/utils.ts +538 -0
  1974. package/src/core/rebase/verifyChangeRebaser.ts +385 -0
  1975. package/src/core/revertible/index.ts +6 -0
  1976. package/src/core/revertible/revertible.ts +75 -0
  1977. package/src/core/schema-stored/README.md +11 -0
  1978. package/src/core/schema-stored/format.ts +115 -0
  1979. package/src/core/schema-stored/index.ts +36 -0
  1980. package/src/core/schema-stored/schema.ts +313 -0
  1981. package/src/core/schema-stored/storedSchemaRepository.ts +136 -0
  1982. package/src/core/schema-view/README.md +9 -0
  1983. package/src/core/schema-view/index.ts +6 -0
  1984. package/src/core/schema-view/view.ts +76 -0
  1985. package/src/core/tree/README.md +15 -0
  1986. package/src/core/tree/anchorSet.ts +1219 -0
  1987. package/src/core/tree/cursor.ts +486 -0
  1988. package/src/core/tree/delta.ts +255 -0
  1989. package/src/core/tree/deltaUtil.ts +102 -0
  1990. package/src/core/tree/detachedFieldIndex.ts +170 -0
  1991. package/src/core/tree/detachedFieldIndexCodec.ts +59 -0
  1992. package/src/core/tree/detachedFieldIndexFormat.ts +35 -0
  1993. package/src/core/tree/detachedFieldIndexTypes.ts +15 -0
  1994. package/src/core/tree/index.ts +114 -0
  1995. package/src/core/tree/mapTree.ts +37 -0
  1996. package/src/core/tree/pathTree.ts +228 -0
  1997. package/src/core/tree/persistedTreeTextFormat.ts +93 -0
  1998. package/src/core/tree/sparseTree.ts +160 -0
  1999. package/src/core/tree/treeTextFormat.ts +179 -0
  2000. package/src/core/tree/types.ts +170 -0
  2001. package/src/core/tree/visitDelta.ts +482 -0
  2002. package/src/core/tree/visitPath.ts +125 -0
  2003. package/src/core/tree/visitorUtils.ts +106 -0
  2004. package/src/domains/README.md +6 -0
  2005. package/src/domains/fence.json +5 -0
  2006. package/src/domains/index.ts +18 -0
  2007. package/src/domains/json/fence.json +5 -0
  2008. package/src/domains/json/index.ts +7 -0
  2009. package/src/domains/json/jsonCursor.ts +137 -0
  2010. package/src/domains/json/jsonDomainSchema.ts +49 -0
  2011. package/src/domains/leafDomain.ts +98 -0
  2012. package/src/domains/nodeKey/fence.json +5 -0
  2013. package/src/domains/nodeKey/index.ts +6 -0
  2014. package/src/domains/nodeKey/nodeKeySchema.ts +43 -0
  2015. package/src/domains/schemaBuilder.ts +392 -0
  2016. package/src/domains/testRecursiveDomain.ts +56 -0
  2017. package/src/events/README.md +3 -0
  2018. package/src/events/events.ts +282 -0
  2019. package/src/events/fence.json +5 -0
  2020. package/src/events/index.ts +17 -0
  2021. package/src/external-utilities/README.md +5 -0
  2022. package/src/external-utilities/fence.json +5 -0
  2023. package/src/external-utilities/index.ts +6 -0
  2024. package/src/external-utilities/typeboxValidator.ts +30 -0
  2025. package/src/feature-libraries/README.md +140 -0
  2026. package/src/feature-libraries/chunked-forest/README.md +13 -0
  2027. package/src/feature-libraries/chunked-forest/basicChunk.ts +564 -0
  2028. package/src/feature-libraries/chunked-forest/chunk.ts +109 -0
  2029. package/src/feature-libraries/chunked-forest/chunkTree.ts +506 -0
  2030. package/src/feature-libraries/chunked-forest/chunkedForest.ts +443 -0
  2031. package/src/feature-libraries/chunked-forest/codec/README.md +55 -0
  2032. package/src/feature-libraries/chunked-forest/codec/chunkCodecUtilities.ts +183 -0
  2033. package/src/feature-libraries/chunked-forest/codec/chunkDecoding.ts +274 -0
  2034. package/src/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.ts +72 -0
  2035. package/src/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.ts +179 -0
  2036. package/src/feature-libraries/chunked-forest/codec/codecs.ts +101 -0
  2037. package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +486 -0
  2038. package/src/feature-libraries/chunked-forest/codec/fieldBatch.ts +12 -0
  2039. package/src/feature-libraries/chunked-forest/codec/format.ts +171 -0
  2040. package/src/feature-libraries/chunked-forest/codec/formatGeneric.ts +63 -0
  2041. package/src/feature-libraries/chunked-forest/codec/index.ts +8 -0
  2042. package/src/feature-libraries/chunked-forest/codec/nodeShape.ts +148 -0
  2043. package/src/feature-libraries/chunked-forest/codec/schemaBasedEncoding.ts +148 -0
  2044. package/src/feature-libraries/chunked-forest/codec/uncompressedEncode.ts +65 -0
  2045. package/src/feature-libraries/chunked-forest/emptyChunk.ts +114 -0
  2046. package/src/feature-libraries/chunked-forest/index.ts +23 -0
  2047. package/src/feature-libraries/chunked-forest/sequenceChunk.ts +62 -0
  2048. package/src/feature-libraries/chunked-forest/uniformChunk.ts +524 -0
  2049. package/src/feature-libraries/contextuallyTyped.ts +583 -0
  2050. package/src/feature-libraries/default-schema/README.md +3 -0
  2051. package/src/feature-libraries/default-schema/defaultEditBuilder.ts +428 -0
  2052. package/src/feature-libraries/default-schema/defaultFieldKinds.ts +218 -0
  2053. package/src/feature-libraries/default-schema/defaultSchema.ts +15 -0
  2054. package/src/feature-libraries/default-schema/index.ts +28 -0
  2055. package/src/feature-libraries/deltaUtils.ts +152 -0
  2056. package/src/feature-libraries/detachedFieldIndexSummarizer.ts +68 -0
  2057. package/src/feature-libraries/editableTreeBinder.ts +1018 -0
  2058. package/src/feature-libraries/fieldGenerator.ts +49 -0
  2059. package/src/feature-libraries/flex-tree/README.md +132 -0
  2060. package/src/feature-libraries/flex-tree/context.ts +163 -0
  2061. package/src/feature-libraries/flex-tree/flexTreeTypes.ts +1035 -0
  2062. package/src/feature-libraries/flex-tree/index.ts +59 -0
  2063. package/src/feature-libraries/flex-tree/lazyEntity.ts +152 -0
  2064. package/src/feature-libraries/flex-tree/lazyField.ts +598 -0
  2065. package/src/feature-libraries/flex-tree/lazyNode.ts +690 -0
  2066. package/src/feature-libraries/flex-tree/navigation.ts +121 -0
  2067. package/src/feature-libraries/flex-tree/nodeKeys.ts +51 -0
  2068. package/src/feature-libraries/flex-tree/treeEvents.ts +117 -0
  2069. package/src/feature-libraries/flex-tree/unboxed.ts +77 -0
  2070. package/src/feature-libraries/flex-tree/utilities.ts +74 -0
  2071. package/src/feature-libraries/forest-summary/codec.ts +50 -0
  2072. package/src/feature-libraries/forest-summary/forestSummarizer.ts +176 -0
  2073. package/src/feature-libraries/forest-summary/format.ts +21 -0
  2074. package/src/feature-libraries/forest-summary/index.ts +6 -0
  2075. package/src/feature-libraries/incrementalSummarizationUtils.ts +20 -0
  2076. package/src/feature-libraries/index.ts +299 -0
  2077. package/src/feature-libraries/mapTreeCursor.ts +75 -0
  2078. package/src/feature-libraries/memoizedIdRangeAllocator.ts +120 -0
  2079. package/src/feature-libraries/mitigatedChangeFamily.ts +71 -0
  2080. package/src/feature-libraries/modular-schema/README.md +22 -0
  2081. package/src/feature-libraries/modular-schema/comparison.ts +307 -0
  2082. package/src/feature-libraries/modular-schema/crossFieldQueries.ts +85 -0
  2083. package/src/feature-libraries/modular-schema/fieldChangeHandler.ts +226 -0
  2084. package/src/feature-libraries/modular-schema/fieldKind.ts +149 -0
  2085. package/src/feature-libraries/modular-schema/genericFieldKind.ts +231 -0
  2086. package/src/feature-libraries/modular-schema/genericFieldKindCodecs.ts +39 -0
  2087. package/src/feature-libraries/modular-schema/genericFieldKindFormat.ts +45 -0
  2088. package/src/feature-libraries/modular-schema/genericFieldKindTypes.ts +25 -0
  2089. package/src/feature-libraries/modular-schema/index.ts +65 -0
  2090. package/src/feature-libraries/modular-schema/modularChangeCodecs.ts +284 -0
  2091. package/src/feature-libraries/modular-schema/modularChangeFamily.ts +1359 -0
  2092. package/src/feature-libraries/modular-schema/modularChangeFormat.ts +147 -0
  2093. package/src/feature-libraries/modular-schema/modularChangeTypes.ts +85 -0
  2094. package/src/feature-libraries/multiplicity.ts +54 -0
  2095. package/src/feature-libraries/node-key/README.md +11 -0
  2096. package/src/feature-libraries/node-key/index.ts +16 -0
  2097. package/src/feature-libraries/node-key/nodeKey.ts +58 -0
  2098. package/src/feature-libraries/node-key/nodeKeyIndex.ts +125 -0
  2099. package/src/feature-libraries/node-key/nodeKeyManager.ts +107 -0
  2100. package/src/feature-libraries/object-forest/README.md +7 -0
  2101. package/src/feature-libraries/object-forest/index.ts +6 -0
  2102. package/src/feature-libraries/object-forest/objectForest.ts +505 -0
  2103. package/src/feature-libraries/optional-field/README.md +3 -0
  2104. package/src/feature-libraries/optional-field/index.ts +13 -0
  2105. package/src/feature-libraries/optional-field/optionalField.ts +619 -0
  2106. package/src/feature-libraries/optional-field/optionalFieldChangeFormat.ts +40 -0
  2107. package/src/feature-libraries/optional-field/optionalFieldChangeTypes.ts +59 -0
  2108. package/src/feature-libraries/optional-field/optionalFieldCodecs.ts +114 -0
  2109. package/src/feature-libraries/schema-aware/README.md +19 -0
  2110. package/src/feature-libraries/schema-aware/index.ts +17 -0
  2111. package/src/feature-libraries/schema-aware/schemaAware.ts +123 -0
  2112. package/src/feature-libraries/schema-edits/index.ts +8 -0
  2113. package/src/feature-libraries/schema-edits/schemaChangeCodecs.ts +32 -0
  2114. package/src/feature-libraries/schema-edits/schemaChangeFormat.ts +14 -0
  2115. package/src/feature-libraries/schema-edits/schemaChangeTypes.ts +16 -0
  2116. package/src/feature-libraries/schema-index/codec.ts +68 -0
  2117. package/src/feature-libraries/schema-index/format.ts +45 -0
  2118. package/src/feature-libraries/schema-index/index.ts +8 -0
  2119. package/src/feature-libraries/schema-index/schemaSummarizer.ts +138 -0
  2120. package/src/feature-libraries/schemaBuilder.ts +44 -0
  2121. package/src/feature-libraries/schemaBuilderBase.ts +425 -0
  2122. package/src/feature-libraries/sequence-field/README.md +6 -0
  2123. package/src/feature-libraries/sequence-field/compose.ts +745 -0
  2124. package/src/feature-libraries/sequence-field/format.ts +146 -0
  2125. package/src/feature-libraries/sequence-field/helperTypes.ts +57 -0
  2126. package/src/feature-libraries/sequence-field/index.ts +56 -0
  2127. package/src/feature-libraries/sequence-field/invert.ts +370 -0
  2128. package/src/feature-libraries/sequence-field/markListFactory.ts +55 -0
  2129. package/src/feature-libraries/sequence-field/markQueue.ts +90 -0
  2130. package/src/feature-libraries/sequence-field/moveEffectTable.ts +500 -0
  2131. package/src/feature-libraries/sequence-field/prune.ts +28 -0
  2132. package/src/feature-libraries/sequence-field/rebase.ts +1058 -0
  2133. package/src/feature-libraries/sequence-field/relevantRemovedRoots.ts +58 -0
  2134. package/src/feature-libraries/sequence-field/sequenceFieldChangeHandler.ts +24 -0
  2135. package/src/feature-libraries/sequence-field/sequenceFieldChangeRebaser.ts +21 -0
  2136. package/src/feature-libraries/sequence-field/sequenceFieldCodecs.ts +280 -0
  2137. package/src/feature-libraries/sequence-field/sequenceFieldEditor.ts +181 -0
  2138. package/src/feature-libraries/sequence-field/sequenceFieldToDelta.ts +198 -0
  2139. package/src/feature-libraries/sequence-field/types.ts +210 -0
  2140. package/src/feature-libraries/sequence-field/utils.ts +1238 -0
  2141. package/src/feature-libraries/storedToViewSchema.ts +105 -0
  2142. package/src/feature-libraries/treeCompressionUtils.ts +23 -0
  2143. package/src/feature-libraries/treeCursorUtils.ts +489 -0
  2144. package/src/feature-libraries/treeTextCursor.ts +125 -0
  2145. package/src/feature-libraries/typed-schema/README.md +6 -0
  2146. package/src/feature-libraries/typed-schema/flexList.ts +167 -0
  2147. package/src/feature-libraries/typed-schema/index.ts +51 -0
  2148. package/src/feature-libraries/typed-schema/internal.ts +10 -0
  2149. package/src/feature-libraries/typed-schema/schemaCollection.ts +309 -0
  2150. package/src/feature-libraries/typed-schema/typeUtils.ts +39 -0
  2151. package/src/feature-libraries/typed-schema/typedTreeSchema.ts +594 -0
  2152. package/src/feature-libraries/typed-schema/view.ts +157 -0
  2153. package/src/feature-libraries/utils.ts +35 -0
  2154. package/src/feature-libraries/valueUtilities.ts +93 -0
  2155. package/src/feature-libraries/versioned/codec.ts +62 -0
  2156. package/src/feature-libraries/versioned/format.ts +11 -0
  2157. package/src/feature-libraries/versioned/index.ts +7 -0
  2158. package/src/index.ts +341 -0
  2159. package/src/internal.ts +17 -0
  2160. package/src/shared-tree/README.md +10 -0
  2161. package/src/shared-tree/index.ts +34 -0
  2162. package/src/shared-tree/schematizedTree.ts +272 -0
  2163. package/src/shared-tree/sharedTree.ts +443 -0
  2164. package/src/shared-tree/sharedTreeChangeCodecs.ts +79 -0
  2165. package/src/shared-tree/sharedTreeChangeFamily.ts +170 -0
  2166. package/src/shared-tree/sharedTreeChangeFormat.ts +18 -0
  2167. package/src/shared-tree/sharedTreeChangeTypes.ts +24 -0
  2168. package/src/shared-tree/sharedTreeEditBuilder.ts +70 -0
  2169. package/src/shared-tree/treeCheckout.ts +451 -0
  2170. package/src/shared-tree/treeView.ts +107 -0
  2171. package/src/shared-tree-core/README.md +19 -0
  2172. package/src/shared-tree-core/branch.ts +612 -0
  2173. package/src/shared-tree-core/editManager.ts +655 -0
  2174. package/src/shared-tree-core/editManagerCodecs.ts +63 -0
  2175. package/src/shared-tree-core/editManagerFormat.ts +119 -0
  2176. package/src/shared-tree-core/editManagerSummarizer.ts +103 -0
  2177. package/src/shared-tree-core/index.ts +32 -0
  2178. package/src/shared-tree-core/messageCodecs.ts +43 -0
  2179. package/src/shared-tree-core/messageFormat.ts +33 -0
  2180. package/src/shared-tree-core/messageTypes.ts +11 -0
  2181. package/src/shared-tree-core/revisionTagCodecs.ts +16 -0
  2182. package/src/shared-tree-core/sharedTreeCore.ts +365 -0
  2183. package/src/shared-tree-core/transactionStack.ts +46 -0
  2184. package/src/simple-tree/README.md +3 -0
  2185. package/src/simple-tree/flexNode.ts +88 -0
  2186. package/src/simple-tree/index.ts +30 -0
  2187. package/src/simple-tree/insertable.ts +106 -0
  2188. package/src/simple-tree/objectFactory.ts +46 -0
  2189. package/src/simple-tree/proxies.ts +1165 -0
  2190. package/src/simple-tree/rawNode.ts +276 -0
  2191. package/src/simple-tree/toMapTree.ts +464 -0
  2192. package/src/simple-tree/treeListNode.ts +81 -0
  2193. package/src/simple-tree/types.ts +346 -0
  2194. package/src/treeFactory.ts +149 -0
  2195. package/src/util/README.md +9 -0
  2196. package/src/util/brand.ts +248 -0
  2197. package/src/util/brandedMap.ts +73 -0
  2198. package/src/util/idAllocator.ts +52 -0
  2199. package/src/util/index.ts +131 -0
  2200. package/src/util/nestedMap.ts +297 -0
  2201. package/src/util/nestedSet.ts +24 -0
  2202. package/src/util/offsetList.ts +45 -0
  2203. package/src/util/rangeMap.ts +149 -0
  2204. package/src/util/referenceCounting.ts +51 -0
  2205. package/src/util/stackyIterator.ts +53 -0
  2206. package/src/util/transactionResult.ts +20 -0
  2207. package/src/util/typeCheck.ts +208 -0
  2208. package/src/util/typeCheckTests.ts +237 -0
  2209. package/src/util/typeUtils.ts +168 -0
  2210. package/src/util/utils.ts +538 -0
  2211. package/tsconfig.esnext.json +7 -0
  2212. package/tsconfig.json +17 -0
@@ -0,0 +1,184 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ import { assert } from "@fluidframework/core-utils";
6
+ import { AnchorSet, TreeStoredSchemaRepository, assertIsRevisionTag, combineVisitors, visitDelta, makeDetachedFieldIndex, tagChange, } from "../core";
7
+ import { createEmitter } from "../events";
8
+ import { buildForest, intoDelta, jsonableTreeFromCursor } from "../feature-libraries";
9
+ import { SharedTreeBranch, getChangeReplaceType } from "../shared-tree-core";
10
+ import { TransactionResult, fail } from "../util";
11
+ import { noopValidator } from "../codec";
12
+ import { SharedTreeChangeFamily } from "./sharedTreeChangeFamily";
13
+ /**
14
+ * Creates a {@link TreeCheckout}.
15
+ * @param args - an object containing optional components that will be used to build the view.
16
+ * Any components not provided will be created by default.
17
+ * @remarks This does not create a {@link SharedTree}, but rather a view with the minimal state
18
+ * and functionality required to implement {@link ITreeCheckout}.
19
+ */
20
+ export function createTreeCheckout(args) {
21
+ const forest = args?.forest ?? buildForest();
22
+ const changeFamily = args?.changeFamily ?? new SharedTreeChangeFamily({ jsonValidator: noopValidator });
23
+ const branch = args?.branch ??
24
+ new SharedTreeBranch({
25
+ change: changeFamily.rebaser.compose([]),
26
+ revision: assertIsRevisionTag("00000000-0000-4000-8000-000000000000"),
27
+ }, changeFamily);
28
+ const schema = args?.schema ?? new TreeStoredSchemaRepository();
29
+ const events = args?.events ?? createEmitter();
30
+ const transaction = new Transaction(branch);
31
+ return new TreeCheckout(transaction, branch, changeFamily, schema, forest, events, args?.removedRoots);
32
+ }
33
+ class Transaction {
34
+ constructor(branch) {
35
+ this.branch = branch;
36
+ }
37
+ start() {
38
+ this.branch.startTransaction();
39
+ this.branch.editor.enterTransaction();
40
+ }
41
+ commit() {
42
+ this.branch.commitTransaction();
43
+ this.branch.editor.exitTransaction();
44
+ return TransactionResult.Commit;
45
+ }
46
+ abort() {
47
+ this.branch.abortTransaction();
48
+ this.branch.editor.exitTransaction();
49
+ return TransactionResult.Abort;
50
+ }
51
+ inProgress() {
52
+ return this.branch.isTransacting();
53
+ }
54
+ }
55
+ /**
56
+ * An implementation of {@link ITreeCheckoutFork}.
57
+ */
58
+ export class TreeCheckout {
59
+ constructor(transaction, branch, changeFamily, storedSchema, forest, events, removedRoots = makeDetachedFieldIndex("repair")) {
60
+ this.transaction = transaction;
61
+ this.branch = branch;
62
+ this.changeFamily = changeFamily;
63
+ this.storedSchema = storedSchema;
64
+ this.forest = forest;
65
+ this.events = events;
66
+ this.removedRoots = removedRoots;
67
+ // We subscribe to `beforeChange` rather than `afterChange` here because it's possible that the change is invalid WRT our forest.
68
+ // For example, a bug in the editor might produce a malformed change object and thus applying the change to the forest will throw an error.
69
+ // In such a case we will crash here, preventing the change from being added to the commit graph, and preventing `afterChange` from firing.
70
+ // One important consequence of this is that we will not submit the op containing the invalid change, since op submissions happens in response to `afterChange`.
71
+ branch.on("beforeChange", (event) => {
72
+ if (event.change !== undefined) {
73
+ // Conflicts due to schema will be empty and thus are not applied.
74
+ for (const change of event.change.change.changes) {
75
+ if (change.type === "data") {
76
+ const delta = intoDelta(tagChange(change.innerChange, event.change.revision));
77
+ const anchorVisitor = this.forest.anchors.acquireVisitor();
78
+ const combinedVisitor = combineVisitors([this.forest.acquireVisitor(), anchorVisitor], [anchorVisitor]);
79
+ visitDelta(delta, combinedVisitor, this.removedRoots);
80
+ combinedVisitor.free();
81
+ }
82
+ else if (change.type === "schema") {
83
+ if (change.innerChange.schema !== undefined) {
84
+ storedSchema.apply(change.innerChange.schema.new);
85
+ }
86
+ }
87
+ else {
88
+ fail("Unknown Shared Tree change type.");
89
+ }
90
+ }
91
+ this.events.emit("afterBatch");
92
+ }
93
+ if (event.type === "replace" && getChangeReplaceType(event) === "transactionCommit") {
94
+ const transactionRevision = event.newCommits[0].revision;
95
+ for (const transactionStep of event.removedCommits) {
96
+ this.removedRoots.updateMajor(transactionStep.revision, transactionRevision);
97
+ }
98
+ }
99
+ });
100
+ branch.on("revertible", (revertible) => {
101
+ // if there are no listeners, discard the revertible to avoid memory leaks
102
+ if (!this.events.hasListeners("revertible")) {
103
+ revertible.discard();
104
+ }
105
+ else {
106
+ this.events.emit("revertible", revertible);
107
+ }
108
+ });
109
+ }
110
+ get rootEvents() {
111
+ return this.forest.anchors;
112
+ }
113
+ get editor() {
114
+ return this.branch.editor;
115
+ }
116
+ locate(anchor) {
117
+ return this.forest.anchors.locate(anchor);
118
+ }
119
+ fork() {
120
+ const anchors = new AnchorSet();
121
+ const branch = this.branch.fork();
122
+ const storedSchema = this.storedSchema.clone();
123
+ const forest = this.forest.clone(storedSchema, anchors);
124
+ const transaction = new Transaction(branch);
125
+ return new TreeCheckout(transaction, branch, this.changeFamily, storedSchema, forest, createEmitter(), this.removedRoots.clone());
126
+ }
127
+ rebase(view) {
128
+ view.branch.rebaseOnto(this.branch);
129
+ }
130
+ rebaseOnto(view) {
131
+ view.rebase(this);
132
+ }
133
+ merge(view, disposeView = true) {
134
+ assert(!this.transaction.inProgress() || disposeView, 0x710 /* A view that is merged into an in-progress transaction must be disposed */);
135
+ while (view.transaction.inProgress()) {
136
+ view.transaction.commit();
137
+ }
138
+ this.branch.merge(view.branch);
139
+ if (disposeView) {
140
+ view.dispose();
141
+ }
142
+ }
143
+ updateSchema(newSchema) {
144
+ this.editor.schema.setStoredSchema(this.storedSchema.clone(), newSchema);
145
+ }
146
+ /**
147
+ * Dispose this view, freezing its state and allowing the SharedTree to release resources required by it.
148
+ * Attempts to further mutate or dispose this view will error.
149
+ */
150
+ dispose() {
151
+ this.branch.dispose();
152
+ }
153
+ getRemovedRoots() {
154
+ const trees = [];
155
+ const cursor = this.forest.allocateCursor();
156
+ for (const { id, root } of this.removedRoots.entries()) {
157
+ const parentField = this.removedRoots.toFieldKey(root);
158
+ this.forest.moveCursorToPath({ parent: undefined, parentField, parentIndex: 0 }, cursor);
159
+ const tree = jsonableTreeFromCursor(cursor);
160
+ if (tree !== undefined) {
161
+ trees.push([id.major, id.minor, tree]);
162
+ }
163
+ }
164
+ cursor.free();
165
+ return trees;
166
+ }
167
+ }
168
+ /**
169
+ * Run a synchronous transaction on the given shared tree view.
170
+ * This is a convenience helper around the {@link SharedTreeFork#transaction} APIs.
171
+ * @param view - the view on which to run the transaction
172
+ * @param transaction - the transaction function. This will be executed immediately. It is passed `view` as an argument for convenience.
173
+ * If this function returns an `Abort` result then the transaction will be aborted. Otherwise, it will be committed.
174
+ * @returns whether or not the transaction was committed or aborted
175
+ * @internal
176
+ */
177
+ export function runSynchronous(view, transaction) {
178
+ view.transaction.start();
179
+ const result = transaction(view);
180
+ return result === TransactionResult.Abort
181
+ ? view.transaction.abort()
182
+ : view.transaction.commit();
183
+ }
184
+ //# sourceMappingURL=treeCheckout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeCheckout.js","sourceRoot":"","sources":["../../src/shared-tree/treeCheckout.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\nimport { assert } from \"@fluidframework/core-utils\";\nimport {\n\tAnchorLocator,\n\tIForestSubscription,\n\tAnchorSetRootEvents,\n\tAnchor,\n\tAnchorNode,\n\tAnchorSet,\n\tIEditableForest,\n\tTreeStoredSchemaRepository,\n\tassertIsRevisionTag,\n\tcombineVisitors,\n\tvisitDelta,\n\tDetachedFieldIndex,\n\tmakeDetachedFieldIndex,\n\tRevertible,\n\tChangeFamily,\n\ttagChange,\n\tTreeStoredSchema,\n\tTreeStoredSchemaSubscription,\n\tJsonableTree,\n} from \"../core\";\nimport { HasListeners, IEmitter, ISubscribable, createEmitter } from \"../events\";\nimport { buildForest, intoDelta, jsonableTreeFromCursor } from \"../feature-libraries\";\nimport { SharedTreeBranch, getChangeReplaceType } from \"../shared-tree-core\";\nimport { TransactionResult, fail } from \"../util\";\nimport { noopValidator } from \"../codec\";\nimport { SharedTreeChange } from \"./sharedTreeChangeTypes\";\nimport { SharedTreeChangeFamily } from \"./sharedTreeChangeFamily\";\nimport { ISharedTreeEditor, SharedTreeEditBuilder } from \"./sharedTreeEditBuilder\";\n\n/**\n * Events for {@link ITreeCheckout}.\n * @beta\n */\nexport interface CheckoutEvents {\n\t/**\n\t * A batch of changes has finished processing and the view is in a consistent state.\n\t * It is once again safe to access the EditableTree, Forest and AnchorSet.\n\t *\n\t * @remarks\n\t * This is mainly useful for knowing when to do followup work scheduled during events from Anchors.\n\t */\n\tafterBatch(): void;\n\n\t/**\n\t * A revertible change has been made to this view.\n\t * Applications which subscribe to this event are expected to revert or discard revertibles they acquire, if they so choose (failure to do so will leak memory).\n\t * The provided revertible is inherently bound to the view that raised the event, calling `revert` won't apply to forked views.\n\t *\n\t * @remarks\n\t * This event provides a {@link Revertible} object that can be used to revert the change.\n\t */\n\trevertible(revertible: Revertible): void;\n}\n\n/**\n * Provides a means for interacting with a SharedTree.\n * This includes reading data from the tree and running transactions to mutate the tree.\n * @remarks This interface should not have any implementations other than those provided by the SharedTree package libraries.\n * @privateRemarks\n * API for interacting with a {@link SharedTreeBranch}.\n * Implementations of this interface must implement the {@link branchKey} property.\n * @internal\n */\nexport interface ITreeCheckout extends AnchorLocator {\n\t/**\n\t * Read and Write access for schema stored in the document.\n\t *\n\t * These APIs are temporary and will be replaced with different abstractions (View Schema based) in a different place later.\n\t *\n\t * TODO:\n\t * Editing of this should be moved into transactions with the rest of tree editing to they can be intermixed.\n\t * This will be done after the relations between views, branches and Indexes are figured out.\n\t *\n\t * TODO:\n\t * Public APIs for dealing with schema should be in terms of View Schema, and schema update policies.\n\t * The actual stored schema should be hidden (or ar least not be the most prominent way to interact with schema).\n\t *\n\t * TODO:\n\t * Something should ensure the document contents are always in schema.\n\t */\n\treadonly storedSchema: TreeStoredSchemaSubscription;\n\t/**\n\t * Current contents.\n\t * Updated by edits (local and remote).\n\t * Use `editor` to create a local edit.\n\t */\n\treadonly forest: IForestSubscription;\n\n\t/**\n\t * Used to edit the state of the tree. Edits will be immediately applied locally to the tree.\n\t * If there is no transaction currently ongoing, then the edits will be submitted to Fluid immediately as well.\n\t */\n\treadonly editor: ISharedTreeEditor;\n\n\t/**\n\t * A collection of functions for managing transactions.\n\t */\n\treadonly transaction: ITransaction;\n\n\t/**\n\t * Spawn a new view which is based off of the current state of this view.\n\t * Any mutations of the new view will not apply to this view until the new view is merged back into this view via `merge()`.\n\t */\n\tfork(): ITreeCheckoutFork;\n\n\t/**\n\t * Apply all the new changes on the given view to this view.\n\t * @param view - a view which was created by a call to `fork()`.\n\t * It is automatically disposed after the merge completes.\n\t * @remarks All ongoing transactions (if any) in `view` will be committed before the merge.\n\t */\n\tmerge(view: ITreeCheckoutFork): void;\n\n\t/**\n\t * Apply all the new changes on the given view to this view.\n\t * @param view - a view which was created by a call to `fork()`.\n\t * @param disposeView - whether or not to dispose `view` after the merge completes.\n\t * @remarks All ongoing transactions (if any) in `view` will be committed before the merge.\n\t */\n\tmerge(view: ITreeCheckoutFork, disposeView: boolean): void;\n\n\t/**\n\t * Rebase the given view onto this view.\n\t * @param view - a view which was created by a call to `fork()`. It is modified by this operation.\n\t */\n\trebase(view: ITreeCheckoutFork): void;\n\n\t/**\n\t * Replaces all schema with the provided schema.\n\t * Can over-write preexisting schema, and removes unmentioned schema.\n\t */\n\tupdateSchema(newSchema: TreeStoredSchema): void;\n\n\t/**\n\t * Events about this view.\n\t */\n\treadonly events: ISubscribable<CheckoutEvents>;\n\n\t/**\n\t * Events about the root of the tree in this view.\n\t */\n\treadonly rootEvents: ISubscribable<AnchorSetRootEvents>;\n\n\t/**\n\t * Returns a JsonableTree for each tree that was removed from (and not restored to) the document.\n\t * This list is guaranteed to contain all nodes that are recoverable through undo/redo on this checkout.\n\t * The list may also contain additional nodes.\n\t *\n\t * This is only intended for use in testing and exceptional code paths: it is not performant.\n\t */\n\tgetRemovedRoots(): [string | number | undefined, number, JsonableTree][];\n}\n\n/**\n * Creates a {@link TreeCheckout}.\n * @param args - an object containing optional components that will be used to build the view.\n * Any components not provided will be created by default.\n * @remarks This does not create a {@link SharedTree}, but rather a view with the minimal state\n * and functionality required to implement {@link ITreeCheckout}.\n */\nexport function createTreeCheckout(args?: {\n\tbranch?: SharedTreeBranch<SharedTreeEditBuilder, SharedTreeChange>;\n\tchangeFamily?: ChangeFamily<SharedTreeEditBuilder, SharedTreeChange>;\n\tschema?: TreeStoredSchemaRepository;\n\tforest?: IEditableForest;\n\tevents?: ISubscribable<CheckoutEvents> &\n\t\tIEmitter<CheckoutEvents> &\n\t\tHasListeners<CheckoutEvents>;\n\tremovedRoots?: DetachedFieldIndex;\n}): TreeCheckout {\n\tconst forest = args?.forest ?? buildForest();\n\tconst changeFamily =\n\t\targs?.changeFamily ?? new SharedTreeChangeFamily({ jsonValidator: noopValidator });\n\tconst branch =\n\t\targs?.branch ??\n\t\tnew SharedTreeBranch(\n\t\t\t{\n\t\t\t\tchange: changeFamily.rebaser.compose([]),\n\t\t\t\trevision: assertIsRevisionTag(\"00000000-0000-4000-8000-000000000000\"),\n\t\t\t},\n\t\t\tchangeFamily,\n\t\t);\n\tconst schema = args?.schema ?? new TreeStoredSchemaRepository();\n\tconst events = args?.events ?? createEmitter();\n\n\tconst transaction = new Transaction(branch);\n\n\treturn new TreeCheckout(\n\t\ttransaction,\n\t\tbranch,\n\t\tchangeFamily,\n\t\tschema,\n\t\tforest,\n\t\tevents,\n\t\targs?.removedRoots,\n\t);\n}\n\n/**\n * A collection of functions for managing transactions.\n * Transactions allow edits to be batched into atomic units.\n * Edits made during a transaction will update the local state of the tree immediately, but will be squashed into a single edit when the transaction is committed.\n * If the transaction is aborted, the local state will be reset to what it was before the transaction began.\n * Transactions may nest, meaning that a transaction may be started while a transaction is already ongoing.\n *\n * To avoid updating observers of the view state with intermediate results during a transaction,\n * use {@link ITreeCheckout#fork} and {@link ISharedTreeFork#merge}.\n * @internal\n */\nexport interface ITransaction {\n\t/**\n\t * Start a new transaction.\n\t * If a transaction is already in progress when this new transaction starts, then this transaction will be \"nested\" inside of it,\n\t * i.e. the outer transaction will still be in progress after this new transaction is committed or aborted.\n\t *\n\t * @remarks - Asynchronous transactions are not supported on the root checkout,\n\t * since it is always kept up-to-date with the latest remote edits and the results of this rebasing (which might invalidate\n\t * the transaction) is not visible to the application author.\n\t * Instead,\n\t *\n\t * 1. fork the root checkout\n\t * 2. run the transaction on the fork\n\t * 3. merge the fork back into the root checkout\n\t *\n\t * @privateRemarks - There is currently no enforcement that asynchronous transactions don't happen on the root checkout.\n\t * AB#6488 tracks adding some enforcement to make it more clear to application authors that this is not supported.\n\t */\n\tstart(): void;\n\t/**\n\t * Close this transaction by squashing its edits and committing them as a single edit.\n\t * If this is the root checkout and there are no ongoing transactions remaining, the squashed edit will be submitted to Fluid.\n\t */\n\tcommit(): TransactionResult.Commit;\n\t/**\n\t * Close this transaction and revert the state of the tree to what it was before this transaction began.\n\t */\n\tabort(): TransactionResult.Abort;\n\t/**\n\t * True if there is at least one transaction currently in progress on this view, otherwise false.\n\t */\n\tinProgress(): boolean;\n}\n\nclass Transaction implements ITransaction {\n\tpublic constructor(\n\t\tprivate readonly branch: SharedTreeBranch<SharedTreeEditBuilder, SharedTreeChange>,\n\t) {}\n\n\tpublic start(): void {\n\t\tthis.branch.startTransaction();\n\t\tthis.branch.editor.enterTransaction();\n\t}\n\tpublic commit(): TransactionResult.Commit {\n\t\tthis.branch.commitTransaction();\n\t\tthis.branch.editor.exitTransaction();\n\t\treturn TransactionResult.Commit;\n\t}\n\tpublic abort(): TransactionResult.Abort {\n\t\tthis.branch.abortTransaction();\n\t\tthis.branch.editor.exitTransaction();\n\t\treturn TransactionResult.Abort;\n\t}\n\tpublic inProgress(): boolean {\n\t\treturn this.branch.isTransacting();\n\t}\n}\n\n/**\n * Branch (like in a version control system) of SharedTree.\n *\n * {@link ITreeCheckout} that has forked off of the main trunk/branch.\n * @internal\n */\nexport interface ITreeCheckoutFork extends ITreeCheckout {\n\t/**\n\t * Rebase the changes that have been applied to this view over all the new changes in the given view.\n\t * @param view - Either the root view or a view that was created by a call to `fork()`. It is not modified by this operation.\n\t */\n\trebaseOnto(view: ITreeCheckout): void;\n}\n\n/**\n * An implementation of {@link ITreeCheckoutFork}.\n */\nexport class TreeCheckout implements ITreeCheckoutFork {\n\tpublic constructor(\n\t\tpublic readonly transaction: ITransaction,\n\t\tprivate readonly branch: SharedTreeBranch<SharedTreeEditBuilder, SharedTreeChange>,\n\t\tprivate readonly changeFamily: ChangeFamily<SharedTreeEditBuilder, SharedTreeChange>,\n\t\tpublic readonly storedSchema: TreeStoredSchemaRepository,\n\t\tpublic readonly forest: IEditableForest,\n\t\tpublic readonly events: ISubscribable<CheckoutEvents> &\n\t\t\tIEmitter<CheckoutEvents> &\n\t\t\tHasListeners<CheckoutEvents>,\n\t\tprivate readonly removedRoots: DetachedFieldIndex = makeDetachedFieldIndex(\"repair\"),\n\t) {\n\t\t// We subscribe to `beforeChange` rather than `afterChange` here because it's possible that the change is invalid WRT our forest.\n\t\t// For example, a bug in the editor might produce a malformed change object and thus applying the change to the forest will throw an error.\n\t\t// In such a case we will crash here, preventing the change from being added to the commit graph, and preventing `afterChange` from firing.\n\t\t// One important consequence of this is that we will not submit the op containing the invalid change, since op submissions happens in response to `afterChange`.\n\t\tbranch.on(\"beforeChange\", (event) => {\n\t\t\tif (event.change !== undefined) {\n\t\t\t\t// Conflicts due to schema will be empty and thus are not applied.\n\t\t\t\tfor (const change of event.change.change.changes) {\n\t\t\t\t\tif (change.type === \"data\") {\n\t\t\t\t\t\tconst delta = intoDelta(\n\t\t\t\t\t\t\ttagChange(change.innerChange, event.change.revision),\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst anchorVisitor = this.forest.anchors.acquireVisitor();\n\t\t\t\t\t\tconst combinedVisitor = combineVisitors(\n\t\t\t\t\t\t\t[this.forest.acquireVisitor(), anchorVisitor],\n\t\t\t\t\t\t\t[anchorVisitor],\n\t\t\t\t\t\t);\n\t\t\t\t\t\tvisitDelta(delta, combinedVisitor, this.removedRoots);\n\t\t\t\t\t\tcombinedVisitor.free();\n\t\t\t\t\t} else if (change.type === \"schema\") {\n\t\t\t\t\t\tif (change.innerChange.schema !== undefined) {\n\t\t\t\t\t\t\tstoredSchema.apply(change.innerChange.schema.new);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfail(\"Unknown Shared Tree change type.\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.events.emit(\"afterBatch\");\n\t\t\t}\n\t\t\tif (event.type === \"replace\" && getChangeReplaceType(event) === \"transactionCommit\") {\n\t\t\t\tconst transactionRevision = event.newCommits[0].revision;\n\t\t\t\tfor (const transactionStep of event.removedCommits) {\n\t\t\t\t\tthis.removedRoots.updateMajor(transactionStep.revision, transactionRevision);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tbranch.on(\"revertible\", (revertible) => {\n\t\t\t// if there are no listeners, discard the revertible to avoid memory leaks\n\t\t\tif (!this.events.hasListeners(\"revertible\")) {\n\t\t\t\trevertible.discard();\n\t\t\t} else {\n\t\t\t\tthis.events.emit(\"revertible\", revertible);\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic get rootEvents(): ISubscribable<AnchorSetRootEvents> {\n\t\treturn this.forest.anchors;\n\t}\n\n\tpublic get editor(): ISharedTreeEditor {\n\t\treturn this.branch.editor;\n\t}\n\n\tpublic locate(anchor: Anchor): AnchorNode | undefined {\n\t\treturn this.forest.anchors.locate(anchor);\n\t}\n\n\tpublic fork(): TreeCheckout {\n\t\tconst anchors = new AnchorSet();\n\t\tconst branch = this.branch.fork();\n\t\tconst storedSchema = this.storedSchema.clone();\n\t\tconst forest = this.forest.clone(storedSchema, anchors);\n\t\tconst transaction = new Transaction(branch);\n\t\treturn new TreeCheckout(\n\t\t\ttransaction,\n\t\t\tbranch,\n\t\t\tthis.changeFamily,\n\t\t\tstoredSchema,\n\t\t\tforest,\n\t\t\tcreateEmitter(),\n\t\t\tthis.removedRoots.clone(),\n\t\t);\n\t}\n\n\tpublic rebase(view: TreeCheckout): void {\n\t\tview.branch.rebaseOnto(this.branch);\n\t}\n\n\tpublic rebaseOnto(view: ITreeCheckout): void {\n\t\tview.rebase(this);\n\t}\n\n\tpublic merge(view: TreeCheckout): void;\n\tpublic merge(view: TreeCheckout, disposeView: boolean): void;\n\tpublic merge(view: TreeCheckout, disposeView = true): void {\n\t\tassert(\n\t\t\t!this.transaction.inProgress() || disposeView,\n\t\t\t0x710 /* A view that is merged into an in-progress transaction must be disposed */,\n\t\t);\n\t\twhile (view.transaction.inProgress()) {\n\t\t\tview.transaction.commit();\n\t\t}\n\t\tthis.branch.merge(view.branch);\n\t\tif (disposeView) {\n\t\t\tview.dispose();\n\t\t}\n\t}\n\n\tpublic updateSchema(newSchema: TreeStoredSchema): void {\n\t\tthis.editor.schema.setStoredSchema(this.storedSchema.clone(), newSchema);\n\t}\n\n\t/**\n\t * Dispose this view, freezing its state and allowing the SharedTree to release resources required by it.\n\t * Attempts to further mutate or dispose this view will error.\n\t */\n\tpublic dispose(): void {\n\t\tthis.branch.dispose();\n\t}\n\n\tpublic getRemovedRoots(): [string | number | undefined, number, JsonableTree][] {\n\t\tconst trees: [string | number | undefined, number, JsonableTree][] = [];\n\t\tconst cursor = this.forest.allocateCursor();\n\t\tfor (const { id, root } of this.removedRoots.entries()) {\n\t\t\tconst parentField = this.removedRoots.toFieldKey(root);\n\t\t\tthis.forest.moveCursorToPath(\n\t\t\t\t{ parent: undefined, parentField, parentIndex: 0 },\n\t\t\t\tcursor,\n\t\t\t);\n\t\t\tconst tree = jsonableTreeFromCursor(cursor);\n\t\t\tif (tree !== undefined) {\n\t\t\t\ttrees.push([id.major, id.minor, tree]);\n\t\t\t}\n\t\t}\n\t\tcursor.free();\n\t\treturn trees;\n\t}\n}\n\n/**\n * Run a synchronous transaction on the given shared tree view.\n * This is a convenience helper around the {@link SharedTreeFork#transaction} APIs.\n * @param view - the view on which to run the transaction\n * @param transaction - the transaction function. This will be executed immediately. It is passed `view` as an argument for convenience.\n * If this function returns an `Abort` result then the transaction will be aborted. Otherwise, it will be committed.\n * @returns whether or not the transaction was committed or aborted\n * @internal\n */\nexport function runSynchronous(\n\tview: ITreeCheckout,\n\ttransaction: (view: ITreeCheckout) => TransactionResult | void,\n): TransactionResult {\n\tview.transaction.start();\n\tconst result = transaction(view);\n\treturn result === TransactionResult.Abort\n\t\t? view.transaction.abort()\n\t\t: view.transaction.commit();\n}\n"]}
@@ -0,0 +1,66 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ import { FieldKey } from "../core";
6
+ import { TreeFieldSchema, FlexTreeSchema, FlexTreeTypedField, FlexTreeContext, NodeKeyManager, Context } from "../feature-libraries";
7
+ import { IDisposable, disposeSymbol } from "../util";
8
+ import { ITreeCheckoutFork, ITreeCheckout } from "./treeCheckout";
9
+ /**
10
+ * An editable view of a (version control style) branch of a shared tree.
11
+ * @privateRemarks
12
+ * TODO:
13
+ * 1. Once ISharedTreeView is renamed this can become ISharedTreeView.
14
+ * 2. This object should be combined with or accessible from the TreeContext to allow easy access to thinks like branching.
15
+ * @internal
16
+ */
17
+ export interface FlexTreeView<in out TRoot extends TreeFieldSchema> extends IDisposable {
18
+ /**
19
+ * Context for controlling the EditableTree nodes produced from {@link FlexTreeView.editableTree}.
20
+ *
21
+ * @remarks
22
+ * This is an owning reference: disposing of this view disposes its context.
23
+ */
24
+ readonly context: FlexTreeContext;
25
+ /**
26
+ * Access non-view schema specific aspects of of this branch.
27
+ *
28
+ * @remarks
29
+ * This is a non-owning reference: disposing of this view does not impact the branch.
30
+ */
31
+ readonly checkout: ITreeCheckout;
32
+ /**
33
+ * Get a typed view of the tree content using the editable-tree-2 API.
34
+ */
35
+ readonly editableTree: FlexTreeTypedField<TRoot>;
36
+ /**
37
+ * Spawn a new view which is based off of the current state of this view.
38
+ * Any mutations of the new view will not apply to this view until the new view is merged back into this view via `merge()`.
39
+ */
40
+ fork(): ITreeViewFork<TRoot>;
41
+ }
42
+ /**
43
+ * Branch (like in a version control system) of SharedTree.
44
+ *
45
+ * {@link FlexTreeView} that has forked off of the main trunk/branch.
46
+ * @internal
47
+ */
48
+ export interface ITreeViewFork<in out TRoot extends TreeFieldSchema> extends FlexTreeView<TRoot> {
49
+ readonly checkout: ITreeCheckoutFork;
50
+ }
51
+ /**
52
+ * Implementation of FlexTreeView wrapping a ITreeCheckout.
53
+ */
54
+ export declare class CheckoutFlexTreeView<in out TRoot extends TreeFieldSchema, out TCheckout extends ITreeCheckout = ITreeCheckout> implements FlexTreeView<TRoot> {
55
+ readonly checkout: TCheckout;
56
+ readonly schema: FlexTreeSchema<TRoot>;
57
+ readonly nodeKeyManager: NodeKeyManager;
58
+ readonly nodeKeyFieldKey: FieldKey;
59
+ private readonly onDispose?;
60
+ readonly context: Context;
61
+ readonly editableTree: FlexTreeTypedField<TRoot>;
62
+ constructor(checkout: TCheckout, schema: FlexTreeSchema<TRoot>, nodeKeyManager: NodeKeyManager, nodeKeyFieldKey: FieldKey, onDispose?: (() => void) | undefined);
63
+ [disposeSymbol](): void;
64
+ fork(): CheckoutFlexTreeView<TRoot, ITreeCheckoutFork>;
65
+ }
66
+ //# sourceMappingURL=treeView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeView.d.ts","sourceRoot":"","sources":["../../src/shared-tree/treeView.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EACN,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,cAAc,EAEd,OAAO,EACP,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,eAAe,CAAE,SAAQ,WAAW;IACtF;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAElC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEjD;;;OAGG;IACH,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,eAAe,CAAE,SAAQ,YAAY,CAAC,KAAK,CAAC;IAC/F,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACrC;AAED;;GAEG;AACH,qBAAa,oBAAoB,CAChC,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,eAAe,EACpC,GAAG,CAAC,SAAS,SAAS,aAAa,GAAG,aAAa,CAClD,YAAW,YAAY,CAAC,KAAK,CAAC;aAKd,QAAQ,EAAE,SAAS;aACnB,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC;aAC7B,cAAc,EAAE,cAAc;aAC9B,eAAe,EAAE,QAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAP5B,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,YAAY,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBAEvC,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,EAC7B,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,QAAQ,EACxB,SAAS,CAAC,SAAQ,IAAI,aAAA;IAYjC,CAAC,aAAa,CAAC,IAAI,IAAI;IAKvB,IAAI,IAAI,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,CAAC;CAS7D"}
@@ -0,0 +1,29 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ import { getTreeContext, } from "../feature-libraries";
6
+ import { disposeSymbol } from "../util";
7
+ /**
8
+ * Implementation of FlexTreeView wrapping a ITreeCheckout.
9
+ */
10
+ export class CheckoutFlexTreeView {
11
+ constructor(checkout, schema, nodeKeyManager, nodeKeyFieldKey, onDispose) {
12
+ this.checkout = checkout;
13
+ this.schema = schema;
14
+ this.nodeKeyManager = nodeKeyManager;
15
+ this.nodeKeyFieldKey = nodeKeyFieldKey;
16
+ this.onDispose = onDispose;
17
+ this.context = getTreeContext(schema, this.checkout.forest, this.checkout.editor, nodeKeyManager, nodeKeyFieldKey);
18
+ this.editableTree = this.context.root;
19
+ }
20
+ [disposeSymbol]() {
21
+ this.context[disposeSymbol]();
22
+ this.onDispose?.();
23
+ }
24
+ fork() {
25
+ const branch = this.checkout.fork();
26
+ return new CheckoutFlexTreeView(branch, this.schema, this.nodeKeyManager, this.nodeKeyFieldKey);
27
+ }
28
+ }
29
+ //# sourceMappingURL=treeView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeView.js","sourceRoot":"","sources":["../../src/shared-tree/treeView.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAMN,cAAc,GAEd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAe,aAAa,EAAE,MAAM,SAAS,CAAC;AAkDrD;;GAEG;AACH,MAAM,OAAO,oBAAoB;IAOhC,YACiB,QAAmB,EACnB,MAA6B,EAC7B,cAA8B,EAC9B,eAAyB,EACxB,SAAsB;QAJvB,aAAQ,GAAR,QAAQ,CAAW;QACnB,WAAM,GAAN,MAAM,CAAuB;QAC7B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,oBAAe,GAAf,eAAe,CAAU;QACxB,cAAS,GAAT,SAAS,CAAa;QAEvC,IAAI,CAAC,OAAO,GAAG,cAAc,CAC5B,MAAM,EACN,IAAI,CAAC,QAAQ,CAAC,MAAM,EACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,EACpB,cAAc,EACd,eAAe,CACf,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAiC,CAAC;IACpE,CAAC;IAEM,CAAC,aAAa,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;IACpB,CAAC;IAEM,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpC,OAAO,IAAI,oBAAoB,CAC9B,MAAM,EACN,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,eAAe,CACpB,CAAC;IACH,CAAC;CACD","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { FieldKey } from \"../core\";\nimport {\n\tTreeFieldSchema,\n\tFlexTreeSchema,\n\tFlexTreeTypedField,\n\tFlexTreeContext,\n\tNodeKeyManager,\n\tgetTreeContext,\n\tContext,\n} from \"../feature-libraries\";\nimport { IDisposable, disposeSymbol } from \"../util\";\nimport { ITreeCheckoutFork, ITreeCheckout } from \"./treeCheckout\";\n\n/**\n * An editable view of a (version control style) branch of a shared tree.\n * @privateRemarks\n * TODO:\n * 1. Once ISharedTreeView is renamed this can become ISharedTreeView.\n * 2. This object should be combined with or accessible from the TreeContext to allow easy access to thinks like branching.\n * @internal\n */\nexport interface FlexTreeView<in out TRoot extends TreeFieldSchema> extends IDisposable {\n\t/**\n\t * Context for controlling the EditableTree nodes produced from {@link FlexTreeView.editableTree}.\n\t *\n\t * @remarks\n\t * This is an owning reference: disposing of this view disposes its context.\n\t */\n\treadonly context: FlexTreeContext;\n\n\t/**\n\t * Access non-view schema specific aspects of of this branch.\n\t *\n\t * @remarks\n\t * This is a non-owning reference: disposing of this view does not impact the branch.\n\t */\n\treadonly checkout: ITreeCheckout;\n\n\t/**\n\t * Get a typed view of the tree content using the editable-tree-2 API.\n\t */\n\treadonly editableTree: FlexTreeTypedField<TRoot>;\n\n\t/**\n\t * Spawn a new view which is based off of the current state of this view.\n\t * Any mutations of the new view will not apply to this view until the new view is merged back into this view via `merge()`.\n\t */\n\tfork(): ITreeViewFork<TRoot>;\n}\n\n/**\n * Branch (like in a version control system) of SharedTree.\n *\n * {@link FlexTreeView} that has forked off of the main trunk/branch.\n * @internal\n */\nexport interface ITreeViewFork<in out TRoot extends TreeFieldSchema> extends FlexTreeView<TRoot> {\n\treadonly checkout: ITreeCheckoutFork;\n}\n\n/**\n * Implementation of FlexTreeView wrapping a ITreeCheckout.\n */\nexport class CheckoutFlexTreeView<\n\tin out TRoot extends TreeFieldSchema,\n\tout TCheckout extends ITreeCheckout = ITreeCheckout,\n> implements FlexTreeView<TRoot>\n{\n\tpublic readonly context: Context;\n\tpublic readonly editableTree: FlexTreeTypedField<TRoot>;\n\tpublic constructor(\n\t\tpublic readonly checkout: TCheckout,\n\t\tpublic readonly schema: FlexTreeSchema<TRoot>,\n\t\tpublic readonly nodeKeyManager: NodeKeyManager,\n\t\tpublic readonly nodeKeyFieldKey: FieldKey,\n\t\tprivate readonly onDispose?: () => void,\n\t) {\n\t\tthis.context = getTreeContext(\n\t\t\tschema,\n\t\t\tthis.checkout.forest,\n\t\t\tthis.checkout.editor,\n\t\t\tnodeKeyManager,\n\t\t\tnodeKeyFieldKey,\n\t\t);\n\t\tthis.editableTree = this.context.root as FlexTreeTypedField<TRoot>;\n\t}\n\n\tpublic [disposeSymbol](): void {\n\t\tthis.context[disposeSymbol]();\n\t\tthis.onDispose?.();\n\t}\n\n\tpublic fork(): CheckoutFlexTreeView<TRoot, ITreeCheckoutFork> {\n\t\tconst branch = this.checkout.fork();\n\t\treturn new CheckoutFlexTreeView(\n\t\t\tbranch,\n\t\t\tthis.schema,\n\t\t\tthis.nodeKeyManager,\n\t\t\tthis.nodeKeyFieldKey,\n\t\t);\n\t}\n}\n"]}
@@ -0,0 +1,199 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ import { ChangeFamily, ChangeFamilyEditor, GraphCommit, TaggedChange, RevisionTag, Revertible, BranchRebaseResult } from "../core";
6
+ import { EventEmitter, ISubscribable } from "../events";
7
+ /**
8
+ * Describes a change to a `SharedTreeBranch`. Various operations can mutate the head of the branch;
9
+ * this change format describes each in terms of the "removed commits" (all commits which were present
10
+ * on the branch before the operation but are no longer present after) and the "new commits" (all
11
+ * commits which are present on the branch after the operation that were not present before). Each of
12
+ * the following event types also provides a `change` which contains the net change to the branch
13
+ * (or is undefined if there was no net change):
14
+ * * Append - when one or more commits are appended to the head of the branch, for example via
15
+ * a change applied by the branch's editor, or as a result of merging another branch into this one
16
+ * * Remove - when one or more commits are removed from the head of the branch. This occurs
17
+ * when a transaction is aborted and all commits pending in that transaction are removed.
18
+ * * Replace - when an operation simultaneously removes and appends commits. For example, when this
19
+ * branch is rebased and some commits are removed and replaced with rebased versions, or when a
20
+ * transaction completes and all pending commits are replaced with a single squash commit.
21
+ */
22
+ export type SharedTreeBranchChange<TChange> = {
23
+ type: "append";
24
+ change: TaggedChange<TChange>;
25
+ newCommits: readonly GraphCommit<TChange>[];
26
+ } | {
27
+ type: "remove";
28
+ change: TaggedChange<TChange> | undefined;
29
+ removedCommits: readonly GraphCommit<TChange>[];
30
+ } | {
31
+ type: "replace";
32
+ change: TaggedChange<TChange> | undefined;
33
+ removedCommits: readonly GraphCommit<TChange>[];
34
+ newCommits: readonly GraphCommit<TChange>[];
35
+ };
36
+ /**
37
+ * Returns the operation that caused the given {@link SharedTreeBranchChange}.
38
+ */
39
+ export declare function getChangeReplaceType(change: SharedTreeBranchChange<unknown> & {
40
+ type: "replace";
41
+ }): "transactionCommit" | "rebase";
42
+ /**
43
+ * The events emitted by a `SharedTreeBranch`
44
+ */
45
+ export interface SharedTreeBranchEvents<TEditor extends ChangeFamilyEditor, TChange> {
46
+ /**
47
+ * Fired just before the head of this branch changes.
48
+ * @param change - the change to this branch's state and commits
49
+ */
50
+ beforeChange(change: SharedTreeBranchChange<TChange>): void;
51
+ /**
52
+ * Fired just after the head of this branch changes.
53
+ * @param change - the change to this branch's state and commits
54
+ */
55
+ afterChange(change: SharedTreeBranchChange<TChange>): void;
56
+ /**
57
+ * Fired when a revertible change is made to this branch.
58
+ */
59
+ revertible(type: Revertible): void;
60
+ /**
61
+ * Fired when a revertible made on this branch is disposed.
62
+ */
63
+ revertibleDispose(revision: RevisionTag): void;
64
+ /**
65
+ * Fired when this branch forks
66
+ * @param fork - the new branch that forked off of this branch
67
+ */
68
+ fork(fork: SharedTreeBranch<TEditor, TChange>): void;
69
+ /**
70
+ * Fired after this branch is disposed
71
+ */
72
+ dispose(): void;
73
+ }
74
+ /**
75
+ * A branch of changes that can be applied to a SharedTree.
76
+ */
77
+ export declare class SharedTreeBranch<TEditor extends ChangeFamilyEditor, TChange> extends EventEmitter<SharedTreeBranchEvents<TEditor, TChange>> {
78
+ private head;
79
+ readonly changeFamily: ChangeFamily<TEditor, TChange>;
80
+ readonly editor: TEditor;
81
+ private readonly revertibles;
82
+ private readonly _revertibleCommits;
83
+ private readonly transactions;
84
+ private disposed;
85
+ /**
86
+ * Construct a new branch.
87
+ * @param head - the head of the branch
88
+ * @param changeFamily - determines the set of changes that this branch can commit
89
+ */
90
+ constructor(head: GraphCommit<TChange>, changeFamily: ChangeFamily<TEditor, TChange>);
91
+ /**
92
+ * Sets the head of this branch. Emits no change events.
93
+ */
94
+ setHead(head: GraphCommit<TChange>): void;
95
+ /**
96
+ * Apply a change to this branch.
97
+ * @param change - the change to apply
98
+ * @param revision - the revision of the new head commit of the branch that contains `change`
99
+ * @returns the change that was applied and the new head commit of the branch
100
+ */
101
+ apply(change: TChange, revision: RevisionTag): [change: TChange, newCommit: GraphCommit<TChange>];
102
+ private applyChange;
103
+ /**
104
+ * @returns the commit at the head of this branch.
105
+ */
106
+ getHead(): GraphCommit<TChange>;
107
+ /**
108
+ * Begin a transaction on this branch. If the transaction is committed via {@link commitTransaction},
109
+ * all commits made since this call will be squashed into a single head commit.
110
+ * @param repairStore - the repair store associated with this transaction
111
+ */
112
+ startTransaction(): void;
113
+ /**
114
+ * Commit the current transaction. There must be a transaction in progress that was begun via {@link startTransaction}.
115
+ * If there are commits in the current transaction, they will be squashed into a new single head commit.
116
+ * @returns the commits that were squashed and the new squash commit if a squash occurred, otherwise `undefined`.
117
+ * @remarks If the transaction had no changes applied during its lifetime, then no squash occurs (i.e. this method is a no-op).
118
+ * Even if the transaction contained only one change, it will still be replaced with an (equivalent) squash change.
119
+ */
120
+ commitTransaction(): [squashedCommits: GraphCommit<TChange>[], newCommit: GraphCommit<TChange>] | undefined;
121
+ /**
122
+ * Cancel the current transaction. There must be a transaction in progress that was begun via
123
+ * {@link startTransaction}. All commits made during the transaction will be removed.
124
+ * @returns the change to this branch resulting in the removal of the commits, and a list of the
125
+ * commits that were removed.
126
+ */
127
+ abortTransaction(): [
128
+ change: TChange | undefined,
129
+ abortedCommits: GraphCommit<TChange>[]
130
+ ];
131
+ /**
132
+ * True iff this branch is in the middle of a transaction that was begin via {@link startTransaction}
133
+ */
134
+ isTransacting(): boolean;
135
+ private popTransaction;
136
+ revertibleCommits(): IterableIterator<RevisionTag>;
137
+ /**
138
+ * Associate a revertible with a new commit of the same revision.
139
+ * This is applicable when a commit is replaced by a rebase or a local commit is sequenced.
140
+ */
141
+ updateRevertibleCommit(commit: GraphCommit<TChange>): void;
142
+ private makeSharedTreeRevertible;
143
+ private revert;
144
+ /**
145
+ * Spawn a new branch that is based off of the current state of this branch.
146
+ * Changes made to the new branch will not be applied to this branch until the new branch is merged back in.
147
+ *
148
+ * @remarks Forks created during a transaction will be disposed when the transaction ends.
149
+ */
150
+ fork(): SharedTreeBranch<TEditor, TChange>;
151
+ /**
152
+ * Rebase the changes that have been applied to this branch over divergent changes in the given branch.
153
+ * After this operation completes, this branch will be based off of `branch`.
154
+ *
155
+ * @remarks
156
+ * This operation can change the relative ordering between revertible commits therefore, the revertible event
157
+ * is not emitted during this operation.
158
+ *
159
+ * @param branch - the branch to rebase onto
160
+ * @param upTo - the furthest commit on `branch` over which to rebase (inclusive). Defaults to the head commit of `branch`.
161
+ * @returns the result of the rebase or undefined if nothing changed
162
+ */
163
+ rebaseOnto(branch: SharedTreeBranch<TEditor, TChange>, upTo?: GraphCommit<TChange>): BranchRebaseResult<TChange> | undefined;
164
+ /**
165
+ * Apply all the divergent changes on the given branch to this branch.
166
+ *
167
+ * @remarks
168
+ * Revertible events are emitted for new local commits merged into this branch.
169
+ *
170
+ * @param branch - the branch to merge into this branch
171
+ * @returns the net change to this branch and the commits that were added to this branch by the merge,
172
+ * or undefined if nothing changed
173
+ */
174
+ merge(branch: SharedTreeBranch<TEditor, TChange>): [change: TChange, newCommits: GraphCommit<TChange>[]] | undefined;
175
+ /** Rebase `branchHead` onto `onto`, but return undefined if nothing changed */
176
+ private rebaseBranch;
177
+ /**
178
+ * Dispose this branch, freezing its state.
179
+ *
180
+ * @remarks
181
+ * Attempts to further mutate the branch will error.
182
+ * Any transactions in progress will be aborted.
183
+ * Calling dispose more than once has no effect.
184
+ */
185
+ dispose(): void;
186
+ private assertNotDisposed;
187
+ }
188
+ /**
189
+ * Registers an event listener that fires when the given forkable object forks.
190
+ * The listener will also fire when any of those forks fork, and when those forks of forks fork, and so on.
191
+ * @param forkable - an object that emits an event when it is forked
192
+ * @param onFork - the fork event listener
193
+ * @returns a function which when called will deregister all registrations (including transitive) created by this function.
194
+ * The deregister function has undefined behavior if called more than once.
195
+ */
196
+ export declare function onForkTransitive<T extends ISubscribable<{
197
+ fork: (t: T) => void;
198
+ }>>(forkable: T, onFork: (fork: T) => void): () => void;
199
+ //# sourceMappingURL=branch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branch.d.ts","sourceRoot":"","sources":["../../src/shared-tree-core/branch.ts"],"names":[],"mappings":"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"}