fluid-framework 2.4.0 → 2.5.0

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.
@@ -8,12 +8,20 @@
8
8
  export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
9
9
 
10
10
  // @public
11
- type ApplyKind<T, Kind extends FieldKind, DefaultsAreOptional extends boolean> = {
11
+ type AllowedTypesUnsafe = readonly LazyItem<TreeNodeSchemaUnsafe>[];
12
+
13
+ // @public
14
+ type ApplyKind<T, Kind extends FieldKind> = {
12
15
  [FieldKind.Required]: T;
13
16
  [FieldKind.Optional]: T | undefined;
14
- [FieldKind.Identifier]: DefaultsAreOptional extends true ? T | undefined : T;
17
+ [FieldKind.Identifier]: T;
15
18
  }[Kind];
16
19
 
20
+ // @public
21
+ type ApplyKindInput<T, Kind extends FieldKind, DefaultsAreOptional extends boolean> = [
22
+ Kind
23
+ ] extends [FieldKind.Required] ? T : [Kind] extends [FieldKind.Optional] ? T | undefined : [Kind] extends [FieldKind.Identifier] ? DefaultsAreOptional extends true ? T | undefined : T : never;
24
+
17
25
  // @public
18
26
  export enum AttachState {
19
27
  Attached = "Attached",
@@ -405,11 +413,14 @@ export type InitialObjects<T extends ContainerSchema> = {
405
413
  // @public
406
414
  type _InlineTrick = 0;
407
415
 
416
+ // @public
417
+ export type Input<T extends never> = T;
418
+
408
419
  // @public
409
420
  type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = FlattenKeys<{
410
- readonly [Property in keyof T]?: InsertableTreeFieldFromImplicitField<T[Property] & string>;
421
+ readonly [Property in keyof T]?: InsertableTreeFieldFromImplicitField<T[Property & string]>;
411
422
  } & {
412
- readonly [Property in keyof T as FieldHasDefault<T[Property] & string> extends false ? Property : never]: InsertableTreeFieldFromImplicitField<T[Property] & string>;
423
+ readonly [Property in keyof T as FieldHasDefault<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitField<T[Property & string]>;
413
424
  }>;
414
425
 
415
426
  // @public
@@ -420,28 +431,36 @@ export type InsertableObjectFromSchemaRecordUnsafe<T extends Unenforced<Restrict
420
431
  };
421
432
 
422
433
  // @public
423
- export type InsertableTreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<InsertableTreeNodeFromImplicitAllowedTypes<Types>, Kind, true> : TSchema extends ImplicitAllowedTypes ? InsertableTreeNodeFromImplicitAllowedTypes<TSchema> : unknown;
434
+ export type InsertableTreeFieldFromImplicitField<TSchemaInput extends ImplicitFieldSchema, TSchema = UnionToIntersection<TSchemaInput>> = [TSchema] extends [FieldSchema<infer Kind, infer Types>] ? ApplyKindInput<InsertableTreeNodeFromImplicitAllowedTypes<Types>, Kind, true> : [TSchema] extends [ImplicitAllowedTypes] ? InsertableTreeNodeFromImplicitAllowedTypes<TSchema> : never;
424
435
 
425
436
  // @public
426
- export type InsertableTreeFieldFromImplicitFieldUnsafe<TSchema extends Unenforced<ImplicitFieldSchema>> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, true> : InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema>;
437
+ export type InsertableTreeFieldFromImplicitFieldUnsafe<TSchemaInput extends Unenforced<ImplicitFieldSchema>, TSchema = UnionToIntersection<TSchemaInput>> = [TSchema] extends [FieldSchemaUnsafe<infer Kind, infer Types>] ? ApplyKindInput<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, true> : [TSchema] extends [ImplicitAllowedTypes] ? InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : never;
427
438
 
428
439
  // @public
429
- export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? InsertableTypedNode<TSchema> : TSchema extends AllowedTypes ? InsertableTypedNode<FlexListToUnion<TSchema>> : never;
440
+ export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = TList extends readonly [
441
+ LazyItem<infer TSchema extends TreeNodeSchema>,
442
+ ...infer Rest extends AllowedTypes
443
+ ] ? InsertableTypedNode<TSchema> | InsertableTreeNodeFromAllowedTypes<Rest> : never;
430
444
 
431
445
  // @public
432
- export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends Unenforced<ImplicitAllowedTypes>> = TSchema extends AllowedTypes ? InsertableTypedNodeUnsafe<FlexListToUnion<TSchema>> : InsertableTypedNodeUnsafe<TSchema>;
446
+ export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends Unenforced<AllowedTypesUnsafe>> = TList extends readonly [
447
+ LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
448
+ ...infer Rest extends AllowedTypesUnsafe
449
+ ] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
433
450
 
434
451
  // @public
435
- export type InsertableTypedNode<T extends TreeNodeSchema> = (T extends {
436
- implicitlyConstructable: true;
437
- } ? NodeBuilderData<T> : never) | Unhydrated<NodeFromSchema<T>>;
452
+ export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes> = [
453
+ TSchema
454
+ ] extends [TreeNodeSchema] ? InsertableTypedNode<TSchema> : [TSchema] extends [AllowedTypes] ? InsertableTreeNodeFromAllowedTypes<TSchema> : never;
438
455
 
439
456
  // @public
440
- type InsertableTypedNodeUnsafe<T extends Unenforced<TreeNodeSchema>> = [
441
- Unhydrated<NodeFromSchemaUnsafe<T>> | (T extends {
442
- implicitlyConstructable: true;
443
- } ? NodeBuilderDataUnsafe<T> : never)
444
- ][_InlineTrick];
457
+ export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends Unenforced<ImplicitAllowedTypes>> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
458
+
459
+ // @public
460
+ export type InsertableTypedNode<TSchema extends TreeNodeSchema, T = UnionToIntersection<TSchema>> = (T extends TreeNodeSchema<string, NodeKind, TreeNode | TreeLeafValue, never, true> ? NodeBuilderData<T> : never) | (T extends TreeNodeSchema ? Unhydrated<TreeNode extends NodeFromSchema<T> ? never : NodeFromSchema<T>> : never);
461
+
462
+ // @public
463
+ type InsertableTypedNodeUnsafe<TSchema extends Unenforced<TreeNodeSchemaUnsafe>, T = UnionToIntersection<TSchema>> = (T extends TreeNodeSchemaUnsafe<string, NodeKind, TreeNode | TreeLeafValue, never, true> ? NodeBuilderDataUnsafe<T> : never) | (T extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<T> : never);
445
464
 
446
465
  // @public @sealed
447
466
  export interface InternalTreeNode extends ErasedType<"@fluidframework/tree.InternalTreeNode"> {
@@ -452,6 +471,7 @@ declare namespace InternalTypes {
452
471
  _InlineTrick,
453
472
  FlattenKeys,
454
473
  ApplyKind,
474
+ ApplyKindInput,
455
475
  NodeBuilderData,
456
476
  FieldHasDefault,
457
477
  TreeArrayNodeBase,
@@ -474,6 +494,9 @@ declare namespace InternalTypes {
474
494
  NodeBuilderDataUnsafe,
475
495
  NodeFromSchemaUnsafe,
476
496
  ReadonlyMapInlined,
497
+ TreeNodeSchemaUnsafe,
498
+ AllowedTypesUnsafe,
499
+ TreeNodeSchemaNonClassUnsafe,
477
500
  FlexList,
478
501
  FlexListToUnion,
479
502
  ExtractItemType,
@@ -564,16 +587,16 @@ export type Myself<M extends IMember = IMember> = M & {
564
587
  };
565
588
 
566
589
  // @public
567
- type NodeBuilderData<T extends TreeNodeSchema> = T extends TreeNodeSchema<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
590
+ type NodeBuilderData<T extends TreeNodeSchemaCore<string, NodeKind, boolean>> = T extends TreeNodeSchemaCore<string, NodeKind, boolean, unknown, infer TBuild> ? TBuild : never;
568
591
 
569
592
  // @public
570
- type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchema<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
593
+ type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
571
594
 
572
595
  // @public
573
596
  export type NodeFromSchema<T extends TreeNodeSchema> = T extends TreeNodeSchema<string, NodeKind, infer TNode> ? TNode : never;
574
597
 
575
598
  // @public
576
- type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchema<string, NodeKind, infer TNode> ? TNode : never;
599
+ type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
577
600
 
578
601
  // @public
579
602
  export interface NodeInDocumentConstraint {
@@ -604,6 +627,10 @@ type ObjectFromSchemaRecordUnsafe<T extends Unenforced<RestrictiveStringRecord<I
604
627
  // @public
605
628
  export type Off = () => void;
606
629
 
630
+ // @public @sealed
631
+ export interface ReadonlyArrayNode<out T = TreeNode | TreeLeafValue> extends ReadonlyArray<T>, Awaited<TreeNode & WithType<string, NodeKind.Array>> {
632
+ }
633
+
607
634
  // @public @sealed
608
635
  interface ReadonlyMapInlined<K, T extends Unenforced<ImplicitAllowedTypes>> {
609
636
  [Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
@@ -660,17 +687,17 @@ export const rollback: unique symbol;
660
687
  // @public @sealed
661
688
  export interface RunTransaction {
662
689
  <TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult): TResult;
663
- <TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult): TResult;
690
+ <TView extends TreeView<any>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult): TResult;
664
691
  <TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult | typeof rollback): TResult | typeof rollback;
665
- <TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult | typeof rollback): TResult | typeof rollback;
692
+ <TView extends TreeView<any>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult | typeof rollback): TResult | typeof rollback;
666
693
  <TNode extends TreeNode>(node: TNode, transaction: (node: TNode) => void): void;
667
- <TView extends TreeView<ImplicitFieldSchema>>(tree: TView, transaction: (root: TView["root"]) => void): void;
694
+ <TView extends TreeView<any>>(tree: TView, transaction: (root: TView["root"]) => void): void;
668
695
  <TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult, preconditions?: readonly TransactionConstraint[]): TResult;
669
- <TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult, preconditions?: readonly TransactionConstraint[]): TResult;
696
+ <TView extends TreeView<any>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult, preconditions?: readonly TransactionConstraint[]): TResult;
670
697
  <TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult | typeof rollback, preconditions?: readonly TransactionConstraint[]): TResult | typeof rollback;
