@fluidframework/tree 2.4.0-294316 → 2.4.0-297027

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 (606) hide show
  1. package/api-report/tree.alpha.api.md +58 -28
  2. package/api-report/tree.beta.api.md +38 -27
  3. package/api-report/tree.legacy.alpha.api.md +38 -27
  4. package/api-report/tree.legacy.public.api.md +38 -27
  5. package/api-report/tree.public.api.md +38 -27
  6. package/dist/alpha.d.ts +6 -0
  7. package/dist/beta.d.ts +3 -0
  8. package/dist/core/schema-stored/schema.d.ts +7 -0
  9. package/dist/core/schema-stored/schema.d.ts.map +1 -1
  10. package/dist/core/schema-stored/schema.js +9 -0
  11. package/dist/core/schema-stored/schema.js.map +1 -1
  12. package/dist/core/tree/anchorSet.d.ts +1 -2
  13. package/dist/core/tree/anchorSet.d.ts.map +1 -1
  14. package/dist/core/tree/anchorSet.js +2 -2
  15. package/dist/core/tree/anchorSet.js.map +1 -1
  16. package/dist/core/tree/detachedFieldIndex.d.ts.map +1 -1
  17. package/dist/core/tree/detachedFieldIndex.js +13 -2
  18. package/dist/core/tree/detachedFieldIndex.js.map +1 -1
  19. package/dist/core/tree/detachedFieldIndexTypes.d.ts +1 -1
  20. package/dist/core/tree/detachedFieldIndexTypes.js.map +1 -1
  21. package/dist/feature-libraries/editableTreeBinder.d.ts +3 -230
  22. package/dist/feature-libraries/editableTreeBinder.d.ts.map +1 -1
  23. package/dist/feature-libraries/editableTreeBinder.js +1 -539
  24. package/dist/feature-libraries/editableTreeBinder.js.map +1 -1
  25. package/dist/feature-libraries/flex-tree/context.d.ts +7 -14
  26. package/dist/feature-libraries/flex-tree/context.d.ts.map +1 -1
  27. package/dist/feature-libraries/flex-tree/context.js +3 -3
  28. package/dist/feature-libraries/flex-tree/context.js.map +1 -1
  29. package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts +2 -16
  30. package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
  31. package/dist/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
  32. package/dist/feature-libraries/flex-tree/lazyEntity.d.ts +2 -3
  33. package/dist/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -1
  34. package/dist/feature-libraries/flex-tree/lazyEntity.js +1 -2
  35. package/dist/feature-libraries/flex-tree/lazyEntity.js.map +1 -1
  36. package/dist/feature-libraries/flex-tree/lazyField.d.ts +10 -15
  37. package/dist/feature-libraries/flex-tree/lazyField.d.ts.map +1 -1
  38. package/dist/feature-libraries/flex-tree/lazyField.js +18 -20
  39. package/dist/feature-libraries/flex-tree/lazyField.js.map +1 -1
  40. package/dist/feature-libraries/flex-tree/lazyNode.d.ts +4 -5
  41. package/dist/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -1
  42. package/dist/feature-libraries/flex-tree/lazyNode.js +13 -23
  43. package/dist/feature-libraries/flex-tree/lazyNode.js.map +1 -1
  44. package/dist/feature-libraries/flex-tree/utilities.js +1 -1
  45. package/dist/feature-libraries/flex-tree/utilities.js.map +1 -1
  46. package/dist/feature-libraries/index.d.ts +4 -7
  47. package/dist/feature-libraries/index.d.ts.map +1 -1
  48. package/dist/feature-libraries/index.js +5 -31
  49. package/dist/feature-libraries/index.js.map +1 -1
  50. package/dist/feature-libraries/sequence-field/formatV1.d.ts +18 -18
  51. package/dist/feature-libraries/sequence-field/formatV2.d.ts +18 -18
  52. package/dist/feature-libraries/sequence-field/formatV3.d.ts +27 -27
  53. package/dist/feature-libraries/typed-schema/flexList.d.ts +1 -46
  54. package/dist/feature-libraries/typed-schema/flexList.d.ts.map +1 -1
  55. package/dist/feature-libraries/typed-schema/flexList.js +1 -13
  56. package/dist/feature-libraries/typed-schema/flexList.js.map +1 -1
  57. package/dist/feature-libraries/typed-schema/index.d.ts +2 -4
  58. package/dist/feature-libraries/typed-schema/index.d.ts.map +1 -1
  59. package/dist/feature-libraries/typed-schema/index.js +1 -19
  60. package/dist/feature-libraries/typed-schema/index.js.map +1 -1
  61. package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts +0 -212
  62. package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -1
  63. package/dist/feature-libraries/typed-schema/typedTreeSchema.js +0 -266
  64. package/dist/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -1
  65. package/dist/index.d.ts +3 -3
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +2 -1
  68. package/dist/index.js.map +1 -1
  69. package/dist/internalTypes.d.ts +1 -1
  70. package/dist/internalTypes.d.ts.map +1 -1
  71. package/dist/internalTypes.js.map +1 -1
  72. package/dist/legacy.d.ts +3 -0
  73. package/dist/packageVersion.d.ts +1 -1
  74. package/dist/packageVersion.js +1 -1
  75. package/dist/packageVersion.js.map +1 -1
  76. package/dist/public.d.ts +3 -0
  77. package/dist/shared-tree/checkoutFlexTreeView.d.ts +3 -3
  78. package/dist/shared-tree/checkoutFlexTreeView.d.ts.map +1 -1
  79. package/dist/shared-tree/checkoutFlexTreeView.js +1 -1
  80. package/dist/shared-tree/checkoutFlexTreeView.js.map +1 -1
  81. package/dist/shared-tree/index.d.ts +3 -3
  82. package/dist/shared-tree/index.d.ts.map +1 -1
  83. package/dist/shared-tree/index.js +2 -3
  84. package/dist/shared-tree/index.js.map +1 -1
  85. package/dist/shared-tree/schematizeTree.d.ts +1 -40
  86. package/dist/shared-tree/schematizeTree.d.ts.map +1 -1
  87. package/dist/shared-tree/schematizeTree.js +2 -11
  88. package/dist/shared-tree/schematizeTree.js.map +1 -1
  89. package/dist/shared-tree/schematizingTreeView.d.ts +8 -7
  90. package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
  91. package/dist/shared-tree/schematizingTreeView.js +16 -8
  92. package/dist/shared-tree/schematizingTreeView.js.map +1 -1
  93. package/dist/shared-tree/sharedTree.d.ts +19 -2
  94. package/dist/shared-tree/sharedTree.d.ts.map +1 -1
  95. package/dist/shared-tree/sharedTree.js +10 -2
  96. package/dist/shared-tree/sharedTree.js.map +1 -1
  97. package/dist/shared-tree/treeCheckout.d.ts +71 -41
  98. package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
  99. package/dist/shared-tree/treeCheckout.js +116 -84
  100. package/dist/shared-tree/treeCheckout.js.map +1 -1
  101. package/dist/shared-tree-core/branch.d.ts +8 -11
  102. package/dist/shared-tree-core/branch.d.ts.map +1 -1
  103. package/dist/shared-tree-core/branch.js +12 -15
  104. package/dist/shared-tree-core/branch.js.map +1 -1
  105. package/dist/simple-tree/api/create.d.ts +1 -1
  106. package/dist/simple-tree/api/create.d.ts.map +1 -1
  107. package/dist/simple-tree/api/create.js +11 -13
  108. package/dist/simple-tree/api/create.js.map +1 -1
  109. package/dist/simple-tree/api/getJsonSchema.d.ts +3 -3
  110. package/dist/simple-tree/api/getJsonSchema.d.ts.map +1 -1
  111. package/dist/simple-tree/api/getJsonSchema.js +1 -1
  112. package/dist/simple-tree/api/getJsonSchema.js.map +1 -1
  113. package/dist/simple-tree/api/getSimpleSchema.d.ts +2 -2
  114. package/dist/simple-tree/api/getSimpleSchema.d.ts.map +1 -1
  115. package/dist/simple-tree/api/getSimpleSchema.js.map +1 -1
  116. package/dist/simple-tree/api/index.d.ts +2 -1
  117. package/dist/simple-tree/api/index.d.ts.map +1 -1
  118. package/dist/simple-tree/api/index.js +3 -1
  119. package/dist/simple-tree/api/index.js.map +1 -1
  120. package/dist/simple-tree/api/schemaFactory.d.ts +6 -6
  121. package/dist/simple-tree/api/schemaFactory.d.ts.map +1 -1
  122. package/dist/simple-tree/api/schemaFactory.js +15 -2
  123. package/dist/simple-tree/api/schemaFactory.js.map +1 -1
  124. package/dist/simple-tree/api/schemaFactoryRecursive.d.ts +3 -3
  125. package/dist/simple-tree/api/schemaFactoryRecursive.d.ts.map +1 -1
  126. package/dist/simple-tree/api/schemaFactoryRecursive.js.map +1 -1
  127. package/dist/simple-tree/api/simpleSchema.d.ts +14 -10
  128. package/dist/simple-tree/api/simpleSchema.d.ts.map +1 -1
  129. package/dist/simple-tree/api/simpleSchema.js.map +1 -1
  130. package/dist/simple-tree/api/tree.d.ts +12 -6
  131. package/dist/simple-tree/api/tree.d.ts.map +1 -1
  132. package/dist/simple-tree/api/tree.js +4 -4
  133. package/dist/simple-tree/api/tree.js.map +1 -1
  134. package/dist/simple-tree/api/treeNodeApi.d.ts.map +1 -1
  135. package/dist/simple-tree/api/treeNodeApi.js +8 -6
  136. package/dist/simple-tree/api/treeNodeApi.js.map +1 -1
  137. package/dist/simple-tree/api/verboseTree.d.ts.map +1 -1
  138. package/dist/simple-tree/api/verboseTree.js +6 -10
  139. package/dist/simple-tree/api/verboseTree.js.map +1 -1
  140. package/{lib/feature-libraries/typed-schema → dist/simple-tree/api}/view.d.ts +4 -11
  141. package/dist/simple-tree/api/view.d.ts.map +1 -0
  142. package/dist/{feature-libraries/typed-schema → simple-tree/api}/view.js +9 -9
  143. package/dist/simple-tree/api/view.js.map +1 -0
  144. package/dist/simple-tree/api/viewSchemaToSimpleSchema.d.ts +2 -2
  145. package/dist/simple-tree/api/viewSchemaToSimpleSchema.d.ts.map +1 -1
  146. package/dist/simple-tree/api/viewSchemaToSimpleSchema.js +7 -1
  147. package/dist/simple-tree/api/viewSchemaToSimpleSchema.js.map +1 -1
  148. package/dist/simple-tree/arrayNode.d.ts +147 -14
  149. package/dist/simple-tree/arrayNode.d.ts.map +1 -1
  150. package/dist/simple-tree/arrayNode.js +32 -20
  151. package/dist/simple-tree/arrayNode.js.map +1 -1
  152. package/dist/simple-tree/core/context.d.ts +55 -0
  153. package/dist/simple-tree/core/context.d.ts.map +1 -0
  154. package/dist/simple-tree/core/context.js +60 -0
  155. package/dist/simple-tree/core/context.js.map +1 -0
  156. package/dist/simple-tree/core/getOrCreateNode.d.ts +15 -0
  157. package/dist/simple-tree/core/getOrCreateNode.d.ts.map +1 -0
  158. package/dist/simple-tree/core/getOrCreateNode.js +36 -0
  159. package/dist/simple-tree/core/getOrCreateNode.js.map +1 -0
  160. package/dist/simple-tree/core/index.d.ts +7 -3
  161. package/dist/simple-tree/core/index.d.ts.map +1 -1
  162. package/dist/simple-tree/core/index.js +16 -7
  163. package/dist/simple-tree/core/index.js.map +1 -1
  164. package/dist/simple-tree/core/schemaCaching.d.ts +5 -13
  165. package/dist/simple-tree/core/schemaCaching.d.ts.map +1 -1
  166. package/dist/simple-tree/core/schemaCaching.js +16 -45
  167. package/dist/simple-tree/core/schemaCaching.js.map +1 -1
  168. package/dist/simple-tree/core/treeNodeKernel.d.ts +29 -7
  169. package/dist/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
  170. package/dist/simple-tree/core/treeNodeKernel.js +94 -58
  171. package/dist/simple-tree/core/treeNodeKernel.js.map +1 -1
  172. package/dist/simple-tree/core/treeNodeSchema.d.ts +24 -0
  173. package/dist/simple-tree/core/treeNodeSchema.d.ts.map +1 -1
  174. package/dist/simple-tree/core/treeNodeSchema.js.map +1 -1
  175. package/dist/simple-tree/core/types.d.ts +0 -5
  176. package/dist/simple-tree/core/types.d.ts.map +1 -1
  177. package/dist/simple-tree/core/types.js.map +1 -1
  178. package/dist/simple-tree/core/unhydratedFlexTree.d.ts +139 -0
  179. package/dist/simple-tree/core/unhydratedFlexTree.d.ts.map +1 -0
  180. package/dist/{feature-libraries/flex-map-tree/mapTreeNode.js → simple-tree/core/unhydratedFlexTree.js} +112 -132
  181. package/dist/simple-tree/core/unhydratedFlexTree.js.map +1 -0
  182. package/dist/simple-tree/{walkSchema.d.ts → core/walkSchema.d.ts} +8 -4
  183. package/dist/simple-tree/core/walkSchema.d.ts.map +1 -0
  184. package/dist/simple-tree/core/walkSchema.js +34 -0
  185. package/dist/simple-tree/core/walkSchema.js.map +1 -0
  186. package/dist/simple-tree/createContext.d.ts +11 -0
  187. package/dist/simple-tree/createContext.d.ts.map +1 -0
  188. package/dist/simple-tree/createContext.js +25 -0
  189. package/dist/simple-tree/createContext.js.map +1 -0
  190. package/dist/simple-tree/index.d.ts +3 -4
  191. package/dist/simple-tree/index.d.ts.map +1 -1
  192. package/dist/simple-tree/index.js +7 -7
  193. package/dist/simple-tree/index.js.map +1 -1
  194. package/dist/simple-tree/leafNodeSchema.d.ts +1 -0
  195. package/dist/simple-tree/leafNodeSchema.d.ts.map +1 -1
  196. package/dist/simple-tree/leafNodeSchema.js +1 -2
  197. package/dist/simple-tree/leafNodeSchema.js.map +1 -1
  198. package/dist/simple-tree/mapNode.d.ts +4 -4
  199. package/dist/simple-tree/mapNode.d.ts.map +1 -1
  200. package/dist/simple-tree/mapNode.js +9 -5
  201. package/dist/simple-tree/mapNode.js.map +1 -1
  202. package/dist/simple-tree/objectNode.d.ts +8 -8
  203. package/dist/simple-tree/objectNode.d.ts.map +1 -1
  204. package/dist/simple-tree/objectNode.js +33 -14
  205. package/dist/simple-tree/objectNode.js.map +1 -1
  206. package/dist/simple-tree/objectNodeTypes.d.ts +7 -3
  207. package/dist/simple-tree/objectNodeTypes.d.ts.map +1 -1
  208. package/dist/simple-tree/objectNodeTypes.js.map +1 -1
  209. package/dist/simple-tree/proxies.d.ts +1 -2
  210. package/dist/simple-tree/proxies.d.ts.map +1 -1
  211. package/dist/simple-tree/proxies.js +6 -22
  212. package/dist/simple-tree/proxies.js.map +1 -1
  213. package/dist/simple-tree/schemaTypes.d.ts +2 -2
  214. package/dist/simple-tree/schemaTypes.d.ts.map +1 -1
  215. package/dist/simple-tree/schemaTypes.js.map +1 -1
  216. package/dist/simple-tree/toFlexSchema.d.ts +6 -36
  217. package/dist/simple-tree/toFlexSchema.d.ts.map +1 -1
  218. package/dist/simple-tree/toFlexSchema.js +58 -142
  219. package/dist/simple-tree/toFlexSchema.js.map +1 -1
  220. package/dist/simple-tree/toMapTree.d.ts.map +1 -1
  221. package/dist/simple-tree/toMapTree.js +2 -2
  222. package/dist/simple-tree/toMapTree.js.map +1 -1
  223. package/dist/simple-tree/treeNodeValid.d.ts +13 -5
  224. package/dist/simple-tree/treeNodeValid.d.ts.map +1 -1
  225. package/dist/simple-tree/treeNodeValid.js +19 -10
  226. package/dist/simple-tree/treeNodeValid.js.map +1 -1
  227. package/dist/simple-tree/typesUnsafe.d.ts +4 -4
  228. package/dist/simple-tree/typesUnsafe.d.ts.map +1 -1
  229. package/dist/simple-tree/typesUnsafe.js.map +1 -1
  230. package/dist/simple-tree/walkFieldSchema.d.ts +11 -0
  231. package/dist/simple-tree/walkFieldSchema.d.ts.map +1 -0
  232. package/dist/simple-tree/walkFieldSchema.js +17 -0
  233. package/dist/simple-tree/walkFieldSchema.js.map +1 -0
  234. package/dist/util/index.d.ts +1 -1
  235. package/dist/util/index.d.ts.map +1 -1
  236. package/dist/util/index.js.map +1 -1
  237. package/dist/util/typeUtils.d.ts +14 -45
  238. package/dist/util/typeUtils.d.ts.map +1 -1
  239. package/dist/util/typeUtils.js.map +1 -1
  240. package/lib/alpha.d.ts +6 -0
  241. package/lib/beta.d.ts +3 -0
  242. package/lib/core/schema-stored/schema.d.ts +7 -0
  243. package/lib/core/schema-stored/schema.d.ts.map +1 -1
  244. package/lib/core/schema-stored/schema.js +9 -0
  245. package/lib/core/schema-stored/schema.js.map +1 -1
  246. package/lib/core/tree/anchorSet.d.ts +1 -2
  247. package/lib/core/tree/anchorSet.d.ts.map +1 -1
  248. package/lib/core/tree/anchorSet.js +2 -2
  249. package/lib/core/tree/anchorSet.js.map +1 -1
  250. package/lib/core/tree/detachedFieldIndex.d.ts.map +1 -1
  251. package/lib/core/tree/detachedFieldIndex.js +13 -2
  252. package/lib/core/tree/detachedFieldIndex.js.map +1 -1
  253. package/lib/core/tree/detachedFieldIndexTypes.d.ts +1 -1
  254. package/lib/core/tree/detachedFieldIndexTypes.js.map +1 -1
  255. package/lib/feature-libraries/editableTreeBinder.d.ts +3 -230
  256. package/lib/feature-libraries/editableTreeBinder.d.ts.map +1 -1
  257. package/lib/feature-libraries/editableTreeBinder.js +1 -532
  258. package/lib/feature-libraries/editableTreeBinder.js.map +1 -1
  259. package/lib/feature-libraries/flex-tree/context.d.ts +7 -14
  260. package/lib/feature-libraries/flex-tree/context.d.ts.map +1 -1
  261. package/lib/feature-libraries/flex-tree/context.js +3 -3
  262. package/lib/feature-libraries/flex-tree/context.js.map +1 -1
  263. package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts +2 -16
  264. package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
  265. package/lib/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
  266. package/lib/feature-libraries/flex-tree/lazyEntity.d.ts +2 -3
  267. package/lib/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -1
  268. package/lib/feature-libraries/flex-tree/lazyEntity.js +1 -2
  269. package/lib/feature-libraries/flex-tree/lazyEntity.js.map +1 -1
  270. package/lib/feature-libraries/flex-tree/lazyField.d.ts +10 -15
  271. package/lib/feature-libraries/flex-tree/lazyField.d.ts.map +1 -1
  272. package/lib/feature-libraries/flex-tree/lazyField.js +18 -20
  273. package/lib/feature-libraries/flex-tree/lazyField.js.map +1 -1
  274. package/lib/feature-libraries/flex-tree/lazyNode.d.ts +4 -5
  275. package/lib/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -1
  276. package/lib/feature-libraries/flex-tree/lazyNode.js +13 -23
  277. package/lib/feature-libraries/flex-tree/lazyNode.js.map +1 -1
  278. package/lib/feature-libraries/flex-tree/utilities.js +1 -1
  279. package/lib/feature-libraries/flex-tree/utilities.js.map +1 -1
  280. package/lib/feature-libraries/index.d.ts +4 -7
  281. package/lib/feature-libraries/index.d.ts.map +1 -1
  282. package/lib/feature-libraries/index.js +4 -6
  283. package/lib/feature-libraries/index.js.map +1 -1
  284. package/lib/feature-libraries/sequence-field/formatV1.d.ts +18 -18
  285. package/lib/feature-libraries/sequence-field/formatV2.d.ts +18 -18
  286. package/lib/feature-libraries/sequence-field/formatV3.d.ts +27 -27
  287. package/lib/feature-libraries/typed-schema/flexList.d.ts +1 -46
  288. package/lib/feature-libraries/typed-schema/flexList.d.ts.map +1 -1
  289. package/lib/feature-libraries/typed-schema/flexList.js +0 -11
  290. package/lib/feature-libraries/typed-schema/flexList.js.map +1 -1
  291. package/lib/feature-libraries/typed-schema/index.d.ts +2 -4
  292. package/lib/feature-libraries/typed-schema/index.d.ts.map +1 -1
  293. package/lib/feature-libraries/typed-schema/index.js +0 -3
  294. package/lib/feature-libraries/typed-schema/index.js.map +1 -1
  295. package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts +0 -212
  296. package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -1
  297. package/lib/feature-libraries/typed-schema/typedTreeSchema.js +1 -253
  298. package/lib/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -1
  299. package/lib/index.d.ts +3 -3
  300. package/lib/index.d.ts.map +1 -1
  301. package/lib/index.js +1 -1
  302. package/lib/index.js.map +1 -1
  303. package/lib/internalTypes.d.ts +1 -1
  304. package/lib/internalTypes.d.ts.map +1 -1
  305. package/lib/internalTypes.js.map +1 -1
  306. package/lib/legacy.d.ts +3 -0
  307. package/lib/packageVersion.d.ts +1 -1
  308. package/lib/packageVersion.js +1 -1
  309. package/lib/packageVersion.js.map +1 -1
  310. package/lib/public.d.ts +3 -0
  311. package/lib/shared-tree/checkoutFlexTreeView.d.ts +3 -3
  312. package/lib/shared-tree/checkoutFlexTreeView.d.ts.map +1 -1
  313. package/lib/shared-tree/checkoutFlexTreeView.js +1 -1
  314. package/lib/shared-tree/checkoutFlexTreeView.js.map +1 -1
  315. package/lib/shared-tree/index.d.ts +3 -3
  316. package/lib/shared-tree/index.d.ts.map +1 -1
  317. package/lib/shared-tree/index.js +1 -2
  318. package/lib/shared-tree/index.js.map +1 -1
  319. package/lib/shared-tree/schematizeTree.d.ts +1 -40
  320. package/lib/shared-tree/schematizeTree.d.ts.map +1 -1
  321. package/lib/shared-tree/schematizeTree.js +1 -9
  322. package/lib/shared-tree/schematizeTree.js.map +1 -1
  323. package/lib/shared-tree/schematizingTreeView.d.ts +8 -7
  324. package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
  325. package/lib/shared-tree/schematizingTreeView.js +19 -11
  326. package/lib/shared-tree/schematizingTreeView.js.map +1 -1
  327. package/lib/shared-tree/sharedTree.d.ts +19 -2
  328. package/lib/shared-tree/sharedTree.d.ts.map +1 -1
  329. package/lib/shared-tree/sharedTree.js +10 -3
  330. package/lib/shared-tree/sharedTree.js.map +1 -1
  331. package/lib/shared-tree/treeCheckout.d.ts +71 -41
  332. package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
  333. package/lib/shared-tree/treeCheckout.js +118 -86
  334. package/lib/shared-tree/treeCheckout.js.map +1 -1
  335. package/lib/shared-tree-core/branch.d.ts +8 -11
  336. package/lib/shared-tree-core/branch.d.ts.map +1 -1
  337. package/lib/shared-tree-core/branch.js +12 -15
  338. package/lib/shared-tree-core/branch.js.map +1 -1
  339. package/lib/simple-tree/api/create.d.ts +1 -1
  340. package/lib/simple-tree/api/create.d.ts.map +1 -1
  341. package/lib/simple-tree/api/create.js +14 -16
  342. package/lib/simple-tree/api/create.js.map +1 -1
  343. package/lib/simple-tree/api/getJsonSchema.d.ts +3 -3
  344. package/lib/simple-tree/api/getJsonSchema.d.ts.map +1 -1
  345. package/lib/simple-tree/api/getJsonSchema.js +1 -1
  346. package/lib/simple-tree/api/getJsonSchema.js.map +1 -1
  347. package/lib/simple-tree/api/getSimpleSchema.d.ts +2 -2
  348. package/lib/simple-tree/api/getSimpleSchema.d.ts.map +1 -1
  349. package/lib/simple-tree/api/getSimpleSchema.js.map +1 -1
  350. package/lib/simple-tree/api/index.d.ts +2 -1
  351. package/lib/simple-tree/api/index.d.ts.map +1 -1
  352. package/lib/simple-tree/api/index.js +1 -0
  353. package/lib/simple-tree/api/index.js.map +1 -1
  354. package/lib/simple-tree/api/schemaFactory.d.ts +6 -6
  355. package/lib/simple-tree/api/schemaFactory.d.ts.map +1 -1
  356. package/lib/simple-tree/api/schemaFactory.js +15 -2
  357. package/lib/simple-tree/api/schemaFactory.js.map +1 -1
  358. package/lib/simple-tree/api/schemaFactoryRecursive.d.ts +3 -3
  359. package/lib/simple-tree/api/schemaFactoryRecursive.d.ts.map +1 -1
  360. package/lib/simple-tree/api/schemaFactoryRecursive.js.map +1 -1
  361. package/lib/simple-tree/api/simpleSchema.d.ts +14 -10
  362. package/lib/simple-tree/api/simpleSchema.d.ts.map +1 -1
  363. package/lib/simple-tree/api/simpleSchema.js.map +1 -1
  364. package/lib/simple-tree/api/tree.d.ts +12 -6
  365. package/lib/simple-tree/api/tree.d.ts.map +1 -1
  366. package/lib/simple-tree/api/tree.js +4 -4
  367. package/lib/simple-tree/api/tree.js.map +1 -1
  368. package/lib/simple-tree/api/treeNodeApi.d.ts.map +1 -1
  369. package/lib/simple-tree/api/treeNodeApi.js +10 -8
  370. package/lib/simple-tree/api/treeNodeApi.js.map +1 -1
  371. package/lib/simple-tree/api/verboseTree.d.ts.map +1 -1
  372. package/lib/simple-tree/api/verboseTree.js +6 -10
  373. package/lib/simple-tree/api/verboseTree.js.map +1 -1
  374. package/{dist/feature-libraries/typed-schema → lib/simple-tree/api}/view.d.ts +4 -11
  375. package/lib/simple-tree/api/view.d.ts.map +1 -0
  376. package/lib/{feature-libraries/typed-schema → simple-tree/api}/view.js +9 -9
  377. package/lib/simple-tree/api/view.js.map +1 -0
  378. package/lib/simple-tree/api/viewSchemaToSimpleSchema.d.ts +2 -2
  379. package/lib/simple-tree/api/viewSchemaToSimpleSchema.d.ts.map +1 -1
  380. package/lib/simple-tree/api/viewSchemaToSimpleSchema.js +7 -1
  381. package/lib/simple-tree/api/viewSchemaToSimpleSchema.js.map +1 -1
  382. package/lib/simple-tree/arrayNode.d.ts +147 -14
  383. package/lib/simple-tree/arrayNode.d.ts.map +1 -1
  384. package/lib/simple-tree/arrayNode.js +37 -25
  385. package/lib/simple-tree/arrayNode.js.map +1 -1
  386. package/lib/simple-tree/core/context.d.ts +55 -0
  387. package/lib/simple-tree/core/context.d.ts.map +1 -0
  388. package/lib/simple-tree/core/context.js +55 -0
  389. package/lib/simple-tree/core/context.js.map +1 -0
  390. package/lib/simple-tree/core/getOrCreateNode.d.ts +15 -0
  391. package/lib/simple-tree/core/getOrCreateNode.d.ts.map +1 -0
  392. package/lib/simple-tree/core/getOrCreateNode.js +32 -0
  393. package/lib/simple-tree/core/getOrCreateNode.js.map +1 -0
  394. package/lib/simple-tree/core/index.d.ts +7 -3
  395. package/lib/simple-tree/core/index.d.ts.map +1 -1
  396. package/lib/simple-tree/core/index.js +6 -2
  397. package/lib/simple-tree/core/index.js.map +1 -1
  398. package/lib/simple-tree/core/schemaCaching.d.ts +5 -13
  399. package/lib/simple-tree/core/schemaCaching.d.ts.map +1 -1
  400. package/lib/simple-tree/core/schemaCaching.js +13 -39
  401. package/lib/simple-tree/core/schemaCaching.js.map +1 -1
  402. package/lib/simple-tree/core/treeNodeKernel.d.ts +29 -7
  403. package/lib/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
  404. package/lib/simple-tree/core/treeNodeKernel.js +89 -54
  405. package/lib/simple-tree/core/treeNodeKernel.js.map +1 -1
  406. package/lib/simple-tree/core/treeNodeSchema.d.ts +24 -0
  407. package/lib/simple-tree/core/treeNodeSchema.d.ts.map +1 -1
  408. package/lib/simple-tree/core/treeNodeSchema.js.map +1 -1
  409. package/lib/simple-tree/core/types.d.ts +0 -5
  410. package/lib/simple-tree/core/types.d.ts.map +1 -1
  411. package/lib/simple-tree/core/types.js.map +1 -1
  412. package/lib/simple-tree/core/unhydratedFlexTree.d.ts +139 -0
  413. package/lib/simple-tree/core/unhydratedFlexTree.d.ts.map +1 -0
  414. package/lib/{feature-libraries/flex-map-tree/mapTreeNode.js → simple-tree/core/unhydratedFlexTree.js} +110 -128
  415. package/lib/simple-tree/core/unhydratedFlexTree.js.map +1 -0
  416. package/lib/simple-tree/{walkSchema.d.ts → core/walkSchema.d.ts} +8 -4
  417. package/lib/simple-tree/core/walkSchema.d.ts.map +1 -0
  418. package/lib/simple-tree/core/walkSchema.js +29 -0
  419. package/lib/simple-tree/core/walkSchema.js.map +1 -0
  420. package/lib/simple-tree/createContext.d.ts +11 -0
  421. package/lib/simple-tree/createContext.d.ts.map +1 -0
  422. package/lib/simple-tree/createContext.js +21 -0
  423. package/lib/simple-tree/createContext.js.map +1 -0
  424. package/lib/simple-tree/index.d.ts +3 -4
  425. package/lib/simple-tree/index.d.ts.map +1 -1
  426. package/lib/simple-tree/index.js +3 -4
  427. package/lib/simple-tree/index.js.map +1 -1
  428. package/lib/simple-tree/leafNodeSchema.d.ts +1 -0
  429. package/lib/simple-tree/leafNodeSchema.d.ts.map +1 -1
  430. package/lib/simple-tree/leafNodeSchema.js +3 -4
  431. package/lib/simple-tree/leafNodeSchema.js.map +1 -1
  432. package/lib/simple-tree/mapNode.d.ts +4 -4
  433. package/lib/simple-tree/mapNode.d.ts.map +1 -1
  434. package/lib/simple-tree/mapNode.js +12 -8
  435. package/lib/simple-tree/mapNode.js.map +1 -1
  436. package/lib/simple-tree/objectNode.d.ts +8 -8
  437. package/lib/simple-tree/objectNode.d.ts.map +1 -1
  438. package/lib/simple-tree/objectNode.js +36 -17
  439. package/lib/simple-tree/objectNode.js.map +1 -1
  440. package/lib/simple-tree/objectNodeTypes.d.ts +7 -3
  441. package/lib/simple-tree/objectNodeTypes.d.ts.map +1 -1
  442. package/lib/simple-tree/objectNodeTypes.js.map +1 -1
  443. package/lib/simple-tree/proxies.d.ts +1 -2
  444. package/lib/simple-tree/proxies.d.ts.map +1 -1
  445. package/lib/simple-tree/proxies.js +7 -22
  446. package/lib/simple-tree/proxies.js.map +1 -1
  447. package/lib/simple-tree/schemaTypes.d.ts +2 -2
  448. package/lib/simple-tree/schemaTypes.d.ts.map +1 -1
  449. package/lib/simple-tree/schemaTypes.js.map +1 -1
  450. package/lib/simple-tree/toFlexSchema.d.ts +6 -36
  451. package/lib/simple-tree/toFlexSchema.d.ts.map +1 -1
  452. package/lib/simple-tree/toFlexSchema.js +61 -142
  453. package/lib/simple-tree/toFlexSchema.js.map +1 -1
  454. package/lib/simple-tree/toMapTree.d.ts.map +1 -1
  455. package/lib/simple-tree/toMapTree.js +4 -4
  456. package/lib/simple-tree/toMapTree.js.map +1 -1
  457. package/lib/simple-tree/treeNodeValid.d.ts +13 -5
  458. package/lib/simple-tree/treeNodeValid.d.ts.map +1 -1
  459. package/lib/simple-tree/treeNodeValid.js +21 -12
  460. package/lib/simple-tree/treeNodeValid.js.map +1 -1
  461. package/lib/simple-tree/typesUnsafe.d.ts +4 -4
  462. package/lib/simple-tree/typesUnsafe.d.ts.map +1 -1
  463. package/lib/simple-tree/typesUnsafe.js.map +1 -1
  464. package/lib/simple-tree/walkFieldSchema.d.ts +11 -0
  465. package/lib/simple-tree/walkFieldSchema.d.ts.map +1 -0
  466. package/lib/simple-tree/walkFieldSchema.js +13 -0
  467. package/lib/simple-tree/walkFieldSchema.js.map +1 -0
  468. package/lib/util/index.d.ts +1 -1
  469. package/lib/util/index.d.ts.map +1 -1
  470. package/lib/util/index.js.map +1 -1
  471. package/lib/util/typeUtils.d.ts +14 -45
  472. package/lib/util/typeUtils.d.ts.map +1 -1
  473. package/lib/util/typeUtils.js.map +1 -1
  474. package/package.json +29 -20
  475. package/src/core/schema-stored/schema.ts +17 -0
  476. package/src/core/tree/anchorSet.ts +3 -4
  477. package/src/core/tree/detachedFieldIndex.ts +14 -3
  478. package/src/core/tree/detachedFieldIndexTypes.ts +1 -1
  479. package/src/feature-libraries/editableTreeBinder.ts +2 -915
  480. package/src/feature-libraries/flex-tree/context.ts +7 -20
  481. package/src/feature-libraries/flex-tree/flexTreeTypes.ts +2 -18
  482. package/src/feature-libraries/flex-tree/lazyEntity.ts +1 -4
  483. package/src/feature-libraries/flex-tree/lazyField.ts +22 -78
  484. package/src/feature-libraries/flex-tree/lazyNode.ts +24 -39
  485. package/src/feature-libraries/flex-tree/utilities.ts +1 -1
  486. package/src/feature-libraries/index.ts +3 -71
  487. package/src/feature-libraries/typed-schema/flexList.ts +3 -84
  488. package/src/feature-libraries/typed-schema/index.ts +1 -33
  489. package/src/feature-libraries/typed-schema/typedTreeSchema.ts +0 -458
  490. package/src/index.ts +6 -0
  491. package/src/internalTypes.ts +0 -1
  492. package/src/packageVersion.ts +1 -1
  493. package/src/shared-tree/checkoutFlexTreeView.ts +3 -3
  494. package/src/shared-tree/index.ts +4 -8
  495. package/src/shared-tree/schematizeTree.ts +2 -56
  496. package/src/shared-tree/schematizingTreeView.ts +34 -15
  497. package/src/shared-tree/sharedTree.ts +36 -8
  498. package/src/shared-tree/treeCheckout.ts +225 -128
  499. package/src/shared-tree-core/branch.ts +15 -26
  500. package/src/simple-tree/api/create.ts +18 -20
  501. package/src/simple-tree/api/getJsonSchema.ts +3 -3
  502. package/src/simple-tree/api/getSimpleSchema.ts +2 -2
  503. package/src/simple-tree/api/index.ts +2 -0
  504. package/src/simple-tree/api/schemaFactory.ts +41 -12
  505. package/src/simple-tree/api/schemaFactoryRecursive.ts +3 -6
  506. package/src/simple-tree/api/simpleSchema.ts +15 -10
  507. package/src/simple-tree/api/tree.ts +15 -9
  508. package/src/simple-tree/api/treeNodeApi.ts +12 -10
  509. package/src/simple-tree/api/verboseTree.ts +6 -12
  510. package/src/{feature-libraries/typed-schema → simple-tree/api}/view.ts +9 -22
  511. package/src/simple-tree/api/viewSchemaToSimpleSchema.ts +11 -2
  512. package/src/simple-tree/arrayNode.ts +202 -53
  513. package/src/simple-tree/core/context.ts +78 -0
  514. package/src/simple-tree/core/getOrCreateNode.ts +38 -0
  515. package/src/simple-tree/core/index.ts +11 -7
  516. package/src/simple-tree/core/schemaCaching.ts +13 -50
  517. package/src/simple-tree/core/treeNodeKernel.ts +117 -78
  518. package/src/simple-tree/core/treeNodeSchema.ts +35 -1
  519. package/src/simple-tree/core/types.ts +0 -5
  520. package/src/{feature-libraries/flex-map-tree/mapTreeNode.ts → simple-tree/core/unhydratedFlexTree.ts} +167 -210
  521. package/src/simple-tree/{walkSchema.ts → core/walkSchema.ts} +12 -34
  522. package/src/simple-tree/createContext.ts +24 -0
  523. package/src/simple-tree/index.ts +5 -2
  524. package/src/simple-tree/leafNodeSchema.ts +3 -9
  525. package/src/simple-tree/mapNode.ts +20 -17
  526. package/src/simple-tree/objectNode.ts +63 -38
  527. package/src/simple-tree/objectNodeTypes.ts +8 -5
  528. package/src/simple-tree/proxies.ts +8 -26
  529. package/src/simple-tree/schemaTypes.ts +2 -2
  530. package/src/simple-tree/toFlexSchema.ts +71 -204
  531. package/src/simple-tree/toMapTree.ts +5 -5
  532. package/src/simple-tree/treeNodeValid.ts +28 -22
  533. package/src/simple-tree/typesUnsafe.ts +4 -4
  534. package/src/simple-tree/walkFieldSchema.ts +19 -0
  535. package/src/util/index.ts +1 -5
  536. package/src/util/typeUtils.ts +14 -56
  537. package/dist/feature-libraries/fieldGenerator.d.ts +0 -43
  538. package/dist/feature-libraries/fieldGenerator.d.ts.map +0 -1
  539. package/dist/feature-libraries/fieldGenerator.js +0 -13
  540. package/dist/feature-libraries/fieldGenerator.js.map +0 -1
  541. package/dist/feature-libraries/flex-map-tree/index.d.ts +0 -6
  542. package/dist/feature-libraries/flex-map-tree/index.d.ts.map +0 -1
  543. package/dist/feature-libraries/flex-map-tree/index.js +0 -14
  544. package/dist/feature-libraries/flex-map-tree/index.js.map +0 -1
  545. package/dist/feature-libraries/flex-map-tree/mapTreeNode.d.ts +0 -157
  546. package/dist/feature-libraries/flex-map-tree/mapTreeNode.d.ts.map +0 -1
  547. package/dist/feature-libraries/flex-map-tree/mapTreeNode.js.map +0 -1
  548. package/dist/feature-libraries/storedToViewSchema.d.ts +0 -17
  549. package/dist/feature-libraries/storedToViewSchema.d.ts.map +0 -1
  550. package/dist/feature-libraries/storedToViewSchema.js +0 -67
  551. package/dist/feature-libraries/storedToViewSchema.js.map +0 -1
  552. package/dist/feature-libraries/typed-schema/schemaCollection.d.ts +0 -58
  553. package/dist/feature-libraries/typed-schema/schemaCollection.d.ts.map +0 -1
  554. package/dist/feature-libraries/typed-schema/schemaCollection.js +0 -160
  555. package/dist/feature-libraries/typed-schema/schemaCollection.js.map +0 -1
  556. package/dist/feature-libraries/typed-schema/typeUtils.d.ts +0 -15
  557. package/dist/feature-libraries/typed-schema/typeUtils.d.ts.map +0 -1
  558. package/dist/feature-libraries/typed-schema/typeUtils.js +0 -14
  559. package/dist/feature-libraries/typed-schema/typeUtils.js.map +0 -1
  560. package/dist/feature-libraries/typed-schema/view.d.ts.map +0 -1
  561. package/dist/feature-libraries/typed-schema/view.js.map +0 -1
  562. package/dist/simple-tree/getSimpleFieldSchema.d.ts +0 -14
  563. package/dist/simple-tree/getSimpleFieldSchema.d.ts.map +0 -1
  564. package/dist/simple-tree/getSimpleFieldSchema.js +0 -29
  565. package/dist/simple-tree/getSimpleFieldSchema.js.map +0 -1
  566. package/dist/simple-tree/walkSchema.d.ts.map +0 -1
  567. package/dist/simple-tree/walkSchema.js +0 -49
  568. package/dist/simple-tree/walkSchema.js.map +0 -1
  569. package/lib/feature-libraries/fieldGenerator.d.ts +0 -43
  570. package/lib/feature-libraries/fieldGenerator.d.ts.map +0 -1
  571. package/lib/feature-libraries/fieldGenerator.js +0 -12
  572. package/lib/feature-libraries/fieldGenerator.js.map +0 -1
  573. package/lib/feature-libraries/flex-map-tree/index.d.ts +0 -6
  574. package/lib/feature-libraries/flex-map-tree/index.d.ts.map +0 -1
  575. package/lib/feature-libraries/flex-map-tree/index.js +0 -6
  576. package/lib/feature-libraries/flex-map-tree/index.js.map +0 -1
  577. package/lib/feature-libraries/flex-map-tree/mapTreeNode.d.ts +0 -157
  578. package/lib/feature-libraries/flex-map-tree/mapTreeNode.d.ts.map +0 -1
  579. package/lib/feature-libraries/flex-map-tree/mapTreeNode.js.map +0 -1
  580. package/lib/feature-libraries/storedToViewSchema.d.ts +0 -17
  581. package/lib/feature-libraries/storedToViewSchema.d.ts.map +0 -1
  582. package/lib/feature-libraries/storedToViewSchema.js +0 -62
  583. package/lib/feature-libraries/storedToViewSchema.js.map +0 -1
  584. package/lib/feature-libraries/typed-schema/schemaCollection.d.ts +0 -58
  585. package/lib/feature-libraries/typed-schema/schemaCollection.d.ts.map +0 -1
  586. package/lib/feature-libraries/typed-schema/schemaCollection.js +0 -153
  587. package/lib/feature-libraries/typed-schema/schemaCollection.js.map +0 -1
  588. package/lib/feature-libraries/typed-schema/typeUtils.d.ts +0 -15
  589. package/lib/feature-libraries/typed-schema/typeUtils.d.ts.map +0 -1
  590. package/lib/feature-libraries/typed-schema/typeUtils.js +0 -10
  591. package/lib/feature-libraries/typed-schema/typeUtils.js.map +0 -1
  592. package/lib/feature-libraries/typed-schema/view.d.ts.map +0 -1
  593. package/lib/feature-libraries/typed-schema/view.js.map +0 -1
  594. package/lib/simple-tree/getSimpleFieldSchema.d.ts +0 -14
  595. package/lib/simple-tree/getSimpleFieldSchema.d.ts.map +0 -1
  596. package/lib/simple-tree/getSimpleFieldSchema.js +0 -25
  597. package/lib/simple-tree/getSimpleFieldSchema.js.map +0 -1
  598. package/lib/simple-tree/walkSchema.d.ts.map +0 -1
  599. package/lib/simple-tree/walkSchema.js +0 -43
  600. package/lib/simple-tree/walkSchema.js.map +0 -1
  601. package/src/feature-libraries/fieldGenerator.ts +0 -47
  602. package/src/feature-libraries/flex-map-tree/index.ts +0 -14
  603. package/src/feature-libraries/storedToViewSchema.ts +0 -100
  604. package/src/feature-libraries/typed-schema/schemaCollection.ts +0 -254
  605. package/src/feature-libraries/typed-schema/typeUtils.ts +0 -29
  606. package/src/simple-tree/getSimpleFieldSchema.ts +0 -36
