@fluidframework/container-runtime 2.0.0-internal.7.0.0 → 2.0.0-internal.7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/api-extractor.json +1 -1
  3. package/api-report/container-runtime.api.md +864 -0
  4. package/dist/blobManager.d.ts +4 -6
  5. package/dist/blobManager.d.ts.map +1 -1
  6. package/dist/blobManager.js +42 -56
  7. package/dist/blobManager.js.map +1 -1
  8. package/dist/connectionTelemetry.d.ts.map +1 -1
  9. package/dist/connectionTelemetry.js +75 -42
  10. package/dist/connectionTelemetry.js.map +1 -1
  11. package/dist/containerRuntime.d.ts +90 -36
  12. package/dist/containerRuntime.d.ts.map +1 -1
  13. package/dist/containerRuntime.js +125 -59
  14. package/dist/containerRuntime.js.map +1 -1
  15. package/dist/dataStore.js +2 -2
  16. package/dist/dataStore.js.map +1 -1
  17. package/dist/dataStoreContext.d.ts +8 -2
  18. package/dist/dataStoreContext.d.ts.map +1 -1
  19. package/dist/dataStoreContext.js +15 -8
  20. package/dist/dataStoreContext.js.map +1 -1
  21. package/dist/dataStoreRegistry.d.ts +3 -0
  22. package/dist/dataStoreRegistry.d.ts.map +1 -1
  23. package/dist/dataStoreRegistry.js +3 -0
  24. package/dist/dataStoreRegistry.js.map +1 -1
  25. package/dist/dataStores.d.ts +0 -2
  26. package/dist/dataStores.d.ts.map +1 -1
  27. package/dist/dataStores.js +2 -7
  28. package/dist/dataStores.js.map +1 -1
  29. package/dist/deltaManagerProxyBase.d.ts +1 -1
  30. package/dist/deltaManagerProxyBase.d.ts.map +1 -1
  31. package/dist/deltaManagerProxyBase.js +2 -2
  32. package/dist/deltaManagerProxyBase.js.map +1 -1
  33. package/dist/error.d.ts.map +1 -1
  34. package/dist/error.js.map +1 -1
  35. package/dist/gc/garbageCollection.d.ts +6 -0
  36. package/dist/gc/garbageCollection.d.ts.map +1 -1
  37. package/dist/gc/garbageCollection.js +16 -3
  38. package/dist/gc/garbageCollection.js.map +1 -1
  39. package/dist/gc/gcConfigs.d.ts +1 -0
  40. package/dist/gc/gcConfigs.d.ts.map +1 -1
  41. package/dist/gc/gcConfigs.js +12 -2
  42. package/dist/gc/gcConfigs.js.map +1 -1
  43. package/dist/gc/gcDefinitions.d.ts +42 -11
  44. package/dist/gc/gcDefinitions.d.ts.map +1 -1
  45. package/dist/gc/gcDefinitions.js +4 -1
  46. package/dist/gc/gcDefinitions.js.map +1 -1
  47. package/dist/gc/gcSummaryDefinitions.d.ts +1 -1
  48. package/dist/gc/gcSummaryDefinitions.js.map +1 -1
  49. package/dist/gc/gcTelemetry.d.ts +2 -3
  50. package/dist/gc/gcTelemetry.d.ts.map +1 -1
  51. package/dist/gc/gcTelemetry.js +7 -8
  52. package/dist/gc/gcTelemetry.js.map +1 -1
  53. package/dist/gc/index.d.ts +2 -2
  54. package/dist/gc/index.d.ts.map +1 -1
  55. package/dist/gc/index.js +1 -5
  56. package/dist/gc/index.js.map +1 -1
  57. package/dist/id-compressor/utilities.d.ts +3 -0
  58. package/dist/id-compressor/utilities.d.ts.map +1 -1
  59. package/dist/id-compressor/utilities.js +3 -0
  60. package/dist/id-compressor/utilities.js.map +1 -1
  61. package/dist/index.d.ts +4 -3
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +4 -1
  64. package/dist/index.js.map +1 -1
  65. package/dist/messageTypes.d.ts +4 -1
  66. package/dist/messageTypes.d.ts.map +1 -1
  67. package/dist/messageTypes.js +3 -0
  68. package/dist/messageTypes.js.map +1 -1
  69. package/dist/opLifecycle/definitions.d.ts +3 -0
  70. package/dist/opLifecycle/definitions.d.ts.map +1 -1
  71. package/dist/opLifecycle/definitions.js.map +1 -1
  72. package/dist/opLifecycle/outbox.d.ts.map +1 -1
  73. package/dist/opLifecycle/outbox.js +7 -2
  74. package/dist/opLifecycle/outbox.js.map +1 -1
  75. package/dist/packageVersion.d.ts +1 -1
  76. package/dist/packageVersion.js +1 -1
  77. package/dist/packageVersion.js.map +1 -1
  78. package/dist/pendingStateManager.d.ts.map +1 -1
  79. package/dist/pendingStateManager.js +3 -1
  80. package/dist/pendingStateManager.js.map +1 -1
  81. package/dist/scheduleManager.js +6 -2
  82. package/dist/scheduleManager.js.map +1 -1
  83. package/dist/summary/orderedClientElection.d.ts +4 -1
  84. package/dist/summary/orderedClientElection.d.ts.map +1 -1
  85. package/dist/summary/orderedClientElection.js.map +1 -1
  86. package/dist/summary/runWhileConnectedCoordinator.d.ts +5 -0
  87. package/dist/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
  88. package/dist/summary/runWhileConnectedCoordinator.js +1 -0
  89. package/dist/summary/runWhileConnectedCoordinator.js.map +1 -1
  90. package/dist/summary/summarizer.d.ts +2 -0
  91. package/dist/summary/summarizer.d.ts.map +1 -1
  92. package/dist/summary/summarizer.js +15 -7
  93. package/dist/summary/summarizer.js.map +1 -1
  94. package/dist/summary/summarizerTypes.d.ts +94 -10
  95. package/dist/summary/summarizerTypes.d.ts.map +1 -1
  96. package/dist/summary/summarizerTypes.js.map +1 -1
  97. package/dist/summary/summaryCollection.d.ts +16 -0
  98. package/dist/summary/summaryCollection.d.ts.map +1 -1
  99. package/dist/summary/summaryCollection.js +2 -0
  100. package/dist/summary/summaryCollection.js.map +1 -1
  101. package/dist/summary/summaryFormat.d.ts +10 -1
  102. package/dist/summary/summaryFormat.d.ts.map +1 -1
  103. package/dist/summary/summaryFormat.js.map +1 -1
  104. package/dist/summary/summaryGenerator.js.map +1 -1
  105. package/dist/summary/summaryManager.d.ts +2 -2
  106. package/dist/summary/summaryManager.d.ts.map +1 -1
  107. package/dist/summary/summaryManager.js +3 -3
  108. package/dist/summary/summaryManager.js.map +1 -1
  109. package/dist/tsdoc-metadata.json +1 -1
  110. package/lib/blobManager.d.ts +4 -6
  111. package/lib/blobManager.d.ts.map +1 -1
  112. package/lib/blobManager.js +44 -58
  113. package/lib/blobManager.js.map +1 -1
  114. package/lib/connectionTelemetry.d.ts.map +1 -1
  115. package/lib/connectionTelemetry.js +76 -43
  116. package/lib/connectionTelemetry.js.map +1 -1
  117. package/lib/containerRuntime.d.ts +90 -36
  118. package/lib/containerRuntime.d.ts.map +1 -1
  119. package/lib/containerRuntime.js +125 -62
  120. package/lib/containerRuntime.js.map +1 -1
  121. package/lib/dataStore.js +2 -2
  122. package/lib/dataStore.js.map +1 -1
  123. package/lib/dataStoreContext.d.ts +8 -2
  124. package/lib/dataStoreContext.d.ts.map +1 -1
  125. package/lib/dataStoreContext.js +16 -9
  126. package/lib/dataStoreContext.js.map +1 -1
  127. package/lib/dataStoreRegistry.d.ts +3 -0
  128. package/lib/dataStoreRegistry.d.ts.map +1 -1
  129. package/lib/dataStoreRegistry.js +3 -0
  130. package/lib/dataStoreRegistry.js.map +1 -1
  131. package/lib/dataStores.d.ts +0 -2
  132. package/lib/dataStores.d.ts.map +1 -1
  133. package/lib/dataStores.js +3 -8
  134. package/lib/dataStores.js.map +1 -1
  135. package/lib/deltaManagerProxyBase.d.ts +1 -1
  136. package/lib/deltaManagerProxyBase.d.ts.map +1 -1
  137. package/lib/deltaManagerProxyBase.js +2 -2
  138. package/lib/deltaManagerProxyBase.js.map +1 -1
  139. package/lib/error.d.ts.map +1 -1
  140. package/lib/error.js.map +1 -1
  141. package/lib/gc/garbageCollection.d.ts +6 -0
  142. package/lib/gc/garbageCollection.d.ts.map +1 -1
  143. package/lib/gc/garbageCollection.js +16 -3
  144. package/lib/gc/garbageCollection.js.map +1 -1
  145. package/lib/gc/gcConfigs.d.ts +1 -0
  146. package/lib/gc/gcConfigs.d.ts.map +1 -1
  147. package/lib/gc/gcConfigs.js +14 -4
  148. package/lib/gc/gcConfigs.js.map +1 -1
  149. package/lib/gc/gcDefinitions.d.ts +42 -11
  150. package/lib/gc/gcDefinitions.d.ts.map +1 -1
  151. package/lib/gc/gcDefinitions.js +4 -1
  152. package/lib/gc/gcDefinitions.js.map +1 -1
  153. package/lib/gc/gcSummaryDefinitions.d.ts +1 -1
  154. package/lib/gc/gcSummaryDefinitions.js.map +1 -1
  155. package/lib/gc/gcTelemetry.d.ts +2 -3
  156. package/lib/gc/gcTelemetry.d.ts.map +1 -1
  157. package/lib/gc/gcTelemetry.js +7 -8
  158. package/lib/gc/gcTelemetry.js.map +1 -1
  159. package/lib/gc/index.d.ts +2 -2
  160. package/lib/gc/index.d.ts.map +1 -1
  161. package/lib/gc/index.js +2 -2
  162. package/lib/gc/index.js.map +1 -1
  163. package/lib/id-compressor/utilities.d.ts +3 -0
  164. package/lib/id-compressor/utilities.d.ts.map +1 -1
  165. package/lib/id-compressor/utilities.js +3 -0
  166. package/lib/id-compressor/utilities.js.map +1 -1
  167. package/lib/index.d.ts +4 -3
  168. package/lib/index.d.ts.map +1 -1
  169. package/lib/index.js +2 -1
  170. package/lib/index.js.map +1 -1
  171. package/lib/messageTypes.d.ts +4 -1
  172. package/lib/messageTypes.d.ts.map +1 -1
  173. package/lib/messageTypes.js +3 -0
  174. package/lib/messageTypes.js.map +1 -1
  175. package/lib/opLifecycle/definitions.d.ts +3 -0
  176. package/lib/opLifecycle/definitions.d.ts.map +1 -1
  177. package/lib/opLifecycle/definitions.js.map +1 -1
  178. package/lib/opLifecycle/outbox.d.ts.map +1 -1
  179. package/lib/opLifecycle/outbox.js +7 -2
  180. package/lib/opLifecycle/outbox.js.map +1 -1
  181. package/lib/packageVersion.d.ts +1 -1
  182. package/lib/packageVersion.js +1 -1
  183. package/lib/packageVersion.js.map +1 -1
  184. package/lib/pendingStateManager.d.ts.map +1 -1
  185. package/lib/pendingStateManager.js +3 -1
  186. package/lib/pendingStateManager.js.map +1 -1
  187. package/lib/scheduleManager.js +6 -2
  188. package/lib/scheduleManager.js.map +1 -1
  189. package/lib/summary/orderedClientElection.d.ts +4 -1
  190. package/lib/summary/orderedClientElection.d.ts.map +1 -1
  191. package/lib/summary/orderedClientElection.js.map +1 -1
  192. package/lib/summary/runWhileConnectedCoordinator.d.ts +5 -0
  193. package/lib/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
  194. package/lib/summary/runWhileConnectedCoordinator.js +1 -0
  195. package/lib/summary/runWhileConnectedCoordinator.js.map +1 -1
  196. package/lib/summary/summarizer.d.ts +2 -0
  197. package/lib/summary/summarizer.d.ts.map +1 -1
  198. package/lib/summary/summarizer.js +16 -8
  199. package/lib/summary/summarizer.js.map +1 -1
  200. package/lib/summary/summarizerTypes.d.ts +94 -10
  201. package/lib/summary/summarizerTypes.d.ts.map +1 -1
  202. package/lib/summary/summarizerTypes.js.map +1 -1
  203. package/lib/summary/summaryCollection.d.ts +16 -0
  204. package/lib/summary/summaryCollection.d.ts.map +1 -1
  205. package/lib/summary/summaryCollection.js +2 -0
  206. package/lib/summary/summaryCollection.js.map +1 -1
  207. package/lib/summary/summaryFormat.d.ts +10 -1
  208. package/lib/summary/summaryFormat.d.ts.map +1 -1
  209. package/lib/summary/summaryFormat.js.map +1 -1
  210. package/lib/summary/summaryGenerator.js.map +1 -1
  211. package/lib/summary/summaryManager.d.ts +2 -2
  212. package/lib/summary/summaryManager.d.ts.map +1 -1
  213. package/lib/summary/summaryManager.js +3 -3
  214. package/lib/summary/summaryManager.js.map +1 -1
  215. package/package.json +26 -58
  216. package/src/blobManager.ts +61 -74
  217. package/src/connectionTelemetry.ts +97 -52
  218. package/src/containerRuntime.ts +173 -93
  219. package/src/dataStore.ts +2 -2
  220. package/src/dataStoreContext.ts +16 -9
  221. package/src/dataStoreRegistry.ts +3 -0
  222. package/src/dataStores.ts +4 -16
  223. package/src/deltaManagerProxyBase.ts +2 -2
  224. package/src/error.ts +4 -1
  225. package/src/gc/garbageCollection.ts +18 -3
  226. package/src/gc/gcConfigs.ts +22 -4
  227. package/src/gc/gcDefinitions.ts +43 -11
  228. package/src/gc/gcSummaryDefinitions.ts +1 -1
  229. package/src/gc/gcTelemetry.ts +8 -8
  230. package/src/gc/index.ts +0 -4
  231. package/src/id-compressor/utilities.ts +3 -0
  232. package/src/index.ts +14 -1
  233. package/src/messageTypes.ts +4 -1
  234. package/src/opLifecycle/README.md +53 -28
  235. package/src/opLifecycle/definitions.ts +3 -0
  236. package/src/opLifecycle/outbox.ts +3 -0
  237. package/src/packageVersion.ts +1 -1
  238. package/src/pendingStateManager.ts +1 -0
  239. package/src/scheduleManager.ts +2 -0
  240. package/src/summary/orderedClientElection.ts +4 -1
  241. package/src/summary/runWhileConnectedCoordinator.ts +5 -1
  242. package/src/summary/summarizer.ts +21 -9
  243. package/src/summary/summarizerTypes.ts +95 -11
  244. package/src/summary/summaryCollection.ts +19 -1
  245. package/src/summary/summaryFormat.ts +11 -1
  246. package/src/summary/summaryGenerator.ts +3 -3
  247. package/src/summary/summaryManager.ts +2 -2
  248. package/src/gc/gcEarlyAdoption.md +0 -145
