fluid-framework 2.2.0 → 2.3.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.
@@ -563,6 +563,11 @@ type NodeBuilderData<T extends TreeNodeSchema> = T extends TreeNodeSchema<string
563
563
  // @public
564
564
  type NodeBuilderDataUnsafe<T extends Unenforced<TreeNodeSchema>> = T extends TreeNodeSchema<string, NodeKind, unknown, infer TBuild> ? TBuild : never;
565
565
 
566
+ // @beta @sealed
567
+ export interface NodeChangedData<TNode extends TreeNode = TreeNode> {
568
+ readonly changedProperties?: ReadonlySet<TNode extends WithType<string, NodeKind.Object, infer TInfo> ? string & keyof TInfo : string>;
569
+ }
570
+
566
571
  // @public
567
572
  export type NodeFromSchema<T extends TreeNodeSchema> = T extends TreeNodeSchema<string, NodeKind, infer TNode> ? TNode : never;
568
573
 
@@ -674,7 +679,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
674
679
  constructor(scope: TScope);
675
680
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
676
681
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
677
- 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>, NodeKind.Array>, {
682
+ 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>, NodeKind.Array, unknown>, {
678
683
  [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
679
684
  }, false, T>;
680
685
  readonly boolean: TreeNodeSchema<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean>;
@@ -682,7 +687,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
682
687
  get identifier(): FieldSchema<FieldKind.Identifier, typeof SchemaFactory.string>;
683
688
  map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
684
689
  map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
685
- 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>, NodeKind.Map>, {
690
+ 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>, NodeKind.Map, unknown>, {
686
691
  [Symbol.iterator](): Iterator<[
687
692
  string,
688
693
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
@@ -773,12 +778,22 @@ interface TreeArrayNodeBase<out T, in TNew, in TMoveFrom> extends ReadonlyArray<
773
778
  export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAllowedTypes>> extends TreeArrayNodeBase<TreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, InsertableTreeNodeFromImplicitAllowedTypesUnsafe<TAllowedTypes>, TreeArrayNode> {
774
779
  }
775
780
 
781
+ // @beta @sealed
782
+ export const TreeBeta: {
783
+ readonly on: <K extends keyof TreeChangeEventsBeta<TNode>, TNode extends TreeNode>(node: TNode, eventName: K, listener: NoInfer<TreeChangeEventsBeta<TNode>[K]>) => () => void;
784
+ };
785
+
776
786
  // @public @sealed
777
787
  export interface TreeChangeEvents {
778
- nodeChanged(): void;
788
+ nodeChanged(unstable?: unknown): void;
779
789
  treeChanged(): void;
780
790
  }
781
791
 
792
+ // @beta @sealed
793
+ export interface TreeChangeEventsBeta<TNode extends TreeNode = TreeNode> extends TreeChangeEvents {
794
+ nodeChanged: (data: NodeChangedData<TNode> & (TNode extends WithType<string, NodeKind.Map | NodeKind.Object> ? Required<Pick<NodeChangedData<TNode>, "changedProperties">> : unknown)) => void;
795
+ }
796
+
782
797
  // @public
783
798
  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;
784
799
 
@@ -856,7 +871,7 @@ interface TreeNodeSchemaNonClass<out Name extends string = string, out Kind exte
856
871
  }
857
872
 
858
873
  // @public
859
- export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object>;
874
+ export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
860
875
 
861
876
  // @public
862
877
  export type TreeObjectNodeUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object>;
@@ -920,10 +935,10 @@ export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKi
920
935
  }[T["kind"]]>> = true;
921
936
 
922
937
  // @public @sealed
923
- export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind> {
938
+ export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind, out TInfo = unknown> {
924
939
  // @deprecated
925
940
  get [typeNameSymbol](): TName;
926
- get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind>;
941
+ get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind, unknown, never, boolean, TInfo>;
927
942
  }
928
943
 
929
944
  ```
@@ -980,7 +980,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
980
980
  constructor(scope: TScope);
981
981
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
982
982
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
983
- 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>, NodeKind.Array>, {
983
+ 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>, NodeKind.Array, unknown>, {
984
984
  [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
985
985
  }, false, T>;
986
986
  readonly boolean: TreeNodeSchema<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean>;
@@ -988,7 +988,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
988
988
  get identifier(): FieldSchema<FieldKind.Identifier, typeof SchemaFactory.string>;
989
989
  map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
990
990
  map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
991
- 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>, NodeKind.Map>, {
991
+ 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>, NodeKind.Map, unknown>, {
992
992
  [Symbol.iterator](): Iterator<[
993
993
  string,
994
994
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
@@ -1172,7 +1172,7 @@ export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAl
1172
1172
 
1173
1173
  // @public @sealed
1174
1174
  export interface TreeChangeEvents {
1175
- nodeChanged(): void;
1175
+ nodeChanged(unstable?: unknown): void;
1176
1176
  treeChanged(): void;
1177
1177
  }
1178
1178
 
@@ -1253,7 +1253,7 @@ interface TreeNodeSchemaNonClass<out Name extends string = string, out Kind exte
1253
1253
  }
1254
1254
 
1255
1255
  // @public
1256
- export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object>;
1256
+ export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
1257
1257
 
1258
1258
  // @public
1259
1259
  export type TreeObjectNodeUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object>;
@@ -1317,10 +1317,10 @@ export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKi
1317
1317
  }[T["kind"]]>> = true;
1318
1318
 
1319
1319
  // @public @sealed
1320
- export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind> {
1320
+ export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind, out TInfo = unknown> {
1321
1321
  // @deprecated
1322
1322
  get [typeNameSymbol](): TName;
1323
- get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind>;
1323
+ get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind, unknown, never, boolean, TInfo>;
1324
1324
  }
1325
1325
 
1326
1326
  ```
@@ -710,7 +710,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
710
710
  constructor(scope: TScope);
711
711
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
712
712
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
713
- 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>, NodeKind.Array>, {
713
+ 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>, NodeKind.Array, unknown>, {
714
714
  [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
715
715
  }, false, T>;
716
716
  readonly boolean: TreeNodeSchema<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean>;
@@ -718,7 +718,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
718
718
  get identifier(): FieldSchema<FieldKind.Identifier, typeof SchemaFactory.string>;
719
719
  map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
720
720
  map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
721
- 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>, NodeKind.Map>, {
721
+ 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>, NodeKind.Map, unknown>, {
722
722
  [Symbol.iterator](): Iterator<[
723
723
  string,
724
724
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
@@ -815,7 +815,7 @@ export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAl
815
815
 
816
816
  // @public @sealed
817
817
  export interface TreeChangeEvents {
818
- nodeChanged(): void;
818
+ nodeChanged(unstable?: unknown): void;
819
819
  treeChanged(): void;
820
820
  }
821
821
 
@@ -896,7 +896,7 @@ interface TreeNodeSchemaNonClass<out Name extends string = string, out Kind exte
896
896
  }
897
897
 
898
898
  // @public
899
- export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object>;
899
+ export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
900
900
 
901
901
  // @public
902
902
  export type TreeObjectNodeUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object>;
@@ -960,10 +960,10 @@ export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKi
960
960
  }[T["kind"]]>> = true;
961
961
 
962
962
  // @public @sealed
963
- export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind> {
963
+ export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind, out TInfo = unknown> {
964
964
  // @deprecated
965
965
  get [typeNameSymbol](): TName;
966
- get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind>;
966
+ get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind, unknown, never, boolean, TInfo>;
967
967
  }
968
968
 
969
969
  ```
@@ -674,7 +674,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
674
674
  constructor(scope: TScope);
675
675
  array<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, `Array<${string}>`>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
676
676
  array<const Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Array, TreeArrayNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Array>, Iterable<InsertableTreeNodeFromImplicitAllowedTypes<T>>, true, T>;
677
- 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>, NodeKind.Array>, {
677
+ 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>, NodeKind.Array, unknown>, {
678
678
  [Symbol.iterator](): Iterator<InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>>;
679
679
  }, false, T>;
680
680
  readonly boolean: TreeNodeSchema<"com.fluidframework.leaf.boolean", NodeKind.Leaf, boolean, boolean>;
@@ -682,7 +682,7 @@ export class SchemaFactory<out TScope extends string | undefined = string | unde
682
682
  get identifier(): FieldSchema<FieldKind.Identifier, typeof SchemaFactory.string>;
683
683
  map<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchema<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, `Map<${string}>`>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
684
684
  map<Name extends TName, const T extends ImplicitAllowedTypes>(name: Name, allowedTypes: T): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Map, TreeMapNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Map>, MapNodeInsertableData<T>, true, T>;
685
- 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>, NodeKind.Map>, {
685
+ 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>, NodeKind.Map, unknown>, {
686
686
  [Symbol.iterator](): Iterator<[
687
687
  string,
688
688
  InsertableTreeNodeFromImplicitAllowedTypesUnsafe<T>
@@ -775,7 +775,7 @@ export interface TreeArrayNodeUnsafe<TAllowedTypes extends Unenforced<ImplicitAl
775
775
 
776
776
  // @public @sealed
777
777
  export interface TreeChangeEvents {
778
- nodeChanged(): void;
778
+ nodeChanged(unstable?: unknown): void;
779
779
  treeChanged(): void;
780
780
  }
781
781
 
@@ -856,7 +856,7 @@ interface TreeNodeSchemaNonClass<out Name extends string = string, out Kind exte
856
856
  }
857
857
 
858
858
  // @public
859
- export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object>;
859
+ export type TreeObjectNode<T extends RestrictiveReadonlyRecord<string, ImplicitFieldSchema>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecord<T> & WithType<TypeName, NodeKind.Object, T>;
860
860
 
861
861
  // @public
862
862
  export type TreeObjectNodeUnsafe<T extends Unenforced<RestrictiveReadonlyRecord<string, ImplicitFieldSchema>>, TypeName extends string = string> = TreeNode & ObjectFromSchemaRecordUnsafe<T> & WithType<TypeName, NodeKind.Object>;
@@ -920,10 +920,10 @@ export type ValidateRecursiveSchema<T extends TreeNodeSchemaClass<string, NodeKi
920
920
  }[T["kind"]]>> = true;
921
921
 
922
922
  // @public @sealed
923
- export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind> {
923
+ export interface WithType<out TName extends string = string, out TKind extends NodeKind = NodeKind, out TInfo = unknown> {
924
924
  // @deprecated
925
925
  get [typeNameSymbol](): TName;
926
- get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind>;
926
+ get [typeSchemaSymbol](): TreeNodeSchemaClass<TName, TKind, unknown, never, boolean, TInfo>;
927
927
  }
928
928
 
929
929
  ```
package/beta.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluid-tools/build-cli.
9
+ */
10
+
11
+ export * from "./lib/beta.js";
@@ -0,0 +1,146 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluid-tools/build-cli.
9
+ */
10
+
11
+ /**
12
+ * Bundles a collection of Fluid Framework client libraries for easy use when paired with a corresponding service client
13
+ * package (e.g. `@fluidframework/azure-client`, `@fluidframework/tinylicious-client`, or `@fluidframework/odsp-client (BETA)`).
14
+ *
15
+ * @packageDocumentation
16
+ */
17
+
18
+ export {
19
+ // Unrestricted APIs
20
+ InternalTypes,
21
+
22
+ // @public APIs
23
+ AllowedTypes,
24
+ AttachState,
25
+ CommitKind,
26
+ CommitMetadata,
27
+ ConnectionState,
28
+ ConnectionStateType,
29
+ ContainerAttachProps,
30
+ ContainerSchema,
31
+ ErasedType,
32
+ FieldKind,
33
+ FieldProps,
34
+ FieldSchema,
35
+ FieldSchemaUnsafe,
36
+ FluidObject,
37
+ FluidObjectProviderKeys,
38
+ IConnection,
39
+ ICriticalContainerError,
40
+ IDisposable,
41
+ IErrorBase,
42
+ IErrorEvent,
43
+ IEvent,
44
+ IEventProvider,
45
+ IEventThisPlaceHolder,
46
+ IEventTransformer,
47
+ IFluidContainer,
48
+ IFluidContainerEvents,
49
+ IFluidHandle,
50
+ IFluidHandleErased,
51
+ IFluidLoadable,
52
+ IMember,
53
+ IProvideFluidLoadable,
54
+ IServiceAudience,
55
+ IServiceAudienceEvents,
56
+ ITelemetryBaseProperties,
57
+ ITree,
58
+ ITreeConfigurationOptions,
59
+ ITreeViewConfiguration,
60
+ ImplicitAllowedTypes,
61
+ ImplicitFieldSchema,
62
+ InitialObjects,
63
+ InsertableObjectFromSchemaRecordUnsafe,
64
+ InsertableTreeFieldFromImplicitField,
65
+ InsertableTreeFieldFromImplicitFieldUnsafe,
66
+ InsertableTreeNodeFromImplicitAllowedTypes,
67
+ InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
68
+ InsertableTypedNode,
69
+ InternalTreeNode,
70
+ IsListener,
71
+ IterableTreeArrayContent,
72
+ LazyItem,
73
+ Listenable,
74
+ Listeners,
75
+ MakeNominal,
76
+ MapNodeInsertableData,
77
+ MemberChangedListener,
78
+ Myself,
79
+ NodeFromSchema,
80
+ NodeInDocumentConstraint,
81
+ NodeKind,
82
+ Off,
83
+ ReplaceIEventThisPlaceHolder,
84
+ RestrictiveReadonlyRecord,
85
+ Revertible,
86
+ RevertibleFactory,
87
+ RevertibleStatus,
88
+ RunTransaction,
89
+ SchemaCompatibilityStatus,
90
+ SchemaFactory,
91
+ SharedObjectKind,
92
+ SharedTree,
93
+ Tagged,
94
+ TelemetryBaseEventPropertyType,
95
+ TransactionConstraint,
96
+ TransformedEvent,
97
+ Tree,
98
+ TreeArrayNode,
99
+ TreeArrayNodeUnsafe,
100
+ TreeChangeEvents,
101
+ TreeFieldFromImplicitField,
102
+ TreeLeafValue,
103
+ TreeMapNode,
104
+ TreeMapNodeUnsafe,
105
+ TreeNode,
106
+ TreeNodeApi,
107
+ TreeNodeFromImplicitAllowedTypes,
108
+ TreeNodeSchema,
109
+ TreeNodeSchemaClass,
110
+ TreeNodeSchemaCore,
111
+ TreeObjectNode,
112
+ TreeObjectNodeUnsafe,
113
+ TreeStatus,
114
+ TreeView,
115
+ TreeViewConfiguration,
116
+ TreeViewEvents,
117
+ Unenforced,
118
+ Unhydrated,
119
+ ValidateRecursiveSchema,
120
+ WithType,
121
+ isFluidHandle,
122
+ rollback,
123
+ typeSchemaSymbol,
124
+
125
+ // @beta APIs
126
+ NodeChangedData,
127
+ TreeBeta,
128
+ TreeChangeEventsBeta,
129
+
130
+ // @alpha APIs
131
+ FixRecursiveArraySchema,
132
+ JsonArrayNodeSchema,
133
+ JsonFieldSchema,
134
+ JsonLeafNodeSchema,
135
+ JsonLeafSchemaType,
136
+ JsonMapNodeSchema,
137
+ JsonNodeSchema,
138
+ JsonNodeSchemaBase,
139
+ JsonObjectNodeSchema,
140
+ JsonRefPath,
141
+ JsonSchemaId,
142
+ JsonSchemaRef,
143
+ JsonSchemaType,
144
+ JsonTreeSchema,
145
+ getJsonSchema
146
+ } from "./index.js";
package/dist/beta.d.ts ADDED
@@ -0,0 +1,129 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ /*
7
+ * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
8
+ * Generated by "flub generate entrypoints" in @fluid-tools/build-cli.
9
+ */
10
+
11
+ /**
12
+ * Bundles a collection of Fluid Framework client libraries for easy use when paired with a corresponding service client
13
+ * package (e.g. `@fluidframework/azure-client`, `@fluidframework/tinylicious-client`, or `@fluidframework/odsp-client (BETA)`).
14
+ *
15
+ * @packageDocumentation
16
+ */
17
+
18
+ export {
19
+ // Unrestricted APIs
20
+ InternalTypes,
21
+
22
+ // @public APIs
23
+ AllowedTypes,
24
+ AttachState,
25
+ CommitKind,
26
+ CommitMetadata,
27
+ ConnectionState,
28
+ ConnectionStateType,
29
+ ContainerAttachProps,
30
+ ContainerSchema,
31
+ ErasedType,
32
+ FieldKind,
33
+ FieldProps,
34
+ FieldSchema,
35
+ FieldSchemaUnsafe,
36
+ FluidObject,
37
+ FluidObjectProviderKeys,
38
+ IConnection,
39
+ ICriticalContainerError,
40
+ IDisposable,
41
+ IErrorBase,
42
+ IErrorEvent,
43
+ IEvent,
44
+ IEventProvider,
45
+ IEventThisPlaceHolder,
46
+ IEventTransformer,
47
+ IFluidContainer,
48
+ IFluidContainerEvents,
49
+ IFluidHandle,
50
+ IFluidHandleErased,
51
+ IFluidLoadable,
52
+ IMember,
53
+ IProvideFluidLoadable,
54
+ IServiceAudience,
55
+ IServiceAudienceEvents,
56
+ ITelemetryBaseProperties,
57
+ ITree,
58
+ ITreeConfigurationOptions,
59
+ ITreeViewConfiguration,
60
+ ImplicitAllowedTypes,
61
+ ImplicitFieldSchema,
62
+ InitialObjects,
63
+ InsertableObjectFromSchemaRecordUnsafe,
64
+ InsertableTreeFieldFromImplicitField,
65
+ InsertableTreeFieldFromImplicitFieldUnsafe,
66
+ InsertableTreeNodeFromImplicitAllowedTypes,
67
+ InsertableTreeNodeFromImplicitAllowedTypesUnsafe,
68
+ InsertableTypedNode,
69
+ InternalTreeNode,
70
+ IsListener,
71
+ IterableTreeArrayContent,
72
+ LazyItem,
73
+ Listenable,
74
+ Listeners,
75
+ MakeNominal,
76
+ MapNodeInsertableData,
77
+ MemberChangedListener,
78
+ Myself,
79
+ NodeFromSchema,
80
+ NodeInDocumentConstraint,
81
+ NodeKind,
82
+ Off,
83
+ ReplaceIEventThisPlaceHolder,
84
+ RestrictiveReadonlyRecord,
85
+ Revertible,
86
+ RevertibleFactory,
87
+ RevertibleStatus,
88
+ RunTransaction,
89
+ SchemaCompatibilityStatus,
90
+ SchemaFactory,
91
+ SharedObjectKind,
92
+ SharedTree,
93
+ Tagged,
94
+ TelemetryBaseEventPropertyType,
95
+ TransactionConstraint,
96
+ TransformedEvent,
97
+ Tree,
98
+ TreeArrayNode,
99
+ TreeArrayNodeUnsafe,
100
+ TreeChangeEvents,
101
+ TreeFieldFromImplicitField,
102
+ TreeLeafValue,
103
+ TreeMapNode,
104
+ TreeMapNodeUnsafe,
105
+ TreeNode,
106
+ TreeNodeApi,
107
+ TreeNodeFromImplicitAllowedTypes,
108
+ TreeNodeSchema,
109
+ TreeNodeSchemaClass,
110
+ TreeNodeSchemaCore,
111
+ TreeObjectNode,
112
+ TreeObjectNodeUnsafe,
113
+ TreeStatus,
114
+ TreeView,
115
+ TreeViewConfiguration,
116
+ TreeViewEvents,
117
+ Unenforced,
118
+ Unhydrated,
119
+ ValidateRecursiveSchema,
120
+ WithType,
121
+ isFluidHandle,
122
+ rollback,
123
+ typeSchemaSymbol,
124
+
125
+ // @beta APIs
126
+ NodeChangedData,
127
+ TreeBeta,
128
+ TreeChangeEventsBeta
129
+ } from "./index.js";
package/dist/index.d.ts CHANGED
@@ -17,7 +17,7 @@ export type { SharedObjectKind } from "@fluidframework/shared-object-base";
17
17
  export type { IErrorBase, IEventProvider, IDisposable, IEvent, IEventThisPlaceHolder, IErrorEvent, ErasedType, IFluidHandle, IFluidLoadable, ITelemetryBaseProperties, IEventTransformer, IProvideFluidLoadable, IFluidHandleErased, TransformedEvent, TelemetryBaseEventPropertyType, Tagged, ReplaceIEventThisPlaceHolder, FluidObject, // Linked in doc comment
18
18
  FluidObjectProviderKeys, } from "@fluidframework/core-interfaces";
19
19
  export type { isFluidHandle } from "@fluidframework/runtime-utils";
20
- export * from "@fluidframework/tree";
20
+ export * from "@fluidframework/tree/alpha";
21
21
  import type { SharedObjectKind } from "@fluidframework/shared-object-base";
22
22
  import type { ITree } from "@fluidframework/tree";
23
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AAMH,YAAY,EACX,eAAe,IAAI,mBAAmB,EAAE,0CAA0C;AAClF,uBAAuB,GACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,YAAY,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,MAAM,GACN,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,YAAY,EACX,UAAU,EACV,cAAc,EACd,WAAW,EACX,MAAM,EACN,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,MAAM,EACN,4BAA4B,EAC5B,WAAW,EAAE,wBAAwB;AACrC,uBAAuB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAOnE,cAAc,sBAAsB,CAAC;AAQrC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAsB,CAAC;AAQtE,YAAY,EACX,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,UAAU,EACV,gBAAgB,EAChB,aAAa,GACb,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE1E,YAAY,EACX,mBAAmB,EACnB,qBAAqB,EACrB,SAAS,EACT,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,4BAA4B,EAC5B,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,IAAI,EACJ,sBAAsB,GACtB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACN,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,wBAAwB,EACxB,YAAY,GACZ,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EACX,aAAa,EACb,mBAAmB,GACnB,MAAM,6CAA6C,CAAC;AAErD,YAAY,EACX,yBAAyB,EAAE,iCAAiC;AAC5D,aAAa,EAAE,yCAAyC;AACxD,MAAM,GACN,MAAM,6CAA6C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AAMH,YAAY,EACX,eAAe,IAAI,mBAAmB,EAAE,0CAA0C;AAClF,uBAAuB,GACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,YAAY,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,MAAM,GACN,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,YAAY,EACX,UAAU,EACV,cAAc,EACd,WAAW,EACX,MAAM,EACN,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,8BAA8B,EAC9B,MAAM,EACN,4BAA4B,EAC5B,WAAW,EAAE,wBAAwB;AACrC,uBAAuB,GACvB,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAKnE,cAAc,4BAA4B,CAAC;AAQ3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAsB,CAAC;AAQtE,YAAY,EACX,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,UAAU,EACV,gBAAgB,EAChB,aAAa,GACb,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAE1E,YAAY,EACX,mBAAmB,EACnB,qBAAqB,EACrB,SAAS,EACT,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,4BAA4B,EAC5B,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,IAAI,EACJ,sBAAsB,GACtB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACN,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,wBAAwB,EACxB,YAAY,GACZ,MAAM,mCAAmC,CAAC;AAE3C,YAAY,EACX,aAAa,EACb,mBAAmB,GACnB,MAAM,6CAA6C,CAAC;AAErD,YAAY,EACX,yBAAyB,EAAE,iCAAiC;AAC5D,aAAa,EAAE,yCAAyC;AACxD,MAAM,GACN,MAAM,6CAA6C,CAAC"}
package/dist/index.js CHANGED
@@ -23,12 +23,10 @@ var container_definitions_1 = require("@fluidframework/container-definitions");
23
23
  Object.defineProperty(exports, "AttachState", { enumerable: true, get: function () { return container_definitions_1.AttachState; } });
24
24
  var container_loader_1 = require("@fluidframework/container-loader");
25
25
  Object.defineProperty(exports, "ConnectionState", { enumerable: true, get: function () { return container_loader_1.ConnectionState; } });
26
- // Let the tree package manage its own API surface, we will simply reflect it here.
27
- // Note: this only surfaces the `@public` API items from the tree package. If the `@beta` and `@alpha` items are
28
- // desired, they can be added by re-exporting from one of the package's aliased export paths instead (e.g. `tree
29
- // alpha` to surface everything `@alpha` and higher).
30
- // eslint-disable-next-line no-restricted-syntax, import/export
31
- __exportStar(require("@fluidframework/tree"), exports);
26
+ // Let the tree package manage its own API surface.
27
+ // Note: this only surfaces the `@public, @beta and @alpha` API items from the tree package.
28
+ // eslint-disable-next-line no-restricted-syntax, import/no-internal-modules
29
+ __exportStar(require("@fluidframework/tree/alpha"), exports);
32
30
  const internal_1 = require("@fluidframework/tree/internal");
33
31
  /**
34
32
  * A hierarchical data structure for collaboratively editing strongly typed JSON-like trees
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;AAiBH,+EAAoE;AAA3D,oHAAA,WAAW,OAAA;AACpB,qEAAmE;AAA1D,mHAAA,eAAe,OAAA;AAuCxB,mFAAmF;AACnF,gHAAgH;AAChH,gHAAgH;AAChH,qDAAqD;AACrD,+DAA+D;AAC/D,uDAAqC;AAUrC,4DAAiF;AAEjF;;;;;;;;;GASG;AACU,QAAA,UAAU,GAA4B,qBAAkB,CAAC;AAmBtE,yDAA0E;AAAjE,2GAAA,eAAe,OAAA;AAAE,qGAAA,SAAS,OAAA;AAsBnC,8DAO2C;AAN1C,wGAAA,YAAY,OAAA;AACZ,8GAAA,kBAAkB,OAAA;AAClB,yGAAA,aAAa,OAAA;AACb,4GAAA,gBAAgB,OAAA;AAChB,oHAAA,wBAAwB,OAAA;AACxB,wGAAA,YAAY,OAAA;AAcb,4BAA4B","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Bundles a collection of Fluid Framework client libraries for easy use when paired with a corresponding service client\n * package (e.g. `@fluidframework/azure-client`, `@fluidframework/tinylicious-client`, or `@fluidframework/odsp-client (BETA)`).\n *\n * @packageDocumentation\n */\n\n// ===============================================================\n// #region Public exports\n// #region Basic re-exports\n\nexport type {\n\tConnectionState as ConnectionStateType, // TODO: deduplicate ConnectionState types\n\tICriticalContainerError,\n} from \"@fluidframework/container-definitions\";\nexport { AttachState } from \"@fluidframework/container-definitions\";\nexport { ConnectionState } from \"@fluidframework/container-loader\";\nexport type {\n\tContainerAttachProps,\n\tContainerSchema,\n\tIConnection,\n\tIFluidContainer,\n\tIFluidContainerEvents,\n\tIMember,\n\tInitialObjects,\n\tIServiceAudience,\n\tIServiceAudienceEvents,\n\tMemberChangedListener,\n\tMyself,\n} from \"@fluidframework/fluid-static\";\nexport type { SharedObjectKind } from \"@fluidframework/shared-object-base\";\nexport type {\n\tIErrorBase,\n\tIEventProvider,\n\tIDisposable,\n\tIEvent,\n\tIEventThisPlaceHolder,\n\tIErrorEvent,\n\tErasedType,\n\tIFluidHandle,\n\tIFluidLoadable,\n\tITelemetryBaseProperties,\n\tIEventTransformer,\n\tIProvideFluidLoadable,\n\tIFluidHandleErased,\n\tTransformedEvent,\n\tTelemetryBaseEventPropertyType,\n\tTagged,\n\tReplaceIEventThisPlaceHolder,\n\tFluidObject, // Linked in doc comment\n\tFluidObjectProviderKeys, // Used by FluidObject\n} from \"@fluidframework/core-interfaces\";\n\nexport type { isFluidHandle } from \"@fluidframework/runtime-utils\";\n\n// Let the tree package manage its own API surface, we will simply reflect it here.\n// Note: this only surfaces the `@public` API items from the tree package. If the `@beta` and `@alpha` items are\n// desired, they can be added by re-exporting from one of the package's aliased export paths instead (e.g. `tree\n// alpha` to surface everything `@alpha` and higher).\n// eslint-disable-next-line no-restricted-syntax, import/export\nexport * from \"@fluidframework/tree\";\n\n// End of basic public exports - nothing above this line should\n// depend on an /internal path.\n// #endregion Basic re-exports\n// ---------------------------------------------------------------\n// #region Custom re-exports\n\nimport type { SharedObjectKind } from \"@fluidframework/shared-object-base\";\nimport type { ITree } from \"@fluidframework/tree\";\nimport { SharedTree as OriginalSharedTree } from \"@fluidframework/tree/internal\";\n\n/**\n * A hierarchical data structure for collaboratively editing strongly typed JSON-like trees\n * of objects, arrays, and other data types.\n * @privateRemarks\n * Here we reexport SharedTree, but with the `@alpha` types (`ISharedObjectKind`) removed, just keeping the `SharedObjectKind`.\n * Doing this requires creating this new typed export rather than relying on a reexport directly from the tree package.\n * The tree package itself does not do this because it's API needs to be usable from the encapsulated API which requires `ISharedObjectKind`.\n * This package however is not intended for use by users of the encapsulated API, and therefor it can discard that interface.\n * @public\n */\nexport const SharedTree: SharedObjectKind<ITree> = OriginalSharedTree;\n\n// #endregion Custom re-exports\n// #endregion Public exports\n\n// ===============================================================\n// #region Legacy exports\n\nexport type {\n\tIDirectory,\n\tIDirectoryEvents,\n\tIDirectoryValueChanged,\n\tISharedDirectory,\n\tISharedDirectoryEvents,\n\tISharedMap,\n\tISharedMapEvents,\n\tIValueChanged,\n} from \"@fluidframework/map/internal\";\n\nexport { SharedDirectory, SharedMap } from \"@fluidframework/map/internal\";\n\nexport type {\n\tDeserializeCallback,\n\tInteriorSequencePlace,\n\tIInterval,\n\tIIntervalCollectionEvent,\n\tIIntervalCollection,\n\tIntervalIndex,\n\tIntervalStickiness,\n\tISequenceDeltaRange,\n\tISerializableInterval,\n\tISerializedInterval,\n\tISharedIntervalCollection,\n\tISharedSegmentSequenceEvents,\n\tISharedString,\n\tSequencePlace,\n\tSharedStringSegment,\n\tSide,\n\tISharedSegmentSequence,\n} from \"@fluidframework/sequence/internal\";\n\nexport {\n\tIntervalType,\n\tSequenceDeltaEvent,\n\tSequenceEvent,\n\tSequenceInterval,\n\tSequenceMaintenanceEvent,\n\tSharedString,\n} from \"@fluidframework/sequence/internal\";\n\nexport type {\n\tISharedObject,\n\tISharedObjectEvents,\n} from \"@fluidframework/shared-object-base/internal\";\n\nexport type {\n\tISequencedDocumentMessage, // Leaked via ISharedObjectEvents\n\tIBranchOrigin, // Required for ISequencedDocumentMessage\n\tITrace, // Required for ISequencedDocumentMessage\n} from \"@fluidframework/driver-definitions/internal\";\n\n// #endregion Legacy exports\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;AAiBH,+EAAoE;AAA3D,oHAAA,WAAW,OAAA;AACpB,qEAAmE;AAA1D,mHAAA,eAAe,OAAA;AAuCxB,mDAAmD;AACnD,4FAA4F;AAC5F,4EAA4E;AAC5E,6DAA2C;AAU3C,4DAAiF;AAEjF;;;;;;;;;GASG;AACU,QAAA,UAAU,GAA4B,qBAAkB,CAAC;AAmBtE,yDAA0E;AAAjE,2GAAA,eAAe,OAAA;AAAE,qGAAA,SAAS,OAAA;AAsBnC,8DAO2C;AAN1C,wGAAA,YAAY,OAAA;AACZ,8GAAA,kBAAkB,OAAA;AAClB,yGAAA,aAAa,OAAA;AACb,4GAAA,gBAAgB,OAAA;AAChB,oHAAA,wBAAwB,OAAA;AACxB,wGAAA,YAAY,OAAA;AAcb,4BAA4B","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Bundles a collection of Fluid Framework client libraries for easy use when paired with a corresponding service client\n * package (e.g. `@fluidframework/azure-client`, `@fluidframework/tinylicious-client`, or `@fluidframework/odsp-client (BETA)`).\n *\n * @packageDocumentation\n */\n\n// ===============================================================\n// #region Public, Beta and Alpha (non-legacy) exports\n// #region Basic re-exports\n\nexport type {\n\tConnectionState as ConnectionStateType, // TODO: deduplicate ConnectionState types\n\tICriticalContainerError,\n} from \"@fluidframework/container-definitions\";\nexport { AttachState } from \"@fluidframework/container-definitions\";\nexport { ConnectionState } from \"@fluidframework/container-loader\";\nexport type {\n\tContainerAttachProps,\n\tContainerSchema,\n\tIConnection,\n\tIFluidContainer,\n\tIFluidContainerEvents,\n\tIMember,\n\tInitialObjects,\n\tIServiceAudience,\n\tIServiceAudienceEvents,\n\tMemberChangedListener,\n\tMyself,\n} from \"@fluidframework/fluid-static\";\nexport type { SharedObjectKind } from \"@fluidframework/shared-object-base\";\nexport type {\n\tIErrorBase,\n\tIEventProvider,\n\tIDisposable,\n\tIEvent,\n\tIEventThisPlaceHolder,\n\tIErrorEvent,\n\tErasedType,\n\tIFluidHandle,\n\tIFluidLoadable,\n\tITelemetryBaseProperties,\n\tIEventTransformer,\n\tIProvideFluidLoadable,\n\tIFluidHandleErased,\n\tTransformedEvent,\n\tTelemetryBaseEventPropertyType,\n\tTagged,\n\tReplaceIEventThisPlaceHolder,\n\tFluidObject, // Linked in doc comment\n\tFluidObjectProviderKeys, // Used by FluidObject\n} from \"@fluidframework/core-interfaces\";\n\nexport type { isFluidHandle } from \"@fluidframework/runtime-utils\";\n\n// Let the tree package manage its own API surface.\n// Note: this only surfaces the `@public, @beta and @alpha` API items from the tree package.\n// eslint-disable-next-line no-restricted-syntax, import/no-internal-modules\nexport * from \"@fluidframework/tree/alpha\";\n\n// End of basic public+beta+alpha exports - nothing above this line should\n// depend on an /internal path.\n// #endregion Basic re-exports\n// ---------------------------------------------------------------\n// #region Custom re-exports\n\nimport type { SharedObjectKind } from \"@fluidframework/shared-object-base\";\nimport type { ITree } from \"@fluidframework/tree\";\nimport { SharedTree as OriginalSharedTree } from \"@fluidframework/tree/internal\";\n\n/**\n * A hierarchical data structure for collaboratively editing strongly typed JSON-like trees\n * of objects, arrays, and other data types.\n * @privateRemarks\n * Here we reexport SharedTree, but with the `@alpha` types (`ISharedObjectKind`) removed, just keeping the `SharedObjectKind`.\n * Doing this requires creating this new typed export rather than relying on a reexport directly from the tree package.\n * The tree package itself does not do this because it's API needs to be usable from the encapsulated API which requires `ISharedObjectKind`.\n * This package however is not intended for use by users of the encapsulated API, and therefor it can discard that interface.\n * @public\n */\nexport const SharedTree: SharedObjectKind<ITree> = OriginalSharedTree;\n\n// #endregion Custom re-exports\n// #endregion\n\n// ===============================================================\n// #region Legacy exports\n\nexport type {\n\tIDirectory,\n\tIDirectoryEvents,\n\tIDirectoryValueChanged,\n\tISharedDirectory,\n\tISharedDirectoryEvents,\n\tISharedMap,\n\tISharedMapEvents,\n\tIValueChanged,\n} from \"@fluidframework/map/internal\";\n\nexport { SharedDirectory, SharedMap } from \"@fluidframework/map/internal\";\n\nexport type {\n\tDeserializeCallback,\n\tInteriorSequencePlace,\n\tIInterval,\n\tIIntervalCollectionEvent,\n\tIIntervalCollection,\n\tIntervalIndex,\n\tIntervalStickiness,\n\tISequenceDeltaRange,\n\tISerializableInterval,\n\tISerializedInterval,\n\tISharedIntervalCollection,\n\tISharedSegmentSequenceEvents,\n\tISharedString,\n\tSequencePlace,\n\tSharedStringSegment,\n\tSide,\n\tISharedSegmentSequence,\n} from \"@fluidframework/sequence/internal\";\n\nexport {\n\tIntervalType,\n\tSequenceDeltaEvent,\n\tSequenceEvent,\n\tSequenceInterval,\n\tSequenceMaintenanceEvent,\n\tSharedString,\n} from \"@fluidframework/sequence/internal\";\n\nexport type {\n\tISharedObject,\n\tISharedObjectEvents,\n} from \"@fluidframework/shared-object-base/internal\";\n\nexport type {\n\tISequencedDocumentMessage, // Leaked via ISharedObjectEvents\n\tIBranchOrigin, // Required for ISequencedDocumentMessage\n\tITrace, // Required for ISequencedDocumentMessage\n} from \"@fluidframework/driver-definitions/internal\";\n\n// #endregion Legacy exports\n"]}