@proto-kit/protocol 0.1.1-develop.600 → 0.1.1-develop.833

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 (285) hide show
  1. package/LICENSE.md +201 -201
  2. package/dist/blockmodules/AccountStateModule.d.ts +37 -37
  3. package/dist/blockmodules/AccountStateModule.js +43 -43
  4. package/dist/blockmodules/BlockHeightHook.d.ts +6 -6
  5. package/dist/blockmodules/BlockHeightHook.js +15 -15
  6. package/dist/blockmodules/LastStateRootBlockHook.d.ts +7 -7
  7. package/dist/blockmodules/LastStateRootBlockHook.js +15 -15
  8. package/dist/blockmodules/NoopBlockHook.d.ts +8 -8
  9. package/dist/blockmodules/NoopBlockHook.js +9 -9
  10. package/dist/blockmodules/NoopSettlementHook.d.ts +5 -5
  11. package/dist/blockmodules/NoopSettlementHook.d.ts.map +1 -1
  12. package/dist/blockmodules/NoopSettlementHook.js +18 -18
  13. package/dist/blockmodules/NoopTransactionHook.d.ts +5 -5
  14. package/dist/blockmodules/NoopTransactionHook.js +4 -4
  15. package/dist/hooks/AccountStateHook.d.ts +19 -5
  16. package/dist/hooks/AccountStateHook.d.ts.map +1 -1
  17. package/dist/hooks/AccountStateHook.js +15 -9
  18. package/dist/hooks/BlockHeightHook.d.ts +3 -3
  19. package/dist/hooks/BlockHeightHook.d.ts.map +1 -1
  20. package/dist/hooks/BlockHeightHook.js +5 -4
  21. package/dist/hooks/LastStateRootBlockHook.d.ts +8 -0
  22. package/dist/hooks/LastStateRootBlockHook.d.ts.map +1 -0
  23. package/dist/hooks/LastStateRootBlockHook.js +15 -0
  24. package/dist/hooks/NoopBlockHook.d.ts +6 -4
  25. package/dist/hooks/NoopBlockHook.d.ts.map +1 -1
  26. package/dist/hooks/NoopBlockHook.js +4 -4
  27. package/dist/hooks/NoopSettlementHook.d.ts +6 -0
  28. package/dist/hooks/NoopSettlementHook.d.ts.map +1 -0
  29. package/dist/hooks/NoopSettlementHook.js +17 -0
  30. package/dist/hooks/NoopTransactionHook.d.ts +1 -1
  31. package/dist/hooks/NoopTransactionHook.d.ts.map +1 -1
  32. package/dist/hooks/NoopTransactionHook.js +4 -1
  33. package/dist/index.d.ts +18 -8
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +18 -8
  36. package/dist/model/MethodPublicOutput.d.ts +68 -34
  37. package/dist/model/MethodPublicOutput.d.ts.map +1 -1
  38. package/dist/model/Option.d.ts +39 -19
  39. package/dist/model/Option.d.ts.map +1 -1
  40. package/dist/model/Option.js +6 -0
  41. package/dist/model/Path.d.ts +1 -1
  42. package/dist/model/Path.d.ts.map +1 -1
  43. package/dist/model/Path.js +0 -2
  44. package/dist/model/RuntimeLike.d.ts +11 -0
  45. package/dist/model/RuntimeLike.d.ts.map +1 -0
  46. package/dist/model/RuntimeLike.js +1 -0
  47. package/dist/model/StateTransition.d.ts +51 -14
  48. package/dist/model/StateTransition.d.ts.map +1 -1
  49. package/dist/model/StateTransition.js +3 -0
  50. package/dist/model/StateTransitionProvableBatch.d.ts +71 -14
  51. package/dist/model/StateTransitionProvableBatch.d.ts.map +1 -1
  52. package/dist/model/StateTransitionReduction.d.ts +3 -0
  53. package/dist/model/StateTransitionReduction.d.ts.map +1 -0
  54. package/dist/model/StateTransitionReduction.js +26 -0
  55. package/dist/model/network/NetworkState.d.ts +73 -18
  56. package/dist/model/network/NetworkState.d.ts.map +1 -1
  57. package/dist/model/network/NetworkState.js +2 -2
  58. package/dist/model/transaction/ProtocolTransaction.d.ts +69 -69
  59. package/dist/model/transaction/ProtocolTransaction.js +18 -18
  60. package/dist/model/transaction/RuntimeTransaction.d.ts +50 -16
  61. package/dist/model/transaction/RuntimeTransaction.d.ts.map +1 -1
  62. package/dist/model/transaction/RuntimeTransaction.js +4 -4
  63. package/dist/model/transaction/SignedTransaction.d.ts +39 -3
  64. package/dist/model/transaction/SignedTransaction.d.ts.map +1 -1
  65. package/dist/model/transaction/SignedTransaction.js +1 -1
  66. package/dist/model/transaction/ValueOption.d.ts +86 -32
  67. package/dist/model/transaction/ValueOption.d.ts.map +1 -1
  68. package/dist/model/transaction/ValueOption.js +1 -1
  69. package/dist/protocol/Protocol.d.ts +14 -20
  70. package/dist/protocol/Protocol.d.ts.map +1 -1
  71. package/dist/protocol/Protocol.js +13 -27
  72. package/dist/protocol/ProtocolEnvironment.d.ts +3 -3
  73. package/dist/protocol/ProtocolEnvironment.d.ts.map +1 -1
  74. package/dist/protocol/ProtocolModule.d.ts +1 -0
  75. package/dist/protocol/ProtocolModule.d.ts.map +1 -1
  76. package/dist/protocol/ProtocolModule.js +4 -2
  77. package/dist/protocol/ProvableBlockHook.d.ts +2 -2
  78. package/dist/protocol/ProvableBlockHook.d.ts.map +1 -1
  79. package/dist/protocol/ProvableTransactionHook.d.ts +1 -1
  80. package/dist/protocol/ProvableTransactionHook.d.ts.map +1 -1
  81. package/dist/prover/block/BlockProvable.d.ts +240 -98
  82. package/dist/prover/block/BlockProvable.d.ts.map +1 -1
  83. package/dist/prover/block/BlockProver.d.ts +8 -8
  84. package/dist/prover/block/BlockProver.d.ts.map +1 -1
  85. package/dist/prover/block/BlockProver.js +55 -45
  86. package/dist/prover/block/BlockTransactionPosition.d.ts +35 -35
  87. package/dist/prover/block/BlockTransactionPosition.js +25 -25
  88. package/dist/prover/block/BundleTransactionPosition.d.ts +36 -0
  89. package/dist/prover/block/BundleTransactionPosition.d.ts.map +1 -0
  90. package/dist/prover/block/BundleTransactionPosition.js +25 -0
  91. package/dist/prover/block/SplitPrefilledStateService.d.ts +11 -0
  92. package/dist/prover/block/SplitPrefilledStateService.d.ts.map +1 -0
  93. package/dist/prover/block/SplitPrefilledStateService.js +1 -0
  94. package/dist/prover/block/SplitStateService.d.ts +11 -0
  95. package/dist/prover/block/SplitStateService.d.ts.map +1 -0
  96. package/dist/prover/block/SplitStateService.js +1 -0
  97. package/dist/prover/block/accummulators/BlockHashMerkleTree.d.ts +35 -16
  98. package/dist/prover/block/accummulators/BlockHashMerkleTree.d.ts.map +1 -1
  99. package/dist/prover/block/accummulators/BlockHashMerkleTree.js +1 -1
  100. package/dist/prover/block/acummulators/BlockHashMerkleTree.d.ts +45 -0
  101. package/dist/prover/block/acummulators/BlockHashMerkleTree.d.ts.map +1 -0
  102. package/dist/prover/block/acummulators/BlockHashMerkleTree.js +16 -0
  103. package/dist/prover/statetransition/StateTransitionProvable.d.ts +116 -58
  104. package/dist/prover/statetransition/StateTransitionProvable.d.ts.map +1 -1
  105. package/dist/prover/statetransition/StateTransitionProver.d.ts +10 -9
  106. package/dist/prover/statetransition/StateTransitionProver.d.ts.map +1 -1
  107. package/dist/prover/statetransition/StateTransitionProver.js +18 -22
  108. package/dist/prover/statetransition/StateTransitionWitnessProvider.js +1 -2
  109. package/dist/prover/statetransition/StateTransitionWitnessProviderReference.js +1 -2
  110. package/dist/settlement/ContractModule.d.ts +15 -0
  111. package/dist/settlement/ContractModule.d.ts.map +1 -0
  112. package/dist/settlement/ContractModule.js +11 -0
  113. package/dist/settlement/DispatchContract.d.ts +20 -0
  114. package/dist/settlement/DispatchContract.d.ts.map +1 -0
  115. package/dist/settlement/DispatchContract.js +112 -0
  116. package/dist/settlement/OutgoingMessageArgument.d.ts +109 -0
  117. package/dist/settlement/OutgoingMessageArgument.d.ts.map +1 -0
  118. package/dist/settlement/OutgoingMessageArgument.js +32 -0
  119. package/dist/settlement/ProvableSettlementHook.d.ts +25 -25
  120. package/dist/settlement/ProvableSettlementHook.js +3 -3
  121. package/dist/settlement/SettlementContract.d.ts +229 -229
  122. package/dist/settlement/SettlementContract.js +346 -346
  123. package/dist/settlement/SettlementContractModule.d.ts +40 -0
  124. package/dist/settlement/SettlementContractModule.d.ts.map +1 -0
  125. package/dist/settlement/SettlementContractModule.js +71 -0
  126. package/dist/settlement/contracts/DispatchContract.d.ts +21 -0
  127. package/dist/settlement/contracts/DispatchContract.d.ts.map +1 -0
  128. package/dist/settlement/contracts/DispatchContract.js +111 -0
  129. package/dist/settlement/contracts/DispatchContractProtocolModule.d.ts +12 -0
  130. package/dist/settlement/contracts/DispatchContractProtocolModule.d.ts.map +1 -0
  131. package/dist/{hooks/TransactionFeeHook.js → settlement/contracts/DispatchContractProtocolModule.js} +17 -21
  132. package/dist/settlement/contracts/DispatchSmartContract.d.ts +22 -0
  133. package/dist/settlement/contracts/DispatchSmartContract.d.ts.map +1 -0
  134. package/dist/settlement/contracts/DispatchSmartContract.js +110 -0
  135. package/dist/settlement/contracts/SettlementContract.d.ts +19 -0
  136. package/dist/settlement/contracts/SettlementContract.d.ts.map +1 -0
  137. package/dist/settlement/contracts/SettlementContract.js +43 -0
  138. package/dist/settlement/contracts/SettlementContractProtocolModule.d.ts +19 -0
  139. package/dist/settlement/contracts/SettlementContractProtocolModule.d.ts.map +1 -0
  140. package/dist/settlement/contracts/SettlementContractProtocolModule.js +44 -0
  141. package/dist/settlement/contracts/SettlementSmartContract.d.ts +42 -0
  142. package/dist/settlement/contracts/SettlementSmartContract.d.ts.map +1 -0
  143. package/dist/settlement/contracts/SettlementSmartContract.js +246 -0
  144. package/dist/settlement/messages/Deposit.d.ts +64 -0
  145. package/dist/settlement/messages/Deposit.d.ts.map +1 -0
  146. package/dist/settlement/messages/Deposit.js +6 -0
  147. package/dist/settlement/messages/OutgoingMessageArgument.d.ts +189 -0
  148. package/dist/settlement/messages/OutgoingMessageArgument.d.ts.map +1 -0
  149. package/dist/settlement/messages/OutgoingMessageArgument.js +32 -0
  150. package/dist/settlement/messages/Withdrawal.d.ts +65 -0
  151. package/dist/settlement/messages/Withdrawal.d.ts.map +1 -0
  152. package/dist/settlement/messages/Withdrawal.js +13 -0
  153. package/dist/settlement/modularity/ProvableSettlementHook.d.ts +24 -0
  154. package/dist/settlement/modularity/ProvableSettlementHook.d.ts.map +1 -0
  155. package/dist/settlement/modularity/ProvableSettlementHook.js +3 -0
  156. package/dist/settlement/modules/NetworkStateSettlementModule.d.ts +3 -3
  157. package/dist/settlement/modules/NetworkStateSettlementModule.d.ts.map +1 -1
  158. package/dist/settlement/modules/NetworkStateSettlementModule.js +4 -2
  159. package/dist/state/State.d.ts +4 -3
  160. package/dist/state/State.d.ts.map +1 -1
  161. package/dist/state/State.js +18 -12
  162. package/dist/state/StateMap.d.ts +3 -3
  163. package/dist/state/StateMap.d.ts.map +1 -1
  164. package/dist/state/StateMap.js +4 -5
  165. package/dist/state/StateService.d.ts +3 -3
  166. package/dist/state/StateService.d.ts.map +1 -1
  167. package/dist/state/StateServiceProvider.d.ts +3 -3
  168. package/dist/state/StateServiceProvider.d.ts.map +1 -1
  169. package/dist/state/StateServiceProvider.js +1 -3
  170. package/dist/state/assert/assert.d.ts +1 -1
  171. package/dist/state/assert/assert.d.ts.map +1 -1
  172. package/dist/state/assert/assert.js +11 -5
  173. package/dist/state/context/ProtocolMethodExecutionContext.d.ts +1 -1
  174. package/dist/state/context/ProtocolMethodExecutionContext.d.ts.map +1 -1
  175. package/dist/state/context/ProtocolMethodExecutionContext.js +1 -1
  176. package/dist/state/context/RuntimeMethodExecutionContext.d.ts +55 -4
  177. package/dist/state/context/RuntimeMethodExecutionContext.d.ts.map +1 -1
  178. package/dist/state/context/RuntimeMethodExecutionContext.js +6 -6
  179. package/dist/state/context/TransitionMethodExecutionContext.d.ts.map +1 -1
  180. package/dist/state/context/TransitionMethodExecutionContext.js +0 -1
  181. package/dist/state/context/contextExecution.d.ts +14 -0
  182. package/dist/state/context/contextExecution.d.ts.map +1 -0
  183. package/dist/state/context/contextExecution.js +30 -0
  184. package/dist/state/protocol/ProtocolState.d.ts.map +1 -1
  185. package/dist/state/protocol/ProtocolState.js +0 -3
  186. package/dist/utils/AppliedBatchHashList.d.ts +17 -0
  187. package/dist/utils/AppliedBatchHashList.d.ts.map +1 -0
  188. package/dist/utils/AppliedBatchHashList.js +24 -0
  189. package/dist/utils/MinaPrefixedProvableHashList.d.ts +2 -2
  190. package/dist/utils/MinaPrefixedProvableHashList.d.ts.map +1 -1
  191. package/dist/utils/MinaPrefixedProvableHashList.js +1 -0
  192. package/dist/utils/PrefixedProvableHashList.d.ts +2 -2
  193. package/dist/utils/PrefixedProvableHashList.d.ts.map +1 -1
  194. package/dist/utils/ProvableHashList.d.ts +4 -4
  195. package/dist/utils/ProvableHashList.d.ts.map +1 -1
  196. package/dist/utils/ProvableReductionHashList.d.ts +14 -0
  197. package/dist/utils/ProvableReductionHashList.d.ts.map +1 -0
  198. package/dist/utils/ProvableReductionHashList.js +50 -0
  199. package/dist/utils/StateTransitionReductionList.d.ts +11 -0
  200. package/dist/utils/StateTransitionReductionList.d.ts.map +1 -0
  201. package/dist/utils/StateTransitionReductionList.js +60 -0
  202. package/dist/utils/merkletree/InMemoryMerkleTreeStorage.d.ts +11 -0
  203. package/dist/utils/merkletree/InMemoryMerkleTreeStorage.d.ts.map +1 -0
  204. package/dist/utils/merkletree/InMemoryMerkleTreeStorage.js +12 -0
  205. package/dist/utils/merkletree/MerkleTreeStore.d.ts +5 -0
  206. package/dist/utils/merkletree/MerkleTreeStore.d.ts.map +1 -0
  207. package/dist/utils/merkletree/MerkleTreeStore.js +1 -0
  208. package/dist/utils/merkletree/RollupMerkleTree.d.ts +133 -0
  209. package/dist/utils/merkletree/RollupMerkleTree.d.ts.map +1 -0
  210. package/dist/utils/merkletree/RollupMerkleTree.js +255 -0
  211. package/dist/utils/utils.d.ts +1 -1
  212. package/dist/utils/utils.d.ts.map +1 -1
  213. package/dist/utils/utils.js +5 -10
  214. package/package.json +5 -5
  215. package/src/{blockmodules/AccountStateModule.ts → hooks/AccountStateHook.ts} +13 -9
  216. package/src/{blockmodules → hooks}/BlockHeightHook.ts +3 -4
  217. package/src/{blockmodules → hooks}/LastStateRootBlockHook.ts +4 -4
  218. package/src/{blockmodules → hooks}/NoopBlockHook.ts +6 -5
  219. package/src/{blockmodules → hooks}/NoopSettlementHook.ts +3 -4
  220. package/src/{blockmodules → hooks}/NoopTransactionHook.ts +5 -1
  221. package/src/index.ts +18 -8
  222. package/src/model/MethodPublicOutput.ts +2 -2
  223. package/src/model/Option.ts +21 -1
  224. package/src/model/Path.ts +1 -3
  225. package/src/model/RuntimeLike.ts +12 -0
  226. package/src/model/StateTransition.ts +9 -1
  227. package/src/model/Transaction.ts +2 -0
  228. package/src/model/network/NetworkState.ts +2 -2
  229. package/src/model/transaction/RuntimeTransaction.ts +5 -12
  230. package/src/model/transaction/SignedTransaction.ts +1 -8
  231. package/src/model/transaction/ValueOption.ts +1 -1
  232. package/src/protocol/Protocol.ts +34 -48
  233. package/src/protocol/ProtocolEnvironment.ts +7 -6
  234. package/src/protocol/ProtocolModule.ts +8 -4
  235. package/src/protocol/ProvableBlockHook.ts +3 -3
  236. package/src/protocol/ProvableTransactionHook.ts +4 -2
  237. package/src/protocol/TransitioningProtocolModule.ts +1 -1
  238. package/src/prover/block/BlockProvable.ts +3 -3
  239. package/src/prover/block/BlockProver.ts +98 -63
  240. package/src/prover/block/accummulators/BlockHashMerkleTree.ts +2 -2
  241. package/src/prover/statetransition/StateTransitionProvable.ts +3 -3
  242. package/src/prover/statetransition/StateTransitionProver.ts +26 -28
  243. package/src/settlement/ContractModule.ts +24 -0
  244. package/src/settlement/SettlementContractModule.ts +132 -0
  245. package/src/settlement/contracts/DispatchContractProtocolModule.ts +39 -0
  246. package/src/settlement/contracts/DispatchSmartContract.ts +136 -0
  247. package/src/settlement/contracts/SettlementContractProtocolModule.ts +67 -0
  248. package/src/settlement/contracts/SettlementSmartContract.ts +350 -0
  249. package/src/settlement/messages/Deposit.ts +6 -0
  250. package/src/settlement/messages/OutgoingMessageArgument.ts +42 -0
  251. package/src/settlement/messages/Withdrawal.ts +14 -0
  252. package/src/settlement/{ProvableSettlementHook.ts → modularity/ProvableSettlementHook.ts} +9 -13
  253. package/src/settlement/modules/NetworkStateSettlementModule.ts +8 -5
  254. package/src/state/State.ts +21 -13
  255. package/src/state/StateMap.ts +4 -5
  256. package/src/state/StateService.ts +3 -3
  257. package/src/state/StateServiceProvider.ts +6 -7
  258. package/src/state/assert/assert.ts +13 -7
  259. package/src/state/context/RuntimeMethodExecutionContext.ts +13 -7
  260. package/src/state/context/TransitionMethodExecutionContext.ts +0 -1
  261. package/src/state/protocol/ProtocolState.ts +1 -4
  262. package/src/utils/MinaPrefixedProvableHashList.ts +4 -3
  263. package/src/utils/PrefixedProvableHashList.ts +2 -2
  264. package/src/utils/ProvableHashList.ts +2 -2
  265. package/src/utils/ProvableReductionHashList.ts +68 -0
  266. package/src/utils/StateTransitionReductionList.ts +89 -0
  267. package/src/utils/utils.ts +4 -9
  268. package/test/BlockProver.test.ts +110 -128
  269. package/test/Protocol.test.ts +14 -21
  270. package/test/State.test.ts +8 -8
  271. package/test/StateTransition.test.ts +56 -66
  272. package/test/TestingProtocol.ts +48 -0
  273. package/test/model/Option.test.ts +72 -0
  274. package/{src → test}/state/assert/assert.test.ts +4 -4
  275. package/test/tsconfig.json +7 -0
  276. package/test/utils/ProvableReductionHashList.test.ts +117 -0
  277. package/test/utils.test.ts +0 -3
  278. package/dist/hooks/TransactionFeeHook.d.ts +0 -16
  279. package/dist/hooks/TransactionFeeHook.d.ts.map +0 -1
  280. package/src/blockmodules/SequenceStateTransactionModule.ts +0 -25
  281. package/src/model/Option.test.ts +0 -21
  282. package/src/settlement/SettlementContract.ts +0 -444
  283. package/src/state/context/ProtocolMethodExecutionContext.ts +0 -36
  284. package/test/Option.test.ts +0 -64
  285. package/tsconfig.test.json +0 -9
