@fluidframework/container-runtime 1.4.0-121020 → 2.0.0-dev-rc.1.0.0.225277

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