fluid-framework 2.32.0 → 2.33.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.
@@ -15,35 +15,35 @@ export function adaptEnum<TScope extends string, const TEnum extends Record<stri
15
15
  }, Record<string, never>, true, Record<string, never>, undefined>; }[keyof TEnum]>;
16
16
  };
17
17
 
18
- // @public
18
+ // @public @system
19
19
  export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
20
20
 
21
- // @public
22
- type AllowedTypesUnsafe = readonly LazyItem<TreeNodeSchemaUnsafe>[];
21
+ // @alpha
22
+ export function allowUnused<T>(t?: T): void;
23
23
 
24
- // @public
24
+ // @public @system
25
25
  type ApplyKind<T, Kind extends FieldKind> = {
26
26
  [FieldKind.Required]: T;
27
27
  [FieldKind.Optional]: T | undefined;
28
28
  [FieldKind.Identifier]: T;
29
29
  }[Kind];
30
30
 
31
- // @public
31
+ // @public @system
32
32
  type ApplyKindInput<T, Kind extends FieldKind, DefaultsAreOptional extends boolean> = [
33
33
  Kind
34
34
  ] extends [FieldKind.Required] ? T : [Kind] extends [FieldKind.Optional] ? T | undefined : [Kind] extends [FieldKind.Identifier] ? DefaultsAreOptional extends true ? T | undefined : T : never;
35
35
 
36
- // @alpha @sealed
36
+ // @alpha @sealed @system
37
37
  export interface ArrayNodeCustomizableSchema<out TName extends string = string, in out T extends ImplicitAllowedTypes = ImplicitAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaClass<TName, NodeKind.Array, TreeArrayNode<T> & WithType<TName, NodeKind.Array, T>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleArrayNodeSchema<TCustomMetadata> {
38
38
  }
39
39
 
