@fluidframework/core-interfaces 2.0.0-dev.7.4.0.216897 → 2.0.0-dev.7.4.0.217212

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.
Files changed (62) hide show
  1. package/api-report/core-interfaces.api.md +32 -24
  2. package/dist/config.d.ts +35 -0
  3. package/dist/config.d.ts.map +1 -0
  4. package/dist/config.js +7 -0
  5. package/dist/config.js.map +1 -0
  6. package/dist/core-interfaces-alpha.d.ts +511 -38
  7. package/dist/core-interfaces-beta.d.ts +4 -0
  8. package/dist/core-interfaces-public.d.ts +4 -0
  9. package/dist/core-interfaces-untrimmed.d.ts +59 -26
  10. package/dist/disposable.d.ts +1 -1
  11. package/dist/disposable.js.map +1 -1
  12. package/dist/error.d.ts +2 -1
  13. package/dist/error.d.ts.map +1 -1
  14. package/dist/error.js.map +1 -1
  15. package/dist/events.d.ts +8 -8
  16. package/dist/events.js.map +1 -1
  17. package/dist/fluidRouter.d.ts +6 -6
  18. package/dist/fluidRouter.js +1 -1
  19. package/dist/fluidRouter.js.map +1 -1
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/logger.d.ts +8 -8
  24. package/dist/logger.js +1 -1
  25. package/dist/logger.js.map +1 -1
  26. package/dist/provider.d.ts +2 -2
  27. package/dist/provider.js.map +1 -1
  28. package/lib/config.d.ts +35 -0
  29. package/lib/config.d.ts.map +1 -0
  30. package/lib/config.js +6 -0
  31. package/lib/config.js.map +1 -0
  32. package/lib/core-interfaces-alpha.d.ts +511 -38
  33. package/lib/core-interfaces-beta.d.ts +4 -0
  34. package/lib/core-interfaces-public.d.ts +4 -0
  35. package/lib/core-interfaces-untrimmed.d.ts +59 -26
  36. package/lib/disposable.d.ts +1 -1
  37. package/lib/disposable.js.map +1 -1
  38. package/lib/error.d.ts +2 -1
  39. package/lib/error.d.ts.map +1 -1
  40. package/lib/error.js.map +1 -1
  41. package/lib/events.d.ts +8 -8
  42. package/lib/events.js.map +1 -1
  43. package/lib/fluidRouter.d.ts +6 -6
  44. package/lib/fluidRouter.js +1 -1
  45. package/lib/fluidRouter.js.map +1 -1
  46. package/lib/index.d.ts +1 -0
  47. package/lib/index.d.ts.map +1 -1
  48. package/lib/index.js.map +1 -1
  49. package/lib/logger.d.ts +8 -8
  50. package/lib/logger.js +1 -1
  51. package/lib/logger.js.map +1 -1
  52. package/lib/provider.d.ts +2 -2
  53. package/lib/provider.js.map +1 -1
  54. package/package.json +1 -1
  55. package/src/config.ts +36 -0
  56. package/src/disposable.ts +1 -1
  57. package/src/error.ts +2 -1
  58. package/src/events.ts +8 -8
  59. package/src/fluidRouter.ts +6 -6
  60. package/src/index.ts +1 -0
  61. package/src/logger.ts +8 -8
  62. package/src/provider.ts +2 -2
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Types supported by {@link IConfigProviderBase}.
3
+ * @internal
4
+ */
5
+ export declare type ConfigTypes = string | number | boolean | number[] | string[] | boolean[] | undefined;
6
+
1
7
  /**
2
8
  * Allows an interface to extend interfaces that already extend an {@link IEventProvider}.
3
9
  *
@@ -20,7 +26,7 @@
20
26
  * ```
21
27
  *
22
28
  * interface B will now extend interface A and its events
23
- * @internal
29
+ * @alpha
24
30
  */
25
31
  export declare type ExtendEventProvider<TBaseEvent extends IEvent, TBase extends IEventProvider<TBaseEvent>, TEvent extends TBaseEvent> = Omit<Omit<Omit<TBase, "on">, "once">, "off"> & IEventProvider<TBaseEvent> & IEventProvider<TEvent>;
26
32
 
