fluid-framework 2.91.0 → 2.93.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.
@@ -154,9 +154,24 @@ export interface ContainerSchema {
154
154
  readonly initialObjects: Record<string, SharedObjectKind>;
155
155
  }
156
156
 
157
+ // @beta
158
+ export function createIdentifierIndex<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): IdentifierIndex;
159
+
157
160
  // @beta
158
161
  export function createIndependentTreeBeta<const TSchema extends ImplicitFieldSchema>(options?: ForestOptions): ViewableTree;
159
162
 
163
+ // @beta
164
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue>(view: TreeView<TFieldSchema>, indexer: (schema: TreeNodeSchema) => string | undefined, getValue: (nodes: TreeIndexNodes<TreeNode>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey): TreeIndex<TKey, TValue>;
165
+
166
+ // @beta
167
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue, TSchema extends TreeNodeSchema>(view: TreeView<TFieldSchema>, indexer: (schema: TSchema) => string | undefined, getValue: (nodes: TreeIndexNodes<NodeFromSchema<TSchema>>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey, indexableSchema: readonly TSchema[]): TreeIndex<TKey, TValue>;
168
+
169
+ // @beta
170
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue>(view: TreeView<TFieldSchema>, indexer: Map<TreeNodeSchema, string>, getValue: (nodes: TreeIndexNodes<TreeNode>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey): TreeIndex<TKey, TValue>;
171
+
172
+ // @beta
173
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue, TSchema extends TreeNodeSchema>(view: TreeView<TFieldSchema>, indexer: Map<TreeNodeSchema, string>, getValue: (nodes: TreeIndexNodes<NodeFromSchema<TSchema>>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey, indexableSchema: readonly TSchema[]): TreeIndex<TKey, TValue>;
174
+
160
175
  // @public @sealed @system
161
176
  interface DefaultProvider extends ErasedType<"@fluidframework/tree.FieldProvider"> {
162
177
  }
@@ -186,7 +201,7 @@ export abstract class ErasedType<out Name = unknown> {
186
201
 
187
202
  // @beta
188
203
  export namespace ExtensibleUnionNode {
189
- export function createSchema<const T extends readonly TreeNodeSchema[], const TScope extends string, const TName extends string>(types: T, inputSchemaFactory: SchemaFactoryBeta<TScope>, name: TName): Statics<T> & TreeNodeSchemaCore_2<ScopedSchemaName_2<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind_2, false, unknown, never, unknown> & (new (data: InternalTreeNode_2) => Members<TreeNodeFromImplicitAllowedTypes<T>> & TreeNode_2 & WithType_2<ScopedSchemaName_2<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind_2, unknown>);
204
+ export function createSchema<const T extends readonly TreeNodeSchema[], const TScope extends string, const TName extends string>(types: T, inputSchemaFactory: SchemaFactoryBeta<TScope>, name: TName): Statics<T> & TreeNodeSchemaCore<ScopedSchemaName<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind, false, unknown, never, unknown> & (new (data: InternalTreeNode) => Members<TreeNodeFromImplicitAllowedTypes<T>> & TreeNode & WithType<ScopedSchemaName<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind, unknown>);
190
205
  export interface Members<T> {
191
206
  isValid(): boolean;
192
207
  readonly union: T | undefined;
@@ -253,6 +268,29 @@ type FlexList<Item = unknown> = readonly LazyItem<Item>[];
253
268
  // @public @system
254
269
  type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;
255
270
 
271
+ // @beta @sealed
272
+ export interface FluidIterable<T> {
273
+ [Symbol.iterator](): FluidIterableIterator<T>;
274
+ }
275
+
276
+ // @beta @sealed
277
+ export interface FluidIterableIterator<T> extends FluidIterable<T> {
278
+ next(): {
279
+ value: T;
280
+ done?: false;
281
+ } | {
282
+ value: any;
283
+ done: true;
284
+ };
285
+ }
286
+
287
+ // @beta @sealed
288
+ export interface FluidMap<K, V> extends FluidReadonlyMap<K, V> {
289
+ delete(key: K): void;
290
+ forEach(callbackfn: (value: V, key: K, map: FluidMap<K, V>) => void, thisArg?: any): void;
291
+ set(key: K, value: V): void;
292
+ }
293
+
256
294
  // @public
257
295
  export type FluidObject<T = unknown> = {
258
296
  [P in FluidObjectProviderKeys<T>]?: T[P];
@@ -261,26 +299,39 @@ export type FluidObject<T = unknown> = {
261
299
  // @public
262
300
  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;
263
301
 
302
+ // @beta @sealed
303
+ export interface FluidReadonlyMap<K, V> {
304
+ [Symbol.iterator](): FluidIterableIterator<[K, V]>;
305
+ readonly [Symbol.toStringTag]: string;
306
+ entries(): FluidIterableIterator<[K, V]>;
307
+ forEach(callbackfn: (value: V, key: K, map: FluidReadonlyMap<K, V>) => void, thisArg?: any): void;
308
+ get(key: K): V | undefined;
309
+ has(key: K): boolean;
310
+ keys(): FluidIterableIterator<K>;
311
+ readonly size: number;
312
+ values(): FluidIterableIterator<V>;
313
+ }
314
+
264
315
  // @beta
265
316
  export namespace FluidSerializableAsTree {
266
317
  // @sealed
267
318
  export class Array extends _APIExtractorWorkaroundArrayBase {
268
319
  }
269
- const Tree: readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>];
320
+ const Tree: readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>];
270
321
  export type Data = JsonCompatible<IFluidHandle>;
271
322
  const // @system
272
- _APIExtractorWorkaroundObjectBase: TreeNodeSchemaClass_2<"com.fluidframework.serializable.object", NodeKind_2.Record, TreeRecordNodeUnsafe_2<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>]> & WithType_2<"com.fluidframework.serializable.object", NodeKind_2.Record, unknown>, {
273
- readonly [x: string]: string | number | IFluidHandle<unknown> | System_Unsafe_2.InsertableTypedNodeUnsafe<LeafSchema_2<"boolean", boolean>, LeafSchema_2<"boolean", boolean>> | FluidSerializableObject | Array | null;
274
- }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>], undefined, unknown>;
323
+ _APIExtractorWorkaroundObjectBase: TreeNodeSchemaClass<"com.fluidframework.serializable.object", NodeKind.Record, TreeRecordNodeUnsafe<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>]> & WithType<"com.fluidframework.serializable.object", NodeKind.Record, unknown>, {
324
+ readonly [x: string]: string | number | IFluidHandle<unknown> | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | FluidSerializableObject | Array | null;
325
+ }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>], undefined, unknown>;
275
326
  // @sealed
276
327
  export class FluidSerializableObject extends _APIExtractorWorkaroundObjectBase {
277
328
  }
278
329
  // @system
279
330
  export type _RecursiveArrayWorkaroundJsonArray = FixRecursiveArraySchema<typeof Array>;
280
331
  const // @system
281
- _APIExtractorWorkaroundArrayBase: TreeNodeSchemaClass_2<"com.fluidframework.serializable.array", NodeKind_2.Array, System_Unsafe_2.TreeArrayNodeUnsafe<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>]> & WithType_2<"com.fluidframework.serializable.array", NodeKind_2.Array, unknown>, {
282
- [Symbol.iterator](): Iterator<string | number | IFluidHandle<unknown> | System_Unsafe_2.InsertableTypedNodeUnsafe<LeafSchema_2<"boolean", boolean>, LeafSchema_2<"boolean", boolean>> | FluidSerializableObject | Array | null, any, undefined>;
283
- }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>], undefined>;
332
+ _APIExtractorWorkaroundArrayBase: TreeNodeSchemaClass<"com.fluidframework.serializable.array", NodeKind.Array, System_Unsafe.TreeArrayNodeUnsafe<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>]> & WithType<"com.fluidframework.serializable.array", NodeKind.Array, unknown>, {
333
+ [Symbol.iterator](): Iterator<string | number | IFluidHandle<unknown> | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | FluidSerializableObject | Array | null, any, undefined>;
334
+ }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>], undefined>;
284
335
  // (undocumented)