671
- <TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult | typeof rollback, preconditions?: readonly TransactionConstraint[]): TResult | typeof rollback;
698
+ <TView extends TreeView<any>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult | typeof rollback, preconditions?: readonly TransactionConstraint[]): TResult | typeof rollback;
672
699
  <TNode extends TreeNode>(node: TNode, transaction: (node: TNode) => void, preconditions?: readonly TransactionConstraint[]): void;
673
- <TView extends TreeView<ImplicitFieldSchema>>(tree: TView, transaction: (root: TView["root"]) => void, preconditions?: readonly TransactionConstraint[]): void;
700
+ <TView extends TreeView<any>>(tree: TView, transaction: (root: TView["root"]) => void, preconditions?: readonly TransactionConstraint[]): void;
674
701
  readonly rollback: typeof rollback;
675
702
  }
676
703
 
@@ -685,33 +712,33 @@ export interface SchemaCompatibilityStatus {
685
712
  // @public @sealed
686
713
  export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
687
714
  constructor(scope: TScope);
688
- array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
689
- array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
715
+ array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
716
+ array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T, undefined>;
690
717
  arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
691
718
  [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
692
- }, false, T>;
693
- readonly boolean: TreeNodeSchema<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean>;
694
- readonly handle: TreeNodeSchema<"com.fluidframework.leaf.handle", NodeKind.Leaf, IFluidHandle<unknown>, IFluidHandle<unknown>>;
719
+ }, false, T, undefined>;
720
+ readonly boolean: TreeNodeSchemaNonClass<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean, true, unknown, never>;
721
+ readonly handle: TreeNodeSchemaNonClass<"com.fluidframework.leaf.handle", NodeKind.Leaf, IFluidHandle<unknown>, IFluidHandle<unknown>, true, unknown, never>;
695
722
  get identifier(): FieldSchema<FieldKind.Identifier, typeof SchemaFactory.string>;
