@fluidframework/runtime-definitions 2.0.0-internal.7.3.0 → 2.0.0-internal.7.4.1

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 (77) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/api-extractor-lint.json +13 -0
  3. package/api-extractor.json +3 -3
  4. package/api-report/runtime-definitions.api.md +76 -109
  5. package/dist/attribution.d.ts +1 -4
  6. package/dist/attribution.d.ts.map +1 -1
  7. package/dist/attribution.js.map +1 -1
  8. package/dist/dataStoreContext.d.ts +26 -2
  9. package/dist/dataStoreContext.d.ts.map +1 -1
  10. package/dist/dataStoreContext.js +5 -0
  11. package/dist/dataStoreContext.js.map +1 -1
  12. package/dist/dataStoreFactory.d.ts +7 -0
  13. package/dist/dataStoreFactory.d.ts.map +1 -1
  14. package/dist/dataStoreFactory.js +3 -0
  15. package/dist/dataStoreFactory.js.map +1 -1
  16. package/dist/dataStoreRegistry.d.ts +10 -0
  17. package/dist/dataStoreRegistry.d.ts.map +1 -1
  18. package/dist/dataStoreRegistry.js +3 -0
  19. package/dist/dataStoreRegistry.js.map +1 -1
  20. package/dist/garbageCollection.d.ts +22 -4
  21. package/dist/garbageCollection.d.ts.map +1 -1
  22. package/dist/garbageCollection.js +20 -4
  23. package/dist/garbageCollection.js.map +1 -1
  24. package/dist/index.d.ts +49 -1
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +11 -2
  27. package/dist/index.js.map +1 -1
  28. package/dist/protocol.d.ts +7 -0
  29. package/dist/protocol.d.ts.map +1 -1
  30. package/dist/protocol.js.map +1 -1
  31. package/dist/runtime-definitions-alpha.d.ts +1002 -0
  32. package/dist/runtime-definitions-beta.d.ts +201 -0
  33. package/dist/runtime-definitions-public.d.ts +201 -0
  34. package/dist/runtime-definitions-untrimmed.d.ts +1117 -0
  35. package/dist/summary.d.ts +34 -0
  36. package/dist/summary.d.ts.map +1 -1
  37. package/dist/summary.js +12 -0
  38. package/dist/summary.js.map +1 -1
  39. package/lib/runtime-definitions-alpha.d.ts +1002 -0
  40. package/lib/runtime-definitions-beta.d.ts +201 -0
  41. package/lib/runtime-definitions-public.d.ts +201 -0
  42. package/lib/runtime-definitions-untrimmed.d.ts +1117 -0
  43. package/package.json +28 -8
  44. package/src/attribution.ts +1 -4
  45. package/src/dataStoreContext.ts +26 -2
  46. package/src/dataStoreFactory.ts +7 -0
  47. package/src/dataStoreRegistry.ts +10 -0
  48. package/src/garbageCollection.ts +22 -4
  49. package/src/index.ts +46 -6
  50. package/src/protocol.ts +7 -0
  51. package/src/summary.ts +34 -0
  52. package/dist/id-compressor/idCompressor.d.ts +0 -136
  53. package/dist/id-compressor/idCompressor.d.ts.map +0 -1
  54. package/dist/id-compressor/idCompressor.js +0 -7
  55. package/dist/id-compressor/idCompressor.js.map +0 -1
  56. package/dist/id-compressor/identifiers.d.ts +0 -36
  57. package/dist/id-compressor/identifiers.d.ts.map +0 -1
  58. package/dist/id-compressor/identifiers.js +0 -7
  59. package/dist/id-compressor/identifiers.js.map +0 -1
  60. package/dist/id-compressor/index.d.ts +0 -8
  61. package/dist/id-compressor/index.d.ts.map +0 -1
  62. package/dist/id-compressor/index.js +0 -10
  63. package/dist/id-compressor/index.js.map +0 -1
  64. package/dist/id-compressor/persisted-types/0.0.1.d.ts +0 -41
  65. package/dist/id-compressor/persisted-types/0.0.1.d.ts.map +0 -1
  66. package/dist/id-compressor/persisted-types/0.0.1.js +0 -13
  67. package/dist/id-compressor/persisted-types/0.0.1.js.map +0 -1
  68. package/dist/id-compressor/persisted-types/index.d.ts +0 -6
  69. package/dist/id-compressor/persisted-types/index.d.ts.map +0 -1
  70. package/dist/id-compressor/persisted-types/index.js +0 -10
  71. package/dist/id-compressor/persisted-types/index.js.map +0 -1
  72. package/src/id-compressor/idCompressor.ts +0 -152
  73. package/src/id-compressor/identifiers.ts +0 -35
  74. package/src/id-compressor/index.ts +0 -16
  75. package/src/id-compressor/persisted-types/0.0.1.ts +0 -46
  76. package/src/id-compressor/persisted-types/README.md +0 -3
  77. package/src/id-compressor/persisted-types/index.ts +0 -12
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @fluidframework/runtime-definitions
2
2
 