285
336
  export type Tree = TreeNodeFromImplicitAllowedTypes<typeof Tree>;
286
337
  }
@@ -303,6 +354,9 @@ export const ForestTypeOptimized: ForestType;
303
354
  // @beta
304
355
  export const ForestTypeReference: ForestType;
305
356
 
357
+ // @public
358
+ export const getPresence: (fluidContainer: IFluidContainer) => Presence;
359
+
306
360
  // @public
307
361
  export interface IConnection {
308
362
  readonly id: string;
@@ -312,6 +366,9 @@ export interface IConnection {
312
366
  // @public
313
367
  export type ICriticalContainerError = IErrorBase;
314
368
 
369
+ // @beta
370
+ export type IdentifierIndex = TreeIndex<string, TreeNode>;
371
+
315
372
  // @public @sealed
316
373
  export interface IDisposable {
317
374
  dispose(error?: Error): void;
@@ -1009,22 +1066,22 @@ export namespace System_TableSchema {
1009
1066
  props: InsertableTreeFieldFromImplicitField<TPropsSchema>;
1010
1067
  }), true, {
1011
1068
  readonly props: TPropsSchema;
1012
- readonly id: FieldSchema_2<FieldKind_2.Identifier, LeafSchema_2<"string", string>, unknown>;
1069
+ readonly id: FieldSchema<FieldKind.Identifier, LeafSchema<"string", string>, unknown>;
1013
1070
  }>;
1014
1071
  // @system
1015
1072
  export type CreateRowOptionsBase<TUserScope extends string = string, TSchemaFactory extends SchemaFactoryBeta<TUserScope> = SchemaFactoryBeta<TUserScope>, TCellSchema extends ImplicitAllowedTypes = ImplicitAllowedTypes> = OptionsWithSchemaFactory<TSchemaFactory> & OptionsWithCellSchema<TCellSchema>;
1016
1073
  // @system
1017
1074
  export function createRowSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TPropsSchema extends ImplicitFieldSchema>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, cellSchema: TCellSchema, propsSchema: TPropsSchema): TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row">, NodeKind.Object, TreeNode & TableSchema.Row<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row">, NodeKind, unknown>, object & {
1018
1075
  readonly id?: string | undefined;
1019
- readonly cells: (InsertableTypedNode_2<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData_2<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & InsertableTypedNode_2<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData_2<TCellSchema>, true, TCellSchema, undefined, unknown>>;
1076
+ readonly cells: (InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>>;
1020
1077
  } & (FieldHasDefault<TPropsSchema> extends true ? {
1021
1078
  props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined;
1022
1079
  } : {
1023
1080
  props: InsertableTreeFieldFromImplicitField<TPropsSchema>;
1024
1081
  }), true, {
1025
1082
  readonly props: TPropsSchema;
1026
- readonly id: FieldSchema_2<FieldKind_2.Identifier, LeafSchema_2<"string", string>, unknown>;
1027
- readonly cells: FieldSchema_2<FieldKind_2.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData_2<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>;
1083
+ readonly id: FieldSchema<FieldKind.Identifier, LeafSchema<"string", string>, unknown>;
1084
+ readonly cells: FieldSchema<FieldKind.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>;
1028
1085
  }>;
1029
1086
  // @system
1030
1087
  export function createTableSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TColumnSchema extends ColumnSchemaBase<TUserScope, TCellSchema>, const TRowSchema extends RowSchemaBase<TUserScope, TCellSchema>>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, _cellSchema: TCellSchema, columnSchema: TColumnSchema, rowSchema: TRowSchema): {
@@ -1314,6 +1371,17 @@ export interface TreeEncodingOptions<TKeyOptions = KeyEncodingOptions> {
1314
1371
  // @public
1315
1372
  export type TreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypes<Types>, Kind> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : TreeNode | TreeLeafValue | undefined;
1316
1373
 
1374
+ // @beta @sealed
1375
+ export interface TreeIndex<TKey, TValue> extends FluidReadonlyMap<TKey, TValue> {
1376
+ dispose(): void;
1377
+ }
1378
+
1379
+ // @beta
1380
+ export type TreeIndexKey = TreeLeafValue;
1381
+
1382
+ // @beta
1383
+ export type TreeIndexNodes<TNode> = readonly [first: TNode, ...rest: TNode[]];
1384
+
1317
1385
  // @public
1318
1386
  export type TreeLeafValue = number | string | boolean | IFluidHandle | null;
1319
1387
 
@@ -154,9 +154,24 @@ export interface ContainerSchema {
154
154
  readonly initialObjects: Record<string, SharedObjectKind>;
155
155
  }
156
156
 
157
+ // @beta
158
+ export function createIdentifierIndex<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): IdentifierIndex;
159
+
157
160
  // @beta
158
161
  export function createIndependentTreeBeta<const TSchema extends ImplicitFieldSchema>(options?: ForestOptions): ViewableTree;
159
162
 
163
+ // @beta
164
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue>(view: TreeView<TFieldSchema>, indexer: (schema: TreeNodeSchema) => string | undefined, getValue: (nodes: TreeIndexNodes<TreeNode>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey): TreeIndex<TKey, TValue>;
165
+
166
+ // @beta
167
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue, TSchema extends TreeNodeSchema>(view: TreeView<TFieldSchema>, indexer: (schema: TSchema) => string | undefined, getValue: (nodes: TreeIndexNodes<NodeFromSchema<TSchema>>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey, indexableSchema: readonly TSchema[]): TreeIndex<TKey, TValue>;
168
+
169
+ // @beta
170
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue>(view: TreeView<TFieldSchema>, indexer: Map<TreeNodeSchema, string>, getValue: (nodes: TreeIndexNodes<TreeNode>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey): TreeIndex<TKey, TValue>;
171
+
172
+ // @beta
173
+ export function createTreeIndex<TFieldSchema extends ImplicitFieldSchema, TKey extends TreeIndexKey, TValue, TSchema extends TreeNodeSchema>(view: TreeView<TFieldSchema>, indexer: Map<TreeNodeSchema, string>, getValue: (nodes: TreeIndexNodes<NodeFromSchema<TSchema>>) => TValue, isKeyValid: (key: TreeIndexKey) => key is TKey, indexableSchema: readonly TSchema[]): TreeIndex<TKey, TValue>;
174
+
160
175
  // @public @sealed @system
161
176
  interface DefaultProvider extends ErasedType<"@fluidframework/tree.FieldProvider"> {
162
177
  }
@@ -189,7 +204,7 @@ export abstract class ErasedType<out Name = unknown> {
189
204
 
190
205
  // @beta
191
206
  export namespace ExtensibleUnionNode {
192
- export function createSchema<const T extends readonly TreeNodeSchema[], const TScope extends string, const TName extends string>(types: T, inputSchemaFactory: SchemaFactoryBeta<TScope>, name: TName): Statics<T> & TreeNodeSchemaCore_2<ScopedSchemaName_2<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind_2, false, unknown, never, unknown> & (new (data: InternalTreeNode_2) => Members<TreeNodeFromImplicitAllowedTypes<T>> & TreeNode_2 & WithType_2<ScopedSchemaName_2<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind_2, unknown>);
207
+ export function createSchema<const T extends readonly TreeNodeSchema[], const TScope extends string, const TName extends string>(types: T, inputSchemaFactory: SchemaFactoryBeta<TScope>, name: TName): Statics<T> & TreeNodeSchemaCore<ScopedSchemaName<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind, false, unknown, never, unknown> & (new (data: InternalTreeNode) => Members<TreeNodeFromImplicitAllowedTypes<T>> & TreeNode & WithType<ScopedSchemaName<`com.fluidframework.extensibleUnionNode<${TScope}>`, TName>, NodeKind, unknown>);
193
208
  export interface Members<T> {
194
209
  isValid(): boolean;
195
210
  readonly union: T | undefined;
@@ -256,6 +271,29 @@ type FlexList<Item = unknown> = readonly LazyItem<Item>[];
256
271
  // @public @system
257
272
  type FlexListToUnion<TList extends FlexList> = ExtractItemType<TList[number]>;
258
273
 
274
+ // @beta @sealed
275
+ export interface FluidIterable<T> {
276
+ [Symbol.iterator](): FluidIterableIterator<T>;
277
+ }
278
+
279
+ // @beta @sealed
280
+ export interface FluidIterableIterator<T> extends FluidIterable<T> {
281
+ next(): {
282
+ value: T;
283
+ done?: false;
284
+ } | {
285
+ value: any;
286
+ done: true;
287
+ };
288
+ }
289
+
290
+ // @beta @sealed
291
+ export interface FluidMap<K, V> extends FluidReadonlyMap<K, V> {
292
+ delete(key: K): void;
293
+ forEach(callbackfn: (value: V, key: K, map: FluidMap<K, V>) => void, thisArg?: any): void;
294
+ set(key: K, value: V): void;
295
+ }
296
+
259
297
  // @public
260
298
  export type FluidObject<T = unknown> = {
261
299
  [P in FluidObjectProviderKeys<T>]?: T[P];
@@ -264,26 +302,39 @@ export type FluidObject<T = unknown> = {
264
302
  // @public
265
303
  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;
266
304
 
305
+ // @beta @sealed
306
+ export interface FluidReadonlyMap<K, V> {
307
+ [Symbol.iterator](): FluidIterableIterator<[K, V]>;
308
+ readonly [Symbol.toStringTag]: string;
309
+ entries(): FluidIterableIterator<[K, V]>;
310
+ forEach(callbackfn: (value: V, key: K, map: FluidReadonlyMap<K, V>) => void, thisArg?: any): void;
311
+ get(key: K): V | undefined;
312
+ has(key: K): boolean;
313
+ keys(): FluidIterableIterator<K>;
314
+ readonly size: number;
315
+ values(): FluidIterableIterator<V>;
316
+ }
317
+
267
318
  // @beta
268
319
  export namespace FluidSerializableAsTree {
269
320
  // @sealed
270
321
  export class Array extends _APIExtractorWorkaroundArrayBase {
271
322
  }
272
- const Tree: readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>];
323
+ const Tree: readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>];
273
324
  export type Data = JsonCompatible<IFluidHandle>;
274
325
  const // @system
275
- _APIExtractorWorkaroundObjectBase: TreeNodeSchemaClass_2<"com.fluidframework.serializable.object", NodeKind_2.Record, TreeRecordNodeUnsafe_2<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>]> & WithType_2<"com.fluidframework.serializable.object", NodeKind_2.Record, unknown>, {
276
- readonly [x: string]: string | number | IFluidHandle<unknown> | System_Unsafe_2.InsertableTypedNodeUnsafe<LeafSchema_2<"boolean", boolean>, LeafSchema_2<"boolean", boolean>> | FluidSerializableObject | Array | null;
277
- }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>], undefined, unknown>;
326
+ _APIExtractorWorkaroundObjectBase: TreeNodeSchemaClass<"com.fluidframework.serializable.object", NodeKind.Record, TreeRecordNodeUnsafe<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>]> & WithType<"com.fluidframework.serializable.object", NodeKind.Record, unknown>, {
327
+ readonly [x: string]: string | number | IFluidHandle<unknown> | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | FluidSerializableObject | Array | null;
328
+ }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>], undefined, unknown>;
278
329
  // @sealed
279
330
  export class FluidSerializableObject extends _APIExtractorWorkaroundObjectBase {
280
331
  }
281
332
  // @system
282
333
  export type _RecursiveArrayWorkaroundJsonArray = FixRecursiveArraySchema<typeof Array>;
283
334
  const // @system
284
- _APIExtractorWorkaroundArrayBase: TreeNodeSchemaClass_2<"com.fluidframework.serializable.array", NodeKind_2.Array, System_Unsafe_2.TreeArrayNodeUnsafe<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>]> & WithType_2<"com.fluidframework.serializable.array", NodeKind_2.Array, unknown>, {
285
- [Symbol.iterator](): Iterator<string | number | IFluidHandle<unknown> | System_Unsafe_2.InsertableTypedNodeUnsafe<LeafSchema_2<"boolean", boolean>, LeafSchema_2<"boolean", boolean>> | FluidSerializableObject | Array | null, any, undefined>;
286
- }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema_2<"string", string>, LeafSchema_2<"number", number>, LeafSchema_2<"boolean", boolean>, LeafSchema_2<"null", null>, LeafSchema_2<"handle", IFluidHandle<unknown>>], undefined>;
335
+ _APIExtractorWorkaroundArrayBase: TreeNodeSchemaClass<"com.fluidframework.serializable.array", NodeKind.Array, System_Unsafe.TreeArrayNodeUnsafe<readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>]> & WithType<"com.fluidframework.serializable.array", NodeKind.Array, unknown>, {
336
+ [Symbol.iterator](): Iterator<string | number | IFluidHandle<unknown> | System_Unsafe.InsertableTypedNodeUnsafe<LeafSchema<"boolean", boolean>, LeafSchema<"boolean", boolean>> | FluidSerializableObject | Array | null, any, undefined>;
337
+ }, false, readonly [() => typeof FluidSerializableObject, () => typeof Array, LeafSchema<"string", string>, LeafSchema<"number", number>, LeafSchema<"boolean", boolean>, LeafSchema<"null", null>, LeafSchema<"handle", IFluidHandle<unknown>>], undefined>;
287
338
  // (undocumented)
288
339
  export type Tree = TreeNodeFromImplicitAllowedTypes<typeof Tree>;
289
340
  }
@@ -306,6 +357,9 @@ export const ForestTypeOptimized: ForestType;
306
357
  // @beta
307
358
  export const ForestTypeReference: ForestType;
308
359
 
360
+ // @public
361
+ export const getPresence: (fluidContainer: IFluidContainer) => Presence;
362
+
309
363
  // @beta @legacy
310
364
  export interface IBranchOrigin {
311
365
  id: string;
@@ -322,6 +376,9 @@ export interface IConnection {
322
376
  // @public
323
377
  export type ICriticalContainerError = IErrorBase;
324
378
 
379
+ // @beta
380
+ export type IdentifierIndex = TreeIndex<string, TreeNode>;
381
+
325
382
  // @public @sealed @legacy
326
383
  export interface IDirectory extends Map<string, any>, IEventProvider<IDirectoryEvents>, Partial<IDisposable> {
327
384
  readonly absolutePath: string;
@@ -728,7 +785,7 @@ export interface ISequenceDeltaRange<TOperation extends MergeTreeDeltaOperationT
728
785
  export interface ISequenceIntervalCollection extends TypedEventEmitter<ISequenceIntervalCollectionEvents> {
729
786
  // (undocumented)
730
787
  [Symbol.iterator](): Iterator<SequenceInterval>;
731
- add({ start, end, props, }: {
788
+ add(input: {
732
789
  start: SequencePlace;
733
790
  end: SequencePlace;
734
791
  props?: PropertySet;
@@ -738,7 +795,7 @@ export interface ISequenceIntervalCollection extends TypedEventEmitter<ISequence
738
795
  // (undocumented)
739
796
  readonly attached: boolean;
740
797
  attachIndex(index: SequenceIntervalIndex): void;
741
- change(id: string, { start, end, props }: {
798
+ change(id: string, input: {
742
799
  start?: SequencePlace;
743
800
  end?: SequencePlace;
744
801
  props?: PropertySet;
@@ -849,6 +906,12 @@ export interface ISharedObjectEvents extends IErrorEvent {
849
906
  (event: "op", listener: (op: ISequencedDocumentMessage, local: boolean, target: IEventThisPlaceHolder) => void): any;
850
907
  }
851
908
 
909
+ // @beta @legacy
910
+ export interface ISharedObjectKind<TSharedObject> {
911
+ create(runtime: IFluidDataStoreRuntime, id?: string): TSharedObject;
912
+ getFactory(): IChannelFactory<TSharedObject>;
913
+ }
914
+
852
915
  // @beta @legacy (undocumented)
853
916
  export interface ISharedSegmentSequence<T extends ISegment> extends ISharedObject<ISharedSegmentSequenceEvents>, MergeTreeRevertibleDriver {
854
917
  annotateAdjustRange(start: number, end: number, adjust: MapLike<AdjustParams>): void;
@@ -1280,13 +1343,13 @@ export interface SequenceMaintenanceEvent extends SequenceEvent<MergeTreeMainten
1280
1343
  export { SequencePlace }
1281
1344
 
1282
1345
  // @beta @legacy
1283
- export const SharedDirectory: ISharedObjectKind<ISharedDirectory> & SharedObjectKind_2<ISharedDirectory>;
1346
+ export const SharedDirectory: ISharedObjectKind<ISharedDirectory> & SharedObjectKind<ISharedDirectory>;
1284
1347
 
1285
1348
  // @beta @legacy
1286
1349
  export type SharedDirectory = ISharedDirectory;
1287
1350
 
1288
1351
  // @beta @legacy
1289
- export const SharedMap: ISharedObjectKind<ISharedMap> & SharedObjectKind_2<ISharedMap>;
1352
+ export const SharedMap: ISharedObjectKind<ISharedMap> & SharedObjectKind<ISharedMap>;
1290
1353
 
1291
1354
  // @beta @legacy
1292
1355
  export type SharedMap = ISharedMap;
@@ -1297,7 +1360,7 @@ export interface SharedObjectKind<out TSharedObject = unknown> extends ErasedTyp
1297
1360
  }
1298
1361
 
1299
1362
  // @beta @legacy
1300
- export const SharedString: ISharedObjectKind<ISharedString> & SharedObjectKind_2<ISharedString>;
1363
+ export const SharedString: ISharedObjectKind<ISharedString> & SharedObjectKind<ISharedString>;
1301
1364
 
1302
1365
  // @beta @legacy
1303
1366
  export type SharedString = ISharedString;
@@ -1369,22 +1432,22 @@ export namespace System_TableSchema {
1369
1432
  props: InsertableTreeFieldFromImplicitField<TPropsSchema>;
1370
1433
  }), true, {
1371
1434
  readonly props: TPropsSchema;
1372
- readonly id: FieldSchema_2<FieldKind_2.Identifier, LeafSchema_2<"string", string>, unknown>;
1435
+ readonly id: FieldSchema<FieldKind.Identifier, LeafSchema<"string", string>, unknown>;
1373
1436
  }>;
1374
1437
  // @system
1375
1438
  export type CreateRowOptionsBase<TUserScope extends string = string, TSchemaFactory extends SchemaFactoryBeta<TUserScope> = SchemaFactoryBeta<TUserScope>, TCellSchema extends ImplicitAllowedTypes = ImplicitAllowedTypes> = OptionsWithSchemaFactory<TSchemaFactory> & OptionsWithCellSchema<TCellSchema>;
1376
1439
  // @system
1377
1440
  export function createRowSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TPropsSchema extends ImplicitFieldSchema>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, cellSchema: TCellSchema, propsSchema: TPropsSchema): TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row">, NodeKind.Object, TreeNode & TableSchema.Row<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row">, NodeKind, unknown>, object & {
1378
1441
  readonly id?: string | undefined;
1379
- readonly cells: (InsertableTypedNode_2<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData_2<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & InsertableTypedNode_2<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData_2<TCellSchema>, true, TCellSchema, undefined, unknown>>;
1442
+ readonly cells: (InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>>;
1380
1443
  } & (FieldHasDefault<TPropsSchema> extends true ? {
1381
1444
  props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined;
1382
1445
  } : {
1383
1446
  props: InsertableTreeFieldFromImplicitField<TPropsSchema>;
1384
1447
  }), true, {
1385
1448
  readonly props: TPropsSchema;
1386
- readonly id: FieldSchema_2<FieldKind_2.Identifier, LeafSchema_2<"string", string>, unknown>;
1387
- readonly cells: FieldSchema_2<FieldKind_2.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData_2<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>;
1449
+ readonly id: FieldSchema<FieldKind.Identifier, LeafSchema<"string", string>, unknown>;
1450
+ readonly cells: FieldSchema<FieldKind.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.tableV2<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>;
1388
1451
  }>;
1389
1452
  // @system
1390
1453
  export function createTableSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TColumnSchema extends ColumnSchemaBase<TUserScope, TCellSchema>, const TRowSchema extends RowSchemaBase<TUserScope, TCellSchema>>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, _cellSchema: TCellSchema, columnSchema: TColumnSchema, rowSchema: TRowSchema): {
@@ -1674,6 +1737,17 @@ export interface TreeEncodingOptions<TKeyOptions = KeyEncodingOptions> {
1674
1737
  // @public
1675
1738
  export type TreeFieldFromImplicitField<TSchema extends ImplicitFieldSchema = FieldSchema> = TSchema extends FieldSchema<infer Kind, infer Types> ? ApplyKind<TreeNodeFromImplicitAllowedTypes<Types>, Kind> : TSchema extends ImplicitAllowedTypes ? TreeNodeFromImplicitAllowedTypes<TSchema> : TreeNode | TreeLeafValue | undefined;
1676
1739
 
1740
+ // @beta @sealed
1741
+ export interface TreeIndex<TKey, TValue> extends FluidReadonlyMap<TKey, TValue> {
1742
+ dispose(): void;
1743
+ }
1744
+
1745
+ // @beta
1746
+ export type TreeIndexKey = TreeLeafValue;
1747
+
1748
+ // @beta
1749
+ export type TreeIndexNodes<TNode> = readonly [first: TNode, ...rest: TNode[]];
1750
+
1677
1751
  // @public
1678
1752
  export type TreeLeafValue = number | string | boolean | IFluidHandle | null;
1679
1753
 
@@ -143,6 +143,9 @@ export type FluidObject<T = unknown> = {
143
143
  // @public
144
144
  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;
145
145
 
146
+ // @public
147
+ export const getPresence: (fluidContainer: IFluidContainer) => Presence;
148
+
146
149
  // @public
147
150
  export interface IConnection {
148
151
  readonly id: string;
@@ -143,6 +143,9 @@ export type FluidObject<T = unknown> = {
143
143
  // @public
144
144
  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;
145
145
 
146
+ // @public
147
+ export const getPresence: (fluidContainer: IFluidContainer) => Presence;
148
+
146
149
  // @public
147
150
  export interface IConnection {
148
151
  readonly id: string;
package/beta.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  /*
7
7
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
- * Generated by "flub generate entrypoints" in @fluid-tools/build-cli.
8
+ * Generated by "flub generate entrypoints --outFileLegacyBeta legacy --outDir ./lib --node10TypeCompat" in @fluid-tools/build-cli.
9
9
  */
10
10
 
11
11
  export * from "./lib/beta.js";
package/dist/alpha.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  /*
7
7
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
- * Generated by "flub generate entrypoints" in @fluid-tools/build-cli.
8
+ * Generated by "flub generate entrypoints --resolutionConditions require --outFileLegacyBeta legacy --outDir ./dist" in @fluid-tools/build-cli.
9
9
  */
10
10
 
11
11
  /**
@@ -131,6 +131,7 @@ export {
131
131
  ValidateRecursiveSchemaTemplate,
132
132
  ViewableTree,
133
133
  WithType,
134
+ getPresence,
134
135
  isFluidHandle,
135
136
  rollback,
136
137
  typeSchemaSymbol,
@@ -154,12 +155,17 @@ export {
154
155
  ErasedBaseType,
155
156
  ExtensibleUnionNode,
156
157
  FixRecursiveArraySchema,
158
+ FluidIterable,
159
+ FluidIterableIterator,
160
+ FluidMap,
161
+ FluidReadonlyMap,
157
162
  FluidSerializableAsTree,
158
163
  ForestOptions,
159
164
  ForestType,
160
165
  ForestTypeExpensiveDebug,
161
166
  ForestTypeOptimized,
162
167
  ForestTypeReference,
168
+ IdentifierIndex,
163
169
  JsonCompatible,
164
170
  JsonCompatibleObject,
165
171
  KeyEncodingOptions,
@@ -179,6 +185,9 @@ export {
179
185
  TreeBranch,
180
186
  TreeChangeEventsBeta,
181
187
  TreeEncodingOptions,
188
+ TreeIndex,
189
+ TreeIndexKey,
190
+ TreeIndexNodes,
182
191
  TreeRecordNode,
183
192
  TreeRecordNodeUnsafe,
184
193
  TreeViewBeta,
@@ -189,7 +198,9 @@ export {
189
198
  adaptEnum,
190
199
  asBeta,
191
200
  configuredSharedTreeBeta,
201
+ createIdentifierIndex,
192
202
  createIndependentTreeBeta,
203
+ createTreeIndex,
193
204
  enumFromStrings,
194
205
  singletonSchema,
195
206
  snapshotSchemaCompatibility,
@@ -198,11 +209,17 @@ export {
198
209
  // #region @alpha APIs
199
210
  AllowedTypesFullUnsafe,
200
211
  ArrayNodeCustomizableSchema,
212
+ ArrayNodeCustomizableSchemaAlpha,
201
213
  ArrayNodeCustomizableSchemaUnsafe,
214
+ ArrayNodeDeltaOp,
215
+ ArrayNodeInsertOp,
202
216
  ArrayNodePojoEmulationSchema,
217
+ ArrayNodeRemoveOp,
218
+ ArrayNodeRetainOp,
203
219
  ArrayNodeSchema,
220
+ ArrayNodeTreeChangedDeltaOp,
221
+ ArrayNodeTreeChangedRetainOp,
204
222
  ArrayPlaceAnchor,
205
- BranchableTree,
206
223
  ChangeMetadata,
207
224
  CodecName,
208
225
  CodecWriteOptions,
@@ -227,7 +244,6 @@ export {
227
244
  HandleConverter,
228
245
  ICodecOptions,
229
246
  ITreeAlpha,
230
- IdentifierIndex,
231
247
  IncrementalEncodingPolicy,
232
248
  IndependentViewOptions,
233
249
  Insertable,
@@ -260,6 +276,10 @@ export {
260
276
  MapNodePojoEmulationSchema,
261
277
  MapNodeSchema,
262
278
  NoChangeConstraint,
279
+ NodeChangedDataAlpha,
280
+ NodeChangedDataDelta,
281
+ NodeChangedDataProperties,
282
+ NodeChangedDataTreeDelta,
263
283
  NodeProvider,
264
284
  NodeSchemaOptionsAlpha,
265
285
  ObjectNodeSchema,
@@ -300,15 +320,14 @@ export {
300
320
  TransactionResultFailed,
301
321
  TransactionResultSuccess,
302
322
  TreeAlpha,
323
+ TreeArrayNodeAlpha,
303
324
  TreeBranchAlpha,
304
325
  TreeBranchEvents,
305
- TreeBranchFork,
326
+ TreeChangeEventsAlpha,
306
327
  TreeCompressionStrategy,
307
328
  TreeContextAlpha,
308
329
  TreeIdentifierUtils,
309
- TreeIndex,
310
- TreeIndexKey,
311
- TreeIndexNodes,
330
+ TreeMapNodeAlpha,
312
331
  TreeParsingOptions,
313
332
  TreeSchema,
314
333
  TreeSchemaEncodingOptions,
@@ -331,9 +350,7 @@ export {
331
350
  configuredSharedTreeAlpha,
332
351
  contentSchemaSymbol,
333
352
  createArrayInsertionAnchor,
334
- createIdentifierIndex,
335
353
  createIndependentTreeAlpha,
336
- createTreeIndex,
337
354
  decodeSchemaCompatibilitySnapshot,
338
355
  encodeSchemaCompatibilitySnapshot,
339
356
  eraseSchemaDetails,
@@ -342,8 +359,8 @@ export {
342
359
  exportCompatibilitySchemaSnapshot,
343
360
  extractPersistedSchema,
344
361
  generateSchemaFromSimpleSchema,
345
- getBranch,
346
362
  getJsonSchema,
363
+ getPresenceAlpha,
347
364
  getSimpleSchema,
348
365
  importCompatibilitySchemaSnapshot,
349
366
  incrementalEncodingPolicyForAllowedTypes,
package/dist/beta.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  /*
7
7
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
- * Generated by "flub generate entrypoints" in @fluid-tools/build-cli.
8
+ * Generated by "flub generate entrypoints --resolutionConditions require --outFileLegacyBeta legacy --outDir ./dist" in @fluid-tools/build-cli.
9
9
  */
10
10
 
11
11
  /**
@@ -131,6 +131,7 @@ export {
131
131
  ValidateRecursiveSchemaTemplate,
132
132
  ViewableTree,
133
133
  WithType,
134
+ getPresence,
134
135
  isFluidHandle,
135
136
  rollback,
136
137
  typeSchemaSymbol,
@@ -154,12 +155,17 @@ export {
154
155
  ErasedBaseType,
155
156
  ExtensibleUnionNode,
156
157
  FixRecursiveArraySchema,
158
+ FluidIterable,
159
+ FluidIterableIterator,
160
+ FluidMap,
161
+ FluidReadonlyMap,
157
162
  FluidSerializableAsTree,
158
163
  ForestOptions,
159
164
  ForestType,
160
165
  ForestTypeExpensiveDebug,
161
166
  ForestTypeOptimized,
162
167
  ForestTypeReference,
168
+ IdentifierIndex,
163
169
  JsonCompatible,
164
170
  JsonCompatibleObject,
165
171
  KeyEncodingOptions,
@@ -179,6 +185,9 @@ export {
179
185
  TreeBranch,
180
186
  TreeChangeEventsBeta,
181
187
  TreeEncodingOptions,
188
+ TreeIndex,
189
+ TreeIndexKey,
190
+ TreeIndexNodes,
182
191
  TreeRecordNode,
183
192
  TreeRecordNodeUnsafe,
184
193
  TreeViewBeta,
@@ -189,7 +198,9 @@ export {
189
198
  adaptEnum,
190
199
  asBeta,
191
200
  configuredSharedTreeBeta,
201
+ createIdentifierIndex,
192
202
  createIndependentTreeBeta,
203
+ createTreeIndex,
193
204
  enumFromStrings,
194
205
  singletonSchema,
195
206
  snapshotSchemaCompatibility