@@ -8,18 +8,23 @@ declare const Rename: import("@sinclair/typebox").TObject<{
8
8
  idOverride: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>;
9
9
  }>;
10
10
  declare const MarkEffect: import("@sinclair/typebox").TObject<{
11
+ remove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
12
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
13
+ revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
14
+ idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
15
+ }>>;
11
16
  insert: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
12
17
  id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
13
18
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
14
19
  }>>;
15
20
  moveIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
16
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
17
21
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
22
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
18
23
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
19
24
  }>>;
20
25
  moveOut: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
21
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
22
26
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
27
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
23
28
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
24
29
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
25
30
  }>>;
@@ -30,8 +35,8 @@ declare const MarkEffect: import("@sinclair/typebox").TObject<{
30
35
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
31
36
  }>>;
32
37
  moveIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
33
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
34
38
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
39
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
35
40
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
36
41
  }>>;
37
42
  }>;
@@ -42,36 +47,36 @@ declare const MarkEffect: import("@sinclair/typebox").TObject<{
42
47
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
43
48
  }>>;
44
49
  moveOut: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
45
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
46
50
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
51
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
47
52
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
48
53
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
49
54
  }>>;
50
55
  }>;
51
56
  }>>;
52
- remove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
53
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
54
- revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
55
- idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
56
- }>>;
57
57
  rename: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
