fluid-framework 2.1.0-276985 → 2.1.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.
- package/CHANGELOG.md +47 -0
- package/README.md +53 -10
- package/api-extractor/api-extractor-lint-legacy.cjs.json +2 -1
- package/api-extractor/api-extractor-lint-legacy.esm.json +2 -1
- package/api-extractor/api-extractor-lint-public.cjs.json +2 -1
- package/api-extractor/api-extractor-lint-public.esm.json +2 -1
- package/api-extractor/api-extractor.current.json +6 -0
- package/api-extractor/api-extractor.legacy.json +1 -1
- package/api-extractor.json +1 -1
- package/api-report/fluid-framework.beta.api.md +3 -1
- package/api-report/fluid-framework.legacy.alpha.api.md +9 -9
- package/api-report/fluid-framework.legacy.public.api.md +930 -0
- package/api-report/fluid-framework.public.api.md +3 -1
- package/dist/legacy.d.ts +8 -1
- package/dist/public.d.ts +8 -1
- package/legacy.d.ts +1 -1
- package/lib/legacy.d.ts +8 -1
- package/lib/public.d.ts +8 -1
- package/package.json +27 -25
|
@@ -0,0 +1,930 @@
|
|
|
1
|
+
## Public API Report File for "fluid-framework"
|
|
2
|
+
|
|
3
|
+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
|
|
7
|
+
// @public
|
|
8
|
+
export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
|
|
9
|
+
|
|
10
|
+
// @public
|
|
11
|
+
type ApplyKind<T, Kind extends FieldKind, DefaultsAreOptional extends boolean> = {
|
|
12
|
+
[FieldKind.Required]: T;
|
|
13
|
+
[FieldKind.Optional]: T | undefined;
|
|
14
|
+
[FieldKind.Identifier]: DefaultsAreOptional extends true ? T | undefined : T;
|
|
15
|
+
}[Kind];
|
|
16
|
+
|
|
17
|
+
// @public
|
|
18
|
+
export enum AttachState {
|
|
19
|
+
Attached = "Attached",
|
|
20
|
+
Attaching = "Attaching",
|
|
21
|
+
Detached = "Detached"
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// @public
|
|
25
|
+
export enum CommitKind {
|
|
26
|
+
Default = 0,
|
|
27
|
+
Redo = 2,
|
|
28
|
+
Undo = 1
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// @public @sealed
|
|
32
|
+
export interface CommitMetadata {
|
|
33
|
+
readonly isLocal: boolean;
|
|
34
|
+
readonly kind: CommitKind;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// @public
|
|
38
|
+
export enum ConnectionState {
|
|
39
|
+
CatchingUp = 1,
|
|
40
|
+
Connected = 2,
|
|
41
|
+
Disconnected = 0,
|
|
42
|
+
EstablishingConnection = 3
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// @public
|
|
46
|
+
export namespace ConnectionStateType {
|
|
47
|
+
export type CatchingUp = 1;
|
|
48
|
+
export type Connected = 2;
|
|
49
|
+
export type Disconnected = 0;
|
|
50
|
+
export type EstablishingConnection = 3;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// @public
|
|
54
|
+
export type ConnectionStateType = ConnectionStateType.Disconnected | ConnectionStateType.EstablishingConnection | ConnectionStateType.CatchingUp | ConnectionStateType.Connected;
|
|
55
|
+
|
|
56
|
+
// @public
|
|
57
|
+
export type ContainerAttachProps<T = unknown> = T;
|
|
58
|
+
|
|
59
|
+
// @public
|
|
60
|
+
export interface ContainerSchema {
|
|
61
|
+
readonly dynamicObjectTypes?: readonly SharedObjectKind[];
|
|
62
|
+
readonly initialObjects: Record<string, SharedObjectKind>;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// @public @sealed
|
|
66
|
+
interface DefaultProvider extends ErasedType<"@fluidframework/tree.FieldProvider"> {
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// @public @sealed
|
|
70
|
+
export abstract class ErasedType<out Name = unknown> {
|
|
71
|
+
static [Symbol.hasInstance](value: never): value is never;
|
|
72
|
+
protected abstract brand(dummy: never): Name;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// @public
|
|
76
|
+
type ExtractItemType<Item extends LazyItem> = Item extends () => infer Result ? Result : Item;
|
|
77
|
+
|
|
78
|
+
// @public
|
|
79
|
+
type FieldHasDefault<T extends ImplicitFieldSchema> = T extends FieldSchema<FieldKind.Optional | FieldKind.Identifier> ? true : false;
|
|
80
|
+
|
|
81
|
+
// @public @sealed
|
|
82
|
+
type FieldHasDefaultUnsafe<T extends Unenforced<ImplicitFieldSchema>> = T extends FieldSchemaUnsafe<FieldKind.Optional | FieldKind.Identifier, Unenforced<ImplicitAllowedTypes>> ? true : false;
|
|
83
|
+
|
|
84
|
+
// @public
|
|
85
|
+
export enum FieldKind {
|
|
86
|
+
Identifier = 2,
|
|
87
|
+
Optional = 0,
|
|
88
|
+
Required = 1
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
// @public
|
|
92
|
+
export interface FieldProps {
|
|
93
|
+
readonly defaultProvider?: DefaultProvider;
|
|
94
|
+
readonly key?: string;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
// @public @sealed
|
|
98
|
+
export class FieldSchema<out Kind extends FieldKind = FieldKind, out Types extends ImplicitAllowedTypes = ImplicitAllowedTypes> {
|
|
99
|
+
readonly allowedTypes: Types;
|
|
100
|
+
get allowedTypeSet(): ReadonlySet<TreeNodeSchema>;
|
|
101
|
+
readonly kind: Kind;
|
|
102
|
+
readonly props?: FieldProps | undefined;
|
|
103
|
+
protected _typeCheck?: MakeNominal;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// @public
|
|
107
|
+
export interface FieldSchemaUnsafe<out Kind extends FieldKind, out Types extends Unenforced<ImplicitAllowedTypes>> extends FieldSchema<Kind, any> {
|
|
108
|
+
readonly allowedTypes: Types;
|
|
109
|
+
readonly allowedTypeSet: ReadonlySet<TreeNodeSchema>;
|
|
110
|
+
readonly kind: Kind;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// @public
|
|
114
|
+
type FlattenKeys<T> = [{
|
|
115
|
+
[Property in keyof T]: T[Property];
|
|
116
|
+
}][_InlineTrick];
|
|
117
|
+
|
|
118
|
+
// @public
|
|
119
|
+
type FlexList<Item = unknown> = readonly LazyItem<Item>[];
|
|
120
|
+
|
|
121
|
+
// @public
|
|
122
|
+
type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;
|
|
123
|
+
|
|
124
|
+
// @public
|
|
125
|
+
export type FluidObject<T = unknown> = {
|
|
126
|
+
[P in FluidObjectProviderKeys<T>]?: T[P];
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
// @public
|
|
130
|
+
export type FluidObjectProviderKeys<T, TProp extends keyof T = keyof T> = string extends TProp ? never : number extends TProp ? never : TProp extends keyof Required<T>[TProp] ? Required<T>[TProp] extends Required<Required<T>[TProp]>[TProp] ? TProp : never : never;
|
|
131
|
+
|
|
132
|
+
// @public
|
|
133
|
+
export interface IConnection {
|
|
134
|
+
readonly id: string;
|
|
135
|
+
readonly mode: "write" | "read";
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
// @public
|
|
139
|
+
export type ICriticalContainerError = IErrorBase;
|
|
140
|
+
|
|
141
|
+
// @public @sealed
|
|
142
|
+
export interface IDirectory extends Map<string, any>, IEventProvider<IDirectoryEvents>, Partial<IDisposable> {
|
|
143
|
+
readonly absolutePath: string;
|
|
144
|
+
countSubDirectory?(): number;
|
|
145
|
+
createSubDirectory(subdirName: string): IDirectory;
|
|
146
|
+
deleteSubDirectory(subdirName: string): boolean;
|
|
147
|
+
get<T = any>(key: string): T | undefined;
|
|
148
|
+
getSubDirectory(subdirName: string): IDirectory | undefined;
|
|
149
|
+
getWorkingDirectory(relativePath: string): IDirectory | undefined;
|
|
150
|
+
hasSubDirectory(subdirName: string): boolean;
|
|
151
|
+
set<T = unknown>(key: string, value: T): this;
|
|
152
|
+
subdirectories(): IterableIterator<[string, IDirectory]>;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
// @public @sealed
|
|
156
|
+
export interface IDirectoryEvents extends IEvent {
|
|
157
|
+
(event: "containedValueChanged", listener: (changed: IValueChanged, local: boolean, target: IEventThisPlaceHolder) => void): any;
|
|
158
|
+
(event: "subDirectoryCreated", listener: (path: string, local: boolean, target: IEventThisPlaceHolder) => void): any;
|
|
159
|
+
(event: "subDirectoryDeleted", listener: (path: string, local: boolean, target: IEventThisPlaceHolder) => void): any;
|
|
160
|
+
(event: "disposed", listener: (target: IEventThisPlaceHolder) => void): any;
|
|
161
|
+
(event: "undisposed", listener: (target: IEventThisPlaceHolder) => void): any;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// @public @sealed
|
|
165
|
+
export interface IDirectoryValueChanged extends IValueChanged {
|
|
166
|
+
path: string;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// @public @sealed
|
|
170
|
+
export interface IDisposable {
|
|
171
|
+
dispose(error?: Error): void;
|
|
172
|
+
readonly disposed: boolean;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
// @public
|
|
176
|
+
export interface IErrorBase extends Partial<Error> {
|
|
177
|
+
readonly errorType: string;
|
|
178
|
+
getTelemetryProperties?(): ITelemetryBaseProperties;
|
|
179
|
+
readonly message: string;
|
|
180
|
+
readonly name?: string;
|
|
181
|
+
readonly stack?: string;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
// @public
|
|
185
|
+
export interface IErrorEvent extends IEvent {
|
|
186
|
+
// @eventProperty
|
|
187
|
+
(event: "error", listener: (message: any) => void): any;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
// @public
|
|
191
|
+
export interface IEvent {
|
|
192
|
+
// @eventProperty
|
|
193
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
// @public @sealed
|
|
197
|
+
export interface IEventProvider<TEvent extends IEvent> {
|
|
198
|
+
readonly off: IEventTransformer<this, TEvent>;
|
|
199
|
+
readonly on: IEventTransformer<this, TEvent>;
|
|
200
|
+
readonly once: IEventTransformer<this, TEvent>;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
// @public
|
|
204
|
+
export type IEventThisPlaceHolder = {
|
|
205
|
+
thisPlaceHolder: "thisPlaceHolder";
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
// @public
|
|
209
|
+
export type IEventTransformer<TThis, TEvent extends IEvent> = TEvent extends {
|
|
210
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
211
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
212
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
213
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
214
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
215
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
216
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
217
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
218
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
219
|
+
(event: infer E9, listener: (...args: infer A9) => void): any;
|
|
220
|
+
(event: infer E10, listener: (...args: infer A10) => void): any;
|
|
221
|
+
(event: infer E11, listener: (...args: infer A11) => void): any;
|
|
222
|
+
(event: infer E12, listener: (...args: infer A12) => void): any;
|
|
223
|
+
(event: infer E13, listener: (...args: infer A13) => void): any;
|
|
224
|
+
(event: infer E14, listener: (...args: infer A14) => void): any;
|
|
225
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
226
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> & TransformedEvent<TThis, E9, A9> & TransformedEvent<TThis, E10, A10> & TransformedEvent<TThis, E11, A11> & TransformedEvent<TThis, E12, A12> & TransformedEvent<TThis, E13, A13> & TransformedEvent<TThis, E14, A14> : TEvent extends {
|
|
227
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
228
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
229
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
230
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
231
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
232
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
233
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
234
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
235
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
236
|
+
(event: infer E9, listener: (...args: infer A9) => void): any;
|
|
237
|
+
(event: infer E10, listener: (...args: infer A10) => void): any;
|
|
238
|
+
(event: infer E11, listener: (...args: infer A11) => void): any;
|
|
239
|
+
(event: infer E12, listener: (...args: infer A12) => void): any;
|
|
240
|
+
(event: infer E13, listener: (...args: infer A13) => void): any;
|
|
241
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
242
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> & TransformedEvent<TThis, E9, A9> & TransformedEvent<TThis, E10, A10> & TransformedEvent<TThis, E11, A11> & TransformedEvent<TThis, E12, A12> & TransformedEvent<TThis, E13, A13> : TEvent extends {
|
|
243
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
244
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
245
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
246
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
247
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
248
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
249
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
250
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
251
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
252
|
+
(event: infer E9, listener: (...args: infer A9) => void): any;
|
|
253
|
+
(event: infer E10, listener: (...args: infer A10) => void): any;
|
|
254
|
+
(event: infer E11, listener: (...args: infer A11) => void): any;
|
|
255
|
+
(event: infer E12, listener: (...args: infer A12) => void): any;
|
|
256
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
257
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> & TransformedEvent<TThis, E9, A9> & TransformedEvent<TThis, E10, A10> & TransformedEvent<TThis, E11, A11> & TransformedEvent<TThis, E12, A12> : TEvent extends {
|
|
258
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
259
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
260
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
261
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
262
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
263
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
264
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
265
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
266
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
267
|
+
(event: infer E9, listener: (...args: infer A9) => void): any;
|
|
268
|
+
(event: infer E10, listener: (...args: infer A10) => void): any;
|
|
269
|
+
(event: infer E11, listener: (...args: infer A11) => void): any;
|
|
270
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
271
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> & TransformedEvent<TThis, E9, A9> & TransformedEvent<TThis, E10, A10> & TransformedEvent<TThis, E11, A11> : TEvent extends {
|
|
272
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
273
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
274
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
275
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
276
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
277
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
278
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
279
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
280
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
281
|
+
(event: infer E9, listener: (...args: infer A9) => void): any;
|
|
282
|
+
(event: infer E10, listener: (...args: infer A10) => void): any;
|
|
283
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
284
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> & TransformedEvent<TThis, E9, A9> & TransformedEvent<TThis, E10, A10> : TEvent extends {
|
|
285
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
286
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
287
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
288
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
289
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
290
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
291
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
292
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
293
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
294
|
+
(event: infer E9, listener: (...args: infer A9) => void): any;
|
|
295
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
296
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> & TransformedEvent<TThis, E9, A9> : TEvent extends {
|
|
297
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
298
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
299
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
300
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
301
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
302
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
303
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
304
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
305
|
+
(event: infer E8, listener: (...args: infer A8) => void): any;
|
|
306
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
307
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> & TransformedEvent<TThis, E8, A8> : TEvent extends {
|
|
308
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
309
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
310
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
311
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
312
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
313
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
314
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
315
|
+
(event: infer E7, listener: (...args: infer A7) => void): any;
|
|
316
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
317
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> & TransformedEvent<TThis, E7, A7> : TEvent extends {
|
|
318
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
319
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
320
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
321
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
322
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
323
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
324
|
+
(event: infer E6, listener: (...args: infer A6) => void): any;
|
|
325
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
326
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> & TransformedEvent<TThis, E6, A6> : TEvent extends {
|
|
327
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
328
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
329
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
330
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
331
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
332
|
+
(event: infer E5, listener: (...args: infer A5) => void): any;
|
|
333
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
334
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> & TransformedEvent<TThis, E5, A5> : TEvent extends {
|
|
335
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
336
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
337
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
338
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
339
|
+
(event: infer E4, listener: (...args: infer A4) => void): any;
|
|
340
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
341
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> & TransformedEvent<TThis, E4, A4> : TEvent extends {
|
|
342
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
343
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
344
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
345
|
+
(event: infer E3, listener: (...args: infer A3) => void): any;
|
|
346
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
347
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> & TransformedEvent<TThis, E3, A3> : TEvent extends {
|
|
348
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
349
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
350
|
+
(event: infer E2, listener: (...args: infer A2) => void): any;
|
|
351
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
352
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> & TransformedEvent<TThis, E2, A2> : TEvent extends {
|
|
353
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
354
|
+
(event: infer E1, listener: (...args: infer A1) => void): any;
|
|
355
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
356
|
+
} ? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1> : TEvent extends {
|
|
357
|
+
(event: infer E0, listener: (...args: infer A0) => void): any;
|
|
358
|
+
(event: string, listener: (...args: any[]) => void): any;
|
|
359
|
+
} ? TransformedEvent<TThis, E0, A0> : TransformedEvent<TThis, string, any[]>;
|
|
360
|
+
|
|
361
|
+
// @public @sealed
|
|
362
|
+
export interface IFluidContainer<TContainerSchema extends ContainerSchema = ContainerSchema> extends IEventProvider<IFluidContainerEvents> {
|
|
363
|
+
attach(props?: ContainerAttachProps): Promise<string>;
|
|
364
|
+
readonly attachState: AttachState;
|
|
365
|
+
connect(): void;
|
|
366
|
+
readonly connectionState: ConnectionStateType;
|
|
367
|
+
create<T extends IFluidLoadable>(objectClass: SharedObjectKind<T>): Promise<T>;
|
|
368
|
+
disconnect(): void;
|
|
369
|
+
dispose(): void;
|
|
370
|
+
readonly disposed: boolean;
|
|
371
|
+
readonly initialObjects: InitialObjects<TContainerSchema>;
|
|
372
|
+
readonly isDirty: boolean;
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
// @public @sealed
|
|
376
|
+
export interface IFluidContainerEvents extends IEvent {
|
|
377
|
+
(event: "connected", listener: () => void): void;
|
|
378
|
+
(event: "disconnected", listener: () => void): void;
|
|
379
|
+
(event: "saved", listener: () => void): void;
|
|
380
|
+
(event: "dirty", listener: () => void): void;
|
|
381
|
+
(event: "disposed", listener: (error?: ICriticalContainerError) => void): any;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
// @public (undocumented)
|
|
385
|
+
export const IFluidHandle = "IFluidHandle";
|
|
386
|
+
|
|
387
|
+
// @public @sealed
|
|
388
|
+
export interface IFluidHandle<out T = unknown> {
|
|
389
|
+
readonly [fluidHandleSymbol]: IFluidHandleErased<T>;
|
|
390
|
+
get(): Promise<T>;
|
|
391
|
+
readonly isAttached: boolean;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
// @public @sealed
|
|
395
|
+
export interface IFluidHandleErased<T> extends ErasedType<readonly ["IFluidHandle", T]> {
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
// @public (undocumented)
|
|
399
|
+
export const IFluidLoadable: keyof IProvideFluidLoadable;
|
|
400
|
+
|
|
401
|
+
// @public @sealed
|
|
402
|
+
export interface IFluidLoadable extends IProvideFluidLoadable {
|
|
403
|
+
// (undocumented)
|
|
404
|
+
readonly handle: IFluidHandle;
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
// @public
|
|
408
|
+
export interface IMember {
|
|
409
|
+
readonly connections: IConnection[];
|
|
410
|
+
readonly id: string;
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
// @public
|
|
414
|
+
export type ImplicitAllowedTypes = AllowedTypes | TreeNodeSchema;
|
|
415
|
+
|
|
416
|
+
// @public
|
|
417
|
+
export type ImplicitFieldSchema = FieldSchema | ImplicitAllowedTypes;
|
|
418
|
+
|
|
419
|
+
// @public
|
|
420
|
+
export type InitialObjects<T extends ContainerSchema> = {
|
|
421
|
+
[K in keyof T["initialObjects"]]: T["initialObjects"][K] extends SharedObjectKind<infer TChannel> ? TChannel : never;
|
|
422
|
+
};
|
|
423
|
+
|
|
424
|
+
// @public
|
|
425
|
+
type _InlineTrick = 0;
|
|
426
|
+
|
|
427
|
+
// @public
|
|
428
|
+
type InsertableObjectFromSchemaRecord<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>> = FlattenKeys<{
|
|
429
|
+
readonly [Property in keyof T]?: InsertableTreeFieldFromImplicitField<T[Property]>;
|
|
430
|
+
} & {
|
|
431
|
+
readonly [Property in keyof T as FieldHasDefault<T[Property]> extends false ? Property : never]: InsertableTreeFieldFromImplicitField<T[Property]>;
|
|
432
|
+
}>;
|
|
433
|
+
|
|
434
|
+
// @public
|
|
435
|
+
export type InsertableObjectFromSchemaRecordUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>> = {
|
|
436
|
+
readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property]>;
|
|
437
|
+
} & {
|
|
438
|
+
readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property]> extends true ? Property : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property]>;
|
|
439
|
+
};
|
|
440
|
+
|
|
441
|
+
// @public
|
|
442
|
+
export type InsertableTreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<InsertableTreeNodeFromImplicitAllowedTypes<Types>, Kind, true> : TSchema extends ImplicitAllowedTypes ? InsertableTreeNodeFromImplicitAllowedTypes<TSchema> : unknown;
|
|
443
|
+
|
|
444
|
+
// @public
|
|
445
|
+
export type InsertableTreeFieldFromImplicitFieldUnsafe<TSchema extends Unenforced<ImplicitFieldSchema>> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, true> : InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema>;
|
|
446
|
+
|
|
447
|
+
// @public
|
|
448
|
+
export type InsertableTreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? InsertableTypedNode<TSchema> : TSchema extends AllowedTypes ? InsertableTypedNode<FlexListToUnion<TSchema>> : never;
|
|
449
|
+
|
|
450
|
+
// @public
|
|
451
|
+
export type InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends Unenforced<ImplicitAllowedTypes>> = TSchema extends AllowedTypes ? InsertableTypedNodeUnsafe<FlexListToUnion<TSchema>> : InsertableTypedNodeUnsafe<TSchema>;
|
|
452
|
+
|
|
453
|
+
// @public
|
|
454
|
+
export type InsertableTypedNode<T extends TreeNodeSchema> = (T extends {
|
|
455
|
+
implicitlyConstructable: true;
|
|
456
|
+
} ? NodeBuilderData<T> : never) | Unhydrated<NodeFromSchema<T>>;
|
|
457
|
+
|
|
458
|
+
// @public
|
|
459
|
+
type InsertableTypedNodeUnsafe<T extends Unenforced<TreeNodeSchema>> = [
|
|
460
|
+
Unhydrated<NodeFromSchemaUnsafe<T>> | (T extends {
|
|
461
|
+
implicitlyConstructable: true;
|
|
462
|
+
} ? NodeBuilderDataUnsafe<T> : never)
|
|
463
|
+
][_InlineTrick];
|
|
464
|
+
|
|
465
|
+
// @public @sealed
|
|
466
|
+
export interface InternalTreeNode extends ErasedType<"@fluidframework/tree.InternalTreeNode"> {
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
declare namespace InternalTypes {
|
|
470
|
+
export {
|
|
471
|
+
_InlineTrick,
|
|
472
|
+
FlattenKeys,
|
|
473
|
+
ApplyKind,
|
|
474
|
+
NodeBuilderData,
|
|
475
|
+
FieldHasDefault,
|
|
476
|
+
TreeNodeSchemaNonClass,
|
|
477
|
+
TreeArrayNodeBase,
|
|
478
|
+
ScopedSchemaName,
|
|
479
|
+
DefaultProvider,
|
|
480
|
+
typeNameSymbol,
|
|
481
|
+
InsertableObjectFromSchemaRecord,
|
|
482
|
+
ObjectFromSchemaRecord,
|
|
483
|
+
FieldHasDefaultUnsafe,
|
|
484
|
+
ObjectFromSchemaRecordUnsafe,
|
|
485
|
+
TreeObjectNodeUnsafe,
|
|
486
|
+
TreeFieldFromImplicitFieldUnsafe,
|
|
487
|
+
TreeNodeFromImplicitAllowedTypesUnsafe,
|
|
488
|
+
InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
|
|
489
|
+
TreeArrayNodeUnsafe,
|
|
490
|
+
TreeMapNodeUnsafe,
|
|
491
|
+
InsertableObjectFromSchemaRecordUnsafe,
|
|
492
|
+
InsertableTreeFieldFromImplicitFieldUnsafe,
|
|
493
|
+
InsertableTypedNodeUnsafe,
|
|
494
|
+
NodeBuilderDataUnsafe,
|
|
495
|
+
NodeFromSchemaUnsafe,
|
|
496
|
+
FlexList,
|
|
497
|
+
FlexListToUnion,
|
|
498
|
+
ExtractItemType,
|
|
499
|
+
TreeApi
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
export { InternalTypes }
|
|
503
|
+
|
|
504
|
+
// @public (undocumented)
|
|
505
|
+
export interface IProvideFluidLoadable {
|
|
506
|
+
// (undocumented)
|
|
507
|
+
readonly IFluidLoadable: IFluidLoadable;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
// @public
|
|
511
|
+
export interface IServiceAudience<M extends IMember> extends IEventProvider<IServiceAudienceEvents<M>> {
|
|
512
|
+
getMembers(): ReadonlyMap<string, M>;
|
|
513
|
+
getMyself(): Myself<M> | undefined;
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
// @public
|
|
517
|
+
export interface IServiceAudienceEvents<M extends IMember> extends IEvent {
|
|
518
|
+
// @eventProperty
|
|
519
|
+
(event: "membersChanged", listener: () => void): void;
|
|
520
|
+
// @eventProperty
|
|
521
|
+
(event: "memberAdded", listener: MemberChangedListener<M>): void;
|
|
522
|
+
// @eventProperty
|
|
523
|
+
(event: "memberRemoved", listener: MemberChangedListener<M>): void;
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
// @public
|
|
527
|
+
export type IsListener<TListener> = TListener extends (...args: any[]) => void ? true : false;
|
|
528
|
+
|
|
529
|
+
// @public
|
|
530
|
+
export interface ITelemetryBaseProperties {
|
|
531
|
+
[index: string]: TelemetryBaseEventPropertyType | Tagged<TelemetryBaseEventPropertyType>;
|
|
532
|
+
}
|
|
533
|
+
|
|
534
|
+
// @public @sealed
|
|
535
|
+
export class IterableTreeArrayContent<T> implements Iterable<T> {
|
|
536
|
+
[Symbol.iterator](): Iterator<T>;
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
// @public @sealed
|
|
540
|
+
export interface ITree extends IFluidLoadable {
|
|
541
|
+
viewWith<TRoot extends ImplicitFieldSchema>(config: TreeViewConfiguration<TRoot>): TreeView<TRoot>;
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
// @public
|
|
545
|
+
export interface ITreeConfigurationOptions {
|
|
546
|
+
enableSchemaValidation?: boolean;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
// @public
|
|
550
|
+
export interface ITreeViewConfiguration<TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> {
|
|
551
|
+
readonly enableSchemaValidation?: boolean;
|
|
552
|
+
readonly schema: TSchema;
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
// @public @sealed
|
|
556
|
+
export interface IValueChanged {
|
|
557
|
+
readonly key: string;
|
|
558
|
+
readonly previousValue: any;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
// @public
|
|
562
|
+
export type LazyItem<Item = unknown> = Item | (() => Item);
|
|
563
|
+
|
|
564
|
+
// @public @sealed
|
|
565
|
+
export interface Listenable<TListeners extends object> {
|
|
566
|
+
on<K extends keyof Listeners<TListeners>>(eventName: K, listener: TListeners[K]): Off;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
// @public
|
|
570
|
+
export type Listeners<T extends object> = {
|
|
571
|
+
[P in (string | symbol) & keyof T as IsListener<T[P]> extends true ? P : never]: T[P];
|
|
572
|
+
};
|
|
573
|
+
|
|
574
|
+
// @public @sealed
|
|
575
|
+
export interface MakeNominal {
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
// @public
|
|
579
|
+
export type MemberChangedListener<M extends IMember> = (clientId: string, member: M) => void;
|
|
580
|
+
|
|
581
|
+
// @public
|
|
582
|
+
export type Myself<M extends IMember = IMember> = M & {
|
|
583
|
+
readonly currentConnection: string;
|
|
584
|
+
};
|
|
585
|
+
|
|
586
|
+
// @public
|
|
587
|
+
type NodeBuilderData<T extends TreeNodeSchema> = T extends TreeNodeSchema<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
|
|
588
|
+
|
|
589
|
+
// @public
|
|
590
|
+
type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchema<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
|
|
591
|
+
|
|
592
|
+
// @public
|
|
593
|
+
export type NodeFromSchema<T extends TreeNodeSchema> = T extends TreeNodeSchema<string, NodeKind, infer TNode> ? TNode : never;
|
|
594
|
+
|
|
595
|
+
// @public
|
|
596
|
+
type NodeFromSchemaUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchema<string, NodeKind, infer TNode> ? TNode : never;
|
|
597
|
+
|
|
598
|
+
// @public
|
|
599
|
+
export interface NodeInDocumentConstraint {
|
|
600
|
+
// (undocumented)
|
|
601
|
+
readonly node: TreeNode;
|
|
602
|
+
// (undocumented)
|
|
603
|
+
readonly type: "nodeInDocument";
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
// @public
|
|
607
|
+
export enum NodeKind {
|
|
608
|
+
Array = 1,
|
|
609
|
+
Leaf = 3,
|
|
610
|
+
Map = 0,
|
|
611
|
+
Object = 2
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
// @public
|
|
615
|
+
type ObjectFromSchemaRecord<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>> = {
|
|
616
|
+
-readonly [Property in keyof T]: TreeFieldFromImplicitField<T[Property]>;
|
|
617
|
+
};
|
|
618
|
+
|
|
619
|
+
// @public
|
|
620
|
+
type ObjectFromSchemaRecordUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>> = {
|
|
621
|
+
-readonly [Property in keyof T]: TreeFieldFromImplicitFieldUnsafe<T[Property]>;
|
|
622
|
+
};
|
|
623
|
+
|
|
624
|
+
// @public
|
|
625
|
+
export type Off = () => void;
|
|
626
|
+
|
|
627
|
+
// @public
|
|
628
|
+
export type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[] ? {
|
|
629
|
+
[K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K];
|
|
630
|
+
} : L;
|
|
631
|
+
|
|
632
|
+
// @public
|
|
633
|
+
export type RestrictiveReadonlyRecord<K extends symbol | string, T> = {
|
|
634
|
+
readonly [P in symbol | string]: P extends K ? T : never;
|
|
635
|
+
};
|
|
636
|
+
|
|
637
|
+
// @public @sealed
|
|
638
|
+
export interface Revertible {
|
|
639
|
+
dispose(): void;
|
|
640
|
+
revert(): void;
|
|
641
|
+
revert(dispose: boolean): void;
|
|
642
|
+
readonly status: RevertibleStatus;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
// @public @sealed
|
|
646
|
+
export type RevertibleFactory = (onRevertibleDisposed?: (revertible: Revertible) => void) => Revertible;
|
|
647
|
+
|
|
648
|
+
// @public
|
|
649
|
+
export enum RevertibleStatus {
|
|
650
|
+
Disposed = 1,
|
|
651
|
+
Valid = 0
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
// @public
|
|
655
|
+
export const rollback: unique symbol;
|
|
656
|
+
|
|
657
|
+
// @public @sealed
|
|
658
|
+
export interface RunTransaction {
|
|
659
|
+
<TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult): TResult;
|
|
660
|
+
<TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult): TResult;
|
|
661
|
+
<TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult | typeof rollback): TResult | typeof rollback;
|
|
662
|
+
<TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult | typeof rollback): TResult | typeof rollback;
|
|
663
|
+
<TNode extends TreeNode>(node: TNode, transaction: (node: TNode) => void): void;
|
|
664
|
+
<TView extends TreeView<ImplicitFieldSchema>>(tree: TView, transaction: (root: TView["root"]) => void): void;
|
|
665
|
+
<TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult, preconditions?: readonly TransactionConstraint[]): TResult;
|
|
666
|
+
<TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult, preconditions?: readonly TransactionConstraint[]): TResult;
|
|
667
|
+
<TNode extends TreeNode, TResult>(node: TNode, transaction: (node: TNode) => TResult | typeof rollback, preconditions?: readonly TransactionConstraint[]): TResult | typeof rollback;
|
|
668
|
+
<TView extends TreeView<ImplicitFieldSchema>, TResult>(tree: TView, transaction: (root: TView["root"]) => TResult | typeof rollback, preconditions?: readonly TransactionConstraint[]): TResult | typeof rollback;
|
|
669
|
+
<TNode extends TreeNode>(node: TNode, transaction: (node: TNode) => void, preconditions?: readonly TransactionConstraint[]): void;
|
|
670
|
+
<TView extends TreeView<ImplicitFieldSchema>>(tree: TView, transaction: (root: TView["root"]) => void, preconditions?: readonly TransactionConstraint[]): void;
|
|
671
|
+
readonly rollback: typeof rollback;
|
|
672
|
+
}
|
|
673
|
+
|
|
674
|
+
// @public @sealed
|
|
675
|
+
export interface SchemaCompatibilityStatus {
|
|
676
|
+
readonly canInitialize: boolean;
|
|
677
|
+
readonly canUpgrade: boolean;
|
|
678
|
+
readonly canView: boolean;
|
|
679
|
+
readonly isEquivalent: boolean;
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
// @public @sealed
|
|
683
|
+
export class SchemaFactory<out TScope extends string | undefined = string | undefined, TName extends number | string = string> {
|
|
684
|
+
constructor(scope: TScope);
|
|
685
|
+
array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
|
|
686
|
+
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>>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
|
|
687
|
+
arrayRecursive<const Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>>, {
|
|
688
|
+
[Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
|
|
689
|
+
}, false, T>;
|
|
690
|
+
readonly boolean: TreeNodeSchema<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean>;
|
|
691
|
+
readonly handle: TreeNodeSchema<"com.fluidframework.leaf.handle", NodeKind.Leaf, IFluidHandle<unknown>, IFluidHandle<unknown>>;
|
|
692
|
+
get identifier(): FieldSchema<FieldKind.Identifier, typeof SchemaFactory.string>;
|
|
693
|
+
map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>>, Iterable<[string, InsertableTreeNodeFromImplicitAllowedTypes<T>]>, true, T>;
|
|
694
|
+
map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>>, Iterable<[string, InsertableTreeNodeFromImplicitAllowedTypes<T>]>, true, T>;
|
|
695
|
+
mapRecursive<Name extends TName, const T extends Unenforced<ImplicitAllowedTypes>>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>>, {
|
|
696
|
+
[Symbol.iterator](): Iterator<[
|
|
697
|
+
string,
|
|
698
|
+
InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
|
|
699
|
+
]>;
|
|
700
|
+
}, false, T>;
|
|
701
|
+
readonly null: TreeNodeSchema<"com.fluidframework.leaf.null", NodeKind.Leaf, null, null>;
|
|
702
|
+
readonly number: TreeNodeSchema<"com.fluidframework.leaf.number", NodeKind.Leaf, number, number>;
|
|
703
|
+
object<const Name extends TName, const T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>(name: Name, fields: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T>;
|
|
704
|
+
objectRecursive<const Name extends TName, const T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>>(name: Name, t: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & { readonly [Property in keyof T as FieldHasDefaultUnsafe<T[Property]> extends false ? Property : never]: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property]>; } & { readonly [Property_1 in keyof T as FieldHasDefaultUnsafe<T[Property_1]> extends true ? Property_1 : never]?: InsertableTreeFieldFromImplicitFieldUnsafe<T[Property_1]> | undefined; }, false, T>;
|
|
705
|
+
optional<const T extends ImplicitAllowedTypes>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchema<FieldKind.Optional, T>;
|
|
706
|
+
optionalRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Optional, T>;
|
|
707
|
+
required<const T extends ImplicitAllowedTypes>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchema<FieldKind.Required, T>;
|
|
708
|
+
requiredRecursive<const T extends Unenforced<ImplicitAllowedTypes>>(t: T, props?: Omit<FieldProps, "defaultProvider">): FieldSchemaUnsafe<FieldKind.Required, T>;
|
|
709
|
+
// (undocumented)
|
|
710
|
+
readonly scope: TScope;
|
|
711
|
+
readonly string: TreeNodeSchema<"com.fluidframework.leaf.string", NodeKind.Leaf, string, string>;
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
// @public
|
|
715
|
+
type ScopedSchemaName<TScope extends string | undefined, TName extends number | string> = TScope extends undefined ? `${TName}` : `${TScope}.${TName}`;
|
|
716
|
+
|
|
717
|
+
// @public @sealed
|
|
718
|
+
export interface SharedObjectKind<out TSharedObject = unknown> extends ErasedType<readonly ["SharedObjectKind", TSharedObject]> {
|
|
719
|
+
is(value: IFluidLoadable): value is IFluidLoadable & TSharedObject;
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
// @public
|
|
723
|
+
export const SharedTree: SharedObjectKind<ITree>;
|
|
724
|
+
|
|
725
|
+
// @public
|
|
726
|
+
export interface Tagged<V, T extends string = string> {
|
|
727
|
+
// (undocumented)
|
|
728
|
+
tag: T;
|
|
729
|
+
// (undocumented)
|
|
730
|
+
value: V;
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
// @public
|
|
734
|
+
export type TelemetryBaseEventPropertyType = string | number | boolean | undefined;
|
|
735
|
+
|
|
736
|
+
// @public
|
|
737
|
+
export type TransactionConstraint = NodeInDocumentConstraint;
|
|
738
|
+
|
|
739
|
+
// @public
|
|
740
|
+
export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void) => TThis;
|
|
741
|
+
|
|
742
|
+
// @public
|
|
743
|
+
export const Tree: TreeApi;
|
|
744
|
+
|
|
745
|
+
// @public @sealed
|
|
746
|
+
interface TreeApi extends TreeNodeApi {
|
|
747
|
+
contains(node: TreeNode, other: TreeNode): boolean;
|
|
748
|
+
readonly runTransaction: RunTransaction;
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
// @public @sealed
|
|
752
|
+
export interface TreeArrayNode<TAllowedTypes extends ImplicitAllowedTypes = ImplicitAllowedTypes> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypes<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypes<TAllowedTypes>, TreeArrayNode> {
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
// @public
|
|
756
|
+
export const TreeArrayNode: {
|
|
757
|
+
readonly spread: <T>(content: Iterable<T>) => IterableTreeArrayContent<T>;
|
|
758
|
+
};
|
|
759
|
+
|
|
760
|
+
// @public @sealed
|
|
761
|
+
interface TreeArrayNodeBase<out T, in TNew, in TMoveFrom> extends ReadonlyArray<T>, TreeNode {
|
|
762
|
+
insertAt(index: number, ...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
763
|
+
insertAtEnd(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
764
|
+
insertAtStart(...value: readonly (TNew | IterableTreeArrayContent<TNew>)[]): void;
|
|
765
|
+
moveRangeToEnd(sourceStart: number, sourceEnd: number): void;
|
|
766
|
+
moveRangeToEnd(sourceStart: number, sourceEnd: number, source: TMoveFrom): void;
|
|
767
|
+
moveRangeToIndex(index: number, sourceStart: number, sourceEnd: number): void;
|
|
768
|
+
moveRangeToIndex(index: number, sourceStart: number, sourceEnd: number, source: TMoveFrom): void;
|
|
769
|
+
moveRangeToStart(sourceStart: number, sourceEnd: number): void;
|
|
770
|
+
moveRangeToStart(sourceStart: number, sourceEnd: number, source: TMoveFrom): void;
|
|
771
|
+
moveToEnd(sourceIndex: number): void;
|
|
772
|
+
moveToEnd(sourceIndex: number, source: TMoveFrom): void;
|
|
773
|
+
moveToIndex(index: number, sourceIndex: number): void;
|
|
774
|
+
moveToIndex(index: number, sourceIndex: number, source: TMoveFrom): void;
|
|
775
|
+
moveToStart(sourceIndex: number): void;
|
|
776
|
+
moveToStart(sourceIndex: number, source: TMoveFrom): void;
|
|
777
|
+
removeAt(index: number): void;
|
|
778
|
+
removeRange(start?: number, end?: number): void;
|
|
779
|
+
values(): IterableIterator<T>;
|
|
780
|
+
}
|
|
781
|
+
|
|
782
|
+
// @public @sealed
|
|
783
|
+
export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAllowedTypes>> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, TreeArrayNode> {
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
// @public @sealed
|
|
787
|
+
export interface TreeChangeEvents {
|
|
788
|
+
nodeChanged(): void;
|
|
789
|
+
treeChanged(): void;
|
|
790
|
+
}
|
|
791
|
+
|
|
792
|
+
// @public
|
|
793
|
+
export type TreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypes<Types>, Kind, false> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : unknown;
|
|
794
|
+
|
|
795
|
+
// @public
|
|
796
|
+
type TreeFieldFromImplicitFieldUnsafe<TSchema extends Unenforced<ImplicitFieldSchema>> = TSchema extends FieldSchemaUnsafe<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypesUnsafe<Types>, Kind, false> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypesUnsafe<TSchema> : unknown;
|
|
797
|
+
|
|
798
|
+
// @public
|
|
799
|
+
export type TreeLeafValue = number | string | boolean | IFluidHandle | null;
|
|
800
|
+
|
|
801
|
+
// @public @sealed
|
|
802
|
+
export interface TreeMapNode<T extends ImplicitAllowedTypes = ImplicitAllowedTypes> extends ReadonlyMap<string, TreeNodeFromImplicitAllowedTypes<T>>, TreeNode {
|
|
803
|
+
delete(key: string): void;
|
|
804
|
+
entries(): IterableIterator<[string, TreeNodeFromImplicitAllowedTypes<T>]>;
|
|
805
|
+
forEach(callbackfn: (value: TreeNodeFromImplicitAllowedTypes<T>, key: string, map: ReadonlyMap<string, TreeNodeFromImplicitAllowedTypes<T>>) => void, thisArg?: any): void;
|
|
806
|
+
keys(): IterableIterator<string>;
|
|
807
|
+
set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypes<T> | undefined): void;
|
|
808
|
+
values(): IterableIterator<TreeNodeFromImplicitAllowedTypes<T>>;
|
|
809
|
+
}
|
|
810
|
+
|
|
811
|
+
// @public @sealed
|
|
812
|
+
export interface TreeMapNodeUnsafe<T extends Unenforced<ImplicitAllowedTypes>> extends ReadonlyMap<string, TreeNodeFromImplicitAllowedTypesUnsafe<T>>, TreeNode {
|
|
813
|
+
delete(key: string): void;
|
|
814
|
+
set(key: string, value: InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T> | undefined): void;
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
// @public @sealed
|
|
818
|
+
export abstract class TreeNode implements WithType {
|
|
819
|
+
static [Symbol.hasInstance](value: unknown): value is TreeNode;
|
|
820
|
+
static [Symbol.hasInstance]<TSchema extends abstract new (...args: any[]) => TreeNode>(this: TSchema, value: unknown): value is InstanceType<TSchema>;
|
|
821
|
+
abstract get [typeNameSymbol](): string;
|
|
822
|
+
protected constructor();
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
// @public @sealed
|
|
826
|
+
export interface TreeNodeApi {
|
|
827
|
+
is<TSchema extends ImplicitAllowedTypes>(value: unknown, schema: TSchema): value is TreeNodeFromImplicitAllowedTypes<TSchema>;
|
|
828
|
+
key(node: TreeNode): string | number;
|
|
829
|
+
on<K extends keyof TreeChangeEvents>(node: TreeNode, eventName: K, listener: TreeChangeEvents[K]): () => void;
|
|
830
|
+
parent(node: TreeNode): TreeNode | undefined;
|
|
831
|
+
schema<T extends TreeNode | TreeLeafValue>(node: T): TreeNodeSchema<string, NodeKind, unknown, T>;
|
|
832
|
+
shortId(node: TreeNode): number | string | undefined;
|
|
833
|
+
status(node: TreeNode): TreeStatus;
|
|
834
|
+
}
|
|
835
|
+
|
|
836
|
+
// @public
|
|
837
|
+
export type TreeNodeFromImplicitAllowedTypes<TSchema extends ImplicitAllowedTypes = TreeNodeSchema> = TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
|
|
838
|
+
|
|
839
|
+
// @public
|
|
840
|
+
type TreeNodeFromImplicitAllowedTypesUnsafe<TSchema extends Unenforced<ImplicitAllowedTypes>> = TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : TSchema extends TreeNodeSchema ? NodeFromSchema<TSchema> : TSchema extends AllowedTypes ? NodeFromSchema<FlexListToUnion<TSchema>> : unknown;
|
|
841
|
+
|
|
842
|
+
// @public @sealed
|
|
843
|
+
export type TreeNodeSchema<Name extends string = string, Kind extends NodeKind = NodeKind, TNode = unknown, TBuild = never, ImplicitlyConstructable extends boolean = boolean, Info = unknown> = TreeNodeSchemaClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info> | TreeNodeSchemaNonClass<Name, Kind, TNode, TBuild, ImplicitlyConstructable, Info>;
|
|
844
|
+
|
|
845
|
+
// @public @sealed
|
|
846
|
+
export interface TreeNodeSchemaClass<out Name extends string = string, out Kind extends NodeKind = NodeKind, out TNode = unknown, in TInsertable = never, out ImplicitlyConstructable extends boolean = boolean, out Info = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info> {
|
|
847
|
+
// @sealed
|
|
848
|
+
new (data: TInsertable | InternalTreeNode): Unhydrated<TNode>;
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
// @public @sealed
|
|
852
|
+
export interface TreeNodeSchemaCore<out Name extends string, out Kind extends NodeKind, out ImplicitlyConstructable extends boolean, out Info = unknown> {
|
|
853
|
+
// (undocumented)
|
|
854
|
+
readonly identifier: Name;
|
|
855
|
+
readonly implicitlyConstructable: ImplicitlyConstructable;
|
|
856
|
+
readonly info: Info;
|
|
857
|
+
// (undocumented)
|
|
858
|
+
readonly kind: Kind;
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
// @public @sealed
|
|
862
|
+
interface TreeNodeSchemaNonClass<out Name extends string = string, out Kind extends NodeKind = NodeKind, out TNode = unknown, in TInsertable = never, out ImplicitlyConstructable extends boolean = boolean, out Info = unknown> extends TreeNodeSchemaCore<Name, Kind, ImplicitlyConstructable, Info> {
|
|
863
|
+
// (undocumented)
|
|
864
|
+
create(data: TInsertable): TNode;
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
// @public
|
|
868
|
+
export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName>;
|
|
869
|
+
|
|
870
|
+
// @public
|
|
871
|
+
export type TreeObjectNodeUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName>;
|
|
872
|
+
|
|
873
|
+
// @public
|
|
874
|
+
export enum TreeStatus {
|
|
875
|
+
Deleted = 2,
|
|
876
|
+
InDocument = 0,
|
|
877
|
+
New = 3,
|
|
878
|
+
Removed = 1
|
|
879
|
+
}
|
|
880
|
+
|
|
881
|
+
// @public @sealed
|
|
882
|
+
export interface TreeView<TSchema extends ImplicitFieldSchema> extends IDisposable {
|
|
883
|
+
readonly compatibility: SchemaCompatibilityStatus;
|
|
884
|
+
readonly events: Listenable<TreeViewEvents>;
|
|
885
|
+
initialize(content: InsertableTreeFieldFromImplicitField<TSchema>): void;
|
|
886
|
+
get root(): TreeFieldFromImplicitField<TSchema>;
|
|
887
|
+
set root(newRoot: InsertableTreeFieldFromImplicitField<TSchema>);
|
|
888
|
+
upgradeSchema(): void;
|
|
889
|
+
}
|
|
890
|
+
|
|
891
|
+
// @public @sealed
|
|
892
|
+
export class TreeViewConfiguration<TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> implements Required<ITreeViewConfiguration<TSchema>> {
|
|
893
|
+
constructor(props: ITreeViewConfiguration<TSchema>);
|
|
894
|
+
readonly enableSchemaValidation: boolean;
|
|
895
|
+
readonly schema: TSchema;
|
|
896
|
+
}
|
|
897
|
+
|
|
898
|
+
// @public @sealed
|
|
899
|
+
export interface TreeViewEvents {
|
|
900
|
+
commitApplied(data: CommitMetadata, getRevertible?: RevertibleFactory): void;
|
|
901
|
+
rootChanged(): void;
|
|
902
|
+
schemaChanged(): void;
|
|
903
|
+
}
|
|
904
|
+
|
|
905
|
+
// @public
|
|
906
|
+
const typeNameSymbol: unique symbol;
|
|
907
|
+
|
|
908
|
+
// @public
|
|
909
|
+
export type Unenforced<_DesiredExtendsConstraint> = unknown;
|
|
910
|
+
|
|
911
|
+
// @public
|
|
912
|
+
export type Unhydrated<T> = T;
|
|
913
|
+
|
|
914
|
+
// @public
|
|
915
|
+
export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKind.Array | NodeKind.Map | NodeKind.Object, TreeNode & WithType<T["identifier"]>, {
|
|
916
|
+
[NodeKind.Object]: T["info"] extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema> ? InsertableObjectFromSchemaRecord<T["info"]> : unknown;
|
|
917
|
+
[NodeKind.Array]: T["info"] extends ImplicitAllowedTypes ? Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T["info"]>> : unknown;
|
|
918
|
+
[NodeKind.Map]: T["info"] extends ImplicitAllowedTypes ? Iterable<[string, InsertableTreeNodeFromImplicitAllowedTypes<T["info"]>]> : unknown;
|
|
919
|
+
}[T["kind"]], false, {
|
|
920
|
+
[NodeKind.Object]: RestrictiveReadonlyRecord<string, ImplicitFieldSchema>;
|
|
921
|
+
[NodeKind.Array]: ImplicitAllowedTypes;
|
|
922
|
+
[NodeKind.Map]: ImplicitAllowedTypes;
|
|
923
|
+
}[T["kind"]]>> = true;
|
|
924
|
+
|
|
925
|
+
// @public @sealed
|
|
926
|
+
export interface WithType<TName extends string = string> {
|
|
927
|
+
get [typeNameSymbol](): TName;
|
|
928
|
+
}
|
|
929
|
+
|
|
930
|
+
```
|