40
- // @alpha @sealed
41
- export interface ArrayNodeCustomizableSchemaUnsafe<out TName extends string, in out T extends ImplicitAllowedTypesUnsafe, out TCustomMetadata> extends TreeNodeSchemaClass<TName, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<TName, NodeKind.Array, T>, {
42
- [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
40
+ // @alpha @sealed @system
41
+ export interface ArrayNodeCustomizableSchemaUnsafe<out TName extends string, in out T extends System_Unsafe.ImplicitAllowedTypesUnsafe, out TCustomMetadata> extends TreeNodeSchemaClass<TName, NodeKind.Array, System_Unsafe.TreeArrayNodeUnsafe<T> & WithType<TName, NodeKind.Array, T>, {
42
+ [Symbol.iterator](): Iterator<System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
43
43
  }, false, T, undefined, TCustomMetadata>, SimpleArrayNodeSchema<TCustomMetadata> {
44
44
  }
45
45
 
46
- // @alpha @sealed
46
+ // @alpha @sealed @system
47
47
  export interface ArrayNodePojoEmulationSchema<out TName extends string = string, in out T extends ImplicitAllowedTypes = ImplicitAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaNonClass<TName, NodeKind.Array, TreeArrayNode<T> & WithType<TName, NodeKind.Array, T>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleArrayNodeSchema<TCustomMetadata> {
48
48
  }
49
49
 
@@ -146,7 +146,7 @@ export function createSimpleTreeIndex<TFieldSchema extends ImplicitFieldSchema,
146
146
  // @alpha
147
147
  export function createSimpleTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue, TSchema extends TreeNodeSchema>(view: TreeView<TFieldSchema>, indexer: Map<TreeNodeSchema, string>, getValue: (nodes: TreeIndexNodes<NodeFromSchema<TSchema>>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey, indexableSchema: readonly TSchema[]): SimpleTreeIndex<TKey, TValue>;
148
148
 
149
- // @public @sealed
149
+ // @public @sealed @system
150
150
  interface DefaultProvider extends ErasedType<"@fluidframework/tree.FieldProvider"> {
151
151
  }
152
152
 
@@ -170,26 +170,23 @@ export abstract class ErasedType<out Name = unknown> {
170
170
  // @alpha
171
171
  export function evaluateLazySchema<T extends TreeNodeSchema>(value: LazyItem<T>): T;
172
172
 
173
- // @public
173
+ // @public @system
174
174
  type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result ? Result : Item;
175
175
 
176
176
  // @alpha
177
177
  export function extractPersistedSchema(schema: ImplicitFieldSchema): JsonCompatible;
178
178
 
179
- // @alpha
179
+ // @alpha @system
180
180
  export type FactoryContent = IFluidHandle | string | number | boolean | null | Iterable<readonly [string, InsertableContent]> | readonly InsertableContent[] | FactoryContentObject;
181
181
 
182
- // @alpha
182
+ // @alpha @system
183
183
  export type FactoryContentObject = {
184
184
  readonly [P in string]?: InsertableContent;
185
185
  };
186
186
 
187
- // @public
187
+ // @public @system
188
188
  type FieldHasDefault<T extends ImplicitFieldSchema> = T extends FieldSchema<FieldKind.Optional | FieldKind.Identifier> ? true : false;
189
189
 
190
- // @public @sealed
191
- type FieldHasDefaultUnsafe<T extends ImplicitFieldSchemaUnsafe> = T extends FieldSchemaUnsafe<FieldKind.Optional | FieldKind.Identifier, ImplicitAllowedTypesUnsafe> ? true : false;
192
-
193
190
  // @public
194
191
  export enum FieldKind {
195
192
  Identifier = 2,
@@ -226,8 +223,8 @@ export class FieldSchemaAlpha<Kind extends FieldKind = FieldKind, Types extends
226
223
  get allowedTypesIdentifiers(): ReadonlySet<string>;
227
224
  }
228
225
 
229
- // @alpha @sealed
230
- export interface FieldSchemaAlphaUnsafe<out Kind extends FieldKind, out Types extends ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchemaAlpha<Kind, any, TCustomMetadata>, FieldSchemaUnsafe<Kind, Types, TCustomMetadata> {
226
+ // @alpha @sealed @system
227
+ export interface FieldSchemaAlphaUnsafe<out Kind extends FieldKind, out Types extends System_Unsafe.ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchemaAlpha<Kind, any, TCustomMetadata>, System_Unsafe.FieldSchemaUnsafe<Kind, Types, TCustomMetadata> {
231
228
  readonly allowedTypes: Types;
232
229
  }
233
230
 
@@ -237,25 +234,18 @@ export interface FieldSchemaMetadata<TCustomMetadata = unknown> {
237
234
  readonly description?: string | undefined;
238
235
  }
239
236
 
240
- // @public @sealed
241
- export interface FieldSchemaUnsafe<out Kind extends FieldKind, out Types extends ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchema<Kind, any, TCustomMetadata> {
242
- readonly allowedTypes: Types;
243
- readonly allowedTypeSet: ReadonlySet<TreeNodeSchema>;
244
- readonly kind: Kind;
245
- }
246
-
247
237
  // @alpha
248
238
  export type FixRecursiveArraySchema<T> = T extends TreeNodeSchema ? undefined : undefined;
249
239
 
250
- // @public
240
+ // @public @system
251
241
  type FlattenKeys<T> = [{
252
242
  [Property in keyof T]: T[Property];
253
243
  }][_InlineTrick];
254
244
 
255
- // @public
245
+ // @public @system
256
246
  type FlexList<Item = unknown> = readonly LazyItem<Item>[];
257
247
 
258
- // @public
248
+ // @public @system
259
249
  type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;
260
250
 
261
251
  // @alpha
@@ -574,15 +564,9 @@ export interface IMember {
574
564
  // @public
575
565
  export type ImplicitAllowedTypes = AllowedTypes | TreeNodeSchema;
576
566
 
577
- // @public
578
- export type ImplicitAllowedTypesUnsafe = TreeNodeSchemaUnsafe | readonly LazyItem<Unenforced<TreeNodeSchema>>[];
579
-
580
567
  // @public
581
568
  export type ImplicitFieldSchema = FieldSchema | ImplicitAllowedTypes;
582
569
 
583
- // @public
584
- export type ImplicitFieldSchemaUnsafe = FieldSchemaUnsafe<FieldKind, ImplicitAllowedTypesUnsafe> | ImplicitAllowedTypesUnsafe;
585
-
586
570
  // @alpha
587
571
  export function independentInitializedView<const TSchema extends ImplicitFieldSchema>(config: TreeViewConfiguration<TSchema>, options: ForestOptions & ICodecOptions, content: ViewContent): TreeViewAlpha<TSchema>;
588
572
 
@@ -596,16 +580,16 @@ export type InitialObjects<T extends ContainerSchema> = {
596
580
  [K in keyof T["initialObjects"]]: T["initialObjects"][K] extends SharedObjectKind<infer TChannel> ? TChannel : never;
597
581
  };
598
582
 
599
- // @public
583
+ // @public @system
600
584
  type _InlineTrick = 0;
601
585
 
602
- // @public
586
+ // @public @system
603
587
  export type Input<T extends never> = T;
604
588
 
605
589
  // @alpha
606
590
  export type Insertable<TSchema extends ImplicitAllowedTypes | UnsafeUnknownSchema> = TSchema extends ImplicitAllowedTypes ? InsertableTreeNodeFromImplicitAllowedTypes<TSchema> : InsertableContent;
607
591
 
608
- // @alpha
592
+ // @alpha @system
609
593
  export type InsertableContent = Unhydrated<TreeNode> | FactoryContent;
610
594
 
611
595
  // @alpha
@@ -613,7 +597,7 @@ export type InsertableField<TSchema extends ImplicitFieldSchema | UnsafeUnknownS
613
597
  TSchema
614
598
  ] extends [ImplicitFieldSchema] ? InsertableTreeFieldFromImplicitField<TSchema> : [TSchema] extends [UnsafeUnknownSchema] ? InsertableContent | undefined : never;
615
599
 
616
- // @public
600
+ // @public @system
617
601
  type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {
618
602
  arbitraryKey: "arbitraryValue";
619
603
  } extends T ? Record<string, never> : never : FlattenKeys<{
@@ -622,45 +606,25 @@ type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<Implicit
622
606
  readonly [Property in keyof T as FieldHasDefault<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitField<T[Property & string]>;
623
607
  }>;
624
608
 
625
- // @public
626
- export type InsertableObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
627
- readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
628
- } & {
629
- readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
630
- };
631
-
632
609
  // @public
633
610
  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;
634
611
 
635
- // @public
636
- export type InsertableTreeFieldFromImplicitFieldUnsafe<TSchemaInput extends ImplicitFieldSchemaUnsafe, TSchema = UnionToIntersection<TSchemaInput>> = [TSchema] extends [FieldSchemaUnsafe<infer Kind, infer Types>] ? ApplyKindInput<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, true> : [TSchema] extends [ImplicitAllowedTypes] ? InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : never;
637
-
638
- // @public
639
- export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = TList extends readonly [
612
+ // @public @system
613
+ export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = [TList] extends [
614
+ readonly [
640
615
  LazyItem<infer TSchema extends TreeNodeSchema>,
641
616
  ...infer Rest extends AllowedTypes
617
+ ]
642
618
  ] ? InsertableTypedNode<TSchema> | InsertableTreeNodeFromAllowedTypes<Rest> : never;
643
619
 
644
- // @public
645
- export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = TList extends readonly [
646
- LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
647
- ...infer Rest extends AllowedTypesUnsafe
648
- ] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
649
-
650
620
  // @public
651
621
  export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes> = [
652
622
  TSchema
653
623
  ] extends [TreeNodeSchema] ? InsertableTypedNode<TSchema> : [TSchema] extends [AllowedTypes] ? InsertableTreeNodeFromAllowedTypes<TSchema> : never;
654
624
 
655
- // @public
656
- export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
657
-
658
625
  // @public
659
626
  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);
660
627
 
661
- // @public
662
- type InsertableTypedNodeUnsafe<TSchema extends TreeNodeSchemaUnsafe, T = UnionToIntersection<TSchema>> = (T extends TreeNodeSchemaUnsafe<string, NodeKind, TreeNode | TreeLeafValue, never, true> ? NodeBuilderDataUnsafe<T> : never) | (T extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<T> : never);
663
-
664
628
  // @public @sealed
665
629
  export interface InternalTreeNode extends ErasedType<"@fluidframework/tree.InternalTreeNode"> {
666
630
  }
@@ -677,24 +641,6 @@ declare namespace InternalTypes {
677
641
  DefaultProvider,
678
642
  typeNameSymbol,
679
643
  InsertableObjectFromSchemaRecord,
680
- ObjectFromSchemaRecord,
681
- FieldHasDefaultUnsafe,
682
- ObjectFromSchemaRecordUnsafe,
683
- TreeObjectNodeUnsafe,
684
- TreeFieldFromImplicitFieldUnsafe,
685
- TreeNodeFromImplicitAllowedTypesUnsafe,
686
- InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
687
- TreeArrayNodeUnsafe,
688
- TreeMapNodeUnsafe,
689
- InsertableObjectFromSchemaRecordUnsafe,
690
- InsertableTreeFieldFromImplicitFieldUnsafe,
691
- InsertableTypedNodeUnsafe,
692
- NodeBuilderDataUnsafe,
693
- NodeFromSchemaUnsafe,
694
- ReadonlyMapInlined,
695
- TreeNodeSchemaUnsafe,
696
- AllowedTypesUnsafe,
697
- TreeNodeSchemaNonClassUnsafe,
698
644
  FlexList,
699
645
  FlexListToUnion,
700
646
  ExtractItemType,
@@ -731,7 +677,7 @@ export function isFluidHandle(value: unknown): value is IFluidHandle;
731
677
  // @public
732
678
  export type IsListener<TListener> = TListener extends (...args: any[]) => void ? true : false;
733
679
 
734
- // @alpha
680
+ // @alpha @system
735
681
  export type IsUnion<T, T2 = T> = T extends unknown ? [T2] extends [T] ? false : true : "error";
736
682
 
737
683
  // @public
@@ -780,16 +726,19 @@ export namespace JsonAsTree {
780
726
  // @sealed
781
727
  export class JsonObject extends _APIExtractorWorkaroundObjectBase {
782
728
  }
783
- const _APIExtractorWorkaroundObjectBase: TreeNodeSchemaClass<"com.fluidframework.json.object", NodeKind.Map, TreeMapNodeUnsafe<readonly [LeafSchema<"null", null>, LeafSchema<"number", number>, LeafSchema<"string", string>, LeafSchema<"boolean", boolean>, () => typeof JsonObject, () => typeof Array]> & WithType<"com.fluidframework.json.object", NodeKind.Map, unknown>, {
784
- [Symbol.iterator](): Iterator<[string, string | number | JsonObject | Array | InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | null], any, undefined>;
729
+ const // @system
730
+ _APIExtractorWorkaroundObjectBase: TreeNodeSchemaClass<"com.fluidframework.json.object", NodeKind.Map, System_Unsafe.TreeMapNodeUnsafe<readonly [LeafSchema<"null", null>, LeafSchema<"number", number>, LeafSchema<"string", string>, LeafSchema<"boolean", boolean>, () => typeof JsonObject, () => typeof Array]> & WithType<"com.fluidframework.json.object", NodeKind.Map, unknown>, {
731
+ [Symbol.iterator](): Iterator<[string, string | number | JsonObject | Array | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | null], any, undefined>;
785
732
  } | {
786
- readonly [x: string]: string | number | JsonObject | Array | InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | null;
733
+ readonly [x: string]: string | number | JsonObject | Array | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | null;
787
734
  }, false, readonly [LeafSchema<"null", null>, LeafSchema<"number", number>, LeafSchema<"string", string>, LeafSchema<"boolean", boolean>, () => typeof JsonObject, () => typeof Array], undefined>;
788
735
  // (undocumented)
789
736
  export type Primitive = TreeNodeFromImplicitAllowedTypes<typeof Primitive>;
737
+ // @system
790
738
  export type _RecursiveArrayWorkaroundJsonArray = FixRecursiveArraySchema<typeof Array>;
791
- const _APIExtractorWorkaroundArrayBase: TreeNodeSchemaClass<"com.fluidframework.json.array", NodeKind.Array, TreeArrayNodeUnsafe<readonly [LeafSchema<"null", null>, LeafSchema<"number", number>, LeafSchema<"string", string>, LeafSchema<"boolean", boolean>, () => typeof JsonObject, () => typeof Array]> & WithType<"com.fluidframework.json.array", NodeKind.Array, unknown>, {
792
- [Symbol.iterator](): Iterator<string | number | JsonObject | Array | InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | null, any, undefined>;
739
+ const // @system
740
+ _APIExtractorWorkaroundArrayBase: TreeNodeSchemaClass<"com.fluidframework.json.array", NodeKind.Array, System_Unsafe.TreeArrayNodeUnsafe<readonly [LeafSchema<"null", null>, LeafSchema<"number", number>, LeafSchema<"string", string>, LeafSchema<"boolean", boolean>, () => typeof JsonObject, () => typeof Array]> & WithType<"com.fluidframework.json.array", NodeKind.Array, unknown>, {
741
+ [Symbol.iterator](): Iterator<string | number | JsonObject | Array | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | null, any, undefined>;
793
742
  }, false, readonly [LeafSchema<"null", null>, LeafSchema<"number", number>, LeafSchema<"string", string>, LeafSchema<"boolean", boolean>, () => typeof JsonObject, () => typeof Array], undefined>;
794
743
  // (undocumented)
795
744
  export type Tree = TreeNodeFromImplicitAllowedTypes<typeof Tree>;
@@ -869,7 +818,7 @@ export interface JsonValidator {
869
818
  // @public
870
819
  export type LazyItem<Item = unknown> = Item | (() => Item);
871
820
 
872
- // @public @sealed
821
+ // @public @sealed @system
873
822
  export interface LeafSchema<Name extends string, T extends TreeLeafValue> extends TreeNodeSchemaNonClass<`com.fluidframework.leaf.${Name}`, NodeKind.Leaf, T, T, true> {
874
823
  }
875
824
 
@@ -888,25 +837,25 @@ export type Listeners<T extends object> = {
888
837
  export interface MakeNominal {
889
838
  }
890
839
 
891
- // @alpha @sealed
840
+ // @alpha @sealed @system
892
841
  export interface MapNodeCustomizableSchema<out TName extends string = string, in out T extends ImplicitAllowedTypes = ImplicitAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaClass<TName, NodeKind.Map, TreeMapNode<T> & WithType<TName, NodeKind.Map, T>, MapNodeInsertableData<T>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleMapNodeSchema<TCustomMetadata> {
893
842
  }
894
843
 
895
- // @alpha @sealed
896
- export interface MapNodeCustomizableSchemaUnsafe<out TName extends string, in out T extends ImplicitAllowedTypesUnsafe, out TCustomMetadata> extends TreeNodeSchemaClass<TName, NodeKind.Map, TreeMapNodeUnsafe<T> & WithType<TName, NodeKind.Map, T>, {
844
+ // @alpha @sealed @system
845
+ export interface MapNodeCustomizableSchemaUnsafe<out TName extends string, in out T extends System_Unsafe.ImplicitAllowedTypesUnsafe, out TCustomMetadata> extends TreeNodeSchemaClass<TName, NodeKind.Map, System_Unsafe.TreeMapNodeUnsafe<T> & WithType<TName, NodeKind.Map, T>, {
897
846
  [Symbol.iterator](): Iterator<[
898
847
  string,
899
- InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
848
+ System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
900
849
  ]>;
901
850
  } | {
902
- readonly [P in string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
851
+ readonly [P in string]: System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
903
852
  }, false, T, undefined, TCustomMetadata>, SimpleMapNodeSchema<TCustomMetadata> {
904
853
  }
905
854
 
906
- // @public
855
+ // @public @system
907
856
  export type MapNodeInsertableData<T extends ImplicitAllowedTypes> = Iterable<readonly [string, InsertableTreeNodeFromImplicitAllowedTypes<T>]> | RestrictiveStringRecord<InsertableTreeNodeFromImplicitAllowedTypes<T>>;
908
857
 
909
- // @alpha @sealed
858
+ // @alpha @sealed @system
910
859
  export interface MapNodePojoEmulationSchema<out TName extends string = string, in out T extends ImplicitAllowedTypes = ImplicitAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaNonClass<TName, NodeKind.Map, TreeMapNode<T> & WithType<TName, NodeKind.Map, T>, MapNodeInsertableData<T>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleMapNodeSchema<TCustomMetadata> {
911
860
  }
912
861
 
@@ -926,12 +875,9 @@ export type Myself<M extends IMember = IMember> = M & {
926
875
  readonly currentConnection: string;
927
876
  };
928
877
 
929
- // @public
878
+ // @public @system
930
879
  type NodeBuilderData<T extends TreeNodeSchemaCore<string, NodeKind, boolean>> = T extends TreeNodeSchemaCore<string, NodeKind, boolean, unknown, infer TBuild> ? TBuild : never;
931
880
 
932
- // @public
933
- type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
934
-
935
881
  // @beta @sealed
936
882
  export interface NodeChangedData<TNode extends TreeNode = TreeNode> {
937
883
  readonly changedProperties?: ReadonlySet<TNode extends WithType<string, NodeKind.Object, infer TInfo> ? string & keyof TInfo : string>;
@@ -940,9 +886,6 @@ export interface NodeChangedData<TNode extends TreeNode = TreeNode> {
940
886
  // @public
941
887
  export type NodeFromSchema<T extends TreeNodeSchema> = T extends TreeNodeSchemaClass<string, NodeKind, infer TNode> ? TNode : T extends TreeNodeSchemaNonClass<string, NodeKind, infer TNode> ? TNode : never;
942
888
 
943
- // @public
944
- type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
945
-
946
889
  // @public
947
890
  export interface NodeInDocumentConstraint {
948
891
  // (undocumented)
@@ -973,16 +916,11 @@ export interface NodeSchemaOptions<out TCustomMetadata = unknown> {
973
916
  // @alpha
974
917
  export const noopValidator: JsonValidator;
975
918
 
976
- // @public
977
- type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {} : {
919
+ // @public @system
920
+ export type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {} : {
978
921
  -readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitField<T[Property]> : unknown;
979
922
  };
980
923
 
981
- // @public
982
- type ObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
983
- -readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitFieldUnsafe<T[Property]> : unknown;
984
- };
985
-
986
924
  // @alpha @sealed
987
925
  export interface ObjectNodeSchema<out TName extends string = string, in out T extends RestrictiveStringRecord<ImplicitFieldSchema> = RestrictiveStringRecord<ImplicitFieldSchema>, ImplicitlyConstructable extends boolean = boolean, out TCustomMetadata = unknown> extends TreeNodeSchemaClass<TName, NodeKind.Object, TreeObjectNode<T, TName>, InsertableObjectFromSchemaRecord<T>, ImplicitlyConstructable, T, never, TCustomMetadata>, SimpleObjectNodeSchema<TCustomMetadata> {
988
926
  readonly fields: ReadonlyMap<string, FieldSchemaAlpha & SimpleObjectFieldSchema>;
@@ -999,33 +937,17 @@ export type Off = () => void;
999
937
  // @alpha
1000
938
  export function onAssertionFailure(handler: (error: Error) => void): () => void;
1001
939
 
1002
- // @alpha
940
+ // @alpha @system
1003
941
  export type PopUnion<Union, AsOverloadedFunction = UnionToIntersection<Union extends unknown ? (f: Union) => void : never>> = AsOverloadedFunction extends (a: infer First) => void ? First : never;
1004
942
 
1005
- // @alpha
943
+ // @alpha @system
1006
944
  export type ReadableField<TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema> = TreeFieldFromImplicitField<ReadSchema<TSchema>>;
1007
945
 
1008
- // @public @sealed
946
+ // @public @sealed @system
1009
947
  export interface ReadonlyArrayNode<out T = TreeNode | TreeLeafValue> extends ReadonlyArray<T>, Awaited<TreeNode & WithType<string, NodeKind.Array>> {
1010
948
  }
1011
949
 
1012
- // @public @sealed
1013
- interface ReadonlyMapInlined<K, T extends ImplicitAllowedTypesUnsafe> {
1014
- [Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
1015
- entries(): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
1016
- // (undocumented)
1017
- forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypesUnsafe<T>, key: K, map: ReadonlyMap<K, TreeNodeFromImplicitAllowedTypesUnsafe<T>>) => void, thisArg?: any): void;
1018
- // (undocumented)
1019
- get(key: K): TreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined;
1020
- // (undocumented)
1021
- has(key: K): boolean;
1022
- keys(): IterableIterator<K>;
1023
- // (undocumented)
1024
- readonly size: number;
1025
- values(): IterableIterator<TreeNodeFromImplicitAllowedTypesUnsafe<T>>;
1026
- }
1027
-
1028
- // @alpha
950
+ // @alpha @system
1029
951
  export type ReadSchema<TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema> = [
1030
952
  TSchema
1031
953
  ] extends [ImplicitFieldSchema] ? TSchema : ImplicitFieldSchema;
@@ -1049,7 +971,7 @@ export type RestrictiveReadonlyRecord<K extends symbol | string, T> = {
1049
971
  readonly [P in symbol | string]: P extends K ? T : never;
1050
972
  };
1051
973
 
1052
- // @public
974
+ // @public @system
1053
975
  export type RestrictiveStringRecord<T> = {
1054
976
  readonly [P in string]: T;
1055
977
  } & {
@@ -1120,8 +1042,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
1120
1042
  scope: TScope);
1121
1043
  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>;
1122
1044
  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>;
1123
- arrayRecursive<const Name extends TName, const T extends ImplicitAllowedTypesUnsafe>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
1124
- [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
1045
+ arrayRecursive<const Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, System_Unsafe.TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array, unknown>, {
1046
+ [Symbol.iterator](): Iterator<System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
1125
1047
  }, false, T, undefined>;
1126
1048
  readonly boolean: LeafSchema<"boolean", boolean>;
1127
1049
  static readonly boolean: LeafSchema<"boolean", boolean>;
@@ -1132,28 +1054,28 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
1132
1054
  static readonly leaves: readonly [LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>];
1133
1055
  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>;
1134
1056
  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>;
1135
- mapRecursive<Name extends TName, const T extends ImplicitAllowedTypesUnsafe>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map, unknown>, {
1057
+ mapRecursive<Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, System_Unsafe.TreeMapNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map, unknown>, {
1136
1058
  [Symbol.iterator](): Iterator<[
1137
1059
  string,
1138
- InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
1060
+ System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
1139
1061
  ]>;
1140
1062
  } | {
1141
- readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
1063
+ readonly [x: string]: System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
1142
1064
  }, false, T, undefined>;
1143
1065
  readonly null: LeafSchema<"null", null>;
1144
1066
  static readonly null: LeafSchema<"null", null>;
1145
1067
  readonly number: LeafSchema<"number", number>;
1146
1068
  static readonly number: LeafSchema<"number", number>;
1147
1069
  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>;
1148
- objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>>(name: Name, t: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecordUnsafe<T>, false, T>;
1070
+ objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>>(name: Name, t: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T>;
1149
1071
  readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
1150
1072
  static readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
1151
- readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
1152
- static readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
1073
+ readonly optionalRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => System_Unsafe.FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
1074
+ static readonly optionalRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => System_Unsafe.FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
1153
1075
  readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
1154
1076
  static readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
1155
- readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
1156
- static readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
1077
+ readonly requiredRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => System_Unsafe.FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
1078
+ static readonly requiredRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => System_Unsafe.FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
1157
1079
  readonly scope: TScope;
1158
1080
  readonly string: LeafSchema<"string", string>;
1159
1081
  static readonly string: LeafSchema<"string", string>;
@@ -1162,17 +1084,17 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
1162
1084
  // @alpha
1163
1085
  export class SchemaFactoryAlpha<out TScope extends string | undefined = string | undefined, TName extends number | string = string> extends SchemaFactory<TScope, TName> {
1164
1086
  arrayAlpha<const Name extends TName, const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): ArrayNodeCustomizableSchema<ScopedSchemaName<TScope, Name>, T, true, TCustomMetadata>;
1165
- arrayRecursive<const Name extends TName, const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): ArrayNodeCustomizableSchemaUnsafe<ScopedSchemaName<TScope, Name>, T, TCustomMetadata>;
1087
+ arrayRecursive<const Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): ArrayNodeCustomizableSchemaUnsafe<ScopedSchemaName<TScope, Name>, T, TCustomMetadata>;
1166
1088
  static readonly identifier: <const TCustomMetadata = unknown>(props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaAlpha_2<FieldKind_2.Identifier, LeafSchema_2<"string", string> & SimpleLeafNodeSchema_2, TCustomMetadata>;
1167
1089
  static readonly leaves: readonly [LeafSchema_2<"string", string> & SimpleLeafNodeSchema_2, LeafSchema_2<"number", number> & SimpleLeafNodeSchema_2, LeafSchema_2<"boolean", boolean> & SimpleLeafNodeSchema_2, LeafSchema_2<"null", null> & SimpleLeafNodeSchema_2, LeafSchema_2<"handle", IFluidHandle_2<unknown>> & SimpleLeafNodeSchema_2];
1168
1090
  mapAlpha<Name extends TName, const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): MapNodeCustomizableSchema<ScopedSchemaName<TScope, Name>, T, true, TCustomMetadata>;
1169
- mapRecursive<Name extends TName, const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): MapNodeCustomizableSchemaUnsafe<ScopedSchemaName<TScope, Name>, T, TCustomMetadata>;
1091
+ mapRecursive<Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): MapNodeCustomizableSchemaUnsafe<ScopedSchemaName<TScope, Name>, T, TCustomMetadata>;
1170
1092
  object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: SchemaFactoryObjectOptions<TCustomMetadata>): ObjectNodeSchema<ScopedSchemaName<TScope, Name>, T, true, TCustomMetadata> & {
1171
1093
  readonly createFromInsertable: unknown;
1172
1094
  };
1173
- objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: SchemaFactoryObjectOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecordUnsafe<T>, false, T, never, TCustomMetadata> & SimpleObjectNodeSchema<TCustomMetadata> & Pick<ObjectNodeSchema, "fields">;
1095
+ objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: SchemaFactoryObjectOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T, never, TCustomMetadata> & SimpleObjectNodeSchema<TCustomMetadata> & Pick<ObjectNodeSchema, "fields">;
1174
1096
  static readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaAlpha_2<FieldKind_2.Optional, T, TCustomMetadata>;
1175
- static readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaAlphaUnsafe_2<FieldKind_2.Optional, T, TCustomMetadata>;
1097
+ static readonly optionalRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaAlphaUnsafe_2<FieldKind_2.Optional, T, TCustomMetadata>;
1176
1098
  static readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaAlpha_2<FieldKind_2.Required, T, TCustomMetadata>;
1177
1099
  scopedFactory<const T extends TName, TNameInner extends number | string = string>(name: T): SchemaFactoryAlpha<ScopedSchemaName<TScope, T>, TNameInner>;
1178
1100
  }
@@ -1182,7 +1104,7 @@ export interface SchemaFactoryObjectOptions<TCustomMetadata = unknown> extends N
1182
1104
  allowUnknownOptionalFields?: boolean;
1183
1105
  }
1184
1106
 
1185
- // @public @sealed
1107
+ // @public @sealed @system
1186
1108
  export interface SchemaStatics {
1187
1109
  readonly boolean: LeafSchema<"boolean", boolean>;
1188
1110
  readonly handle: LeafSchema<"handle", IFluidHandle>;
@@ -1196,9 +1118,9 @@ export interface SchemaStatics {
1196
1118
  readonly null: LeafSchema<"null", null>;
1197
1119
  readonly number: LeafSchema<"number", number>;
1198
1120
  readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
1199
- readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
1121
+ readonly optionalRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => System_Unsafe.FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
1200
1122
  readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
1201
- readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
1123
+ readonly requiredRecursive: <const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => System_Unsafe.FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
1202
1124
  readonly string: LeafSchema<"string", string>;
1203
1125
  }
1204
1126
 
@@ -1207,7 +1129,7 @@ export interface SchemaValidationFunction<Schema extends TSchema> {
1207
1129
  check(data: unknown): data is Static<Schema>;
1208
1130
  }
1209
1131
 
1210
- // @public
1132
+ // @public @system
1211
1133
  type ScopedSchemaName<TScope extends string | undefined, TName extends number | string> = TScope extends undefined ? `${TName}` : `${TScope}.${TName}`;
1212
1134
 
1213
1135
  // @public @sealed
@@ -1262,7 +1184,7 @@ export interface SimpleMapNodeSchema<out TCustomMetadata = unknown> extends Simp
1262
1184
  // @alpha
1263
1185
  export type SimpleNodeSchema = SimpleLeafNodeSchema | SimpleMapNodeSchema | SimpleArrayNodeSchema | SimpleObjectNodeSchema;
1264
1186
 
1265
- // @public @sealed
1187
+ // @public @sealed @system
1266
1188
  export interface SimpleNodeSchemaBase<out TNodeKind extends NodeKind, out TCustomMetadata = unknown> {
1267
1189
  readonly kind: TNodeKind;
1268
1190
  readonly metadata: NodeSchemaMetadata<TCustomMetadata>;
@@ -1292,6 +1214,94 @@ export function singletonSchema<TScope extends string, TName extends string | nu
1292
1214
  readonly value: TName;
1293
1215
  }, Record<string, never>, true, Record<string, never>, undefined>;
1294
1216
 
1217
+ // @public @system
1218
+ export namespace System_Unsafe {
1219
+ // @system
1220
+ export type AllowedTypesUnsafe = readonly LazyItem<TreeNodeSchemaUnsafe>[];
1221
+ // @sealed @system
1222
+ export type FieldHasDefaultUnsafe<T extends ImplicitFieldSchemaUnsafe> = T extends FieldSchemaUnsafe<FieldKind.Optional | FieldKind.Identifier, ImplicitAllowedTypesUnsafe> ? true : false;
1223
+ // @sealed @system
1224
+ export interface FieldSchemaUnsafe<out Kind extends FieldKind, out Types extends ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchema<Kind, any, TCustomMetadata> {
1225
+ readonly allowedTypes: Types;
1226
+ readonly allowedTypeSet: ReadonlySet<TreeNodeSchema>;
1227
+ readonly kind: Kind;
1228
+ }
1229
+ // @system
1230
+ export type ImplicitAllowedTypesUnsafe = TreeNodeSchemaUnsafe | readonly LazyItem<Unenforced<TreeNodeSchema>>[];
1231
+ // @system
1232
+ export type ImplicitFieldSchemaUnsafe = FieldSchemaUnsafe<FieldKind, ImplicitAllowedTypesUnsafe> | ImplicitAllowedTypesUnsafe;
1233
+ // @system
1234
+ export type InsertableObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
1235
+ readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
1236
+ } & {
1237
+ readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
1238
+ };
1239
+ // @system
1240
+ export type InsertableTreeFieldFromImplicitFieldUnsafe<TSchemaInput extends ImplicitFieldSchemaUnsafe, TSchema = UnionToIntersection<TSchemaInput>> = [TSchema] extends [FieldSchemaUnsafe<infer Kind, infer Types>] ? ApplyKindInput<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, true> : [TSchema] extends [ImplicitAllowedTypes] ? InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : never;
1241
+ // @system
1242
+ export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = [
1243
+ TList
1244
+ ] extends [
1245
+ readonly [
1246
+ LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
1247
+ ...infer Rest extends AllowedTypesUnsafe
1248
+ ]
1249
+ ] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
1250
+ // @system
1251
+ export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
1252
+ // @system
1253
+ export type InsertableTypedNodeUnsafe<TSchema extends TreeNodeSchemaUnsafe, T = UnionToIntersection<TSchema>> = (T extends TreeNodeSchemaUnsafe<string, NodeKind, TreeNode | TreeLeafValue, never, true> ? NodeBuilderDataUnsafe<T> : never) | (T extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<T> : never);
1254
+ // @system
1255
+ export type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
1256
+ // @system
1257
+ export type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
1258
+ // @system
1259
+ export type ObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
1260
+ -readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitFieldUnsafe<T[Property]> : unknown;
1261
+ };
1262
+ // @sealed @system
1263
+ export interface ReadonlyMapInlined<K, T extends ImplicitAllowedTypesUnsafe> {
1264
+ [Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
1265
+ entries(): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
1266
+ // (undocumented)
1267
+ forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypesUnsafe<T>, key: K, map: ReadonlyMap<K, TreeNodeFromImplicitAllowedTypesUnsafe<T>>) => void, thisArg?: any): void;
1268
+ // (undocumented)
1269
+ get(key: K): TreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined;
1270
+ // (undocumented)
1271
+ has(key: K): boolean;
1272
+ keys(): IterableIterator<K>;
1273
+ // (undocumented)
1274
+ readonly size: number;
1275
+ values(): IterableIterator<TreeNodeFromImplicitAllowedTypesUnsafe<T>>;
1276
+ }
1277
+ // @sealed @system
1278
+ export interface TreeArrayNodeUnsafe<TAllowedTypes extends ImplicitAllowedTypesUnsafe> extends TreeArrayNode<TAllowedTypes, TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
1279
+ }
1280
+ // @system
1281
+ export type TreeFieldFromImplicitFieldUnsafe<TSchema extends ImplicitFieldSchemaUnsafe> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypesUnsafe ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
1282
+ // @sealed @system
1283
+ export interface TreeMapNodeUnsafe<T extends ImplicitAllowedTypesUnsafe> extends ReadonlyMapInlined<string, T>, TreeNode {
1284
+ delete(key: string): void;
1285
+ set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
1286
+ }
1287
+ // @system
1288
+ export type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
1289
+ // @system
1290
+ export interface TreeNodeSchemaClassUnsafe<out Name extends string, out Kind extends NodeKind, out TNode extends Unenforced<TreeNode>, in TInsertable, out ImplicitlyConstructable extends boolean, out Info, out TCustomMetadata = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info, never, TCustomMetadata> {
1291
+ // @sealed
1292
+ new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
1293
+ }
1294
+ // @system
1295
+ export 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> {
1296
+ // (undocumented)
1297
+ create(data: TInsertable): TNode;
1298
+ }
1299
+ // @system
1300
+ export 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>;
1301
+ // @system
1302
+ export type TreeObjectNodeUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object, T>;
1303
+ }
1304
+
1295
1305
  // @public
1296
1306
  export interface Tagged<V, T extends string = string> {
1297
1307
  // (undocumented)
@@ -1359,14 +1369,14 @@ export const TreeAlpha: {
1359
1369
  } & ICodecOptions): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
1360
1370
  };
1361
1371
 
1362
- // @public @sealed
1372
+ // @public @sealed @system
1363
1373
  interface TreeApi extends TreeNodeApi {
1364
1374
  contains(node: TreeNode, other: TreeNode): boolean;
1365
1375
  readonly runTransaction: RunTransaction;
1366
1376
  }
1367
1377
 
1368
1378
  // @public @sealed
1369
- export interface TreeArrayNode<TAllowedTypes extends ImplicitAllowedTypesUnsafe = ImplicitAllowedTypes, out T = [TAllowedTypes] extends [ImplicitAllowedTypes] ? TreeNodeFromImplicitAllowedTypes<TAllowedTypes> : TreeNodeFromImplicitAllowedTypes<ImplicitAllowedTypes>, in TNew = [TAllowedTypes] extends [ImplicitAllowedTypes] ? InsertableTreeNodeFromImplicitAllowedTypes<TAllowedTypes> : InsertableTreeNodeFromImplicitAllowedTypes<ImplicitAllowedTypes>, in TMoveFrom = ReadonlyArrayNode> extends ReadonlyArrayNode<T> {
1379
+ export interface TreeArrayNode<TAllowedTypes extends System_Unsafe.ImplicitAllowedTypesUnsafe = ImplicitAllowedTypes, out T = [TAllowedTypes] extends [ImplicitAllowedTypes] ? TreeNodeFromImplicitAllowedTypes<TAllowedTypes> : TreeNodeFromImplicitAllowedTypes<ImplicitAllowedTypes>, in TNew = [TAllowedTypes] extends [ImplicitAllowedTypes] ? InsertableTreeNodeFromImplicitAllowedTypes<TAllowedTypes> : InsertableTreeNodeFromImplicitAllowedTypes<ImplicitAllowedTypes>, in TMoveFrom = ReadonlyArrayNode> extends ReadonlyArrayNode<T> {
1370
1380
  insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
1371
1381
  insertAtEnd(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
1372
1382
  insertAtStart(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
@@ -1392,10 +1402,6 @@ export const TreeArrayNode: {
1392
1402
  readonly spread: <T>(content: Iterable<T>) => IterableTreeArrayContent<T>;
1393
1403
  };
1394
1404
 
1395
- // @public @sealed
1396
- export interface TreeArrayNodeUnsafe<TAllowedTypes extends ImplicitAllowedTypesUnsafe> extends TreeArrayNode<TAllowedTypes, TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
1397
- }
1398
-
1399
1405
  // @beta @sealed
1400
1406
  export const TreeBeta: {
1401
1407
  on<K extends keyof TreeChangeEventsBeta<TNode>, TNode extends TreeNode>(node: TNode, eventName: K, listener: NoInfer<TreeChangeEventsBeta<TNode>[K]>): () => void;
@@ -1448,9 +1454,6 @@ export interface TreeEncodingOptions {
1448
1454
  // @public
1449
1455
  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;
1450
1456
 
1451
- // @public
1452
- type TreeFieldFromImplicitFieldUnsafe<TSchema extends ImplicitFieldSchemaUnsafe> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypesUnsafe ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
1453
-
1454
1457
  // @alpha
1455
1458
  export interface TreeIndex<TKey extends TreeIndexKey, TValue> extends ReadonlyMap<TKey, TValue> {
1456
1459
  dispose(): void;
@@ -1475,12 +1478,6 @@ export interface TreeMapNode<T extends ImplicitAllowedTypes = ImplicitAllowedTyp
1475
1478
  values(): IterableIterator<TreeNodeFromImplicitAllowedTypes<T>>;
1476
1479
  }
1477
1480
 
1478
- // @public @sealed
1479
- export interface TreeMapNodeUnsafe<T extends ImplicitAllowedTypesUnsafe> extends ReadonlyMapInlined<string, T>, TreeNode {
1480
- delete(key: string): void;
1481
- set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
1482
- }
1483
-
1484
1481
  // @public @sealed
1485
1482
  export abstract class TreeNode implements WithType {
1486
1483
  static [Symbol.hasInstance](value: unknown): value is TreeNode;
@@ -1505,9 +1502,6 @@ export interface TreeNodeApi {
1505
1502
  // @public
1506
1503
  export type TreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
1507
1504
 
1508
- // @public
1509
- type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
1510
-
1511
1505
  // @public @sealed
1512
1506
  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, TCustomMetadata = unknown> = (TNode extends TreeNode ? TreeNodeSchemaClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info, never, TCustomMetadata> : never) | TreeNodeSchemaNonClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info, never, TCustomMetadata>;
1513
1507
 
@@ -1518,44 +1512,27 @@ export type TreeNodeSchemaClass<Name extends string = string, Kind extends NodeK
1518
1512
  new (data: TInsertable | InternalTreeNode | TConstructorExtra): Unhydrated<TNode>;
1519
1513
  });
1520
1514
 
1521
- // @public
1522
- export interface TreeNodeSchemaClassUnsafe<out Name extends string, out Kind extends NodeKind, out TNode extends Unenforced<TreeNode>, in TInsertable, out ImplicitlyConstructable extends boolean, out Info, out TCustomMetadata = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info, never, TCustomMetadata> {
1523
- // @sealed
1524
- new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
1525
- }
1526
-
1527
1515
  // @public @sealed
1528
1516
  export interface TreeNodeSchemaCore<out Name extends string, out Kind extends NodeKind, out ImplicitlyConstructable extends boolean, out Info = unknown, out TInsertable = never, out TCustomMetadata = unknown> extends SimpleNodeSchemaBase<Kind, TCustomMetadata> {
1517
+ // @system
1529
1518
  readonly childTypes: ReadonlySet<TreeNodeSchema>;
1530
- // @sealed
1519
+ // @sealed @system
1531
1520
  createFromInsertable(data: TInsertable): Unhydrated<TreeNode | TreeLeafValue>;
1532
1521
  readonly identifier: Name;
1533
1522
  readonly implicitlyConstructable: ImplicitlyConstructable;
1534
1523
  readonly info: Info;
1535
1524
  }
1536
1525
 
1537
- // @public @sealed
1526
+ // @public @sealed @system
1538
1527
  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, TCustomMetadata = unknown> = TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info, TInsertable, TCustomMetadata> & (undefined extends TConstructorExtra ? {
1539
1528
  create(data?: TInsertable | TConstructorExtra): TNode;
1540
1529
  } : {
1541
1530
  create(data: TInsertable | TConstructorExtra): TNode;
1542
1531
  });
1543
1532
 
1544
- // @public
1545
- 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> {
1546
- // (undocumented)
1547
- create(data: TInsertable): TNode;
1548
- }
1549
-
1550
- // @public
1551
- 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>;
1552
-
1553
1533
  // @public
1554
1534
  export type TreeObjectNode<T extends RestrictiveStringRecord<ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
1555
1535
 
1556
- // @public
1557
- export type TreeObjectNodeUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object, T>;
1558
-
1559
1536
  // @alpha @sealed (undocumented)
1560
1537
  export interface TreeSchema extends SimpleTreeSchema {
1561
1538
  readonly definitions: ReadonlyMap<string, SimpleNodeSchema & TreeNodeSchema>;
@@ -1628,10 +1605,10 @@ export interface TreeViewEvents {
1628
1605
  // @alpha
1629
1606
  export const typeboxValidator: JsonValidator;
1630
1607
 
1631
- // @public @deprecated
1608
+ // @public @deprecated @system
1632
1609
  const typeNameSymbol: unique symbol;
1633
1610
 
1634
- // @public
1611
+ // @public @system
1635
1612
  export const typeSchemaSymbol: unique symbol;
1636
1613
 
1637
1614
  // @public
@@ -1640,7 +1617,7 @@ export type Unenforced<_DesiredExtendsConstraint> = unknown;
1640
1617
  // @public
1641
1618
  export type Unhydrated<T> = T;
1642
1619
 
1643
- // @public
1620
+ // @public @system
1644
1621
  export type UnionToIntersection<T> = (T extends T ? (k: T) => unknown : never) extends (k: infer U) => unknown ? U : never;
1645
1622
 
1646
1623
  // @alpha
@@ -1688,7 +1665,7 @@ export interface VerboseTreeNode<THandle = IFluidHandle> {
1688
1665
  type: string;
1689
1666
  }
1690
1667
 
1691
- // @public @sealed
1668
+ // @public @sealed @system
1692
1669
  export interface ViewableTree {
1693
1670
  viewWith<TRoot extends ImplicitFieldSchema>(config: TreeViewConfiguration<TRoot>): TreeView<TRoot>;
1694
1671
  }