58
58
  idOverride: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>;
59
59
  }>>;
60
60
  }>;
61
61
  declare const Mark: <Schema extends TSchema>(tNodeChange: Schema) => import("@sinclair/typebox").TObject<{
62
62
  effect: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
63
+ remove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
64
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
65
+ revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
66
+ idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
67
+ }>>;
63
68
  insert: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
64
69
  id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
65
70
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
66
71
  }>>;
67
72
  moveIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
68
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
69
73
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
74
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
70
75
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
71
76
  }>>;
72
77
  moveOut: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
73
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
74
78
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
79
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
75
80
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
76
81
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
77
82
  }>>;
@@ -82,8 +87,8 @@ declare const Mark: <Schema extends TSchema>(tNodeChange: Schema) => import("@si
82
87
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
83
88
  }>>;
84
89
  moveIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
85
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
86
90
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
91
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
87
92
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
88
93
  }>>;
89
94
  }>;
@@ -94,18 +99,13 @@ declare const Mark: <Schema extends TSchema>(tNodeChange: Schema) => import("@si
94
99
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
95
100
  }>>;
96
101
  moveOut: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
97
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
98
102
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
103
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
99
104
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
100
105
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
101
106
  }>>;
102
107
  }>;
103
108
  }>>;
104
- remove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
105
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
106
- revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
107
- idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
108
- }>>;
109
109
  rename: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