696
- map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
697
- map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
723
+ map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map>, MapNodeInsertableData<T>, true, T, undefined>;
724
+ map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map>, MapNodeInsertableData<T>, true, T, undefined>;
698
725
  mapRecursive<Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map, unknown>, {
699
726
  [Symbol.iterator](): Iterator<[
700
727
  string,
701
728
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
702
729
  ]>;
703
- }, false, T>;
704
- readonly null: TreeNodeSchema<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null>;
705
- readonly number: TreeNodeSchema<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number>;
730
+ }, false, T, undefined>;
731
+ readonly null: TreeNodeSchemaNonClass<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null, true, unknown, never>;
732
+ readonly number: TreeNodeSchemaNonClass<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number, true, unknown, never>;
706
733
  object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>>(name: Name, fields: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T>;
707
- objectRecursive<const Name extends TName, const T extends Unenforced<RestrictiveStringRecord<ImplicitFieldSchema>>>(name: Name, t: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & { readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property]>; } & { readonly [Property_1 in keyof T as FieldHasDefaultUnsafe<T[Property_1]> extends true ? Property_1 : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property_1]> | undefined; }, false, T>;
734
+ objectRecursive<const Name extends TName, const T extends Unenforced<RestrictiveStringRecord<ImplicitFieldSchema>>>(name: Name, t: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & { readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property], UnionToIntersection_2<T[Property]>>; } & { readonly [Property_1 in keyof T as FieldHasDefaultUnsafe<T[Property_1]> extends true ? Property_1 : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property_1], UnionToIntersection_2<T[Property_1]>> | undefined; }, false, T>;
708
735
  optional<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
709
736
  optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
710
737
  required<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">): FieldSchema<FieldKind.Required, T, TCustomMetadata>;
711
738
  requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
712
739
  // (undocumented)
713
740
  readonly scope: TScope;
714
- readonly string: TreeNodeSchema<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string>;
741
+ readonly string: TreeNodeSchemaNonClass<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string, true, unknown, never>;
715
742
  }
