fluid-framework 2.33.1 → 2.40.0-336023
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/api-report/fluid-framework.alpha.api.md +120 -51
- package/api-report/fluid-framework.beta.api.md +31 -28
- package/api-report/fluid-framework.legacy.alpha.api.md +24 -85
- package/api-report/fluid-framework.legacy.public.api.md +24 -24
- package/api-report/fluid-framework.public.api.md +24 -24
- package/dist/alpha.d.ts +16 -1
- package/dist/beta.d.ts +2 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy.d.ts +2 -4
- package/dist/public.d.ts +2 -0
- package/lib/alpha.d.ts +16 -1
- package/lib/beta.d.ts +2 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/legacy.d.ts +2 -4
- package/lib/public.d.ts +2 -0
- package/package.json +12 -12
- package/src/index.ts +0 -4
|
@@ -15,12 +15,34 @@ 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
|
+
// @alpha
|
|
19
|
+
export interface AllowedTypeMetadata {
|
|
20
|
+
readonly custom?: unknown;
|
|
21
|
+
}
|
|
22
|
+
|
|
18
23
|
// @public @system
|
|
19
24
|
export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
|
|
20
25
|
|
|
26
|
+
// @alpha
|
|
27
|
+
export interface AllowedTypesMetadata {
|
|
28
|
+
readonly custom?: unknown;
|
|
29
|
+
}
|
|
30
|
+
|
|
21
31
|
// @alpha
|
|
22
32
|
export function allowUnused<T>(t?: T): void;
|
|
23
33
|
|
|
34
|
+
// @alpha
|
|
35
|
+
export interface AnnotatedAllowedType<T extends TreeNodeSchema = TreeNodeSchema> {
|
|
36
|
+
readonly metadata: AllowedTypeMetadata;
|
|
37
|
+
readonly type: LazyItem<T>;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// @alpha
|
|
41
|
+
export interface AnnotatedAllowedTypes {
|
|
42
|
+
readonly metadata: AllowedTypesMetadata;
|
|
43
|
+
readonly types: readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[];
|
|
44
|
+
}
|
|
45
|
+
|
|
24
46
|
// @public @system
|
|
25
47
|
type ApplyKind<T, Kind extends FieldKind> = {
|
|
26
48
|
[FieldKind.Required]: T;
|
|
@@ -34,7 +56,7 @@ Kind
|
|
|
34
56
|
] extends [FieldKind.Required] ? T : [Kind] extends [FieldKind.Optional] ? T | undefined : [Kind] extends [FieldKind.Identifier] ? DefaultsAreOptional extends true ? T | undefined : T : never;
|
|
35
57
|
|
|
36
58
|
// @alpha @sealed @system
|
|
37
|
-
export interface ArrayNodeCustomizableSchema<out TName extends string = string, in out T extends
|
|
59
|
+
export interface ArrayNodeCustomizableSchema<out TName extends string = string, in out T extends ImplicitAnnotatedAllowedTypes = ImplicitAnnotatedAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaClass<TName, NodeKind.Array, TreeArrayNode<UnannotateImplicitAllowedTypes<T>> & WithType<TName, NodeKind.Array, T>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<UnannotateImplicitAllowedTypes<T>>>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleArrayNodeSchema<TCustomMetadata> {
|
|
38
60
|
}
|
|
39
61
|
|
|
40
62
|
// @alpha @sealed @system
|
|
@@ -44,7 +66,7 @@ export interface ArrayNodeCustomizableSchemaUnsafe<out TName extends string, in
|
|
|
44
66
|
}
|
|
45
67
|
|
|
46
68
|
// @alpha @sealed @system
|
|
47
|
-
export interface ArrayNodePojoEmulationSchema<out TName extends string = string, in out T extends
|
|
69
|
+
export interface ArrayNodePojoEmulationSchema<out TName extends string = string, in out T extends ImplicitAnnotatedAllowedTypes = ImplicitAnnotatedAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaNonClass<TName, NodeKind.Array, TreeArrayNode<UnannotateImplicitAllowedTypes<T>> & WithType<TName, NodeKind.Array, T>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<UnannotateImplicitAllowedTypes<T>>>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleArrayNodeSchema<TCustomMetadata> {
|
|
48
70
|
}
|
|
49
71
|
|
|
50
72
|
// @alpha
|
|
@@ -185,7 +207,9 @@ export type FactoryContentObject = {
|
|
|
185
207
|
};
|
|
186
208
|
|
|
187
209
|
// @public @system
|
|
188
|
-
type FieldHasDefault<T extends ImplicitFieldSchema> = T extends
|
|
210
|
+
type FieldHasDefault<T extends ImplicitFieldSchema> = [T] extends [
|
|
211
|
+
FieldSchema<FieldKind.Optional | FieldKind.Identifier>
|
|
212
|
+
] ? true : false;
|
|
189
213
|
|
|
190
214
|
// @public
|
|
191
215
|
export enum FieldKind {
|
|
@@ -218,9 +242,13 @@ export class FieldSchema<out Kind extends FieldKind = FieldKind, out Types exten
|
|
|
218
242
|
|
|
219
243
|
// @alpha @sealed
|
|
220
244
|
export class FieldSchemaAlpha<Kind extends FieldKind = FieldKind, Types extends ImplicitAllowedTypes = ImplicitAllowedTypes, TCustomMetadata = unknown> extends FieldSchema<Kind, Types, TCustomMetadata> implements SimpleFieldSchema {
|
|
221
|
-
protected constructor(kind: Kind,
|
|
245
|
+
protected constructor(kind: Kind, types: Types, annotatedAllowedTypes: ImplicitAnnotatedAllowedTypes, props?: FieldProps<TCustomMetadata>);
|
|
222
246
|
// (undocumented)
|
|
223
247
|
get allowedTypesIdentifiers(): ReadonlySet<string>;
|
|
248
|
+
readonly allowedTypesMetadata: AllowedTypesMetadata;
|
|
249
|
+
// (undocumented)
|
|
250
|
+
readonly annotatedAllowedTypes: ImplicitAnnotatedAllowedTypes;
|
|
251
|
+
get annotatedAllowedTypeSet(): ReadonlyMap<TreeNodeSchema, AllowedTypeMetadata>;
|
|
224
252
|
}
|
|
225
253
|
|
|
226
254
|
// @alpha @sealed @system
|
|
@@ -551,7 +579,6 @@ export const IFluidLoadable: keyof IProvideFluidLoadable;
|
|
|
551
579
|
|
|
552
580
|
// @public @sealed
|
|
553
581
|
export interface IFluidLoadable extends IProvideFluidLoadable {
|
|
554
|
-
// (undocumented)
|
|
555
582
|
readonly handle: IFluidHandle;
|
|
556
583
|
}
|
|
557
584
|
|
|
@@ -564,6 +591,12 @@ export interface IMember {
|
|
|
564
591
|
// @public
|
|
565
592
|
export type ImplicitAllowedTypes = AllowedTypes | TreeNodeSchema;
|
|
566
593
|
|
|
594
|
+
// @alpha
|
|
595
|
+
export type ImplicitAnnotatedAllowedTypes = TreeNodeSchema | AnnotatedAllowedType | AnnotatedAllowedTypes | readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[];
|
|
596
|
+
|
|
597
|
+
// @alpha
|
|
598
|
+
export type ImplicitAnnotatedFieldSchema = FieldSchema | ImplicitAnnotatedAllowedTypes;
|
|
599
|
+
|
|
567
600
|
// @public
|
|
568
601
|
export type ImplicitFieldSchema = FieldSchema | ImplicitAllowedTypes;
|
|
569
602
|
|
|
@@ -597,6 +630,9 @@ export type InsertableField<TSchema extends ImplicitFieldSchema | UnsafeUnknownS
|
|
|
597
630
|
TSchema
|
|
598
631
|
] extends [ImplicitFieldSchema] ? InsertableTreeFieldFromImplicitField<TSchema> : [TSchema] extends [UnsafeUnknownSchema] ? InsertableContent | undefined : never;
|
|
599
632
|
|
|
633
|
+
// @alpha @system
|
|
634
|
+
export type InsertableObjectFromAnnotatedSchemaRecord<T extends RestrictiveStringRecord<ImplicitAnnotatedFieldSchema>> = InsertableObjectFromSchemaRecord<UnannotateSchemaRecord<T>>;
|
|
635
|
+
|
|
600
636
|
// @public @system
|
|
601
637
|
type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFieldSchema>> = RestrictiveStringRecord<ImplicitFieldSchema> extends T ? {
|
|
602
638
|
arbitraryKey: "arbitraryValue";
|
|
@@ -610,12 +646,9 @@ type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<Implicit
|
|
|
610
646
|
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;
|
|
611
647
|
|
|
612
648
|
// @public @system
|
|
613
|
-
export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> =
|
|
614
|
-
readonly [
|
|
615
|
-
|
|
616
|
-
...infer Rest extends AllowedTypes
|
|
617
|
-
]
|
|
618
|
-
] ? InsertableTypedNode<TSchema> | InsertableTreeNodeFromAllowedTypes<Rest> : never;
|
|
649
|
+
export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = IsUnion<TList> extends true ? never : {
|
|
650
|
+
readonly [Property in keyof TList]: TList[Property] extends LazyItem<infer TSchema extends TreeNodeSchema> ? InsertableTypedNode<TSchema> : never;
|
|
651
|
+
}[number];
|
|
619
652
|
|
|
620
653
|
// @public
|
|
621
654
|
export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes> = [
|
|
@@ -643,8 +676,7 @@ declare namespace InternalTypes {
|
|
|
643
676
|
InsertableObjectFromSchemaRecord,
|
|
644
677
|
FlexList,
|
|
645
678
|
FlexListToUnion,
|
|
646
|
-
ExtractItemType
|
|
647
|
-
TreeApi
|
|
679
|
+
ExtractItemType
|
|
648
680
|
}
|
|
649
681
|
}
|
|
650
682
|
export { InternalTypes }
|
|
@@ -677,7 +709,7 @@ export function isFluidHandle(value: unknown): value is IFluidHandle;
|
|
|
677
709
|
// @public
|
|
678
710
|
export type IsListener<TListener> = TListener extends (...args: any[]) => void ? true : false;
|
|
679
711
|
|
|
680
|
-
// @
|
|
712
|
+
// @public @system
|
|
681
713
|
export type IsUnion<T, T2 = T> = T extends unknown ? [T2] extends [T] ? false : true : "error";
|
|
682
714
|
|
|
683
715
|
// @public
|
|
@@ -838,7 +870,7 @@ export interface MakeNominal {
|
|
|
838
870
|
}
|
|
839
871
|
|
|
840
872
|
// @alpha @sealed @system
|
|
841
|
-
export interface MapNodeCustomizableSchema<out TName extends string = string, in out T extends
|
|
873
|
+
export interface MapNodeCustomizableSchema<out TName extends string = string, in out T extends ImplicitAnnotatedAllowedTypes = ImplicitAnnotatedAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaClass<TName, NodeKind.Map, TreeMapNode<UnannotateImplicitAllowedTypes<T>> & WithType<TName, NodeKind.Map, T>, MapNodeInsertableData<UnannotateImplicitAllowedTypes<T>>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleMapNodeSchema<TCustomMetadata> {
|
|
842
874
|
}
|
|
843
875
|
|
|
844
876
|
// @alpha @sealed @system
|
|
@@ -856,7 +888,7 @@ export interface MapNodeCustomizableSchemaUnsafe<out TName extends string, in ou
|
|
|
856
888
|
export type MapNodeInsertableData<T extends ImplicitAllowedTypes> = Iterable<readonly [string, InsertableTreeNodeFromImplicitAllowedTypes<T>]> | RestrictiveStringRecord<InsertableTreeNodeFromImplicitAllowedTypes<T>>;
|
|
857
889
|
|
|
858
890
|
// @alpha @sealed @system
|
|
859
|
-
export interface MapNodePojoEmulationSchema<out TName extends string = string, in out T extends
|
|
891
|
+
export interface MapNodePojoEmulationSchema<out TName extends string = string, in out T extends ImplicitAnnotatedAllowedTypes = ImplicitAnnotatedAllowedTypes, out ImplicitlyConstructable extends boolean = true, out TCustomMetadata = unknown> extends TreeNodeSchemaNonClass<TName, NodeKind.Map, TreeMapNode<UnannotateImplicitAllowedTypes<T>> & WithType<TName, NodeKind.Map, T>, MapNodeInsertableData<UnannotateImplicitAllowedTypes<T>>, ImplicitlyConstructable, T, undefined, TCustomMetadata>, SimpleMapNodeSchema<TCustomMetadata> {
|
|
860
892
|
}
|
|
861
893
|
|
|
862
894
|
// @alpha
|
|
@@ -922,13 +954,13 @@ export type ObjectFromSchemaRecord<T extends RestrictiveStringRecord<ImplicitFie
|
|
|
922
954
|
};
|
|
923
955
|
|
|
924
956
|
// @alpha @sealed
|
|
925
|
-
export interface ObjectNodeSchema<out TName extends string = string, in out T extends RestrictiveStringRecord<
|
|
957
|
+
export interface ObjectNodeSchema<out TName extends string = string, in out T extends RestrictiveStringRecord<ImplicitAnnotatedFieldSchema> = RestrictiveStringRecord<ImplicitAnnotatedFieldSchema>, ImplicitlyConstructable extends boolean = boolean, out TCustomMetadata = unknown> extends TreeNodeSchemaClass<TName, NodeKind.Object, TreeObjectNode<UnannotateSchemaRecord<T>, TName>, InsertableObjectFromAnnotatedSchemaRecord<T>, ImplicitlyConstructable, T, never, TCustomMetadata>, SimpleObjectNodeSchema<TCustomMetadata> {
|
|
926
958
|
readonly fields: ReadonlyMap<string, FieldSchemaAlpha & SimpleObjectFieldSchema>;
|
|
927
959
|
}
|
|
928
960
|
|
|
929
961
|
// @alpha (undocumented)
|
|
930
962
|
export const ObjectNodeSchema: {
|
|
931
|
-
readonly [Symbol.hasInstance]: (value: TreeNodeSchema) => value is ObjectNodeSchema<string, RestrictiveStringRecord<
|
|
963
|
+
readonly [Symbol.hasInstance]: (value: TreeNodeSchema) => value is ObjectNodeSchema<string, RestrictiveStringRecord<ImplicitAnnotatedFieldSchema>, boolean, unknown>;
|
|
932
964
|
};
|
|
933
965
|
|
|
934
966
|
// @public
|
|
@@ -1083,19 +1115,25 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
|
|
|
1083
1115
|
|
|
1084
1116
|
// @alpha
|
|
1085
1117
|
export class SchemaFactoryAlpha<out TScope extends string | undefined = string | undefined, TName extends number | string = string> extends SchemaFactory<TScope, TName> {
|
|
1086
|
-
arrayAlpha<const Name extends TName, const T extends
|
|
1118
|
+
arrayAlpha<const Name extends TName, const T extends ImplicitAnnotatedAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): ArrayNodeCustomizableSchema<ScopedSchemaName<TScope, Name>, T, true, TCustomMetadata>;
|
|
1087
1119
|
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>;
|
|
1088
1120
|
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>;
|
|
1089
1121
|
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];
|
|
1090
|
-
mapAlpha<Name extends TName, const T extends
|
|
1122
|
+
mapAlpha<Name extends TName, const T extends ImplicitAnnotatedAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): MapNodeCustomizableSchema<ScopedSchemaName<TScope, Name>, T, true, TCustomMetadata>;
|
|
1091
1123
|
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>;
|
|
1092
|
-
|
|
1124
|
+
objectAlpha<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitAnnotatedFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: SchemaFactoryObjectOptions<TCustomMetadata>): ObjectNodeSchema<ScopedSchemaName<TScope, Name>, T, true, TCustomMetadata> & {
|
|
1093
1125
|
readonly createFromInsertable: unknown;
|
|
1094
1126
|
};
|
|
1095
1127
|
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">;
|
|
1096
|
-
static readonly optional:
|
|
1128
|
+
static readonly optional: {
|
|
1129
|
+
<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined): FieldSchemaAlpha_2<FieldKind_2.Optional, T, TCustomMetadata>;
|
|
1130
|
+
<const T_1 extends ImplicitAnnotatedAllowedTypes, const TCustomMetadata_1 = unknown>(t: T_1, props?: Omit<FieldProps_2<TCustomMetadata_1>, "defaultProvider"> | undefined): FieldSchemaAlpha_2<FieldKind_2.Optional, UnannotateImplicitAllowedTypes_2<T_1>, TCustomMetadata_1>;
|
|
1131
|
+
};
|
|
1097
1132
|
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>;
|
|
1098
|
-
static readonly required:
|
|
1133
|
+
static readonly required: {
|
|
1134
|
+
<const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(t: T, props?: Omit<FieldProps_2<TCustomMetadata>, "defaultProvider"> | undefined): FieldSchemaAlpha_2<FieldKind_2.Required, T, TCustomMetadata>;
|
|
1135
|
+
<const T_1 extends ImplicitAnnotatedAllowedTypes, const TCustomMetadata_1 = unknown>(t: T_1, props?: Omit<FieldProps_2<TCustomMetadata_1>, "defaultProvider"> | undefined): FieldSchemaAlpha_2<FieldKind_2.Required, UnannotateImplicitAllowedTypes_2<T_1>, TCustomMetadata_1>;
|
|
1136
|
+
};
|
|
1099
1137
|
scopedFactory<const T extends TName, TNameInner extends number | string = string>(name: T): SchemaFactoryAlpha<ScopedSchemaName<TScope, T>, TNameInner>;
|
|
1100
1138
|
}
|
|
1101
1139
|
|
|
@@ -1239,14 +1277,9 @@ export namespace System_Unsafe {
|
|
|
1239
1277
|
// @system
|
|
1240
1278
|
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
1279
|
// @system
|
|
1242
|
-
export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> =
|
|
1243
|
-
|
|
1244
|
-
]
|
|
1245
|
-
readonly [
|
|
1246
|
-
LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
|
|
1247
|
-
...infer Rest extends AllowedTypesUnsafe
|
|
1248
|
-
]
|
|
1249
|
-
] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
|
|
1280
|
+
export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = IsUnion<TList> extends true ? never : {
|
|
1281
|
+
readonly [Property in keyof TList]: TList[Property] extends LazyItem<infer TSchema extends TreeNodeSchemaUnsafe> ? InsertableTypedNodeUnsafe<TSchema> : never;
|
|
1282
|
+
}[number];
|
|
1250
1283
|
// @system
|
|
1251
1284
|
export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
|
|
1252
1285
|
// @system
|
|
@@ -1348,33 +1381,36 @@ export interface TransactionResultSuccess<TSuccessValue> {
|
|
|
1348
1381
|
// @public
|
|
1349
1382
|
export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void) => TThis;
|
|
1350
1383
|
|
|
1384
|
+
// @public @sealed @system
|
|
1385
|
+
export interface Tree extends TreeNodeApi {
|
|
1386
|
+
contains(node: TreeNode, other: TreeNode): boolean;
|
|
1387
|
+
readonly runTransaction: RunTransaction;
|
|
1388
|
+
}
|
|
1389
|
+
|
|
1351
1390
|
// @public
|
|
1352
|
-
export const Tree:
|
|
1391
|
+
export const Tree: Tree;
|
|
1353
1392
|
|
|
1354
|
-
// @alpha @sealed
|
|
1355
|
-
export
|
|
1393
|
+
// @alpha @sealed @system
|
|
1394
|
+
export interface TreeAlpha {
|
|
1356
1395
|
branch(node: TreeNode): TreeBranch | undefined;
|
|
1357
1396
|
create<const TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema>(schema: UnsafeUnknownSchema extends TSchema ? ImplicitFieldSchema : TSchema & ImplicitFieldSchema, data: InsertableField<TSchema>): Unhydrated<TSchema extends ImplicitFieldSchema ? TreeFieldFromImplicitField<TSchema> : TreeNode | TreeLeafValue | undefined>;
|
|
1358
|
-
importConcise<const TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema>(schema: UnsafeUnknownSchema extends TSchema ? ImplicitFieldSchema : TSchema & ImplicitFieldSchema, data: ConciseTree | undefined): Unhydrated<TSchema extends ImplicitFieldSchema ? TreeFieldFromImplicitField<TSchema> : TreeNode | TreeLeafValue | undefined>;
|
|
1359
|
-
importVerbose<const TSchema extends ImplicitFieldSchema>(schema: TSchema, data: VerboseTree | undefined, options?: Partial<TreeEncodingOptions>): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
|
|
1360
|
-
exportConcise(node: TreeNode | TreeLeafValue, options?: TreeEncodingOptions): ConciseTree;
|
|
1361
|
-
exportConcise(node: TreeNode | TreeLeafValue | undefined, options?: TreeEncodingOptions): ConciseTree | undefined;
|
|
1362
|
-
exportVerbose(node: TreeNode | TreeLeafValue, options?: TreeEncodingOptions): VerboseTree;
|
|
1363
1397
|
exportCompressed(tree: TreeNode | TreeLeafValue, options: {
|
|
1364
1398
|
oldestCompatibleClient: FluidClientVersion;
|
|
1365
1399
|
idCompressor?: IIdCompressor;
|
|
1366
1400
|
}): JsonCompatible<IFluidHandle>;
|
|
1401
|
+
exportConcise(node: TreeNode | TreeLeafValue, options?: TreeEncodingOptions): ConciseTree;
|
|
1402
|
+
exportConcise(node: TreeNode | TreeLeafValue | undefined, options?: TreeEncodingOptions): ConciseTree | undefined;
|
|
1403
|
+
exportVerbose(node: TreeNode | TreeLeafValue, options?: TreeEncodingOptions): VerboseTree;
|
|
1367
1404
|
importCompressed<const TSchema extends ImplicitFieldSchema>(schema: TSchema, compressedData: JsonCompatible<IFluidHandle>, options: {
|
|
1368
1405
|
idCompressor?: IIdCompressor;
|
|
1369
1406
|
} & ICodecOptions): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
// @public @sealed @system
|
|
1373
|
-
interface TreeApi extends TreeNodeApi {
|
|
1374
|
-
contains(node: TreeNode, other: TreeNode): boolean;
|
|
1375
|
-
readonly runTransaction: RunTransaction;
|
|
1407
|
+
importConcise<const TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema>(schema: UnsafeUnknownSchema extends TSchema ? ImplicitFieldSchema : TSchema & ImplicitFieldSchema, data: ConciseTree | undefined): Unhydrated<TSchema extends ImplicitFieldSchema ? TreeFieldFromImplicitField<TSchema> : TreeNode | TreeLeafValue | undefined>;
|
|
1408
|
+
importVerbose<const TSchema extends ImplicitFieldSchema>(schema: TSchema, data: VerboseTree | undefined, options?: Partial<TreeEncodingOptions>): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
|
|
1376
1409
|
}
|
|
1377
1410
|
|
|
1411
|
+
// @alpha
|
|
1412
|
+
export const TreeAlpha: TreeAlpha;
|
|
1413
|
+
|
|
1378
1414
|
// @public @sealed
|
|
1379
1415
|
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> {
|
|
1380
1416
|
insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
@@ -1402,11 +1438,14 @@ export const TreeArrayNode: {
|
|
|
1402
1438
|
readonly spread: <T>(content: Iterable<T>) => IterableTreeArrayContent<T>;
|
|
1403
1439
|
};
|
|
1404
1440
|
|
|
1405
|
-
// @beta @sealed
|
|
1406
|
-
export
|
|
1407
|
-
on<K extends keyof TreeChangeEventsBeta<TNode>, TNode extends TreeNode>(node: TNode, eventName: K, listener: NoInfer<TreeChangeEventsBeta<TNode>[K]>): () => void;
|
|
1441
|
+
// @beta @sealed @system
|
|
1442
|
+
export interface TreeBeta {
|
|
1408
1443
|
clone<const TSchema extends ImplicitFieldSchema>(node: TreeFieldFromImplicitField<TSchema>): TreeFieldFromImplicitField<TSchema>;
|
|
1409
|
-
|
|
1444
|
+
on<K extends keyof TreeChangeEventsBeta<TNode>, TNode extends TreeNode>(node: TNode, eventName: K, listener: NoInfer<TreeChangeEventsBeta<TNode>[K]>): () => void;
|
|
1445
|
+
}
|
|
1446
|
+
|
|
1447
|
+
// @beta
|
|
1448
|
+
export const TreeBeta: TreeBeta;
|
|
1410
1449
|
|
|
1411
1450
|
// @alpha @sealed
|
|
1412
1451
|
export interface TreeBranch extends IDisposable {
|
|
@@ -1611,6 +1650,31 @@ const typeNameSymbol: unique symbol;
|
|
|
1611
1650
|
// @public @system
|
|
1612
1651
|
export const typeSchemaSymbol: unique symbol;
|
|
1613
1652
|
|
|
1653
|
+
// @alpha @system
|
|
1654
|
+
export type UnannotateAllowedType<T extends AnnotatedAllowedType> = T extends AnnotatedAllowedType<infer X> ? [X] : T;
|
|
1655
|
+
|
|
1656
|
+
// @alpha @system
|
|
1657
|
+
export type UnannotateAllowedTypeOrLazyItem<T extends AnnotatedAllowedType | LazyItem<TreeNodeSchema>> = T extends AnnotatedAllowedType<infer X> ? X : T;
|
|
1658
|
+
|
|
1659
|
+
// @alpha @system
|
|
1660
|
+
export type UnannotateAllowedTypes<T extends AnnotatedAllowedTypes> = UnannotateAllowedTypesList<T["types"]>;
|
|
1661
|
+
|
|
1662
|
+
// @alpha @system
|
|
1663
|
+
export type UnannotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
1664
|
+
[I in keyof T]: UnannotateAllowedTypeOrLazyItem<T[I]>;
|
|
1665
|
+
};
|
|
1666
|
+
|
|
1667
|
+
// @alpha @system
|
|
1668
|
+
export type UnannotateImplicitAllowedTypes<T extends ImplicitAnnotatedAllowedTypes> = T extends AnnotatedAllowedTypes ? UnannotateAllowedTypes<T> : T extends AnnotatedAllowedType ? UnannotateAllowedType<T> : T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[] ? UnannotateAllowedTypesList<T> : T extends TreeNodeSchema ? T : never;
|
|
1669
|
+
|
|
1670
|
+
// @alpha @system
|
|
1671
|
+
export type UnannotateImplicitFieldSchema<T extends ImplicitAnnotatedFieldSchema> = T extends ImplicitAnnotatedAllowedTypes ? UnannotateImplicitAllowedTypes<T> : T;
|
|
1672
|
+
|
|
1673
|
+
// @alpha @system
|
|
1674
|
+
export type UnannotateSchemaRecord<T extends RestrictiveStringRecord<ImplicitAnnotatedFieldSchema>> = {
|
|
1675
|
+
readonly [P in Extract<keyof T, string>]: UnannotateImplicitFieldSchema<T[P]>;
|
|
1676
|
+
};
|
|
1677
|
+
|
|
1614
1678
|
// @public
|
|
1615
1679
|
export type Unenforced<_DesiredExtendsConstraint> = unknown;
|
|
1616
1680
|
|
|
@@ -1630,15 +1694,20 @@ export const UnsafeUnknownSchema: unique symbol;
|
|
|
1630
1694
|
export type UnsafeUnknownSchema = typeof UnsafeUnknownSchema;
|
|
1631
1695
|
|
|
1632
1696
|
// @public
|
|
1633
|
-
export type ValidateRecursiveSchema<T extends
|
|
1697
|
+
export type ValidateRecursiveSchema<T extends ValidateRecursiveSchemaTemplate<T>> = true;
|
|
1698
|
+
|
|
1699
|
+
// @public @system
|
|
1700
|
+
export type ValidateRecursiveSchemaTemplate<T extends TreeNodeSchema> = TreeNodeSchema<string, NodeKind.Array | NodeKind.Map | NodeKind.Object, TreeNode & WithType<T["identifier"], T["kind"]>, {
|
|
1634
1701
|
[NodeKind.Object]: T["info"] extends RestrictiveStringRecord<ImplicitFieldSchema> ? InsertableObjectFromSchemaRecord<T["info"]> : unknown;
|
|
1635
1702
|
[NodeKind.Array]: T["info"] extends ImplicitAllowedTypes ? Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T["info"]>> : unknown;
|
|
1636
1703
|
[NodeKind.Map]: T["info"] extends ImplicitAllowedTypes ? Iterable<[string, InsertableTreeNodeFromImplicitAllowedTypes<T["info"]>]> : unknown;
|
|
1704
|
+
[NodeKind.Leaf]: unknown;
|
|
1637
1705
|
}[T["kind"]], false, {
|
|
1638
1706
|
[NodeKind.Object]: RestrictiveStringRecord<ImplicitFieldSchema>;
|
|
1639
1707
|
[NodeKind.Array]: ImplicitAllowedTypes;
|
|
1640
1708
|
[NodeKind.Map]: ImplicitAllowedTypes;
|
|
1641
|
-
|
|
1709
|
+
[NodeKind.Leaf]: unknown;
|
|
1710
|
+
}[T["kind"]]>;
|
|
1642
1711
|
|
|
1643
1712
|
// @alpha
|
|
1644
1713
|
export enum ValueSchema {
|
|
@@ -81,7 +81,9 @@ export abstract class ErasedType<out Name = unknown> {
|
|
|
81
81
|
type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result ? Result : Item;
|
|
82
82
|
|
|
83
83
|
// @public @system
|
|
84
|
-
type FieldHasDefault<T extends ImplicitFieldSchema> = T extends
|
|
84
|
+
type FieldHasDefault<T extends ImplicitFieldSchema> = [T] extends [
|
|
85
|
+
FieldSchema<FieldKind.Optional | FieldKind.Identifier>
|
|
86
|
+
] ? true : false;
|
|
85
87
|
|
|
86
88
|
// @public
|
|
87
89
|
export enum FieldKind {
|
|
@@ -380,7 +382,6 @@ export const IFluidLoadable: keyof IProvideFluidLoadable;
|
|
|
380
382
|
|
|
381
383
|
// @public @sealed
|
|
382
384
|
export interface IFluidLoadable extends IProvideFluidLoadable {
|
|
383
|
-
// (undocumented)
|
|
384
385
|
readonly handle: IFluidHandle;
|
|
385
386
|
}
|
|
386
387
|
|
|
@@ -420,12 +421,9 @@ type InsertableObjectFromSchemaRecord<T extends RestrictiveStringRecord<Implicit
|
|
|
420
421
|
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;
|
|
421
422
|
|
|
422
423
|
// @public @system
|
|
423
|
-
export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> =
|
|
424
|
-
readonly [
|
|
425
|
-
|
|
426
|
-
...infer Rest extends AllowedTypes
|
|
427
|
-
]
|
|
428
|
-
] ? InsertableTypedNode<TSchema> | InsertableTreeNodeFromAllowedTypes<Rest> : never;
|
|
424
|
+
export type InsertableTreeNodeFromAllowedTypes<TList extends AllowedTypes> = IsUnion<TList> extends true ? never : {
|
|
425
|
+
readonly [Property in keyof TList]: TList[Property] extends LazyItem<infer TSchema extends TreeNodeSchema> ? InsertableTypedNode<TSchema> : never;
|
|
426
|
+
}[number];
|
|
429
427
|
|
|
430
428
|
// @public
|
|
431
429
|
export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes> = [
|
|
@@ -453,8 +451,7 @@ declare namespace InternalTypes {
|
|
|
453
451
|
InsertableObjectFromSchemaRecord,
|
|
454
452
|
FlexList,
|
|
455
453
|
FlexListToUnion,
|
|
456
|
-
ExtractItemType
|
|
457
|
-
TreeApi
|
|
454
|
+
ExtractItemType
|
|
458
455
|
}
|
|
459
456
|
}
|
|
460
457
|
export { InternalTypes }
|
|
@@ -487,6 +484,9 @@ export function isFluidHandle(value: unknown): value is IFluidHandle;
|
|
|
487
484
|
// @public
|
|
488
485
|
export type IsListener<TListener> = TListener extends (...args: any[]) => void ? true : false;
|
|
489
486
|
|
|
487
|
+
// @public @system
|
|
488
|
+
export type IsUnion<T, T2 = T> = T extends unknown ? [T2] extends [T] ? false : true : "error";
|
|
489
|
+
|
|
490
490
|
// @public
|
|
491
491
|
export interface ITelemetryBaseProperties {
|
|
492
492
|
[index: string]: TelemetryBaseEventPropertyType | Tagged<TelemetryBaseEventPropertyType>;
|
|
@@ -764,14 +764,9 @@ export namespace System_Unsafe {
|
|
|
764
764
|
// @system
|
|
765
765
|
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;
|
|
766
766
|
// @system
|
|
767
|
-
export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> =
|
|
768
|
-
|
|
769
|
-
]
|
|
770
|
-
readonly [
|
|
771
|
-
LazyItem<infer TSchema extends TreeNodeSchemaUnsafe>,
|
|
772
|
-
...infer Rest extends AllowedTypesUnsafe
|
|
773
|
-
]
|
|
774
|
-
] ? InsertableTypedNodeUnsafe<TSchema> | InsertableTreeNodeFromAllowedTypesUnsafe<Rest> : never;
|
|
767
|
+
export type InsertableTreeNodeFromAllowedTypesUnsafe<TList extends AllowedTypesUnsafe> = IsUnion<TList> extends true ? never : {
|
|
768
|
+
readonly [Property in keyof TList]: TList[Property] extends LazyItem<infer TSchema extends TreeNodeSchemaUnsafe> ? InsertableTypedNodeUnsafe<TSchema> : never;
|
|
769
|
+
}[number];
|
|
775
770
|
// @system
|
|
776
771
|
export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends ImplicitAllowedTypesUnsafe> = [TSchema] extends [TreeNodeSchemaUnsafe] ? InsertableTypedNodeUnsafe<TSchema> : [TSchema] extends [AllowedTypesUnsafe] ? InsertableTreeNodeFromAllowedTypesUnsafe<TSchema> : never;
|
|
777
772
|
// @system
|
|
@@ -844,15 +839,15 @@ export type TransactionConstraint = NodeInDocumentConstraint;
|
|
|
844
839
|
// @public
|
|
845
840
|
export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void) => TThis;
|
|
846
841
|
|
|
847
|
-
// @public
|
|
848
|
-
export const Tree: TreeApi;
|
|
849
|
-
|
|
850
842
|
// @public @sealed @system
|
|
851
|
-
interface
|
|
843
|
+
export interface Tree extends TreeNodeApi {
|
|
852
844
|
contains(node: TreeNode, other: TreeNode): boolean;
|
|
853
845
|
readonly runTransaction: RunTransaction;
|
|
854
846
|
}
|
|
855
847
|
|
|
848
|
+
// @public
|
|
849
|
+
export const Tree: Tree;
|
|
850
|
+
|
|
856
851
|
// @public @sealed
|
|
857
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> {
|
|
858
853
|
insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
@@ -880,11 +875,14 @@ export const TreeArrayNode: {
|
|
|
880
875
|
readonly spread: <T>(content: Iterable<T>) => IterableTreeArrayContent<T>;
|
|
881
876
|
};
|
|
882
877
|
|
|
883
|
-
// @beta @sealed
|
|
884
|
-
export
|
|
885
|
-
on<K extends keyof TreeChangeEventsBeta<TNode>, TNode extends TreeNode>(node: TNode, eventName: K, listener: NoInfer<TreeChangeEventsBeta<TNode>[K]>): () => void;
|
|
878
|
+
// @beta @sealed @system
|
|
879
|
+
export interface TreeBeta {
|
|
886
880
|
clone<const TSchema extends ImplicitFieldSchema>(node: TreeFieldFromImplicitField<TSchema>): TreeFieldFromImplicitField<TSchema>;
|
|
887
|
-
|
|
881
|
+
on<K extends keyof TreeChangeEventsBeta<TNode>, TNode extends TreeNode>(node: TNode, eventName: K, listener: NoInfer<TreeChangeEventsBeta<TNode>[K]>): () => void;
|
|
882
|
+
}
|
|
883
|
+
|
|
884
|
+
// @beta
|
|
885
|
+
export const TreeBeta: TreeBeta;
|
|
888
886
|
|
|
889
887
|
// @public @sealed
|
|
890
888
|
export interface TreeChangeEvents {
|
|
@@ -1020,15 +1018,20 @@ export type Unhydrated<T> = T;
|
|
|
1020
1018
|
export type UnionToIntersection<T> = (T extends T ? (k: T) => unknown : never) extends (k: infer U) => unknown ? U : never;
|
|
1021
1019
|
|
|
1022
1020
|
// @public
|
|
1023
|
-
export type ValidateRecursiveSchema<T extends
|
|
1021
|
+
export type ValidateRecursiveSchema<T extends ValidateRecursiveSchemaTemplate<T>> = true;
|
|
1022
|
+
|
|
1023
|
+
// @public @system
|
|
1024
|
+
export type ValidateRecursiveSchemaTemplate<T extends TreeNodeSchema> = TreeNodeSchema<string, NodeKind.Array | NodeKind.Map | NodeKind.Object, TreeNode & WithType<T["identifier"], T["kind"]>, {
|
|
1024
1025
|
[NodeKind.Object]: T["info"] extends RestrictiveStringRecord<ImplicitFieldSchema> ? InsertableObjectFromSchemaRecord<T["info"]> : unknown;
|
|
1025
1026
|
[NodeKind.Array]: T["info"] extends ImplicitAllowedTypes ? Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T["info"]>> : unknown;
|
|
1026
1027
|
[NodeKind.Map]: T["info"] extends ImplicitAllowedTypes ? Iterable<[string, InsertableTreeNodeFromImplicitAllowedTypes<T["info"]>]> : unknown;
|
|
1028
|
+
[NodeKind.Leaf]: unknown;
|
|
1027
1029
|
}[T["kind"]], false, {
|
|
1028
1030
|
[NodeKind.Object]: RestrictiveStringRecord<ImplicitFieldSchema>;
|
|
1029
1031
|
[NodeKind.Array]: ImplicitAllowedTypes;
|
|
1030
1032
|
[NodeKind.Map]: ImplicitAllowedTypes;
|
|
1031
|
-
|
|
1033
|
+
[NodeKind.Leaf]: unknown;
|
|
1034
|
+
}[T["kind"]]>;
|
|
1032
1035
|
|
|
1033
1036
|
// @public @sealed @system
|
|
1034
1037
|
export interface ViewableTree {
|