110
110
  idOverride: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>;
111
111
  }>>;
@@ -116,18 +116,23 @@ declare const Mark: <Schema extends TSchema>(tNodeChange: Schema) => import("@si
116
116
  }>;
117
117
  export declare const Changeset: <Schema extends TSchema>(tNodeChange: Schema) => import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
118
118
  effect: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
119
+ remove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
120
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
121
+ revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
122
+ idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
123
+ }>>;
119
124
  insert: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
120
125
  id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
121
126
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
122
127
  }>>;
123
128
  moveIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
124
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
125
129
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
130
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
126
131
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
127
132
  }>>;
128
133
  moveOut: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
129
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
130
134
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
135
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
131
136
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
132
137
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
133
138
  }>>;
@@ -138,8 +143,8 @@ export declare const Changeset: <Schema extends TSchema>(tNodeChange: Schema) =>
138
143
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
139
144
  }>>;
140
145
  moveIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
141
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
142
146
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
147
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
143
148
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
144
149
  }>>;
145
150
  }>;
@@ -150,18 +155,13 @@ export declare const Changeset: <Schema extends TSchema>(tNodeChange: Schema) =>
150
155
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
151
156
  }>>;
152
157
  moveOut: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
153
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
154
158
  revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
159
+ id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
155
160
  finalEndpoint: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