@@ -0,0 +1,864 @@
1
+ ## API Report File for "@fluidframework/container-runtime"
2
+
3
+ > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
4
+
5
+ ```ts
6
+
7
+ import { AttachState } from '@fluidframework/container-definitions';
8
+ import { ContainerWarning } from '@fluidframework/container-definitions';
9
+ import { FluidDataStoreRegistryEntry } from '@fluidframework/runtime-definitions';
10
+ import { FluidObject } from '@fluidframework/core-interfaces';
11
+ import { FlushMode } from '@fluidframework/runtime-definitions';
12
+ import { IAudience } from '@fluidframework/container-definitions';
13
+ import { IClientDetails } from '@fluidframework/protocol-definitions';
14
+ import { IContainerContext } from '@fluidframework/container-definitions';
15
+ import { IContainerRuntime } from '@fluidframework/container-runtime-definitions';
16
+ import { IContainerRuntimeEvents } from '@fluidframework/container-runtime-definitions';
17
+ import { ICriticalContainerError } from '@fluidframework/container-definitions';
18
+ import { IDataStore } from '@fluidframework/runtime-definitions';
19
+ import { IDeltaManager } from '@fluidframework/container-definitions';
20
+ import { IDisposable } from '@fluidframework/core-interfaces';
21
+ import { IDocumentMessage } from '@fluidframework/protocol-definitions';
22
+ import { IDocumentStorageService } from '@fluidframework/driver-definitions';
23
+ import { IEvent } from '@fluidframework/core-interfaces';
24
+ import { IEventProvider } from '@fluidframework/core-interfaces';
25
+ import { IFluidDataStoreContextDetached } from '@fluidframework/runtime-definitions';
26
+ import { IFluidDataStoreRegistry } from '@fluidframework/runtime-definitions';
27
+ import { IFluidHandle } from '@fluidframework/core-interfaces';
28
+ import { IFluidHandleContext } from '@fluidframework/core-interfaces';
29
+ import { IFluidRouter } from '@fluidframework/core-interfaces';
30
+ import { IGarbageCollectionData } from '@fluidframework/runtime-definitions';
31
+ import { IGetPendingLocalStateProps } from '@fluidframework/container-definitions';
32
+ import { IIdCompressor } from '@fluidframework/runtime-definitions';
33
+ import { IIdCompressorCore } from '@fluidframework/runtime-definitions';
34
+ import { ILoader } from '@fluidframework/container-definitions';
35
+ import { ILoaderOptions } from '@fluidframework/container-definitions';
36
+ import { IProvideFluidHandleContext } from '@fluidframework/core-interfaces';
37
+ import { IQuorumClients } from '@fluidframework/protocol-definitions';
38
+ import { IRequest } from '@fluidframework/core-interfaces';
39
+ import { IResponse } from '@fluidframework/core-interfaces';
40
+ import { IRuntime } from '@fluidframework/container-definitions';
41
+ import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
42
+ import { ISignalMessage } from '@fluidframework/protocol-definitions';
43
+ import { ISummaryAck } from '@fluidframework/protocol-definitions';
44
+ import { ISummaryContent } from '@fluidframework/protocol-definitions';
45
+ import { ISummaryNack } from '@fluidframework/protocol-definitions';
46
+ import { ISummaryStats } from '@fluidframework/runtime-definitions';
47
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
48
+ import { ISummaryTreeWithStats } from '@fluidframework/runtime-definitions';
49
+ import { ITelemetryContext } from '@fluidframework/runtime-definitions';
50
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
51
+ import { MessageType } from '@fluidframework/protocol-definitions';
52
+ import { NamedFluidDataStoreRegistryEntries } from '@fluidframework/runtime-definitions';
53
+ import { StableId } from '@fluidframework/runtime-definitions';
54
+ import { TypedEventEmitter } from '@fluid-internal/client-utils';
55
+
56
+ // @public
57
+ export const agentSchedulerId = "_scheduler";
58
+
59
+ // @public
60
+ export const AllowInactiveRequestHeaderKey = "allowInactive";
61
+
62
+ // @public
63
+ export const AllowTombstoneRequestHeaderKey = "allowTombstone";
64
+
65
+ // @public
66
+ export function assertIsStableId(stableId: string): StableId;
67
+
68
+ // @internal
69
+ export type CompatModeBehavior =
70
+ /** Ignore the op. It won't be persisted if this client summarizes */
71
+ "Ignore"
72
+ /** Fail processing immediately. (The container will close) */
73
+ | "FailToProcess";
74
+
75
+ // @public
76
+ export enum CompressionAlgorithms {
77
+ // (undocumented)
78
+ lz4 = "lz4"
79
+ }
80
+
81
+ // @public (undocumented)
82
+ export enum ContainerMessageType {
83
+ // (undocumented)
84
+ Alias = "alias",
85
+ // (undocumented)
86
+ Attach = "attach",
87
+ // (undocumented)
88
+ BlobAttach = "blobAttach",
89
+ // (undocumented)
90
+ ChunkedOp = "chunkedOp",
91
+ // (undocumented)
92
+ FluidDataStoreOp = "component",
93
+ IdAllocation = "idAllocation",
94
+ // (undocumented)
95
+ Rejoin = "rejoin"
96
+ }
97
+
98
+ // @public
99
+ export class ContainerRuntime extends TypedEventEmitter<IContainerRuntimeEvents & ISummarizerEvents> implements IContainerRuntime, IRuntime, ISummarizerRuntime, ISummarizerInternalsProvider, IProvideFluidHandleContext {
100
+ // @internal
101
+ protected constructor(context: IContainerContext, registry: IFluidDataStoreRegistry, metadata: IContainerRuntimeMetadata | undefined, electedSummarizerData: ISerializedElection | undefined, chunks: [string, string[]][], dataStoreAliasMap: [string, string][], runtimeOptions: Readonly<Required<IContainerRuntimeOptions>>, containerScope: FluidObject, logger: ITelemetryLoggerExt, existing: boolean, blobManagerSnapshot: IBlobManagerLoadInfo, _storage: IDocumentStorageService, idCompressor: (IIdCompressor & IIdCompressorCore) | undefined, provideEntryPoint: (containerRuntime: IContainerRuntime) => Promise<FluidObject>, requestHandler?: ((request: IRequest, runtime: IContainerRuntime) => Promise<IResponse>) | undefined, summaryConfiguration?: ISummaryConfiguration);
102
+ // (undocumented)
103
+ protected addContainerStateToSummary(summaryTree: ISummaryTreeWithStats, fullTree: boolean, trackState: boolean, telemetryContext?: ITelemetryContext): void;
104
+ addedGCOutboundReference(srcHandle: IFluidHandle, outboundHandle: IFluidHandle): void;
105
+ // (undocumented)
106
+ get attachState(): AttachState;
107
+ // (undocumented)
108
+ readonly clientDetails: IClientDetails;
109
+ // (undocumented)
110
+ get clientId(): string | undefined;
111
+ // (undocumented)
112
+ readonly closeFn: (error?: ICriticalContainerError) => void;
113
+ collectGarbage(options: {
114
+ logger?: ITelemetryLoggerExt;
115
+ runSweep?: boolean;
116
+ fullGC?: boolean;
117
+ }, telemetryContext?: ITelemetryContext): Promise<IGCStats | undefined>;
118
+ // (undocumented)
119
+ get connected(): boolean;
120
+ // (undocumented)
121
+ createDataStore(pkg: string | string[]): Promise<IDataStore>;
122
+ // @internal @deprecated (undocumented)
123
+ _createDataStoreWithProps(pkg: string | string[], props?: any, id?: string): Promise<IDataStore>;
124
+ // (undocumented)
125
+ createDetachedDataStore(pkg: Readonly<string[]>): IFluidDataStoreContextDetached;
126
+ // (undocumented)
127
+ createDetachedRootDataStore(pkg: Readonly<string[]>, rootDataStoreId: string): IFluidDataStoreContextDetached;
128
+ createSummary(blobRedirectTable?: Map<string, string>, telemetryContext?: ITelemetryContext): ISummaryTree;
129
+ deleteSweepReadyNodes(sweepReadyRoutes: string[]): string[];
130
+ // @deprecated (undocumented)
131
+ deleteUnusedNodes(unusedRoutes: string[]): string[];
132
+ readonly deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;
133
+ // (undocumented)
134
+ dispose(error?: Error): void;
135
+ // (undocumented)
136
+ get disposed(): boolean;
137
+ // (undocumented)
138
+ readonly disposeFn: (error?: ICriticalContainerError) => void;
139
+ // (undocumented)
140
+ enqueueSummarize(options: IEnqueueSummarizeOptions): EnqueueSummarizeResult;
141
+ ensureNoDataModelChanges<T>(callback: () => T): T;
142
+ // (undocumented)
143
+ get flushMode(): FlushMode;
144
+ get gcThrowOnTombstoneLoad(): boolean;
145
+ get gcThrowOnTombstoneUsage(): boolean;
146
+ get gcTombstoneEnforcementAllowed(): boolean;
147
+ // (undocumented)
148
+ readonly getAbsoluteUrl: (relativeUrl: string) => Promise<string | undefined>;
149
+ getAliasedDataStoreEntryPoint(alias: string): Promise<IFluidHandle<FluidObject> | undefined>;
150
+ // (undocumented)
151
+ getAudience(): IAudience;
152
+ getCurrentReferenceTimestampMs(): number | undefined;
153
+ // (undocumented)
154
+ getEntryPoint(): Promise<FluidObject>;
155
+ getGCData(fullGC?: boolean): Promise<IGarbageCollectionData>;
156
+ getGCNodePackagePath(nodePath: string): Promise<readonly string[] | undefined>;
157
+ getNodeType(nodePath: string): GCNodeType;
158
+ // (undocumented)
159
+ getPendingLocalState(props?: IGetPendingLocalStateProps): Promise<unknown>;
160
+ // (undocumented)
161
+ getQuorum(): IQuorumClients;
162
+ // @deprecated
163
+ getRootDataStore(id: string, wait?: boolean): Promise<IFluidRouter>;
164
+ // (undocumented)
165
+ idCompressor: (IIdCompressor & IIdCompressorCore) | undefined;
166
+ // (undocumented)
167
+ get IFluidDataStoreRegistry(): IFluidDataStoreRegistry;
168
+ // (undocumented)
169
+ get IFluidHandleContext(): IFluidHandleContext;
170
+ // @deprecated (undocumented)
171
+ get IFluidRouter(): this;
172
+ get isDirty(): boolean;
173
+ // @deprecated (undocumented)
174
+ static load(context: IContainerContext, registryEntries: NamedFluidDataStoreRegistryEntries, requestHandler?: (request: IRequest, runtime: IContainerRuntime) => Promise<IResponse>, runtimeOptions?: IContainerRuntimeOptions, containerScope?: FluidObject, existing?: boolean, containerRuntimeCtor?: typeof ContainerRuntime): Promise<ContainerRuntime>;
175
+ static loadRuntime(params: {
176
+ context: IContainerContext;
177
+ registryEntries: NamedFluidDataStoreRegistryEntries;
178
+ existing: boolean;
179
+ runtimeOptions?: IContainerRuntimeOptions;
180
+ containerScope?: FluidObject;
181
+ containerRuntimeCtor?: typeof ContainerRuntime;
182
+ requestHandler?: (request: IRequest, runtime: IContainerRuntime) => Promise<IResponse>;
183
+ provideEntryPoint: (containerRuntime: IContainerRuntime) => Promise<FluidObject>;
184
+ }): Promise<ContainerRuntime>;
185
+ // (undocumented)
186
+ readonly logger: ITelemetryLoggerExt;
187
+ // (undocumented)
188
+ notifyAttaching(): void;
189
+ // (undocumented)
190
+ notifyOpReplay(message: ISequencedDocumentMessage): Promise<void>;
191
+ // (undocumented)
192
+ readonly options: ILoaderOptions;
193
+ // (undocumented)
194
+ orderSequentially<T>(callback: () => T): T;
195
+ // (undocumented)
196
+ process(messageArg: ISequencedDocumentMessage, local: boolean): void;
197
+ // (undocumented)
198
+ processSignal(message: ISignalMessage, local: boolean): void;
199
+ refreshLatestSummaryAck(options: IRefreshSummaryAckOptions): Promise<void>;
200
+ // @deprecated
201
+ request(request: IRequest): Promise<IResponse>;
202
+ resolveHandle(request: IRequest): Promise<IResponse>;
203
+ // (undocumented)
204
+ get scope(): FluidObject;
205
+ // (undocumented)
206
+ setAttachState(attachState: AttachState.Attaching | AttachState.Attached): void;
207
+ // (undocumented)
208
+ setConnectionState(connected: boolean, clientId?: string): void;
209
+ // (undocumented)
210
+ get storage(): IDocumentStorageService;
211
+ // (undocumented)
212
+ submitDataStoreAliasOp(contents: any, localOpMetadata: unknown): void;
213
+ // (undocumented)
214
+ submitDataStoreOp(id: string, contents: any, localOpMetadata?: unknown): void;
215
+ submitDataStoreSignal(address: string, type: string, content: any, targetClientId?: string): void;
216
+ submitSignal(type: string, content: any, targetClientId?: string): void;
217
+ submitSummary(options: ISubmitSummaryOptions): Promise<SubmitSummaryResult>;
218
+ summarize(options: {
219
+ fullTree?: boolean;
220
+ trackState?: boolean;
221
+ summaryLogger?: ITelemetryLoggerExt;
222
+ runGC?: boolean;
223
+ fullGC?: boolean;
224
+ runSweep?: boolean;
225
+ }): Promise<ISummaryTreeWithStats>;
226
+ // (undocumented)
227
+ summarizeOnDemand(options: IOnDemandSummarizeOptions): ISummarizeResults;
228
+ get summarizerClientId(): string | undefined;
229
+ updateStateBeforeGC(): Promise<void>;
230
+ updateTombstonedRoutes(tombstonedRoutes: string[]): void;
231
+ updateUnusedRoutes(unusedRoutes: string[]): void;
232
+ updateUsedRoutes(usedRoutes: string[]): void;
233
+ // (undocumented)
234
+ uploadBlob(blob: ArrayBufferLike, signal?: AbortSignal): Promise<IFluidHandle<ArrayBufferLike>>;
235
+ }
236
+
237
+ // @internal @deprecated
238
+ export interface ContainerRuntimeMessage {
239
+ compatDetails?: IContainerRuntimeMessageCompatDetails;
240
+ contents: any;
241
+ type: ContainerMessageType;
242
+ }
243
+
244
+ // @public (undocumented)
245
+ export const DefaultSummaryConfiguration: ISummaryConfiguration;
246
+
247
+ // @public (undocumented)
248
+ export type EnqueueSummarizeResult = (ISummarizeResults & {
249
+ readonly alreadyEnqueued?: undefined;
250
+ }) | (ISummarizeResults & {
251
+ readonly alreadyEnqueued: true;
252
+ readonly overridden: true;
253
+ }) | {
254
+ readonly alreadyEnqueued: true;
255
+ readonly overridden?: undefined;
256
+ };
257
+
258
+ // @public (undocumented)
259
+ export class FluidDataStoreRegistry implements IFluidDataStoreRegistry {
260
+ constructor(namedEntries: NamedFluidDataStoreRegistryEntries);
261
+ // (undocumented)
262
+ get(name: string): Promise<FluidDataStoreRegistryEntry | undefined>;
263
+ // (undocumented)
264
+ get IFluidDataStoreRegistry(): this;
265
+ }
266
+
267
+ // @public (undocumented)
268
+ export interface GCFeatureMatrix {
269
+ sweepGeneration?: number;
270
+ tombstoneGeneration?: number;
271
+ }
272
+
273
+ // @public
274
+ export const GCNodeType: {
275
+ DataStore: string;
276
+ SubDataStore: string;
277
+ Blob: string;
278
+ Other: string;
279
+ };
280
+
281
+ // @public (undocumented)
282
+ export type GCNodeType = (typeof GCNodeType)[keyof typeof GCNodeType];
283
+
284
+ // @public (undocumented)
285
+ export type GCVersion = number;
286
+
287
+ // @public
288
+ export function generateStableId(): StableId;
289
+
290
+ // @public
291
+ export interface IAckedSummary {
292
+ // (undocumented)
293
+ readonly summaryAck: ISummaryAckMessage;
294
+ // (undocumented)
295
+ readonly summaryOp: ISummaryOpMessage;
296
+ }
297
+
298
+ // @public (undocumented)
299
+ export interface IAckSummaryResult {
300
+ // (undocumented)
301
+ readonly ackNackDuration: number;
302
+ // (undocumented)
303
+ readonly summaryAckOp: ISummaryAckMessage;
304
+ }
305
+
306
+ // @public
307
+ export interface IBaseSummarizeResult {
308
+ readonly error: any;
309
+ // (undocumented)
310
+ readonly minimumSequenceNumber: number;
311
+ readonly referenceSequenceNumber: number;
312
+ // (undocumented)
313
+ readonly stage: "base";
314
+ }
315
+
316
+ // @public
317
+ export interface IBlobManagerLoadInfo {
318
+ // (undocumented)
319
+ ids?: string[];
320
+ // (undocumented)
321
+ redirectTable?: [string, string][];
322
+ }
323
+
324
+ // @public (undocumented)
325
+ export interface IBroadcastSummaryResult {
326
+ // (undocumented)
327
+ readonly broadcastDuration: number;
328
+ // (undocumented)
329
+ readonly summarizeOp: ISummaryOpMessage;
330
+ }
331
+
332
+ // @public
333
+ export interface ICancellableSummarizerController extends ISummaryCancellationToken {
334
+ // (undocumented)
335
+ stop(reason: SummarizerStopReason): void;
336
+ }
337
+
338
+ // @public
339
+ export interface ICancellationToken<T> {
340
+ readonly cancelled: boolean;
341
+ readonly waitCancelled: Promise<T>;
342
+ }
343
+
344
+ // @public (undocumented)
345
+ export interface IChunkedOp {
346
+ // (undocumented)
347
+ chunkId: number;
348
+ // (undocumented)
349
+ contents: string;
350
+ // (undocumented)
351
+ originalCompression?: string;
352
+ // (undocumented)
353
+ originalMetadata?: Record<string, unknown>;
354
+ // (undocumented)
355
+ originalType: MessageType | ContainerMessageType;
356
+ // (undocumented)
357
+ totalChunks: number;
358
+ }
359
+
360
+ // @public
361
+ export interface IClientSummaryWatcher extends IDisposable {
362
+ // (undocumented)
363
+ waitFlushed(): Promise<IAckedSummary | undefined>;
364
+ // (undocumented)
365
+ watchSummary(clientSequenceNumber: number): ISummary;
366
+ }
367
+
368
+ // @public
369
+ export interface ICompressionRuntimeOptions {
370
+ readonly compressionAlgorithm: CompressionAlgorithms;
371
+ readonly minimumBatchSizeInBytes: number;
372
+ }
373
+
374
+ // @public (undocumented)
375
+ export interface IConnectableRuntime {
376
+ // (undocumented)
377
+ readonly clientId: string | undefined;
378
+ // (undocumented)
379
+ readonly connected: boolean;
380
+ // (undocumented)
381
+ readonly disposed: boolean;
382
+ // (undocumented)
383
+ once(event: "connected" | "disconnected" | "dispose", listener: () => void): this;
384
+ }
385
+
386
+ // @internal
387
+ export interface IContainerRuntimeMessageCompatDetails {
388
+ behavior: CompatModeBehavior;
389
+ }
390
+
391
+ // @public (undocumented)
392
+ export interface IContainerRuntimeMetadata extends ICreateContainerMetadata, IGCMetadata {
393
+ readonly disableIsolatedChannels?: true;
394
+ readonly idCompressorEnabled?: boolean;
395
+ readonly message: ISummaryMetadataMessage | undefined;
396
+ // (undocumented)
397
+ readonly summaryFormatVersion: 1;
398
+ readonly summaryNumber?: number;
399
+ readonly telemetryDocumentId?: string;
400
+ }
401
+
402
+ // @public
403
+ export interface IContainerRuntimeOptions {
404
+ readonly chunkSizeInBytes?: number;
405
+ readonly compressionOptions?: ICompressionRuntimeOptions;
406
+ readonly enableGroupedBatching?: boolean;
407
+ readonly enableOpReentryCheck?: boolean;
408
+ readonly enableRuntimeIdCompressor?: boolean;
409
+ readonly flushMode?: FlushMode;
410
+ // (undocumented)
411
+ readonly gcOptions?: IGCRuntimeOptions;
412
+ readonly loadSequenceNumberVerification?: "close" | "log" | "bypass";
413
+ readonly maxBatchSizeInBytes?: number;
414
+ // (undocumented)
415
+ readonly summaryOptions?: ISummaryRuntimeOptions;
416
+ }
417
+
418
+ // @public (undocumented)
419
+ export interface ICreateContainerMetadata {
420
+ createContainerRuntimeVersion?: string;
421
+ createContainerTimestamp?: number;
422
+ }
423
+
424
+ // @public
425
+ export interface IEnqueueSummarizeOptions extends IOnDemandSummarizeOptions {
426
+ readonly afterSequenceNumber?: number;
427
+ readonly override?: boolean;
428
+ }
429
+
430
+ // @public (undocumented)
431
+ export interface IGCMetadata {
432
+ readonly gcFeature?: GCVersion;
433
+ readonly gcFeatureMatrix?: GCFeatureMatrix;
434
+ readonly sessionExpiryTimeoutMs?: number;
435
+ // @deprecated
436
+ readonly sweepEnabled?: boolean;
437
+ readonly sweepTimeoutMs?: number;
438
+ }
439
+
440
+ // @public (undocumented)
441
+ export interface IGCRuntimeOptions {
442
+ [key: string]: any;
443
+ disableGC?: boolean;
444
+ gcAllowed?: boolean;
445
+ runFullGC?: boolean;
446
+ sessionExpiryTimeoutMs?: number;
447
+ }
448
+
449
+ // @public
450
+ export interface IGCStats {
451
+ attachmentBlobCount: number;
452
+ dataStoreCount: number;
453
+ nodeCount: number;
454
+ unrefAttachmentBlobCount: number;
455
+ unrefDataStoreCount: number;
456
+ unrefNodeCount: number;
457
+ updatedAttachmentBlobCount: number;
458
+ updatedDataStoreCount: number;
459
+ updatedNodeCount: number;
460
+ }
461
+
462
+ // @public
463
+ export interface IGeneratedSummaryStats extends ISummaryStats {
464
+ readonly dataStoreCount: number;
465
+ readonly gcBlobNodeCount?: number;
466
+ readonly gcStateUpdatedDataStoreCount?: number;
467
+ readonly gcTotalBlobsSize?: number;
468
+ readonly summarizedDataStoreCount: number;
469
+ readonly summaryNumber: number;
470
+ }
471
+
472
+ // @public
473
+ export interface IGenerateSummaryTreeResult extends Omit<IBaseSummarizeResult, "stage"> {
474
+ readonly forcedFullTree: boolean;
475
+ readonly generateDuration: number;
476
+ // (undocumented)
477
+ readonly stage: "generate";
478
+ readonly summaryStats: IGeneratedSummaryStats;
479
+ readonly summaryTree: ISummaryTree;
480
+ }
481
+
482
+ // @public (undocumented)
483
+ export interface INackSummaryResult extends IRetriableFailureResult {
484
+ // (undocumented)
485
+ readonly ackNackDuration: number;
486
+ // (undocumented)
487
+ readonly summaryNackOp: ISummaryNackMessage;
488
+ }
489
+
490
+ // @public
491
+ export const InactiveResponseHeaderKey = "isInactive";
492
+
493
+ // @public (undocumented)
494
+ export interface IOnDemandSummarizeOptions extends ISummarizeOptions {
495
+ readonly reason: string;
496
+ }
497
+
498
+ // @public
499
+ export interface IRefreshSummaryAckOptions {
500
+ readonly ackHandle: string;
501
+ readonly proposalHandle: string | undefined;
502
+ readonly summaryLogger: ITelemetryLoggerExt;
503
+ readonly summaryRefSeq: number;
504
+ }
505
+
506
+ // @public
507
+ export interface IRetriableFailureResult {
508
+ // (undocumented)
509
+ readonly retryAfterSeconds?: number;
510
+ }
511
+
512
+ // @public
513
+ export interface ISerializedElection {
514
+ readonly electedClientId: string | undefined;
515
+ readonly electedParentId: string | undefined;
516
+ readonly electionSequenceNumber: number;
517
+ }
518
+
519
+ // @public @deprecated (undocumented)
520
+ export function isRuntimeMessage(message: ISequencedDocumentMessage): boolean;
521
+
522
+ // @public
523
+ export function isStableId(str: string): str is StableId;
524
+
525
+ // @public
526
+ export interface ISubmitSummaryOpResult extends Omit<IUploadSummaryResult, "stage" | "error"> {
527
+ readonly clientSequenceNumber: number;
528
+ // (undocumented)
529
+ readonly stage: "submit";
530
+ readonly submitOpDuration: number;
531
+ }
532
+
533
+ // @public (undocumented)
534
+ export interface ISubmitSummaryOptions extends ISummarizeOptions {
535
+ readonly cancellationToken: ISummaryCancellationToken;
536
+ readonly finalAttempt?: boolean;
537
+ readonly summaryLogger: ITelemetryLoggerExt;
538
+ }
539
+
540
+ // @public (undocumented)
541
+ export interface ISummarizeEventProps {
542
+ // (undocumented)
543
+ currentAttempt: number;
544
+ // (undocumented)
545
+ error?: any;
546
+ // (undocumented)
547
+ maxAttempts: number;
548
+ // (undocumented)
549
+ result: "success" | "failure" | "canceled";
550
+ }
551
+
552
+ // @public
553
+ export interface ISummarizeOptions {
554
+ readonly fullTree?: boolean;
555
+ // @deprecated
556
+ readonly refreshLatestAck?: boolean;
557
+ }
558
+
559
+ // @public (undocumented)
560
+ export interface ISummarizer extends IEventProvider<ISummarizerEvents> {
561
+ // (undocumented)
562
+ close(): void;
563
+ enqueueSummarize(options: IEnqueueSummarizeOptions): EnqueueSummarizeResult;
564
+ readonly ISummarizer?: ISummarizer;
565
+ // (undocumented)
566
+ run(onBehalfOf: string, disableHeuristics?: boolean): Promise<SummarizerStopReason>;
567
+ // (undocumented)
568
+ stop(reason: SummarizerStopReason): void;
569
+ summarizeOnDemand(options: IOnDemandSummarizeOptions): ISummarizeResults;
570
+ }
571
+
572
+ // @public (undocumented)
573
+ export interface ISummarizeResults {
574
+ readonly receivedSummaryAckOrNack: Promise<SummarizeResultPart<IAckSummaryResult, INackSummaryResult>>;
575
+ readonly summaryOpBroadcasted: Promise<SummarizeResultPart<IBroadcastSummaryResult>>;
576
+ readonly summarySubmitted: Promise<SummarizeResultPart<SubmitSummaryResult, SubmitSummaryFailureData>>;
577
+ }
578
+
579
+ // @public (undocumented)
580
+ export interface ISummarizerEvents extends IEvent {
581
+ // (undocumented)
582
+ (event: "summarize", listener: (props: ISummarizeEventProps) => void): any;
583
+ }
584
+
585
+ // @public (undocumented)
586
+ export interface ISummarizerInternalsProvider {
587
+ refreshLatestSummaryAck(options: IRefreshSummaryAckOptions): Promise<void>;
588
+ submitSummary(options: ISubmitSummaryOptions): Promise<SubmitSummaryResult>;
589
+ }
590
+
591
+ // @public (undocumented)
592
+ export interface ISummarizerRuntime extends IConnectableRuntime {
593
+ // (undocumented)
594
+ closeFn(): void;
595
+ // (undocumented)
596
+ readonly deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;
597
+ // (undocumented)
598
+ disposeFn(): void;
599
+ // (undocumented)
600
+ readonly logger: ITelemetryLoggerExt;
601
+ // (undocumented)
602
+ off(event: "op", listener: (op: ISequencedDocumentMessage, runtimeMessage?: boolean) => void): this;
603
+ // (undocumented)
604
+ on(event: "op", listener: (op: ISequencedDocumentMessage, runtimeMessage?: boolean) => void): this;
605
+ readonly summarizerClientId: string | undefined;
606
+ }
607
+
608
+ // @public (undocumented)
609
+ export interface ISummarizingWarning extends ContainerWarning {
610
+ // (undocumented)
611
+ readonly errorType: "summarizingError";
612
+ // (undocumented)
613
+ readonly logged: boolean;
614
+ }
615
+
616
+ // @public
617
+ export interface ISummary {
618
+ // (undocumented)
619
+ readonly clientId: string;
620
+ // (undocumented)
621
+ readonly clientSequenceNumber: number;
622
+ // (undocumented)
623
+ waitAckNack(): Promise<ISummaryAckMessage | ISummaryNackMessage>;
624
+ // (undocumented)
625
+ waitBroadcast(): Promise<ISummaryOpMessage>;
626
+ }
627
+
628
+ // @public
629
+ export interface ISummaryAckMessage extends ISequencedDocumentMessage {
630
+ // (undocumented)
631
+ contents: ISummaryAck;
632
+ // (undocumented)
633
+ type: MessageType.SummaryAck;
634
+ }
635
+
636
+ // @public (undocumented)
637
+ export interface ISummaryBaseConfiguration {
638
+ initialSummarizerDelayMs: number;
639
+ maxAckWaitTime: number;
640
+ maxOpsSinceLastSummary: number;
641
+ }
642
+
643
+ // @public
644
+ export type ISummaryCancellationToken = ICancellationToken<SummarizerStopReason>;
645
+
646
+ // @public (undocumented)
647
+ export interface ISummaryCollectionOpEvents extends IEvent {
648
+ // (undocumented)
649
+ (event: OpActionEventName, listener: OpActionEventListener): any;
650
+ }
651
+
652
+ // @public (undocumented)
653
+ export type ISummaryConfiguration = ISummaryConfigurationDisableSummarizer | ISummaryConfigurationDisableHeuristics | ISummaryConfigurationHeuristics;
654
+
655
+ // @public (undocumented)
656
+ export interface ISummaryConfigurationDisableHeuristics extends ISummaryBaseConfiguration {
657
+ // (undocumented)
658
+ state: "disableHeuristics";
659
+ }
660
+
661
+ // @public (undocumented)
662
+ export interface ISummaryConfigurationDisableSummarizer {
663
+ // (undocumented)
664
+ state: "disabled";
665
+ }
666
+
667
+ // @public (undocumented)
668
+ export interface ISummaryConfigurationHeuristics extends ISummaryBaseConfiguration {
669
+ maxIdleTime: number;
670
+ maxOps: number;
671
+ maxTime: number;
672
+ minIdleTime: number;
673
+ minOpsForLastSummaryAttempt: number;
674
+ nonRuntimeHeuristicThreshold?: number;
675
+ nonRuntimeOpWeight: number;
676
+ runtimeOpWeight: number;
677
+ // (undocumented)
678
+ state: "enabled";
679
+ }
680
+
681
+ // @public
682
+ export type ISummaryMetadataMessage = Pick<ISequencedDocumentMessage, "clientId" | "clientSequenceNumber" | "minimumSequenceNumber" | "referenceSequenceNumber" | "sequenceNumber" | "timestamp" | "type">;
683
+
684
+ // @public
685
+ export interface ISummaryNackMessage extends ISequencedDocumentMessage {
686
+ // (undocumented)
687
+ contents: ISummaryNack;
688
+ // (undocumented)
689
+ type: MessageType.SummaryNack;
690
+ }
691
+
692
+ // @public
693
+ export interface ISummaryOpMessage extends ISequencedDocumentMessage {
694
+ // (undocumented)
695
+ contents: ISummaryContent;
696
+ // (undocumented)
697
+ type: MessageType.Summarize;
698
+ }
699
+
700
+ // @public (undocumented)
701
+ export interface ISummaryRuntimeOptions {
702
+ // @deprecated
703
+ initialSummarizerDelayMs?: number;
704
+ summaryConfigOverrides?: ISummaryConfiguration;
705
+ }
706
+
707
+ // @public
708
+ export interface IUploadSummaryResult extends Omit<IGenerateSummaryTreeResult, "stage"> {
709
+ readonly handle: string;
710
+ // (undocumented)
711
+ readonly stage: "upload";
712
+ readonly uploadDuration: number;
713
+ }
714
+
715
+ // @public
716
+ export const neverCancelledSummaryToken: ISummaryCancellationToken;
717
+
718
+ // @public (undocumented)
719
+ export type OpActionEventListener = (op: ISequencedDocumentMessage) => void;
720
+
721
+ // @public (undocumented)
722
+ export type OpActionEventName = MessageType.Summarize | MessageType.SummaryAck | MessageType.SummaryNack | "default";
723
+
724
+ // @internal
725
+ export interface RecentlyAddedContainerRuntimeMessageDetails {
726
+ compatDetails: IContainerRuntimeMessageCompatDetails;
727
+ }
728
+
729
+ // @public
730
+ export enum RuntimeHeaders {
731
+ viaHandle = "viaHandle",
732
+ wait = "wait"
733
+ }
734
+
735
+ // @public @deprecated (undocumented)
736
+ export enum RuntimeMessage {
737
+ // (undocumented)
738
+ Alias = "alias",
739
+ // (undocumented)
740
+ Attach = "attach",
741
+ // (undocumented)
742
+ BlobAttach = "blobAttach",
743
+ // (undocumented)
744
+ ChunkedOp = "chunkedOp",
745
+ // (undocumented)
746
+ FluidDataStoreOp = "component",
747
+ // (undocumented)
748
+ Operation = "op",
749
+ // (undocumented)
750
+ Rejoin = "rejoin"
751
+ }
752
+
753
+ // @public
754
+ export interface SubmitSummaryFailureData extends IRetriableFailureResult {
755
+ // (undocumented)
756
+ stage: SummaryStage;
757
+ }
758
+
759
+ // @public
760
+ export type SubmitSummaryResult = IBaseSummarizeResult | IGenerateSummaryTreeResult | IUploadSummaryResult | ISubmitSummaryOpResult;
761
+
762
+ // @public
763
+ export class Summarizer extends TypedEventEmitter<ISummarizerEvents> implements ISummarizer {
764
+ constructor(
765
+ runtime: ISummarizerRuntime, configurationGetter: () => ISummaryConfiguration,
766
+ internalsProvider: ISummarizerInternalsProvider, handleContext: IFluidHandleContext, summaryCollection: SummaryCollection, runCoordinatorCreateFn: (runtime: IConnectableRuntime) => Promise<ICancellableSummarizerController>);
767
+ // (undocumented)
768
+ close(): void;
769
+ // @deprecated
770
+ static create(loader: ILoader, url: string): Promise<ISummarizer>;
771
+ dispose(): void;
772
+ // (undocumented)
773
+ enqueueSummarize(options: IEnqueueSummarizeOptions): EnqueueSummarizeResult;
774
+ // (undocumented)
775
+ get ISummarizer(): this;
776
+ // (undocumented)
777
+ recordSummaryAttempt?(summaryRefSeqNum?: number): void;
778
+ // (undocumented)
779
+ run(onBehalfOf: string): Promise<SummarizerStopReason>;
780
+ stop(reason: SummarizerStopReason): void;
781
+ static stopReasonCanRunLastSummary(stopReason: SummarizerStopReason): boolean;
782
+ // (undocumented)
783
+ summarizeOnDemand(options: IOnDemandSummarizeOptions): ISummarizeResults;
784
+ // (undocumented)
785
+ readonly summaryCollection: SummaryCollection;
786
+ }
787
+
788
+ // @public (undocumented)
789
+ export type SummarizeResultPart<TSuccess, TFailure = undefined> = {
790
+ success: true;
791
+ data: TSuccess;
792
+ } | {
793
+ success: false;
794
+ data: TFailure | undefined;
795
+ message: string;
796
+ error: any;
797
+ };
798
+
799
+ // @public (undocumented)
800
+ export type SummarizerStopReason =
801
+ /** Summarizer client failed to summarize in all 3 consecutive attempts. */
802
+ "failToSummarize"
803
+ /** Parent client reported that it is no longer connected. */
804
+ | "parentNotConnected"
805
+ /**
806
+ * Parent client reported that it is no longer elected the summarizer.
807
+ * This is the normal flow; a disconnect will always trigger the parent
808
+ * client to no longer be elected as responsible for summaries. Then it
809
+ * tries to stop its spawned summarizer client.
810
+ */
811
+ | "notElectedParent"
812
+ /**
813
+ * We are not already running the summarizer and we are not the current elected client id.
814
+ */
815
+ | "notElectedClient"
816
+ /** Summarizer client was disconnected */
817
+ | "summarizerClientDisconnected"
818
+ /** running summarizer threw an exception */
819
+ | "summarizerException"
820
+ /**
821
+ * The previous summary state on the summarizer is not the most recently acked summary. this also happens when the
822
+ * first submitSummary attempt fails for any reason and there's a 2nd summary attempt without an ack
823
+ */
824
+ | "latestSummaryStateStale";
825
+
826
+ // @public
827
+ export class SummaryCollection extends TypedEventEmitter<ISummaryCollectionOpEvents> {
828
+ constructor(deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>, logger: ITelemetryLoggerExt);
829
+ // (undocumented)
830
+ addOpListener(listener: () => void): void;
831
+ createWatcher(clientId: string): IClientSummaryWatcher;
832
+ // (undocumented)
833
+ emit(event: OpActionEventName, ...args: Parameters<OpActionEventListener>): boolean;
834
+ // (undocumented)
835
+ get latestAck(): IAckedSummary | undefined;
836
+ // (undocumented)
837
+ get opsSinceLastAck(): number;
838
+ // (undocumented)
839
+ removeOpListener(listener: () => void): void;
840
+ // (undocumented)
841
+ removeWatcher(clientId: string): void;
842
+ // (undocumented)
843
+ setPendingAckTimerTimeoutCallback(maxAckWaitTime: number, timeoutCallback: () => void): void;
844
+ // (undocumented)
845
+ unsetPendingAckTimerTimeoutCallback(): void;
846
+ waitFlushed(): Promise<IAckedSummary | undefined>;
847
+ waitSummaryAck(referenceSequenceNumber: number): Promise<IAckedSummary>;
848
+ }
849
+
850
+ // @public
851
+ export type SummaryStage = SubmitSummaryResult["stage"] | "unknown";
852
+
853
+ // @internal
854
+ export function TEST_requestSummarizer(loader: ILoader, url: string): Promise<ISummarizer>;
855
+
856
+ // @public
857
+ export const TombstoneResponseHeaderKey = "isTombstoned";
858
+
859
+ // @internal
860
+ export function unpackRuntimeMessage(message: ISequencedDocumentMessage): boolean;
861
+
862
+ // (No @packageDocumentation comment for this package)
863
+
864
+ ```