@@ -1,47 +1,70 @@
1
1
  import { PublicKey, UInt64 } from "o1js";
2
2
  declare const UInt64Option_base: {
3
3
  new (value: {
4
- isSome: import("o1js/dist/node/lib/bool").Bool;
4
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
5
5
  value: UInt64;
6
6
  }): {
7
- isSome: import("o1js/dist/node/lib/bool").Bool;
7
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
8
8
  value: UInt64;
9
9
  };
10
- fromValue(value: UInt64): {
11
- isSome: import("o1js/dist/node/lib/bool").Bool;
10
+ fromSome(value: UInt64): {
11
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
12
12
  value: UInt64;
13
13
  };
14
14
  none(value: UInt64): {
15
- isSome: import("o1js/dist/node/lib/bool").Bool;
15
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
16
16
  value: UInt64;
17
17
  };
18
18
  _isStruct: true;
19
19
  toFields: (value: {
20
- isSome: import("o1js/dist/node/lib/bool").Bool;
20
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
21
21
  value: UInt64;
22
- }) => import("o1js/dist/node/lib/field").Field[];
22
+ }) => import("o1js/dist/node/lib/provable/field").Field[];
23
23
  toAuxiliary: (value?: {
24
- isSome: import("o1js/dist/node/lib/bool").Bool;
24
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
25
25
  value: UInt64;
26
26
  } | undefined) => any[];