156
161
  idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
157
162
  }>>;
158
163
  }>;
159
164
  }>>;
160
- remove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
161
- id: import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>;
162
- revision: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>>;
163
- idOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>>;
164
- }>>;
165
165
  rename: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
166
166
  idOverride: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTuple<[import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TUnsafe<import("../../index.js").Brand<import("@fluidframework/id-compressor").OpSpaceCompressedId, "EncodedRevisionTag">>]>]>, import("@sinclair/typebox").TUnsafe<import("../../core/index.js").ChangesetLocalId>]>;
167
167
  }>>;
@@ -23,14 +23,10 @@ export declare function markEager<T>(t: T): T;
23
23
  * @system @public
24
24
  */
25
25
  export type FlexList<Item = unknown> = readonly LazyItem<Item>[];
26
- /**
27
- * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are lazy.
28
- */
29
- export declare function normalizeFlexListLazy<List extends FlexList>(t: List): FlexListToLazyArray<List>;
30
26
  /**
31
27
  * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are eager.
32
28
  */
33
- export declare function normalizeFlexListEager<List extends FlexList>(t: List): FlexListToNonLazyArray<List>;
29
+ export declare function normalizeFlexListEager<T>(t: FlexList<T>): T[];
34
30
  /**
35
31
  * An "eager" or "lazy" Item in a `FlexList`.
36
32
  * Lazy items are wrapped in a function to allow referring to themselves before they are declared.
@@ -38,55 +34,14 @@ export declare function normalizeFlexListEager<List extends FlexList>(t: List):
38
34
  * @public
39
35
  */
40
36
  export type LazyItem<Item = unknown> = Item | (() => Item);
41
- /**
42
- */
43
- export type NormalizedFlexList<Item> = readonly Item[];
44
- export type NormalizedLazyFlexList<Item> = (() => Item)[];
45
37
  /**
46
38
  * Get the `Item` type from a `LazyItem<Item>`.
47
39
  * @system @public
48
40
  */
49
41
  export type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result ? Result : Item;
50
- /**
51
- */
52
- export type ExtractListItemType<List extends FlexList> = List extends FlexList<infer Item> ? Item : unknown;
53
- export type NormalizeLazyItem<List extends LazyItem> = List extends () => unknown ? List : () => List;
54
- /**
55
- * Normalize FlexList type to a non-lazy array.
56
- */
57
- export type FlexListToNonLazyArray<List extends FlexList> = ArrayHasFixedLength<List> extends true ? ConstantFlexListToNonLazyArray<List> : NormalizedFlexList<ExtractListItemType<List>>;
58
42
  /**
59
43
  * Normalize FlexList type to a union.
60
44
  * @system @public
61
45
  */