3
+ ## 2.0.0-internal.7.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - container-runtime/runtime-definitions: `IdCompressor` and related types deprecated ([#18749](https://github.com/microsoft/FluidFramework/issues/18749)) [6f070179de](https://github.com/microsoft/FluidFramework/commits/6f070179ded7c2f4398252f75485e85b39725419)
8
+
9
+ `IdCompressor` and related types from the @fluidframework/container-runtime and @fluidframework/runtime-definitions
10
+ packages have been deprecated. They can now be found in a new package, @fluidframework/id-compressor.
11
+
12
+ The `IdCompressor` class is deprecated even in the new package. Consumers should use the interfaces, `IIdCompressor` and
13
+ `IIdCompressorCore`, in conjunction with the factory function `createIdCompressor` instead.
14
+
3
15
  ## 2.0.0-internal.7.3.0
4
16
 
5
17
  Dependency updates only.
@@ -0,0 +1,13 @@
1
+ {
2
+ "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
3
+ "extends": "../../../common/build/build-common/api-extractor-lint.json",
4
+ "messages": {
5
+ "extractorMessageReporting": {
6
+ // TODO: remove once base config has this enabled as an error
7
+ "ae-incompatible-release-tags": {
8
+ "logLevel": "error",
9
+ "addToApiReportFile": false
10
+ }
11
+ }
12
+ }
13
+ }
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
3
- "extends": "@fluidframework/build-common/api-extractor-base.json",
3
+ "extends": "../../../common/build/build-common/api-extractor-base.json",
4
4
  "messages": {
5
5
  "extractorMessageReporting": {
6
- "ae-missing-release-tag": {
7
- // TODO: Fix violations and remove this rule override
6
+ // TODO: Add missing documentation and remove this rule override
7
+ "ae-undocumented": {
8
8
  "logLevel": "none"
9
9
  }
10
10
  }
@@ -8,6 +8,8 @@ import { AttachState } from '@fluidframework/container-definitions';
8
8
  import { FluidObject } from '@fluidframework/core-interfaces';
9
9
  import { IAudience } from '@fluidframework/container-definitions';
10
10
  import { IClientDetails } from '@fluidframework/protocol-definitions';
11
+ import { IdCompressor } from '@fluidframework/id-compressor';
12
+ import { IdCreationRange } from '@fluidframework/id-compressor';
11
13
  import { IDeltaManager } from '@fluidframework/container-definitions';
12
14
  import { IDisposable } from '@fluidframework/core-interfaces';
13
15
  import { IDocumentMessage } from '@fluidframework/protocol-definitions';
@@ -17,7 +19,10 @@ import { IEventProvider } from '@fluidframework/core-interfaces';
17
19
  import { IFluidHandle } from '@fluidframework/core-interfaces';
18
20
  import { IFluidHandleContext } from '@fluidframework/core-interfaces';
19
21
  import { IFluidRouter } from '@fluidframework/core-interfaces';
22
+ import { IIdCompressor } from '@fluidframework/id-compressor';
23
+ import { IIdCompressorCore } from '@fluidframework/id-compressor';
20
24
  import { ILoaderOptions } from '@fluidframework/container-definitions';
25
+ import { initialClusterCapacity } from '@fluidframework/id-compressor';
21
26
  import { IProvideFluidHandleContext } from '@fluidframework/core-interfaces';
22
27
  import { IQuorumClients } from '@fluidframework/protocol-definitions';
23
28
  import { IRequest } from '@fluidframework/core-interfaces';
@@ -29,13 +34,20 @@ import { ISummaryTree } from '@fluidframework/protocol-definitions';
29
34
  import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
30
35
  import { ITree } from '@fluidframework/protocol-definitions';
31
36
  import type { IUser } from '@fluidframework/protocol-definitions';
37
+ import { OpSpaceCompressedId } from '@fluidframework/id-compressor';
38
+ import { SerializedIdCompressor } from '@fluidframework/id-compressor';
39
+ import { SerializedIdCompressorWithNoSession } from '@fluidframework/id-compressor';
40
+ import { SerializedIdCompressorWithOngoingSession } from '@fluidframework/id-compressor';
41
+ import { SessionId } from '@fluidframework/id-compressor';
42
+ import { SessionSpaceCompressedId } from '@fluidframework/id-compressor';
43
+ import { StableId } from '@fluidframework/id-compressor';
32
44
  import { SummaryTree } from '@fluidframework/protocol-definitions';
33
45
  import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
34
46
 
35
- // @public
47
+ // @alpha
36
48
  export type AliasResult = "Success" | "Conflict" | "AlreadyAliased";
37
49
 
38
- // @alpha
50
+ // @internal
39
51
  export interface AttributionInfo {
40
52
  timestamp: number;
41
53
  user: IUser;
@@ -44,17 +56,17 @@ export interface AttributionInfo {
44
56
  // @alpha
45
57
  export type AttributionKey = OpAttributionKey | DetachedAttributionKey | LocalAttributionKey;
46
58
 
47
- // @public (undocumented)
59
+ // @internal (undocumented)
48
60
  export const blobCountPropertyName = "BlobCount";
49
61
 
50
- // @public (undocumented)
62
+ // @internal (undocumented)
51
63
  export const channelsTreeName = ".channels";
52
64
 
53
- // @public (undocumented)
65
+ // @alpha (undocumented)
54
66
  export type CreateChildSummarizerNodeFn = (summarizeInternal: SummarizeInternalFn, getGCDataFn: (fullGC?: boolean) => Promise<IGarbageCollectionData>,
55
67
  getBaseGCDetailsFn?: () => Promise<IGarbageCollectionDetailsBase>) => ISummarizerNodeWithGC;
56
68
 
57
- // @public (undocumented)
69
+ // @alpha (undocumented)
58
70
  export type CreateChildSummarizerNodeParam = {
59
71
  type: CreateSummarizerNodeSource.FromSummary;
60
72
  } | {
@@ -65,7 +77,7 @@ export type CreateChildSummarizerNodeParam = {
65
77
  type: CreateSummarizerNodeSource.Local;
66
78
  };
67
79
 
68
- // @public (undocumented)
80
+ // @alpha (undocumented)
69
81
  export enum CreateSummarizerNodeSource {
70
82
  // (undocumented)
71
83
  FromAttach = 1,
@@ -82,45 +94,45 @@ export interface DetachedAttributionKey {
82
94
  type: "detached";
83
95
  }
84
96
 
85
- // @public
97
+ // @alpha
86
98
  export type FluidDataStoreRegistryEntry = Readonly<Partial<IProvideFluidDataStoreRegistry & IProvideFluidDataStoreFactory>>;
87
99
 
88
- // @public
100
+ // @alpha
89
101
  export enum FlushMode {
90
102
  Immediate = 0,
91
103
  TurnBased = 1
92
104
  }
93
105
 
94
- // @public (undocumented)
106
+ // @internal (undocumented)
95
107
  export enum FlushModeExperimental {
96
108
  Async = 2
97
109
  }
98
110
 
99
- // @public
111
+ // @internal
100
112
  export const gcBlobPrefix = "__gc";
101
113
 
102
- // @public
114
+ // @internal
103
115
  export const gcDeletedBlobKey = "__deletedNodes";
104
116
 
105
- // @public
117
+ // @internal
106
118
  export const gcTombstoneBlobKey = "__tombstones";
107
119
 
108
- // @public
120
+ // @internal
109
121
  export const gcTreeKey = "gc";
110
122
 
111
- // @public
123
+ // @internal
112
124
  export interface IAttachMessage {
113
125
  id: string;
114
126
  snapshot: ITree;
115
127
  type: string;
116
128
  }
117
129
 
118
- // @public
130
+ // @alpha
119
131
  export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeBaseEvents> {
120
132
  // (undocumented)
121
133
  readonly clientDetails: IClientDetails;
122
134
  createDataStore(pkg: string | string[]): Promise<IDataStore>;
123
- // @internal @deprecated (undocumented)
135
+ // @deprecated (undocumented)
124
136
  _createDataStoreWithProps(pkg: string | string[], props?: any, id?: string): Promise<IDataStore>;
125
137
  createDetachedDataStore(pkg: Readonly<string[]>): IFluidDataStoreContextDetached;
126
138
  getAbsoluteUrl(relativeUrl: string): Promise<string | undefined>;
@@ -138,7 +150,7 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
138
150
  uploadBlob(blob: ArrayBufferLike, signal?: AbortSignal): Promise<IFluidHandle<ArrayBufferLike>>;
139
151
  }
140
152
 
141
- // @public (undocumented)
153
+ // @alpha (undocumented)
142
154
  export interface IContainerRuntimeBaseEvents extends IEvent {
143
155
  // (undocumented)
144
156
  (event: "batchBegin", listener: (op: ISequencedDocumentMessage) => void): any;
@@ -150,7 +162,7 @@ export interface IContainerRuntimeBaseEvents extends IEvent {
150
162
  (event: "signal", listener: (message: IInboundSignalMessage, local: boolean) => void): any;
151
163
  }
152
164
 
153
- // @public
165
+ // @alpha
154
166
  export interface IDataStore {
155
167
  readonly entryPoint: IFluidHandle<FluidObject>;
156
168
  // @deprecated (undocumented)
@@ -165,31 +177,24 @@ export interface IDataStore {
165
177
  trySetAlias(alias: string): Promise<AliasResult>;
166
178
  }
167
179
 
168
- // @public
169
- export interface IdCreationRange {
170
- // (undocumented)
171
- readonly ids?: {
172
- readonly firstGenCount: number;
173
- readonly count: number;
174
- };
175
- // (undocumented)
176
- readonly sessionId: SessionId;
177
- }
180
+ export { IdCompressor }
181
+
182
+ export { IdCreationRange }
178
183
 
179
- // @public
184
+ // @internal
180
185
  export interface IEnvelope {
181
186
  address: string;
182
187
  contents: any;
183
188
  }
184
189
 
185
- // @public
190
+ // @alpha
186
191
  export interface IExperimentalIncrementalSummaryContext {
187
192
  latestSummarySequenceNumber: number;
188
193
  summaryPath: string;
189
194
  summarySequenceNumber: number;
190
195
  }
191
196
 
192
- // @public
197
+ // @alpha
193
198
  export interface IFluidDataStoreChannel extends IDisposable {
194
199
  // (undocumented)
195
200
  applyStashedOp(content: any): Promise<unknown>;
@@ -217,7 +222,7 @@ export interface IFluidDataStoreChannel extends IDisposable {
217
222
  readonly visibilityState: VisibilityState;
218
223
  }
219
224
 
220
- // @public
225
+ // @alpha
221
226
  export interface IFluidDataStoreContext extends IEventProvider<IFluidDataStoreContextEvents>, Partial<IProvideFluidDataStoreRegistry>, IProvideFluidHandleContext {
222
227
  addedGCOutboundReference?(srcHandle: IFluidHandle, outboundHandle: IFluidHandle): void;
223
228
  readonly attachState: AttachState;
@@ -266,95 +271,78 @@ export interface IFluidDataStoreContext extends IEventProvider<IFluidDataStoreCo
266
271
  uploadBlob(blob: ArrayBufferLike, signal?: AbortSignal): Promise<IFluidHandle<ArrayBufferLike>>;
267
272
  }
268
273
 
269
- // @public (undocumented)
274
+ // @alpha (undocumented)
270
275
  export interface IFluidDataStoreContextDetached extends IFluidDataStoreContext {
271
276
  attachRuntime(factory: IProvideFluidDataStoreFactory, dataStoreRuntime: IFluidDataStoreChannel): Promise<void>;
272
277
  }
273
278
 
274
- // @public (undocumented)
279
+ // @alpha (undocumented)
275
280
  export interface IFluidDataStoreContextEvents extends IEvent {
276
281
  // (undocumented)
277
282
  (event: "attaching" | "attached", listener: () => void): any;
278
283
  }
279
284
 
280
- // @public (undocumented)
285
+ // @alpha (undocumented)
281
286
  export const IFluidDataStoreFactory: keyof IProvideFluidDataStoreFactory;
282
287
 
283
- // @public
288
+ // @alpha
284
289
  export interface IFluidDataStoreFactory extends IProvideFluidDataStoreFactory {
285
290
  instantiateDataStore(context: IFluidDataStoreContext, existing: boolean): Promise<IFluidDataStoreChannel>;
286
291
  type: string;
287
292
  }
288
293
 
289
- // @public (undocumented)
294
+ // @alpha (undocumented)
290
295
  export const IFluidDataStoreRegistry: keyof IProvideFluidDataStoreRegistry;
291
296
 
292
- // @public
297
+ // @alpha
293
298
  export interface IFluidDataStoreRegistry extends IProvideFluidDataStoreRegistry {
294
299
  // (undocumented)
295
300
  get(name: string): Promise<FluidDataStoreRegistryEntry | undefined>;
296
301
  }
297
302
 
298
- // @public
303
+ // @alpha
299
304
  export interface IGarbageCollectionData {
300
305
  gcNodes: {
301
306
  [id: string]: string[];
302
307
  };
303
308
  }
304
309
 
305
- // @public
310
+ // @alpha
306
311
  export interface IGarbageCollectionDetailsBase {
307
312
  gcData?: IGarbageCollectionData;
308
313
  usedRoutes?: string[];
309
314
  }
310
315
 
311
- // @public
312
- export interface IIdCompressor {
313
- decompress(id: SessionSpaceCompressedId): StableId;
314
- generateCompressedId(): SessionSpaceCompressedId;
315
- // (undocumented)
316
- localSessionId: SessionId;
317
- normalizeToOpSpace(id: SessionSpaceCompressedId): OpSpaceCompressedId;
318
- normalizeToSessionSpace(id: OpSpaceCompressedId, originSessionId: SessionId): SessionSpaceCompressedId;
319
- recompress(uncompressed: StableId): SessionSpaceCompressedId;
320
- tryRecompress(uncompressed: StableId): SessionSpaceCompressedId | undefined;
321
- }
316
+ export { IIdCompressor }
322
317
 
323
- // @public (undocumented)
324
- export interface IIdCompressorCore {
325
- finalizeCreationRange(range: IdCreationRange): void;
326
- serialize(withSession: true): SerializedIdCompressorWithOngoingSession;
327
- serialize(withSession: false): SerializedIdCompressorWithNoSession;
328
- takeNextCreationRange(): IdCreationRange;
329
- }
318
+ export { IIdCompressorCore }
330
319
 
331
- // @public
320
+ // @alpha
332
321
  export interface IInboundSignalMessage extends ISignalMessage {
333
322
  // (undocumented)
334
323
  type: string;
335
324
  }
336
325
 
337
- // @public
326
+ // @internal
338
327
  export type InboundAttachMessage = Omit<IAttachMessage, "snapshot"> & {
339
328
  snapshot: IAttachMessage["snapshot"] | null;
340
329
  };
341
330
 
342
- // @public
343
- export const initialClusterCapacity = 512;
331
+ export { initialClusterCapacity }
344
332
 
345
- // @public (undocumented)
333
+ // @alpha (undocumented)
346
334
  export interface IProvideFluidDataStoreFactory {
347
335
  // (undocumented)
348
336
  readonly IFluidDataStoreFactory: IFluidDataStoreFactory;
349
337
  }
350
338
 
351
- // @public (undocumented)
339
+ // @alpha (undocumented)
352
340
  export interface IProvideFluidDataStoreRegistry {
353
341
  // (undocumented)
354
342
  readonly IFluidDataStoreRegistry: IFluidDataStoreRegistry;
355
343
  }
356
344
 
357
- // @public (undocumented)
345
+ // @internal (undocumented)
358
346
  export interface ISignalEnvelope {
359
347
  address?: string;
360
348
  clientSignalSequenceNumber: number;
@@ -364,14 +352,14 @@ export interface ISignalEnvelope {
364
352
  };
365
353
  }
366
354
 
367
- // @public
355
+ // @alpha
368
356
  export interface ISummarizeInternalResult extends ISummarizeResult {
369
357
  // (undocumented)
370
358
  id: string;
371
359
  pathPartsForChildren?: string[];
372
360
  }
373
361
 
374
- // @public
362
+ // @alpha
375
363
  export interface ISummarizeResult {
376
364
  // (undocumented)
377
365
  stats: ISummaryStats;
@@ -379,7 +367,7 @@ export interface ISummarizeResult {
379
367
  summary: SummaryTree;
380
368
  }
381
369
 
382
- // @public (undocumented)
370
+ // @alpha (undocumented)
383
371
  export interface ISummarizerNode {
384
372
  // (undocumented)
385
373
  createChild(
@@ -397,18 +385,18 @@ export interface ISummarizerNode {
397
385
  updateBaseSummaryState(snapshot: ISnapshotTree): void;
398
386
  }
399
387
 
400
- // @public (undocumented)
388
+ // @alpha (undocumented)
401
389
  export interface ISummarizerNodeConfig {
402
390
  readonly canReuseHandle?: boolean;
403
391
  readonly throwOnFailure?: true;
404
392
  }
405
393
 
406
- // @public (undocumented)
394
+ // @alpha (undocumented)
407
395
  export interface ISummarizerNodeConfigWithGC extends ISummarizerNodeConfig {
408
396
  readonly gcDisabled?: boolean;
409
397
  }
410
398
 
411
- // @public
399
+ // @alpha
412
400
  export interface ISummarizerNodeWithGC extends ISummarizerNode {
413
401
  // (undocumented)
414
402
  createChild(
@@ -425,7 +413,7 @@ export interface ISummarizerNodeWithGC extends ISummarizerNode {
425
413
  updateUsedRoutes(usedRoutes: string[]): void;
426
414
  }
427
415
 
428
- // @public
416
+ // @alpha
429
417
  export interface ISummaryStats {
430
418
  // (undocumented)
431
419
  blobNodeCount: number;
@@ -439,13 +427,13 @@ export interface ISummaryStats {
439
427
  unreferencedBlobSize: number;
440
428
  }
441
429
 
442
- // @public
430
+ // @alpha
443
431
  export interface ISummaryTreeWithStats {
444
432
  stats: ISummaryStats;
445
433
  summary: ISummaryTree;
446
434
  }
447
435
 
448
- // @public
436
+ // @alpha
449
437
  export interface ITelemetryContext {
450
438
  get(prefix: string, property: string): TelemetryEventPropertyType;
451
439
  serialize(): string;
@@ -459,10 +447,10 @@ export interface LocalAttributionKey {
459
447
  type: "local";
460
448
  }
461
449
 
462
- // @public
450
+ // @alpha
463
451
  export type NamedFluidDataStoreRegistryEntries = Iterable<NamedFluidDataStoreRegistryEntry>;
464
452
 
465
- // @public
453
+ // @alpha
466
454
  export type NamedFluidDataStoreRegistryEntry = [string, Promise<FluidDataStoreRegistryEntry>];
467
455
 
468
456
  // @alpha
@@ -471,55 +459,34 @@ export interface OpAttributionKey {
471
459
  type: "op";
472
460
  }
473
461
 
474
- // @public
475
- export type OpSpaceCompressedId = number & {
476
- readonly OpNormalized: "9209432d-a959-4df7-b2ad-767ead4dbcae";
477
- };
462
+ export { OpSpaceCompressedId }
478
463
 
479
- // @public
480
- export type SerializedIdCompressor = string & {
481
- readonly _serializedIdCompressor: "8c73c57c-1cf4-4278-8915-6444cb4f6af5";
482
- };
464
+ export { SerializedIdCompressor }
483
465
 
484
- // @public
485
- export type SerializedIdCompressorWithNoSession = SerializedIdCompressor & {
486
- readonly _noLocalState: "3aa2e1e8-cc28-4ea7-bc1a-a11dc3f26dfb";
487
- };
466
+ export { SerializedIdCompressorWithNoSession }
488
467
 
489
- // @public
490
- export type SerializedIdCompressorWithOngoingSession = SerializedIdCompressor & {
491
- readonly _hasLocalState: "1281acae-6d14-47e7-bc92-71c8ee0819cb";
492
- };
468
+ export { SerializedIdCompressorWithOngoingSession }
493
469
 
494
- // @public
495
- export type SessionId = StableId & {
496
- readonly SessionId: "4498f850-e14e-4be9-8db0-89ec00997e58";
497
- };
470
+ export { SessionId }
498
471
 
499
- // @public
500
- export type SessionSpaceCompressedId = number & {
501
- readonly SessionUnique: "cea55054-6b82-4cbf-ad19-1fa645ea3b3e";
502
- };
472
+ export { SessionSpaceCompressedId }
503
473
 
504
- // @public
505
- export type StableId = string & {
506
- readonly StableId: "53172b0d-a3d5-41ea-bd75-b43839c97f5a";
507
- };
474
+ export { StableId }
508
475
 
509
- // @public (undocumented)
476
+ // @alpha (undocumented)
510
477
  export type SummarizeInternalFn = (fullTree: boolean, trackState: boolean, telemetryContext?: ITelemetryContext, incrementalSummaryContext?: IExperimentalIncrementalSummaryContext) => Promise<ISummarizeInternalResult>;
511
478
 
512
- // @public (undocumented)
479
+ // @internal (undocumented)
513
480
  export const totalBlobSizePropertyName = "TotalBlobSize";
514
481
 
515
- // @public
482
+ // @alpha
516
483
  export const VisibilityState: {
517
484
  NotVisible: string;
518
485
  LocallyVisible: string;
519
486
  GloballyVisible: string;
520
487
  };
521
488
 
522
- // @public (undocumented)
489
+ // @alpha (undocumented)
523
490
  export type VisibilityState = (typeof VisibilityState)[keyof typeof VisibilityState];
524
491
 
525
492
  // (No @packageDocumentation comment for this package)
@@ -6,7 +6,6 @@ import type { IUser } from "@fluidframework/protocol-definitions";
6
6
  /**
7
7
  * AttributionKey representing a reference to some op in the op stream.
8
8
  * Content associated with this key aligns with content modified by that op.
9
- *
10
9
  * @alpha
11
10
  */
12
11
  export interface OpAttributionKey {
@@ -29,7 +28,6 @@ export interface OpAttributionKey {
29
28
  * is currently unsupported, as applications can effectively modify content anonymously while detached.
30
29
  * The runtime has no mechanism for reliably obtaining the user. It would be reasonable to start supporting
31
30
  * this functionality if the host provided additional context to their attributor or attach calls.
32
- *
33
31
  * @alpha
34
32
  */
35
33
  export interface DetachedAttributionKey {
@@ -46,7 +44,6 @@ export interface DetachedAttributionKey {
46
44
  }
47
45
  /**
48
46
  * AttributionKey associated with content that has been made locally but not yet acked by the server.
49
- *
50
47
  * @alpha
51
48
  */
52
49
  export interface LocalAttributionKey {
@@ -59,7 +56,7 @@ export interface LocalAttributionKey {
59
56
  export type AttributionKey = OpAttributionKey | DetachedAttributionKey | LocalAttributionKey;
60
57
  /**
61
58
  * Attribution information associated with a change.
62
- * @alpha
59
+ * @internal
63
60
  */
64
61
  export interface AttributionInfo {
65
62
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"attribution.d.ts","sourceRoot":"","sources":["../src/attribution.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sCAAsC,CAAC;AAElE;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAChC;;;;;OAKG;IACH,IAAI,EAAE,IAAI,CAAC;IAEX;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,UAAU,CAAC;IAEjB;;;;;;;OAOG;IACH,EAAE,EAAE,CAAC,CAAC;CACN;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,OAAO,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,mBAAmB,CAAC;AAE7F;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IACZ;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"attribution.d.ts","sourceRoot":"","sources":["../src/attribution.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sCAAsC,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAChC;;;;;OAKG;IACH,IAAI,EAAE,IAAI,CAAC;IAEX;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,UAAU,CAAC;IAEjB;;;;;;;OAOG;IACH,EAAE,EAAE,CAAC,CAAC;CACN;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,OAAO,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,mBAAmB,CAAC;AAE7F;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IACZ;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CAClB"}
@@ -1 +1 @@
1
- {"version":3,"file":"attribution.js","sourceRoot":"","sources":["../src/attribution.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport type { IUser } from \"@fluidframework/protocol-definitions\";\n\n/**\n * AttributionKey representing a reference to some op in the op stream.\n * Content associated with this key aligns with content modified by that op.\n *\n * @alpha\n */\nexport interface OpAttributionKey {\n\t/**\n\t * The type of attribution this key corresponds to.\n\t *\n\t * Keys currently all represent op-based attribution, so have the form `{ type: \"op\", key: sequenceNumber }`.\n\t * Thus, they can be used with an `OpStreamAttributor` to recover timestamp/user information.\n\t */\n\ttype: \"op\";\n\n\t/**\n\t * The sequenceNumber of the op this attribution key is for.\n\t */\n\tseq: number;\n}\n\n/**\n * AttributionKey associated with content that was inserted while the container was in a detached state.\n *\n * @remarks Retrieving an {@link AttributionInfo} from content associated with detached attribution keys\n * is currently unsupported, as applications can effectively modify content anonymously while detached.\n * The runtime has no mechanism for reliably obtaining the user. It would be reasonable to start supporting\n * this functionality if the host provided additional context to their attributor or attach calls.\n *\n * @alpha\n */\nexport interface DetachedAttributionKey {\n\ttype: \"detached\";\n\n\t/**\n\t * Arbitrary discriminator associated with content inserted while detached.\n\t *\n\t * @remarks For now, the runtime assumes all content created while detached is associated\n\t * with the same user/timestamp.\n\t * We could weaken this assumption in the future with further API support and\n\t * allow arbitrary strings or numbers as part of this key.\n\t */\n\tid: 0;\n}\n\n/**\n * AttributionKey associated with content that has been made locally but not yet acked by the server.\n *\n * @alpha\n */\nexport interface LocalAttributionKey {\n\ttype: \"local\";\n}\n\n/**\n * Can be indexed into the ContainerRuntime in order to retrieve {@link AttributionInfo}.\n * @alpha\n */\nexport type AttributionKey = OpAttributionKey | DetachedAttributionKey | LocalAttributionKey;\n\n/**\n * Attribution information associated with a change.\n * @alpha\n */\nexport interface AttributionInfo {\n\t/**\n\t * The user that performed the change.\n\t */\n\tuser: IUser;\n\t/**\n\t * When the change happened.\n\t */\n\ttimestamp: number;\n}\n"]}
1
+ {"version":3,"file":"attribution.js","sourceRoot":"","sources":["../src/attribution.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport type { IUser } from \"@fluidframework/protocol-definitions\";\n\n/**\n * AttributionKey representing a reference to some op in the op stream.\n * Content associated with this key aligns with content modified by that op.\n * @alpha\n */\nexport interface OpAttributionKey {\n\t/**\n\t * The type of attribution this key corresponds to.\n\t *\n\t * Keys currently all represent op-based attribution, so have the form `{ type: \"op\", key: sequenceNumber }`.\n\t * Thus, they can be used with an `OpStreamAttributor` to recover timestamp/user information.\n\t */\n\ttype: \"op\";\n\n\t/**\n\t * The sequenceNumber of the op this attribution key is for.\n\t */\n\tseq: number;\n}\n\n/**\n * AttributionKey associated with content that was inserted while the container was in a detached state.\n *\n * @remarks Retrieving an {@link AttributionInfo} from content associated with detached attribution keys\n * is currently unsupported, as applications can effectively modify content anonymously while detached.\n * The runtime has no mechanism for reliably obtaining the user. It would be reasonable to start supporting\n * this functionality if the host provided additional context to their attributor or attach calls.\n * @alpha\n */\nexport interface DetachedAttributionKey {\n\ttype: \"detached\";\n\n\t/**\n\t * Arbitrary discriminator associated with content inserted while detached.\n\t *\n\t * @remarks For now, the runtime assumes all content created while detached is associated\n\t * with the same user/timestamp.\n\t * We could weaken this assumption in the future with further API support and\n\t * allow arbitrary strings or numbers as part of this key.\n\t */\n\tid: 0;\n}\n\n/**\n * AttributionKey associated with content that has been made locally but not yet acked by the server.\n * @alpha\n */\nexport interface LocalAttributionKey {\n\ttype: \"local\";\n}\n\n/**\n * Can be indexed into the ContainerRuntime in order to retrieve {@link AttributionInfo}.\n * @alpha\n */\nexport type AttributionKey = OpAttributionKey | DetachedAttributionKey | LocalAttributionKey;\n\n/**\n * Attribution information associated with a change.\n * @internal\n */\nexport interface AttributionInfo {\n\t/**\n\t * The user that performed the change.\n\t */\n\tuser: IUser;\n\t/**\n\t * When the change happened.\n\t */\n\ttimestamp: number;\n}\n"]}
@@ -6,14 +6,15 @@ import { IEvent, IEventProvider, ITelemetryBaseLogger, IDisposable, IFluidRouter
6
6
  import { IAudience, IDeltaManager, AttachState, ILoaderOptions } from "@fluidframework/container-definitions";
7
7
  import { IDocumentStorageService } from "@fluidframework/driver-definitions";
8
8
  import { IClientDetails, IDocumentMessage, IQuorumClients, ISequencedDocumentMessage, ISnapshotTree } from "@fluidframework/protocol-definitions";
9
+ import { IIdCompressor } from "@fluidframework/id-compressor";
9
10
  import { IProvideFluidDataStoreFactory } from "./dataStoreFactory";
10
11
  import { IProvideFluidDataStoreRegistry } from "./dataStoreRegistry";
11
12
  import { IGarbageCollectionData, IGarbageCollectionDetailsBase } from "./garbageCollection";
12
13
  import { IInboundSignalMessage } from "./protocol";
13
14
  import { CreateChildSummarizerNodeParam, ISummarizerNodeWithGC, ISummaryTreeWithStats, ITelemetryContext, SummarizeInternalFn } from "./summary";
14
- import { IIdCompressor } from "./id-compressor";
15
15
  /**
16
16
  * Runtime flush mode handling
17
+ * @alpha
17
18
  */
18
19
  export declare enum FlushMode {
19
20
  /**
@@ -26,6 +27,9 @@ export declare enum FlushMode {
26
27
  */
27
28
  TurnBased = 1
28
29
  }
30
+ /**
31
+ * @internal
32
+ */
29
33
  export declare enum FlushModeExperimental {
30
34
  /**
31
35
  * When in Async flush mode, the runtime will accumulate all operations across JS turns and send them as a single
@@ -41,6 +45,7 @@ export declare enum FlushModeExperimental {
41
45
  /**
42
46
  * This tells the visibility state of a Fluid object. It basically tracks whether the object is not visible, visible
43
47
  * locally within the container only or visible globally to all clients.
48
+ * @alpha
44
49
  */
45
50
  export declare const VisibilityState: {
46
51
  /**
@@ -64,7 +69,13 @@ export declare const VisibilityState: {
64
69
  */
65
70
  GloballyVisible: string;
66
71
  };
72
+ /**
73
+ * @alpha
74
+ */
67
75
  export type VisibilityState = (typeof VisibilityState)[keyof typeof VisibilityState];
76
+ /**
77
+ * @alpha
78
+ */
68
79
  export interface IContainerRuntimeBaseEvents extends IEvent {
69
80
  (event: "batchBegin", listener: (op: ISequencedDocumentMessage) => void): any;
70
81
  /**
@@ -83,6 +94,7 @@ export interface IContainerRuntimeBaseEvents extends IEvent {
83
94
  * the `IContainerRuntime.getAliasedDataStoreEntryPoint` function. The current datastore should be discarded
84
95
  * and will be garbage collected. The current datastore cannot be aliased to a different value.
85
96
  * 'AlreadyAliased' - the datastore has already been previously bound to another alias name.
97
+ * @alpha
86
98
  */
87
99
  export type AliasResult = "Success" | "Conflict" | "AlreadyAliased";
88
100
  /**
@@ -90,6 +102,7 @@ export type AliasResult = "Success" | "Conflict" | "AlreadyAliased";
90
102
  * - Handle to the data store's entryPoint
91
103
  * - Fluid router for the data store
92
104
  * - Can be assigned an alias
105
+ * @alpha
93
106
  */
94
107
  export interface IDataStore {
95
108
  /**
@@ -141,6 +154,7 @@ export interface IDataStore {
141
154
  /**
142
155
  * A reduced set of functionality of IContainerRuntime that a data store context/data store runtime will need
143
156
  * TODO: this should be merged into IFluidDataStoreContext
157
+ * @alpha
144
158
  */
145
159
  export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeBaseEvents> {
146
160
  readonly logger: ITelemetryBaseLogger;
@@ -163,7 +177,6 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
163
177
  submitSignal(type: string, content: any): void;
164
178
  /**
165
179
  * @deprecated 0.16 Issue #1537, #3631
166
- * @internal
167
180
  */
168
181
  _createDataStoreWithProps(pkg: string | string[], props?: any, id?: string): Promise<IDataStore>;
169
182
  /**
@@ -205,6 +218,7 @@ export interface IContainerRuntimeBase extends IEventProvider<IContainerRuntimeB
205
218
  *
206
219
  * Functionality include attach, snapshot, op/signal processing, request routes, expose an entryPoint,
207
220
  * and connection state notifications
221
+ * @alpha
208
222
  */
209
223
  export interface IFluidDataStoreChannel extends IDisposable {
210
224
  readonly id: string;
@@ -287,17 +301,24 @@ export interface IFluidDataStoreChannel extends IDisposable {
287
301
  */
288
302
  readonly IFluidRouter: IFluidRouter;
289
303
  }
304
+ /**
305
+ * @alpha
306
+ */
290
307
  export type CreateChildSummarizerNodeFn = (summarizeInternal: SummarizeInternalFn, getGCDataFn: (fullGC?: boolean) => Promise<IGarbageCollectionData>,
291
308
  /**
292
309
  * @deprecated The functionality to get base GC details has been moved to summarizer node.
293
310
  */
294
311
  getBaseGCDetailsFn?: () => Promise<IGarbageCollectionDetailsBase>) => ISummarizerNodeWithGC;
312
+ /**
313
+ * @alpha
314
+ */
295
315
  export interface IFluidDataStoreContextEvents extends IEvent {
296
316
  (event: "attaching" | "attached", listener: () => void): any;
297
317
  }
298
318
  /**
299
319
  * Represents the context for the data store. It is used by the data store runtime to
300
320
  * get information and call functionality to the container.
321
+ * @alpha
301
322
  */
302
323
  export interface IFluidDataStoreContext extends IEventProvider<IFluidDataStoreContextEvents>, Partial<IProvideFluidDataStoreRegistry>, IProvideFluidHandleContext {
303
324
  readonly id: string;
@@ -413,6 +434,9 @@ export interface IFluidDataStoreContext extends IEventProvider<IFluidDataStoreCo
413
434
  */
414
435
  addedGCOutboundReference?(srcHandle: IFluidHandle, outboundHandle: IFluidHandle): void;
415
436
  }
437
+ /**
438
+ * @alpha
439
+ */
416
440
  export interface IFluidDataStoreContextDetached extends IFluidDataStoreContext {
417
441
  /**
418
442
  * Binds a runtime to the context.