27
- fromFields: (fields: import("o1js/dist/node/lib/field").Field[], aux: any[]) => {
28
- isSome: import("o1js/dist/node/lib/bool").Bool;
27
+ fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[], aux: any[]) => {
28
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
29
29
  value: UInt64;
30
30
  };
31
31
  sizeInFields(): number;
32
32
  check: (value: {
33
- isSome: import("o1js/dist/node/lib/bool").Bool;
33
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
34
34
  value: UInt64;
35
35
  }) => void;
36
+ toValue: (x: {
37
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
38
+ value: UInt64;
39
+ }) => {
40
+ isSome: boolean;
41
+ value: any;
42
+ };
43
+ fromValue: ((x: {
44
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
45
+ value: UInt64;
46
+ } | {
47
+ isSome: boolean;
48
+ value: any;
49
+ }) => {
50
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
51
+ value: UInt64;
52
+ }) & ((value: {
53
+ isSome: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
54
+ value: any;
55
+ }) => {
56
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
57
+ value: UInt64;
58
+ });
36
59
  toInput: (x: {
37
- isSome: import("o1js/dist/node/lib/bool").Bool;
60
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
38
61
  value: UInt64;
39
62
  }) => {
40
- fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
41
- packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
63
+ fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
64
+ packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
42
65
  };