62
46
  export type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;
63
- /**
64
- * Normalize FlexList type to a non-lazy array.
65
- */
66
- export type ConstantFlexListToNonLazyArray<List extends FlexList> = List extends readonly [
67
- infer Head,
68
- ...infer Tail
69
- ] ? [ExtractItemType<Head>, ...ConstantFlexListToNonLazyArray<Tail>] : [];
70
- /**
71
- * Detect if an array is a Tuple (fixed length) or unknown length.
72
- *
73
- * Types which many have one of multiple fixed lengths (like `[] | [0]`) count as having a fixed length.
74
- *
75
- * @remarks
76
- * Type operations designed to work on tuples can often behave very badly on regular arrays.
77
- * For example recursive patterns for processing them often just return the base case,
78
- * losing all the type information.
79
- */
80
- export type ArrayHasFixedLength<List extends readonly unknown[]> = number extends List["length"] ? false : true;
81
- /**
82
- * Normalize FlexList type to a lazy array.
83
- */
84
- export type FlexListToLazyArray<List extends FlexList> = ArrayHasFixedLength<List> extends true ? ConstantFlexListToLazyArray<List> : NormalizedLazyFlexList<ExtractListItemType<List>>;
85
- /**
86
- * Normalize FlexList type to a lazy array.
87
- */
88
- export type ConstantFlexListToLazyArray<List extends FlexList> = List extends readonly [
89
- infer Head,
90
- ...infer Tail
91
- ] ? [NormalizeLazyItem<Head>, ...ConstantFlexListToLazyArray<Tail>] : [];
92
47
  //# sourceMappingURL=flexList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"flexList.d.ts","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/flexList.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,gFAAgF;AAChF,wBAAgB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,MAAM,IAAI,CAErE;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CASpC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,IAAI,GAAG,OAAO,IAAI,SAAS,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;AAEjE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,QAAQ,EAC1D,CAAC,EAAE,IAAI,GACL,mBAAmB,CAAC,IAAI,CAAC,CAO3B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,SAAS,QAAQ,EAC3D,CAAC,EAAE,IAAI,GACL,sBAAsB,CAAC,IAAI,CAAC,CAQ9B;AAED;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,CAAC,IAAI,GAAG,OAAO,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAE3D;GACG;AACH,MAAM,MAAM,kBAAkB,CAAC,IAAI,IAAI,SAAS,IAAI,EAAE,CAAC;AAEvD,MAAM,MAAM,sBAAsB,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,MAAM,MAAM,MAAM,GACjF,MAAM,GACN,IAAI,CAAC;AAER;GACG;AACH,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,QAAQ,CAAC,MAAM,IAAI,CAAC,GACvF,IAAI,GACJ,OAAO,CAAC;AAEX,MAAM,MAAM,iBAAiB,CAAC,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,MAAM,OAAO,GAC9E,IAAI,GACJ,MAAM,IAAI,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,sBAAsB,CAAC,IAAI,SAAS,QAAQ,IACvD,mBAAmB,CAAC,IAAI,CAAC,SAAS,IAAI,GACnC,8BAA8B,CAAC,IAAI,CAAC,GACpC,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;AAElD;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,QAAQ,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AAErF;;GAEG;AACH,MAAM,MAAM,8BAA8B,CAAC,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,SAAS;IACzF,MAAM,IAAI;IACV,GAAG,MAAM,IAAI;CACb,GACE,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC,GAChE,EAAE,CAAC;AAEN;;;;;;;;;GASG;AAEH,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,SAAS,OAAO,EAAE,IAC9D,MAAM,SAAS,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,SAAS,IAAI,GAC5F,2BAA2B,CAAC,IAAI,CAAC,GACjC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,2BAA2B,CAAC,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,SAAS;IACtF,MAAM,IAAI;IACV,GAAG,MAAM,IAAI;CACb,GACE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC,GAC/D,EAAE,CAAC"}
1
+ {"version":3,"file":"flexList.d.ts","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/flexList.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,gFAAgF;AAChF,wBAAgB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,MAAM,IAAI,CAErE;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CASpC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,IAAI,GAAG,OAAO,IAAI,SAAS,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;AAEjE;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAQ7D;AAED;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,CAAC,IAAI,GAAG,OAAO,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,MAAM,MAAM,MAAM,GACjF,MAAM,GACN,IAAI,CAAC;AAER;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,QAAQ,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -25,17 +25,6 @@ export function markEager(t) {
25
25
  })
26
26
  : t;
27
27
  }