716
743
 
717
744
  // @public
@@ -752,7 +779,7 @@ interface TreeApi extends TreeNodeApi {
752
779
  }
753
780
 
754
781
  // @public @sealed
755
- export interface TreeArrayNode<TAllowedTypes extends ImplicitAllowedTypes = ImplicitAllowedTypes> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypes<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypes<TAllowedTypes>, TreeArrayNode> {
782
+ export interface TreeArrayNode<TAllowedTypes extends ImplicitAllowedTypes = ImplicitAllowedTypes> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypes<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypes<TAllowedTypes>> {
756
783
  }
757
784
 
758
785
  // @public
@@ -761,7 +788,7 @@ export const TreeArrayNode: {
761
788
  };
762
789
 
763
790
  // @public @sealed
764
- interface TreeArrayNodeBase<out T, in TNew, in TMoveFrom> extends ReadonlyArray<T>, TreeNode {
791
+ interface TreeArrayNodeBase<out T, in TNew, in TMoveFrom = ReadonlyArrayNode> extends ReadonlyArrayNode<T> {
765
792
  insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
766
793
  insertAtEnd(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
767
794
  insertAtStart(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
@@ -783,7 +810,7 @@ interface TreeArrayNodeBase<out T, in TNew, in TMoveFrom> extends ReadonlyArray<
783
810
  }
784
811
 
785
812
  // @public @sealed
786
- export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAllowedTypes>> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, TreeArrayNode> {
813
+ export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAllowedTypes>> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
787
814
  }
788
815
 
789
816
  // @public @sealed
@@ -793,10 +820,10 @@ export interface TreeChangeEvents {
793
820
  }
794
821
 
795
822
  // @public
796
- export type TreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypes<Types>, Kind, false> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : unknown;
823
+ export type TreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypes<Types>, Kind> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : TreeNode | TreeLeafValue | undefined;
797
824
 
798
825
  // @public
799
- type TreeFieldFromImplicitFieldUnsafe<TSchema extends Unenforced<ImplicitFieldSchema>> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, false> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
826
+ type TreeFieldFromImplicitFieldUnsafe<TSchema extends Unenforced<ImplicitFieldSchema>> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
800
827
 
801
828
  // @public
802
829
  export type TreeLeafValue = number | string | boolean | IFluidHandle | null;
@@ -842,20 +869,29 @@ export interface TreeNodeApi {
842
869
  export type TreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
843
870
 
844
871
  // @public
845
- type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends Unenforced<ImplicitAllowedTypes>> = TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
872
+ type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends Unenforced<ImplicitAllowedTypes>> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
846
873
 
847
874
  // @public @sealed
848
- export type TreeNodeSchema<Name extends string = string, Kind extends NodeKind = NodeKind, TNode = unknown, TBuild = never, ImplicitlyConstructable extends boolean = boolean, Info = unknown> = TreeNodeSchemaClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info> | TreeNodeSchemaNonClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info>;
875
+ export type TreeNodeSchema<Name extends string = string, Kind extends NodeKind = NodeKind, TNode extends TreeNode | TreeLeafValue = TreeNode | TreeLeafValue, TBuild = never, ImplicitlyConstructable extends boolean = boolean, Info = unknown> = (TNode extends TreeNode ? TreeNodeSchemaClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info> : never) | TreeNodeSchemaNonClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info>;
849
876
 
850
877
  // @public @sealed
851
- export interface TreeNodeSchemaClass<out Name extends string = string, out Kind extends NodeKind = NodeKind, out TNode = unknown, in TInsertable = never, out ImplicitlyConstructable extends boolean = boolean, out Info = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info> {
878
+ export type TreeNodeSchemaClass<Name extends string = string, Kind extends NodeKind = NodeKind, TNode extends TreeNode = TreeNode, TInsertable = never, ImplicitlyConstructable extends boolean = boolean, Info = unknown, TConstructorExtra = never> = TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info, TInsertable> & (undefined extends TConstructorExtra ? {
879
+ new (data?: TInsertable | InternalTreeNode | TConstructorExtra): Unhydrated<TNode>;
880
+ } : {
881
+ new (data: TInsertable | InternalTreeNode | TConstructorExtra): Unhydrated<TNode>;
882
+ });
883
+
884
+ // @public
885
+ export interface TreeNodeSchemaClassUnsafe<out Name extends string, out Kind extends NodeKind, out TNode extends Unenforced<TreeNode>, in TInsertable, out ImplicitlyConstructable extends boolean, out Info> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info> {
852
886
  // @sealed
853
887
  new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
854
888
  }
855
889
 
856
890
  // @public @sealed
857
- export interface TreeNodeSchemaCore<out Name extends string, out Kind extends NodeKind, out ImplicitlyConstructable extends boolean, out Info = unknown> {
891
+ export interface TreeNodeSchemaCore<out Name extends string, out Kind extends NodeKind, out ImplicitlyConstructable extends boolean, out Info = unknown, out TInsertable = never> {
858
892
  readonly childTypes: ReadonlySet<TreeNodeSchema>;
893
+ // @sealed
894
+ createFromInsertable(data: TInsertable): Unhydrated<TreeNode | TreeLeafValue>;
859
895
  readonly identifier: Name;
860
896
  readonly implicitlyConstructable: ImplicitlyConstructable;
861
897
  readonly info: Info;
@@ -864,11 +900,21 @@ export interface TreeNodeSchemaCore<out Name extends string, out Kind extends No
864
900
  }
865
901
 
866
902
  // @public @sealed
867
- export interface TreeNodeSchemaNonClass<out Name extends string = string, out Kind extends NodeKind = NodeKind, out TNode = unknown, in TInsertable = never, out ImplicitlyConstructable extends boolean = boolean, out Info = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info> {
903
+ export type TreeNodeSchemaNonClass<Name extends string = string, Kind extends NodeKind = NodeKind, TNode extends TreeNode | TreeLeafValue = TreeNode | TreeLeafValue, TInsertable = never, ImplicitlyConstructable extends boolean = boolean, Info = unknown, TConstructorExtra = never> = TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info, TInsertable> & (undefined extends TConstructorExtra ? {
904
+ create(data?: TInsertable | TConstructorExtra): TNode;
905
+ } : {
906
+ create(data: TInsertable | TConstructorExtra): TNode;
907
+ });
908
+
909
+ // @public
910
+ interface TreeNodeSchemaNonClassUnsafe<out Name extends string, out Kind extends NodeKind, out TNode extends Unenforced<TreeNode | TreeLeafValue>, in TInsertable, out ImplicitlyConstructable extends boolean, out Info = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info> {
868
911
  // (undocumented)
869
912
  create(data: TInsertable): TNode;
870
913
  }
871
914
 
915
+ // @public
916
+ type TreeNodeSchemaUnsafe<Name extends string = string, Kind extends NodeKind = NodeKind, TNode extends Unenforced<TreeNode | TreeLeafValue> = unknown, TBuild = never, ImplicitlyConstructable extends boolean = boolean, Info = unknown> = TreeNodeSchemaClassUnsafe<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info> | TreeNodeSchemaNonClassUnsafe<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info>;
917
+
872
918
  // @public
873
919
  export type TreeObjectNode<T extends RestrictiveStringRecord<ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
874
920
 
@@ -884,7 +930,7 @@ export enum TreeStatus {
884
930
  }
885
931
 
886
932
  // @public @sealed
887
- export interface TreeView<TSchema extends ImplicitFieldSchema> extends IDisposable {
933
+ export interface TreeView<in out TSchema extends ImplicitFieldSchema> extends IDisposable {
888
934
  readonly compatibility: SchemaCompatibilityStatus;
889
935
  readonly events: Listenable<TreeViewEvents>;
890
936
  initialize(content: InsertableTreeFieldFromImplicitField<TSchema>): void;
@@ -895,7 +941,7 @@ export interface TreeView<TSchema extends ImplicitFieldSchema> extends IDisposab
895
941
  }
896
942
 
897
943
  // @public @sealed
898
- export class TreeViewConfiguration<TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> implements Required<ITreeViewConfiguration<TSchema>> {
944
+ export class TreeViewConfiguration<const TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> implements Required<ITreeViewConfiguration<TSchema>> {
899
945
  constructor(props: ITreeViewConfiguration<TSchema>);
900
946
  readonly enableSchemaValidation: boolean;
901
947
  readonly preventAmbiguity: boolean;
@@ -923,6 +969,9 @@ export type Unenforced<_DesiredExtendsConstraint> = unknown;
923
969
  // @public
924
970
  export type Unhydrated<T> = T;
925
971
 
972
+ // @public
973
+ export type UnionToIntersection<T> = (T extends T ? (k: T) => unknown : never) extends (k: infer U) => unknown ? U : never;
974
+
926
975
  // @public
927
976
  export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKind.Array | NodeKind.Map | NodeKind.Object, TreeNode & WithType<T["identifier"], T["kind"]>, {
928
977
  [NodeKind.Object]: T["info"] extends RestrictiveStringRecord<ImplicitFieldSchema> ? InsertableObjectFromSchemaRecord<T["info"]> : unknown;
@@ -943,7 +992,7 @@ export interface ViewableTree {
943
992
  export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind, out TInfo = unknown> {
944
993
  // @deprecated
945
994
  get [typeNameSymbol](): TName;
946
- get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind, unknown, never, boolean, TInfo>;
995
+ get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind, TreeNode, never, boolean, TInfo>;
947
996
  }
948
997
 
949
998
  ```
package/dist/alpha.d.ts CHANGED
@@ -61,9 +61,12 @@ export {
61
61
  ImplicitAllowedTypes,
62
62
  ImplicitFieldSchema,
63
63
  InitialObjects,
64
+ Input,
64
65
  InsertableObjectFromSchemaRecordUnsafe,
65
66
  InsertableTreeFieldFromImplicitField,
66
67
  InsertableTreeFieldFromImplicitFieldUnsafe,
68
+ InsertableTreeNodeFromAllowedTypes,
69
+ InsertableTreeNodeFromAllowedTypesUnsafe,
67
70
  InsertableTreeNodeFromImplicitAllowedTypes,
68
71
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
69
72
  InsertableTypedNode,
@@ -81,6 +84,7 @@ export {
81
84
  NodeInDocumentConstraint,
82
85
  NodeKind,
83
86
  Off,
87
+ ReadonlyArrayNode,
84
88
  ReplaceIEventThisPlaceHolder,
85
89
  RestrictiveReadonlyRecord,
86
90
  RestrictiveStringRecord,
@@ -109,6 +113,7 @@ export {
109
113
  TreeNodeFromImplicitAllowedTypes,
110
114
  TreeNodeSchema,
111
115
  TreeNodeSchemaClass,
116
+ TreeNodeSchemaClassUnsafe,
112
117
  TreeNodeSchemaCore,
113
118
  TreeNodeSchemaNonClass,
114
119
  TreeObjectNode,
@@ -119,6 +124,7 @@ export {
119
124
  TreeViewEvents,
120
125
  Unenforced,
121
126
  Unhydrated,
127
+ UnionToIntersection,
122
128
  ValidateRecursiveSchema,
123
129
  ViewableTree,
124
130
  WithType,
@@ -132,10 +138,20 @@ export {
132
138
  TreeChangeEventsBeta,
133
139
 
134
140
  // @alpha APIs
141
+ BranchableTree,
142
+ ConciseTree,
143
+ EncodeOptions,
144
+ FactoryContent,
145
+ FactoryContentObject,
135
146
  FixRecursiveArraySchema,
147
+ FluidClientVersion,
136
148
  ForestOptions,
137
149
  ForestType,
138
150
  ICodecOptions,
151
+ Insertable,
152
+ InsertableContent,
153
+ InsertableField,
154
+ IsUnion,
139
155
  JsonArrayNodeSchema,
140
156
  JsonCompatible,
141
157
  JsonCompatibleObject,
@@ -152,22 +168,36 @@ export {
152
168
  JsonSchemaType,
153
169
  JsonTreeSchema,
154
170
  JsonValidator,
171
+ ParseOptions,
172
+ PopUnion,
173
+ ReadSchema,
174
+ ReadableField,
155
175
  SchemaValidationFunction,
156
176
  SharedTreeFormatOptions,
157
177
  SharedTreeFormatVersion,
158
178
  SharedTreeOptions,
179
+ TreeAlpha,
159
180
  TreeBranch,
181
+ TreeBranchEvents,
160
182
  TreeBranchFork,
161
183
  TreeCompressionStrategy,
184
+ TreeViewAlpha,
185
+ UnionToTuple,
186
+ UnsafeUnknownSchema,
187
+ VerboseTree,
188
+ VerboseTreeNode,
189
+ ViewContent,
162
190
  adaptEnum,
191
+ asTreeViewAlpha,
163
192
  comparePersistedSchema,
164
193
  configuredSharedTree,
165
194
  enumFromStrings,
166
195
  extractPersistedSchema,
167
196
  getBranch,
168
197
  getJsonSchema,
198
+ independentInitializedView,
199
+ independentView,
169
200
  noopValidator,
170
201
  singletonSchema,
171
- typeboxValidator,
172
- typedObjectValues
202
+ typeboxValidator
173
203
  } from "./index.js";
package/dist/beta.d.ts CHANGED
@@ -61,9 +61,12 @@ export {
61
61
  ImplicitAllowedTypes,
62
62
  ImplicitFieldSchema,
63
63
  InitialObjects,
64
+ Input,
64
65
  InsertableObjectFromSchemaRecordUnsafe,
65
66
  InsertableTreeFieldFromImplicitField,
66
67
  InsertableTreeFieldFromImplicitFieldUnsafe,
68
+ InsertableTreeNodeFromAllowedTypes,
69
+ InsertableTreeNodeFromAllowedTypesUnsafe,
67
70
  InsertableTreeNodeFromImplicitAllowedTypes,
68
71
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
69
72
  InsertableTypedNode,
@@ -81,6 +84,7 @@ export {
81
84
  NodeInDocumentConstraint,
82
85
  NodeKind,
83
86
  Off,
87
+ ReadonlyArrayNode,
84
88
  ReplaceIEventThisPlaceHolder,
85
89
  RestrictiveReadonlyRecord,
86
90
  RestrictiveStringRecord,
@@ -109,6 +113,7 @@ export {
109
113
  TreeNodeFromImplicitAllowedTypes,
110
114
  TreeNodeSchema,
111
115
  TreeNodeSchemaClass,
116
+ TreeNodeSchemaClassUnsafe,
112
117
  TreeNodeSchemaCore,
113
118
  TreeNodeSchemaNonClass,
114
119
  TreeObjectNode,
@@ -119,6 +124,7 @@ export {
119
124
  TreeViewEvents,
120
125
  Unenforced,
121
126
  Unhydrated,
127
+ UnionToIntersection,
122
128
  ValidateRecursiveSchema,
123
129
  ViewableTree,
124
130
  WithType,
package/dist/legacy.d.ts CHANGED
@@ -61,9 +61,12 @@ export {
61
61
  ImplicitAllowedTypes,
62
62
  ImplicitFieldSchema,
63
63
  InitialObjects,
64
+ Input,
64
65
  InsertableObjectFromSchemaRecordUnsafe,
65
66
  InsertableTreeFieldFromImplicitField,
66
67
  InsertableTreeFieldFromImplicitFieldUnsafe,
68
+ InsertableTreeNodeFromAllowedTypes,
69
+ InsertableTreeNodeFromAllowedTypesUnsafe,
67
70
  InsertableTreeNodeFromImplicitAllowedTypes,
68
71
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
69
72
  InsertableTypedNode,
@@ -81,6 +84,7 @@ export {
81
84
  NodeInDocumentConstraint,
82
85
  NodeKind,
83
86
  Off,
87
+ ReadonlyArrayNode,
84
88
  ReplaceIEventThisPlaceHolder,
85
89
  RestrictiveReadonlyRecord,
86
90
  RestrictiveStringRecord,
@@ -109,6 +113,7 @@ export {
109
113
  TreeNodeFromImplicitAllowedTypes,
110
114
  TreeNodeSchema,
111
115
  TreeNodeSchemaClass,
116
+ TreeNodeSchemaClassUnsafe,
112
117
  TreeNodeSchemaCore,
113
118
  TreeNodeSchemaNonClass,
114
119
  TreeObjectNode,
@@ -119,6 +124,7 @@ export {
119
124
  TreeViewEvents,
120
125
  Unenforced,
121
126
  Unhydrated,
127
+ UnionToIntersection,
122
128
  ValidateRecursiveSchema,
123
129
  ViewableTree,
124
130
  WithType,
package/dist/public.d.ts CHANGED
@@ -61,9 +61,12 @@ export {
61
61
  ImplicitAllowedTypes,
62
62
  ImplicitFieldSchema,
63
63
  InitialObjects,
64
+ Input,
64
65
  InsertableObjectFromSchemaRecordUnsafe,
65
66
  InsertableTreeFieldFromImplicitField,
66
67
  InsertableTreeFieldFromImplicitFieldUnsafe,
68
+ InsertableTreeNodeFromAllowedTypes,
69
+ InsertableTreeNodeFromAllowedTypesUnsafe,
67
70
  InsertableTreeNodeFromImplicitAllowedTypes,
68
71
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
69
72
  InsertableTypedNode,
@@ -81,6 +84,7 @@ export {
81
84
  NodeInDocumentConstraint,
82
85
  NodeKind,
83
86
  Off,
87
+ ReadonlyArrayNode,
84
88
  ReplaceIEventThisPlaceHolder,
85
89
  RestrictiveReadonlyRecord,
86
90
  RestrictiveStringRecord,
@@ -109,6 +113,7 @@ export {
109
113
  TreeNodeFromImplicitAllowedTypes,
110
114
  TreeNodeSchema,
111
115
  TreeNodeSchemaClass,
116
+ TreeNodeSchemaClassUnsafe,
112
117
  TreeNodeSchemaCore,
113
118
  TreeNodeSchemaNonClass,
114
119
  TreeObjectNode,
@@ -119,6 +124,7 @@ export {
119
124
  TreeViewEvents,
120
125
  Unenforced,
121
126
  Unhydrated,
127
+ UnionToIntersection,
122
128
  ValidateRecursiveSchema,
123
129
  ViewableTree,
124
130
  WithType,
package/lib/alpha.d.ts CHANGED
@@ -61,9 +61,12 @@ export {
61
61
  ImplicitAllowedTypes,
62
62
  ImplicitFieldSchema,
63
63
  InitialObjects,
64
+ Input,
64
65
  InsertableObjectFromSchemaRecordUnsafe,
65
66
  InsertableTreeFieldFromImplicitField,
66
67
  InsertableTreeFieldFromImplicitFieldUnsafe,
68
+ InsertableTreeNodeFromAllowedTypes,
69
+ InsertableTreeNodeFromAllowedTypesUnsafe,
67
70
  InsertableTreeNodeFromImplicitAllowedTypes,
68
71
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
69
72
  InsertableTypedNode,
@@ -81,6 +84,7 @@ export {
81
84
  NodeInDocumentConstraint,
82
85
  NodeKind,
83
86
  Off,
87
+ ReadonlyArrayNode,
84
88
  ReplaceIEventThisPlaceHolder,
85
89
  RestrictiveReadonlyRecord,
86
90
  RestrictiveStringRecord,
@@ -109,6 +113,7 @@ export {
109
113
  TreeNodeFromImplicitAllowedTypes,
110
114
  TreeNodeSchema,
111
115
  TreeNodeSchemaClass,
116
+ TreeNodeSchemaClassUnsafe,
112
117
  TreeNodeSchemaCore,
113
118
  TreeNodeSchemaNonClass,
114
119
  TreeObjectNode,
@@ -119,6 +124,7 @@ export {
119
124
  TreeViewEvents,
120
125
  Unenforced,
121
126
  Unhydrated,
127
+ UnionToIntersection,
122
128
  ValidateRecursiveSchema,
123
129
  ViewableTree,
124
130
  WithType,
@@ -132,10 +138,20 @@ export {
132
138
  TreeChangeEventsBeta,
133
139
 
134
140
  // @alpha APIs
141
+ BranchableTree,
142
+ ConciseTree,
143
+ EncodeOptions,
144
+ FactoryContent,
145
+ FactoryContentObject,
135
146
  FixRecursiveArraySchema,
147
+ FluidClientVersion,
136
148
  ForestOptions,
137
149
  ForestType,
138
150
  ICodecOptions,
151
+ Insertable,
152
+ InsertableContent,
153
+ InsertableField,
154
+ IsUnion,
139
155
  JsonArrayNodeSchema,
140
156
  JsonCompatible,
141
157
  JsonCompatibleObject,
@@ -152,22 +168,36 @@ export {
152
168
  JsonSchemaType,
153
169
  JsonTreeSchema,
154
170
  JsonValidator,
171
+ ParseOptions,
172
+ PopUnion,
173
+ ReadSchema,
174
+ ReadableField,
155
175
  SchemaValidationFunction,
156
176
  SharedTreeFormatOptions,
157
177
  SharedTreeFormatVersion,
158
178
  SharedTreeOptions,
179
+ TreeAlpha,
159
180
  TreeBranch,
181
+ TreeBranchEvents,
160
182
  TreeBranchFork,
161
183
  TreeCompressionStrategy,
184
+ TreeViewAlpha,
185
+ UnionToTuple,
186
+ UnsafeUnknownSchema,
187
+ VerboseTree,
188
+ VerboseTreeNode,
189
+ ViewContent,
162
190
  adaptEnum,
191
+ asTreeViewAlpha,
163
192
  comparePersistedSchema,
164
193
  configuredSharedTree,
165
194
  enumFromStrings,
166
195
  extractPersistedSchema,
167
196
  getBranch,
168
197
  getJsonSchema,
198
+ independentInitializedView,
199
+ independentView,
169
200
  noopValidator,
170
201
  singletonSchema,
171
- typeboxValidator,
172
- typedObjectValues
202
+ typeboxValidator
173
203
  } from "./index.js";