fluid-framework 2.33.0-333010 → 2.33.1
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.
- package/CHANGELOG.md +65 -0
- package/api-report/fluid-framework.alpha.api.md +169 -192
- package/api-report/fluid-framework.beta.api.md +135 -164
- package/api-report/fluid-framework.legacy.alpha.api.md +177 -206
- package/api-report/fluid-framework.legacy.public.api.md +139 -168
- package/api-report/fluid-framework.public.api.md +135 -164
- package/dist/alpha.d.ts +3 -11
- package/dist/beta.d.ts +2 -11
- package/dist/legacy.d.ts +2 -11
- package/dist/public.d.ts +2 -11
- package/lib/alpha.d.ts +3 -11
- package/lib/beta.d.ts +2 -11
- package/lib/legacy.d.ts +2 -11
- package/lib/public.d.ts +2 -11
- package/lib/tsdoc-metadata.json +1 -1
- package/package.json +13 -13
|
@@ -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 @
|
|
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
|
|
@@ -159,7 +146,7 @@ export interface IConnection {
|
|
|
159
146
|
// @public
|
|
160
147
|
export type ICriticalContainerError = IErrorBase;
|
|
161
148
|
|
|
162
|
-
// @public @sealed
|
|
149
|
+
// @public @sealed @legacy
|
|
163
150
|
export interface IDirectory extends Map<string, any>, IEventProvider<IDirectoryEvents>, Partial<IDisposable> {
|
|
164
151
|
readonly absolutePath: string;
|
|
165
152
|
countSubDirectory?(): number;
|
|
@@ -173,7 +160,7 @@ export interface IDirectory extends Map<string, any>, IEventProvider<IDirectoryE
|
|
|
173
160
|
subdirectories(): IterableIterator<[string, IDirectory]>;
|
|
174
161
|
}
|
|
175
162
|
|
|
176
|
-
// @public @sealed
|
|
163
|
+
// @public @sealed @legacy
|
|
177
164
|
export interface IDirectoryEvents extends IEvent {
|
|
178
165
|
(event: "containedValueChanged", listener: (changed: IValueChanged, local: boolean, target: IEventThisPlaceHolder) => void): any;
|
|
179
166
|
(event: "subDirectoryCreated", listener: (path: string, local: boolean, target: IEventThisPlaceHolder) => void): any;
|
|
@@ -182,7 +169,7 @@ export interface IDirectoryEvents extends IEvent {
|
|
|
182
169
|
(event: "undisposed", listener: (target: IEventThisPlaceHolder) => void): any;
|
|
183
170
|
}
|
|
184
171
|
|
|
185
|
-
// @public @sealed
|
|
172
|
+
// @public @sealed @legacy
|
|
186
173
|
export interface IDirectoryValueChanged extends IValueChanged {
|
|
187
174
|
path: string;
|
|
188
175
|
}
|
|
@@ -434,27 +421,21 @@ export interface IMember {
|
|
|
434
421
|
// @public
|
|
435
422
|
export type ImplicitAllowedTypes = AllowedTypes | TreeNodeSchema;
|
|
436
423
|
|
|
437
|
-
// @public
|
|
438
|
-
export type ImplicitAllowedTypesUnsafe = TreeNodeSchemaUnsafe | readonly LazyItem<Unenforced<TreeNodeSchema>>[];
|
|
439
|
-
|
|
440
424
|
// @public
|
|
441
425
|
export type ImplicitFieldSchema = FieldSchema | ImplicitAllowedTypes;
|
|
442
426
|
|
|
443
|
-
// @public
|
|
444
|
-
export type ImplicitFieldSchemaUnsafe = FieldSchemaUnsafe<FieldKind, ImplicitAllowedTypesUnsafe> | ImplicitAllowedTypesUnsafe;
|
|
445
|
-
|
|
446
427
|
// @public
|
|
447
428
|
export type InitialObjects<T extends ContainerSchema> = {
|
|
448
429
|
[K in keyof T["initialObjects"]]: T["initialObjects"][K] extends SharedObjectKind<infer TChannel> ? TChannel : never;
|
|
449
430
|
};
|
|
450
431
|
|
|
451
|
-
// @public
|
|
432
|
+
// @public @system
|
|
452
433
|
type _InlineTrick = 0;
|
|
453
434
|
|
|
454
|
-
// @public
|
|
435
|
+
// @public @system
|
|
455
436
|
export type Input<T extends never> = T;
|
|
456
437
|
|
|
457
|
-
// @public
|
|
438
|
+
// @public @system
|
|
458
439
|
type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {
|
|
459
440
|
arbitraryKey: "arbitraryValue";
|
|
460
441
|
} extends T ? Record<string, never> : never : FlattenKeys<{
|
|
@@ -463,45 +444,25 @@ type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<Implicit
|
|
|
463
444
|
readonly [Property in keyof T as FieldHasDefault<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitField<T[Property & string]>;
|
|
464
445
|
}>;
|
|
465
446
|
|
|
466
|
-
// @public
|
|
467
|
-
export type InsertableObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
|
|
468
|
-
readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
|
|
469
|
-
} & {
|
|
470
|
-
readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
|
|
471
|
-
};
|
|
472
|
-
|
|
473
447
|
// @public
|
|
474
448
|
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;
|
|
475
449
|
|
|
476
|
-
// @public
|
|
477
|
-
export type
|
|
478
|
-
|
|
479
|
-
// @public
|
|
480
|
-
export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = TList extends readonly [
|
|
450
|
+
// @public @system
|
|
451
|
+
export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = [TList] extends [
|
|
452
|
+
readonly [
|
|
481
453
|
LazyItem<infer TSchema extends TreeNodeSchema>,
|
|
482
454
|
...infer Rest extends AllowedTypes
|
|
455
|
+
]
|
|
483
456
|
] ? InsertableTypedNode<TSchema> | InsertableTreeNodeFromAllowedTypes<Rest> : never;
|
|
484
457
|
|
|
485
|
-
// @public
|
|
486
|
-
export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = TList extends readonly [
|
|
487
|
-
LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
|
|
488
|
-
...infer Rest extends AllowedTypesUnsafe
|
|
489
|
-
] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
|
|
490
|
-
|
|
491
458
|
// @public
|
|
492
459
|
export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes> = [
|
|
493
460
|
TSchema
|
|
494
461
|
] extends [TreeNodeSchema] ? InsertableTypedNode<TSchema> : [TSchema] extends [AllowedTypes] ? InsertableTreeNodeFromAllowedTypes<TSchema> : never;
|
|
495
462
|
|
|
496
|
-
// @public
|
|
497
|
-
export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
|
|
498
|
-
|
|
499
463
|
// @public
|
|
500
464
|
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);
|
|
501
465
|
|
|
502
|
-
// @public
|
|
503
|
-
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);
|
|
504
|
-
|
|
505
466
|
export { InteriorSequencePlace }
|
|
506
467
|
|
|
507
468
|
// @public @sealed
|
|
@@ -520,24 +481,6 @@ declare namespace InternalTypes {
|
|
|
520
481
|
DefaultProvider,
|
|
521
482
|
typeNameSymbol,
|
|
522
483
|
InsertableObjectFromSchemaRecord,
|
|
523
|
-
ObjectFromSchemaRecord,
|
|
524
|
-
FieldHasDefaultUnsafe,
|
|
525
|
-
ObjectFromSchemaRecordUnsafe,
|
|
526
|
-
TreeObjectNodeUnsafe,
|
|
527
|
-
TreeFieldFromImplicitFieldUnsafe,
|
|
528
|
-
TreeNodeFromImplicitAllowedTypesUnsafe,
|
|
529
|
-
InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
|
|
530
|
-
TreeArrayNodeUnsafe,
|
|
531
|
-
TreeMapNodeUnsafe,
|
|
532
|
-
InsertableObjectFromSchemaRecordUnsafe,
|
|
533
|
-
InsertableTreeFieldFromImplicitFieldUnsafe,
|
|
534
|
-
InsertableTypedNodeUnsafe,
|
|
535
|
-
NodeBuilderDataUnsafe,
|
|
536
|
-
NodeFromSchemaUnsafe,
|
|
537
|
-
ReadonlyMapInlined,
|
|
538
|
-
TreeNodeSchemaUnsafe,
|
|
539
|
-
AllowedTypesUnsafe,
|
|
540
|
-
TreeNodeSchemaNonClassUnsafe,
|
|
541
484
|
FlexList,
|
|
542
485
|
FlexListToUnion,
|
|
543
486
|
ExtractItemType,
|
|
@@ -599,7 +542,7 @@ export interface ITreeViewConfiguration<TSchema extends ImplicitFieldSchema = Im
|
|
|
599
542
|
readonly schema: TSchema;
|
|
600
543
|
}
|
|
601
544
|
|
|
602
|
-
// @public @sealed
|
|
545
|
+
// @public @sealed @legacy
|
|
603
546
|
export interface IValueChanged {
|
|
604
547
|
readonly key: string;
|
|
605
548
|
readonly previousValue: any;
|
|
@@ -608,7 +551,7 @@ export interface IValueChanged {
|
|
|
608
551
|
// @public
|
|
609
552
|
export type LazyItem<Item = unknown> = Item | (() => Item);
|
|
610
553
|
|
|
611
|
-
// @public @sealed
|
|
554
|
+
// @public @sealed @system
|
|
612
555
|
export interface LeafSchema<Name extends string, T extends TreeLeafValue> extends TreeNodeSchemaNonClass<`com.fluidframework.leaf.${Name}`, NodeKind.Leaf, T, T, true> {
|
|
613
556
|
}
|
|
614
557
|
|
|
@@ -627,7 +570,7 @@ export type Listeners<T extends object> = {
|
|
|
627
570
|
export interface MakeNominal {
|
|
628
571
|
}
|
|
629
572
|
|
|
630
|
-
// @public
|
|
573
|
+
// @public @system
|
|
631
574
|
export type MapNodeInsertableData<T extends ImplicitAllowedTypes> = Iterable<readonly [string, InsertableTreeNodeFromImplicitAllowedTypes<T>]> | RestrictiveStringRecord<InsertableTreeNodeFromImplicitAllowedTypes<T>>;
|
|
632
575
|
|
|
633
576
|
// @public
|
|
@@ -638,18 +581,12 @@ export type Myself<M extends IMember = IMember> = M & {
|
|
|
638
581
|
readonly currentConnection: string;
|
|
639
582
|
};
|
|
640
583
|
|
|
641
|
-
// @public
|
|
584
|
+
// @public @system
|
|
642
585
|
type NodeBuilderData<T extends TreeNodeSchemaCore<string, NodeKind, boolean>> = T extends TreeNodeSchemaCore<string, NodeKind, boolean, unknown, infer TBuild> ? TBuild : never;
|
|
643
586
|
|
|
644
|
-
// @public
|
|
645
|
-
type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
|
|
646
|
-
|
|
647
587
|
// @public
|
|
648
588
|
export type NodeFromSchema<T extends TreeNodeSchema> = T extends TreeNodeSchemaClass<string, NodeKind, infer TNode> ? TNode : T extends TreeNodeSchemaNonClass<string, NodeKind, infer TNode> ? TNode : never;
|
|
649
589
|
|
|
650
|
-
// @public
|
|
651
|
-
type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
|
|
652
|
-
|
|
653
590
|
// @public
|
|
654
591
|
export interface NodeInDocumentConstraint {
|
|
655
592
|
// (undocumented)
|
|
@@ -677,39 +614,18 @@ export interface NodeSchemaOptions<out TCustomMetadata = unknown> {
|
|
|
677
614
|
readonly metadata?: NodeSchemaMetadata<TCustomMetadata> | undefined;
|
|
678
615
|
}
|
|
679
616
|
|
|
680
|
-
// @public
|
|
681
|
-
type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {} : {
|
|
617
|
+
// @public @system
|
|
618
|
+
export type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {} : {
|
|
682
619
|
-readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitField<T[Property]> : unknown;
|
|
683
620
|
};
|
|
684
621
|
|
|
685
|
-
// @public
|
|
686
|
-
type ObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
|
|
687
|
-
-readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitFieldUnsafe<T[Property]> : unknown;
|
|
688
|
-
};
|
|
689
|
-
|
|
690
622
|
// @public
|
|
691
623
|
export type Off = () => void;
|
|
692
624
|
|
|
693
|
-
// @public @sealed
|
|
625
|
+
// @public @sealed @system
|
|
694
626
|
export interface ReadonlyArrayNode<out T = TreeNode | TreeLeafValue> extends ReadonlyArray<T>, Awaited<TreeNode & WithType<string, NodeKind.Array>> {
|
|
695
627
|
}
|
|
696
628
|
|
|
697
|
-
// @public @sealed
|
|
698
|
-
interface ReadonlyMapInlined<K, T extends ImplicitAllowedTypesUnsafe> {
|
|
699
|
-
[Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
|
|
700
|
-
entries(): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
|
|
701
|
-
// (undocumented)
|
|
702
|
-
forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypesUnsafe<T>, key: K, map: ReadonlyMap<K, TreeNodeFromImplicitAllowedTypesUnsafe<T>>) => void, thisArg?: any): void;
|
|
703
|
-
// (undocumented)
|
|
704
|
-
get(key: K): TreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined;
|
|
705
|
-
// (undocumented)
|
|
706
|
-
has(key: K): boolean;
|
|
707
|
-
keys(): IterableIterator<K>;
|
|
708
|
-
// (undocumented)
|
|
709
|
-
readonly size: number;
|
|
710
|
-
values(): IterableIterator<TreeNodeFromImplicitAllowedTypesUnsafe<T>>;
|
|
711
|
-
}
|
|
712
|
-
|
|
713
629
|
// @public
|
|
714
630
|
export type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[] ? {
|
|
715
631
|
[K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K];
|
|
@@ -720,7 +636,7 @@ export type RestrictiveReadonlyRecord<K extends symbol | string, T> = {
|
|
|
720
636
|
readonly [P in symbol | string]: P extends K ? T : never;
|
|
721
637
|
};
|
|
722
638
|
|
|
723
|
-
// @public
|
|
639
|
+
// @public @system
|
|
724
640
|
export type RestrictiveStringRecord<T> = {
|
|
725
641
|
readonly [P in string]: T;
|
|
726
642
|
} & {
|
|
@@ -778,8 +694,8 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
|
|
|
778
694
|
scope: TScope);
|
|
779
695
|
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>;
|
|
780
696
|
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>;
|
|
781
|
-
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>, {
|
|
782
|
-
[Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
|
|
697
|
+
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>, {
|
|
698
|
+
[Symbol.iterator](): Iterator<System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
|
|
783
699
|
}, false, T, undefined>;
|
|
784
700
|
readonly boolean: LeafSchema<"boolean", boolean>;
|
|
785
701
|
static readonly boolean: LeafSchema<"boolean", boolean>;
|
|
@@ -790,34 +706,34 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
|
|
|
790
706
|
static readonly leaves: readonly [LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>];
|
|
791
707
|
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>;
|
|
792
708
|
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>;
|
|
793
|
-
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>, {
|
|
709
|
+
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>, {
|
|
794
710
|
[Symbol.iterator](): Iterator<[
|
|
795
711
|
string,
|
|
796
|
-
InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
|
|
712
|
+
System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
|
|
797
713
|
]>;
|
|
798
714
|
} | {
|
|
799
|
-
readonly [x: string]: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
|
|
715
|
+
readonly [x: string]: System_Unsafe.InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>;
|
|
800
716
|
}, false, T, undefined>;
|
|
801
717
|
readonly null: LeafSchema<"null", null>;
|
|
802
718
|
static readonly null: LeafSchema<"null", null>;
|
|
803
719
|
readonly number: LeafSchema<"number", number>;
|
|
804
720
|
static readonly number: LeafSchema<"number", number>;
|
|
805
721
|
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>;
|
|
806
|
-
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>;
|
|
722
|
+
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>;
|
|
807
723
|
readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
|
|
808
724
|
static readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
|
|
809
|
-
readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
|
|
810
|
-
static readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
|
|
725
|
+
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>;
|
|
726
|
+
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>;
|
|
811
727
|
readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
|
|
812
728
|
static readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
|
|
813
|
-
readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
|
|
814
|
-
static readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider"> | undefined) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
|
|
729
|
+
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>;
|
|
730
|
+
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>;
|
|
815
731
|
readonly scope: TScope;
|
|
816
732
|
readonly string: LeafSchema<"string", string>;
|
|
817
733
|
static readonly string: LeafSchema<"string", string>;
|
|
818
734
|
}
|
|
819
735
|
|
|
820
|
-
// @public @sealed
|
|
736
|
+
// @public @sealed @system
|
|
821
737
|
export interface SchemaStatics {
|
|
822
738
|
readonly boolean: LeafSchema<"boolean", boolean>;
|
|
823
739
|
readonly handle: LeafSchema<"handle", IFluidHandle>;
|
|
@@ -831,13 +747,13 @@ export interface SchemaStatics {
|
|
|
831
747
|
readonly null: LeafSchema<"null", null>;
|
|
832
748
|
readonly number: LeafSchema<"number", number>;
|
|
833
749
|
readonly optional: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchema<FieldKind.Optional, T, TCustomMetadata>;
|
|
834
|
-
readonly optionalRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchemaUnsafe<FieldKind.Optional, T, TCustomMetadata>;
|
|
750
|
+
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>;
|
|
835
751
|
readonly required: <const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchema<FieldKind.Required, T, TCustomMetadata>;
|
|
836
|
-
readonly requiredRecursive: <const T extends ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps<TCustomMetadata>, "defaultProvider">) => FieldSchemaUnsafe<FieldKind.Required, T, TCustomMetadata>;
|
|
752
|
+
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>;
|
|
837
753
|
readonly string: LeafSchema<"string", string>;
|
|
838
754
|
}
|
|
839
755
|
|
|
840
|
-
// @public
|
|
756
|
+
// @public @system
|
|
841
757
|
type ScopedSchemaName<TScope extends string | undefined, TName extends number | string> = TScope extends undefined ? `${TName}` : `${TScope}.${TName}`;
|
|
842
758
|
|
|
843
759
|
export { SequencePlace }
|
|
@@ -852,12 +768,100 @@ export const SharedTree: SharedObjectKind<ITree>;
|
|
|
852
768
|
|
|
853
769
|
export { Side }
|
|
854
770
|
|
|
855
|
-
// @public @sealed
|
|
771
|
+
// @public @sealed @system
|
|
856
772
|
export interface SimpleNodeSchemaBase<out TNodeKind extends NodeKind, out TCustomMetadata = unknown> {
|
|
857
773
|
readonly kind: TNodeKind;
|
|
858
774
|
readonly metadata: NodeSchemaMetadata<TCustomMetadata>;
|
|
859
775
|
}
|
|
860
776
|
|
|
777
|
+
// @public @system
|
|
778
|
+
export namespace System_Unsafe {
|
|
779
|
+
// @system
|
|
780
|
+
export type AllowedTypesUnsafe = readonly LazyItem<TreeNodeSchemaUnsafe>[];
|
|
781
|
+
// @sealed @system
|
|
782
|
+
export type FieldHasDefaultUnsafe<T extends ImplicitFieldSchemaUnsafe> = T extends FieldSchemaUnsafe<FieldKind.Optional | FieldKind.Identifier, ImplicitAllowedTypesUnsafe> ? true : false;
|
|
783
|
+
// @sealed @system
|
|
784
|
+
export interface FieldSchemaUnsafe<out Kind extends FieldKind, out Types extends ImplicitAllowedTypesUnsafe, out TCustomMetadata = unknown> extends FieldSchema<Kind, any, TCustomMetadata> {
|
|
785
|
+
readonly allowedTypes: Types;
|
|
786
|
+
readonly allowedTypeSet: ReadonlySet<TreeNodeSchema>;
|
|
787
|
+
readonly kind: Kind;
|
|
788
|
+
}
|
|
789
|
+
// @system
|
|
790
|
+
export type ImplicitAllowedTypesUnsafe = TreeNodeSchemaUnsafe | readonly LazyItem<Unenforced<TreeNodeSchema>>[];
|
|
791
|
+
// @system
|
|
792
|
+
export type ImplicitFieldSchemaUnsafe = FieldSchemaUnsafe<FieldKind, ImplicitAllowedTypesUnsafe> | ImplicitAllowedTypesUnsafe;
|
|
793
|
+
// @system
|
|
794
|
+
export type InsertableObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
|
|
795
|
+
readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
|
|
796
|
+
} & {
|
|
797
|
+
readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property & string]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property & string]>;
|
|
798
|
+
};
|
|
799
|
+
// @system
|
|
800
|
+
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;
|
|
801
|
+
// @system
|
|
802
|
+
export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = [
|
|
803
|
+
TList
|
|
804
|
+
] extends [
|
|
805
|
+
readonly [
|
|
806
|
+
LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
|
|
807
|
+
...infer Rest extends AllowedTypesUnsafe
|
|
808
|
+
]
|
|
809
|
+
] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
|
|
810
|
+
// @system
|
|
811
|
+
export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
|
|
812
|
+
// @system
|
|
813
|
+
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);
|
|
814
|
+
// @system
|
|
815
|
+
export type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
|
|
816
|
+
// @system
|
|
817
|
+
export type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchemaUnsafe<string, NodeKind, infer TNode> ? TNode : never;
|
|
818
|
+
// @system
|
|
819
|
+
export type ObjectFromSchemaRecordUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>> = {
|
|
820
|
+
-readonly [Property in keyof T]: Property extends string ? TreeFieldFromImplicitFieldUnsafe<T[Property]> : unknown;
|
|
821
|
+
};
|
|
822
|
+
// @sealed @system
|
|
823
|
+
export interface ReadonlyMapInlined<K, T extends ImplicitAllowedTypesUnsafe> {
|
|
824
|
+
[Symbol.iterator](): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
|
|
825
|
+
entries(): IterableIterator<[K, TreeNodeFromImplicitAllowedTypesUnsafe<T>]>;
|
|
826
|
+
// (undocumented)
|
|
827
|
+
forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypesUnsafe<T>, key: K, map: ReadonlyMap<K, TreeNodeFromImplicitAllowedTypesUnsafe<T>>) => void, thisArg?: any): void;
|
|
828
|
+
// (undocumented)
|
|
829
|
+
get(key: K): TreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined;
|
|
830
|
+
// (undocumented)
|
|
831
|
+
has(key: K): boolean;
|
|
832
|
+
keys(): IterableIterator<K>;
|
|
833
|
+
// (undocumented)
|
|
834
|
+
readonly size: number;
|
|
835
|
+
values(): IterableIterator<TreeNodeFromImplicitAllowedTypesUnsafe<T>>;
|
|
836
|
+
}
|
|
837
|
+
// @sealed @system
|
|
838
|
+
export interface TreeArrayNodeUnsafe<TAllowedTypes extends ImplicitAllowedTypesUnsafe> extends TreeArrayNode<TAllowedTypes, TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
|
|
839
|
+
}
|
|
840
|
+
// @system
|
|
841
|
+
export type TreeFieldFromImplicitFieldUnsafe<TSchema extends ImplicitFieldSchemaUnsafe> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypesUnsafe ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
|
|
842
|
+
// @sealed @system
|
|
843
|
+
export interface TreeMapNodeUnsafe<T extends ImplicitAllowedTypesUnsafe> extends ReadonlyMapInlined<string, T>, TreeNode {
|
|
844
|
+
delete(key: string): void;
|
|
845
|
+
set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
|
|
846
|
+
}
|
|
847
|
+
// @system
|
|
848
|
+
export type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
|
|
849
|
+
// @system
|
|
850
|
+
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> {
|
|
851
|
+
// @sealed
|
|
852
|
+
new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
|
|
853
|
+
}
|
|
854
|
+
// @system
|
|
855
|
+
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> {
|
|
856
|
+
// (undocumented)
|
|
857
|
+
create(data: TInsertable): TNode;
|
|
858
|
+
}
|
|
859
|
+
// @system
|
|
860
|
+
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>;
|
|
861
|
+
// @system
|
|
862
|
+
export type TreeObjectNodeUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object, T>;
|
|
863
|
+
}
|
|
864
|
+
|
|
861
865
|
// @public
|
|
862
866
|
export interface Tagged<V, T extends string = string> {
|
|
863
867
|
// (undocumented)
|
|
@@ -878,14 +882,14 @@ export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (
|
|
|
878
882
|
// @public
|
|
879
883
|
export const Tree: TreeApi;
|
|
880
884
|
|
|
881
|
-
// @public @sealed
|
|
885
|
+
// @public @sealed @system
|
|
882
886
|
interface TreeApi extends TreeNodeApi {
|
|
883
887
|
contains(node: TreeNode, other: TreeNode): boolean;
|
|
884
888
|
readonly runTransaction: RunTransaction;
|
|
885
889
|
}
|
|
886
890
|
|
|
887
891
|
// @public @sealed
|
|
888
|
-
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> {
|
|
892
|
+
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> {
|
|
889
893
|
insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
890
894
|
insertAtEnd(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
891
895
|
insertAtStart(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
@@ -911,10 +915,6 @@ export const TreeArrayNode: {
|
|
|
911
915
|
readonly spread: <T>(content: Iterable<T>) => IterableTreeArrayContent<T>;
|
|
912
916
|
};
|
|
913
917
|
|
|
914
|
-
// @public @sealed
|
|
915
|
-
export interface TreeArrayNodeUnsafe<TAllowedTypes extends ImplicitAllowedTypesUnsafe> extends TreeArrayNode<TAllowedTypes, TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>> {
|
|
916
|
-
}
|
|
917
|
-
|
|
918
918
|
// @public @sealed
|
|
919
919
|
export interface TreeChangeEvents {
|
|
920
920
|
nodeChanged(unstable?: unknown): void;
|
|
@@ -924,9 +924,6 @@ export interface TreeChangeEvents {
|
|
|
924
924
|
// @public
|
|
925
925
|
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;
|
|
926
926
|
|
|
927
|
-
// @public
|
|
928
|
-
type TreeFieldFromImplicitFieldUnsafe<TSchema extends ImplicitFieldSchemaUnsafe> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind> : TSchema extends ImplicitAllowedTypesUnsafe ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
|
|
929
|
-
|
|
930
927
|
// @public
|
|
931
928
|
export type TreeLeafValue = number | string | boolean | IFluidHandle | null;
|
|
932
929
|
|
|
@@ -940,12 +937,6 @@ export interface TreeMapNode<T extends ImplicitAllowedTypes = ImplicitAllowedTyp
|
|
|
940
937
|
values(): IterableIterator<TreeNodeFromImplicitAllowedTypes<T>>;
|
|
941
938
|
}
|
|
942
939
|
|
|
943
|
-
// @public @sealed
|
|
944
|
-
export interface TreeMapNodeUnsafe<T extends ImplicitAllowedTypesUnsafe> extends ReadonlyMapInlined<string, T>, TreeNode {
|
|
945
|
-
delete(key: string): void;
|
|
946
|
-
set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
|
|
947
|
-
}
|
|
948
|
-
|
|
949
940
|
// @public @sealed
|
|
950
941
|
export abstract class TreeNode implements WithType {
|
|
951
942
|
static [Symbol.hasInstance](value: unknown): value is TreeNode;
|
|
@@ -970,9 +961,6 @@ export interface TreeNodeApi {
|
|
|
970
961
|
// @public
|
|
971
962
|
export type TreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
|
|
972
963
|
|
|
973
|
-
// @public
|
|
974
|
-
type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = TSchema extends TreeNodeSchemaUnsafe ? NodeFromSchemaUnsafe<TSchema> : TSchema extends AllowedTypesUnsafe ? NodeFromSchemaUnsafe<FlexListToUnion<TSchema>> : unknown;
|
|
975
|
-
|
|
976
964
|
// @public @sealed
|
|
977
965
|
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>;
|
|
978
966
|
|
|
@@ -983,44 +971,27 @@ export type TreeNodeSchemaClass<Name extends string = string, Kind extends NodeK
|
|
|
983
971
|
new (data: TInsertable | InternalTreeNode | TConstructorExtra): Unhydrated<TNode>;
|
|
984
972
|
});
|
|
985
973
|
|
|
986
|
-
// @public
|
|
987
|
-
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> {
|
|
988
|
-
// @sealed
|
|
989
|
-
new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
|
|
990
|
-
}
|
|
991
|
-
|
|
992
974
|
// @public @sealed
|
|
993
975
|
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> {
|
|
976
|
+
// @system
|
|
994
977
|
readonly childTypes: ReadonlySet<TreeNodeSchema>;
|
|
995
|
-
// @sealed
|
|
978
|
+
// @sealed @system
|
|
996
979
|
createFromInsertable(data: TInsertable): Unhydrated<TreeNode | TreeLeafValue>;
|
|
997
980
|
readonly identifier: Name;
|
|
998
981
|
readonly implicitlyConstructable: ImplicitlyConstructable;
|
|
999
982
|
readonly info: Info;
|
|
1000
983
|
}
|
|
1001
984
|
|
|
1002
|
-
// @public @sealed
|
|
985
|
+
// @public @sealed @system
|
|
1003
986
|
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 ? {
|
|
1004
987
|
create(data?: TInsertable | TConstructorExtra): TNode;
|
|
1005
988
|
} : {
|
|
1006
989
|
create(data: TInsertable | TConstructorExtra): TNode;
|
|
1007
990
|
});
|
|
1008
991
|
|
|
1009
|
-
// @public
|
|
1010
|
-
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> {
|
|
1011
|
-
// (undocumented)
|
|
1012
|
-
create(data: TInsertable): TNode;
|
|
1013
|
-
}
|
|
1014
|
-
|
|
1015
|
-
// @public
|
|
1016
|
-
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>;
|
|
1017
|
-
|
|
1018
992
|
// @public
|
|
1019
993
|
export type TreeObjectNode<T extends RestrictiveStringRecord<ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
|
|
1020
994
|
|
|
1021
|
-
// @public
|
|
1022
|
-
export type TreeObjectNodeUnsafe<T extends RestrictiveStringRecord<ImplicitFieldSchemaUnsafe>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object, T>;
|
|
1023
|
-
|
|
1024
995
|
// @public
|
|
1025
996
|
export enum TreeStatus {
|
|
1026
997
|
Deleted = 2,
|
|
@@ -1057,10 +1028,10 @@ export interface TreeViewEvents {
|
|
|
1057
1028
|
schemaChanged(): void;
|
|
1058
1029
|
}
|
|
1059
1030
|
|
|
1060
|
-
// @public @deprecated
|
|
1031
|
+
// @public @deprecated @system
|
|
1061
1032
|
const typeNameSymbol: unique symbol;
|
|
1062
1033
|
|
|
1063
|
-
// @public
|
|
1034
|
+
// @public @system
|
|
1064
1035
|
export const typeSchemaSymbol: unique symbol;
|
|
1065
1036
|
|
|
1066
1037
|
// @public
|
|
@@ -1069,7 +1040,7 @@ export type Unenforced<_DesiredExtendsConstraint> = unknown;
|
|
|
1069
1040
|
// @public
|
|
1070
1041
|
export type Unhydrated<T> = T;
|
|
1071
1042
|
|
|
1072
|
-
// @public
|
|
1043
|
+
// @public @system
|
|
1073
1044
|
export type UnionToIntersection<T> = (T extends T ? (k: T) => unknown : never) extends (k: infer U) => unknown ? U : never;
|
|
1074
1045
|
|
|
1075
1046
|
// @public
|
|
@@ -1083,7 +1054,7 @@ export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKi
|
|
|
1083
1054
|
[NodeKind.Map]: ImplicitAllowedTypes;
|
|
1084
1055
|
}[T["kind"]]>> = true;
|
|
1085
1056
|
|
|
1086
|
-
// @public @sealed
|
|
1057
|
+
// @public @sealed @system
|
|
1087
1058
|
export interface ViewableTree {
|
|
1088
1059
|
viewWith<TRoot extends ImplicitFieldSchema>(config: TreeViewConfiguration<TRoot>): TreeView<TRoot>;
|
|
1089
1060
|
}
|