28
- /**
29
- * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are lazy.
30
- */
31
- export function normalizeFlexListLazy(t) {
32
- return t.map((value) => {
33
- if (isLazy(value)) {
34
- return value;
35
- }
36
- return () => value;
37
- });
38
- }
39
28
  /**
40
29
  * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are eager.
41
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"flexList.js","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/flexList.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,iDAAiD;AACjD,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAU/C,gFAAgF;AAChF,MAAM,UAAU,MAAM,CAAO,IAAoB;IAChD,OAAO,OAAO,IAAI,KAAK,UAAU,IAAK,IAA6B,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;AAC7F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAI,CAAI;IAChC,OAAO,MAAM,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,aAAa,EAAE;YACxC,KAAK,EAAE,IAAI;YACX,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SACf,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;AACN,CAAC;AAcD;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACpC,CAAO;IAEP,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAe,EAAE,EAAE;QAChC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC;IACpB,CAAC,CAA8B,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACrC,CAAO;IAEP,MAAM,IAAI,GAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,KAAe,EAAE,EAAE;QAC1D,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,EAAE,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IACH,OAAO,IAAoC,CAAC;AAC7C,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/** A symbol used to identify a `MarkedEager`. */\nconst flexListEager = Symbol(\"FlexList Eager\");\n\n/**\n * An object that has been marked as eager (as opposed to lazy) when used as an item in a `FlexList`.\n * It will be considered to be an eager item in a `FlexList` even if it is a function.\n */\ninterface MarkedEager {\n\t[flexListEager]: true;\n}\n\n/** Returns true iff the given item is a function and is not a `MarkedEager`. */\nexport function isLazy<Item>(item: LazyItem<Item>): item is () => Item {\n\treturn typeof item === \"function\" && (item as Partial<MarkedEager>)[flexListEager] !== true;\n}\n\n/**\n * Mark the given object as an eager item in a `FlexList`.\n * @remarks\n * This only has an effect on function objects that would otherwise be considered to be lazy items in a `FlexList`.\n * @param t - The object to mark as eager.\n * @returns `t`, marked as eager if applicable.\n */\nexport function markEager<T>(t: T): T {\n\treturn isLazy(t)\n\t\t? Object.defineProperty(t, flexListEager, {\n\t\t\t\tvalue: true,\n\t\t\t\tconfigurable: true,\n\t\t\t\tenumerable: false,\n\t\t\t\twritable: false,\n\t\t\t})\n\t\t: t;\n}\n\n/**\n * A flexible way to list values.\n * Each item in the list can either be an \"eager\" **value** or a \"lazy\" **function that returns a value** (the latter allows cyclic references to work).\n * @privateRemarks\n * By default, items that are of type `\"function\"` will be considered lazy and all other items will be considered eager.\n * To force a `\"function\"` item to be treated as an eager item, call `markEager` before putting it in the list.\n * This is necessary e.g. when the eager list items are function types and the lazy items are functions that _return_ function types.\n * `FlexList`s are processed by `normalizeFlexList` and `normalizeFlexListEager`.\n * @system @public\n */\nexport type FlexList<Item = unknown> = readonly LazyItem<Item>[];\n\n/**\n * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are lazy.\n */\nexport function normalizeFlexListLazy<List extends FlexList>(\n\tt: List,\n): FlexListToLazyArray<List> {\n\treturn t.map((value: LazyItem) => {\n\t\tif (isLazy(value)) {\n\t\t\treturn value;\n\t\t}\n\t\treturn () => value;\n\t}) as FlexListToLazyArray<List>;\n}\n\n/**\n * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are eager.\n */\nexport function normalizeFlexListEager<List extends FlexList>(\n\tt: List,\n): FlexListToNonLazyArray<List> {\n\tconst data: readonly unknown[] = t.map((value: LazyItem) => {\n\t\tif (isLazy(value)) {\n\t\t\treturn value();\n\t\t}\n\t\treturn value;\n\t});\n\treturn data as FlexListToNonLazyArray<List>;\n}\n\n/**\n * An \"eager\" or \"lazy\" Item in a `FlexList`.\n * Lazy items are wrapped in a function to allow referring to themselves before they are declared.\n * This makes recursive and co-recursive items possible.\n * @public\n */\nexport type LazyItem<Item = unknown> = Item | (() => Item);\n\n/**\n */\nexport type NormalizedFlexList<Item> = readonly Item[];\n\nexport type NormalizedLazyFlexList<Item> = (() => Item)[];\n\n/**\n * Get the `Item` type from a `LazyItem<Item>`.\n * @system @public\n */\nexport type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result\n\t? Result\n\t: Item;\n\n/**\n */\nexport type ExtractListItemType<List extends FlexList> = List extends FlexList<infer Item>\n\t? Item\n\t: unknown;\n\nexport type NormalizeLazyItem<List extends LazyItem> = List extends () => unknown\n\t? List\n\t: () => List;\n\n/**\n * Normalize FlexList type to a non-lazy array.\n */\nexport type FlexListToNonLazyArray<List extends FlexList> =\n\tArrayHasFixedLength<List> extends true\n\t\t? ConstantFlexListToNonLazyArray<List>\n\t\t: NormalizedFlexList<ExtractListItemType<List>>;\n\n/**\n * Normalize FlexList type to a union.\n * @system @public\n */\nexport type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;\n\n/**\n * Normalize FlexList type to a non-lazy array.\n */\nexport type ConstantFlexListToNonLazyArray<List extends FlexList> = List extends readonly [\n\tinfer Head,\n\t...infer Tail,\n]\n\t? [ExtractItemType<Head>, ...ConstantFlexListToNonLazyArray<Tail>]\n\t: [];\n\n/**\n * Detect if an array is a Tuple (fixed length) or unknown length.\n *\n * Types which many have one of multiple fixed lengths (like `[] | [0]`) count as having a fixed length.\n *\n * @remarks\n * Type operations designed to work on tuples can often behave very badly on regular arrays.\n * For example recursive patterns for processing them often just return the base case,\n * losing all the type information.\n */\n// This works by determining if the length is `number` (and not a specific number).\nexport type ArrayHasFixedLength<List extends readonly unknown[]> =\n\tnumber extends List[\"length\"] ? false : true;\n\n/**\n * Normalize FlexList type to a lazy array.\n */\nexport type FlexListToLazyArray<List extends FlexList> = ArrayHasFixedLength<List> extends true\n\t? ConstantFlexListToLazyArray<List>\n\t: NormalizedLazyFlexList<ExtractListItemType<List>>;\n\n/**\n * Normalize FlexList type to a lazy array.\n */\nexport type ConstantFlexListToLazyArray<List extends FlexList> = List extends readonly [\n\tinfer Head,\n\t...infer Tail,\n]\n\t? [NormalizeLazyItem<Head>, ...ConstantFlexListToLazyArray<Tail>]\n\t: [];\n"]}
1
+ {"version":3,"file":"flexList.js","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/flexList.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,iDAAiD;AACjD,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAU/C,gFAAgF;AAChF,MAAM,UAAU,MAAM,CAAO,IAAoB;IAChD,OAAO,OAAO,IAAI,KAAK,UAAU,IAAK,IAA6B,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;AAC7F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAI,CAAI;IAChC,OAAO,MAAM,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,aAAa,EAAE;YACxC,KAAK,EAAE,IAAI;YACX,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SACf,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;AACN,CAAC;AAcD;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAI,CAAc;IACvD,MAAM,IAAI,GAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAkB,EAAE,EAAE;QAC9C,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,EAAE,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACb,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/** A symbol used to identify a `MarkedEager`. */\nconst flexListEager = Symbol(\"FlexList Eager\");\n\n/**\n * An object that has been marked as eager (as opposed to lazy) when used as an item in a `FlexList`.\n * It will be considered to be an eager item in a `FlexList` even if it is a function.\n */\ninterface MarkedEager {\n\t[flexListEager]: true;\n}\n\n/** Returns true iff the given item is a function and is not a `MarkedEager`. */\nexport function isLazy<Item>(item: LazyItem<Item>): item is () => Item {\n\treturn typeof item === \"function\" && (item as Partial<MarkedEager>)[flexListEager] !== true;\n}\n\n/**\n * Mark the given object as an eager item in a `FlexList`.\n * @remarks\n * This only has an effect on function objects that would otherwise be considered to be lazy items in a `FlexList`.\n * @param t - The object to mark as eager.\n * @returns `t`, marked as eager if applicable.\n */\nexport function markEager<T>(t: T): T {\n\treturn isLazy(t)\n\t\t? Object.defineProperty(t, flexListEager, {\n\t\t\t\tvalue: true,\n\t\t\t\tconfigurable: true,\n\t\t\t\tenumerable: false,\n\t\t\t\twritable: false,\n\t\t\t})\n\t\t: t;\n}\n\n/**\n * A flexible way to list values.\n * Each item in the list can either be an \"eager\" **value** or a \"lazy\" **function that returns a value** (the latter allows cyclic references to work).\n * @privateRemarks\n * By default, items that are of type `\"function\"` will be considered lazy and all other items will be considered eager.\n * To force a `\"function\"` item to be treated as an eager item, call `markEager` before putting it in the list.\n * This is necessary e.g. when the eager list items are function types and the lazy items are functions that _return_ function types.\n * `FlexList`s are processed by `normalizeFlexList` and `normalizeFlexListEager`.\n * @system @public\n */\nexport type FlexList<Item = unknown> = readonly LazyItem<Item>[];\n\n/**\n * Given a `FlexList` of eager and lazy items, return an equivalent list where all items are eager.\n */\nexport function normalizeFlexListEager<T>(t: FlexList<T>): T[] {\n\tconst data: T[] = t.map((value: LazyItem<T>) => {\n\t\tif (isLazy(value)) {\n\t\t\treturn value();\n\t\t}\n\t\treturn value;\n\t});\n\treturn data;\n}\n\n/**\n * An \"eager\" or \"lazy\" Item in a `FlexList`.\n * Lazy items are wrapped in a function to allow referring to themselves before they are declared.\n * This makes recursive and co-recursive items possible.\n * @public\n */\nexport type LazyItem<Item = unknown> = Item | (() => Item);\n\n/**\n * Get the `Item` type from a `LazyItem<Item>`.\n * @system @public\n */\nexport type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result\n\t? Result\n\t: Item;\n\n/**\n * Normalize FlexList type to a union.\n * @system @public\n */\nexport type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;\n"]}
@@ -2,8 +2,6 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- export { type FlexTreeNodeSchema, FlexFieldSchema, allowedTypesToTypeSet, type FlexAllowedTypes, type LazyTreeNodeSchema, LeafNodeSchema, FlexMapNodeSchema, FlexObjectNodeSchema, type FlexTreeSchema, type Unenforced, type AllowedTypeSet, type FlexMapFieldSchema, type SchemaCollection, TreeNodeSchemaBase, type FlexObjectNodeFields, schemaIsLeaf, schemaIsMap, schemaIsObjectNode, intoStoredSchema, allowedTypesSchemaSet, intoStoredSchemaCollection, } from "./typedTreeSchema.js";
6
- export { ViewSchema } from "./view.js";
7
- export { type SchemaLibraryData, type SchemaLintConfiguration, aggregateSchemaLibraries, schemaLintDefault, } from "./schemaCollection.js";
8
- export { type FlexList, markEager, type LazyItem, isLazy, type NormalizeLazyItem, type FlexListToUnion, type ExtractItemType, normalizeFlexListEager, } from "./flexList.js";
5
+ export { type Unenforced } from "./typedTreeSchema.js";
6
+ export { type FlexList, markEager, type LazyItem, isLazy, type FlexListToUnion, type ExtractItemType, normalizeFlexListEager, } from "./flexList.js";
9
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,KAAK,kBAAkB,EACvB,eAAe,EACf,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,kBAAkB,EAClB,KAAK,oBAAoB,EACzB,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,GAC1B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,iBAAiB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACN,KAAK,QAAQ,EACb,SAAS,EACT,KAAK,QAAQ,EACb,MAAM,EACN,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,sBAAsB,GACtB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EACN,KAAK,QAAQ,EACb,SAAS,EACT,KAAK,QAAQ,EACb,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,sBAAsB,GACtB,MAAM,eAAe,CAAC"}
@@ -2,8 +2,5 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- export { FlexFieldSchema, allowedTypesToTypeSet, LeafNodeSchema, FlexMapNodeSchema, FlexObjectNodeSchema, TreeNodeSchemaBase, schemaIsLeaf, schemaIsMap, schemaIsObjectNode, intoStoredSchema, allowedTypesSchemaSet, intoStoredSchemaCollection, } from "./typedTreeSchema.js";
6
- export { ViewSchema } from "./view.js";
7
- export { aggregateSchemaLibraries, schemaLintDefault, } from "./schemaCollection.js";
8
5
  export { markEager, isLazy, normalizeFlexListEager, } from "./flexList.js";
9
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEN,eAAe,EACf,qBAAqB,EAGrB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EAMpB,kBAAkB,EAElB,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,GAC1B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAGN,wBAAwB,EACxB,iBAAiB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEN,SAAS,EAET,MAAM,EAIN,sBAAsB,GACtB,MAAM,eAAe,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport {\n\ttype FlexTreeNodeSchema,\n\tFlexFieldSchema,\n\tallowedTypesToTypeSet,\n\ttype FlexAllowedTypes,\n\ttype LazyTreeNodeSchema,\n\tLeafNodeSchema,\n\tFlexMapNodeSchema,\n\tFlexObjectNodeSchema,\n\ttype FlexTreeSchema,\n\ttype Unenforced,\n\ttype AllowedTypeSet,\n\ttype FlexMapFieldSchema,\n\ttype SchemaCollection,\n\tTreeNodeSchemaBase,\n\ttype FlexObjectNodeFields,\n\tschemaIsLeaf,\n\tschemaIsMap,\n\tschemaIsObjectNode,\n\tintoStoredSchema,\n\tallowedTypesSchemaSet,\n\tintoStoredSchemaCollection,\n} from \"./typedTreeSchema.js\";\n\nexport { ViewSchema } from \"./view.js\";\n\nexport {\n\ttype SchemaLibraryData,\n\ttype SchemaLintConfiguration,\n\taggregateSchemaLibraries,\n\tschemaLintDefault,\n} from \"./schemaCollection.js\";\n\nexport {\n\ttype FlexList,\n\tmarkEager,\n\ttype LazyItem,\n\tisLazy,\n\ttype NormalizeLazyItem,\n\ttype FlexListToUnion,\n\ttype ExtractItemType,\n\tnormalizeFlexListEager,\n} from \"./flexList.js\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/feature-libraries/typed-schema/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAEN,SAAS,EAET,MAAM,EAGN,sBAAsB,GACtB,MAAM,eAAe,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport { type Unenforced } from \"./typedTreeSchema.js\";\n\nexport {\n\ttype FlexList,\n\tmarkEager,\n\ttype LazyItem,\n\tisLazy,\n\ttype FlexListToUnion,\n\ttype ExtractItemType,\n\tnormalizeFlexListEager,\n} from \"./flexList.js\";\n"]}
@@ -2,16 +2,6 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { type Adapters, type FieldKey, type StoredSchemaCollection, type TreeFieldStoredSchema, type TreeNodeSchemaIdentifier, type TreeNodeStoredSchema, type TreeStoredSchema, type TreeTypeSet, type ValueSchema } from "../../core/index.js";
6
- import { type MakeNominal, type Named } from "../../util/index.js";
7
- import { FieldKinds } from "../default-schema/index.js";
8
- import type { FlexFieldKind, FullSchemaPolicy } from "../modular-schema/index.js";
9
- import type { LazyItem } from "./flexList.js";
10
- /**
11
- */
12
- export interface FlexObjectNodeFields {
13
- readonly [key: string]: FlexFieldSchema;
14
- }
15
5
  /**
16
6
  * A placeholder to use in {@link https://www.typescriptlang.org/docs/handbook/2/generics.html#generic-constraints | extends constraints} when using the real type breaks compilation of some recursive types due to {@link https://github.com/microsoft/TypeScript/issues/55758 | a design limitation of TypeScript}.
17
7
  *
@@ -21,206 +11,4 @@ export interface FlexObjectNodeFields {
21
11
  * @public
22
12
  */
