actor-ts 0.9.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 (1128) hide show
  1. package/CHANGELOG.md +885 -0
  2. package/LICENSE +201 -0
  3. package/README.md +269 -0
  4. package/dist/Actor.d.ts +49 -0
  5. package/dist/Actor.d.ts.map +1 -0
  6. package/dist/Actor.js +45 -0
  7. package/dist/Actor.js.map +1 -0
  8. package/dist/ActorContext.d.ts +171 -0
  9. package/dist/ActorContext.d.ts.map +1 -0
  10. package/dist/ActorContext.js +13 -0
  11. package/dist/ActorContext.js.map +1 -0
  12. package/dist/ActorPath.d.ts +23 -0
  13. package/dist/ActorPath.d.ts.map +1 -0
  14. package/dist/ActorPath.js +56 -0
  15. package/dist/ActorPath.js.map +1 -0
  16. package/dist/ActorRef.d.ts +54 -0
  17. package/dist/ActorRef.d.ts.map +1 -0
  18. package/dist/ActorRef.js +105 -0
  19. package/dist/ActorRef.js.map +1 -0
  20. package/dist/ActorSelection.d.ts +48 -0
  21. package/dist/ActorSelection.d.ts.map +1 -0
  22. package/dist/ActorSelection.js +84 -0
  23. package/dist/ActorSelection.js.map +1 -0
  24. package/dist/ActorSystem.d.ts +152 -0
  25. package/dist/ActorSystem.d.ts.map +1 -0
  26. package/dist/ActorSystem.js +248 -0
  27. package/dist/ActorSystem.js.map +1 -0
  28. package/dist/CoordinatedShutdown.d.ts +112 -0
  29. package/dist/CoordinatedShutdown.d.ts.map +1 -0
  30. package/dist/CoordinatedShutdown.js +252 -0
  31. package/dist/CoordinatedShutdown.js.map +1 -0
  32. package/dist/Dispatcher.d.ts +47 -0
  33. package/dist/Dispatcher.d.ts.map +1 -0
  34. package/dist/Dispatcher.js +90 -0
  35. package/dist/Dispatcher.js.map +1 -0
  36. package/dist/EventStream.d.ts +58 -0
  37. package/dist/EventStream.d.ts.map +1 -0
  38. package/dist/EventStream.js +74 -0
  39. package/dist/EventStream.js.map +1 -0
  40. package/dist/Extension.d.ts +45 -0
  41. package/dist/Extension.d.ts.map +1 -0
  42. package/dist/Extension.js +51 -0
  43. package/dist/Extension.js.map +1 -0
  44. package/dist/LogContext.d.ts +44 -0
  45. package/dist/LogContext.d.ts.map +1 -0
  46. package/dist/LogContext.js +87 -0
  47. package/dist/LogContext.js.map +1 -0
  48. package/dist/Logger.d.ts +57 -0
  49. package/dist/Logger.d.ts.map +1 -0
  50. package/dist/Logger.js +81 -0
  51. package/dist/Logger.js.map +1 -0
  52. package/dist/Props.d.ts +32 -0
  53. package/dist/Props.d.ts.map +1 -0
  54. package/dist/Props.js +27 -0
  55. package/dist/Props.js.map +1 -0
  56. package/dist/Router.d.ts +32 -0
  57. package/dist/Router.d.ts.map +1 -0
  58. package/dist/Router.js +78 -0
  59. package/dist/Router.js.map +1 -0
  60. package/dist/Scheduler.d.ts +25 -0
  61. package/dist/Scheduler.d.ts.map +1 -0
  62. package/dist/Scheduler.js +112 -0
  63. package/dist/Scheduler.js.map +1 -0
  64. package/dist/Supervision.d.ts +66 -0
  65. package/dist/Supervision.d.ts.map +1 -0
  66. package/dist/Supervision.js +75 -0
  67. package/dist/Supervision.js.map +1 -0
  68. package/dist/SystemMessages.d.ts +56 -0
  69. package/dist/SystemMessages.d.ts.map +1 -0
  70. package/dist/SystemMessages.js +71 -0
  71. package/dist/SystemMessages.js.map +1 -0
  72. package/dist/cache/Cache.d.ts +75 -0
  73. package/dist/cache/Cache.d.ts.map +1 -0
  74. package/dist/cache/Cache.js +10 -0
  75. package/dist/cache/Cache.js.map +1 -0
  76. package/dist/cache/CacheExtension.d.ts +44 -0
  77. package/dist/cache/CacheExtension.d.ts.map +1 -0
  78. package/dist/cache/CacheExtension.js +77 -0
  79. package/dist/cache/CacheExtension.js.map +1 -0
  80. package/dist/cache/InMemoryCache.d.ts +16 -0
  81. package/dist/cache/InMemoryCache.d.ts.map +1 -0
  82. package/dist/cache/InMemoryCache.js +86 -0
  83. package/dist/cache/InMemoryCache.js.map +1 -0
  84. package/dist/cache/MemcachedCache.d.ts +71 -0
  85. package/dist/cache/MemcachedCache.d.ts.map +1 -0
  86. package/dist/cache/MemcachedCache.js +243 -0
  87. package/dist/cache/MemcachedCache.js.map +1 -0
  88. package/dist/cache/RedisCache.d.ts +80 -0
  89. package/dist/cache/RedisCache.d.ts.map +1 -0
  90. package/dist/cache/RedisCache.js +194 -0
  91. package/dist/cache/RedisCache.js.map +1 -0
  92. package/dist/cache/index.d.ts +9 -0
  93. package/dist/cache/index.d.ts.map +1 -0
  94. package/dist/cache/index.js +6 -0
  95. package/dist/cache/index.js.map +1 -0
  96. package/dist/cluster/Cluster.d.ts +251 -0
  97. package/dist/cluster/Cluster.d.ts.map +1 -0
  98. package/dist/cluster/Cluster.js +837 -0
  99. package/dist/cluster/Cluster.js.map +1 -0
  100. package/dist/cluster/ClusterBootstrap.d.ts +107 -0
  101. package/dist/cluster/ClusterBootstrap.d.ts.map +1 -0
  102. package/dist/cluster/ClusterBootstrap.js +184 -0
  103. package/dist/cluster/ClusterBootstrap.js.map +1 -0
  104. package/dist/cluster/ClusterClient.d.ts +112 -0
  105. package/dist/cluster/ClusterClient.d.ts.map +1 -0
  106. package/dist/cluster/ClusterClient.js +280 -0
  107. package/dist/cluster/ClusterClient.js.map +1 -0
  108. package/dist/cluster/ClusterClientReceptionist.d.ts +85 -0
  109. package/dist/cluster/ClusterClientReceptionist.d.ts.map +1 -0
  110. package/dist/cluster/ClusterClientReceptionist.js +159 -0
  111. package/dist/cluster/ClusterClientReceptionist.js.map +1 -0
  112. package/dist/cluster/ClusterEvents.d.ts +99 -0
  113. package/dist/cluster/ClusterEvents.d.ts.map +1 -0
  114. package/dist/cluster/ClusterEvents.js +124 -0
  115. package/dist/cluster/ClusterEvents.js.map +1 -0
  116. package/dist/cluster/FailureDetector.d.ts +32 -0
  117. package/dist/cluster/FailureDetector.d.ts.map +1 -0
  118. package/dist/cluster/FailureDetector.js +50 -0
  119. package/dist/cluster/FailureDetector.js.map +1 -0
  120. package/dist/cluster/Member.d.ts +38 -0
  121. package/dist/cluster/Member.d.ts.map +1 -0
  122. package/dist/cluster/Member.js +69 -0
  123. package/dist/cluster/Member.js.map +1 -0
  124. package/dist/cluster/NodeAddress.d.ts +24 -0
  125. package/dist/cluster/NodeAddress.d.ts.map +1 -0
  126. package/dist/cluster/NodeAddress.js +44 -0
  127. package/dist/cluster/NodeAddress.js.map +1 -0
  128. package/dist/cluster/PhiAccrualFailureDetector.d.ts +49 -0
  129. package/dist/cluster/PhiAccrualFailureDetector.d.ts.map +1 -0
  130. package/dist/cluster/PhiAccrualFailureDetector.js +139 -0
  131. package/dist/cluster/PhiAccrualFailureDetector.js.map +1 -0
  132. package/dist/cluster/Protocol.d.ts +151 -0
  133. package/dist/cluster/Protocol.d.ts.map +1 -0
  134. package/dist/cluster/Protocol.js +90 -0
  135. package/dist/cluster/Protocol.js.map +1 -0
  136. package/dist/cluster/RefCodec.d.ts +40 -0
  137. package/dist/cluster/RefCodec.d.ts.map +1 -0
  138. package/dist/cluster/RefCodec.js +134 -0
  139. package/dist/cluster/RefCodec.js.map +1 -0
  140. package/dist/cluster/RemoteActorRef.d.ts +22 -0
  141. package/dist/cluster/RemoteActorRef.d.ts.map +1 -0
  142. package/dist/cluster/RemoteActorRef.js +48 -0
  143. package/dist/cluster/RemoteActorRef.js.map +1 -0
  144. package/dist/cluster/Transport.d.ts +96 -0
  145. package/dist/cluster/Transport.d.ts.map +1 -0
  146. package/dist/cluster/Transport.js +299 -0
  147. package/dist/cluster/Transport.js.map +1 -0
  148. package/dist/cluster/downing/DowningProvider.d.ts +32 -0
  149. package/dist/cluster/downing/DowningProvider.d.ts.map +1 -0
  150. package/dist/cluster/downing/DowningProvider.js +5 -0
  151. package/dist/cluster/downing/DowningProvider.js.map +1 -0
  152. package/dist/cluster/downing/KeepMajority.d.ts +21 -0
  153. package/dist/cluster/downing/KeepMajority.d.ts.map +1 -0
  154. package/dist/cluster/downing/KeepMajority.js +39 -0
  155. package/dist/cluster/downing/KeepMajority.js.map +1 -0
  156. package/dist/cluster/downing/KeepOldest.d.ts +23 -0
  157. package/dist/cluster/downing/KeepOldest.d.ts.map +1 -0
  158. package/dist/cluster/downing/KeepOldest.js +37 -0
  159. package/dist/cluster/downing/KeepOldest.js.map +1 -0
  160. package/dist/cluster/downing/KeepReferee.d.ts +23 -0
  161. package/dist/cluster/downing/KeepReferee.d.ts.map +1 -0
  162. package/dist/cluster/downing/KeepReferee.js +35 -0
  163. package/dist/cluster/downing/KeepReferee.js.map +1 -0
  164. package/dist/cluster/downing/LeaseMajority.d.ts +70 -0
  165. package/dist/cluster/downing/LeaseMajority.d.ts.map +1 -0
  166. package/dist/cluster/downing/LeaseMajority.js +129 -0
  167. package/dist/cluster/downing/LeaseMajority.js.map +1 -0
  168. package/dist/cluster/downing/StaticQuorum.d.ts +21 -0
  169. package/dist/cluster/downing/StaticQuorum.d.ts.map +1 -0
  170. package/dist/cluster/downing/StaticQuorum.js +30 -0
  171. package/dist/cluster/downing/StaticQuorum.js.map +1 -0
  172. package/dist/cluster/downing/index.d.ts +13 -0
  173. package/dist/cluster/downing/index.d.ts.map +1 -0
  174. package/dist/cluster/downing/index.js +7 -0
  175. package/dist/cluster/downing/index.js.map +1 -0
  176. package/dist/cluster/index.d.ts +49 -0
  177. package/dist/cluster/index.d.ts.map +1 -0
  178. package/dist/cluster/index.js +33 -0
  179. package/dist/cluster/index.js.map +1 -0
  180. package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts +30 -0
  181. package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts.map +1 -0
  182. package/dist/cluster/pubsub/DistributedPubSubExtension.js +42 -0
  183. package/dist/cluster/pubsub/DistributedPubSubExtension.js.map +1 -0
  184. package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts +56 -0
  185. package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts.map +1 -0
  186. package/dist/cluster/pubsub/DistributedPubSubMediator.js +240 -0
  187. package/dist/cluster/pubsub/DistributedPubSubMediator.js.map +1 -0
  188. package/dist/cluster/pubsub/Messages.d.ts +75 -0
  189. package/dist/cluster/pubsub/Messages.d.ts.map +1 -0
  190. package/dist/cluster/pubsub/Messages.js +66 -0
  191. package/dist/cluster/pubsub/Messages.js.map +1 -0
  192. package/dist/cluster/pubsub/index.d.ts +5 -0
  193. package/dist/cluster/pubsub/index.d.ts.map +1 -0
  194. package/dist/cluster/pubsub/index.js +4 -0
  195. package/dist/cluster/pubsub/index.js.map +1 -0
  196. package/dist/cluster/router/ClusterRouter.d.ts +87 -0
  197. package/dist/cluster/router/ClusterRouter.d.ts.map +1 -0
  198. package/dist/cluster/router/ClusterRouter.js +116 -0
  199. package/dist/cluster/router/ClusterRouter.js.map +1 -0
  200. package/dist/cluster/router/ConsistentHashing.d.ts +27 -0
  201. package/dist/cluster/router/ConsistentHashing.d.ts.map +1 -0
  202. package/dist/cluster/router/ConsistentHashing.js +69 -0
  203. package/dist/cluster/router/ConsistentHashing.js.map +1 -0
  204. package/dist/cluster/router/index.d.ts +4 -0
  205. package/dist/cluster/router/index.d.ts.map +1 -0
  206. package/dist/cluster/router/index.js +3 -0
  207. package/dist/cluster/router/index.js.map +1 -0
  208. package/dist/cluster/sharding/AllocationStrategy.d.ts +45 -0
  209. package/dist/cluster/sharding/AllocationStrategy.d.ts.map +1 -0
  210. package/dist/cluster/sharding/AllocationStrategy.js +95 -0
  211. package/dist/cluster/sharding/AllocationStrategy.js.map +1 -0
  212. package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts +77 -0
  213. package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts.map +1 -0
  214. package/dist/cluster/sharding/CassandraRememberEntitiesStore.js +98 -0
  215. package/dist/cluster/sharding/CassandraRememberEntitiesStore.js.map +1 -0
  216. package/dist/cluster/sharding/ClusterSharding.d.ts +116 -0
  217. package/dist/cluster/sharding/ClusterSharding.d.ts.map +1 -0
  218. package/dist/cluster/sharding/ClusterSharding.js +133 -0
  219. package/dist/cluster/sharding/ClusterSharding.js.map +1 -0
  220. package/dist/cluster/sharding/CoordinatorState.d.ts +83 -0
  221. package/dist/cluster/sharding/CoordinatorState.d.ts.map +1 -0
  222. package/dist/cluster/sharding/CoordinatorState.js +46 -0
  223. package/dist/cluster/sharding/CoordinatorState.js.map +1 -0
  224. package/dist/cluster/sharding/Passivate.d.ts +23 -0
  225. package/dist/cluster/sharding/Passivate.d.ts.map +1 -0
  226. package/dist/cluster/sharding/Passivate.js +25 -0
  227. package/dist/cluster/sharding/Passivate.js.map +1 -0
  228. package/dist/cluster/sharding/RememberEntitiesStore.d.ts +60 -0
  229. package/dist/cluster/sharding/RememberEntitiesStore.d.ts.map +1 -0
  230. package/dist/cluster/sharding/RememberEntitiesStore.js +35 -0
  231. package/dist/cluster/sharding/RememberEntitiesStore.js.map +1 -0
  232. package/dist/cluster/sharding/ShardAllocator.d.ts +23 -0
  233. package/dist/cluster/sharding/ShardAllocator.d.ts.map +1 -0
  234. package/dist/cluster/sharding/ShardAllocator.js +54 -0
  235. package/dist/cluster/sharding/ShardAllocator.js.map +1 -0
  236. package/dist/cluster/sharding/ShardCoordinator.d.ts +218 -0
  237. package/dist/cluster/sharding/ShardCoordinator.d.ts.map +1 -0
  238. package/dist/cluster/sharding/ShardCoordinator.js +719 -0
  239. package/dist/cluster/sharding/ShardCoordinator.js.map +1 -0
  240. package/dist/cluster/sharding/ShardRegion.d.ts +156 -0
  241. package/dist/cluster/sharding/ShardRegion.d.ts.map +1 -0
  242. package/dist/cluster/sharding/ShardRegion.js +526 -0
  243. package/dist/cluster/sharding/ShardRegion.js.map +1 -0
  244. package/dist/cluster/sharding/ShardedDaemonProcess.d.ts +64 -0
  245. package/dist/cluster/sharding/ShardedDaemonProcess.d.ts.map +1 -0
  246. package/dist/cluster/sharding/ShardedDaemonProcess.js +107 -0
  247. package/dist/cluster/sharding/ShardedDaemonProcess.js.map +1 -0
  248. package/dist/cluster/sharding/ShardingProtocol.d.ts +92 -0
  249. package/dist/cluster/sharding/ShardingProtocol.d.ts.map +1 -0
  250. package/dist/cluster/sharding/ShardingProtocol.js +7 -0
  251. package/dist/cluster/sharding/ShardingProtocol.js.map +1 -0
  252. package/dist/cluster/singleton/ClusterSingleton.d.ts +59 -0
  253. package/dist/cluster/singleton/ClusterSingleton.d.ts.map +1 -0
  254. package/dist/cluster/singleton/ClusterSingleton.js +63 -0
  255. package/dist/cluster/singleton/ClusterSingleton.js.map +1 -0
  256. package/dist/cluster/singleton/ClusterSingletonManager.d.ts +116 -0
  257. package/dist/cluster/singleton/ClusterSingletonManager.d.ts.map +1 -0
  258. package/dist/cluster/singleton/ClusterSingletonManager.js +300 -0
  259. package/dist/cluster/singleton/ClusterSingletonManager.js.map +1 -0
  260. package/dist/cluster/singleton/ClusterSingletonProxy.d.ts +32 -0
  261. package/dist/cluster/singleton/ClusterSingletonProxy.d.ts.map +1 -0
  262. package/dist/cluster/singleton/ClusterSingletonProxy.js +81 -0
  263. package/dist/cluster/singleton/ClusterSingletonProxy.js.map +1 -0
  264. package/dist/cluster/singleton/index.d.ts +6 -0
  265. package/dist/cluster/singleton/index.d.ts.map +1 -0
  266. package/dist/cluster/singleton/index.js +4 -0
  267. package/dist/cluster/singleton/index.js.map +1 -0
  268. package/dist/cluster/transports/MessageChannelTransport.d.ts +52 -0
  269. package/dist/cluster/transports/MessageChannelTransport.d.ts.map +1 -0
  270. package/dist/cluster/transports/MessageChannelTransport.js +59 -0
  271. package/dist/cluster/transports/MessageChannelTransport.js.map +1 -0
  272. package/dist/config/Config.d.ts +73 -0
  273. package/dist/config/Config.d.ts.map +1 -0
  274. package/dist/config/Config.js +240 -0
  275. package/dist/config/Config.js.map +1 -0
  276. package/dist/config/ConfigKeys.d.ts +94 -0
  277. package/dist/config/ConfigKeys.d.ts.map +1 -0
  278. package/dist/config/ConfigKeys.js +94 -0
  279. package/dist/config/ConfigKeys.js.map +1 -0
  280. package/dist/config/Duration.d.ts +2 -0
  281. package/dist/config/Duration.d.ts.map +1 -0
  282. package/dist/config/Duration.js +70 -0
  283. package/dist/config/Duration.js.map +1 -0
  284. package/dist/config/HoconParser.d.ts +19 -0
  285. package/dist/config/HoconParser.d.ts.map +1 -0
  286. package/dist/config/HoconParser.js +473 -0
  287. package/dist/config/HoconParser.js.map +1 -0
  288. package/dist/config/Size.d.ts +2 -0
  289. package/dist/config/Size.d.ts.map +1 -0
  290. package/dist/config/Size.js +53 -0
  291. package/dist/config/Size.js.map +1 -0
  292. package/dist/config/index.d.ts +9 -0
  293. package/dist/config/index.d.ts.map +1 -0
  294. package/dist/config/index.js +7 -0
  295. package/dist/config/index.js.map +1 -0
  296. package/dist/config/reference.d.ts +11 -0
  297. package/dist/config/reference.d.ts.map +1 -0
  298. package/dist/config/reference.js +86 -0
  299. package/dist/config/reference.js.map +1 -0
  300. package/dist/coordination/Lease.d.ts +40 -0
  301. package/dist/coordination/Lease.d.ts.map +1 -0
  302. package/dist/coordination/Lease.js +2 -0
  303. package/dist/coordination/Lease.js.map +1 -0
  304. package/dist/coordination/index.d.ts +5 -0
  305. package/dist/coordination/index.d.ts.map +1 -0
  306. package/dist/coordination/index.js +3 -0
  307. package/dist/coordination/index.js.map +1 -0
  308. package/dist/coordination/leases/InMemoryLease.d.ts +40 -0
  309. package/dist/coordination/leases/InMemoryLease.d.ts.map +1 -0
  310. package/dist/coordination/leases/InMemoryLease.js +109 -0
  311. package/dist/coordination/leases/InMemoryLease.js.map +1 -0
  312. package/dist/coordination/leases/KubernetesLease.d.ts +78 -0
  313. package/dist/coordination/leases/KubernetesLease.d.ts.map +1 -0
  314. package/dist/coordination/leases/KubernetesLease.js +244 -0
  315. package/dist/coordination/leases/KubernetesLease.js.map +1 -0
  316. package/dist/coordination/leases/k8sApi.d.ts +82 -0
  317. package/dist/coordination/leases/k8sApi.d.ts.map +1 -0
  318. package/dist/coordination/leases/k8sApi.js +191 -0
  319. package/dist/coordination/leases/k8sApi.js.map +1 -0
  320. package/dist/crdt/Crdt.d.ts +52 -0
  321. package/dist/crdt/Crdt.d.ts.map +1 -0
  322. package/dist/crdt/Crdt.js +2 -0
  323. package/dist/crdt/Crdt.js.map +1 -0
  324. package/dist/crdt/DistributedData.d.ts +314 -0
  325. package/dist/crdt/DistributedData.d.ts.map +1 -0
  326. package/dist/crdt/DistributedData.js +658 -0
  327. package/dist/crdt/DistributedData.js.map +1 -0
  328. package/dist/crdt/DurableDistributedDataStore.d.ts +50 -0
  329. package/dist/crdt/DurableDistributedDataStore.d.ts.map +1 -0
  330. package/dist/crdt/DurableDistributedDataStore.js +75 -0
  331. package/dist/crdt/DurableDistributedDataStore.js.map +1 -0
  332. package/dist/crdt/GCounter.d.ts +42 -0
  333. package/dist/crdt/GCounter.d.ts.map +1 -0
  334. package/dist/crdt/GCounter.js +75 -0
  335. package/dist/crdt/GCounter.js.map +1 -0
  336. package/dist/crdt/GCounterMap.d.ts +60 -0
  337. package/dist/crdt/GCounterMap.d.ts.map +1 -0
  338. package/dist/crdt/GCounterMap.js +102 -0
  339. package/dist/crdt/GCounterMap.js.map +1 -0
  340. package/dist/crdt/GSet.d.ts +63 -0
  341. package/dist/crdt/GSet.d.ts.map +1 -0
  342. package/dist/crdt/GSet.js +77 -0
  343. package/dist/crdt/GSet.js.map +1 -0
  344. package/dist/crdt/LWWMap.d.ts +75 -0
  345. package/dist/crdt/LWWMap.d.ts.map +1 -0
  346. package/dist/crdt/LWWMap.js +136 -0
  347. package/dist/crdt/LWWMap.js.map +1 -0
  348. package/dist/crdt/LWWRegister.d.ts +54 -0
  349. package/dist/crdt/LWWRegister.d.ts.map +1 -0
  350. package/dist/crdt/LWWRegister.js +83 -0
  351. package/dist/crdt/LWWRegister.js.map +1 -0
  352. package/dist/crdt/MVRegister.d.ts +36 -0
  353. package/dist/crdt/MVRegister.d.ts.map +1 -0
  354. package/dist/crdt/MVRegister.js +138 -0
  355. package/dist/crdt/MVRegister.js.map +1 -0
  356. package/dist/crdt/ORMap.d.ts +104 -0
  357. package/dist/crdt/ORMap.d.ts.map +1 -0
  358. package/dist/crdt/ORMap.js +178 -0
  359. package/dist/crdt/ORMap.js.map +1 -0
  360. package/dist/crdt/ORSet.d.ts +81 -0
  361. package/dist/crdt/ORSet.d.ts.map +1 -0
  362. package/dist/crdt/ORSet.js +206 -0
  363. package/dist/crdt/ORSet.js.map +1 -0
  364. package/dist/crdt/PNCounter.d.ts +34 -0
  365. package/dist/crdt/PNCounter.d.ts.map +1 -0
  366. package/dist/crdt/PNCounter.js +51 -0
  367. package/dist/crdt/PNCounter.js.map +1 -0
  368. package/dist/crdt/index.d.ts +23 -0
  369. package/dist/crdt/index.d.ts.map +1 -0
  370. package/dist/crdt/index.js +12 -0
  371. package/dist/crdt/index.js.map +1 -0
  372. package/dist/delivery/ConsumerController.d.ts +28 -0
  373. package/dist/delivery/ConsumerController.d.ts.map +1 -0
  374. package/dist/delivery/ConsumerController.js +64 -0
  375. package/dist/delivery/ConsumerController.js.map +1 -0
  376. package/dist/delivery/Messages.d.ts +23 -0
  377. package/dist/delivery/Messages.d.ts.map +1 -0
  378. package/dist/delivery/Messages.js +2 -0
  379. package/dist/delivery/Messages.js.map +1 -0
  380. package/dist/delivery/ProducerController.d.ts +46 -0
  381. package/dist/delivery/ProducerController.d.ts.map +1 -0
  382. package/dist/delivery/ProducerController.js +84 -0
  383. package/dist/delivery/ProducerController.js.map +1 -0
  384. package/dist/delivery/ReliableDelivery.d.ts +36 -0
  385. package/dist/delivery/ReliableDelivery.d.ts.map +1 -0
  386. package/dist/delivery/ReliableDelivery.js +32 -0
  387. package/dist/delivery/ReliableDelivery.js.map +1 -0
  388. package/dist/delivery/index.d.ts +8 -0
  389. package/dist/delivery/index.d.ts.map +1 -0
  390. package/dist/delivery/index.js +4 -0
  391. package/dist/delivery/index.js.map +1 -0
  392. package/dist/discovery/AggregateSeedProvider.d.ts +15 -0
  393. package/dist/discovery/AggregateSeedProvider.d.ts.map +1 -0
  394. package/dist/discovery/AggregateSeedProvider.js +28 -0
  395. package/dist/discovery/AggregateSeedProvider.js.map +1 -0
  396. package/dist/discovery/ConfigSeedProvider.d.ts +20 -0
  397. package/dist/discovery/ConfigSeedProvider.d.ts.map +1 -0
  398. package/dist/discovery/ConfigSeedProvider.js +24 -0
  399. package/dist/discovery/ConfigSeedProvider.js.map +1 -0
  400. package/dist/discovery/DnsSeedProvider.d.ts +49 -0
  401. package/dist/discovery/DnsSeedProvider.d.ts.map +1 -0
  402. package/dist/discovery/DnsSeedProvider.js +57 -0
  403. package/dist/discovery/DnsSeedProvider.js.map +1 -0
  404. package/dist/discovery/KubernetesApiSeedProvider.d.ts +30 -0
  405. package/dist/discovery/KubernetesApiSeedProvider.d.ts.map +1 -0
  406. package/dist/discovery/KubernetesApiSeedProvider.js +66 -0
  407. package/dist/discovery/KubernetesApiSeedProvider.js.map +1 -0
  408. package/dist/discovery/Receptionist.d.ts +55 -0
  409. package/dist/discovery/Receptionist.d.ts.map +1 -0
  410. package/dist/discovery/Receptionist.js +207 -0
  411. package/dist/discovery/Receptionist.js.map +1 -0
  412. package/dist/discovery/ReceptionistMessages.d.ts +65 -0
  413. package/dist/discovery/ReceptionistMessages.d.ts.map +1 -0
  414. package/dist/discovery/ReceptionistMessages.js +76 -0
  415. package/dist/discovery/ReceptionistMessages.js.map +1 -0
  416. package/dist/discovery/SeedProvider.d.ts +17 -0
  417. package/dist/discovery/SeedProvider.d.ts.map +1 -0
  418. package/dist/discovery/SeedProvider.js +2 -0
  419. package/dist/discovery/SeedProvider.js.map +1 -0
  420. package/dist/discovery/ServiceKey.d.ts +15 -0
  421. package/dist/discovery/ServiceKey.d.ts.map +1 -0
  422. package/dist/discovery/ServiceKey.js +17 -0
  423. package/dist/discovery/ServiceKey.js.map +1 -0
  424. package/dist/discovery/autoDiscovery.d.ts +63 -0
  425. package/dist/discovery/autoDiscovery.d.ts.map +1 -0
  426. package/dist/discovery/autoDiscovery.js +91 -0
  427. package/dist/discovery/autoDiscovery.js.map +1 -0
  428. package/dist/discovery/index.d.ts +16 -0
  429. package/dist/discovery/index.d.ts.map +1 -0
  430. package/dist/discovery/index.js +9 -0
  431. package/dist/discovery/index.js.map +1 -0
  432. package/dist/fsm/FSM.d.ts +60 -0
  433. package/dist/fsm/FSM.d.ts.map +1 -0
  434. package/dist/fsm/FSM.js +102 -0
  435. package/dist/fsm/FSM.js.map +1 -0
  436. package/dist/fsm/PersistentFSM.d.ts +230 -0
  437. package/dist/fsm/PersistentFSM.d.ts.map +1 -0
  438. package/dist/fsm/PersistentFSM.js +170 -0
  439. package/dist/fsm/PersistentFSM.js.map +1 -0
  440. package/dist/fsm/index.d.ts +5 -0
  441. package/dist/fsm/index.d.ts.map +1 -0
  442. package/dist/fsm/index.js +3 -0
  443. package/dist/fsm/index.js.map +1 -0
  444. package/dist/http/HttpClient.d.ts +34 -0
  445. package/dist/http/HttpClient.d.ts.map +1 -0
  446. package/dist/http/HttpClient.js +72 -0
  447. package/dist/http/HttpClient.js.map +1 -0
  448. package/dist/http/HttpExtension.d.ts +29 -0
  449. package/dist/http/HttpExtension.d.ts.map +1 -0
  450. package/dist/http/HttpExtension.js +64 -0
  451. package/dist/http/HttpExtension.js.map +1 -0
  452. package/dist/http/Marshalling.d.ts +20 -0
  453. package/dist/http/Marshalling.d.ts.map +1 -0
  454. package/dist/http/Marshalling.js +54 -0
  455. package/dist/http/Marshalling.js.map +1 -0
  456. package/dist/http/Route.d.ts +59 -0
  457. package/dist/http/Route.d.ts.map +1 -0
  458. package/dist/http/Route.js +93 -0
  459. package/dist/http/Route.js.map +1 -0
  460. package/dist/http/backend/ExpressBackend.d.ts +86 -0
  461. package/dist/http/backend/ExpressBackend.d.ts.map +1 -0
  462. package/dist/http/backend/ExpressBackend.js +260 -0
  463. package/dist/http/backend/ExpressBackend.js.map +1 -0
  464. package/dist/http/backend/FastifyBackend.d.ts +31 -0
  465. package/dist/http/backend/FastifyBackend.d.ts.map +1 -0
  466. package/dist/http/backend/FastifyBackend.js +193 -0
  467. package/dist/http/backend/FastifyBackend.js.map +1 -0
  468. package/dist/http/backend/HonoBackend.d.ts +72 -0
  469. package/dist/http/backend/HonoBackend.d.ts.map +1 -0
  470. package/dist/http/backend/HonoBackend.js +212 -0
  471. package/dist/http/backend/HonoBackend.js.map +1 -0
  472. package/dist/http/backend/HttpServerBackend.d.ts +31 -0
  473. package/dist/http/backend/HttpServerBackend.d.ts.map +1 -0
  474. package/dist/http/backend/HttpServerBackend.js +2 -0
  475. package/dist/http/backend/HttpServerBackend.js.map +1 -0
  476. package/dist/http/cache/IdempotencyKey.d.ts +48 -0
  477. package/dist/http/cache/IdempotencyKey.d.ts.map +1 -0
  478. package/dist/http/cache/IdempotencyKey.js +154 -0
  479. package/dist/http/cache/IdempotencyKey.js.map +1 -0
  480. package/dist/http/cache/RateLimit.d.ts +65 -0
  481. package/dist/http/cache/RateLimit.d.ts.map +1 -0
  482. package/dist/http/cache/RateLimit.js +60 -0
  483. package/dist/http/cache/RateLimit.js.map +1 -0
  484. package/dist/http/cache/ResponseCache.d.ts +49 -0
  485. package/dist/http/cache/ResponseCache.d.ts.map +1 -0
  486. package/dist/http/cache/ResponseCache.js +84 -0
  487. package/dist/http/cache/ResponseCache.js.map +1 -0
  488. package/dist/http/cache/index.d.ts +7 -0
  489. package/dist/http/cache/index.d.ts.map +1 -0
  490. package/dist/http/cache/index.js +4 -0
  491. package/dist/http/cache/index.js.map +1 -0
  492. package/dist/http/index.d.ts +18 -0
  493. package/dist/http/index.d.ts.map +1 -0
  494. package/dist/http/index.js +11 -0
  495. package/dist/http/index.js.map +1 -0
  496. package/dist/http/types.d.ts +54 -0
  497. package/dist/http/types.d.ts.map +1 -0
  498. package/dist/http/types.js +40 -0
  499. package/dist/http/types.js.map +1 -0
  500. package/dist/index.d.ts +73 -0
  501. package/dist/index.d.ts.map +1 -0
  502. package/dist/index.js +87 -0
  503. package/dist/index.js.map +1 -0
  504. package/dist/internal/ActorCell.d.ts +116 -0
  505. package/dist/internal/ActorCell.d.ts.map +1 -0
  506. package/dist/internal/ActorCell.js +681 -0
  507. package/dist/internal/ActorCell.js.map +1 -0
  508. package/dist/internal/DeadLetterRef.d.ts +15 -0
  509. package/dist/internal/DeadLetterRef.d.ts.map +1 -0
  510. package/dist/internal/DeadLetterRef.js +24 -0
  511. package/dist/internal/DeadLetterRef.js.map +1 -0
  512. package/dist/internal/Guardian.d.ts +18 -0
  513. package/dist/internal/Guardian.d.ts.map +1 -0
  514. package/dist/internal/Guardian.js +23 -0
  515. package/dist/internal/Guardian.js.map +1 -0
  516. package/dist/internal/LocalActorRef.d.ts +17 -0
  517. package/dist/internal/LocalActorRef.d.ts.map +1 -0
  518. package/dist/internal/LocalActorRef.js +38 -0
  519. package/dist/internal/LocalActorRef.js.map +1 -0
  520. package/dist/internal/Mailbox.d.ts +49 -0
  521. package/dist/internal/Mailbox.d.ts.map +1 -0
  522. package/dist/internal/Mailbox.js +49 -0
  523. package/dist/internal/Mailbox.js.map +1 -0
  524. package/dist/internal/SystemCommand.d.ts +31 -0
  525. package/dist/internal/SystemCommand.d.ts.map +1 -0
  526. package/dist/internal/SystemCommand.js +2 -0
  527. package/dist/internal/SystemCommand.js.map +1 -0
  528. package/dist/io/broker/AmqpActor.d.ts +78 -0
  529. package/dist/io/broker/AmqpActor.d.ts.map +1 -0
  530. package/dist/io/broker/AmqpActor.js +137 -0
  531. package/dist/io/broker/AmqpActor.js.map +1 -0
  532. package/dist/io/broker/BrokerActor.d.ts +125 -0
  533. package/dist/io/broker/BrokerActor.d.ts.map +1 -0
  534. package/dist/io/broker/BrokerActor.js +289 -0
  535. package/dist/io/broker/BrokerActor.js.map +1 -0
  536. package/dist/io/broker/BrokerEvents.d.ts +59 -0
  537. package/dist/io/broker/BrokerEvents.d.ts.map +1 -0
  538. package/dist/io/broker/BrokerEvents.js +79 -0
  539. package/dist/io/broker/BrokerEvents.js.map +1 -0
  540. package/dist/io/broker/BrokerSettings.d.ts +72 -0
  541. package/dist/io/broker/BrokerSettings.d.ts.map +1 -0
  542. package/dist/io/broker/BrokerSettings.js +73 -0
  543. package/dist/io/broker/BrokerSettings.js.map +1 -0
  544. package/dist/io/broker/GrpcClientActor.d.ts +112 -0
  545. package/dist/io/broker/GrpcClientActor.d.ts.map +1 -0
  546. package/dist/io/broker/GrpcClientActor.js +212 -0
  547. package/dist/io/broker/GrpcClientActor.js.map +1 -0
  548. package/dist/io/broker/GrpcServerActor.d.ts +101 -0
  549. package/dist/io/broker/GrpcServerActor.d.ts.map +1 -0
  550. package/dist/io/broker/GrpcServerActor.js +230 -0
  551. package/dist/io/broker/GrpcServerActor.js.map +1 -0
  552. package/dist/io/broker/JetStreamActor.d.ts +352 -0
  553. package/dist/io/broker/JetStreamActor.d.ts.map +1 -0
  554. package/dist/io/broker/JetStreamActor.js +378 -0
  555. package/dist/io/broker/JetStreamActor.js.map +1 -0
  556. package/dist/io/broker/KafkaActor.d.ts +316 -0
  557. package/dist/io/broker/KafkaActor.d.ts.map +1 -0
  558. package/dist/io/broker/KafkaActor.js +355 -0
  559. package/dist/io/broker/KafkaActor.js.map +1 -0
  560. package/dist/io/broker/MqttActor.d.ts +149 -0
  561. package/dist/io/broker/MqttActor.d.ts.map +1 -0
  562. package/dist/io/broker/MqttActor.js +255 -0
  563. package/dist/io/broker/MqttActor.js.map +1 -0
  564. package/dist/io/broker/NatsActor.d.ts +65 -0
  565. package/dist/io/broker/NatsActor.d.ts.map +1 -0
  566. package/dist/io/broker/NatsActor.js +126 -0
  567. package/dist/io/broker/NatsActor.js.map +1 -0
  568. package/dist/io/broker/RedisStreamsActor.d.ts +69 -0
  569. package/dist/io/broker/RedisStreamsActor.d.ts.map +1 -0
  570. package/dist/io/broker/RedisStreamsActor.js +140 -0
  571. package/dist/io/broker/RedisStreamsActor.js.map +1 -0
  572. package/dist/io/broker/ServerWebSocketActor.d.ts +109 -0
  573. package/dist/io/broker/ServerWebSocketActor.d.ts.map +1 -0
  574. package/dist/io/broker/ServerWebSocketActor.js +128 -0
  575. package/dist/io/broker/ServerWebSocketActor.js.map +1 -0
  576. package/dist/io/broker/SseActor.d.ts +45 -0
  577. package/dist/io/broker/SseActor.d.ts.map +1 -0
  578. package/dist/io/broker/SseActor.js +129 -0
  579. package/dist/io/broker/SseActor.js.map +1 -0
  580. package/dist/io/broker/TcpSocketActor.d.ts +73 -0
  581. package/dist/io/broker/TcpSocketActor.d.ts.map +1 -0
  582. package/dist/io/broker/TcpSocketActor.js +168 -0
  583. package/dist/io/broker/TcpSocketActor.js.map +1 -0
  584. package/dist/io/broker/UdpSocketActor.d.ts +54 -0
  585. package/dist/io/broker/UdpSocketActor.d.ts.map +1 -0
  586. package/dist/io/broker/UdpSocketActor.js +100 -0
  587. package/dist/io/broker/UdpSocketActor.js.map +1 -0
  588. package/dist/io/broker/WebSocketActor.d.ts +77 -0
  589. package/dist/io/broker/WebSocketActor.d.ts.map +1 -0
  590. package/dist/io/broker/WebSocketActor.js +217 -0
  591. package/dist/io/broker/WebSocketActor.js.map +1 -0
  592. package/dist/io/broker/WebSocketServerAdapters.d.ts +140 -0
  593. package/dist/io/broker/WebSocketServerAdapters.d.ts.map +1 -0
  594. package/dist/io/broker/WebSocketServerAdapters.js +155 -0
  595. package/dist/io/broker/WebSocketServerAdapters.js.map +1 -0
  596. package/dist/io/broker/index.d.ts +32 -0
  597. package/dist/io/broker/index.d.ts.map +1 -0
  598. package/dist/io/broker/index.js +22 -0
  599. package/dist/io/broker/index.js.map +1 -0
  600. package/dist/io/index.d.ts +2 -0
  601. package/dist/io/index.d.ts.map +1 -0
  602. package/dist/io/index.js +2 -0
  603. package/dist/io/index.js.map +1 -0
  604. package/dist/mailbox/BoundedMailbox.d.ts +28 -0
  605. package/dist/mailbox/BoundedMailbox.d.ts.map +1 -0
  606. package/dist/mailbox/BoundedMailbox.js +41 -0
  607. package/dist/mailbox/BoundedMailbox.js.map +1 -0
  608. package/dist/mailbox/PriorityMailbox.d.ts +32 -0
  609. package/dist/mailbox/PriorityMailbox.d.ts.map +1 -0
  610. package/dist/mailbox/PriorityMailbox.js +58 -0
  611. package/dist/mailbox/PriorityMailbox.js.map +1 -0
  612. package/dist/mailbox/index.d.ts +5 -0
  613. package/dist/mailbox/index.d.ts.map +1 -0
  614. package/dist/mailbox/index.js +3 -0
  615. package/dist/mailbox/index.js.map +1 -0
  616. package/dist/management/HealthCheck.d.ts +21 -0
  617. package/dist/management/HealthCheck.d.ts.map +1 -0
  618. package/dist/management/HealthCheck.js +46 -0
  619. package/dist/management/HealthCheck.js.map +1 -0
  620. package/dist/management/HttpManagement.d.ts +43 -0
  621. package/dist/management/HttpManagement.d.ts.map +1 -0
  622. package/dist/management/HttpManagement.js +158 -0
  623. package/dist/management/HttpManagement.js.map +1 -0
  624. package/dist/management/index.d.ts +5 -0
  625. package/dist/management/index.d.ts.map +1 -0
  626. package/dist/management/index.js +3 -0
  627. package/dist/management/index.js.map +1 -0
  628. package/dist/metrics/Metrics.d.ts +142 -0
  629. package/dist/metrics/Metrics.d.ts.map +1 -0
  630. package/dist/metrics/Metrics.js +231 -0
  631. package/dist/metrics/Metrics.js.map +1 -0
  632. package/dist/metrics/MetricsExtension.d.ts +51 -0
  633. package/dist/metrics/MetricsExtension.d.ts.map +1 -0
  634. package/dist/metrics/MetricsExtension.js +63 -0
  635. package/dist/metrics/MetricsExtension.js.map +1 -0
  636. package/dist/metrics/PromClientAdapter.d.ts +102 -0
  637. package/dist/metrics/PromClientAdapter.d.ts.map +1 -0
  638. package/dist/metrics/PromClientAdapter.js +244 -0
  639. package/dist/metrics/PromClientAdapter.js.map +1 -0
  640. package/dist/metrics/PrometheusExporter.d.ts +31 -0
  641. package/dist/metrics/PrometheusExporter.d.ts.map +1 -0
  642. package/dist/metrics/PrometheusExporter.js +128 -0
  643. package/dist/metrics/PrometheusExporter.js.map +1 -0
  644. package/dist/metrics/index.d.ts +7 -0
  645. package/dist/metrics/index.d.ts.map +1 -0
  646. package/dist/metrics/index.js +5 -0
  647. package/dist/metrics/index.js.map +1 -0
  648. package/dist/pattern/BackoffPolicy.d.ts +67 -0
  649. package/dist/pattern/BackoffPolicy.d.ts.map +1 -0
  650. package/dist/pattern/BackoffPolicy.js +87 -0
  651. package/dist/pattern/BackoffPolicy.js.map +1 -0
  652. package/dist/pattern/BackoffSupervisor.d.ts +234 -0
  653. package/dist/pattern/BackoffSupervisor.d.ts.map +1 -0
  654. package/dist/pattern/BackoffSupervisor.js +292 -0
  655. package/dist/pattern/BackoffSupervisor.js.map +1 -0
  656. package/dist/pattern/CircuitBreaker.d.ts +49 -0
  657. package/dist/pattern/CircuitBreaker.d.ts.map +1 -0
  658. package/dist/pattern/CircuitBreaker.js +110 -0
  659. package/dist/pattern/CircuitBreaker.js.map +1 -0
  660. package/dist/pattern/Status.d.ts +13 -0
  661. package/dist/pattern/Status.d.ts.map +1 -0
  662. package/dist/pattern/Status.js +13 -0
  663. package/dist/pattern/Status.js.map +1 -0
  664. package/dist/pattern/after.d.ts +13 -0
  665. package/dist/pattern/after.d.ts.map +1 -0
  666. package/dist/pattern/after.js +26 -0
  667. package/dist/pattern/after.js.map +1 -0
  668. package/dist/pattern/index.d.ts +14 -0
  669. package/dist/pattern/index.d.ts.map +1 -0
  670. package/dist/pattern/index.js +8 -0
  671. package/dist/pattern/index.js.map +1 -0
  672. package/dist/pattern/pipeTo.d.ts +20 -0
  673. package/dist/pattern/pipeTo.d.ts.map +1 -0
  674. package/dist/pattern/pipeTo.js +22 -0
  675. package/dist/pattern/pipeTo.js.map +1 -0
  676. package/dist/pattern/retry.d.ts +24 -0
  677. package/dist/pattern/retry.d.ts.map +1 -0
  678. package/dist/pattern/retry.js +35 -0
  679. package/dist/pattern/retry.js.map +1 -0
  680. package/dist/persistence/DurableStateActor.d.ts +62 -0
  681. package/dist/persistence/DurableStateActor.d.ts.map +1 -0
  682. package/dist/persistence/DurableStateActor.js +120 -0
  683. package/dist/persistence/DurableStateActor.js.map +1 -0
  684. package/dist/persistence/DurableStateStore.d.ts +43 -0
  685. package/dist/persistence/DurableStateStore.d.ts.map +1 -0
  686. package/dist/persistence/DurableStateStore.js +13 -0
  687. package/dist/persistence/DurableStateStore.js.map +1 -0
  688. package/dist/persistence/EventDispatcher.d.ts +88 -0
  689. package/dist/persistence/EventDispatcher.d.ts.map +1 -0
  690. package/dist/persistence/EventDispatcher.js +81 -0
  691. package/dist/persistence/EventDispatcher.js.map +1 -0
  692. package/dist/persistence/Journal.d.ts +40 -0
  693. package/dist/persistence/Journal.d.ts.map +1 -0
  694. package/dist/persistence/Journal.js +2 -0
  695. package/dist/persistence/Journal.js.map +1 -0
  696. package/dist/persistence/JournalEventBus.d.ts +47 -0
  697. package/dist/persistence/JournalEventBus.d.ts.map +1 -0
  698. package/dist/persistence/JournalEventBus.js +26 -0
  699. package/dist/persistence/JournalEventBus.js.map +1 -0
  700. package/dist/persistence/JournalTypes.d.ts +39 -0
  701. package/dist/persistence/JournalTypes.d.ts.map +1 -0
  702. package/dist/persistence/JournalTypes.js +28 -0
  703. package/dist/persistence/JournalTypes.js.map +1 -0
  704. package/dist/persistence/PersistenceExtension.d.ts +32 -0
  705. package/dist/persistence/PersistenceExtension.d.ts.map +1 -0
  706. package/dist/persistence/PersistenceExtension.js +69 -0
  707. package/dist/persistence/PersistenceExtension.js.map +1 -0
  708. package/dist/persistence/PersistenceOptions.d.ts +95 -0
  709. package/dist/persistence/PersistenceOptions.d.ts.map +1 -0
  710. package/dist/persistence/PersistenceOptions.js +20 -0
  711. package/dist/persistence/PersistenceOptions.js.map +1 -0
  712. package/dist/persistence/PersistentActor.d.ts +120 -0
  713. package/dist/persistence/PersistentActor.d.ts.map +1 -0
  714. package/dist/persistence/PersistentActor.js +246 -0
  715. package/dist/persistence/PersistentActor.js.map +1 -0
  716. package/dist/persistence/ReplicatedEventSourcedActor.d.ts +238 -0
  717. package/dist/persistence/ReplicatedEventSourcedActor.d.ts.map +1 -0
  718. package/dist/persistence/ReplicatedEventSourcedActor.js +430 -0
  719. package/dist/persistence/ReplicatedEventSourcedActor.js.map +1 -0
  720. package/dist/persistence/SnapshotStore.d.ts +31 -0
  721. package/dist/persistence/SnapshotStore.d.ts.map +1 -0
  722. package/dist/persistence/SnapshotStore.js +2 -0
  723. package/dist/persistence/SnapshotStore.js.map +1 -0
  724. package/dist/persistence/durable-state-stores/InMemoryDurableStateStore.d.ts +14 -0
  725. package/dist/persistence/durable-state-stores/InMemoryDurableStateStore.d.ts.map +1 -0
  726. package/dist/persistence/durable-state-stores/InMemoryDurableStateStore.js +31 -0
  727. package/dist/persistence/durable-state-stores/InMemoryDurableStateStore.js.map +1 -0
  728. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts +27 -0
  729. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts.map +1 -0
  730. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js +157 -0
  731. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js.map +1 -0
  732. package/dist/persistence/index.d.ts +65 -0
  733. package/dist/persistence/index.d.ts.map +1 -0
  734. package/dist/persistence/index.js +44 -0
  735. package/dist/persistence/index.js.map +1 -0
  736. package/dist/persistence/journals/CassandraClient.d.ts +81 -0
  737. package/dist/persistence/journals/CassandraClient.d.ts.map +1 -0
  738. package/dist/persistence/journals/CassandraClient.js +65 -0
  739. package/dist/persistence/journals/CassandraClient.js.map +1 -0
  740. package/dist/persistence/journals/CassandraJournal.d.ts +96 -0
  741. package/dist/persistence/journals/CassandraJournal.d.ts.map +1 -0
  742. package/dist/persistence/journals/CassandraJournal.js +247 -0
  743. package/dist/persistence/journals/CassandraJournal.js.map +1 -0
  744. package/dist/persistence/journals/CassandraPlugin.d.ts +30 -0
  745. package/dist/persistence/journals/CassandraPlugin.d.ts.map +1 -0
  746. package/dist/persistence/journals/CassandraPlugin.js +18 -0
  747. package/dist/persistence/journals/CassandraPlugin.js.map +1 -0
  748. package/dist/persistence/journals/InMemoryJournal.d.ts +35 -0
  749. package/dist/persistence/journals/InMemoryJournal.d.ts.map +1 -0
  750. package/dist/persistence/journals/InMemoryJournal.js +97 -0
  751. package/dist/persistence/journals/InMemoryJournal.js.map +1 -0
  752. package/dist/persistence/journals/SqliteJournal.d.ts +68 -0
  753. package/dist/persistence/journals/SqliteJournal.d.ts.map +1 -0
  754. package/dist/persistence/journals/SqliteJournal.js +225 -0
  755. package/dist/persistence/journals/SqliteJournal.js.map +1 -0
  756. package/dist/persistence/migration/Adapter.d.ts +72 -0
  757. package/dist/persistence/migration/Adapter.d.ts.map +1 -0
  758. package/dist/persistence/migration/Adapter.js +24 -0
  759. package/dist/persistence/migration/Adapter.js.map +1 -0
  760. package/dist/persistence/migration/Codec.d.ts +103 -0
  761. package/dist/persistence/migration/Codec.d.ts.map +1 -0
  762. package/dist/persistence/migration/Codec.js +92 -0
  763. package/dist/persistence/migration/Codec.js.map +1 -0
  764. package/dist/persistence/migration/Envelope.d.ts +37 -0
  765. package/dist/persistence/migration/Envelope.d.ts.map +1 -0
  766. package/dist/persistence/migration/Envelope.js +79 -0
  767. package/dist/persistence/migration/Envelope.js.map +1 -0
  768. package/dist/persistence/migration/MigrationChain.d.ts +100 -0
  769. package/dist/persistence/migration/MigrationChain.d.ts.map +1 -0
  770. package/dist/persistence/migration/MigrationChain.js +159 -0
  771. package/dist/persistence/migration/MigrationChain.js.map +1 -0
  772. package/dist/persistence/migration/SchemaRegistry.d.ts +114 -0
  773. package/dist/persistence/migration/SchemaRegistry.d.ts.map +1 -0
  774. package/dist/persistence/migration/SchemaRegistry.js +112 -0
  775. package/dist/persistence/migration/SchemaRegistry.js.map +1 -0
  776. package/dist/persistence/migration/defaultsAdapter.d.ts +56 -0
  777. package/dist/persistence/migration/defaultsAdapter.d.ts.map +1 -0
  778. package/dist/persistence/migration/defaultsAdapter.js +119 -0
  779. package/dist/persistence/migration/defaultsAdapter.js.map +1 -0
  780. package/dist/persistence/migration/index.d.ts +18 -0
  781. package/dist/persistence/migration/index.d.ts.map +1 -0
  782. package/dist/persistence/migration/index.js +12 -0
  783. package/dist/persistence/migration/index.js.map +1 -0
  784. package/dist/persistence/migration/journalMigration.d.ts +155 -0
  785. package/dist/persistence/migration/journalMigration.d.ts.map +1 -0
  786. package/dist/persistence/migration/journalMigration.js +149 -0
  787. package/dist/persistence/migration/journalMigration.js.map +1 -0
  788. package/dist/persistence/migration/migratingAdapter.d.ts +43 -0
  789. package/dist/persistence/migration/migratingAdapter.d.ts.map +1 -0
  790. package/dist/persistence/migration/migratingAdapter.js +65 -0
  791. package/dist/persistence/migration/migratingAdapter.js.map +1 -0
  792. package/dist/persistence/migration/validatedAdapter.d.ts +48 -0
  793. package/dist/persistence/migration/validatedAdapter.d.ts.map +1 -0
  794. package/dist/persistence/migration/validatedAdapter.js +86 -0
  795. package/dist/persistence/migration/validatedAdapter.js.map +1 -0
  796. package/dist/persistence/migration/wrapLegacy.d.ts +83 -0
  797. package/dist/persistence/migration/wrapLegacy.d.ts.map +1 -0
  798. package/dist/persistence/migration/wrapLegacy.js +126 -0
  799. package/dist/persistence/migration/wrapLegacy.js.map +1 -0
  800. package/dist/persistence/object-storage/BodyCodec.d.ts +88 -0
  801. package/dist/persistence/object-storage/BodyCodec.d.ts.map +1 -0
  802. package/dist/persistence/object-storage/BodyCodec.js +171 -0
  803. package/dist/persistence/object-storage/BodyCodec.js.map +1 -0
  804. package/dist/persistence/object-storage/Compression.d.ts +31 -0
  805. package/dist/persistence/object-storage/Compression.d.ts.map +1 -0
  806. package/dist/persistence/object-storage/Compression.js +99 -0
  807. package/dist/persistence/object-storage/Compression.js.map +1 -0
  808. package/dist/persistence/object-storage/Encryption.d.ts +73 -0
  809. package/dist/persistence/object-storage/Encryption.d.ts.map +1 -0
  810. package/dist/persistence/object-storage/Encryption.js +167 -0
  811. package/dist/persistence/object-storage/Encryption.js.map +1 -0
  812. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts +79 -0
  813. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts.map +1 -0
  814. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js +325 -0
  815. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js.map +1 -0
  816. package/dist/persistence/object-storage/ObjectStorageBackend.d.ts +86 -0
  817. package/dist/persistence/object-storage/ObjectStorageBackend.d.ts.map +1 -0
  818. package/dist/persistence/object-storage/ObjectStorageBackend.js +24 -0
  819. package/dist/persistence/object-storage/ObjectStorageBackend.js.map +1 -0
  820. package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts +93 -0
  821. package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts.map +1 -0
  822. package/dist/persistence/object-storage/ObjectStoragePlugin.js +113 -0
  823. package/dist/persistence/object-storage/ObjectStoragePlugin.js.map +1 -0
  824. package/dist/persistence/object-storage/PluginConfig.d.ts +67 -0
  825. package/dist/persistence/object-storage/PluginConfig.d.ts.map +1 -0
  826. package/dist/persistence/object-storage/PluginConfig.js +93 -0
  827. package/dist/persistence/object-storage/PluginConfig.js.map +1 -0
  828. package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts +104 -0
  829. package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts.map +1 -0
  830. package/dist/persistence/object-storage/S3ObjectStorageBackend.js +202 -0
  831. package/dist/persistence/object-storage/S3ObjectStorageBackend.js.map +1 -0
  832. package/dist/persistence/object-storage/reEncryptionSweep.d.ts +110 -0
  833. package/dist/persistence/object-storage/reEncryptionSweep.d.ts.map +1 -0
  834. package/dist/persistence/object-storage/reEncryptionSweep.js +157 -0
  835. package/dist/persistence/object-storage/reEncryptionSweep.js.map +1 -0
  836. package/dist/persistence/projection/OffsetStore.d.ts +69 -0
  837. package/dist/persistence/projection/OffsetStore.d.ts.map +1 -0
  838. package/dist/persistence/projection/OffsetStore.js +103 -0
  839. package/dist/persistence/projection/OffsetStore.js.map +1 -0
  840. package/dist/persistence/projection/ProjectionActor.d.ts +62 -0
  841. package/dist/persistence/projection/ProjectionActor.d.ts.map +1 -0
  842. package/dist/persistence/projection/ProjectionActor.js +120 -0
  843. package/dist/persistence/projection/ProjectionActor.js.map +1 -0
  844. package/dist/persistence/query/CassandraQuery.d.ts +42 -0
  845. package/dist/persistence/query/CassandraQuery.d.ts.map +1 -0
  846. package/dist/persistence/query/CassandraQuery.js +118 -0
  847. package/dist/persistence/query/CassandraQuery.js.map +1 -0
  848. package/dist/persistence/query/InMemoryQuery.d.ts +31 -0
  849. package/dist/persistence/query/InMemoryQuery.d.ts.map +1 -0
  850. package/dist/persistence/query/InMemoryQuery.js +285 -0
  851. package/dist/persistence/query/InMemoryQuery.js.map +1 -0
  852. package/dist/persistence/query/PersistenceQuery.d.ts +162 -0
  853. package/dist/persistence/query/PersistenceQuery.d.ts.map +1 -0
  854. package/dist/persistence/query/PersistenceQuery.js +78 -0
  855. package/dist/persistence/query/PersistenceQuery.js.map +1 -0
  856. package/dist/persistence/query/SqliteQuery.d.ts +58 -0
  857. package/dist/persistence/query/SqliteQuery.d.ts.map +1 -0
  858. package/dist/persistence/query/SqliteQuery.js +173 -0
  859. package/dist/persistence/query/SqliteQuery.js.map +1 -0
  860. package/dist/persistence/replicated/ConflictResolver.d.ts +70 -0
  861. package/dist/persistence/replicated/ConflictResolver.d.ts.map +1 -0
  862. package/dist/persistence/replicated/ConflictResolver.js +47 -0
  863. package/dist/persistence/replicated/ConflictResolver.js.map +1 -0
  864. package/dist/persistence/replicated/ReplicatedSnapshot.d.ts +43 -0
  865. package/dist/persistence/replicated/ReplicatedSnapshot.d.ts.map +1 -0
  866. package/dist/persistence/replicated/ReplicatedSnapshot.js +2 -0
  867. package/dist/persistence/replicated/ReplicatedSnapshot.js.map +1 -0
  868. package/dist/persistence/replicated/VectorClock.d.ts +57 -0
  869. package/dist/persistence/replicated/VectorClock.d.ts.map +1 -0
  870. package/dist/persistence/replicated/VectorClock.js +79 -0
  871. package/dist/persistence/replicated/VectorClock.js.map +1 -0
  872. package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts +27 -0
  873. package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts.map +1 -0
  874. package/dist/persistence/snapshot-stores/CachedSnapshotStore.js +82 -0
  875. package/dist/persistence/snapshot-stores/CachedSnapshotStore.js.map +1 -0
  876. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts +42 -0
  877. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts.map +1 -0
  878. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js +121 -0
  879. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js.map +1 -0
  880. package/dist/persistence/snapshot-stores/InMemorySnapshotStore.d.ts +19 -0
  881. package/dist/persistence/snapshot-stores/InMemorySnapshotStore.d.ts.map +1 -0
  882. package/dist/persistence/snapshot-stores/InMemorySnapshotStore.js +44 -0
  883. package/dist/persistence/snapshot-stores/InMemorySnapshotStore.js.map +1 -0
  884. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts +46 -0
  885. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts.map +1 -0
  886. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js +172 -0
  887. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js.map +1 -0
  888. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts +42 -0
  889. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts.map +1 -0
  890. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js +108 -0
  891. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js.map +1 -0
  892. package/dist/persistence/storage/KeyValidator.d.ts +80 -0
  893. package/dist/persistence/storage/KeyValidator.d.ts.map +1 -0
  894. package/dist/persistence/storage/KeyValidator.js +88 -0
  895. package/dist/persistence/storage/KeyValidator.js.map +1 -0
  896. package/dist/runtime/detect.d.ts +35 -0
  897. package/dist/runtime/detect.d.ts.map +1 -0
  898. package/dist/runtime/detect.js +60 -0
  899. package/dist/runtime/detect.js.map +1 -0
  900. package/dist/runtime/http/BunHonoRunner.d.ts +16 -0
  901. package/dist/runtime/http/BunHonoRunner.d.ts.map +1 -0
  902. package/dist/runtime/http/BunHonoRunner.js +26 -0
  903. package/dist/runtime/http/BunHonoRunner.js.map +1 -0
  904. package/dist/runtime/http/DenoHonoRunner.d.ts +16 -0
  905. package/dist/runtime/http/DenoHonoRunner.d.ts.map +1 -0
  906. package/dist/runtime/http/DenoHonoRunner.js +33 -0
  907. package/dist/runtime/http/DenoHonoRunner.js.map +1 -0
  908. package/dist/runtime/http/HonoServerRunner.d.ts +28 -0
  909. package/dist/runtime/http/HonoServerRunner.d.ts.map +1 -0
  910. package/dist/runtime/http/HonoServerRunner.js +16 -0
  911. package/dist/runtime/http/HonoServerRunner.js.map +1 -0
  912. package/dist/runtime/http/NodeHonoRunner.d.ts +19 -0
  913. package/dist/runtime/http/NodeHonoRunner.d.ts.map +1 -0
  914. package/dist/runtime/http/NodeHonoRunner.js +70 -0
  915. package/dist/runtime/http/NodeHonoRunner.js.map +1 -0
  916. package/dist/runtime/http/index.d.ts +13 -0
  917. package/dist/runtime/http/index.d.ts.map +1 -0
  918. package/dist/runtime/http/index.js +40 -0
  919. package/dist/runtime/http/index.js.map +1 -0
  920. package/dist/runtime/sqlite/BetterSqliteDriver.d.ts +18 -0
  921. package/dist/runtime/sqlite/BetterSqliteDriver.d.ts.map +1 -0
  922. package/dist/runtime/sqlite/BetterSqliteDriver.js +64 -0
  923. package/dist/runtime/sqlite/BetterSqliteDriver.js.map +1 -0
  924. package/dist/runtime/sqlite/BunSqliteDriver.d.ts +17 -0
  925. package/dist/runtime/sqlite/BunSqliteDriver.d.ts.map +1 -0
  926. package/dist/runtime/sqlite/BunSqliteDriver.js +34 -0
  927. package/dist/runtime/sqlite/BunSqliteDriver.js.map +1 -0
  928. package/dist/runtime/sqlite/SqliteDriver.d.ts +35 -0
  929. package/dist/runtime/sqlite/SqliteDriver.d.ts.map +1 -0
  930. package/dist/runtime/sqlite/SqliteDriver.js +13 -0
  931. package/dist/runtime/sqlite/SqliteDriver.js.map +1 -0
  932. package/dist/runtime/sqlite/index.d.ts +14 -0
  933. package/dist/runtime/sqlite/index.d.ts.map +1 -0
  934. package/dist/runtime/sqlite/index.js +41 -0
  935. package/dist/runtime/sqlite/index.js.map +1 -0
  936. package/dist/runtime/tcp/BunTcpBackend.d.ts +24 -0
  937. package/dist/runtime/tcp/BunTcpBackend.d.ts.map +1 -0
  938. package/dist/runtime/tcp/BunTcpBackend.js +66 -0
  939. package/dist/runtime/tcp/BunTcpBackend.js.map +1 -0
  940. package/dist/runtime/tcp/DenoTcpBackend.d.ts +30 -0
  941. package/dist/runtime/tcp/DenoTcpBackend.d.ts.map +1 -0
  942. package/dist/runtime/tcp/DenoTcpBackend.js +145 -0
  943. package/dist/runtime/tcp/DenoTcpBackend.js.map +1 -0
  944. package/dist/runtime/tcp/NodeTcpBackend.d.ts +25 -0
  945. package/dist/runtime/tcp/NodeTcpBackend.d.ts.map +1 -0
  946. package/dist/runtime/tcp/NodeTcpBackend.js +102 -0
  947. package/dist/runtime/tcp/NodeTcpBackend.js.map +1 -0
  948. package/dist/runtime/tcp/TcpBackend.d.ts +65 -0
  949. package/dist/runtime/tcp/TcpBackend.d.ts.map +1 -0
  950. package/dist/runtime/tcp/TcpBackend.js +17 -0
  951. package/dist/runtime/tcp/TcpBackend.js.map +1 -0
  952. package/dist/runtime/tcp/index.d.ts +13 -0
  953. package/dist/runtime/tcp/index.d.ts.map +1 -0
  954. package/dist/runtime/tcp/index.js +40 -0
  955. package/dist/runtime/tcp/index.js.map +1 -0
  956. package/dist/runtime/worker/NodeWorkerBackend.d.ts +19 -0
  957. package/dist/runtime/worker/NodeWorkerBackend.d.ts.map +1 -0
  958. package/dist/runtime/worker/NodeWorkerBackend.js +84 -0
  959. package/dist/runtime/worker/NodeWorkerBackend.js.map +1 -0
  960. package/dist/runtime/worker/WebWorkerBackend.d.ts +12 -0
  961. package/dist/runtime/worker/WebWorkerBackend.d.ts.map +1 -0
  962. package/dist/runtime/worker/WebWorkerBackend.js +55 -0
  963. package/dist/runtime/worker/WebWorkerBackend.js.map +1 -0
  964. package/dist/runtime/worker/WorkerBackend.d.ts +45 -0
  965. package/dist/runtime/worker/WorkerBackend.d.ts.map +1 -0
  966. package/dist/runtime/worker/WorkerBackend.js +18 -0
  967. package/dist/runtime/worker/WorkerBackend.js.map +1 -0
  968. package/dist/runtime/worker/index.d.ts +14 -0
  969. package/dist/runtime/worker/index.d.ts.map +1 -0
  970. package/dist/runtime/worker/index.js +34 -0
  971. package/dist/runtime/worker/index.js.map +1 -0
  972. package/dist/serialization/CborCodec.d.ts +51 -0
  973. package/dist/serialization/CborCodec.d.ts.map +1 -0
  974. package/dist/serialization/CborCodec.js +321 -0
  975. package/dist/serialization/CborCodec.js.map +1 -0
  976. package/dist/serialization/CborSerializer.d.ts +23 -0
  977. package/dist/serialization/CborSerializer.d.ts.map +1 -0
  978. package/dist/serialization/CborSerializer.js +27 -0
  979. package/dist/serialization/CborSerializer.js.map +1 -0
  980. package/dist/serialization/JsonSerializer.d.ts +18 -0
  981. package/dist/serialization/JsonSerializer.d.ts.map +1 -0
  982. package/dist/serialization/JsonSerializer.js +114 -0
  983. package/dist/serialization/JsonSerializer.js.map +1 -0
  984. package/dist/serialization/SerializationExtension.d.ts +46 -0
  985. package/dist/serialization/SerializationExtension.d.ts.map +1 -0
  986. package/dist/serialization/SerializationExtension.js +105 -0
  987. package/dist/serialization/SerializationExtension.js.map +1 -0
  988. package/dist/serialization/Serializer.d.ts +44 -0
  989. package/dist/serialization/Serializer.d.ts.map +1 -0
  990. package/dist/serialization/Serializer.js +7 -0
  991. package/dist/serialization/Serializer.js.map +1 -0
  992. package/dist/serialization/index.d.ts +7 -0
  993. package/dist/serialization/index.d.ts.map +1 -0
  994. package/dist/serialization/index.js +6 -0
  995. package/dist/serialization/index.js.map +1 -0
  996. package/dist/testkit/ManualScheduler.d.ts +35 -0
  997. package/dist/testkit/ManualScheduler.d.ts.map +1 -0
  998. package/dist/testkit/ManualScheduler.js +126 -0
  999. package/dist/testkit/ManualScheduler.js.map +1 -0
  1000. package/dist/testkit/MultiNodeSpec.d.ts +132 -0
  1001. package/dist/testkit/MultiNodeSpec.d.ts.map +1 -0
  1002. package/dist/testkit/MultiNodeSpec.js +237 -0
  1003. package/dist/testkit/MultiNodeSpec.js.map +1 -0
  1004. package/dist/testkit/ParallelMultiNodeSpec.d.ts +117 -0
  1005. package/dist/testkit/ParallelMultiNodeSpec.d.ts.map +1 -0
  1006. package/dist/testkit/ParallelMultiNodeSpec.js +310 -0
  1007. package/dist/testkit/ParallelMultiNodeSpec.js.map +1 -0
  1008. package/dist/testkit/TestKit.d.ts +40 -0
  1009. package/dist/testkit/TestKit.d.ts.map +1 -0
  1010. package/dist/testkit/TestKit.js +60 -0
  1011. package/dist/testkit/TestKit.js.map +1 -0
  1012. package/dist/testkit/TestProbe.d.ts +56 -0
  1013. package/dist/testkit/TestProbe.d.ts.map +1 -0
  1014. package/dist/testkit/TestProbe.js +184 -0
  1015. package/dist/testkit/TestProbe.js.map +1 -0
  1016. package/dist/testkit/index.d.ts +11 -0
  1017. package/dist/testkit/index.d.ts.map +1 -0
  1018. package/dist/testkit/index.js +6 -0
  1019. package/dist/testkit/index.js.map +1 -0
  1020. package/dist/testkit/internal/MultiNodeBroker.d.ts +39 -0
  1021. package/dist/testkit/internal/MultiNodeBroker.d.ts.map +1 -0
  1022. package/dist/testkit/internal/MultiNodeBroker.js +96 -0
  1023. package/dist/testkit/internal/MultiNodeBroker.js.map +1 -0
  1024. package/dist/testkit/internal/MultiNodeTransport.d.ts +58 -0
  1025. package/dist/testkit/internal/MultiNodeTransport.d.ts.map +1 -0
  1026. package/dist/testkit/internal/MultiNodeTransport.js +96 -0
  1027. package/dist/testkit/internal/MultiNodeTransport.js.map +1 -0
  1028. package/dist/testkit/internal/parallel-multi-node-bootstrap.d.ts +54 -0
  1029. package/dist/testkit/internal/parallel-multi-node-bootstrap.d.ts.map +1 -0
  1030. package/dist/testkit/internal/parallel-multi-node-bootstrap.js +157 -0
  1031. package/dist/testkit/internal/parallel-multi-node-bootstrap.js.map +1 -0
  1032. package/dist/tracing/NoopTracer.d.ts +11 -0
  1033. package/dist/tracing/NoopTracer.d.ts.map +1 -0
  1034. package/dist/tracing/NoopTracer.js +29 -0
  1035. package/dist/tracing/NoopTracer.js.map +1 -0
  1036. package/dist/tracing/OtelAdapter.d.ts +106 -0
  1037. package/dist/tracing/OtelAdapter.d.ts.map +1 -0
  1038. package/dist/tracing/OtelAdapter.js +164 -0
  1039. package/dist/tracing/OtelAdapter.js.map +1 -0
  1040. package/dist/tracing/RecordingTracer.d.ts +54 -0
  1041. package/dist/tracing/RecordingTracer.d.ts.map +1 -0
  1042. package/dist/tracing/RecordingTracer.js +129 -0
  1043. package/dist/tracing/RecordingTracer.js.map +1 -0
  1044. package/dist/tracing/Tracer.d.ts +100 -0
  1045. package/dist/tracing/Tracer.d.ts.map +1 -0
  1046. package/dist/tracing/Tracer.js +76 -0
  1047. package/dist/tracing/Tracer.js.map +1 -0
  1048. package/dist/tracing/TracingExtension.d.ts +32 -0
  1049. package/dist/tracing/TracingExtension.d.ts.map +1 -0
  1050. package/dist/tracing/TracingExtension.js +38 -0
  1051. package/dist/tracing/TracingExtension.js.map +1 -0
  1052. package/dist/tracing/index.d.ts +9 -0
  1053. package/dist/tracing/index.d.ts.map +1 -0
  1054. package/dist/tracing/index.js +6 -0
  1055. package/dist/tracing/index.js.map +1 -0
  1056. package/dist/typed/Behavior.d.ts +78 -0
  1057. package/dist/typed/Behavior.d.ts.map +1 -0
  1058. package/dist/typed/Behavior.js +2 -0
  1059. package/dist/typed/Behavior.js.map +1 -0
  1060. package/dist/typed/Behaviors.d.ts +60 -0
  1061. package/dist/typed/Behaviors.d.ts.map +1 -0
  1062. package/dist/typed/Behaviors.js +77 -0
  1063. package/dist/typed/Behaviors.js.map +1 -0
  1064. package/dist/typed/TypedActor.d.ts +28 -0
  1065. package/dist/typed/TypedActor.d.ts.map +1 -0
  1066. package/dist/typed/TypedActor.js +194 -0
  1067. package/dist/typed/TypedActor.js.map +1 -0
  1068. package/dist/typed/TypedActorContext.d.ts +29 -0
  1069. package/dist/typed/TypedActorContext.d.ts.map +1 -0
  1070. package/dist/typed/TypedActorContext.js +2 -0
  1071. package/dist/typed/TypedActorContext.js.map +1 -0
  1072. package/dist/typed/index.d.ts +7 -0
  1073. package/dist/typed/index.d.ts.map +1 -0
  1074. package/dist/typed/index.js +4 -0
  1075. package/dist/typed/index.js.map +1 -0
  1076. package/dist/typed/spawn.d.ts +14 -0
  1077. package/dist/typed/spawn.d.ts.map +1 -0
  1078. package/dist/typed/spawn.js +16 -0
  1079. package/dist/typed/spawn.js.map +1 -0
  1080. package/dist/util/Constants.d.ts +66 -0
  1081. package/dist/util/Constants.d.ts.map +1 -0
  1082. package/dist/util/Constants.js +66 -0
  1083. package/dist/util/Constants.js.map +1 -0
  1084. package/dist/util/Either.d.ts +100 -0
  1085. package/dist/util/Either.d.ts.map +1 -0
  1086. package/dist/util/Either.js +128 -0
  1087. package/dist/util/Either.js.map +1 -0
  1088. package/dist/util/Lazy.d.ts +82 -0
  1089. package/dist/util/Lazy.d.ts.map +1 -0
  1090. package/dist/util/Lazy.js +119 -0
  1091. package/dist/util/Lazy.js.map +1 -0
  1092. package/dist/util/LazyImport.d.ts +68 -0
  1093. package/dist/util/LazyImport.d.ts.map +1 -0
  1094. package/dist/util/LazyImport.js +64 -0
  1095. package/dist/util/LazyImport.js.map +1 -0
  1096. package/dist/util/Option.d.ts +105 -0
  1097. package/dist/util/Option.d.ts.map +1 -0
  1098. package/dist/util/Option.js +123 -0
  1099. package/dist/util/Option.js.map +1 -0
  1100. package/dist/util/TokenBucket.d.ts +59 -0
  1101. package/dist/util/TokenBucket.d.ts.map +1 -0
  1102. package/dist/util/TokenBucket.js +76 -0
  1103. package/dist/util/TokenBucket.js.map +1 -0
  1104. package/dist/util/Try.d.ts +103 -0
  1105. package/dist/util/Try.d.ts.map +1 -0
  1106. package/dist/util/Try.js +176 -0
  1107. package/dist/util/Try.js.map +1 -0
  1108. package/dist/util/WrapError.d.ts +42 -0
  1109. package/dist/util/WrapError.d.ts.map +1 -0
  1110. package/dist/util/WrapError.js +46 -0
  1111. package/dist/util/WrapError.js.map +1 -0
  1112. package/dist/worker/WorkerBroker.d.ts +29 -0
  1113. package/dist/worker/WorkerBroker.d.ts.map +1 -0
  1114. package/dist/worker/WorkerBroker.js +74 -0
  1115. package/dist/worker/WorkerBroker.js.map +1 -0
  1116. package/dist/worker/WorkerCluster.d.ts +68 -0
  1117. package/dist/worker/WorkerCluster.d.ts.map +1 -0
  1118. package/dist/worker/WorkerCluster.js +161 -0
  1119. package/dist/worker/WorkerCluster.js.map +1 -0
  1120. package/dist/worker/WorkerNode.d.ts +20 -0
  1121. package/dist/worker/WorkerNode.d.ts.map +1 -0
  1122. package/dist/worker/WorkerNode.js +84 -0
  1123. package/dist/worker/WorkerNode.js.map +1 -0
  1124. package/dist/worker/index.d.ts +6 -0
  1125. package/dist/worker/index.d.ts.map +1 -0
  1126. package/dist/worker/index.js +4 -0
  1127. package/dist/worker/index.js.map +1 -0
  1128. package/package.json +148 -0
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Wire-format helpers for the `_v / _t / _e` JSON envelope used by
3
+ * `PersistentActor` and `DurableStateActor` when an adapter is active.
4
+ *
5
+ * The envelope rides inside the existing `event` / `state` JSON slot of
6
+ * the journal / snapshot store, so no backend (InMemory, SQLite,
7
+ * Cassandra, object-storage) needs schema changes. The magic keys are
8
+ * `_v`, `_t`, `_e` — underscore-prefixed to make accidental collisions
9
+ * with domain types vanishingly unlikely.
10
+ */
11
+ /** Raised when adapter-driven decoding hits a malformed/legacy payload. */
12
+ export class MigrationError extends Error {
13
+ manifest;
14
+ version;
15
+ constructor(message, manifest, version) {
16
+ super(message);
17
+ this.manifest = manifest;
18
+ this.version = version;
19
+ this.name = 'MigrationError';
20
+ }
21
+ }
22
+ /** True iff `o` looks like a `JournalEnvelope`. */
23
+ export function isEnvelope(o) {
24
+ if (typeof o !== 'object' || o === null)
25
+ return false;
26
+ const env = o;
27
+ return typeof env._v === 'number'
28
+ && typeof env._t === 'string'
29
+ && '_e' in env;
30
+ }
31
+ /* ------------------------------ events ----------------------------------- */
32
+ /** Wrap a domain event into an envelope using the supplied adapter. */
33
+ export function encodeEvent(event, adapter) {
34
+ const frame = adapter.toJournal(event);
35
+ return { _v: frame.version, _t: frame.manifest, _e: frame.payload };
36
+ }
37
+ /**
38
+ * Decode a value read from the journal. When `adapter` is undefined the
39
+ * caller has not opted into the migration system — the value is returned
40
+ * as-is and is assumed to be a raw domain event. When `adapter` is
41
+ * defined, the value MUST be an envelope; otherwise a `MigrationError` is
42
+ * raised (strict mode — see plan §1).
43
+ */
44
+ export function decodeEvent(stored, adapter) {
45
+ if (!adapter)
46
+ return stored;
47
+ if (!isEnvelope(stored)) {
48
+ throw new MigrationError('expected envelope, got raw payload — eventAdapter is configured but the journal '
49
+ + 'contains an event without _v/_t/_e markers. Either run a one-shot migration '
50
+ + 'script to wrap legacy events, or remove eventAdapter() until you have envelopes '
51
+ + 'on disk.');
52
+ }
53
+ return adapter.fromJournal(toFrame(stored));
54
+ }
55
+ /* ----------------------------- snapshots --------------------------------- */
56
+ /** Wrap a snapshot state into an envelope using the supplied adapter. */
57
+ export function encodeState(state, adapter) {
58
+ const frame = adapter.toJournal(state);
59
+ return { _v: frame.version, _t: frame.manifest, _e: frame.payload };
60
+ }
61
+ /**
62
+ * Decode a state read from the snapshot store / durable-state store.
63
+ * Same strict semantics as `decodeEvent`.
64
+ */
65
+ export function decodeState(stored, adapter) {
66
+ if (!adapter)
67
+ return stored;
68
+ if (!isEnvelope(stored)) {
69
+ throw new MigrationError('expected envelope, got raw payload — a state/snapshot adapter is configured but '
70
+ + 'the persisted state has no _v/_t/_e markers. Wrap legacy state with a one-shot '
71
+ + 'migration script or drop the adapter until envelopes are on disk.');
72
+ }
73
+ return adapter.fromJournal(toFrame(stored));
74
+ }
75
+ /* ------------------------------ internal --------------------------------- */
76
+ function toFrame(env) {
77
+ return { manifest: env._t, version: env._v, payload: env._e };
78
+ }
79
+ //# sourceMappingURL=Envelope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Envelope.js","sourceRoot":"","sources":["../../../src/persistence/migration/Envelope.ts"],"names":[],"mappings":"AAOA;;;;;;;;;GASG;AAEH,2EAA2E;AAC3E,MAAM,OAAO,cAAe,SAAQ,KAAK;IAGrB;IACA;IAHlB,YACE,OAAe,EACC,QAAiB,EACjB,OAAgB;QAEhC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,aAAQ,GAAR,QAAQ,CAAS;QACjB,YAAO,GAAP,OAAO,CAAS;QAGhC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,mDAAmD;AACnD,MAAM,UAAU,UAAU,CAAC,CAAU;IACnC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,GAAG,GAAG,CAA4B,CAAC;IACzC,OAAO,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;WAC1B,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;WAC1B,IAAI,IAAI,GAAG,CAAC;AACrB,CAAC;AAED,+EAA+E;AAE/E,uEAAuE;AACvE,MAAM,UAAU,WAAW,CAAO,KAAQ,EAAE,OAA2B;IACrE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACvC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;AACtE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAI,MAAe,EAAE,OAAoC;IAClF,IAAI,CAAC,OAAO;QAAE,OAAO,MAAW,CAAC;IACjC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,cAAc,CACtB,kFAAkF;cAChF,+EAA+E;cAC/E,kFAAkF;cAClF,UAAU,CACb,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,+EAA+E;AAE/E,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAO,KAAQ,EAAE,OAA8B;IACxE,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACvC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;AACtE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAI,MAAe,EAAE,OAAuC;IACrF,IAAI,CAAC,OAAO;QAAE,OAAO,MAAW,CAAC;IACjC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,cAAc,CACtB,kFAAkF;cAChF,kFAAkF;cAClF,mEAAmE,CACtE,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,+EAA+E;AAE/E,SAAS,OAAO,CAAC,GAAoB;IACnC,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;AAChE,CAAC"}
@@ -0,0 +1,100 @@
1
+ import type { OutboundFrame, StoredFrame } from './Adapter.js';
2
+ /**
3
+ * One step in an upcaster pipeline — a pure function that maps a payload
4
+ * at version `fromVersion` to one at version `toVersion`. Steps are
5
+ * normally consecutive (`fromVersion + 1 === toVersion`); larger jumps
6
+ * are allowed but rare.
7
+ */
8
+ export interface MigrationStep<From = unknown, To = unknown> {
9
+ readonly fromVersion: number;
10
+ readonly toVersion: number;
11
+ upcast(from: From): To;
12
+ }
13
+ /**
14
+ * Inverse of {@link MigrationStep} — maps a current-shape payload back
15
+ * to an older shape on the **write** path (#7). Used during rolling
16
+ * deployments where v2 nodes need to keep emitting v1 events for as
17
+ * long as v1 readers are still in the cluster. Steps move backward:
18
+ * `fromVersion > toVersion`, typically `toVersion = fromVersion - 1`.
19
+ */
20
+ export interface DowncastStep<From = unknown, To = unknown> {
21
+ readonly fromVersion: number;
22
+ readonly toVersion: number;
23
+ downcast(from: From): To;
24
+ }
25
+ /**
26
+ * Linear chain of `MigrationStep`s for a single manifest, terminating at
27
+ * a `currentVersion` known to the running code. On `upcast(stored)`, the
28
+ * chain locates the step starting at `stored.version` and applies steps
29
+ * forward until it reaches `currentVersion`.
30
+ *
31
+ * The chain is intentionally narrow: one manifest, one current version,
32
+ * one linear path. Multiple types → multiple chains, kept inside an
33
+ * `EventAdapter.fromJournal` switch by manifest.
34
+ *
35
+ * const chain = MigrationChain.for<DepositedV2>('BankAccount.Deposited', 2)
36
+ * .add({ fromVersion: 1, toVersion: 2,
37
+ * upcast: (v: DepositedV1): DepositedV2 => ({ ...v, currency: 'USD' }) });
38
+ *
39
+ * `chain.upcast({ manifest: 'BankAccount.Deposited', version: 1, payload })`
40
+ * returns a `DepositedV2`.
41
+ *
42
+ * Errors:
43
+ * - manifest mismatch → `MigrationError`
44
+ * - `stored.version > currentVersion` (downgrade) → `MigrationError`
45
+ * - no step available at the current cursor before `currentVersion` is
46
+ * reached (chain gap) → `MigrationError` with the gap printed.
47
+ */
48
+ export declare class MigrationChain<Current> {
49
+ private readonly _manifest;
50
+ private readonly _currentVersion;
51
+ private readonly steps;
52
+ private readonly downsteps;
53
+ private constructor();
54
+ /** Build an empty chain for `manifest` whose latest known version is `currentVersion`. */
55
+ static for<C>(manifest: string, currentVersion: number): MigrationChain<C>;
56
+ /** Append an upcaster. Returns `this` for chaining. */
57
+ add<F, T>(step: MigrationStep<F, T>): MigrationChain<Current>;
58
+ /**
59
+ * Append a downcaster — the inverse of {@link MigrationStep}.
60
+ * Required when the actor is going to be configured with a
61
+ * `writeVersion` lower than `currentVersion` (#7). Steps move
62
+ * **backward**: `fromVersion > toVersion`.
63
+ *
64
+ * chain.addDown({
65
+ * fromVersion: 2, toVersion: 1,
66
+ * downcast: (e: DepositedV2): DepositedV1 => {
67
+ * const { currency, ...rest } = e; void currency; return rest;
68
+ * },
69
+ * });
70
+ */
71
+ addDown<F, T>(step: DowncastStep<F, T>): MigrationChain<Current>;
72
+ /** Manifest this chain is bound to. */
73
+ get manifest(): string;
74
+ /** Latest version this chain knows how to produce. */
75
+ get currentVersion(): number;
76
+ /** Apply the chain to a stored frame, returning a current-version value. */
77
+ upcast(stored: StoredFrame): Current;
78
+ /**
79
+ * Convert a current-shape value down to `targetVersion` for a
80
+ * write-with-old-shape rolling deploy (#7). Walks the registered
81
+ * downcasters from `currentVersion` toward `targetVersion`.
82
+ *
83
+ * Errors:
84
+ * - `targetVersion > currentVersion` → `MigrationError` (we're
85
+ * already at or above the target; user should call `toJournalAt`
86
+ * with `version: currentVersion`).
87
+ * - `targetVersion < 1` → `MigrationError`.
88
+ * - chain gap (no downcaster for the current cursor) →
89
+ * `MigrationError` with the missing step printed.
90
+ */
91
+ downcast(current: Current, targetVersion: number): unknown;
92
+ /**
93
+ * Build an `OutboundFrame` for the write path at `writeVersion`
94
+ * (defaults to `currentVersion`). Convenience that combines the
95
+ * downcast + frame-shape — exactly what `migratingAdapter` calls
96
+ * from its `toJournal`.
97
+ */
98
+ toJournalAt(current: Current, writeVersion?: number): OutboundFrame;
99
+ }
100
+ //# sourceMappingURL=MigrationChain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrationChain.d.ts","sourceRoot":"","sources":["../../../src/persistence/migration/MigrationChain.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,WAAW,aAAa,CAAC,IAAI,GAAG,OAAO,EAAE,EAAE,GAAG,OAAO;IACzD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY,CAAC,IAAI,GAAG,OAAO,EAAE,EAAE,GAAG,OAAO;IACxD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,cAAc,CAAC,OAAO;IAK/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,eAAe;IALlC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAC1D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAE7D,OAAO;IASP,0FAA0F;IAC1F,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAI1E,wDAAwD;IACxD,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC;IAmB7D;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC;IAwBhE,uCAAuC;IACvC,IAAI,QAAQ,IAAI,MAAM,CAA2B;IAEjD,sDAAsD;IACtD,IAAI,cAAc,IAAI,MAAM,CAAiC;IAE7D,4EAA4E;IAC5E,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO;IA8BpC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO;IA8B1D;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,aAAa;CAQpE"}
@@ -0,0 +1,159 @@
1
+ import { MigrationError } from './Envelope.js';
2
+ /**
3
+ * Linear chain of `MigrationStep`s for a single manifest, terminating at
4
+ * a `currentVersion` known to the running code. On `upcast(stored)`, the
5
+ * chain locates the step starting at `stored.version` and applies steps
6
+ * forward until it reaches `currentVersion`.
7
+ *
8
+ * The chain is intentionally narrow: one manifest, one current version,
9
+ * one linear path. Multiple types → multiple chains, kept inside an
10
+ * `EventAdapter.fromJournal` switch by manifest.
11
+ *
12
+ * const chain = MigrationChain.for<DepositedV2>('BankAccount.Deposited', 2)
13
+ * .add({ fromVersion: 1, toVersion: 2,
14
+ * upcast: (v: DepositedV1): DepositedV2 => ({ ...v, currency: 'USD' }) });
15
+ *
16
+ * `chain.upcast({ manifest: 'BankAccount.Deposited', version: 1, payload })`
17
+ * returns a `DepositedV2`.
18
+ *
19
+ * Errors:
20
+ * - manifest mismatch → `MigrationError`
21
+ * - `stored.version > currentVersion` (downgrade) → `MigrationError`
22
+ * - no step available at the current cursor before `currentVersion` is
23
+ * reached (chain gap) → `MigrationError` with the gap printed.
24
+ */
25
+ export class MigrationChain {
26
+ _manifest;
27
+ _currentVersion;
28
+ steps = new Map();
29
+ downsteps = new Map();
30
+ constructor(_manifest, _currentVersion) {
31
+ this._manifest = _manifest;
32
+ this._currentVersion = _currentVersion;
33
+ if (!Number.isInteger(_currentVersion) || _currentVersion < 1) {
34
+ throw new Error(`MigrationChain currentVersion must be a positive integer, got ${_currentVersion}`);
35
+ }
36
+ }
37
+ /** Build an empty chain for `manifest` whose latest known version is `currentVersion`. */
38
+ static for(manifest, currentVersion) {
39
+ return new MigrationChain(manifest, currentVersion);
40
+ }
41
+ /** Append an upcaster. Returns `this` for chaining. */
42
+ add(step) {
43
+ if (step.fromVersion >= step.toVersion) {
44
+ throw new Error(`MigrationStep must move forward: fromVersion ${step.fromVersion} >= toVersion ${step.toVersion}`);
45
+ }
46
+ if (step.toVersion > this._currentVersion) {
47
+ throw new Error(`MigrationStep targets v${step.toVersion} but chain currentVersion is ${this._currentVersion}`);
48
+ }
49
+ const existing = this.steps.get(step.fromVersion);
50
+ if (existing) {
51
+ throw new Error(`MigrationChain already has a step starting at v${step.fromVersion} (→ v${existing.toVersion}); cannot add another`);
52
+ }
53
+ this.steps.set(step.fromVersion, step);
54
+ return this;
55
+ }
56
+ /**
57
+ * Append a downcaster — the inverse of {@link MigrationStep}.
58
+ * Required when the actor is going to be configured with a
59
+ * `writeVersion` lower than `currentVersion` (#7). Steps move
60
+ * **backward**: `fromVersion > toVersion`.
61
+ *
62
+ * chain.addDown({
63
+ * fromVersion: 2, toVersion: 1,
64
+ * downcast: (e: DepositedV2): DepositedV1 => {
65
+ * const { currency, ...rest } = e; void currency; return rest;
66
+ * },
67
+ * });
68
+ */
69
+ addDown(step) {
70
+ if (step.fromVersion <= step.toVersion) {
71
+ throw new Error(`DowncastStep must move backward: fromVersion ${step.fromVersion} <= toVersion ${step.toVersion}`);
72
+ }
73
+ if (step.fromVersion > this._currentVersion) {
74
+ throw new Error(`DowncastStep starts at v${step.fromVersion} but chain currentVersion is ${this._currentVersion}`);
75
+ }
76
+ if (step.toVersion < 1) {
77
+ throw new Error(`DowncastStep targets v${step.toVersion} which is below the v1 floor`);
78
+ }
79
+ const existing = this.downsteps.get(step.fromVersion);
80
+ if (existing) {
81
+ throw new Error(`MigrationChain already has a downcaster starting at v${step.fromVersion} (→ v${existing.toVersion}); cannot add another`);
82
+ }
83
+ this.downsteps.set(step.fromVersion, step);
84
+ return this;
85
+ }
86
+ /** Manifest this chain is bound to. */
87
+ get manifest() { return this._manifest; }
88
+ /** Latest version this chain knows how to produce. */
89
+ get currentVersion() { return this._currentVersion; }
90
+ /** Apply the chain to a stored frame, returning a current-version value. */
91
+ upcast(stored) {
92
+ if (stored.manifest !== this._manifest) {
93
+ throw new MigrationError(`manifest mismatch: chain is for '${this._manifest}', got '${stored.manifest}'`, stored.manifest, stored.version);
94
+ }
95
+ if (stored.version > this._currentVersion) {
96
+ throw new MigrationError(`cannot downgrade '${stored.manifest}' from v${stored.version} to v${this._currentVersion}`, stored.manifest, stored.version);
97
+ }
98
+ let cursor = stored.version;
99
+ let payload = stored.payload;
100
+ while (cursor < this._currentVersion) {
101
+ const step = this.steps.get(cursor);
102
+ if (!step) {
103
+ throw new MigrationError(`no upcaster registered for '${stored.manifest}' starting at v${cursor} `
104
+ + `(target v${this._currentVersion}); add a MigrationStep with fromVersion=${cursor}`, stored.manifest, stored.version);
105
+ }
106
+ payload = step.upcast(payload);
107
+ cursor = step.toVersion;
108
+ }
109
+ return payload;
110
+ }
111
+ /**
112
+ * Convert a current-shape value down to `targetVersion` for a
113
+ * write-with-old-shape rolling deploy (#7). Walks the registered
114
+ * downcasters from `currentVersion` toward `targetVersion`.
115
+ *
116
+ * Errors:
117
+ * - `targetVersion > currentVersion` → `MigrationError` (we're
118
+ * already at or above the target; user should call `toJournalAt`
119
+ * with `version: currentVersion`).
120
+ * - `targetVersion < 1` → `MigrationError`.
121
+ * - chain gap (no downcaster for the current cursor) →
122
+ * `MigrationError` with the missing step printed.
123
+ */
124
+ downcast(current, targetVersion) {
125
+ if (!Number.isInteger(targetVersion) || targetVersion < 1) {
126
+ throw new MigrationError(`targetVersion must be a positive integer, got ${targetVersion}`, this._manifest, this._currentVersion);
127
+ }
128
+ if (targetVersion > this._currentVersion) {
129
+ throw new MigrationError(`cannot downcast '${this._manifest}' from current v${this._currentVersion} to v${targetVersion}: target is newer`, this._manifest, this._currentVersion);
130
+ }
131
+ let cursor = this._currentVersion;
132
+ let payload = current;
133
+ while (cursor > targetVersion) {
134
+ const step = this.downsteps.get(cursor);
135
+ if (!step) {
136
+ throw new MigrationError(`no downcaster registered for '${this._manifest}' starting at v${cursor} `
137
+ + `(target v${targetVersion}); add a DowncastStep with fromVersion=${cursor}`, this._manifest, this._currentVersion);
138
+ }
139
+ payload = step.downcast(payload);
140
+ cursor = step.toVersion;
141
+ }
142
+ return payload;
143
+ }
144
+ /**
145
+ * Build an `OutboundFrame` for the write path at `writeVersion`
146
+ * (defaults to `currentVersion`). Convenience that combines the
147
+ * downcast + frame-shape — exactly what `migratingAdapter` calls
148
+ * from its `toJournal`.
149
+ */
150
+ toJournalAt(current, writeVersion) {
151
+ const v = writeVersion ?? this._currentVersion;
152
+ return {
153
+ manifest: this._manifest,
154
+ version: v,
155
+ payload: v === this._currentVersion ? current : this.downcast(current, v),
156
+ };
157
+ }
158
+ }
159
+ //# sourceMappingURL=MigrationChain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrationChain.js","sourceRoot":"","sources":["../../../src/persistence/migration/MigrationChain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import type { EventAdapter, SnapshotAdapter } from './Adapter.js';
2
+ import type { Codec } from './Codec.js';
3
+ /**
4
+ * In-process schema registry (#6). Stores `(manifest, version) →
5
+ * { codec, upcast? }` triples plus an optional compatibility check
6
+ * that fires at register time. Builds an `EventAdapter` /
7
+ * `SnapshotAdapter` on demand that:
8
+ *
9
+ * - **Writes** at the latest registered version using that
10
+ * version's codec — so encode-time validation catches bad
11
+ * domain values before they hit the journal.
12
+ * - **Reads** by looking up the stored version, decoding with
13
+ * that version's codec, then chaining the registered upcasters
14
+ * forward to the latest version.
15
+ *
16
+ * Confluent-style HTTP schema registries (subject-versioned with
17
+ * remote compat checks) are out-of-scope for v1. The interface
18
+ * below is wide enough that a user can swap in their own
19
+ * implementation and the rest of the migration machinery continues
20
+ * to work.
21
+ *
22
+ * const registry = new InMemorySchemaRegistry();
23
+ *
24
+ * registry.register('BankAccount.Deposited', 1, {
25
+ * codec: zodCodec(DepositedV1),
26
+ * });
27
+ *
28
+ * registry.register('BankAccount.Deposited', 2, {
29
+ * codec: zodCodec(DepositedV2),
30
+ * upcastFromPrev: (v1: DepositedV1): DepositedV2 => ({ ...v1, currency: 'USD' }),
31
+ * compatibility: 'backward',
32
+ * });
33
+ *
34
+ * class Account extends PersistentActor<...> {
35
+ * eventAdapter() {
36
+ * return registry.eventAdapter<DepositedV2>('BankAccount.Deposited');
37
+ * }
38
+ * }
39
+ *
40
+ * **Compatibility modes.**
41
+ *
42
+ * - `'none'` (default) — no check. Use when you've already
43
+ * verified compat externally or for v1 of a manifest where
44
+ * there's no previous version yet.
45
+ * - `'backward'` — at register time, verify the registry holds an
46
+ * `upcastFromPrev` from the version you just registered's
47
+ * immediate predecessor. This is the structural minimum that
48
+ * guarantees the read path still works for old data.
49
+ * - `'sample'` — same as `'backward'` plus a round-trip on a
50
+ * user-supplied sample value: the sample is decoded by the
51
+ * previous codec, upcast, and re-encoded by the new codec; if
52
+ * the round-trip throws, the registration is rejected. Catches
53
+ * latent upcaster bugs at register time rather than at
54
+ * deployment time.
55
+ */
56
+ /** What a single registered version contributes to the registry. */
57
+ export interface SchemaRegistration<Wire = unknown, Upcasted = unknown> {
58
+ /** Codec used to validate / shape payloads at this version. */
59
+ readonly codec: Codec<Wire>;
60
+ /**
61
+ * Pure function `prevVersionDomain → thisVersionDomain` used on
62
+ * the read path to bring data forward. Required for any version
63
+ * > 1 if reads from older data are expected to succeed.
64
+ */
65
+ readonly upcastFromPrev?: (prev: unknown) => Upcasted;
66
+ /** Compatibility-check mode applied at register time. Default `'none'`. */
67
+ readonly compatibility?: 'none' | 'backward' | 'sample';
68
+ /**
69
+ * Optional sample value used by `'sample'` compat checks — passed
70
+ * through the previous version's encode → decode → upcast → this
71
+ * version's encode round-trip. Throws if any step fails.
72
+ */
73
+ readonly sample?: unknown;
74
+ }
75
+ export interface SchemaDescriptor extends SchemaRegistration {
76
+ readonly manifest: string;
77
+ readonly version: number;
78
+ }
79
+ /** Public API of any schema registry impl. */
80
+ export interface SchemaRegistry {
81
+ /**
82
+ * Add or replace the registration for `(manifest, version)`.
83
+ * Runs the configured compat check; throws on incompatibility.
84
+ * Re-registering the same `(manifest, version)` overwrites — the
85
+ * registry doesn't enforce immutability, that's an operator
86
+ * concern.
87
+ */
88
+ register<Wire = unknown, Upcasted = unknown>(manifest: string, version: number, registration: SchemaRegistration<Wire, Upcasted>): void;
89
+ /** Look up the registration for `(manifest, version)`, if any. */
90
+ get(manifest: string, version: number): SchemaDescriptor | undefined;
91
+ /** Highest registered version for `manifest`, or `undefined` if unknown. */
92
+ latestVersion(manifest: string): number | undefined;
93
+ /** Snapshot of every registration — primarily for debugging / introspection. */
94
+ list(): ReadonlyArray<SchemaDescriptor>;
95
+ /**
96
+ * Build an `EventAdapter` that writes at the latest registered
97
+ * version of `manifest` and reads any registered version by
98
+ * chaining upcasters forward.
99
+ */
100
+ eventAdapter<E>(manifest: string): EventAdapter<E, unknown>;
101
+ /** Same as `eventAdapter` but typed for snapshot/state actors. */
102
+ snapshotAdapter<S>(manifest: string): SnapshotAdapter<S, unknown>;
103
+ }
104
+ /** In-memory `SchemaRegistry` impl. All state lives in one process. */
105
+ export declare class InMemorySchemaRegistry implements SchemaRegistry {
106
+ private readonly entries;
107
+ register<Wire = unknown, Upcasted = unknown>(manifest: string, version: number, registration: SchemaRegistration<Wire, Upcasted>): void;
108
+ get(manifest: string, version: number): SchemaDescriptor | undefined;
109
+ latestVersion(manifest: string): number | undefined;
110
+ list(): ReadonlyArray<SchemaDescriptor>;
111
+ eventAdapter<E>(manifest: string): EventAdapter<E, unknown>;
112
+ snapshotAdapter<S>(manifest: string): SnapshotAdapter<S, unknown>;
113
+ }
114
+ //# sourceMappingURL=SchemaRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaRegistry.d.ts","sourceRoot":"","sources":["../../../src/persistence/migration/SchemaRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAiB,eAAe,EAAe,MAAM,cAAc,CAAC;AAC9F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,oEAAoE;AACpE,MAAM,WAAW,kBAAkB,CAAC,IAAI,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO;IACpE,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,QAAQ,CAAC;IACtD,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;IACxD;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,8CAA8C;AAC9C,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,EACzC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EACjC,YAAY,EAAE,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,GAC/C,IAAI,CAAC;IAER,kEAAkE;IAClE,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAErE,4EAA4E;IAC5E,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAEpD,gFAAgF;IAChF,IAAI,IAAI,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAExC;;;;OAIG;IACH,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAE5D,kEAAkE;IAClE,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;CACnE;AAID,wEAAwE;AACxE,qBAAa,sBAAuB,YAAW,cAAc;IAC3D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoD;IAE5E,QAAQ,CAAC,IAAI,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,EACzC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EACjC,YAAY,EAAE,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,GAC/C,IAAI;IAoDP,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIpE,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAQnD,IAAI,IAAI,aAAa,CAAC,gBAAgB,CAAC;IAQvC,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC;IA+C3D,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC;CAIlE"}
@@ -0,0 +1,112 @@
1
+ import { MigrationError } from './Envelope.js';
2
+ /* ============================== impl ================================== */
3
+ /** In-memory `SchemaRegistry` impl. All state lives in one process. */
4
+ export class InMemorySchemaRegistry {
5
+ entries = new Map();
6
+ register(manifest, version, registration) {
7
+ if (!Number.isInteger(version) || version < 1) {
8
+ throw new Error(`SchemaRegistry.register: version must be a positive integer, got ${version}`);
9
+ }
10
+ const compat = registration.compatibility ?? 'none';
11
+ if (compat !== 'none') {
12
+ const prev = this.get(manifest, version - 1);
13
+ if (!prev) {
14
+ throw new Error(`SchemaRegistry.register: compatibility '${compat}' requested for ${manifest}@v${version}, `
15
+ + `but v${version - 1} is not registered`);
16
+ }
17
+ if (!registration.upcastFromPrev) {
18
+ throw new Error(`SchemaRegistry.register: ${manifest}@v${version} compatibility=${compat} requires upcastFromPrev`);
19
+ }
20
+ if (compat === 'sample') {
21
+ if (registration.sample === undefined) {
22
+ throw new Error(`SchemaRegistry.register: ${manifest}@v${version} compatibility='sample' requires a sample value`);
23
+ }
24
+ try {
25
+ const wirePrev = prev.codec.encode(registration.sample);
26
+ const decodedPrev = prev.codec.decode(wirePrev);
27
+ const upcasted = registration.upcastFromPrev(decodedPrev);
28
+ // Re-encode through the new codec — if the upcasted value
29
+ // doesn't match the new schema, the register fails loud.
30
+ registration.codec.encode(upcasted);
31
+ }
32
+ catch (err) {
33
+ throw new Error(`SchemaRegistry.register: ${manifest}@v${version} sample-compat check failed: `
34
+ + (err instanceof Error ? err.message : String(err)));
35
+ }
36
+ }
37
+ }
38
+ const descriptor = {
39
+ manifest, version,
40
+ codec: registration.codec,
41
+ upcastFromPrev: registration.upcastFromPrev,
42
+ compatibility: compat,
43
+ sample: registration.sample,
44
+ };
45
+ let bucket = this.entries.get(manifest);
46
+ if (!bucket) {
47
+ bucket = new Map();
48
+ this.entries.set(manifest, bucket);
49
+ }
50
+ bucket.set(version, descriptor);
51
+ }
52
+ get(manifest, version) {
53
+ return this.entries.get(manifest)?.get(version);
54
+ }
55
+ latestVersion(manifest) {
56
+ const bucket = this.entries.get(manifest);
57
+ if (!bucket || bucket.size === 0)
58
+ return undefined;
59
+ let latest = -Infinity;
60
+ for (const v of bucket.keys())
61
+ if (v > latest)
62
+ latest = v;
63
+ return latest === -Infinity ? undefined : latest;
64
+ }
65
+ list() {
66
+ const out = [];
67
+ for (const bucket of this.entries.values()) {
68
+ for (const d of bucket.values())
69
+ out.push(d);
70
+ }
71
+ return out;
72
+ }
73
+ eventAdapter(manifest) {
74
+ const adapter = {
75
+ manifest: () => manifest,
76
+ toJournal: (event) => {
77
+ const latest = this.latestVersion(manifest);
78
+ if (latest === undefined) {
79
+ throw new MigrationError(`SchemaRegistry: no schema registered for '${manifest}' on the write path`, manifest);
80
+ }
81
+ const desc = this.get(manifest, latest);
82
+ const validated = desc.codec.encode(event);
83
+ return { manifest, version: latest, payload: validated };
84
+ },
85
+ fromJournal: (stored) => {
86
+ const startDesc = this.get(stored.manifest, stored.version);
87
+ if (!startDesc) {
88
+ throw new MigrationError(`SchemaRegistry: no schema registered for '${stored.manifest}'@v${stored.version} on the read path`, stored.manifest, stored.version);
89
+ }
90
+ let value = startDesc.codec.decode(stored.payload);
91
+ const latest = this.latestVersion(stored.manifest);
92
+ for (let v = stored.version + 1; v <= latest; v++) {
93
+ const desc = this.get(stored.manifest, v);
94
+ if (!desc) {
95
+ throw new MigrationError(`SchemaRegistry: gap on the upcast path for '${stored.manifest}': v${v} not registered`, stored.manifest, stored.version);
96
+ }
97
+ if (!desc.upcastFromPrev) {
98
+ throw new MigrationError(`SchemaRegistry: ${stored.manifest}@v${v} has no upcastFromPrev — cannot bring v${stored.version} forward`, stored.manifest, stored.version);
99
+ }
100
+ value = desc.upcastFromPrev(value);
101
+ }
102
+ return value;
103
+ },
104
+ };
105
+ return adapter;
106
+ }
107
+ snapshotAdapter(manifest) {
108
+ // Same shape as eventAdapter — keep one implementation, two types.
109
+ return this.eventAdapter(manifest);
110
+ }
111
+ }
112
+ //# sourceMappingURL=SchemaRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaRegistry.js","sourceRoot":"","sources":["../../../src/persistence/migration/SchemaRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { EventAdapter, SnapshotAdapter } from './Adapter.js';
2
+ /**
3
+ * Spec for `defaultsAdapter` / `defaultsSnapshotAdapter`.
4
+ *
5
+ * manifest — stable type identity, e.g. 'BankAccount.Deposited'
6
+ * currentVersion — version emitted by *this* code revision
7
+ * defaults[fromV] — fields to merge in when reading a payload at
8
+ * version fromV that is then carried forward to
9
+ * version fromV+1 by simple object spread
10
+ * writeVersion — version to emit on `toJournal` (#7). Defaults to
11
+ * `currentVersion`. When set lower than current,
12
+ * fields added at versions in `[writeVersion+1,
13
+ * currentVersion]` are stripped on write — the
14
+ * mechanical inverse of the additive `defaults`
15
+ * merge. Used during rolling deploys: v2 nodes
16
+ * keep emitting v1 events while v1 readers still
17
+ * exist; flip `writeVersion` to v2 once every
18
+ * reader has been upgraded.
19
+ *
20
+ * The merge is `{ ...defaults[fromV], ...payload }` — the stored payload
21
+ * always wins, so existing fields are never overwritten by defaults.
22
+ * Run repeatedly for every step on the path stored→currentVersion.
23
+ */
24
+ export interface DefaultsAdapterSpec<E> {
25
+ readonly manifest: string;
26
+ readonly currentVersion: number;
27
+ readonly defaults: {
28
+ readonly [fromVersion: number]: Partial<E>;
29
+ };
30
+ readonly writeVersion?: number;
31
+ }
32
+ /**
33
+ * Build an `EventAdapter` that handles **purely additive** evolution:
34
+ * every step from the stored version up to `currentVersion` merges in a
35
+ * fixed set of default field values for the fields added at that step.
36
+ *
37
+ * // v1 → v2 added a `currency: 'USD' | 'EUR'` field
38
+ * const adapter = defaultsAdapter<DepositedV2>({
39
+ * manifest: 'BankAccount.Deposited',
40
+ * currentVersion: 2,
41
+ * defaults: { 1: { currency: 'USD' } },
42
+ * });
43
+ *
44
+ * Limitations — this helper only handles **adding new fields with constant
45
+ * defaults**. Renames, type changes, splits, merges, derived fields all
46
+ * require a hand-written `MigrationChain`. When in doubt, write the
47
+ * chain.
48
+ */
49
+ export declare function defaultsAdapter<E extends object>(spec: DefaultsAdapterSpec<E>): EventAdapter<E, E>;
50
+ /**
51
+ * Same shape as `defaultsAdapter` but returns a `SnapshotAdapter` —
52
+ * convenience alias for snapshot / durable-state cases where the same
53
+ * additive semantics apply to the state record.
54
+ */
55
+ export declare function defaultsSnapshotAdapter<S extends object>(spec: DefaultsAdapterSpec<S>): SnapshotAdapter<S, S>;
56
+ //# sourceMappingURL=defaultsAdapter.d.ts.map