43
66
  toJSON: (x: {
44
- isSome: import("o1js/dist/node/lib/bool").Bool;
67
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
45
68
  value: UInt64;
46
69
  }) => {
47
70
  isSome: boolean;
@@ -51,7 +74,11 @@ declare const UInt64Option_base: {
51
74
  isSome: boolean;
52
75
  value: any;
53
76
  }) => {
54
- isSome: import("o1js/dist/node/lib/bool").Bool;
77
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
78
+ value: UInt64;
79
+ };
80
+ empty: () => {
81
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
55
82
  value: UInt64;
56
83
  };
57
84
  };
@@ -59,47 +86,70 @@ export declare class UInt64Option extends UInt64Option_base {
59
86
  }
60
87
  declare const PublicKeyOption_base: {
61
88
  new (value: {
62
- isSome: import("o1js/dist/node/lib/bool").Bool;
89
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
63
90
  value: PublicKey;
64
91
  }): {
65
- isSome: import("o1js/dist/node/lib/bool").Bool;
92
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
66
93
  value: PublicKey;
67
94
  };
68
- fromValue(value: PublicKey): {
69
- isSome: import("o1js/dist/node/lib/bool").Bool;
95
+ fromSome(value: PublicKey): {
96
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
70
97
  value: PublicKey;
71
98
  };
72
99
  none(value: PublicKey): {
73
- isSome: import("o1js/dist/node/lib/bool").Bool;
100
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
74
101
  value: PublicKey;
75
102
  };
76
103
  _isStruct: true;
77
104
  toFields: (value: {
78
- isSome: import("o1js/dist/node/lib/bool").Bool;
105
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
79
106
  value: PublicKey;
80
- }) => import("o1js/dist/node/lib/field").Field[];
107
+ }) => import("o1js/dist/node/lib/provable/field").Field[];
81
108
  toAuxiliary: (value?: {
82
- isSome: import("o1js/dist/node/lib/bool").Bool;
109
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
83
110
  value: PublicKey;
84
111
  } | undefined) => any[];