23
13
  export type Unenforced<_DesiredExtendsConstraint> = unknown;
24
- /**
25
- * T must extend TreeSchemaSpecification.
26
- * This can not be enforced using TypeScript since doing so breaks recursive type support.
27
- * See note on SchemaBuilder.fieldRecursive.
28
- */
29
- export declare abstract class TreeNodeSchemaBase<const out Specification = unknown> {
30
- readonly builder: Named<string>;
31
- readonly name: TreeNodeSchemaIdentifier;
32
- readonly info: Specification;
33
- readonly stored: TreeNodeStoredSchema;
34
- protected _typeCheck: MakeNominal;
35
- protected constructor(builder: Named<string>, name: TreeNodeSchemaIdentifier, info: Specification, stored: TreeNodeStoredSchema);
36
- abstract getFieldSchema(field: FieldKey): FlexFieldSchema;
37
- }
38
- /**
39
- */
40
- export declare class FlexMapNodeSchema extends TreeNodeSchemaBase {
41
- get mapFields(): FlexMapFieldSchema;
42
- protected _typeCheck2?: MakeNominal;
43
- static create<const Name extends string>(builder: Named<string>, name: TreeNodeSchemaIdentifier<Name>, specification: FlexMapFieldSchema): FlexMapNodeSchema;
44
- getFieldSchema(field: FieldKey): FlexMapFieldSchema;
45
- }
46
- /**
47
- */
48
- export declare class LeafNodeSchema extends TreeNodeSchemaBase<ValueSchema> {
49
- protected _typeCheck2?: MakeNominal;
50
- constructor(builder: Named<string>, name: string, specification: ValueSchema);
51
- getFieldSchema(field: FieldKey): FlexFieldSchema;
52
- }
53
- /**
54
- */
55
- export declare class FlexObjectNodeSchema extends TreeNodeSchemaBase {
56
- readonly objectNodeFieldsObject: FlexObjectNodeFields;
57
- readonly objectNodeFields: ReadonlyMap<FieldKey, FlexFieldSchema>;
58
- protected _typeCheck2?: MakeNominal;
59
- readonly identifierFieldKeys: readonly FieldKey[];
60
- static create(builder: Named<string>, name: TreeNodeSchemaIdentifier, specification: FlexObjectNodeFields): FlexObjectNodeSchema;
61
- private constructor();
62
- getFieldSchema(field: FieldKey): FlexFieldSchema;
63
- }
64
- /**
65
- * @privateRemarks
66
- * This could be an exhaustive union, or just the common base type.
67
- * Using just the base type prevents exhaustive matching, which has both pros and cons.
68
- *
69
- * For now this is using just the base type since the union is causing issues with schema aware typing, likely due to it being a union and thus distributing over extends clauses.
70
- */
71
- export type FlexTreeNodeSchema = TreeNodeSchemaBase;
72
- /**
73
- * Tree type, but can be wrapped in a function to allow referring to types before they are declared.
74
- * This makes recursive and co-recursive types possible.
75
- */
76
- export type LazyTreeNodeSchema = FlexTreeNodeSchema | (() => FlexTreeNodeSchema);
77
- /**
78
- * Types for use in fields.
79
- */
80
- export type FlexAllowedTypes = readonly LazyItem<FlexTreeNodeSchema>[];
81
- /**
82
- * Subset of TreeFieldSchema thats legal in maps.
83
- * This requires empty to be a valid value for the map.
84
- */
85
- export type FlexMapFieldSchema = FlexFieldSchema<typeof FieldKinds.optional | typeof FieldKinds.sequence>;
86
- /**
87
- * All policy for a specific field,
88
- * including functionality that does not have to be kept consistent across versions or deterministic.
89
- *
90
- * This can include policy for how to use this schema for "view" purposes, and well as how to expose editing APIs.
91
- *
92
- * @remarks
93
- * `Types` here must extend `AllowedTypes`, but this cannot be enforced with an "extends" clause: see {@link Unenforced} for details.
94
- *
95
- * @typeParam TKind - The kind of field.
96
- * @typeParam TTypes - The types allowed by the field.
97
- *
98
- * @sealed
99
- */
100
- export declare class FlexFieldSchema<out TKind extends FlexFieldKind = FlexFieldKind> {
101
- readonly kind: TKind;
102
- readonly allowedTypes: FlexAllowedTypes;
103
- /**
104
- * Schema for a field which must always be empty.
105
- */
106
- static readonly empty: FlexFieldSchema<import("../default-schema/defaultFieldKinds.js").Forbidden>;
107
- /**
108
- * Constructs a TreeFieldSchema.
109
- * @privateRemarks
110
- * Alias for the constructor, but with extends clause for the `Types` parameter that {@link FlexFieldSchema} can not have (due to recursive type issues).
111
- */
112
- static create<TKind extends FlexFieldKind>(kind: TKind, allowedTypes: FlexAllowedTypes): FlexFieldSchema<TKind>;
113
- protected _typeCheck: MakeNominal;
114
- /**
115
- * This is computed lazily since types can be recursive, which makes evaluating this have to happen after all the schema are defined.
116
- */
117
- private readonly lazyTypes;
118
- /**
119
- * @param kind - The {@link https://en.wikipedia.org/wiki/Kind_(type_theory) | kind} of this field.
120
- * Determine the multiplicity, viewing and editing APIs as well as the merge resolution policy.
121
- * @param allowedTypes - What types of tree nodes are allowed in this field.
122
- */
123
- private constructor();
124
- readonly stored: TreeFieldStoredSchema;
125
- /**
126
- * Types which are allowed in this field (by {@link TreeNodeSchemaIdentifier}), in a format optimized for stored schema.
127
- * This is the same set of types in {@link FlexFieldSchema.allowedTypes}, just in a different format.
128
- */
129
- get types(): TreeTypeSet;
130
- /**
131
- * Types which are allowed in this field.
132
- * This is the same set of types in {@link FlexFieldSchema.allowedTypes}, just as a set with laziness removed.
133
- * @privateRemarks
134
- * TODO:
135
- * 3 ways to access the allowed types are now exposed.
136
- * Reducing this and/or renaming the more friendly options to take the shorter name (`types`)
137
- * would be a good idea.
138
- */
139
- get allowedTypeSet(): AllowedTypeSet;
140
- /**
141
- * If exactly one type of child is allowed in this field, it is provided here.
142
- * @remarks
143
- * Some code paths (like unboxing and compressed tree encoding) special case schema with exactly one allowed type.
144
- * This field allows for simple and optimized handling of this case.
145
- */
146
- get monomorphicChildType(): FlexTreeNodeSchema | undefined;
147
- /**
148
- * Compare this schema to another.
149
- *
150
- * @returns true iff the schema are identical.
151
- */
152
- equals(other: FlexFieldSchema): boolean;
153
- }
154
- /**
155
- * Types for use in fields.
156
- * This representation is optimized for runtime use in view-schema.
157
- *
158
- * @remarks
159
- * See {@link TreeTypeSet} for a stored-schema compatible version using the {@link TreeNodeSchemaIdentifier}.
160
- * See {@link FlexAllowedTypes} for a compile time optimized version.
161
- */
162
- export type AllowedTypeSet = ReadonlySet<FlexTreeNodeSchema>;
163
- /**
164
- * Convert {@link FlexAllowedTypes} to {@link TreeTypeSet}.
165
- */
166
- export declare function allowedTypesSchemaSet(t: FlexAllowedTypes): AllowedTypeSet;
167
- /**
168
- * Convert {@link FlexAllowedTypes} to {@link TreeTypeSet}.
169
- */
170
- export declare function allowedTypesToTypeSet(t: FlexAllowedTypes): TreeTypeSet;
171
- /**
172
- * Schema data that can be be used to view a document.
173
- * Strongly typed over its rootFieldSchema.
174
- *
175
- * @remarks
176
- * The type of the rootFieldSchema is used to implement SchemaAware APIs.
177
- * Cases that do not require being compile time schema aware can omit the explicit type for it.
178
- */
179
- export interface FlexTreeSchema<out T extends FlexFieldSchema = FlexFieldSchema> extends SchemaCollection {
180
- /**
181
- * Schema for the root field which contains the whole tree.
182
- */
183
- readonly rootFieldSchema: T;
184
- /**
185
- * Extra configuration for how this schema is handled at runtime.
186
- */
187
- readonly policy: FullSchemaPolicy;
188
- /**
189
- * Compatibility information how how to interact with content who's stored schema is not directly compatible with this schema.
190
- */
191
- readonly adapters: Adapters;
192
- }
193
- /**
194
- * Converts a {@link FlexTreeSchema} into a {@link TreeStoredSchema}.
195
- */
196
- export declare function intoStoredSchema(treeSchema: FlexTreeSchema): TreeStoredSchema;
197
- /**
198
- * Converts a {@link SchemaCollection} into a {@link StoredSchemaCollection}.
199
- */
200
- export declare function intoStoredSchemaCollection(treeSchema: SchemaCollection): StoredSchemaCollection;
201
- /**
202
- * Schema data that can be be used to view a document.
203
- *
204
- * @privateRemarks
205
- * It is convenient that this can be used as a StoredSchemaCollection with no conversion.
206
- * There there isn't a design requirement for this however, so this extends clause can be removed later if needed.
207
- */
208
- export interface SchemaCollection {
209
- /**
210
- * {@inheritdoc SchemaCollection}
211
- */
212
- readonly nodeSchema: ReadonlyMap<TreeNodeSchemaIdentifier, FlexTreeNodeSchema>;
213
- }
214
- /**
215
- * Checks if a {@link FlexTreeNodeSchema} is a {@link FlexMapNodeSchema}.
216
- */
217
- export declare function schemaIsMap(schema: FlexTreeNodeSchema): schema is FlexMapNodeSchema;
218
- /**
219
- * Checks if a {@link FlexTreeNodeSchema} is a {@link LeafNodeSchema}.
220
- */
221
- export declare function schemaIsLeaf(schema: FlexTreeNodeSchema): schema is LeafNodeSchema;
222
- /**
223
- * Checks if a {@link FlexTreeNodeSchema} is a {@link FlexObjectNodeSchema}.
224
- */
225
- export declare function schemaIsObjectNode(schema: FlexTreeNodeSchema): schema is FlexObjectNodeSchema;
226
14
  //# sourceMappingURL=typedTreeSchema.d.ts.map