@@ -87,7 +93,7 @@ export declare type FluidErrorTypes = (typeof FluidErrorTypes)[keyof typeof Flui
87
93
  *
88
94
  * You can inspect multiple types via a intersection. For example:
89
95
  * `FluidObject<IFoo & IBar>`
90
- * @internal
96
+ * @alpha
91
97
  */
92
98
  export declare type FluidObject<T = unknown> = {
93
99
  [P in FluidObjectProviderKeys<T>]?: T[P];
@@ -128,14 +134,40 @@ export declare type FluidObjectKeys<T> = keyof FluidObject<T>;
128
134
  *
129
135
  * This pattern enables discovery, and delegation in a standard way which is central
130
136
  * to FluidObject pattern.
131
- * @internal
137
+ * @alpha
132
138
  */
133
139
  export declare 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;
134
140
 
135
141
  /**
136
- * Base interface for objects that require lifetime management via explicit disposal.
142
+ * Base interface for providing configurations to enable/disable/control features.
137
143
  * @internal
138
144
  */
145
+ export declare interface IConfigProviderBase {
146
+ /**
147
+ * For the specified config name this function gets the value.
148
+ *
149
+ * This type is meant be easy to implement by Fluid Framework consumers
150
+ * so the returned valued needs minimal type coercion, and allows consumers to
151
+ * return values in a natural way from whatever source they retrieve them.
152
+ *
153
+ * For instance a value of 1 maybe be returned as a string or a number.
154
+ * For array types a json string or an object are allowable.
155
+ *
156
+ * It should return undefined if there is no value available for the config name.
157
+ *
158
+ * @param name - The name of the config to get the value for.
159
+ *
160
+ * @privateRemarks Generally, this type should only be taken as input, and be wrapped by an
161
+ * internal monitoring context from the fluidframework/telemetry-utils package. That will provide
162
+ * a wrapper with provides strongly typed access to values via consistent type coercion.
163
+ */
164
+ getRawConfig(name: string): ConfigTypes;
165
+ }
166
+
167
+ /**
168
+ * Base interface for objects that require lifetime management via explicit disposal.
169
+ * @alpha
170
+ */
139
171
  export declare interface IDisposable {
140
172
  /**
141
173
  * Whether or not the object has been disposed.
@@ -159,7 +191,8 @@ export declare interface IDisposable {
159
191
  * those from container-definitions. Once fully migrated, this will be a base interface for all errors and
160
192
  * warnings emitted by the Fluid Framework. Currently only the container layer is using IErrorBase.
161
193
  * Runtime and others will follow soon.
162
- * @internal
194
+ *
195
+ * @alpha
163
196
  */
164
197
  export declare interface IErrorBase extends Partial<Error> {
165
198
  /**
@@ -198,7 +231,7 @@ export declare interface IErrorBase extends Partial<Error> {
198
231
 
199
232
  /**
200
233
  * Base interface for error event emitters.
201
- * @internal
234
+ * @alpha
202
235
  */
203
236
  export declare interface IErrorEvent extends IEvent {
204
237
  /**
@@ -211,7 +244,7 @@ export declare interface IErrorEvent extends IEvent {
211
244
 
212
245
  /**
213
246
  * Base interface for event emitters.
214
- * @internal
247
+ * @alpha
215
248
  */
216
249
  export declare interface IEvent {
217
250
  /**
@@ -229,7 +262,7 @@ export declare interface IEvent {
229
262
 
230
263
  /**
231
264
  * Base interface for event providers.
232
- * @internal
265
+ * @alpha
233
266
  */
234
267
  export declare interface IEventProvider<TEvent extends IEvent> {
235
268
  /**
@@ -248,7 +281,7 @@ export declare interface IEventProvider<TEvent extends IEvent> {
248
281
 
249
282
  /**
250
283
  * The placeholder type that should be used instead of `this` in events.
251
- * @internal
284
+ * @alpha
252
285
  */
253
286
  export declare type IEventThisPlaceHolder = {
254
287
  thisPlaceHolder: "thisPlaceHolder";
@@ -262,7 +295,7 @@ export declare type IEventThisPlaceHolder = {
262
295
  * It currently supports the max of 15 event overloads which is more than we use anywhere.
263
296
  * At more than 15 overloads we start to hit {@link https://github.com/microsoft/TypeScript/issues/37209 | TS2589}.
264
297
  * If we need to move beyond 15 we should evaluate using a mapped type pattern like `{"event":(listenerArgs)=>void}`
265
- * @internal
298
+ * @alpha
266
299
  */
267
300
  export declare type IEventTransformer<TThis, TEvent extends IEvent> = TEvent extends {
268
301
  (event: infer E0, listener: (...args: infer A0) => void): any;
@@ -630,13 +663,13 @@ export declare interface IFluidPackageEnvironment {
630
663
 
631
664
  /**
632
665
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
633
- * @internal
666
+ * @alpha
634
667
  */
635
668
  export declare const IFluidRouter: keyof IProvideFluidRouter;
636
669
 
637
670
  /**
638
671
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
639
- * @internal
672
+ * @alpha
640
673
  */
641
674
  export declare interface IFluidRouter extends IProvideFluidRouter {
642
675
  request(request: IRequest): Promise<IResponse>;
@@ -711,7 +744,7 @@ export declare interface IProvideFluidLoadable {
711
744
  /**
712
745
  * Request routing
713
746
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
714
- * @internal
747
+ * @alpha
715
748
  */
716
749
  export declare interface IProvideFluidRouter {
717
750
  readonly IFluidRouter: IFluidRouter;
@@ -725,7 +758,7 @@ export declare interface IProvideFluidRunnable {
725
758
  }
726
759
 
727
760
  /**
728
- * @internal
761
+ * @alpha
729
762
  */
730
763
  export declare interface IRequest {
731
764
  url: string;
@@ -733,14 +766,14 @@ export declare interface IRequest {
733
766
  }
734
767
 
735
768
  /**
736
- * @internal
769
+ * @alpha
737
770
  */
738
771
  export declare interface IRequestHeader {
739
772
  [index: string]: any;
740
773
  }
741
774
 
742
775
  /**
743
- * @internal
776
+ * @alpha
744
777
  */
745
778
  export declare interface IResponse {
746
779
  mimeType: string;
@@ -786,7 +819,7 @@ export declare interface ITaggedTelemetryPropertyType {
786
819
  * Can contain any number of properties that get serialized as json payload.
787
820
  * @param category - category of the event, like "error", "performance", "generic", etc.
788
821
  * @param eventName - name of the event.
789
- * @internal
822
+ * @alpha
790
823
  */
791
824
  export declare interface ITelemetryBaseEvent extends ITelemetryBaseProperties {
792
825
  category: string;
@@ -796,7 +829,7 @@ export declare interface ITelemetryBaseEvent extends ITelemetryBaseProperties {
796
829
  /**
797
830
  * Interface to output telemetry events.
798
831
  * Implemented by hosting app / loader
799
- * @internal
832
+ * @alpha
800
833
  */
801
834
  export declare interface ITelemetryBaseLogger {
802
835
  send(event: ITelemetryBaseEvent, logLevel?: LogLevel): void;
@@ -805,7 +838,7 @@ export declare interface ITelemetryBaseLogger {
805
838
 
806
839
  /**
807
840
  * JSON-serializable properties, which will be logged with telemetry.
808
- * @internal
841
+ * @alpha
809
842
  */
810
843
  export declare type ITelemetryBaseProperties = ITelemetryProperties;
811
844
 
@@ -889,7 +922,7 @@ export declare interface ITelemetryPerformanceEvent extends ITelemetryGenericEve
889
922
  * {@inheritDoc ITelemetryBaseProperties}
890
923
  *
891
924
  * @deprecated Renamed to {@link ITelemetryBaseProperties}
892
- * @internal
925
+ * @alpha
893
926
  */
894
927
  export declare interface ITelemetryProperties {
895
928
  [index: string]: TelemetryEventPropertyType | Tagged<TelemetryEventPropertyType>;
@@ -920,7 +953,7 @@ export declare interface IUsageError extends IErrorBase {
920
953
 
921
954
  /**
922
955
  * Specify levels of the logs.
923
- * @internal
956
+ * @alpha
924
957
  */
925
958
  export declare const LogLevel: {
926
959
  readonly verbose: 10;
@@ -930,13 +963,13 @@ export declare const LogLevel: {
930
963
 
931
964
  /**
932
965
  * Specify a level to the log to filter out logs based on the level.
933
- * @internal
966
+ * @alpha
934
967
  */
935
968
  export declare type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];
936
969
 
937
970
  /**
938
971
  * Does the type replacement by changing types of {@link IEventThisPlaceHolder} to `TThis`
939
- * @internal
972
+ * @alpha
940
973
  */
941
974
  export declare type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[] ? {
942
975
  [K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K];
@@ -948,7 +981,7 @@ export declare type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L ext
948
981
  *
949
982
  * This indicates that the value should be organized or handled differently by loggers in various first or third
950
983
  * party scenarios. For example, tags are used to mark data that should not be stored in logs for privacy reasons.
951
- * @internal
984
+ * @alpha
952
985
  */
953
986
  export declare interface Tagged<V, T extends string = string> {
954
987
  value: V;
@@ -977,14 +1010,14 @@ export declare type TelemetryEventCategory = "generic" | "error" | "performance"
977
1010
  * {@inheritDoc TelemetryBaseEventPropertyType}
978
1011
  *
979
1012
  * @deprecated Renamed to {@link TelemetryBaseEventPropertyType}
980
- * @internal
1013
+ * @alpha
981
1014
  */
982
1015
  export declare type TelemetryEventPropertyType = string | number | boolean | undefined;
983
1016
 
984
1017
  /**
985
1018
  * Transforms the event overload by replacing {@link IEventThisPlaceHolder} with `TThis` in the event listener
986
1019
  * arguments and having the overload return `TTHis` as well
987
- * @internal
1020
+ * @alpha
988
1021
  */
989
1022
  export declare type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void) => TThis;
990
1023
 
@@ -4,7 +4,7 @@
4
4
  */
5
5
  /**
6
6
  * Base interface for objects that require lifetime management via explicit disposal.
7
- * @internal
7
+ * @alpha
8
8
  */
9
9
  export interface IDisposable {
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"disposable.js","sourceRoot":"","sources":["../src/disposable.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Base interface for objects that require lifetime management via explicit disposal.\n * @internal\n */\nexport interface IDisposable {\n\t/**\n\t * Whether or not the object has been disposed.\n\t * If true, the object should be considered invalid, and its other state should be disregarded.\n\t */\n\treadonly disposed: boolean;\n\n\t/**\n\t * Dispose of the object and its resources.\n\t * @param error - Optional error indicating the reason for the disposal, if the object was\n\t * disposed as the result of an error.\n\t */\n\tdispose(error?: Error): void;\n}\n"]}
1
+ {"version":3,"file":"disposable.js","sourceRoot":"","sources":["../src/disposable.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Base interface for objects that require lifetime management via explicit disposal.\n * @alpha\n */\nexport interface IDisposable {\n\t/**\n\t * Whether or not the object has been disposed.\n\t * If true, the object should be considered invalid, and its other state should be disregarded.\n\t */\n\treadonly disposed: boolean;\n\n\t/**\n\t * Dispose of the object and its resources.\n\t * @param error - Optional error indicating the reason for the disposal, if the object was\n\t * disposed as the result of an error.\n\t */\n\tdispose(error?: Error): void;\n}\n"]}
package/dist/error.d.ts CHANGED
@@ -42,7 +42,8 @@ export type FluidErrorTypes = (typeof FluidErrorTypes)[keyof typeof FluidErrorTy
42
42
  * those from container-definitions. Once fully migrated, this will be a base interface for all errors and
43
43
  * warnings emitted by the Fluid Framework. Currently only the container layer is using IErrorBase.
44
44
  * Runtime and others will follow soon.
45
- * @internal
45
+ *
46
+ * @alpha
46
47
  */
47
48
  export interface IErrorBase extends Partial<Error> {
48
49
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,eAAe;IAC3B;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEM,CAAC;AACX;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF;;;;;;;;;;GAUG;AACH,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,KAAK,CAAC;IACjD;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,sBAAsB,CAAC,IAAI,wBAAwB,CAAC;CACpD;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAChD;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,eAAe,CAAC,YAAY,CAAC;IAIxD,KAAK,CAAC,EAAE,GAAG,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC9C;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,eAAe,CAAC,UAAU,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACrD;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,eAAe,CAAC,eAAe,CAAC;IAC3D,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACnC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,eAAe;IAC3B;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEM,CAAC;AACX;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,KAAK,CAAC;IACjD;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,sBAAsB,CAAC,IAAI,wBAAwB,CAAC;CACpD;AAED;;;GAGG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAChD;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,eAAe,CAAC,YAAY,CAAC;IAIxD,KAAK,CAAC,EAAE,GAAG,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC9C;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,eAAe,CAAC,UAAU,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACrD;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,eAAe,CAAC,eAAe,CAAC;IAC3D,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACnC"}
package/dist/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC9B;;OAEG;IACH,YAAY,EAAE,cAAc;IAE5B;;OAEG;IACH,eAAe,EAAE,iBAAiB;IAElC;;OAEG;IACH,mBAAmB,EAAE,qBAAqB;IAE1C;;OAEG;IACH,mBAAmB,EAAE,qBAAqB;IAE1C;;OAEG;IACH,UAAU,EAAE,YAAY;CACf,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITelemetryBaseProperties } from \"./index\";\n\n/**\n * Error types the Fluid Framework may report.\n * @internal\n */\nexport const FluidErrorTypes = {\n\t/**\n\t * Some error, most likely an exception caught by runtime and propagated to container as critical error\n\t */\n\tgenericError: \"genericError\",\n\n\t/**\n\t * Throttling error from server. Server is busy and is asking not to reconnect for some time\n\t */\n\tthrottlingError: \"throttlingError\",\n\n\t/**\n\t * Data loss error detected by Container / DeltaManager. Likely points to storage issue.\n\t */\n\tdataCorruptionError: \"dataCorruptionError\",\n\n\t/**\n\t * Error encountered when processing an operation. May correlate with data corruption.\n\t */\n\tdataProcessingError: \"dataProcessingError\",\n\n\t/**\n\t * Error indicating an API is being used improperly resulting in an invalid operation.\n\t */\n\tusageError: \"usageError\",\n} as const;\n/**\n * @internal\n */\nexport type FluidErrorTypes = (typeof FluidErrorTypes)[keyof typeof FluidErrorTypes];\n\n/**\n * Base interface for all errors and warnings emitted the container.\n *\n * @remarks\n *\n * We are in the process of unifying error types across layers of the Framework. For now we have only migrated\n * those from container-definitions. Once fully migrated, this will be a base interface for all errors and\n * warnings emitted by the Fluid Framework. Currently only the container layer is using IErrorBase.\n * Runtime and others will follow soon.\n * @internal\n */\nexport interface IErrorBase extends Partial<Error> {\n\t/**\n\t * A type tag differentiating kinds of errors emitted by the container.\n\t *\n\t * @see See {@link FluidErrorTypes#genericError} for some common examples.\n\t * - container\n\t * - runtime\n\t * - drivers\n\t */\n\treadonly errorType: string;\n\n\t/**\n\t * See {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error | Error.message}\n\t *\n\t * @remarks\n\t *\n\t * Privacy Note - This is a freeform string that we may not control in all cases (e.g. a dependency throws an error)\n\t * If there are known cases where this contains privacy-sensitive data it will be tagged and included in the result\n\t * of getTelemetryProperties. When logging, consider fetching it that way rather than straight from this field.\n\t */\n\treadonly message: string;\n\n\t/**\n\t * See {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/name | Error.name}\n\t */\n\treadonly name?: string;\n\n\t/**\n\t * See {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/stack | Error.stack}\n\t */\n\treadonly stack?: string;\n\n\t/**\n\t * Returns all properties of this error object that are fit for logging.\n\t * Some may be tagged to indicate they contain some kind of sensitive data.\n\t */\n\tgetTelemetryProperties?(): ITelemetryBaseProperties;\n}\n\n/**\n * Generic wrapper for an unrecognized/uncategorized error object\n * @internal\n */\nexport interface IGenericError extends IErrorBase {\n\t/**\n\t * {@inheritDoc IErrorBase.errorType}\n\t */\n\treadonly errorType: typeof FluidErrorTypes.genericError;\n\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\terror?: any;\n}\n\n/**\n * Error indicating an API is being used improperly resulting in an invalid operation.\n * @internal\n */\nexport interface IUsageError extends IErrorBase {\n\t/**\n\t * {@inheritDoc IErrorBase.errorType}\n\t */\n\treadonly errorType: typeof FluidErrorTypes.usageError;\n}\n\n/**\n * Warning emitted when requests to storage are being throttled\n * @internal\n */\nexport interface IThrottlingWarning extends IErrorBase {\n\t/**\n\t * {@inheritDoc IErrorBase.errorType}\n\t */\n\treadonly errorType: typeof FluidErrorTypes.throttlingError;\n\treadonly retryAfterSeconds: number;\n}\n"]}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH;;;GAGG;AACU,QAAA,eAAe,GAAG;IAC9B;;OAEG;IACH,YAAY,EAAE,cAAc;IAE5B;;OAEG;IACH,eAAe,EAAE,iBAAiB;IAElC;;OAEG;IACH,mBAAmB,EAAE,qBAAqB;IAE1C;;OAEG;IACH,mBAAmB,EAAE,qBAAqB;IAE1C;;OAEG;IACH,UAAU,EAAE,YAAY;CACf,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITelemetryBaseProperties } from \"./index\";\n\n/**\n * Error types the Fluid Framework may report.\n * @internal\n */\nexport const FluidErrorTypes = {\n\t/**\n\t * Some error, most likely an exception caught by runtime and propagated to container as critical error\n\t */\n\tgenericError: \"genericError\",\n\n\t/**\n\t * Throttling error from server. Server is busy and is asking not to reconnect for some time\n\t */\n\tthrottlingError: \"throttlingError\",\n\n\t/**\n\t * Data loss error detected by Container / DeltaManager. Likely points to storage issue.\n\t */\n\tdataCorruptionError: \"dataCorruptionError\",\n\n\t/**\n\t * Error encountered when processing an operation. May correlate with data corruption.\n\t */\n\tdataProcessingError: \"dataProcessingError\",\n\n\t/**\n\t * Error indicating an API is being used improperly resulting in an invalid operation.\n\t */\n\tusageError: \"usageError\",\n} as const;\n/**\n * @internal\n */\nexport type FluidErrorTypes = (typeof FluidErrorTypes)[keyof typeof FluidErrorTypes];\n\n/**\n * Base interface for all errors and warnings emitted the container.\n *\n * @remarks\n *\n * We are in the process of unifying error types across layers of the Framework. For now we have only migrated\n * those from container-definitions. Once fully migrated, this will be a base interface for all errors and\n * warnings emitted by the Fluid Framework. Currently only the container layer is using IErrorBase.\n * Runtime and others will follow soon.\n *\n * @alpha\n */\nexport interface IErrorBase extends Partial<Error> {\n\t/**\n\t * A type tag differentiating kinds of errors emitted by the container.\n\t *\n\t * @see See {@link FluidErrorTypes#genericError} for some common examples.\n\t * - container\n\t * - runtime\n\t * - drivers\n\t */\n\treadonly errorType: string;\n\n\t/**\n\t * See {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error | Error.message}\n\t *\n\t * @remarks\n\t *\n\t * Privacy Note - This is a freeform string that we may not control in all cases (e.g. a dependency throws an error)\n\t * If there are known cases where this contains privacy-sensitive data it will be tagged and included in the result\n\t * of getTelemetryProperties. When logging, consider fetching it that way rather than straight from this field.\n\t */\n\treadonly message: string;\n\n\t/**\n\t * See {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/name | Error.name}\n\t */\n\treadonly name?: string;\n\n\t/**\n\t * See {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/stack | Error.stack}\n\t */\n\treadonly stack?: string;\n\n\t/**\n\t * Returns all properties of this error object that are fit for logging.\n\t * Some may be tagged to indicate they contain some kind of sensitive data.\n\t */\n\tgetTelemetryProperties?(): ITelemetryBaseProperties;\n}\n\n/**\n * Generic wrapper for an unrecognized/uncategorized error object\n * @internal\n */\nexport interface IGenericError extends IErrorBase {\n\t/**\n\t * {@inheritDoc IErrorBase.errorType}\n\t */\n\treadonly errorType: typeof FluidErrorTypes.genericError;\n\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\terror?: any;\n}\n\n/**\n * Error indicating an API is being used improperly resulting in an invalid operation.\n * @internal\n */\nexport interface IUsageError extends IErrorBase {\n\t/**\n\t * {@inheritDoc IErrorBase.errorType}\n\t */\n\treadonly errorType: typeof FluidErrorTypes.usageError;\n}\n\n/**\n * Warning emitted when requests to storage are being throttled\n * @internal\n */\nexport interface IThrottlingWarning extends IErrorBase {\n\t/**\n\t * {@inheritDoc IErrorBase.errorType}\n\t */\n\treadonly errorType: typeof FluidErrorTypes.throttlingError;\n\treadonly retryAfterSeconds: number;\n}\n"]}
package/dist/events.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  */
5
5
  /**
6
6
  * Base interface for event emitters.
7
- * @internal
7
+ * @alpha
8
8
  */
9
9
  export interface IEvent {
10
10
  /**
@@ -21,7 +21,7 @@ export interface IEvent {
21
21
  }
22
22
  /**
23
23
  * Base interface for error event emitters.
24
- * @internal
24
+ * @alpha
25
25
  */
26
26
  export interface IErrorEvent extends IEvent {
27
27
  /**
@@ -33,7 +33,7 @@ export interface IErrorEvent extends IEvent {
33
33
  }
34
34
  /**
35
35
  * Base interface for event providers.
36
- * @internal
36
+ * @alpha
37
37
  */
38
38
  export interface IEventProvider<TEvent extends IEvent> {
39
39
  /**
@@ -71,19 +71,19 @@ export interface IEventProvider<TEvent extends IEvent> {
71
71
  * ```
72
72
  *
73
73
  * interface B will now extend interface A and its events
74
- * @internal
74
+ * @alpha
75
75
  */
76
76
  export type ExtendEventProvider<TBaseEvent extends IEvent, TBase extends IEventProvider<TBaseEvent>, TEvent extends TBaseEvent> = Omit<Omit<Omit<TBase, "on">, "once">, "off"> & IEventProvider<TBaseEvent> & IEventProvider<TEvent>;
77
77
  /**
78
78
  * The placeholder type that should be used instead of `this` in events.
79
- * @internal
79
+ * @alpha
80
80
  */
81
81
  export type IEventThisPlaceHolder = {
82
82
  thisPlaceHolder: "thisPlaceHolder";
83
83
  };
84
84
  /**
85
85
  * Does the type replacement by changing types of {@link IEventThisPlaceHolder} to `TThis`
86
- * @internal
86
+ * @alpha
87
87
  */
88
88
  export type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[] ? {
89
89
  [K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K];
@@ -91,7 +91,7 @@ export type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any
91
91
  /**
92
92
  * Transforms the event overload by replacing {@link IEventThisPlaceHolder} with `TThis` in the event listener
93
93
  * arguments and having the overload return `TTHis` as well
94
- * @internal
94
+ * @alpha
95
95
  */
96
96
  export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void) => TThis;
97
97
  /**
@@ -102,7 +102,7 @@ export type TransformedEvent<TThis, E, A extends any[]> = (event: E, listener: (
102
102
  * It currently supports the max of 15 event overloads which is more than we use anywhere.
103
103
  * At more than 15 overloads we start to hit {@link https://github.com/microsoft/TypeScript/issues/37209 | TS2589}.
104
104
  * If we need to move beyond 15 we should evaluate using a mapped type pattern like `{"event":(listenerArgs)=>void}`
105
- * @internal
105
+ * @alpha
106
106
  */
107
107
  export type IEventTransformer<TThis, TEvent extends IEvent> = TEvent extends {
108
108
  (event: infer E0, listener: (...args: infer A0) => void): any;
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Base interface for event emitters.\n * @internal\n */\nexport interface IEvent {\n\t/**\n\t * Base event emitter signature.\n\t *\n\t * @remarks The event emitter polyfill and the node event emitter have different event types:\n\t * `string | symbol` vs. `string | number`.\n\t *\n\t * So for our typing we'll contrain to string, that way we work with both.\n\t *\n\t * @eventProperty\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t(event: string, listener: (...args: any[]) => void);\n}\n\n/**\n * Base interface for error event emitters.\n * @internal\n */\nexport interface IErrorEvent extends IEvent {\n\t/**\n\t * Base error event emitter signature.\n\t *\n\t * @eventProperty\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t(event: \"error\", listener: (message: any) => void);\n}\n\n/**\n * Base interface for event providers.\n * @internal\n */\nexport interface IEventProvider<TEvent extends IEvent> {\n\t/**\n\t * Registers a callback to be invoked when the corresponding event is triggered.\n\t */\n\treadonly on: IEventTransformer<this, TEvent>;\n\n\t/**\n\t * Registers a callback to be invoked the first time (after registration) the corresponding event is triggered.\n\t */\n\treadonly once: IEventTransformer<this, TEvent>;\n\n\t/**\n\t * Removes the corresponding event if it has been registered.\n\t */\n\treadonly off: IEventTransformer<this, TEvent>;\n}\n\n/**\n * Allows an interface to extend interfaces that already extend an {@link IEventProvider}.\n *\n * @example\n *\n * ``` typescript\n * interface AEvents extends IEvent{\n * (event: \"a-event\",listener: (a: number)=>void);\n * }\n * interface A extends IEventProvider<AEvents>{\n * a: object;\n * }\n *\n * interface BEvents extends IEvent{\n * (event: \"b-event\",listener: (b: string)=>void);\n * }\n * interface B extends ExtendEventProvider<AEvents, A, BEvents>{\n * b: boolean;\n * };\n * ```\n *\n * interface B will now extend interface A and its events\n * @internal\n */\nexport type ExtendEventProvider<\n\tTBaseEvent extends IEvent,\n\tTBase extends IEventProvider<TBaseEvent>,\n\tTEvent extends TBaseEvent,\n> = Omit<Omit<Omit<TBase, \"on\">, \"once\">, \"off\"> &\n\tIEventProvider<TBaseEvent> &\n\tIEventProvider<TEvent>;\n\n// These types handle replacing IEventThisPlaceHolder with `this`, so we can\n// support polymorphic `this`. For instance if an event wanted to be:\n// (event: \"some-event\", listener:(target: this)=>void)\n//\n// it should be written as\n// (event: \"some-event\", listener:(target: IEventThisPlaceHolder)=>void)\n//\n// and IEventThisPlaceHolder will be replaced with this.\n// This is all consumers of these types need to know.\n\n/**\n * The placeholder type that should be used instead of `this` in events.\n * @internal\n */\n// eslint-disable-next-line @typescript-eslint/consistent-type-definitions\nexport type IEventThisPlaceHolder = { thisPlaceHolder: \"thisPlaceHolder\" };\n\n/**\n * Does the type replacement by changing types of {@link IEventThisPlaceHolder} to `TThis`\n * @internal\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[]\n\t? { [K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K] }\n\t: L;\n\n/**\n * Transforms the event overload by replacing {@link IEventThisPlaceHolder} with `TThis` in the event listener\n * arguments and having the overload return `TTHis` as well\n * @internal\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type TransformedEvent<TThis, E, A extends any[]> = (\n\tevent: E,\n\tlistener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void,\n) => TThis;\n\n/**\n * This type is a conditional type for transforming all the overloads provided in `TEvent`.\n *\n * @remarks\n * Due to limitations of the TypeScript typing system, we need to handle each number of overload individually.\n * It currently supports the max of 15 event overloads which is more than we use anywhere.\n * At more than 15 overloads we start to hit {@link https://github.com/microsoft/TypeScript/issues/37209 | TS2589}.\n * If we need to move beyond 15 we should evaluate using a mapped type pattern like `{\"event\":(listenerArgs)=>void}`\n * @internal\n */\nexport type IEventTransformer<TThis, TEvent extends IEvent> = TEvent extends {\n\t(event: infer E0, listener: (...args: infer A0) => void);\n\t(event: infer E1, listener: (...args: infer A1) => void);\n\t(event: infer E2, listener: (...args: infer A2) => void);\n\t(event: infer E3, listener: (...args: infer A3) => void);\n\t(event: infer E4, listener: (...args: infer A4) => void);\n\t(event: infer E5, listener: (...args: infer A5) => void);\n\t(event: infer E6, listener: (...args: infer A6) => void);\n\t(event: infer E7, listener: (...args: infer A7) => void);\n\t(event: infer E8, listener: (...args: infer A8) => void);\n\t(event: infer E9, listener: (...args: infer A9) => void);\n\t(event: infer E10, listener: (...args: infer A10) => void);\n\t(event: infer E11, listener: (...args: infer A11) => void);\n\t(event: infer E12, listener: (...args: infer A12) => void);\n\t(event: infer E13, listener: (...args: infer A13) => void);\n\t(event: infer E14, listener: (...args: infer A14) => void);\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t(event: string, listener: (...args: any[]) => void);\n}\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11> &\n\t\t\tTransformedEvent<TThis, E12, A12> &\n\t\t\tTransformedEvent<TThis, E13, A13> &\n\t\t\tTransformedEvent<TThis, E14, A14>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t(event: infer E11, listener: (...args: infer A11) => void);\n\t\t\t(event: infer E12, listener: (...args: infer A12) => void);\n\t\t\t(event: infer E13, listener: (...args: infer A13) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11> &\n\t\t\tTransformedEvent<TThis, E12, A12> &\n\t\t\tTransformedEvent<TThis, E13, A13>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t(event: infer E11, listener: (...args: infer A11) => void);\n\t\t\t(event: infer E12, listener: (...args: infer A12) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11> &\n\t\t\tTransformedEvent<TThis, E12, A12>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t(event: infer E11, listener: (...args: infer A11) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0>\n\t: // eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t TransformedEvent<TThis, string, any[]>;\n"]}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Base interface for event emitters.\n * @alpha\n */\nexport interface IEvent {\n\t/**\n\t * Base event emitter signature.\n\t *\n\t * @remarks The event emitter polyfill and the node event emitter have different event types:\n\t * `string | symbol` vs. `string | number`.\n\t *\n\t * So for our typing we'll contrain to string, that way we work with both.\n\t *\n\t * @eventProperty\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t(event: string, listener: (...args: any[]) => void);\n}\n\n/**\n * Base interface for error event emitters.\n * @alpha\n */\nexport interface IErrorEvent extends IEvent {\n\t/**\n\t * Base error event emitter signature.\n\t *\n\t * @eventProperty\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t(event: \"error\", listener: (message: any) => void);\n}\n\n/**\n * Base interface for event providers.\n * @alpha\n */\nexport interface IEventProvider<TEvent extends IEvent> {\n\t/**\n\t * Registers a callback to be invoked when the corresponding event is triggered.\n\t */\n\treadonly on: IEventTransformer<this, TEvent>;\n\n\t/**\n\t * Registers a callback to be invoked the first time (after registration) the corresponding event is triggered.\n\t */\n\treadonly once: IEventTransformer<this, TEvent>;\n\n\t/**\n\t * Removes the corresponding event if it has been registered.\n\t */\n\treadonly off: IEventTransformer<this, TEvent>;\n}\n\n/**\n * Allows an interface to extend interfaces that already extend an {@link IEventProvider}.\n *\n * @example\n *\n * ``` typescript\n * interface AEvents extends IEvent{\n * (event: \"a-event\",listener: (a: number)=>void);\n * }\n * interface A extends IEventProvider<AEvents>{\n * a: object;\n * }\n *\n * interface BEvents extends IEvent{\n * (event: \"b-event\",listener: (b: string)=>void);\n * }\n * interface B extends ExtendEventProvider<AEvents, A, BEvents>{\n * b: boolean;\n * };\n * ```\n *\n * interface B will now extend interface A and its events\n * @alpha\n */\nexport type ExtendEventProvider<\n\tTBaseEvent extends IEvent,\n\tTBase extends IEventProvider<TBaseEvent>,\n\tTEvent extends TBaseEvent,\n> = Omit<Omit<Omit<TBase, \"on\">, \"once\">, \"off\"> &\n\tIEventProvider<TBaseEvent> &\n\tIEventProvider<TEvent>;\n\n// These types handle replacing IEventThisPlaceHolder with `this`, so we can\n// support polymorphic `this`. For instance if an event wanted to be:\n// (event: \"some-event\", listener:(target: this)=>void)\n//\n// it should be written as\n// (event: \"some-event\", listener:(target: IEventThisPlaceHolder)=>void)\n//\n// and IEventThisPlaceHolder will be replaced with this.\n// This is all consumers of these types need to know.\n\n/**\n * The placeholder type that should be used instead of `this` in events.\n * @alpha\n */\n// eslint-disable-next-line @typescript-eslint/consistent-type-definitions\nexport type IEventThisPlaceHolder = { thisPlaceHolder: \"thisPlaceHolder\" };\n\n/**\n * Does the type replacement by changing types of {@link IEventThisPlaceHolder} to `TThis`\n * @alpha\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ReplaceIEventThisPlaceHolder<L extends any[], TThis> = L extends any[]\n\t? { [K in keyof L]: L[K] extends IEventThisPlaceHolder ? TThis : L[K] }\n\t: L;\n\n/**\n * Transforms the event overload by replacing {@link IEventThisPlaceHolder} with `TThis` in the event listener\n * arguments and having the overload return `TTHis` as well\n * @alpha\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type TransformedEvent<TThis, E, A extends any[]> = (\n\tevent: E,\n\tlistener: (...args: ReplaceIEventThisPlaceHolder<A, TThis>) => void,\n) => TThis;\n\n/**\n * This type is a conditional type for transforming all the overloads provided in `TEvent`.\n *\n * @remarks\n * Due to limitations of the TypeScript typing system, we need to handle each number of overload individually.\n * It currently supports the max of 15 event overloads which is more than we use anywhere.\n * At more than 15 overloads we start to hit {@link https://github.com/microsoft/TypeScript/issues/37209 | TS2589}.\n * If we need to move beyond 15 we should evaluate using a mapped type pattern like `{\"event\":(listenerArgs)=>void}`\n * @alpha\n */\nexport type IEventTransformer<TThis, TEvent extends IEvent> = TEvent extends {\n\t(event: infer E0, listener: (...args: infer A0) => void);\n\t(event: infer E1, listener: (...args: infer A1) => void);\n\t(event: infer E2, listener: (...args: infer A2) => void);\n\t(event: infer E3, listener: (...args: infer A3) => void);\n\t(event: infer E4, listener: (...args: infer A4) => void);\n\t(event: infer E5, listener: (...args: infer A5) => void);\n\t(event: infer E6, listener: (...args: infer A6) => void);\n\t(event: infer E7, listener: (...args: infer A7) => void);\n\t(event: infer E8, listener: (...args: infer A8) => void);\n\t(event: infer E9, listener: (...args: infer A9) => void);\n\t(event: infer E10, listener: (...args: infer A10) => void);\n\t(event: infer E11, listener: (...args: infer A11) => void);\n\t(event: infer E12, listener: (...args: infer A12) => void);\n\t(event: infer E13, listener: (...args: infer A13) => void);\n\t(event: infer E14, listener: (...args: infer A14) => void);\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t(event: string, listener: (...args: any[]) => void);\n}\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11> &\n\t\t\tTransformedEvent<TThis, E12, A12> &\n\t\t\tTransformedEvent<TThis, E13, A13> &\n\t\t\tTransformedEvent<TThis, E14, A14>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t(event: infer E11, listener: (...args: infer A11) => void);\n\t\t\t(event: infer E12, listener: (...args: infer A12) => void);\n\t\t\t(event: infer E13, listener: (...args: infer A13) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11> &\n\t\t\tTransformedEvent<TThis, E12, A12> &\n\t\t\tTransformedEvent<TThis, E13, A13>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t(event: infer E11, listener: (...args: infer A11) => void);\n\t\t\t(event: infer E12, listener: (...args: infer A12) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11> &\n\t\t\tTransformedEvent<TThis, E12, A12>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t(event: infer E11, listener: (...args: infer A11) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10> &\n\t\t\tTransformedEvent<TThis, E11, A11>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t(event: infer E10, listener: (...args: infer A10) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9> &\n\t\t\tTransformedEvent<TThis, E10, A10>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t(event: infer E9, listener: (...args: infer A9) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8> &\n\t\t\tTransformedEvent<TThis, E9, A9>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t(event: infer E8, listener: (...args: infer A8) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7> &\n\t\t\tTransformedEvent<TThis, E8, A8>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t(event: infer E7, listener: (...args: infer A7) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6> &\n\t\t\tTransformedEvent<TThis, E7, A7>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t(event: infer E6, listener: (...args: infer A6) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5> &\n\t\t\tTransformedEvent<TThis, E6, A6>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t(event: infer E5, listener: (...args: infer A5) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4> &\n\t\t\tTransformedEvent<TThis, E5, A5>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t(event: infer E4, listener: (...args: infer A4) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3> &\n\t\t\tTransformedEvent<TThis, E4, A4>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t(event: infer E3, listener: (...args: infer A3) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2> &\n\t\t\tTransformedEvent<TThis, E3, A3>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t(event: infer E2, listener: (...args: infer A2) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> &\n\t\t\tTransformedEvent<TThis, E1, A1> &\n\t\t\tTransformedEvent<TThis, E2, A2>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t(event: infer E1, listener: (...args: infer A1) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0> & TransformedEvent<TThis, E1, A1>\n\t: TEvent extends {\n\t\t\t(event: infer E0, listener: (...args: infer A0) => void);\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t(event: string, listener: (...args: any[]) => void);\n\t }\n\t? TransformedEvent<TThis, E0, A0>\n\t: // eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t TransformedEvent<TThis, string, any[]>;\n"]}
@@ -3,20 +3,20 @@
3
3
  * Licensed under the MIT License.
4
4
  */
5
5
  /**
6
- * @internal
6
+ * @alpha
7
7
  */
8
8
  export interface IRequestHeader {
9
9
  [index: string]: any;
10
10
  }
11
11
  /**
12
- * @internal
12
+ * @alpha
13
13
  */
14
14
  export interface IRequest {
15
15
  url: string;
16
16
  headers?: IRequestHeader;
17
17
  }
18
18
  /**
19
- * @internal
19
+ * @alpha
20
20
  */
21
21
  export interface IResponse {
22
22
  mimeType: string;
@@ -29,20 +29,20 @@ export interface IResponse {
29
29
  }
30
30
  /**
31
31
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
32
- * @internal
32
+ * @alpha
33
33
  */
34
34
  export declare const IFluidRouter: keyof IProvideFluidRouter;
35
35
  /**
36
36
  * Request routing
37
37
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
38
- * @internal
38
+ * @alpha
39
39
  */
40
40
  export interface IProvideFluidRouter {
41
41
  readonly IFluidRouter: IFluidRouter;
42
42
  }
43
43
  /**
44
44
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
45
- * @internal
45
+ * @alpha
46
46
  */
47
47
  export interface IFluidRouter extends IProvideFluidRouter {
48
48
  request(request: IRequest): Promise<IResponse>;
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.IFluidRouter = void 0;
8
8
  /**
9
9
  * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the "entryPoint" pattern. Refer to Removing-IFluidRouter.md
10
- * @internal
10
+ * @alpha
11
11
  */
12
12
  exports.IFluidRouter = "IFluidRouter";
13
13
  //# sourceMappingURL=fluidRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fluidRouter.js","sourceRoot":"","sources":["../src/fluidRouter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAkCH;;;GAGG;AACU,QAAA,YAAY,GAA8B,cAAc,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * @internal\n */\nexport interface IRequestHeader {\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t[index: string]: any;\n}\n\n/**\n * @internal\n */\nexport interface IRequest {\n\turl: string;\n\theaders?: IRequestHeader;\n}\n\n/**\n * @internal\n */\nexport interface IResponse {\n\tmimeType: string;\n\tstatus: number;\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tvalue: any;\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\theaders?: { [key: string]: any };\n\tstack?: string;\n}\n\n/**\n * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n * @internal\n */\nexport const IFluidRouter: keyof IProvideFluidRouter = \"IFluidRouter\";\n\n/**\n * Request routing\n * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n * @internal\n */\nexport interface IProvideFluidRouter {\n\treadonly IFluidRouter: IFluidRouter;\n}\n\n/**\n * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n * @internal\n */\nexport interface IFluidRouter extends IProvideFluidRouter {\n\trequest(request: IRequest): Promise<IResponse>;\n}\n"]}
1
+ {"version":3,"file":"fluidRouter.js","sourceRoot":"","sources":["../src/fluidRouter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAkCH;;;GAGG;AACU,QAAA,YAAY,GAA8B,cAAc,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * @alpha\n */\nexport interface IRequestHeader {\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t[index: string]: any;\n}\n\n/**\n * @alpha\n */\nexport interface IRequest {\n\turl: string;\n\theaders?: IRequestHeader;\n}\n\n/**\n * @alpha\n */\nexport interface IResponse {\n\tmimeType: string;\n\tstatus: number;\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tvalue: any;\n\t// TODO: Use `unknown` instead (API-Breaking)\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\theaders?: { [key: string]: any };\n\tstack?: string;\n}\n\n/**\n * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n * @alpha\n */\nexport const IFluidRouter: keyof IProvideFluidRouter = \"IFluidRouter\";\n\n/**\n * Request routing\n * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n * @alpha\n */\nexport interface IProvideFluidRouter {\n\treadonly IFluidRouter: IFluidRouter;\n}\n\n/**\n * @deprecated Will be removed in future major release. Migrate all usage of IFluidRouter to the \"entryPoint\" pattern. Refer to Removing-IFluidRouter.md\n * @alpha\n */\nexport interface IFluidRouter extends IProvideFluidRouter {\n\trequest(request: IRequest): Promise<IResponse>;\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -19,4 +19,5 @@ Tagged, TelemetryEventCategory, // deprecated
19
19
  TelemetryBaseEventPropertyType, TelemetryEventPropertyType, } from "./logger";
20
20
  export { LogLevel } from "./logger";
21
21
  export { FluidObjectProviderKeys, FluidObject, FluidObjectKeys } from "./provider";
22
+ export { ConfigTypes, IConfigProviderBase } from "./config";
22
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EACN,eAAe,EACf,UAAU,EACV,aAAa,EACb,WAAW,EACX,kBAAkB,GAClB,MAAM,SAAS,CAAC;AAEjB,YAAY,EACX,mBAAmB,EACnB,WAAW,EACX,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,EAC5B,gBAAgB,GAChB,MAAM,UAAU,CAAC;AAElB,OAAO,EACN,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,qBAAqB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACN,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,GAChC,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACN,QAAQ,EACR,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,YAAY,GACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,GACnB,MAAM,WAAW,CAAC;AAEnB,YAAY,EACX,aAAa,EACb,4BAA4B,EAAE,aAAa;AAC3C,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EAAE,aAAa;AACnC,sBAAsB,EAAE,aAAa;AACrC,gBAAgB,EAAE,aAAa;AAC/B,0BAA0B,EAAE,aAAa;AACzC,oBAAoB,EAAE,aAAa;AACnC,MAAM,EACN,sBAAsB,EAAE,aAAa;AACrC,8BAA8B,EAC9B,0BAA0B,GAC1B,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EACN,eAAe,EACf,UAAU,EACV,aAAa,EACb,WAAW,EACX,kBAAkB,GAClB,MAAM,SAAS,CAAC;AAEjB,YAAY,EACX,mBAAmB,EACnB,WAAW,EACX,MAAM,EACN,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,EAC5B,gBAAgB,GAChB,MAAM,UAAU,CAAC;AAElB,OAAO,EACN,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,qBAAqB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACN,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,GAChC,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACN,QAAQ,EACR,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,YAAY,GACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,GACnB,MAAM,WAAW,CAAC;AAEnB,YAAY,EACX,aAAa,EACb,4BAA4B,EAAE,aAAa;AAC3C,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EAAE,aAAa;AACnC,sBAAsB,EAAE,aAAa;AACrC,gBAAgB,EAAE,aAAa;AAC/B,0BAA0B,EAAE,aAAa;AACzC,oBAAoB,EAAE,aAAa;AACnC,MAAM,EACN,sBAAsB,EAAE,aAAa;AACrC,8BAA8B,EAC9B,0BAA0B,GAC1B,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,iCAMiB;AALhB,wGAAA,eAAe,OAAA;AAkBhB,iDAKyB;AAJxB,+GAAA,cAAc,OAAA;AAEd,+GAAA,cAAc,OAAA;AAIf,+CASwB;AANvB,8GAAA,cAAc,OAAA;AAGd,kHAAA,kBAAkB,OAAA;AAClB,yHAAA,yBAAyB,OAAA;AAI1B,+FAA+F;AAC/F,qDAAqD;AACrD,8EAA8E;AAC9E,6CAMuB;AADtB,2GAAA,YAAY,OAAA;AAGb,qCAKmB;AAJlB,8GAAA,mBAAmB,OAAA;AAEnB,uGAAA,YAAY,OAAA;AAoBb,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport type { IDisposable } from \"./disposable\";\n\nexport {\n\tFluidErrorTypes,\n\tIErrorBase,\n\tIGenericError,\n\tIUsageError,\n\tIThrottlingWarning,\n} from \"./error\";\n\nexport type {\n\tExtendEventProvider,\n\tIErrorEvent,\n\tIEvent,\n\tIEventProvider,\n\tIEventThisPlaceHolder,\n\tIEventTransformer,\n\tReplaceIEventThisPlaceHolder,\n\tTransformedEvent,\n} from \"./events\";\n\nexport {\n\tIFluidLoadable,\n\tIProvideFluidLoadable,\n\tIFluidRunnable,\n\tIProvideFluidRunnable,\n} from \"./fluidLoadable\";\n\nexport {\n\tIFluidPackageEnvironment,\n\tIFluidPackage,\n\tisFluidPackage,\n\tIFluidCodeDetailsConfig,\n\tIFluidCodeDetails,\n\tisFluidCodeDetails,\n\tIFluidCodeDetailsComparer,\n\tIProvideFluidCodeDetailsComparer,\n} from \"./fluidPackage\";\n\n// TypeScript forgets the index signature when customers augment IRequestHeader if we export *.\n// So we export the explicit members as a workaround:\n// https://github.com/microsoft/TypeScript/issues/18877#issuecomment-476921038\nexport {\n\tIRequest,\n\tIRequestHeader,\n\tIResponse,\n\tIProvideFluidRouter,\n\tIFluidRouter,\n} from \"./fluidRouter\";\n\nexport {\n\tIFluidHandleContext,\n\tIProvideFluidHandleContext,\n\tIFluidHandle,\n\tIProvideFluidHandle,\n} from \"./handles\";\n\nexport type {\n\tILoggingError,\n\tITaggedTelemetryPropertyType, // deprecated\n\tITelemetryBaseEvent,\n\tITelemetryBaseLogger,\n\tITelemetryBaseProperties,\n\tITelemetryErrorEvent, // deprecated\n\tITelemetryGenericEvent, // deprecated\n\tITelemetryLogger, // deprecated\n\tITelemetryPerformanceEvent, // deprecated\n\tITelemetryProperties, // deprecated\n\tTagged,\n\tTelemetryEventCategory, // deprecated\n\tTelemetryBaseEventPropertyType,\n\tTelemetryEventPropertyType, // deprecated\n} from \"./logger\";\nexport { LogLevel } from \"./logger\";\nexport { FluidObjectProviderKeys, FluidObject, FluidObjectKeys } from \"./provider\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,iCAMiB;AALhB,wGAAA,eAAe,OAAA;AAkBhB,iDAKyB;AAJxB,+GAAA,cAAc,OAAA;AAEd,+GAAA,cAAc,OAAA;AAIf,+CASwB;AANvB,8GAAA,cAAc,OAAA;AAGd,kHAAA,kBAAkB,OAAA;AAClB,yHAAA,yBAAyB,OAAA;AAI1B,+FAA+F;AAC/F,qDAAqD;AACrD,8EAA8E;AAC9E,6CAMuB;AADtB,2GAAA,YAAY,OAAA;AAGb,qCAKmB;AAJlB,8GAAA,mBAAmB,OAAA;AAEnB,uGAAA,YAAY,OAAA;AAoBb,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport type { IDisposable } from \"./disposable\";\n\nexport {\n\tFluidErrorTypes,\n\tIErrorBase,\n\tIGenericError,\n\tIUsageError,\n\tIThrottlingWarning,\n} from \"./error\";\n\nexport type {\n\tExtendEventProvider,\n\tIErrorEvent,\n\tIEvent,\n\tIEventProvider,\n\tIEventThisPlaceHolder,\n\tIEventTransformer,\n\tReplaceIEventThisPlaceHolder,\n\tTransformedEvent,\n} from \"./events\";\n\nexport {\n\tIFluidLoadable,\n\tIProvideFluidLoadable,\n\tIFluidRunnable,\n\tIProvideFluidRunnable,\n} from \"./fluidLoadable\";\n\nexport {\n\tIFluidPackageEnvironment,\n\tIFluidPackage,\n\tisFluidPackage,\n\tIFluidCodeDetailsConfig,\n\tIFluidCodeDetails,\n\tisFluidCodeDetails,\n\tIFluidCodeDetailsComparer,\n\tIProvideFluidCodeDetailsComparer,\n} from \"./fluidPackage\";\n\n// TypeScript forgets the index signature when customers augment IRequestHeader if we export *.\n// So we export the explicit members as a workaround:\n// https://github.com/microsoft/TypeScript/issues/18877#issuecomment-476921038\nexport {\n\tIRequest,\n\tIRequestHeader,\n\tIResponse,\n\tIProvideFluidRouter,\n\tIFluidRouter,\n} from \"./fluidRouter\";\n\nexport {\n\tIFluidHandleContext,\n\tIProvideFluidHandleContext,\n\tIFluidHandle,\n\tIProvideFluidHandle,\n} from \"./handles\";\n\nexport type {\n\tILoggingError,\n\tITaggedTelemetryPropertyType, // deprecated\n\tITelemetryBaseEvent,\n\tITelemetryBaseLogger,\n\tITelemetryBaseProperties,\n\tITelemetryErrorEvent, // deprecated\n\tITelemetryGenericEvent, // deprecated\n\tITelemetryLogger, // deprecated\n\tITelemetryPerformanceEvent, // deprecated\n\tITelemetryProperties, // deprecated\n\tTagged,\n\tTelemetryEventCategory, // deprecated\n\tTelemetryBaseEventPropertyType,\n\tTelemetryEventPropertyType, // deprecated\n} from \"./logger\";\nexport { LogLevel } from \"./logger\";\nexport { FluidObjectProviderKeys, FluidObject, FluidObjectKeys } from \"./provider\";\nexport { ConfigTypes, IConfigProviderBase } from \"./config\";\n"]}