85
- fromFields: (fields: import("o1js/dist/node/lib/field").Field[], aux: any[]) => {
86
- isSome: import("o1js/dist/node/lib/bool").Bool;
112
+ fromFields: (fields: import("o1js/dist/node/lib/provable/field").Field[], aux: any[]) => {
113
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
87
114
  value: PublicKey;
88
115
  };
89
116
  sizeInFields(): number;
90
117
  check: (value: {
91
- isSome: import("o1js/dist/node/lib/bool").Bool;
118
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
92
119
  value: PublicKey;
93
120
  }) => void;
121
+ toValue: (x: {
122
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
123
+ value: PublicKey;
124
+ }) => {
125
+ isSome: boolean;
126
+ value: any;
127
+ };
128
+ fromValue: ((x: {
129
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
130
+ value: PublicKey;
131
+ } | {
132
+ isSome: boolean;
133
+ value: any;
134
+ }) => {
135
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
136
+ value: PublicKey;
137
+ }) & ((value: {
138
+ isSome: boolean | import("o1js/dist/node/lib/provable/bool").Bool;
139
+ value: any;
140
+ }) => {
141
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
142
+ value: PublicKey;
143
+ });
94
144
  toInput: (x: {
95
- isSome: import("o1js/dist/node/lib/bool").Bool;
145
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
96
146
  value: PublicKey;
97
147
  }) => {
98
- fields?: import("o1js/dist/node/lib/field").Field[] | undefined;
99
- packed?: [import("o1js/dist/node/lib/field").Field, number][] | undefined;
148
+ fields?: import("o1js/dist/node/lib/provable/field").Field[] | undefined;
149
+ packed?: [import("o1js/dist/node/lib/provable/field").Field, number][] | undefined;
100
150
  };
101
151
  toJSON: (x: {
102
- isSome: import("o1js/dist/node/lib/bool").Bool;
152
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
103
153
  value: PublicKey;
104
154
  }) => {
105
155
  isSome: boolean;
@@ -109,7 +159,11 @@ declare const PublicKeyOption_base: {
109
159
  isSome: boolean;
110
160
  value: any;
111
161
  }) => {
112
- isSome: import("o1js/dist/node/lib/bool").Bool;
162
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
163
+ value: PublicKey;
164
+ };
165
+ empty: () => {
166
+ isSome: import("o1js/dist/node/lib/provable/bool").Bool;
113
167
  value: PublicKey;
114
168
  };
115
169
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ValueOption.d.ts","sourceRoot":"","sources":["../../../src/model/transaction/ValueOption.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,SAAS,EAAU,MAAM,EAAE,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBzE,qBAAa,YAAa,SAAQ,iBAAoC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzE,qBAAa,eAAgB,SAAQ,oBAEpC;CAAG"}
1
+ {"version":3,"file":"ValueOption.d.ts","sourceRoot":"","sources":["../../../src/model/transaction/ValueOption.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,SAAS,EAAU,MAAM,EAAE,MAAM,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBzE,qBAAa,YAAa,SAAQ,iBAAoC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzE,qBAAa,eAAgB,SAAQ,oBAEpC;CAAG"}
@@ -4,7 +4,7 @@ function genericOptionFactory(valueType) {
4
4
  isSome: Bool,
5
5
  value: valueType,
6
6
  }) {
7
- static fromValue(value) {
7
+ static fromSome(value) {
8
8
  return new Generic({
9
9
  isSome: Bool(true),
10
10
  value,
@@ -3,35 +3,33 @@ import { DependencyContainer } from "tsyringe";
3
3
  import { BlockProvable } from "../prover/block/BlockProvable";
4
4
  import { StateTransitionProvable } from "../prover/statetransition/StateTransitionProvable";
5
5
  import { StateServiceProvider } from "../state/StateServiceProvider";
6
- import { StateService } from "../state/StateService";
6
+ import { SimpleAsyncStateService } from "../state/StateService";
7
+ import { BlockHeightHook } from "../hooks/BlockHeightHook";
8
+ import { LastStateRootBlockHook } from "../hooks/LastStateRootBlockHook";
9
+ import { AccountStateHook } from "../hooks/AccountStateHook";
7
10
  import { ProtocolModule } from "./ProtocolModule";
8
11
  import { ProtocolEnvironment } from "./ProtocolEnvironment";
9
- import { AccountStateModule } from "../blockmodules/AccountStateModule";
10
- import { BlockHeightHook } from "../blockmodules/BlockHeightHook";
11
- import { LastStateRootBlockHook } from "../blockmodules/LastStateRootBlockHook";
12
- export type GenericProtocolModuleRecord = ModulesRecord<TypedClass<ProtocolModule<unknown>>>;
13
- interface BlockProverType extends ProtocolModule, BlockProvable {
12
+ export type ProtocolModulesRecord = ModulesRecord<TypedClass<ProtocolModule<unknown>>>;
13
+ export interface BlockProverType extends ProtocolModule, BlockProvable {
14
14
  }
15
- interface StateTransitionProverType extends ProtocolModule, StateTransitionProvable {
15
+ export interface StateTransitionProverType extends ProtocolModule, StateTransitionProvable {
16
16
  }
17
- export interface ProtocolCustomModulesRecord extends GenericProtocolModuleRecord {
17
+ export type MandatoryProtocolModulesRecord = {
18
18
  BlockProver: TypedClass<BlockProverType>;
19
19
  StateTransitionProver: TypedClass<StateTransitionProverType>;
20
- AccountState: TypedClass<AccountStateModule>;
20
+ AccountState: TypedClass<AccountStateHook>;
21
21
  BlockHeight: TypedClass<BlockHeightHook>;
22
22
  LastStateRoot: TypedClass<LastStateRootBlockHook>;
23
- }
24
- export interface ProtocolModulesRecord extends GenericProtocolModuleRecord, ProtocolCustomModulesRecord {
25
- }
23
+ };
26
24
  export interface ProtocolDefinition<Modules extends ProtocolModulesRecord> {
27
25
  modules: Modules;
28
26
  config?: ModulesConfig<Modules>;
29
27
  }
30
- export declare class Protocol<Modules extends ProtocolModulesRecord> extends ModuleContainer<Modules> implements ProtocolEnvironment {
31
- static from<Modules extends ProtocolModulesRecord>(modules: ProtocolDefinition<Modules>): TypedClass<Protocol<Modules>>;
28
+ export declare class Protocol<Modules extends ProtocolModulesRecord & MandatoryProtocolModulesRecord> extends ModuleContainer<Modules> implements ProtocolEnvironment {
29
+ static from<Modules extends ProtocolModulesRecord & MandatoryProtocolModulesRecord>(modules: ProtocolDefinition<Modules>): TypedClass<Protocol<Modules>>;
32
30
  definition: ProtocolDefinition<Modules>;
33
31
  constructor(definition: ProtocolDefinition<Modules>);
34
- get stateService(): StateService;
32
+ get stateService(): SimpleAsyncStateService;
35
33
  get stateServiceProvider(): StateServiceProvider;
36
34
  decorateModule(moduleName: StringKeyOf<Modules>, containedModule: InstanceType<Modules[StringKeyOf<Modules>]>): void;
37
35
  get dependencyContainer(): DependencyContainer;
@@ -40,10 +38,6 @@ export declare class Protocol<Modules extends ProtocolModulesRecord> extends Mod
40
38
  get stateTransitionProver(): StateTransitionProvable;
41
39
  getAreProofsEnabled(): AreProofsEnabled;
42
40
  create(childContainerProvider: ChildContainerProvider): void;
41
+ start(): Promise<void>;
43
42
  }
44
- export declare const VanillaProtocol: {
45
- create(): TypedClass<Protocol<ProtocolCustomModulesRecord>>;
46
- from<AdditonalModules extends GenericProtocolModuleRecord>(additionalModules: AdditonalModules): TypedClass<Protocol<ProtocolCustomModulesRecord & AdditonalModules>>;
47
- };
48
- export {};
49
43
  //# sourceMappingURL=Protocol.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Protocol.d.ts","sourceRoot":"","sources":["../../src/protocol/Protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EAEtB,eAAe,EACf,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAa,MAAM,UAAU,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AAE5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAGxE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAUhF,MAAM,MAAM,2BAA2B,GAAG,aAAa,CACrD,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CACpC,CAAC;AAEF,UAAU,eAAgB,SAAQ,cAAc,EAAE,aAAa;CAAG;AAElE,UAAU,yBACR,SAAQ,cAAc,EACpB,uBAAuB;CAAG;AAE9B,MAAM,WAAW,2BACf,SAAQ,2BAA2B;IACnC,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IACzC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,CAAC;IAC7D,YAAY,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC7C,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IACzC,aAAa,EAAE,UAAU,CAAC,sBAAsB,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,qBACf,SAAQ,2BAA2B,EACjC,2BAA2B;CAAG;AAElC,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,qBAAqB;IACvE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;CACjC;AAED,qBAAa,QAAQ,CAAC,OAAO,SAAS,qBAAqB,CACzD,SAAQ,eAAe,CAAC,OAAO,CAC/B,YAAW,mBAAmB;WAGhB,IAAI,CAAC,OAAO,SAAS,qBAAqB,EACtD,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GACnC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAQzB,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAE5B,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC;IAK1D,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED,IAAW,oBAAoB,IAAI,oBAAoB,CAEtD;IAEM,cAAc,CACnB,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,EAChC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAY9D,IAAW,mBAAmB,IAAI,mBAAmB,CAEpD;IAED,OAAO,CAAC,QAAQ;IAMhB,IAAW,WAAW,IAAI,aAAa,CAMtC;IAED,IAAW,qBAAqB,IAAI,uBAAuB,CAI1D;IAEM,mBAAmB,IAAI,gBAAgB;IAIvC,MAAM,CAAC,sBAAsB,EAAE,sBAAsB;CAoD7D;AAED,eAAO,MAAM,eAAe;;;CAmB3B,CAAC"}
1
+ {"version":3,"file":"Protocol.d.ts","sourceRoot":"","sources":["../../src/protocol/Protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EAEtB,eAAe,EACf,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAa,MAAM,UAAU,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAGzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAS5D,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAC/C,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CACpC,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,cAAc,EAAE,aAAa;CAAG;AAEzE,MAAM,WAAW,yBACf,SAAQ,cAAc,EACpB,uBAAuB;CAAG;AAE9B,MAAM,MAAM,8BAA8B,GAAG;IAC3C,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IACzC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,CAAC;IAC7D,YAAY,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC3C,WAAW,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IACzC,aAAa,EAAE,UAAU,CAAC,sBAAsB,CAAC,CAAC;CACnD,CAAC;AAEF,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,qBAAqB;IACvE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;CACjC;AAED,qBAAa,QAAQ,CACjB,OAAO,SAAS,qBAAqB,GAAG,8BAA8B,CAExE,SAAQ,eAAe,CAAC,OAAO,CAC/B,YAAW,mBAAmB;WAEhB,IAAI,CAChB,OAAO,SAAS,qBAAqB,GAAG,8BAA8B,EACtE,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAQ/D,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAE5B,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC;IAK1D,IAAW,YAAY,IAAI,uBAAuB,CAEjD;IAED,IAAW,oBAAoB,IAAI,oBAAoB,CAEtD;IAEM,cAAc,CACnB,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,EAChC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAY9D,IAAW,mBAAmB,IAAI,mBAAmB,CAEpD;IAED,OAAO,CAAC,QAAQ;IAMhB,IAAW,WAAW,IAAI,aAAa,CAMtC;IAED,IAAW,qBAAqB,IAAI,uBAAuB,CAI1D;IAEM,mBAAmB,IAAI,gBAAgB;IAIvC,MAAM,CAAC,sBAAsB,EAAE,sBAAsB;IAqD/C,KAAK;CAYnB"}
@@ -1,23 +1,17 @@
1
1
  import { log, ModuleContainer, } from "@proto-kit/common";
2
2
  import { Lifecycle } from "tsyringe";
3
- import { StateTransitionProver } from "../prover/statetransition/StateTransitionProver";
4
- import { BlockProver } from "../prover/block/BlockProver";
3
+ import { NoopBlockHook } from "../hooks/NoopBlockHook";
4
+ import { ProvableSettlementHook } from "../settlement/modularity/ProvableSettlementHook";
5
+ import { NoopSettlementHook } from "../hooks/NoopSettlementHook";
6
+ import { NoopTransactionHook } from "../hooks/NoopTransactionHook";
5
7
  import { ProvableTransactionHook } from "./ProvableTransactionHook";
6
- import { NoopTransactionHook } from "../blockmodules/NoopTransactionHook";
7
- import { AccountStateModule } from "../blockmodules/AccountStateModule";
8
8
  import { ProvableBlockHook } from "./ProvableBlockHook";
9
- import { NoopBlockHook } from "../blockmodules/NoopBlockHook";
10
- import { BlockHeightHook } from "../blockmodules/BlockHeightHook";
11
- import { LastStateRootBlockHook } from "../blockmodules/LastStateRootBlockHook";
12
- import { ProvableSettlementHook } from "../settlement/ProvableSettlementHook";
13
- import { NoopSettlementHook } from "../blockmodules/NoopSettlementHook";
14
9
  const PROTOCOL_INJECTION_TOKENS = {
15
10
  ProvableTransactionHook: "ProvableTransactionHook",
16
11
  ProvableBlockHook: "ProvableBlockHook",
17
12
  ProvableSettlementHook: "ProvableSettlementHook",
18
13
  };
19
14
  export class Protocol extends ModuleContainer {
20
- // .from() to create Protocol
21
15
  static from(modules) {
22
16
  return class ScopedProtocol extends Protocol {
23
17
  constructor() {
@@ -89,21 +83,13 @@ export class Protocol extends ModuleContainer {
89
83
  }
90
84
  });
91
85
  }
86
+ async start() {
87
+ // eslint-disable-next-line guard-for-in
88
+ for (const moduleName in this.definition.modules) {
89
+ const protocolModule = this.resolve(moduleName);
90
+ log.info(`Starting protocol module ${moduleName} (${protocolModule.constructor.name})`);
91
+ // eslint-disable-next-line no-await-in-loop
92
+ await protocolModule.start();
93
+ }
94
+ }
92
95
  }
93
- export const VanillaProtocol = {
94
- create() {
95
- return VanillaProtocol.from({});
96
- },
97
- from(additionalModules) {
98
- return Protocol.from({
99
- modules: {
100
- StateTransitionProver,
101
- BlockProver,
102
- AccountState: AccountStateModule,
103
- BlockHeight: BlockHeightHook,
104
- LastStateRoot: LastStateRootBlockHook,
105
- ...additionalModules,
106
- },
107
- });
108
- },
109
- };
@@ -1,8 +1,8 @@
1
- import { StateService } from "../state/StateService";
2
- import { StateServiceProvider } from "../state/StateServiceProvider";
3
1
  import { AreProofsEnabled } from "@proto-kit/common";
2
+ import { SimpleAsyncStateService } from "../state/StateService";
3
+ import { StateServiceProvider } from "../state/StateServiceProvider";
4
4
  export interface ProtocolEnvironment {
5
- get stateService(): StateService;
5
+ get stateService(): SimpleAsyncStateService;
6
6
  get stateServiceProvider(): StateServiceProvider;
7
7
  getAreProofsEnabled(): AreProofsEnabled;
8
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProtocolEnvironment.d.ts","sourceRoot":"","sources":["../../src/protocol/ProtocolEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,IAAI,YAAY,IAAI,YAAY,CAAA;IAChC,IAAI,oBAAoB,IAAI,oBAAoB,CAAA;IAChD,mBAAmB,IAAI,gBAAgB,CAAA;CACxC"}
1
+ {"version":3,"file":"ProtocolEnvironment.d.ts","sourceRoot":"","sources":["../../src/protocol/ProtocolEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,IAAI,YAAY,IAAI,uBAAuB,CAAC;IAC5C,IAAI,oBAAoB,IAAI,oBAAoB,CAAC;IACjD,mBAAmB,IAAI,gBAAgB,CAAC;CACzC"}
@@ -4,5 +4,6 @@ export declare abstract class ProtocolModule<Config = NoConfig> extends Configur
4
4
  protocol?: ProtocolEnvironment;
5
5
  get appChain(): AreProofsEnabled | undefined;
6
6
  create(childContainerProvider: ChildContainerProvider): void;
7
+ start(): Promise<void>;
7
8
  }
8
9
  //# sourceMappingURL=ProtocolModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProtocolModule.d.ts","sourceRoot":"","sources":["../../src/protocol/ProtocolModule.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAAE,QAAQ,EAE7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,8BAAsB,cAAc,CAClC,MAAM,GAAG,QAAQ,CACjB,SAAQ,kBAAkB,CAAC,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAEtC,IAAW,QAAQ,IAAI,gBAAgB,GAAG,SAAS,CAElD;IAGM,MAAM,CAAC,sBAAsB,EAAE,sBAAsB,GAAG,IAAI;CAGpE"}
1
+ {"version":3,"file":"ProtocolModule.d.ts","sourceRoot":"","sources":["../../src/protocol/ProtocolModule.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,QAAQ,EAET,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,8BAAsB,cAAc,CAClC,MAAM,GAAG,QAAQ,CACjB,SAAQ,kBAAkB,CAAC,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAEtC,IAAW,QAAQ,IAAI,gBAAgB,GAAG,SAAS,CAElD;IAEM,MAAM,CAAC,sBAAsB,EAAE,sBAAsB,GAAG,IAAI;IAItD,KAAK;CAGnB"}
@@ -1,10 +1,12 @@
1
- import { ConfigurableModule, noop } from "@proto-kit/common";
1
+ import { ConfigurableModule, noop, } from "@proto-kit/common";
2
2
  export class ProtocolModule extends ConfigurableModule {
3
3
  get appChain() {
4
4
  return this.protocol?.getAreProofsEnabled();
5
5
  }
6
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
7
6
  create(childContainerProvider) {
8
7
  noop();
9
8
  }
9
+ async start() {
10
+ noop();
11
+ }
10
12
  }
@@ -2,7 +2,7 @@ import type { BlockProverState } from "../prover/block/BlockProver";
2
2
  import { NetworkState } from "../model/network/NetworkState";
3
3
  import { TransitioningProtocolModule } from "./TransitioningProtocolModule";
4
4
  export declare abstract class ProvableBlockHook<Config> extends TransitioningProtocolModule<Config> {
5
- abstract beforeBlock(networkState: NetworkState, state: BlockProverState): NetworkState;
6
- abstract afterBlock(networkState: NetworkState, state: BlockProverState): NetworkState;
5
+ abstract beforeBlock(networkState: NetworkState, state: BlockProverState): Promise<NetworkState>;
6
+ abstract afterBlock(networkState: NetworkState, state: BlockProverState): Promise<NetworkState>;
7
7
  }
8
8
  //# sourceMappingURL=ProvableBlockHook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProvableBlockHook.d.ts","sourceRoot":"","sources":["../../src/protocol/ProvableBlockHook.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAG5E,8BAAsB,iBAAiB,CACrC,MAAM,CACN,SAAQ,2BAA2B,CAAC,MAAM,CAAC;aAC3B,WAAW,CACzB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,gBAAgB,GACtB,YAAY;aAEC,UAAU,CACxB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,gBAAgB,GACtB,YAAY;CAChB"}
1
+ {"version":3,"file":"ProvableBlockHook.d.ts","sourceRoot":"","sources":["../../src/protocol/ProvableBlockHook.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAG5E,8BAAsB,iBAAiB,CACrC,MAAM,CACN,SAAQ,2BAA2B,CAAC,MAAM,CAAC;aAC3B,WAAW,CACzB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,YAAY,CAAC;aAER,UAAU,CACxB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,gBAAgB,GACtB,OAAO,CAAC,YAAY,CAAC;CACzB"}
@@ -2,6 +2,6 @@ import { NoConfig } from "@proto-kit/common";
2
2
  import { BlockProverExecutionData } from "../prover/block/BlockProvable";
3
3
  import { TransitioningProtocolModule } from "./TransitioningProtocolModule";
4
4
  export declare abstract class ProvableTransactionHook<Config = NoConfig> extends TransitioningProtocolModule<Config> {
5
- abstract onTransaction(executionData: BlockProverExecutionData): void;
5
+ abstract onTransaction(executionData: BlockProverExecutionData): Promise<void>;
6
6
  }
7
7
  //# sourceMappingURL=ProvableTransactionHook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProvableTransactionHook.d.ts","sourceRoot":"","sources":["../../src/protocol/ProvableTransactionHook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,8BAAsB,uBAAuB,CAC3C,MAAM,GAAG,QAAQ,CACjB,SAAQ,2BAA2B,CAAC,MAAM,CAAC;aAC3B,aAAa,CAAC,aAAa,EAAE,wBAAwB,GAAG,IAAI;CAC7E"}
1
+ {"version":3,"file":"ProvableTransactionHook.d.ts","sourceRoot":"","sources":["../../src/protocol/ProvableTransactionHook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,8BAAsB,uBAAuB,CAC3C,MAAM,GAAG,QAAQ,CACjB,SAAQ,2BAA2B,CAAC,MAAM,CAAC;aAC3B,aAAa,CAC3B,aAAa,EAAE,wBAAwB,GACtC,OAAO,CAAC,IAAI,CAAC;CACjB"}