fluid-framework 2.33.0-333010 → 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.
@@ -4,20 +4,17 @@
4
4
 
5
5
  ```ts
6
6
 
7
- // @public
7
+ // @public @system
8
8
  export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
9
9
 
10
- // @public
11
- type AllowedTypesUnsafe = readonly LazyItem<TreeNodeSchemaUnsafe>[];
12
-
13
- // @public
10
+ // @public @system
14
11
  type ApplyKind<T, Kind extends FieldKind> = {
15
12
  [FieldKind.Required]: T;
16
13
  [FieldKind.Optional]: T | undefined;
17
14
  [FieldKind.Identifier]: T;
18
15
  }[Kind];
19
16
 
20
- // @public
17
+ // @public @system
21
18
  type ApplyKindInput<T, Kind extends FieldKind, DefaultsAreOptional extends boolean> = [
22
19
  Kind
23
20
  ] extends [FieldKind.Required] ? T : [Kind] extends [FieldKind.Optional] ? T | undefined : [Kind] extends [FieldKind.Identifier] ? DefaultsAreOptional extends true ? T | undefined : T : never;
@@ -70,7 +67,7 @@ export interface ContainerSchema {
70
67
  readonly initialObjects: Record<string, SharedObjectKind>;
71
68
  }
72
69
 
73
- // @public @sealed
70
+ // @public @sealed @system
74
71
  interface DefaultProvider extends ErasedType<"@fluidframework/tree.FieldProvider"> {
75
72
  }
76
73
 
@@ -80,15 +77,12 @@ export abstract class ErasedType<out Name = unknown> {
80
77
  protected abstract brand(dummy: never): Name;
81
78
  }
82
79
 
83
- // @public
80
+ // @public @system
84
81
  type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result ? Result : Item;
85
82
 
86
- // @public
83
+ // @public @system
87
84
  type FieldHasDefault<T extends ImplicitFieldSchema> = T extends FieldSchema<FieldKind.Optional | FieldKind.Identifier> ? true : false;
88
85
 
89
- // @public @sealed
90
- type FieldHasDefaultUnsafe<T extends ImplicitFieldSchemaUnsafe> = T extends FieldSchemaUnsafe<FieldKind.Optional | FieldKind.Identifier, ImplicitAllowedTypesUnsafe> ? true : false;
91
-
92
86
  // @public
93
87
  export enum FieldKind {
94
88
  Identifier = 2,
@@ -124,22 +118,15 @@ export interface FieldSchemaMetadata<TCustomMetadata = unknown> {
124
118
  readonly description?: string | undefined;
125
119
  }
126
120
 
127
- // @public @sealed
128
- export interface FieldSchemaUnsafe<out Kind extends FieldKind, out Types extends ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchema<Kind, any, TCustomMetadata> {
129
- readonly allowedTypes: Types;
130
- readonly allowedTypeSet: ReadonlySet<TreeNodeSchema>;
131
- readonly kind: Kind;
132
- }
133
-
134
- // @public
121
+ // @public @system
135
122
  type FlattenKeys<T> = [{
136
123
  [Property in keyof T]: T[Property];
137
124
  }][_InlineTrick];
138
125
 
139
- // @public
126
+ // @public @system
140
127
  type FlexList<Item = unknown> = readonly LazyItem<Item>[];
141
128
 
142
- // @public
129
+ // @public @system
143
130
  type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;
144
131
 
145
132
  // @public
@@ -406,27 +393,21 @@ export interface IMember {
406
393
  // @public
407
394
  export type ImplicitAllowedTypes = AllowedTypes | TreeNodeSchema;
408
395
 
409
- // @public
410
- export type ImplicitAllowedTypesUnsafe = TreeNodeSchemaUnsafe | readonly LazyItem<Unenforced<TreeNodeSchema>>[];
411
-
412
396
  // @public
413
397
  export type ImplicitFieldSchema = FieldSchema | ImplicitAllowedTypes;
414
398
 
415
- // @public
416
- export type ImplicitFieldSchemaUnsafe = FieldSchemaUnsafe<FieldKind, ImplicitAllowedTypesUnsafe> | ImplicitAllowedTypesUnsafe;
417
-
418
399
  // @public
419
400
  export type InitialObjects<T extends ContainerSchema> = {
420
401
  [K in keyof T["initialObjects"]]: T["initialObjects"][K] extends SharedObjectKind<infer TChannel> ? TChannel : never;
421
402
  };
422
403
 
423
- // @public
404
+ // @public @system
424
405
  type _InlineTrick = 0;
425
406
 
426
- // @public
407
+ // @public @system
427
408
  export type Input<T extends never> = T;
428
409
 
429
- // @public
410
+ // @public @system
430
411
  type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {
431
412
  arbitraryKey: "arbitraryValue";
432
413
  } extends T ? Record<string, never> : never : FlattenKeys<{
@@ -435,45 +416,25 @@ type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<Implicit
435
416
  readonly [Property in keyof T as FieldHasDefault<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitField<T[Property & string]>;
436
417
  }>;
437
418
 
438
- // @public
439
- export type InsertableObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
440
- readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
441
- } & {
442
- readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
443
- };
444
-
445
419
  // @public
446
420
  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;
447
421
 
448
- // @public
449
- 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;
450
-
451
- // @public
452
- export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = TList extends readonly [
422
+ // @public @system
423
+ export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = [TList] extends [
424
+ readonly [
453
425
  LazyItem<infer TSchema extends TreeNodeSchema>,
454
426
  ...infer Rest extends AllowedTypes
427
+ ]
455
428
  ] ? InsertableTypedNode<TSchema> | InsertableTreeNodeFromAllowedTypes<Rest> : never;
456
429
 
457
- // @public
458
- export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = TList extends readonly [
459
- LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
460
- ...infer Rest extends AllowedTypesUnsafe
461
- ] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
462
-
463
430
  // @public
464
431
  export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes> = [
465
432
  TSchema
466
433
  ] extends [TreeNodeSchema] ? InsertableTypedNode<TSchema> : [TSchema] extends [AllowedTypes] ? InsertableTreeNodeFromAllowedTypes<TSchema> : never;
467
434
 
468
- // @public
469
- export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
470
-
471
435
  // @public
472
436
  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);
473
437
 
474
- // @public
475
- 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);
476
-
477
438
  // @public @sealed
478
439
  export interface InternalTreeNode extends ErasedType<"@fluidframework/tree.InternalTreeNode"> {
479
440
  }
@@ -490,24 +451,6 @@ declare namespace InternalTypes {
490
451
  DefaultProvider,
491
452
  typeNameSymbol,
492
453
  InsertableObjectFromSchemaRecord,
493
- ObjectFromSchemaRecord,
494
- FieldHasDefaultUnsafe,
495
- ObjectFromSchemaRecordUnsafe,
496
- TreeObjectNodeUnsafe,
497
- TreeFieldFromImplicitFieldUnsafe,
498
- TreeNodeFromImplicitAllowedTypesUnsafe,
499
- InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
500
- TreeArrayNodeUnsafe,
501
- TreeMapNodeUnsafe,
502
- InsertableObjectFromSchemaRecordUnsafe,
503
- InsertableTreeFieldFromImplicitFieldUnsafe,
504
- InsertableTypedNodeUnsafe,
505
- NodeBuilderDataUnsafe,
506
- NodeFromSchemaUnsafe,
507
- ReadonlyMapInlined,
508
- TreeNodeSchemaUnsafe,
509
- AllowedTypesUnsafe,
510
- TreeNodeSchemaNonClassUnsafe,
511
454
  FlexList,
512
455
  FlexListToUnion,
513
456
  ExtractItemType,
@@ -572,7 +515,7 @@ export interface ITreeViewConfiguration<TSchema extends ImplicitFieldSchema = Im
572
515
  // @public
573
516
  export type LazyItem<Item = unknown> = Item | (() => Item);
574
517
 
575
- // @public @sealed
518
+ // @public @sealed @system
576
519
  export interface LeafSchema<Name extends string, T extends TreeLeafValue> extends TreeNodeSchemaNonClass<`com.fluidframework.leaf.${Name}`, NodeKind.Leaf, T, T, true> {
577
520
  }
578
521
 
@@ -591,7 +534,7 @@ export type Listeners<T extends object> = {
591
534
  export interface MakeNominal {
592
535
  }
593
536
 
594
- // @public
537
+ // @public @system
595
538
  export type MapNodeInsertableData<T extends ImplicitAllowedTypes> = Iterable<readonly [string, InsertableTreeNodeFromImplicitAllowedTypes<T>]> | RestrictiveStringRecord<InsertableTreeNodeFromImplicitAllowedTypes<T>>;
596
539
 
597
540
  // @public
@@ -602,18 +545,12 @@ export type Myself<M extends IMember = IMember> = M & {
602
545
  readonly currentConnection: string;
603
546
  };
604
547
 
605
- // @public
548
+ // @public @system
606
549
  type NodeBuilderData<T extends TreeNodeSchemaCore<string, NodeKind, boolean>> = T extends TreeNodeSchemaCore<string, NodeKind, boolean, unknown, infer TBuild> ? TBuild : never;
607
550
 
608
- // @public
609
- type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
610
-
611
551
  // @public
612
552
  export type NodeFromSchema<T extends TreeNodeSchema> = T extends TreeNodeSchemaClass<string, NodeKind, infer TNode> ? TNode : T extends TreeNodeSchemaNonClass<string, NodeKind, infer TNode> ? TNode : never;
613
553
 
614
- // @public
615
- type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
616
-
617
554
  // @public
618
555
  export interface NodeInDocumentConstraint {
619
556
  // (undocumented)
@@ -641,39 +578,18 @@ export interface NodeSchemaOptions<out TCustomMetadata = unknown> {
641
578
  readonly metadata?: NodeSchemaMetadata<TCustomMetadata> | undefined;
642
579
  }
643
580
 
644
- // @public
645
- type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {} : {
581
+ // @public @system
582
+ export type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {} : {
646
583
  -readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitField<T[Property]> : unknown;
647
584
  };
648
585
 
649
- // @public
650
- type ObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
651
- -readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitFieldUnsafe<T[Property]> : unknown;
652
- };
653
-
654
586
  // @public
655
587
  export type Off = () => void;
656
588
 
657
- // @public @sealed
589
+ // @public @sealed @system
658
590
  export interface ReadonlyArrayNode<out T = TreeNode | TreeLeafValue> extends ReadonlyArray<T>, Awaited<TreeNode & WithType<string, NodeKind.Array>> {
659
591
  }
660
592
 
661
- // @public @sealed
662
- interface ReadonlyMapInlined<K, T extends ImplicitAllowedTypesUnsafe> {
663
- [Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
664
- entries(): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
665
- // (undocumented)
666
- forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypesUnsafe<T>, key: K, map: ReadonlyMap<K, TreeNodeFromImplicitAllowedTypesUnsafe<T>>) => void, thisArg?: any): void;
667
- // (undocumented)
668
- get(key: K): TreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined;
669
- // (undocumented)
670
- has(key: K): boolean;
671
- keys(): IterableIterator<K>;
672
- // (undocumented)
673
- readonly size: number;
674
- values(): IterableIterator<TreeNodeFromImplicitAllowedTypesUnsafe<T>>;
675
- }
676
-
677
593
  // @public
678
594
  export type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[] ? {
679
595
  [K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K];
@@ -684,7 +600,7 @@ export type RestrictiveReadonlyRecord<K extends symbol | string, T> = {
684
600
  readonly [P in symbol | string]: P extends K ? T : never;
685
601
  };
686
602
 
687
- // @public
603
+ // @public @system
688
604
  export type RestrictiveStringRecord<T> = {
689
605
  readonly [P in string]: T;
690
606
  } & {
@@ -742,8 +658,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
742
658
  scope: TScope);
743
659
  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>;
744
660
  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>;
745
- 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>, {
746
- [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
661
+ 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>, {
662
+ [Symbol.iterator](): Iterator<System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
747
663
  }, false, T, undefined>;
748
664
  readonly boolean: LeafSchema<"boolean", boolean>;
749
665
  static readonly boolean: LeafSchema<"boolean", boolean>;
@@ -754,34 +670,34 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
754
670
  static readonly leaves: readonly [LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>];
755
671
  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>;
756
672
  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>;
757
- 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>, {
673
+ 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>, {
758
674
  [Symbol.iterator](): Iterator<[
759
675
  string,
760
- InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
676
+ System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
761
677
  ]>;
762
678
  } | {
763
- readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
679
+ readonly [x: string]: System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
764
680
  }, false, T, undefined>;
765
681
  readonly null: LeafSchema<"null", null>;
766
682
  static readonly null: LeafSchema<"null", null>;
767
683
  readonly number: LeafSchema<"number", number>;
768
684
  static readonly number: LeafSchema<"number", number>;
769
685
  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>;
770
- 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>;
686
+ 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>;
771
687
  readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
772
688
  static readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
773
- readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
774
- static readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
689
+ 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>;
690
+ 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>;
775
691
  readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
776
692
  static readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
777
- readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
778
- static readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
693
+ 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>;
694
+ 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>;
779
695
  readonly scope: TScope;
780
696
  readonly string: LeafSchema<"string", string>;
781
697
  static readonly string: LeafSchema<"string", string>;
782
698
  }
783
699
 
784
- // @public @sealed
700
+ // @public @sealed @system
785
701
  export interface SchemaStatics {
786
702
  readonly boolean: LeafSchema<"boolean", boolean>;
787
703
  readonly handle: LeafSchema<"handle", IFluidHandle>;
@@ -795,13 +711,13 @@ export interface SchemaStatics {
795
711
  readonly null: LeafSchema<"null", null>;
796
712
  readonly number: LeafSchema<"number", number>;
797
713
  readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
798
- readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
714
+ 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>;
799
715
  readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
800
- readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
716
+ 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>;
801
717
  readonly string: LeafSchema<"string", string>;
802
718
  }
803
719
 
804
- // @public
720
+ // @public @system
805
721
  type ScopedSchemaName<TScope extends string | undefined, TName extends number | string> = TScope extends undefined ? `${TName}` : `${TScope}.${TName}`;
806
722
 
807
723
  // @public @sealed
@@ -812,12 +728,100 @@ export interface SharedObjectKind<out TSharedObject = unknown> extends ErasedTyp
812
728
  // @public
813
729
  export const SharedTree: SharedObjectKind<ITree>;
814
730
 
815
- // @public @sealed
731
+ // @public @sealed @system
816
732
  export interface SimpleNodeSchemaBase<out TNodeKind extends NodeKind, out TCustomMetadata = unknown> {
817
733
  readonly kind: TNodeKind;
818
734
  readonly metadata: NodeSchemaMetadata<TCustomMetadata>;
819
735
  }
820
736
 
737
+ // @public @system
738
+ export namespace System_Unsafe {
739
+ // @system
740
+ export type AllowedTypesUnsafe = readonly LazyItem<TreeNodeSchemaUnsafe>[];
741
+ // @sealed @system
742
+ export type FieldHasDefaultUnsafe<T extends ImplicitFieldSchemaUnsafe> = T extends FieldSchemaUnsafe<FieldKind.Optional | FieldKind.Identifier, ImplicitAllowedTypesUnsafe> ? true : false;
743
+ // @sealed @system
744
+ export interface FieldSchemaUnsafe<out Kind extends FieldKind, out Types extends ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchema<Kind, any, TCustomMetadata> {
745
+ readonly allowedTypes: Types;
746
+ readonly allowedTypeSet: ReadonlySet<TreeNodeSchema>;
747
+ readonly kind: Kind;
748
+ }
749
+ // @system
750
+ export type ImplicitAllowedTypesUnsafe = TreeNodeSchemaUnsafe | readonly LazyItem<Unenforced<TreeNodeSchema>>[];
751
+ // @system
752
+ export type ImplicitFieldSchemaUnsafe = FieldSchemaUnsafe<FieldKind, ImplicitAllowedTypesUnsafe> | ImplicitAllowedTypesUnsafe;
753
+ // @system
754
+ export type InsertableObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
755
+ readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
756
+ } & {
757
+ readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
758
+ };
759
+ // @system
760
+ 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;
761
+ // @system
762
+ export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = [
763
+ TList
764
+ ] extends [
765
+ readonly [
766
+ LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
767
+ ...infer Rest extends AllowedTypesUnsafe
768
+ ]
769
+ ] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
770
+ // @system
771
+ export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
772
+ // @system
773
+ 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);
774
+ // @system
775
+ export type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
776
+ // @system
777
+ export type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
778
+ // @system
779
+ export type ObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
780
+ -readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitFieldUnsafe<T[Property]> : unknown;
781
+ };
782
+ // @sealed @system
783
+ export interface ReadonlyMapInlined<K, T extends ImplicitAllowedTypesUnsafe> {
784
+ [Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
785
+ entries(): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
786
+ // (undocumented)
787
+ forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypesUnsafe<T>, key: K, map: ReadonlyMap<K, TreeNodeFromImplicitAllowedTypesUnsafe<T>>) => void, thisArg?: any): void;
788
+ // (undocumented)
789
+ get(key: K): TreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined;
790
+ // (undocumented)
791
+ has(key: K): boolean;
792
+ keys(): IterableIterator<K>;
793
+ // (undocumented)
794
+ readonly size: number;
795
+ values(): IterableIterator<TreeNodeFromImplicitAllowedTypesUnsafe<T>>;
796
+ }
797
+ // @sealed @system
798
+ export interface TreeArrayNodeUnsafe<TAllowedTypes extends ImplicitAllowedTypesUnsafe> extends TreeArrayNode<TAllowedTypes, TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
799
+ }
800
+ // @system
801
+ export type TreeFieldFromImplicitFieldUnsafe<TSchema extends ImplicitFieldSchemaUnsafe> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypesUnsafe ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
802
+ // @sealed @system
803
+ export interface TreeMapNodeUnsafe<T extends ImplicitAllowedTypesUnsafe> extends ReadonlyMapInlined<string, T>, TreeNode {
804
+ delete(key: string): void;
805
+ set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
806
+ }
807
+ // @system
808
+ export type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
809
+ // @system
810
+ 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> {
811
+ // @sealed
812
+ new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
813
+ }
814
+ // @system
815
+ 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> {
816
+ // (undocumented)
817
+ create(data: TInsertable): TNode;
818
+ }
819
+ // @system
820
+ 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>;
821
+ // @system
822
+ export type TreeObjectNodeUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object, T>;
823
+ }
824
+
821
825
  // @public
822
826
  export interface Tagged<V, T extends string = string> {
823
827
  // (undocumented)
@@ -838,14 +842,14 @@ export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (
838
842
  // @public
839
843
  export const Tree: TreeApi;
840
844
 
841
- // @public @sealed
845
+ // @public @sealed @system
842
846
  interface TreeApi extends TreeNodeApi {
843
847
  contains(node: TreeNode, other: TreeNode): boolean;
844
848
  readonly runTransaction: RunTransaction;
845
849
  }
846
850
 
847
851
  // @public @sealed
848
- 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> {
852
+ 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> {
849
853
  insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
850
854
  insertAtEnd(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
851
855
  insertAtStart(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
@@ -871,10 +875,6 @@ export const TreeArrayNode: {
871
875
  readonly spread: <T>(content: Iterable<T>) => IterableTreeArrayContent<T>;
872
876
  };
873
877
 
874
- // @public @sealed
875
- export interface TreeArrayNodeUnsafe<TAllowedTypes extends ImplicitAllowedTypesUnsafe> extends TreeArrayNode<TAllowedTypes, TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
876
- }
877
-
878
878
  // @public @sealed
879
879
  export interface TreeChangeEvents {
880
880
  nodeChanged(unstable?: unknown): void;
@@ -884,9 +884,6 @@ export interface TreeChangeEvents {
884
884
  // @public
885
885
  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;
886
886
 
887
- // @public
888
- type TreeFieldFromImplicitFieldUnsafe<TSchema extends ImplicitFieldSchemaUnsafe> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypesUnsafe ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
889
-
890
887
  // @public
891
888
  export type TreeLeafValue = number | string | boolean | IFluidHandle | null;
892
889
 
@@ -900,12 +897,6 @@ export interface TreeMapNode<T extends ImplicitAllowedTypes = ImplicitAllowedTyp
900
897
  values(): IterableIterator<TreeNodeFromImplicitAllowedTypes<T>>;
901
898
  }
902
899
 
903
- // @public @sealed
904
- export interface TreeMapNodeUnsafe<T extends ImplicitAllowedTypesUnsafe> extends ReadonlyMapInlined<string, T>, TreeNode {
905
- delete(key: string): void;
906
- set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
907
- }
908
-
909
900
  // @public @sealed
910
901
  export abstract class TreeNode implements WithType {
911
902
  static [Symbol.hasInstance](value: unknown): value is TreeNode;
@@ -930,9 +921,6 @@ export interface TreeNodeApi {
930
921
  // @public
931
922
  export type TreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
932
923
 
933
- // @public
934
- type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
935
-
936
924
  // @public @sealed
937
925
  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>;
938
926
 
@@ -943,44 +931,27 @@ export type TreeNodeSchemaClass<Name extends string = string, Kind extends NodeK
943
931
  new (data: TInsertable | InternalTreeNode | TConstructorExtra): Unhydrated<TNode>;
944
932
  });
945
933
 
946
- // @public
947
- 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> {
948
- // @sealed
949
- new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
950
- }
951
-
952
934
  // @public @sealed
953
935
  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> {
936
+ // @system
954
937
  readonly childTypes: ReadonlySet<TreeNodeSchema>;
955
- // @sealed
938
+ // @sealed @system
956
939
  createFromInsertable(data: TInsertable): Unhydrated<TreeNode | TreeLeafValue>;
957
940
  readonly identifier: Name;
958
941
  readonly implicitlyConstructable: ImplicitlyConstructable;
959
942
  readonly info: Info;
960
943
  }
961
944
 
962
- // @public @sealed
945
+ // @public @sealed @system
963
946
  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 ? {
964
947
  create(data?: TInsertable | TConstructorExtra): TNode;
965
948
  } : {
966
949
  create(data: TInsertable | TConstructorExtra): TNode;
967
950
  });
968
951
 
969
- // @public
970
- 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> {
971
- // (undocumented)
972
- create(data: TInsertable): TNode;
973
- }
974
-
975
- // @public
976
- 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>;
977
-
978
952
  // @public
979
953
  export type TreeObjectNode<T extends RestrictiveStringRecord<ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
980
954
 
981
- // @public
982
- export type TreeObjectNodeUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object, T>;
983
-
984
955
  // @public
985
956
  export enum TreeStatus {
986
957
  Deleted = 2,
@@ -1017,10 +988,10 @@ export interface TreeViewEvents {
1017
988
  schemaChanged(): void;
1018
989
  }
1019
990
 
1020
- // @public @deprecated
991
+ // @public @deprecated @system
1021
992
  const typeNameSymbol: unique symbol;
1022
993
 
1023
- // @public
994
+ // @public @system
1024
995
  export const typeSchemaSymbol: unique symbol;
1025
996
 
1026
997
  // @public
@@ -1029,7 +1000,7 @@ export type Unenforced<_DesiredExtendsConstraint> = unknown;
1029
1000
  // @public
1030
1001
  export type Unhydrated<T> = T;
1031
1002
 
1032
- // @public
1003
+ // @public @system
1033
1004
  export type UnionToIntersection<T> = (T extends T ? (k: T) => unknown : never) extends (k: infer U) => unknown ? U : never;
1034
1005
 
1035
1006
  // @public
@@ -1043,7 +1014,7 @@ export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKi
1043
1014
  [NodeKind.Map]: ImplicitAllowedTypes;
1044
1015
  }[T["kind"]]>> = true;
1045
1016
 
1046
- // @public @sealed
1017
+ // @public @sealed @system
1047
1018
  export interface ViewableTree {
1048
1019
  viewWith<TRoot extends ImplicitFieldSchema>(config: TreeViewConfiguration<TRoot>): TreeView<TRoot>;
1049
1020
  }