@arbitrum/nitro-contracts 1.1.0-alpha.1 → 1.1.0-alpha.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (422) hide show
  1. package/LICENSE +114 -0
  2. package/README.md +2 -2
  3. package/build/types/@openzeppelin/contracts/access/Ownable.ts +175 -0
  4. package/build/types/@openzeppelin/contracts/access/index.ts +4 -0
  5. package/build/types/@openzeppelin/contracts/index.ts +11 -0
  6. package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +87 -0
  7. package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  8. package/build/types/@openzeppelin/contracts/interfaces/index.ts +5 -0
  9. package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +108 -0
  10. package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts +108 -0
  11. package/build/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  12. package/build/types/@openzeppelin/contracts/proxy/Proxy.ts +55 -0
  13. package/build/types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +87 -0
  14. package/build/types/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.ts +239 -0
  15. package/build/types/@openzeppelin/contracts/proxy/beacon/index.ts +5 -0
  16. package/build/types/@openzeppelin/contracts/proxy/index.ts +12 -0
  17. package/build/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.ts +359 -0
  18. package/build/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.ts +278 -0
  19. package/build/types/@openzeppelin/contracts/proxy/transparent/index.ts +5 -0
  20. package/build/types/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts +216 -0
  21. package/build/types/@openzeppelin/contracts/proxy/utils/index.ts +4 -0
  22. package/build/types/@openzeppelin/contracts/token/ERC20/ERC20.ts +444 -0
  23. package/build/types/@openzeppelin/contracts/token/ERC20/IERC20.ts +322 -0
  24. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.ts +507 -0
  25. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +364 -0
  26. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
  27. package/build/types/@openzeppelin/contracts/token/ERC20/index.ts +9 -0
  28. package/build/types/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.ts +507 -0
  29. package/build/types/@openzeppelin/contracts/token/ERC20/presets/index.ts +4 -0
  30. package/build/types/@openzeppelin/contracts/token/index.ts +5 -0
  31. package/build/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +175 -0
  32. package/build/types/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
  33. package/build/types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
  34. package/build/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts +111 -0
  35. package/build/types/@openzeppelin/contracts-upgradeable/security/index.ts +4 -0
  36. package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts +322 -0
  37. package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +4 -0
  38. package/build/types/@openzeppelin/contracts-upgradeable/token/index.ts +5 -0
  39. package/build/types/@openzeppelin/index.ts +7 -0
  40. package/build/types/common.ts +44 -0
  41. package/build/types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +78 -0
  42. package/build/types/factories/@openzeppelin/contracts/access/index.ts +4 -0
  43. package/build/types/factories/@openzeppelin/contracts/index.ts +7 -0
  44. package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +39 -0
  45. package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  46. package/build/types/factories/@openzeppelin/contracts/interfaces/index.ts +4 -0
  47. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +146 -0
  48. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts +71 -0
  49. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  50. package/build/types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +31 -0
  51. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +39 -0
  52. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon__factory.ts +169 -0
  53. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +5 -0
  54. package/build/types/factories/@openzeppelin/contracts/proxy/index.ts +8 -0
  55. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.ts +211 -0
  56. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy__factory.ts +228 -0
  57. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/index.ts +5 -0
  58. package/build/types/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts +115 -0
  59. package/build/types/factories/@openzeppelin/contracts/proxy/utils/index.ts +4 -0
  60. package/build/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +349 -0
  61. package/build/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +206 -0
  62. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable__factory.ts +327 -0
  63. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +248 -0
  64. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
  65. package/build/types/factories/@openzeppelin/contracts/token/ERC20/index.ts +7 -0
  66. package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply__factory.ts +420 -0
  67. package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/index.ts +4 -0
  68. package/build/types/factories/@openzeppelin/contracts/token/index.ts +4 -0
  69. package/build/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +78 -0
  70. package/build/types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
  71. package/build/types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
  72. package/build/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts +65 -0
  73. package/build/types/factories/@openzeppelin/contracts-upgradeable/security/index.ts +4 -0
  74. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts +209 -0
  75. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +4 -0
  76. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/index.ts +4 -0
  77. package/build/types/factories/@openzeppelin/index.ts +5 -0
  78. package/build/types/factories/index.ts +5 -0
  79. package/build/types/factories/src/bridge/AbsBridge__factory.ts +612 -0
  80. package/build/types/factories/src/bridge/AbsInbox__factory.ts +455 -0
  81. package/build/types/factories/src/bridge/AbsOutbox__factory.ts +561 -0
  82. package/build/types/factories/src/bridge/Bridge__factory.ts +695 -0
  83. package/build/types/factories/src/bridge/ERC20Bridge__factory.ts +746 -0
  84. package/build/types/factories/src/bridge/ERC20Inbox__factory.ts +719 -0
  85. package/build/types/factories/src/bridge/ERC20Outbox__factory.ts +610 -0
  86. package/build/types/factories/src/bridge/IBridge__factory.ts +508 -0
  87. package/build/types/factories/src/bridge/IDelayedMessageProvider__factory.ts +62 -0
  88. package/build/types/factories/src/bridge/IERC20Bridge__factory.ts +576 -0
  89. package/build/types/factories/src/bridge/IERC20Inbox__factory.ts +461 -0
  90. package/build/types/factories/src/bridge/IEthBridge__factory.ts +553 -0
  91. package/build/types/factories/src/bridge/IEthInbox__factory.ts +653 -0
  92. package/build/types/factories/src/bridge/IInbox__factory.ts +318 -0
  93. package/build/types/factories/src/bridge/IOutbox__factory.ts +431 -0
  94. package/build/types/factories/src/bridge/IOwnable__factory.ts +36 -0
  95. package/build/types/factories/src/bridge/ISequencerInbox__factory.ts +666 -0
  96. package/build/types/factories/src/bridge/Inbox__factory.ts +999 -0
  97. package/build/types/factories/src/bridge/Outbox__factory.ts +591 -0
  98. package/build/types/factories/src/bridge/SequencerInbox__factory.ts +865 -0
  99. package/build/types/factories/src/bridge/index.ts +23 -0
  100. package/build/types/factories/src/challenge/ChallengeManager__factory.ts +720 -0
  101. package/build/types/factories/src/challenge/IChallengeManager__factory.ts +401 -0
  102. package/build/types/factories/src/challenge/IChallengeResultReceiver__factory.ts +53 -0
  103. package/build/types/factories/src/challenge/index.ts +6 -0
  104. package/build/types/factories/src/index.ts +12 -0
  105. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy__factory.ts +128 -0
  106. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade__factory.ts +88 -0
  107. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/index.ts +5 -0
  108. package/build/types/factories/src/libraries/DoubleLogicUUPSUpgradeable__factory.ts +163 -0
  109. package/build/types/factories/src/libraries/IGasRefunder__factory.ts +55 -0
  110. package/build/types/factories/src/libraries/UUPSNotUpgradeable__factory.ts +97 -0
  111. package/build/types/factories/src/libraries/index.ts +7 -0
  112. package/build/types/factories/src/mocks/BridgeStub__factory.ts +612 -0
  113. package/build/types/factories/src/mocks/BridgeUnproxied__factory.ts +706 -0
  114. package/build/types/factories/src/mocks/InboxStub__factory.ts +702 -0
  115. package/build/types/factories/src/mocks/MockResultReceiver__factory.ts +244 -0
  116. package/build/types/factories/src/mocks/ProxyAdminForBinding__factory.ts +215 -0
  117. package/build/types/factories/src/mocks/SequencerInboxStub__factory.ts +938 -0
  118. package/build/types/factories/src/mocks/SimpleProxy__factory.ts +83 -0
  119. package/build/types/factories/src/mocks/Simple__factory.ts +287 -0
  120. package/build/types/factories/src/mocks/SingleExecutionChallenge__factory.ts +823 -0
  121. package/build/types/factories/src/mocks/TimedOutChallengeManager__factory.ts +724 -0
  122. package/build/types/factories/src/mocks/index.ts +13 -0
  123. package/build/types/factories/src/node-interface/NodeInterfaceDebug__factory.ts +82 -0
  124. package/build/types/factories/src/node-interface/NodeInterface__factory.ts +301 -0
  125. package/build/types/factories/src/node-interface/index.ts +5 -0
  126. package/build/types/factories/src/osp/HashProofHelper__factory.ts +216 -0
  127. package/build/types/factories/src/osp/IOneStepProofEntry__factory.ts +72 -0
  128. package/build/types/factories/src/osp/IOneStepProver__factory.ts +492 -0
  129. package/build/types/factories/src/osp/OneStepProofEntry__factory.ts +206 -0
  130. package/build/types/factories/src/osp/OneStepProver0__factory.ts +528 -0
  131. package/build/types/factories/src/osp/OneStepProverHostIo__factory.ts +528 -0
  132. package/build/types/factories/src/osp/OneStepProverMath__factory.ts +528 -0
  133. package/build/types/factories/src/osp/OneStepProverMemory__factory.ts +528 -0
  134. package/build/types/factories/src/osp/index.ts +11 -0
  135. package/build/types/factories/src/precompiles/ArbAddressTable__factory.ts +163 -0
  136. package/build/types/factories/src/precompiles/ArbAggregator__factory.ts +163 -0
  137. package/build/types/factories/src/precompiles/ArbDebug__factory.ts +208 -0
  138. package/build/types/factories/src/precompiles/ArbFunctionTable__factory.ts +92 -0
  139. package/build/types/factories/src/precompiles/ArbGasInfo__factory.ts +339 -0
  140. package/build/types/factories/src/precompiles/ArbInfo__factory.ts +64 -0
  141. package/build/types/factories/src/precompiles/ArbOwnerPublic__factory.ts +84 -0
  142. package/build/types/factories/src/precompiles/ArbOwner__factory.ts +393 -0
  143. package/build/types/factories/src/precompiles/ArbRetryableTx__factory.ts +321 -0
  144. package/build/types/factories/src/precompiles/ArbStatistics__factory.ts +64 -0
  145. package/build/types/factories/src/precompiles/ArbSys__factory.ts +389 -0
  146. package/build/types/factories/src/precompiles/ArbosActs__factory.ts +92 -0
  147. package/build/types/factories/src/precompiles/ArbosTest__factory.ts +39 -0
  148. package/build/types/factories/src/precompiles/index.ts +16 -0
  149. package/build/types/factories/src/rollup/AbsBridgeCreator__factory.ts +182 -0
  150. package/build/types/factories/src/rollup/AbsRollupCreator__factory.ts +285 -0
  151. package/build/types/factories/src/rollup/AbsRollupEventInbox__factory.ts +125 -0
  152. package/build/types/factories/src/rollup/BridgeCreator__factory.ts +294 -0
  153. package/build/types/factories/src/rollup/ERC20BridgeCreator__factory.ts +299 -0
  154. package/build/types/factories/src/rollup/ERC20RollupCreator__factory.ts +439 -0
  155. package/build/types/factories/src/rollup/ERC20RollupEventInbox__factory.ts +170 -0
  156. package/build/types/factories/src/rollup/IBridgeCreator.sol/IBridgeCreator__factory.ts +124 -0
  157. package/build/types/factories/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator__factory.ts +200 -0
  158. package/build/types/factories/src/rollup/IBridgeCreator.sol/IEthBridgeCreator__factory.ts +195 -0
  159. package/build/types/factories/src/rollup/IBridgeCreator.sol/index.ts +6 -0
  160. package/build/types/factories/src/rollup/IRollupAdmin__factory.ts +559 -0
  161. package/build/types/factories/src/rollup/IRollupCore__factory.ts +904 -0
  162. package/build/types/factories/src/rollup/IRollupCreator.sol/IERC20RollupCreator__factory.ts +182 -0
  163. package/build/types/factories/src/rollup/IRollupCreator.sol/IEthRollupCreator__factory.ts +177 -0
  164. package/build/types/factories/src/rollup/IRollupCreator.sol/IRollupCreator__factory.ts +69 -0
  165. package/build/types/factories/src/rollup/IRollupCreator.sol/index.ts +6 -0
  166. package/build/types/factories/src/rollup/IRollupEventInbox__factory.ts +83 -0
  167. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserAbs__factory.ts +1324 -0
  168. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserERC20__factory.ts +1458 -0
  169. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUser__factory.ts +1443 -0
  170. package/build/types/factories/src/rollup/IRollupLogic.sol/index.ts +6 -0
  171. package/build/types/factories/src/rollup/RollupAdminLogic__factory.ts +1859 -0
  172. package/build/types/factories/src/rollup/RollupCore__factory.ts +1066 -0
  173. package/build/types/factories/src/rollup/RollupCreator__factory.ts +434 -0
  174. package/build/types/factories/src/rollup/RollupEventInbox__factory.ts +166 -0
  175. package/build/types/factories/src/rollup/RollupProxy__factory.ts +277 -0
  176. package/build/types/factories/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic__factory.ts +1593 -0
  177. package/build/types/factories/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic__factory.ts +1767 -0
  178. package/build/types/factories/src/rollup/RollupUserLogic.sol/RollupUserLogic__factory.ts +1748 -0
  179. package/build/types/factories/src/rollup/RollupUserLogic.sol/index.ts +6 -0
  180. package/build/types/factories/src/rollup/ValidatorUtils__factory.ts +430 -0
  181. package/build/types/factories/src/rollup/ValidatorWalletCreator__factory.ts +205 -0
  182. package/build/types/factories/src/rollup/ValidatorWallet__factory.ts +486 -0
  183. package/build/types/factories/src/rollup/index.ts +25 -0
  184. package/build/types/factories/src/test-helpers/BridgeTester__factory.ts +654 -0
  185. package/build/types/factories/src/test-helpers/CryptographyPrimitivesTester__factory.ts +111 -0
  186. package/build/types/factories/src/test-helpers/EthVault__factory.ts +95 -0
  187. package/build/types/factories/src/test-helpers/MessageTester__factory.ts +135 -0
  188. package/build/types/factories/src/test-helpers/OutboxWithoutOptTester__factory.ts +575 -0
  189. package/build/types/factories/src/test-helpers/RollupMock__factory.ts +100 -0
  190. package/build/types/factories/src/test-helpers/ValueArrayTester__factory.ts +69 -0
  191. package/build/types/factories/src/test-helpers/index.ts +10 -0
  192. package/build/types/index.ts +240 -0
  193. package/build/types/src/bridge/AbsBridge.ts +863 -0
  194. package/build/types/src/bridge/AbsInbox.ts +664 -0
  195. package/build/types/src/bridge/AbsOutbox.ts +700 -0
  196. package/build/types/src/bridge/Bridge.ts +934 -0
  197. package/build/types/src/bridge/ERC20Bridge.ts +970 -0
  198. package/build/types/src/bridge/ERC20Inbox.ts +869 -0
  199. package/build/types/src/bridge/ERC20Outbox.ts +722 -0
  200. package/build/types/src/bridge/IBridge.ts +799 -0
  201. package/build/types/src/bridge/IDelayedMessageProvider.ts +108 -0
  202. package/build/types/src/bridge/IERC20Bridge.ts +914 -0
  203. package/build/types/src/bridge/IERC20Inbox.ts +788 -0
  204. package/build/types/src/bridge/IEthBridge.ts +871 -0
  205. package/build/types/src/bridge/IEthInbox.ts +1081 -0
  206. package/build/types/src/bridge/IInbox.ts +583 -0
  207. package/build/types/src/bridge/IOutbox.ts +654 -0
  208. package/build/types/src/bridge/IOwnable.ts +81 -0
  209. package/build/types/src/bridge/ISequencerInbox.ts +1038 -0
  210. package/build/types/src/bridge/Inbox.ts +1279 -0
  211. package/build/types/src/bridge/Outbox.ts +700 -0
  212. package/build/types/src/bridge/SequencerInbox.ts +1138 -0
  213. package/build/types/src/bridge/index.ts +23 -0
  214. package/build/types/src/challenge/ChallengeManager.ts +889 -0
  215. package/build/types/src/challenge/IChallengeManager.ts +543 -0
  216. package/build/types/src/challenge/IChallengeResultReceiver.ts +115 -0
  217. package/build/types/src/challenge/index.ts +6 -0
  218. package/build/types/src/index.ts +21 -0
  219. package/build/types/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.ts +128 -0
  220. package/build/types/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.ts +128 -0
  221. package/build/types/src/libraries/AdminFallbackProxy.sol/index.ts +5 -0
  222. package/build/types/src/libraries/DoubleLogicUUPSUpgradeable.ts +314 -0
  223. package/build/types/src/libraries/IGasRefunder.ts +112 -0
  224. package/build/types/src/libraries/UUPSNotUpgradeable.ts +164 -0
  225. package/build/types/src/libraries/index.ts +8 -0
  226. package/build/types/src/mocks/BridgeStub.ts +887 -0
  227. package/build/types/src/mocks/BridgeUnproxied.ts +934 -0
  228. package/build/types/src/mocks/InboxStub.ts +1076 -0
  229. package/build/types/src/mocks/MockResultReceiver.ts +301 -0
  230. package/build/types/src/mocks/ProxyAdminForBinding.ts +359 -0
  231. package/build/types/src/mocks/SequencerInboxStub.ts +1173 -0
  232. package/build/types/src/mocks/Simple.ts +514 -0
  233. package/build/types/src/mocks/SimpleProxy.ts +55 -0
  234. package/build/types/src/mocks/SingleExecutionChallenge.ts +889 -0
  235. package/build/types/src/mocks/TimedOutChallengeManager.ts +883 -0
  236. package/build/types/src/mocks/index.ts +13 -0
  237. package/build/types/src/node-interface/NodeInterface.ts +502 -0
  238. package/build/types/src/node-interface/NodeInterfaceDebug.ts +137 -0
  239. package/build/types/src/node-interface/index.ts +5 -0
  240. package/build/types/src/osp/HashProofHelper.ts +308 -0
  241. package/build/types/src/osp/IOneStepProofEntry.ts +128 -0
  242. package/build/types/src/osp/IOneStepProver.ts +284 -0
  243. package/build/types/src/osp/OneStepProofEntry.ts +196 -0
  244. package/build/types/src/osp/OneStepProver0.ts +284 -0
  245. package/build/types/src/osp/OneStepProverHostIo.ts +284 -0
  246. package/build/types/src/osp/OneStepProverMath.ts +284 -0
  247. package/build/types/src/osp/OneStepProverMemory.ts +284 -0
  248. package/build/types/src/osp/index.ts +11 -0
  249. package/build/types/src/precompiles/ArbAddressTable.ts +248 -0
  250. package/build/types/src/precompiles/ArbAggregator.ts +335 -0
  251. package/build/types/src/precompiles/ArbDebug.ts +292 -0
  252. package/build/types/src/precompiles/ArbFunctionTable.ts +150 -0
  253. package/build/types/src/precompiles/ArbGasInfo.ts +494 -0
  254. package/build/types/src/precompiles/ArbInfo.ts +105 -0
  255. package/build/types/src/precompiles/ArbOwner.ts +928 -0
  256. package/build/types/src/precompiles/ArbOwnerPublic.ts +157 -0
  257. package/build/types/src/precompiles/ArbRetryableTx.ts +467 -0
  258. package/build/types/src/precompiles/ArbStatistics.ts +93 -0
  259. package/build/types/src/precompiles/ArbSys.ts +553 -0
  260. package/build/types/src/precompiles/ArbosActs.ts +173 -0
  261. package/build/types/src/precompiles/ArbosTest.ts +97 -0
  262. package/build/types/src/precompiles/index.ts +16 -0
  263. package/build/types/src/rollup/AbsBridgeCreator.ts +348 -0
  264. package/build/types/src/rollup/AbsRollupCreator.ts +449 -0
  265. package/build/types/src/rollup/AbsRollupEventInbox.ts +218 -0
  266. package/build/types/src/rollup/BridgeCreator.ts +415 -0
  267. package/build/types/src/rollup/ERC20BridgeCreator.ts +420 -0
  268. package/build/types/src/rollup/ERC20RollupCreator.ts +561 -0
  269. package/build/types/src/rollup/ERC20RollupEventInbox.ts +218 -0
  270. package/build/types/src/rollup/IBridgeCreator.sol/IBridgeCreator.ts +231 -0
  271. package/build/types/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.ts +303 -0
  272. package/build/types/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.ts +298 -0
  273. package/build/types/src/rollup/IBridgeCreator.sol/index.ts +6 -0
  274. package/build/types/src/rollup/IRollupAdmin.ts +1003 -0
  275. package/build/types/src/rollup/IRollupCore.ts +1183 -0
  276. package/build/types/src/rollup/IRollupCreator.sol/IERC20RollupCreator.ts +247 -0
  277. package/build/types/src/rollup/IRollupCreator.sol/IEthRollupCreator.ts +242 -0
  278. package/build/types/src/rollup/IRollupCreator.sol/IRollupCreator.ts +134 -0
  279. package/build/types/src/rollup/IRollupCreator.sol/index.ts +6 -0
  280. package/build/types/src/rollup/IRollupEventInbox.ts +167 -0
  281. package/build/types/src/rollup/IRollupLogic.sol/IRollupUser.ts +2022 -0
  282. package/build/types/src/rollup/IRollupLogic.sol/IRollupUserAbs.ts +1901 -0
  283. package/build/types/src/rollup/IRollupLogic.sol/IRollupUserERC20.ts +2036 -0
  284. package/build/types/src/rollup/IRollupLogic.sol/index.ts +6 -0
  285. package/build/types/src/rollup/RollupAdminLogic.ts +2593 -0
  286. package/build/types/src/rollup/RollupCore.ts +1406 -0
  287. package/build/types/src/rollup/RollupCreator.ts +556 -0
  288. package/build/types/src/rollup/RollupEventInbox.ts +218 -0
  289. package/build/types/src/rollup/RollupProxy.ts +285 -0
  290. package/build/types/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.ts +2282 -0
  291. package/build/types/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.ts +2417 -0
  292. package/build/types/src/rollup/RollupUserLogic.sol/RollupUserLogic.ts +2403 -0
  293. package/build/types/src/rollup/RollupUserLogic.sol/index.ts +6 -0
  294. package/build/types/src/rollup/ValidatorUtils.ts +561 -0
  295. package/build/types/src/rollup/ValidatorWallet.ts +751 -0
  296. package/build/types/src/rollup/ValidatorWalletCreator.ts +294 -0
  297. package/build/types/src/rollup/index.ts +29 -0
  298. package/build/types/src/test-helpers/BridgeTester.ts +899 -0
  299. package/build/types/src/test-helpers/CryptographyPrimitivesTester.ts +141 -0
  300. package/build/types/src/test-helpers/EthVault.ts +141 -0
  301. package/build/types/src/test-helpers/MessageTester.ts +182 -0
  302. package/build/types/src/test-helpers/OutboxWithoutOptTester.ts +700 -0
  303. package/build/types/src/test-helpers/RollupMock.ts +164 -0
  304. package/build/types/src/test-helpers/ValueArrayTester.ts +81 -0
  305. package/build/types/src/test-helpers/index.ts +10 -0
  306. package/package.json +9 -3
  307. package/src/bridge/AbsBridge.sol +302 -0
  308. package/src/bridge/AbsInbox.sol +335 -0
  309. package/src/bridge/AbsOutbox.sol +295 -0
  310. package/src/bridge/Bridge.sol +15 -244
  311. package/src/bridge/ERC20Bridge.sol +74 -0
  312. package/src/bridge/ERC20Inbox.sol +141 -0
  313. package/src/bridge/ERC20Outbox.sol +27 -0
  314. package/src/bridge/IBridge.sol +1 -16
  315. package/src/bridge/IDelayedMessageProvider.sol +1 -1
  316. package/src/bridge/IERC20Bridge.sol +35 -0
  317. package/src/bridge/IERC20Inbox.sol +75 -0
  318. package/src/bridge/IEthBridge.sol +26 -0
  319. package/src/bridge/IEthInbox.sol +133 -0
  320. package/src/bridge/IInbox.sol +13 -123
  321. package/src/bridge/IOutbox.sol +1 -1
  322. package/src/bridge/IOwnable.sol +1 -1
  323. package/src/bridge/ISequencerInbox.sol +12 -4
  324. package/src/bridge/Inbox.sol +46 -333
  325. package/src/bridge/Messages.sol +1 -1
  326. package/src/bridge/Outbox.sol +8 -265
  327. package/src/bridge/SequencerInbox.sol +29 -8
  328. package/src/challenge/ChallengeLib.sol +1 -1
  329. package/src/challenge/ChallengeManager.sol +1 -1
  330. package/src/challenge/IChallengeManager.sol +1 -1
  331. package/src/challenge/IChallengeResultReceiver.sol +1 -1
  332. package/src/libraries/AddressAliasHelper.sol +1 -1
  333. package/src/libraries/AdminFallbackProxy.sol +1 -1
  334. package/src/libraries/ArbitrumChecker.sol +16 -0
  335. package/src/libraries/Constants.sol +1 -4
  336. package/src/libraries/CryptographyPrimitives.sol +1 -1
  337. package/src/libraries/DelegateCallAware.sol +1 -1
  338. package/src/libraries/DoubleLogicUUPSUpgradeable.sol +1 -1
  339. package/src/libraries/Error.sol +9 -1
  340. package/src/libraries/IGasRefunder.sol +1 -1
  341. package/src/libraries/MerkleLib.sol +1 -1
  342. package/src/libraries/MessageTypes.sol +1 -1
  343. package/src/mocks/BridgeStub.sol +3 -2
  344. package/src/mocks/BridgeUnproxied.sol +1 -1
  345. package/src/mocks/InboxStub.sol +28 -5
  346. package/src/mocks/MockResultReceiver.sol +1 -1
  347. package/src/mocks/ProxyAdminForBinding.sol +1 -1
  348. package/src/mocks/SequencerInboxStub.sol +3 -2
  349. package/src/mocks/Simple.sol +3 -1
  350. package/src/mocks/SimpleProxy.sol +1 -1
  351. package/src/mocks/SingleExecutionChallenge.sol +1 -1
  352. package/src/mocks/TimedOutChallengeManager.sol +1 -1
  353. package/src/node-interface/NodeInterface.sol +1 -1
  354. package/src/node-interface/NodeInterfaceDebug.sol +1 -1
  355. package/src/osp/HashProofHelper.sol +1 -1
  356. package/src/osp/IOneStepProofEntry.sol +1 -1
  357. package/src/osp/IOneStepProver.sol +2 -1
  358. package/src/osp/OneStepProofEntry.sol +1 -1
  359. package/src/osp/OneStepProver0.sol +1 -1
  360. package/src/osp/OneStepProverHostIo.sol +2 -1
  361. package/src/osp/OneStepProverMath.sol +1 -1
  362. package/src/osp/OneStepProverMemory.sol +2 -1
  363. package/src/precompiles/ArbAddressTable.sol +1 -1
  364. package/src/precompiles/ArbAggregator.sol +1 -1
  365. package/src/precompiles/ArbBLS.sol +1 -1
  366. package/src/precompiles/ArbDebug.sol +1 -1
  367. package/src/precompiles/ArbFunctionTable.sol +1 -1
  368. package/src/precompiles/ArbGasInfo.sol +1 -1
  369. package/src/precompiles/ArbInfo.sol +1 -1
  370. package/src/precompiles/ArbOwner.sol +1 -1
  371. package/src/precompiles/ArbOwnerPublic.sol +1 -1
  372. package/src/precompiles/ArbRetryableTx.sol +1 -1
  373. package/src/precompiles/ArbStatistics.sol +1 -1
  374. package/src/precompiles/ArbSys.sol +1 -1
  375. package/src/precompiles/ArbosTest.sol +1 -1
  376. package/src/rollup/AbsBridgeCreator.sol +117 -0
  377. package/src/rollup/AbsRollupCreator.sol +164 -0
  378. package/src/rollup/AbsRollupEventInbox.sol +62 -0
  379. package/src/rollup/BridgeCreator.sol +17 -88
  380. package/src/rollup/Config.sol +43 -0
  381. package/src/rollup/ERC20BridgeCreator.sol +48 -0
  382. package/src/rollup/ERC20RollupCreator.sol +48 -0
  383. package/src/rollup/ERC20RollupEventInbox.sol +26 -0
  384. package/src/rollup/IBridgeCreator.sol +64 -0
  385. package/src/rollup/IRollupAdmin.sol +138 -0
  386. package/src/rollup/IRollupCore.sol +7 -3
  387. package/src/rollup/IRollupCreator.sol +40 -0
  388. package/src/rollup/IRollupEventInbox.sol +1 -1
  389. package/src/rollup/IRollupLogic.sol +4 -132
  390. package/src/rollup/Node.sol +15 -1
  391. package/src/rollup/RollupAdminLogic.sol +6 -8
  392. package/src/rollup/RollupCore.sol +4 -11
  393. package/src/rollup/RollupCreator.sol +22 -97
  394. package/src/rollup/RollupEventInbox.sol +12 -35
  395. package/src/rollup/RollupLib.sol +2 -41
  396. package/src/rollup/RollupProxy.sol +3 -2
  397. package/src/rollup/RollupUserLogic.sol +6 -4
  398. package/src/rollup/ValidatorUtils.sol +2 -1
  399. package/src/rollup/ValidatorWallet.sol +1 -1
  400. package/src/rollup/ValidatorWalletCreator.sol +1 -1
  401. package/src/state/Deserialize.sol +2 -2
  402. package/src/state/GlobalState.sol +1 -1
  403. package/src/state/Instructions.sol +1 -1
  404. package/src/state/Machine.sol +1 -1
  405. package/src/state/MerkleProof.sol +1 -1
  406. package/src/state/Module.sol +3 -3
  407. package/src/state/ModuleMemory.sol +3 -8
  408. package/src/state/ModuleMemoryCompact.sol +17 -0
  409. package/src/state/PcArray.sol +1 -1
  410. package/src/state/StackFrame.sol +1 -1
  411. package/src/state/Value.sol +1 -1
  412. package/src/state/ValueArray.sol +1 -1
  413. package/src/state/ValueStack.sol +1 -1
  414. package/src/test-helpers/BridgeTester.sol +3 -2
  415. package/src/test-helpers/CryptographyPrimitivesTester.sol +1 -1
  416. package/src/test-helpers/EthVault.sol +20 -0
  417. package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
  418. package/src/test-helpers/MessageTester.sol +1 -1
  419. package/src/test-helpers/OutboxWithoutOptTester.sol +1 -1
  420. package/src/test-helpers/RollupMock.sol +1 -1
  421. package/src/test-helpers/ValueArrayTester.sol +1 -1
  422. package/hardhat.config.ts +0 -164
@@ -0,0 +1,2036 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type {
17
+ FunctionFragment,
18
+ Result,
19
+ EventFragment,
20
+ } from "@ethersproject/abi";
21
+ import type { Listener, Provider } from "@ethersproject/providers";
22
+ import type {
23
+ TypedEventFilter,
24
+ TypedEvent,
25
+ TypedListener,
26
+ OnEvent,
27
+ } from "../../../common";
28
+
29
+ export type GlobalStateStruct = {
30
+ bytes32Vals: [BytesLike, BytesLike];
31
+ u64Vals: [BigNumberish, BigNumberish];
32
+ };
33
+
34
+ export type GlobalStateStructOutput = [
35
+ [string, string],
36
+ [BigNumber, BigNumber]
37
+ ] & { bytes32Vals: [string, string]; u64Vals: [BigNumber, BigNumber] };
38
+
39
+ export type ExecutionStateStruct = {
40
+ globalState: GlobalStateStruct;
41
+ machineStatus: BigNumberish;
42
+ };
43
+
44
+ export type ExecutionStateStructOutput = [GlobalStateStructOutput, number] & {
45
+ globalState: GlobalStateStructOutput;
46
+ machineStatus: number;
47
+ };
48
+
49
+ export type AssertionStruct = {
50
+ beforeState: ExecutionStateStruct;
51
+ afterState: ExecutionStateStruct;
52
+ numBlocks: BigNumberish;
53
+ };
54
+
55
+ export type AssertionStructOutput = [
56
+ ExecutionStateStructOutput,
57
+ ExecutionStateStructOutput,
58
+ BigNumber
59
+ ] & {
60
+ beforeState: ExecutionStateStructOutput;
61
+ afterState: ExecutionStateStructOutput;
62
+ numBlocks: BigNumber;
63
+ };
64
+
65
+ export type NodeStruct = {
66
+ stateHash: BytesLike;
67
+ challengeHash: BytesLike;
68
+ confirmData: BytesLike;
69
+ prevNum: BigNumberish;
70
+ deadlineBlock: BigNumberish;
71
+ noChildConfirmedBeforeBlock: BigNumberish;
72
+ stakerCount: BigNumberish;
73
+ childStakerCount: BigNumberish;
74
+ firstChildBlock: BigNumberish;
75
+ latestChildNumber: BigNumberish;
76
+ createdAtBlock: BigNumberish;
77
+ nodeHash: BytesLike;
78
+ };
79
+
80
+ export type NodeStructOutput = [
81
+ string,
82
+ string,
83
+ string,
84
+ BigNumber,
85
+ BigNumber,
86
+ BigNumber,
87
+ BigNumber,
88
+ BigNumber,
89
+ BigNumber,
90
+ BigNumber,
91
+ BigNumber,
92
+ string
93
+ ] & {
94
+ stateHash: string;
95
+ challengeHash: string;
96
+ confirmData: string;
97
+ prevNum: BigNumber;
98
+ deadlineBlock: BigNumber;
99
+ noChildConfirmedBeforeBlock: BigNumber;
100
+ stakerCount: BigNumber;
101
+ childStakerCount: BigNumber;
102
+ firstChildBlock: BigNumber;
103
+ latestChildNumber: BigNumber;
104
+ createdAtBlock: BigNumber;
105
+ nodeHash: string;
106
+ };
107
+
108
+ export declare namespace IRollupCore {
109
+ export type StakerStruct = {
110
+ amountStaked: BigNumberish;
111
+ index: BigNumberish;
112
+ latestStakedNode: BigNumberish;
113
+ currentChallenge: BigNumberish;
114
+ isStaked: boolean;
115
+ };
116
+
117
+ export type StakerStructOutput = [
118
+ BigNumber,
119
+ BigNumber,
120
+ BigNumber,
121
+ BigNumber,
122
+ boolean
123
+ ] & {
124
+ amountStaked: BigNumber;
125
+ index: BigNumber;
126
+ latestStakedNode: BigNumber;
127
+ currentChallenge: BigNumber;
128
+ isStaked: boolean;
129
+ };
130
+ }
131
+
132
+ export interface IRollupUserERC20Interface extends utils.Interface {
133
+ functions: {
134
+ "addToDeposit(address,uint256)": FunctionFragment;
135
+ "amountStaked(address)": FunctionFragment;
136
+ "baseStake()": FunctionFragment;
137
+ "bridge()": FunctionFragment;
138
+ "chainId()": FunctionFragment;
139
+ "challengeManager()": FunctionFragment;
140
+ "confirmNextNode(bytes32,bytes32)": FunctionFragment;
141
+ "confirmPeriodBlocks()": FunctionFragment;
142
+ "countStakedZombies(uint64)": FunctionFragment;
143
+ "countZombiesStakedOnChildren(uint64)": FunctionFragment;
144
+ "createChallenge(address[2],uint64[2],uint8[2],tuple[2],uint64,bytes32,uint256[2],bytes32[2])": FunctionFragment;
145
+ "currentChallenge(address)": FunctionFragment;
146
+ "currentRequiredStake()": FunctionFragment;
147
+ "extraChallengeTimeBlocks()": FunctionFragment;
148
+ "firstUnresolvedNode()": FunctionFragment;
149
+ "getNode(uint64)": FunctionFragment;
150
+ "getNodeCreationBlockForLogLookup(uint64)": FunctionFragment;
151
+ "getStaker(address)": FunctionFragment;
152
+ "getStakerAddress(uint64)": FunctionFragment;
153
+ "initialize(address)": FunctionFragment;
154
+ "isERC20Enabled()": FunctionFragment;
155
+ "isStaked(address)": FunctionFragment;
156
+ "isValidator(address)": FunctionFragment;
157
+ "isZombie(address)": FunctionFragment;
158
+ "lastStakeBlock()": FunctionFragment;
159
+ "latestConfirmed()": FunctionFragment;
160
+ "latestNodeCreated()": FunctionFragment;
161
+ "latestStakedNode(address)": FunctionFragment;
162
+ "loserStakeEscrow()": FunctionFragment;
163
+ "minimumAssertionPeriod()": FunctionFragment;
164
+ "newStakeOnExistingNode(uint256,uint64,bytes32)": FunctionFragment;
165
+ "newStakeOnNewNode(uint256,(((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32,uint256)": FunctionFragment;
166
+ "nodeHasStaker(uint64,address)": FunctionFragment;
167
+ "outbox()": FunctionFragment;
168
+ "owner()": FunctionFragment;
169
+ "reduceDeposit(uint256)": FunctionFragment;
170
+ "rejectNextNode(address)": FunctionFragment;
171
+ "removeOldZombies(uint256)": FunctionFragment;
172
+ "removeWhitelistAfterFork()": FunctionFragment;
173
+ "removeWhitelistAfterValidatorAfk()": FunctionFragment;
174
+ "removeZombie(uint256,uint256)": FunctionFragment;
175
+ "requireUnresolved(uint256)": FunctionFragment;
176
+ "requireUnresolvedExists()": FunctionFragment;
177
+ "requiredStake(uint256,uint64,uint64)": FunctionFragment;
178
+ "returnOldDeposit(address)": FunctionFragment;
179
+ "rollupEventInbox()": FunctionFragment;
180
+ "sequencerInbox()": FunctionFragment;
181
+ "stakeOnExistingNode(uint64,bytes32)": FunctionFragment;
182
+ "stakeOnNewNode((((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32,uint256)": FunctionFragment;
183
+ "stakeToken()": FunctionFragment;
184
+ "stakerCount()": FunctionFragment;
185
+ "validatorWhitelistDisabled()": FunctionFragment;
186
+ "wasmModuleRoot()": FunctionFragment;
187
+ "withdrawStakerFunds()": FunctionFragment;
188
+ "withdrawableFunds(address)": FunctionFragment;
189
+ "zombieAddress(uint256)": FunctionFragment;
190
+ "zombieCount()": FunctionFragment;
191
+ "zombieLatestStakedNode(uint256)": FunctionFragment;
192
+ };
193
+
194
+ getFunction(
195
+ nameOrSignatureOrTopic:
196
+ | "addToDeposit"
197
+ | "amountStaked"
198
+ | "baseStake"
199
+ | "bridge"
200
+ | "chainId"
201
+ | "challengeManager"
202
+ | "confirmNextNode"
203
+ | "confirmPeriodBlocks"
204
+ | "countStakedZombies"
205
+ | "countZombiesStakedOnChildren"
206
+ | "createChallenge"
207
+ | "currentChallenge"
208
+ | "currentRequiredStake"
209
+ | "extraChallengeTimeBlocks"
210
+ | "firstUnresolvedNode"
211
+ | "getNode"
212
+ | "getNodeCreationBlockForLogLookup"
213
+ | "getStaker"
214
+ | "getStakerAddress"
215
+ | "initialize"
216
+ | "isERC20Enabled"
217
+ | "isStaked"
218
+ | "isValidator"
219
+ | "isZombie"
220
+ | "lastStakeBlock"
221
+ | "latestConfirmed"
222
+ | "latestNodeCreated"
223
+ | "latestStakedNode"
224
+ | "loserStakeEscrow"
225
+ | "minimumAssertionPeriod"
226
+ | "newStakeOnExistingNode"
227
+ | "newStakeOnNewNode"
228
+ | "nodeHasStaker"
229
+ | "outbox"
230
+ | "owner"
231
+ | "reduceDeposit"
232
+ | "rejectNextNode"
233
+ | "removeOldZombies"
234
+ | "removeWhitelistAfterFork"
235
+ | "removeWhitelistAfterValidatorAfk"
236
+ | "removeZombie"
237
+ | "requireUnresolved"
238
+ | "requireUnresolvedExists"
239
+ | "requiredStake"
240
+ | "returnOldDeposit"
241
+ | "rollupEventInbox"
242
+ | "sequencerInbox"
243
+ | "stakeOnExistingNode"
244
+ | "stakeOnNewNode"
245
+ | "stakeToken"
246
+ | "stakerCount"
247
+ | "validatorWhitelistDisabled"
248
+ | "wasmModuleRoot"
249
+ | "withdrawStakerFunds"
250
+ | "withdrawableFunds"
251
+ | "zombieAddress"
252
+ | "zombieCount"
253
+ | "zombieLatestStakedNode"
254
+ ): FunctionFragment;
255
+
256
+ encodeFunctionData(
257
+ functionFragment: "addToDeposit",
258
+ values: [string, BigNumberish]
259
+ ): string;
260
+ encodeFunctionData(
261
+ functionFragment: "amountStaked",
262
+ values: [string]
263
+ ): string;
264
+ encodeFunctionData(functionFragment: "baseStake", values?: undefined): string;
265
+ encodeFunctionData(functionFragment: "bridge", values?: undefined): string;
266
+ encodeFunctionData(functionFragment: "chainId", values?: undefined): string;
267
+ encodeFunctionData(
268
+ functionFragment: "challengeManager",
269
+ values?: undefined
270
+ ): string;
271
+ encodeFunctionData(
272
+ functionFragment: "confirmNextNode",
273
+ values: [BytesLike, BytesLike]
274
+ ): string;
275
+ encodeFunctionData(
276
+ functionFragment: "confirmPeriodBlocks",
277
+ values?: undefined
278
+ ): string;
279
+ encodeFunctionData(
280
+ functionFragment: "countStakedZombies",
281
+ values: [BigNumberish]
282
+ ): string;
283
+ encodeFunctionData(
284
+ functionFragment: "countZombiesStakedOnChildren",
285
+ values: [BigNumberish]
286
+ ): string;
287
+ encodeFunctionData(
288
+ functionFragment: "createChallenge",
289
+ values: [
290
+ [string, string],
291
+ [BigNumberish, BigNumberish],
292
+ [BigNumberish, BigNumberish],
293
+ [GlobalStateStruct, GlobalStateStruct],
294
+ BigNumberish,
295
+ BytesLike,
296
+ [BigNumberish, BigNumberish],
297
+ [BytesLike, BytesLike]
298
+ ]
299
+ ): string;
300
+ encodeFunctionData(
301
+ functionFragment: "currentChallenge",
302
+ values: [string]
303
+ ): string;
304
+ encodeFunctionData(
305
+ functionFragment: "currentRequiredStake",
306
+ values?: undefined
307
+ ): string;
308
+ encodeFunctionData(
309
+ functionFragment: "extraChallengeTimeBlocks",
310
+ values?: undefined
311
+ ): string;
312
+ encodeFunctionData(
313
+ functionFragment: "firstUnresolvedNode",
314
+ values?: undefined
315
+ ): string;
316
+ encodeFunctionData(
317
+ functionFragment: "getNode",
318
+ values: [BigNumberish]
319
+ ): string;
320
+ encodeFunctionData(
321
+ functionFragment: "getNodeCreationBlockForLogLookup",
322
+ values: [BigNumberish]
323
+ ): string;
324
+ encodeFunctionData(functionFragment: "getStaker", values: [string]): string;
325
+ encodeFunctionData(
326
+ functionFragment: "getStakerAddress",
327
+ values: [BigNumberish]
328
+ ): string;
329
+ encodeFunctionData(functionFragment: "initialize", values: [string]): string;
330
+ encodeFunctionData(
331
+ functionFragment: "isERC20Enabled",
332
+ values?: undefined
333
+ ): string;
334
+ encodeFunctionData(functionFragment: "isStaked", values: [string]): string;
335
+ encodeFunctionData(functionFragment: "isValidator", values: [string]): string;
336
+ encodeFunctionData(functionFragment: "isZombie", values: [string]): string;
337
+ encodeFunctionData(
338
+ functionFragment: "lastStakeBlock",
339
+ values?: undefined
340
+ ): string;
341
+ encodeFunctionData(
342
+ functionFragment: "latestConfirmed",
343
+ values?: undefined
344
+ ): string;
345
+ encodeFunctionData(
346
+ functionFragment: "latestNodeCreated",
347
+ values?: undefined
348
+ ): string;
349
+ encodeFunctionData(
350
+ functionFragment: "latestStakedNode",
351
+ values: [string]
352
+ ): string;
353
+ encodeFunctionData(
354
+ functionFragment: "loserStakeEscrow",
355
+ values?: undefined
356
+ ): string;
357
+ encodeFunctionData(
358
+ functionFragment: "minimumAssertionPeriod",
359
+ values?: undefined
360
+ ): string;
361
+ encodeFunctionData(
362
+ functionFragment: "newStakeOnExistingNode",
363
+ values: [BigNumberish, BigNumberish, BytesLike]
364
+ ): string;
365
+ encodeFunctionData(
366
+ functionFragment: "newStakeOnNewNode",
367
+ values: [BigNumberish, AssertionStruct, BytesLike, BigNumberish]
368
+ ): string;
369
+ encodeFunctionData(
370
+ functionFragment: "nodeHasStaker",
371
+ values: [BigNumberish, string]
372
+ ): string;
373
+ encodeFunctionData(functionFragment: "outbox", values?: undefined): string;
374
+ encodeFunctionData(functionFragment: "owner", values?: undefined): string;
375
+ encodeFunctionData(
376
+ functionFragment: "reduceDeposit",
377
+ values: [BigNumberish]
378
+ ): string;
379
+ encodeFunctionData(
380
+ functionFragment: "rejectNextNode",
381
+ values: [string]
382
+ ): string;
383
+ encodeFunctionData(
384
+ functionFragment: "removeOldZombies",
385
+ values: [BigNumberish]
386
+ ): string;
387
+ encodeFunctionData(
388
+ functionFragment: "removeWhitelistAfterFork",
389
+ values?: undefined
390
+ ): string;
391
+ encodeFunctionData(
392
+ functionFragment: "removeWhitelistAfterValidatorAfk",
393
+ values?: undefined
394
+ ): string;
395
+ encodeFunctionData(
396
+ functionFragment: "removeZombie",
397
+ values: [BigNumberish, BigNumberish]
398
+ ): string;
399
+ encodeFunctionData(
400
+ functionFragment: "requireUnresolved",
401
+ values: [BigNumberish]
402
+ ): string;
403
+ encodeFunctionData(
404
+ functionFragment: "requireUnresolvedExists",
405
+ values?: undefined
406
+ ): string;
407
+ encodeFunctionData(
408
+ functionFragment: "requiredStake",
409
+ values: [BigNumberish, BigNumberish, BigNumberish]
410
+ ): string;
411
+ encodeFunctionData(
412
+ functionFragment: "returnOldDeposit",
413
+ values: [string]
414
+ ): string;
415
+ encodeFunctionData(
416
+ functionFragment: "rollupEventInbox",
417
+ values?: undefined
418
+ ): string;
419
+ encodeFunctionData(
420
+ functionFragment: "sequencerInbox",
421
+ values?: undefined
422
+ ): string;
423
+ encodeFunctionData(
424
+ functionFragment: "stakeOnExistingNode",
425
+ values: [BigNumberish, BytesLike]
426
+ ): string;
427
+ encodeFunctionData(
428
+ functionFragment: "stakeOnNewNode",
429
+ values: [AssertionStruct, BytesLike, BigNumberish]
430
+ ): string;
431
+ encodeFunctionData(
432
+ functionFragment: "stakeToken",
433
+ values?: undefined
434
+ ): string;
435
+ encodeFunctionData(
436
+ functionFragment: "stakerCount",
437
+ values?: undefined
438
+ ): string;
439
+ encodeFunctionData(
440
+ functionFragment: "validatorWhitelistDisabled",
441
+ values?: undefined
442
+ ): string;
443
+ encodeFunctionData(
444
+ functionFragment: "wasmModuleRoot",
445
+ values?: undefined
446
+ ): string;
447
+ encodeFunctionData(
448
+ functionFragment: "withdrawStakerFunds",
449
+ values?: undefined
450
+ ): string;
451
+ encodeFunctionData(
452
+ functionFragment: "withdrawableFunds",
453
+ values: [string]
454
+ ): string;
455
+ encodeFunctionData(
456
+ functionFragment: "zombieAddress",
457
+ values: [BigNumberish]
458
+ ): string;
459
+ encodeFunctionData(
460
+ functionFragment: "zombieCount",
461
+ values?: undefined
462
+ ): string;
463
+ encodeFunctionData(
464
+ functionFragment: "zombieLatestStakedNode",
465
+ values: [BigNumberish]
466
+ ): string;
467
+
468
+ decodeFunctionResult(
469
+ functionFragment: "addToDeposit",
470
+ data: BytesLike
471
+ ): Result;
472
+ decodeFunctionResult(
473
+ functionFragment: "amountStaked",
474
+ data: BytesLike
475
+ ): Result;
476
+ decodeFunctionResult(functionFragment: "baseStake", data: BytesLike): Result;
477
+ decodeFunctionResult(functionFragment: "bridge", data: BytesLike): Result;
478
+ decodeFunctionResult(functionFragment: "chainId", data: BytesLike): Result;
479
+ decodeFunctionResult(
480
+ functionFragment: "challengeManager",
481
+ data: BytesLike
482
+ ): Result;
483
+ decodeFunctionResult(
484
+ functionFragment: "confirmNextNode",
485
+ data: BytesLike
486
+ ): Result;
487
+ decodeFunctionResult(
488
+ functionFragment: "confirmPeriodBlocks",
489
+ data: BytesLike
490
+ ): Result;
491
+ decodeFunctionResult(
492
+ functionFragment: "countStakedZombies",
493
+ data: BytesLike
494
+ ): Result;
495
+ decodeFunctionResult(
496
+ functionFragment: "countZombiesStakedOnChildren",
497
+ data: BytesLike
498
+ ): Result;
499
+ decodeFunctionResult(
500
+ functionFragment: "createChallenge",
501
+ data: BytesLike
502
+ ): Result;
503
+ decodeFunctionResult(
504
+ functionFragment: "currentChallenge",
505
+ data: BytesLike
506
+ ): Result;
507
+ decodeFunctionResult(
508
+ functionFragment: "currentRequiredStake",
509
+ data: BytesLike
510
+ ): Result;
511
+ decodeFunctionResult(
512
+ functionFragment: "extraChallengeTimeBlocks",
513
+ data: BytesLike
514
+ ): Result;
515
+ decodeFunctionResult(
516
+ functionFragment: "firstUnresolvedNode",
517
+ data: BytesLike
518
+ ): Result;
519
+ decodeFunctionResult(functionFragment: "getNode", data: BytesLike): Result;
520
+ decodeFunctionResult(
521
+ functionFragment: "getNodeCreationBlockForLogLookup",
522
+ data: BytesLike
523
+ ): Result;
524
+ decodeFunctionResult(functionFragment: "getStaker", data: BytesLike): Result;
525
+ decodeFunctionResult(
526
+ functionFragment: "getStakerAddress",
527
+ data: BytesLike
528
+ ): Result;
529
+ decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
530
+ decodeFunctionResult(
531
+ functionFragment: "isERC20Enabled",
532
+ data: BytesLike
533
+ ): Result;
534
+ decodeFunctionResult(functionFragment: "isStaked", data: BytesLike): Result;
535
+ decodeFunctionResult(
536
+ functionFragment: "isValidator",
537
+ data: BytesLike
538
+ ): Result;
539
+ decodeFunctionResult(functionFragment: "isZombie", data: BytesLike): Result;
540
+ decodeFunctionResult(
541
+ functionFragment: "lastStakeBlock",
542
+ data: BytesLike
543
+ ): Result;
544
+ decodeFunctionResult(
545
+ functionFragment: "latestConfirmed",
546
+ data: BytesLike
547
+ ): Result;
548
+ decodeFunctionResult(
549
+ functionFragment: "latestNodeCreated",
550
+ data: BytesLike
551
+ ): Result;
552
+ decodeFunctionResult(
553
+ functionFragment: "latestStakedNode",
554
+ data: BytesLike
555
+ ): Result;
556
+ decodeFunctionResult(
557
+ functionFragment: "loserStakeEscrow",
558
+ data: BytesLike
559
+ ): Result;
560
+ decodeFunctionResult(
561
+ functionFragment: "minimumAssertionPeriod",
562
+ data: BytesLike
563
+ ): Result;
564
+ decodeFunctionResult(
565
+ functionFragment: "newStakeOnExistingNode",
566
+ data: BytesLike
567
+ ): Result;
568
+ decodeFunctionResult(
569
+ functionFragment: "newStakeOnNewNode",
570
+ data: BytesLike
571
+ ): Result;
572
+ decodeFunctionResult(
573
+ functionFragment: "nodeHasStaker",
574
+ data: BytesLike
575
+ ): Result;
576
+ decodeFunctionResult(functionFragment: "outbox", data: BytesLike): Result;
577
+ decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
578
+ decodeFunctionResult(
579
+ functionFragment: "reduceDeposit",
580
+ data: BytesLike
581
+ ): Result;
582
+ decodeFunctionResult(
583
+ functionFragment: "rejectNextNode",
584
+ data: BytesLike
585
+ ): Result;
586
+ decodeFunctionResult(
587
+ functionFragment: "removeOldZombies",
588
+ data: BytesLike
589
+ ): Result;
590
+ decodeFunctionResult(
591
+ functionFragment: "removeWhitelistAfterFork",
592
+ data: BytesLike
593
+ ): Result;
594
+ decodeFunctionResult(
595
+ functionFragment: "removeWhitelistAfterValidatorAfk",
596
+ data: BytesLike
597
+ ): Result;
598
+ decodeFunctionResult(
599
+ functionFragment: "removeZombie",
600
+ data: BytesLike
601
+ ): Result;
602
+ decodeFunctionResult(
603
+ functionFragment: "requireUnresolved",
604
+ data: BytesLike
605
+ ): Result;
606
+ decodeFunctionResult(
607
+ functionFragment: "requireUnresolvedExists",
608
+ data: BytesLike
609
+ ): Result;
610
+ decodeFunctionResult(
611
+ functionFragment: "requiredStake",
612
+ data: BytesLike
613
+ ): Result;
614
+ decodeFunctionResult(
615
+ functionFragment: "returnOldDeposit",
616
+ data: BytesLike
617
+ ): Result;
618
+ decodeFunctionResult(
619
+ functionFragment: "rollupEventInbox",
620
+ data: BytesLike
621
+ ): Result;
622
+ decodeFunctionResult(
623
+ functionFragment: "sequencerInbox",
624
+ data: BytesLike
625
+ ): Result;
626
+ decodeFunctionResult(
627
+ functionFragment: "stakeOnExistingNode",
628
+ data: BytesLike
629
+ ): Result;
630
+ decodeFunctionResult(
631
+ functionFragment: "stakeOnNewNode",
632
+ data: BytesLike
633
+ ): Result;
634
+ decodeFunctionResult(functionFragment: "stakeToken", data: BytesLike): Result;
635
+ decodeFunctionResult(
636
+ functionFragment: "stakerCount",
637
+ data: BytesLike
638
+ ): Result;
639
+ decodeFunctionResult(
640
+ functionFragment: "validatorWhitelistDisabled",
641
+ data: BytesLike
642
+ ): Result;
643
+ decodeFunctionResult(
644
+ functionFragment: "wasmModuleRoot",
645
+ data: BytesLike
646
+ ): Result;
647
+ decodeFunctionResult(
648
+ functionFragment: "withdrawStakerFunds",
649
+ data: BytesLike
650
+ ): Result;
651
+ decodeFunctionResult(
652
+ functionFragment: "withdrawableFunds",
653
+ data: BytesLike
654
+ ): Result;
655
+ decodeFunctionResult(
656
+ functionFragment: "zombieAddress",
657
+ data: BytesLike
658
+ ): Result;
659
+ decodeFunctionResult(
660
+ functionFragment: "zombieCount",
661
+ data: BytesLike
662
+ ): Result;
663
+ decodeFunctionResult(
664
+ functionFragment: "zombieLatestStakedNode",
665
+ data: BytesLike
666
+ ): Result;
667
+
668
+ events: {
669
+ "NodeConfirmed(uint64,bytes32,bytes32)": EventFragment;
670
+ "NodeCreated(uint64,bytes32,bytes32,bytes32,tuple,bytes32,bytes32,uint256)": EventFragment;
671
+ "NodeRejected(uint64)": EventFragment;
672
+ "RollupChallengeStarted(uint64,address,address,uint64)": EventFragment;
673
+ "RollupInitialized(bytes32,uint256)": EventFragment;
674
+ "UserStakeUpdated(address,uint256,uint256)": EventFragment;
675
+ "UserWithdrawableFundsUpdated(address,uint256,uint256)": EventFragment;
676
+ };
677
+
678
+ getEvent(nameOrSignatureOrTopic: "NodeConfirmed"): EventFragment;
679
+ getEvent(nameOrSignatureOrTopic: "NodeCreated"): EventFragment;
680
+ getEvent(nameOrSignatureOrTopic: "NodeRejected"): EventFragment;
681
+ getEvent(nameOrSignatureOrTopic: "RollupChallengeStarted"): EventFragment;
682
+ getEvent(nameOrSignatureOrTopic: "RollupInitialized"): EventFragment;
683
+ getEvent(nameOrSignatureOrTopic: "UserStakeUpdated"): EventFragment;
684
+ getEvent(
685
+ nameOrSignatureOrTopic: "UserWithdrawableFundsUpdated"
686
+ ): EventFragment;
687
+ }
688
+
689
+ export interface NodeConfirmedEventObject {
690
+ nodeNum: BigNumber;
691
+ blockHash: string;
692
+ sendRoot: string;
693
+ }
694
+ export type NodeConfirmedEvent = TypedEvent<
695
+ [BigNumber, string, string],
696
+ NodeConfirmedEventObject
697
+ >;
698
+
699
+ export type NodeConfirmedEventFilter = TypedEventFilter<NodeConfirmedEvent>;
700
+
701
+ export interface NodeCreatedEventObject {
702
+ nodeNum: BigNumber;
703
+ parentNodeHash: string;
704
+ nodeHash: string;
705
+ executionHash: string;
706
+ assertion: AssertionStructOutput;
707
+ afterInboxBatchAcc: string;
708
+ wasmModuleRoot: string;
709
+ inboxMaxCount: BigNumber;
710
+ }
711
+ export type NodeCreatedEvent = TypedEvent<
712
+ [
713
+ BigNumber,
714
+ string,
715
+ string,
716
+ string,
717
+ AssertionStructOutput,
718
+ string,
719
+ string,
720
+ BigNumber
721
+ ],
722
+ NodeCreatedEventObject
723
+ >;
724
+
725
+ export type NodeCreatedEventFilter = TypedEventFilter<NodeCreatedEvent>;
726
+
727
+ export interface NodeRejectedEventObject {
728
+ nodeNum: BigNumber;
729
+ }
730
+ export type NodeRejectedEvent = TypedEvent<
731
+ [BigNumber],
732
+ NodeRejectedEventObject
733
+ >;
734
+
735
+ export type NodeRejectedEventFilter = TypedEventFilter<NodeRejectedEvent>;
736
+
737
+ export interface RollupChallengeStartedEventObject {
738
+ challengeIndex: BigNumber;
739
+ asserter: string;
740
+ challenger: string;
741
+ challengedNode: BigNumber;
742
+ }
743
+ export type RollupChallengeStartedEvent = TypedEvent<
744
+ [BigNumber, string, string, BigNumber],
745
+ RollupChallengeStartedEventObject
746
+ >;
747
+
748
+ export type RollupChallengeStartedEventFilter =
749
+ TypedEventFilter<RollupChallengeStartedEvent>;
750
+
751
+ export interface RollupInitializedEventObject {
752
+ machineHash: string;
753
+ chainId: BigNumber;
754
+ }
755
+ export type RollupInitializedEvent = TypedEvent<
756
+ [string, BigNumber],
757
+ RollupInitializedEventObject
758
+ >;
759
+
760
+ export type RollupInitializedEventFilter =
761
+ TypedEventFilter<RollupInitializedEvent>;
762
+
763
+ export interface UserStakeUpdatedEventObject {
764
+ user: string;
765
+ initialBalance: BigNumber;
766
+ finalBalance: BigNumber;
767
+ }
768
+ export type UserStakeUpdatedEvent = TypedEvent<
769
+ [string, BigNumber, BigNumber],
770
+ UserStakeUpdatedEventObject
771
+ >;
772
+
773
+ export type UserStakeUpdatedEventFilter =
774
+ TypedEventFilter<UserStakeUpdatedEvent>;
775
+
776
+ export interface UserWithdrawableFundsUpdatedEventObject {
777
+ user: string;
778
+ initialBalance: BigNumber;
779
+ finalBalance: BigNumber;
780
+ }
781
+ export type UserWithdrawableFundsUpdatedEvent = TypedEvent<
782
+ [string, BigNumber, BigNumber],
783
+ UserWithdrawableFundsUpdatedEventObject
784
+ >;
785
+
786
+ export type UserWithdrawableFundsUpdatedEventFilter =
787
+ TypedEventFilter<UserWithdrawableFundsUpdatedEvent>;
788
+
789
+ export interface IRollupUserERC20 extends BaseContract {
790
+ connect(signerOrProvider: Signer | Provider | string): this;
791
+ attach(addressOrName: string): this;
792
+ deployed(): Promise<this>;
793
+
794
+ interface: IRollupUserERC20Interface;
795
+
796
+ queryFilter<TEvent extends TypedEvent>(
797
+ event: TypedEventFilter<TEvent>,
798
+ fromBlockOrBlockhash?: string | number | undefined,
799
+ toBlock?: string | number | undefined
800
+ ): Promise<Array<TEvent>>;
801
+
802
+ listeners<TEvent extends TypedEvent>(
803
+ eventFilter?: TypedEventFilter<TEvent>
804
+ ): Array<TypedListener<TEvent>>;
805
+ listeners(eventName?: string): Array<Listener>;
806
+ removeAllListeners<TEvent extends TypedEvent>(
807
+ eventFilter: TypedEventFilter<TEvent>
808
+ ): this;
809
+ removeAllListeners(eventName?: string): this;
810
+ off: OnEvent<this>;
811
+ on: OnEvent<this>;
812
+ once: OnEvent<this>;
813
+ removeListener: OnEvent<this>;
814
+
815
+ functions: {
816
+ addToDeposit(
817
+ stakerAddress: string,
818
+ tokenAmount: BigNumberish,
819
+ overrides?: Overrides & { from?: string | Promise<string> }
820
+ ): Promise<ContractTransaction>;
821
+
822
+ amountStaked(
823
+ staker: string,
824
+ overrides?: CallOverrides
825
+ ): Promise<[BigNumber]>;
826
+
827
+ baseStake(overrides?: CallOverrides): Promise<[BigNumber]>;
828
+
829
+ bridge(overrides?: CallOverrides): Promise<[string]>;
830
+
831
+ chainId(overrides?: CallOverrides): Promise<[BigNumber]>;
832
+
833
+ challengeManager(overrides?: CallOverrides): Promise<[string]>;
834
+
835
+ confirmNextNode(
836
+ blockHash: BytesLike,
837
+ sendRoot: BytesLike,
838
+ overrides?: Overrides & { from?: string | Promise<string> }
839
+ ): Promise<ContractTransaction>;
840
+
841
+ confirmPeriodBlocks(overrides?: CallOverrides): Promise<[BigNumber]>;
842
+
843
+ countStakedZombies(
844
+ nodeNum: BigNumberish,
845
+ overrides?: CallOverrides
846
+ ): Promise<[BigNumber]>;
847
+
848
+ countZombiesStakedOnChildren(
849
+ nodeNum: BigNumberish,
850
+ overrides?: CallOverrides
851
+ ): Promise<[BigNumber]>;
852
+
853
+ createChallenge(
854
+ stakers: [string, string],
855
+ nodeNums: [BigNumberish, BigNumberish],
856
+ machineStatuses: [BigNumberish, BigNumberish],
857
+ globalStates: [GlobalStateStruct, GlobalStateStruct],
858
+ numBlocks: BigNumberish,
859
+ secondExecutionHash: BytesLike,
860
+ proposedTimes: [BigNumberish, BigNumberish],
861
+ wasmModuleRoots: [BytesLike, BytesLike],
862
+ overrides?: Overrides & { from?: string | Promise<string> }
863
+ ): Promise<ContractTransaction>;
864
+
865
+ currentChallenge(
866
+ staker: string,
867
+ overrides?: CallOverrides
868
+ ): Promise<[BigNumber]>;
869
+
870
+ currentRequiredStake(overrides?: CallOverrides): Promise<[BigNumber]>;
871
+
872
+ extraChallengeTimeBlocks(overrides?: CallOverrides): Promise<[BigNumber]>;
873
+
874
+ firstUnresolvedNode(overrides?: CallOverrides): Promise<[BigNumber]>;
875
+
876
+ getNode(
877
+ nodeNum: BigNumberish,
878
+ overrides?: CallOverrides
879
+ ): Promise<[NodeStructOutput]>;
880
+
881
+ getNodeCreationBlockForLogLookup(
882
+ nodeNum: BigNumberish,
883
+ overrides?: CallOverrides
884
+ ): Promise<[BigNumber]>;
885
+
886
+ getStaker(
887
+ staker: string,
888
+ overrides?: CallOverrides
889
+ ): Promise<[IRollupCore.StakerStructOutput]>;
890
+
891
+ getStakerAddress(
892
+ stakerNum: BigNumberish,
893
+ overrides?: CallOverrides
894
+ ): Promise<[string]>;
895
+
896
+ initialize(stakeToken: string, overrides?: CallOverrides): Promise<[void]>;
897
+
898
+ isERC20Enabled(overrides?: CallOverrides): Promise<[boolean]>;
899
+
900
+ isStaked(staker: string, overrides?: CallOverrides): Promise<[boolean]>;
901
+
902
+ isValidator(arg0: string, overrides?: CallOverrides): Promise<[boolean]>;
903
+
904
+ isZombie(staker: string, overrides?: CallOverrides): Promise<[boolean]>;
905
+
906
+ lastStakeBlock(overrides?: CallOverrides): Promise<[BigNumber]>;
907
+
908
+ latestConfirmed(overrides?: CallOverrides): Promise<[BigNumber]>;
909
+
910
+ latestNodeCreated(overrides?: CallOverrides): Promise<[BigNumber]>;
911
+
912
+ latestStakedNode(
913
+ staker: string,
914
+ overrides?: CallOverrides
915
+ ): Promise<[BigNumber]>;
916
+
917
+ loserStakeEscrow(overrides?: CallOverrides): Promise<[string]>;
918
+
919
+ minimumAssertionPeriod(overrides?: CallOverrides): Promise<[BigNumber]>;
920
+
921
+ newStakeOnExistingNode(
922
+ tokenAmount: BigNumberish,
923
+ nodeNum: BigNumberish,
924
+ nodeHash: BytesLike,
925
+ overrides?: Overrides & { from?: string | Promise<string> }
926
+ ): Promise<ContractTransaction>;
927
+
928
+ newStakeOnNewNode(
929
+ tokenAmount: BigNumberish,
930
+ assertion: AssertionStruct,
931
+ expectedNodeHash: BytesLike,
932
+ prevNodeInboxMaxCount: BigNumberish,
933
+ overrides?: Overrides & { from?: string | Promise<string> }
934
+ ): Promise<ContractTransaction>;
935
+
936
+ nodeHasStaker(
937
+ nodeNum: BigNumberish,
938
+ staker: string,
939
+ overrides?: CallOverrides
940
+ ): Promise<[boolean]>;
941
+
942
+ outbox(overrides?: CallOverrides): Promise<[string]>;
943
+
944
+ owner(overrides?: CallOverrides): Promise<[string]>;
945
+
946
+ reduceDeposit(
947
+ target: BigNumberish,
948
+ overrides?: Overrides & { from?: string | Promise<string> }
949
+ ): Promise<ContractTransaction>;
950
+
951
+ rejectNextNode(
952
+ stakerAddress: string,
953
+ overrides?: Overrides & { from?: string | Promise<string> }
954
+ ): Promise<ContractTransaction>;
955
+
956
+ removeOldZombies(
957
+ startIndex: BigNumberish,
958
+ overrides?: Overrides & { from?: string | Promise<string> }
959
+ ): Promise<ContractTransaction>;
960
+
961
+ removeWhitelistAfterFork(
962
+ overrides?: Overrides & { from?: string | Promise<string> }
963
+ ): Promise<ContractTransaction>;
964
+
965
+ removeWhitelistAfterValidatorAfk(
966
+ overrides?: Overrides & { from?: string | Promise<string> }
967
+ ): Promise<ContractTransaction>;
968
+
969
+ removeZombie(
970
+ zombieNum: BigNumberish,
971
+ maxNodes: BigNumberish,
972
+ overrides?: Overrides & { from?: string | Promise<string> }
973
+ ): Promise<ContractTransaction>;
974
+
975
+ requireUnresolved(
976
+ nodeNum: BigNumberish,
977
+ overrides?: CallOverrides
978
+ ): Promise<[void]>;
979
+
980
+ requireUnresolvedExists(overrides?: CallOverrides): Promise<[void]>;
981
+
982
+ requiredStake(
983
+ blockNumber: BigNumberish,
984
+ firstUnresolvedNodeNum: BigNumberish,
985
+ latestCreatedNode: BigNumberish,
986
+ overrides?: CallOverrides
987
+ ): Promise<[BigNumber]>;
988
+
989
+ returnOldDeposit(
990
+ stakerAddress: string,
991
+ overrides?: Overrides & { from?: string | Promise<string> }
992
+ ): Promise<ContractTransaction>;
993
+
994
+ rollupEventInbox(overrides?: CallOverrides): Promise<[string]>;
995
+
996
+ sequencerInbox(overrides?: CallOverrides): Promise<[string]>;
997
+
998
+ stakeOnExistingNode(
999
+ nodeNum: BigNumberish,
1000
+ nodeHash: BytesLike,
1001
+ overrides?: Overrides & { from?: string | Promise<string> }
1002
+ ): Promise<ContractTransaction>;
1003
+
1004
+ stakeOnNewNode(
1005
+ assertion: AssertionStruct,
1006
+ expectedNodeHash: BytesLike,
1007
+ prevNodeInboxMaxCount: BigNumberish,
1008
+ overrides?: Overrides & { from?: string | Promise<string> }
1009
+ ): Promise<ContractTransaction>;
1010
+
1011
+ stakeToken(overrides?: CallOverrides): Promise<[string]>;
1012
+
1013
+ stakerCount(overrides?: CallOverrides): Promise<[BigNumber]>;
1014
+
1015
+ validatorWhitelistDisabled(overrides?: CallOverrides): Promise<[boolean]>;
1016
+
1017
+ wasmModuleRoot(overrides?: CallOverrides): Promise<[string]>;
1018
+
1019
+ withdrawStakerFunds(
1020
+ overrides?: Overrides & { from?: string | Promise<string> }
1021
+ ): Promise<ContractTransaction>;
1022
+
1023
+ withdrawableFunds(
1024
+ owner: string,
1025
+ overrides?: CallOverrides
1026
+ ): Promise<[BigNumber]>;
1027
+
1028
+ zombieAddress(
1029
+ zombieNum: BigNumberish,
1030
+ overrides?: CallOverrides
1031
+ ): Promise<[string]>;
1032
+
1033
+ zombieCount(overrides?: CallOverrides): Promise<[BigNumber]>;
1034
+
1035
+ zombieLatestStakedNode(
1036
+ zombieNum: BigNumberish,
1037
+ overrides?: CallOverrides
1038
+ ): Promise<[BigNumber]>;
1039
+ };
1040
+
1041
+ addToDeposit(
1042
+ stakerAddress: string,
1043
+ tokenAmount: BigNumberish,
1044
+ overrides?: Overrides & { from?: string | Promise<string> }
1045
+ ): Promise<ContractTransaction>;
1046
+
1047
+ amountStaked(staker: string, overrides?: CallOverrides): Promise<BigNumber>;
1048
+
1049
+ baseStake(overrides?: CallOverrides): Promise<BigNumber>;
1050
+
1051
+ bridge(overrides?: CallOverrides): Promise<string>;
1052
+
1053
+ chainId(overrides?: CallOverrides): Promise<BigNumber>;
1054
+
1055
+ challengeManager(overrides?: CallOverrides): Promise<string>;
1056
+
1057
+ confirmNextNode(
1058
+ blockHash: BytesLike,
1059
+ sendRoot: BytesLike,
1060
+ overrides?: Overrides & { from?: string | Promise<string> }
1061
+ ): Promise<ContractTransaction>;
1062
+
1063
+ confirmPeriodBlocks(overrides?: CallOverrides): Promise<BigNumber>;
1064
+
1065
+ countStakedZombies(
1066
+ nodeNum: BigNumberish,
1067
+ overrides?: CallOverrides
1068
+ ): Promise<BigNumber>;
1069
+
1070
+ countZombiesStakedOnChildren(
1071
+ nodeNum: BigNumberish,
1072
+ overrides?: CallOverrides
1073
+ ): Promise<BigNumber>;
1074
+
1075
+ createChallenge(
1076
+ stakers: [string, string],
1077
+ nodeNums: [BigNumberish, BigNumberish],
1078
+ machineStatuses: [BigNumberish, BigNumberish],
1079
+ globalStates: [GlobalStateStruct, GlobalStateStruct],
1080
+ numBlocks: BigNumberish,
1081
+ secondExecutionHash: BytesLike,
1082
+ proposedTimes: [BigNumberish, BigNumberish],
1083
+ wasmModuleRoots: [BytesLike, BytesLike],
1084
+ overrides?: Overrides & { from?: string | Promise<string> }
1085
+ ): Promise<ContractTransaction>;
1086
+
1087
+ currentChallenge(
1088
+ staker: string,
1089
+ overrides?: CallOverrides
1090
+ ): Promise<BigNumber>;
1091
+
1092
+ currentRequiredStake(overrides?: CallOverrides): Promise<BigNumber>;
1093
+
1094
+ extraChallengeTimeBlocks(overrides?: CallOverrides): Promise<BigNumber>;
1095
+
1096
+ firstUnresolvedNode(overrides?: CallOverrides): Promise<BigNumber>;
1097
+
1098
+ getNode(
1099
+ nodeNum: BigNumberish,
1100
+ overrides?: CallOverrides
1101
+ ): Promise<NodeStructOutput>;
1102
+
1103
+ getNodeCreationBlockForLogLookup(
1104
+ nodeNum: BigNumberish,
1105
+ overrides?: CallOverrides
1106
+ ): Promise<BigNumber>;
1107
+
1108
+ getStaker(
1109
+ staker: string,
1110
+ overrides?: CallOverrides
1111
+ ): Promise<IRollupCore.StakerStructOutput>;
1112
+
1113
+ getStakerAddress(
1114
+ stakerNum: BigNumberish,
1115
+ overrides?: CallOverrides
1116
+ ): Promise<string>;
1117
+
1118
+ initialize(stakeToken: string, overrides?: CallOverrides): Promise<void>;
1119
+
1120
+ isERC20Enabled(overrides?: CallOverrides): Promise<boolean>;
1121
+
1122
+ isStaked(staker: string, overrides?: CallOverrides): Promise<boolean>;
1123
+
1124
+ isValidator(arg0: string, overrides?: CallOverrides): Promise<boolean>;
1125
+
1126
+ isZombie(staker: string, overrides?: CallOverrides): Promise<boolean>;
1127
+
1128
+ lastStakeBlock(overrides?: CallOverrides): Promise<BigNumber>;
1129
+
1130
+ latestConfirmed(overrides?: CallOverrides): Promise<BigNumber>;
1131
+
1132
+ latestNodeCreated(overrides?: CallOverrides): Promise<BigNumber>;
1133
+
1134
+ latestStakedNode(
1135
+ staker: string,
1136
+ overrides?: CallOverrides
1137
+ ): Promise<BigNumber>;
1138
+
1139
+ loserStakeEscrow(overrides?: CallOverrides): Promise<string>;
1140
+
1141
+ minimumAssertionPeriod(overrides?: CallOverrides): Promise<BigNumber>;
1142
+
1143
+ newStakeOnExistingNode(
1144
+ tokenAmount: BigNumberish,
1145
+ nodeNum: BigNumberish,
1146
+ nodeHash: BytesLike,
1147
+ overrides?: Overrides & { from?: string | Promise<string> }
1148
+ ): Promise<ContractTransaction>;
1149
+
1150
+ newStakeOnNewNode(
1151
+ tokenAmount: BigNumberish,
1152
+ assertion: AssertionStruct,
1153
+ expectedNodeHash: BytesLike,
1154
+ prevNodeInboxMaxCount: BigNumberish,
1155
+ overrides?: Overrides & { from?: string | Promise<string> }
1156
+ ): Promise<ContractTransaction>;
1157
+
1158
+ nodeHasStaker(
1159
+ nodeNum: BigNumberish,
1160
+ staker: string,
1161
+ overrides?: CallOverrides
1162
+ ): Promise<boolean>;
1163
+
1164
+ outbox(overrides?: CallOverrides): Promise<string>;
1165
+
1166
+ owner(overrides?: CallOverrides): Promise<string>;
1167
+
1168
+ reduceDeposit(
1169
+ target: BigNumberish,
1170
+ overrides?: Overrides & { from?: string | Promise<string> }
1171
+ ): Promise<ContractTransaction>;
1172
+
1173
+ rejectNextNode(
1174
+ stakerAddress: string,
1175
+ overrides?: Overrides & { from?: string | Promise<string> }
1176
+ ): Promise<ContractTransaction>;
1177
+
1178
+ removeOldZombies(
1179
+ startIndex: BigNumberish,
1180
+ overrides?: Overrides & { from?: string | Promise<string> }
1181
+ ): Promise<ContractTransaction>;
1182
+
1183
+ removeWhitelistAfterFork(
1184
+ overrides?: Overrides & { from?: string | Promise<string> }
1185
+ ): Promise<ContractTransaction>;
1186
+
1187
+ removeWhitelistAfterValidatorAfk(
1188
+ overrides?: Overrides & { from?: string | Promise<string> }
1189
+ ): Promise<ContractTransaction>;
1190
+
1191
+ removeZombie(
1192
+ zombieNum: BigNumberish,
1193
+ maxNodes: BigNumberish,
1194
+ overrides?: Overrides & { from?: string | Promise<string> }
1195
+ ): Promise<ContractTransaction>;
1196
+
1197
+ requireUnresolved(
1198
+ nodeNum: BigNumberish,
1199
+ overrides?: CallOverrides
1200
+ ): Promise<void>;
1201
+
1202
+ requireUnresolvedExists(overrides?: CallOverrides): Promise<void>;
1203
+
1204
+ requiredStake(
1205
+ blockNumber: BigNumberish,
1206
+ firstUnresolvedNodeNum: BigNumberish,
1207
+ latestCreatedNode: BigNumberish,
1208
+ overrides?: CallOverrides
1209
+ ): Promise<BigNumber>;
1210
+
1211
+ returnOldDeposit(
1212
+ stakerAddress: string,
1213
+ overrides?: Overrides & { from?: string | Promise<string> }
1214
+ ): Promise<ContractTransaction>;
1215
+
1216
+ rollupEventInbox(overrides?: CallOverrides): Promise<string>;
1217
+
1218
+ sequencerInbox(overrides?: CallOverrides): Promise<string>;
1219
+
1220
+ stakeOnExistingNode(
1221
+ nodeNum: BigNumberish,
1222
+ nodeHash: BytesLike,
1223
+ overrides?: Overrides & { from?: string | Promise<string> }
1224
+ ): Promise<ContractTransaction>;
1225
+
1226
+ stakeOnNewNode(
1227
+ assertion: AssertionStruct,
1228
+ expectedNodeHash: BytesLike,
1229
+ prevNodeInboxMaxCount: BigNumberish,
1230
+ overrides?: Overrides & { from?: string | Promise<string> }
1231
+ ): Promise<ContractTransaction>;
1232
+
1233
+ stakeToken(overrides?: CallOverrides): Promise<string>;
1234
+
1235
+ stakerCount(overrides?: CallOverrides): Promise<BigNumber>;
1236
+
1237
+ validatorWhitelistDisabled(overrides?: CallOverrides): Promise<boolean>;
1238
+
1239
+ wasmModuleRoot(overrides?: CallOverrides): Promise<string>;
1240
+
1241
+ withdrawStakerFunds(
1242
+ overrides?: Overrides & { from?: string | Promise<string> }
1243
+ ): Promise<ContractTransaction>;
1244
+
1245
+ withdrawableFunds(
1246
+ owner: string,
1247
+ overrides?: CallOverrides
1248
+ ): Promise<BigNumber>;
1249
+
1250
+ zombieAddress(
1251
+ zombieNum: BigNumberish,
1252
+ overrides?: CallOverrides
1253
+ ): Promise<string>;
1254
+
1255
+ zombieCount(overrides?: CallOverrides): Promise<BigNumber>;
1256
+
1257
+ zombieLatestStakedNode(
1258
+ zombieNum: BigNumberish,
1259
+ overrides?: CallOverrides
1260
+ ): Promise<BigNumber>;
1261
+
1262
+ callStatic: {
1263
+ addToDeposit(
1264
+ stakerAddress: string,
1265
+ tokenAmount: BigNumberish,
1266
+ overrides?: CallOverrides
1267
+ ): Promise<void>;
1268
+
1269
+ amountStaked(staker: string, overrides?: CallOverrides): Promise<BigNumber>;
1270
+
1271
+ baseStake(overrides?: CallOverrides): Promise<BigNumber>;
1272
+
1273
+ bridge(overrides?: CallOverrides): Promise<string>;
1274
+
1275
+ chainId(overrides?: CallOverrides): Promise<BigNumber>;
1276
+
1277
+ challengeManager(overrides?: CallOverrides): Promise<string>;
1278
+
1279
+ confirmNextNode(
1280
+ blockHash: BytesLike,
1281
+ sendRoot: BytesLike,
1282
+ overrides?: CallOverrides
1283
+ ): Promise<void>;
1284
+
1285
+ confirmPeriodBlocks(overrides?: CallOverrides): Promise<BigNumber>;
1286
+
1287
+ countStakedZombies(
1288
+ nodeNum: BigNumberish,
1289
+ overrides?: CallOverrides
1290
+ ): Promise<BigNumber>;
1291
+
1292
+ countZombiesStakedOnChildren(
1293
+ nodeNum: BigNumberish,
1294
+ overrides?: CallOverrides
1295
+ ): Promise<BigNumber>;
1296
+
1297
+ createChallenge(
1298
+ stakers: [string, string],
1299
+ nodeNums: [BigNumberish, BigNumberish],
1300
+ machineStatuses: [BigNumberish, BigNumberish],
1301
+ globalStates: [GlobalStateStruct, GlobalStateStruct],
1302
+ numBlocks: BigNumberish,
1303
+ secondExecutionHash: BytesLike,
1304
+ proposedTimes: [BigNumberish, BigNumberish],
1305
+ wasmModuleRoots: [BytesLike, BytesLike],
1306
+ overrides?: CallOverrides
1307
+ ): Promise<void>;
1308
+
1309
+ currentChallenge(
1310
+ staker: string,
1311
+ overrides?: CallOverrides
1312
+ ): Promise<BigNumber>;
1313
+
1314
+ currentRequiredStake(overrides?: CallOverrides): Promise<BigNumber>;
1315
+
1316
+ extraChallengeTimeBlocks(overrides?: CallOverrides): Promise<BigNumber>;
1317
+
1318
+ firstUnresolvedNode(overrides?: CallOverrides): Promise<BigNumber>;
1319
+
1320
+ getNode(
1321
+ nodeNum: BigNumberish,
1322
+ overrides?: CallOverrides
1323
+ ): Promise<NodeStructOutput>;
1324
+
1325
+ getNodeCreationBlockForLogLookup(
1326
+ nodeNum: BigNumberish,
1327
+ overrides?: CallOverrides
1328
+ ): Promise<BigNumber>;
1329
+
1330
+ getStaker(
1331
+ staker: string,
1332
+ overrides?: CallOverrides
1333
+ ): Promise<IRollupCore.StakerStructOutput>;
1334
+
1335
+ getStakerAddress(
1336
+ stakerNum: BigNumberish,
1337
+ overrides?: CallOverrides
1338
+ ): Promise<string>;
1339
+
1340
+ initialize(stakeToken: string, overrides?: CallOverrides): Promise<void>;
1341
+
1342
+ isERC20Enabled(overrides?: CallOverrides): Promise<boolean>;
1343
+
1344
+ isStaked(staker: string, overrides?: CallOverrides): Promise<boolean>;
1345
+
1346
+ isValidator(arg0: string, overrides?: CallOverrides): Promise<boolean>;
1347
+
1348
+ isZombie(staker: string, overrides?: CallOverrides): Promise<boolean>;
1349
+
1350
+ lastStakeBlock(overrides?: CallOverrides): Promise<BigNumber>;
1351
+
1352
+ latestConfirmed(overrides?: CallOverrides): Promise<BigNumber>;
1353
+
1354
+ latestNodeCreated(overrides?: CallOverrides): Promise<BigNumber>;
1355
+
1356
+ latestStakedNode(
1357
+ staker: string,
1358
+ overrides?: CallOverrides
1359
+ ): Promise<BigNumber>;
1360
+
1361
+ loserStakeEscrow(overrides?: CallOverrides): Promise<string>;
1362
+
1363
+ minimumAssertionPeriod(overrides?: CallOverrides): Promise<BigNumber>;
1364
+
1365
+ newStakeOnExistingNode(
1366
+ tokenAmount: BigNumberish,
1367
+ nodeNum: BigNumberish,
1368
+ nodeHash: BytesLike,
1369
+ overrides?: CallOverrides
1370
+ ): Promise<void>;
1371
+
1372
+ newStakeOnNewNode(
1373
+ tokenAmount: BigNumberish,
1374
+ assertion: AssertionStruct,
1375
+ expectedNodeHash: BytesLike,
1376
+ prevNodeInboxMaxCount: BigNumberish,
1377
+ overrides?: CallOverrides
1378
+ ): Promise<void>;
1379
+
1380
+ nodeHasStaker(
1381
+ nodeNum: BigNumberish,
1382
+ staker: string,
1383
+ overrides?: CallOverrides
1384
+ ): Promise<boolean>;
1385
+
1386
+ outbox(overrides?: CallOverrides): Promise<string>;
1387
+
1388
+ owner(overrides?: CallOverrides): Promise<string>;
1389
+
1390
+ reduceDeposit(
1391
+ target: BigNumberish,
1392
+ overrides?: CallOverrides
1393
+ ): Promise<void>;
1394
+
1395
+ rejectNextNode(
1396
+ stakerAddress: string,
1397
+ overrides?: CallOverrides
1398
+ ): Promise<void>;
1399
+
1400
+ removeOldZombies(
1401
+ startIndex: BigNumberish,
1402
+ overrides?: CallOverrides
1403
+ ): Promise<void>;
1404
+
1405
+ removeWhitelistAfterFork(overrides?: CallOverrides): Promise<void>;
1406
+
1407
+ removeWhitelistAfterValidatorAfk(overrides?: CallOverrides): Promise<void>;
1408
+
1409
+ removeZombie(
1410
+ zombieNum: BigNumberish,
1411
+ maxNodes: BigNumberish,
1412
+ overrides?: CallOverrides
1413
+ ): Promise<void>;
1414
+
1415
+ requireUnresolved(
1416
+ nodeNum: BigNumberish,
1417
+ overrides?: CallOverrides
1418
+ ): Promise<void>;
1419
+
1420
+ requireUnresolvedExists(overrides?: CallOverrides): Promise<void>;
1421
+
1422
+ requiredStake(
1423
+ blockNumber: BigNumberish,
1424
+ firstUnresolvedNodeNum: BigNumberish,
1425
+ latestCreatedNode: BigNumberish,
1426
+ overrides?: CallOverrides
1427
+ ): Promise<BigNumber>;
1428
+
1429
+ returnOldDeposit(
1430
+ stakerAddress: string,
1431
+ overrides?: CallOverrides
1432
+ ): Promise<void>;
1433
+
1434
+ rollupEventInbox(overrides?: CallOverrides): Promise<string>;
1435
+
1436
+ sequencerInbox(overrides?: CallOverrides): Promise<string>;
1437
+
1438
+ stakeOnExistingNode(
1439
+ nodeNum: BigNumberish,
1440
+ nodeHash: BytesLike,
1441
+ overrides?: CallOverrides
1442
+ ): Promise<void>;
1443
+
1444
+ stakeOnNewNode(
1445
+ assertion: AssertionStruct,
1446
+ expectedNodeHash: BytesLike,
1447
+ prevNodeInboxMaxCount: BigNumberish,
1448
+ overrides?: CallOverrides
1449
+ ): Promise<void>;
1450
+
1451
+ stakeToken(overrides?: CallOverrides): Promise<string>;
1452
+
1453
+ stakerCount(overrides?: CallOverrides): Promise<BigNumber>;
1454
+
1455
+ validatorWhitelistDisabled(overrides?: CallOverrides): Promise<boolean>;
1456
+
1457
+ wasmModuleRoot(overrides?: CallOverrides): Promise<string>;
1458
+
1459
+ withdrawStakerFunds(overrides?: CallOverrides): Promise<BigNumber>;
1460
+
1461
+ withdrawableFunds(
1462
+ owner: string,
1463
+ overrides?: CallOverrides
1464
+ ): Promise<BigNumber>;
1465
+
1466
+ zombieAddress(
1467
+ zombieNum: BigNumberish,
1468
+ overrides?: CallOverrides
1469
+ ): Promise<string>;
1470
+
1471
+ zombieCount(overrides?: CallOverrides): Promise<BigNumber>;
1472
+
1473
+ zombieLatestStakedNode(
1474
+ zombieNum: BigNumberish,
1475
+ overrides?: CallOverrides
1476
+ ): Promise<BigNumber>;
1477
+ };
1478
+
1479
+ filters: {
1480
+ "NodeConfirmed(uint64,bytes32,bytes32)"(
1481
+ nodeNum?: BigNumberish | null,
1482
+ blockHash?: null,
1483
+ sendRoot?: null
1484
+ ): NodeConfirmedEventFilter;
1485
+ NodeConfirmed(
1486
+ nodeNum?: BigNumberish | null,
1487
+ blockHash?: null,
1488
+ sendRoot?: null
1489
+ ): NodeConfirmedEventFilter;
1490
+
1491
+ "NodeCreated(uint64,bytes32,bytes32,bytes32,tuple,bytes32,bytes32,uint256)"(
1492
+ nodeNum?: BigNumberish | null,
1493
+ parentNodeHash?: BytesLike | null,
1494
+ nodeHash?: BytesLike | null,
1495
+ executionHash?: null,
1496
+ assertion?: null,
1497
+ afterInboxBatchAcc?: null,
1498
+ wasmModuleRoot?: null,
1499
+ inboxMaxCount?: null
1500
+ ): NodeCreatedEventFilter;
1501
+ NodeCreated(
1502
+ nodeNum?: BigNumberish | null,
1503
+ parentNodeHash?: BytesLike | null,
1504
+ nodeHash?: BytesLike | null,
1505
+ executionHash?: null,
1506
+ assertion?: null,
1507
+ afterInboxBatchAcc?: null,
1508
+ wasmModuleRoot?: null,
1509
+ inboxMaxCount?: null
1510
+ ): NodeCreatedEventFilter;
1511
+
1512
+ "NodeRejected(uint64)"(
1513
+ nodeNum?: BigNumberish | null
1514
+ ): NodeRejectedEventFilter;
1515
+ NodeRejected(nodeNum?: BigNumberish | null): NodeRejectedEventFilter;
1516
+
1517
+ "RollupChallengeStarted(uint64,address,address,uint64)"(
1518
+ challengeIndex?: BigNumberish | null,
1519
+ asserter?: null,
1520
+ challenger?: null,
1521
+ challengedNode?: null
1522
+ ): RollupChallengeStartedEventFilter;
1523
+ RollupChallengeStarted(
1524
+ challengeIndex?: BigNumberish | null,
1525
+ asserter?: null,
1526
+ challenger?: null,
1527
+ challengedNode?: null
1528
+ ): RollupChallengeStartedEventFilter;
1529
+
1530
+ "RollupInitialized(bytes32,uint256)"(
1531
+ machineHash?: null,
1532
+ chainId?: null
1533
+ ): RollupInitializedEventFilter;
1534
+ RollupInitialized(
1535
+ machineHash?: null,
1536
+ chainId?: null
1537
+ ): RollupInitializedEventFilter;
1538
+
1539
+ "UserStakeUpdated(address,uint256,uint256)"(
1540
+ user?: string | null,
1541
+ initialBalance?: null,
1542
+ finalBalance?: null
1543
+ ): UserStakeUpdatedEventFilter;
1544
+ UserStakeUpdated(
1545
+ user?: string | null,
1546
+ initialBalance?: null,
1547
+ finalBalance?: null
1548
+ ): UserStakeUpdatedEventFilter;
1549
+
1550
+ "UserWithdrawableFundsUpdated(address,uint256,uint256)"(
1551
+ user?: string | null,
1552
+ initialBalance?: null,
1553
+ finalBalance?: null
1554
+ ): UserWithdrawableFundsUpdatedEventFilter;
1555
+ UserWithdrawableFundsUpdated(
1556
+ user?: string | null,
1557
+ initialBalance?: null,
1558
+ finalBalance?: null
1559
+ ): UserWithdrawableFundsUpdatedEventFilter;
1560
+ };
1561
+
1562
+ estimateGas: {
1563
+ addToDeposit(
1564
+ stakerAddress: string,
1565
+ tokenAmount: BigNumberish,
1566
+ overrides?: Overrides & { from?: string | Promise<string> }
1567
+ ): Promise<BigNumber>;
1568
+
1569
+ amountStaked(staker: string, overrides?: CallOverrides): Promise<BigNumber>;
1570
+
1571
+ baseStake(overrides?: CallOverrides): Promise<BigNumber>;
1572
+
1573
+ bridge(overrides?: CallOverrides): Promise<BigNumber>;
1574
+
1575
+ chainId(overrides?: CallOverrides): Promise<BigNumber>;
1576
+
1577
+ challengeManager(overrides?: CallOverrides): Promise<BigNumber>;
1578
+
1579
+ confirmNextNode(
1580
+ blockHash: BytesLike,
1581
+ sendRoot: BytesLike,
1582
+ overrides?: Overrides & { from?: string | Promise<string> }
1583
+ ): Promise<BigNumber>;
1584
+
1585
+ confirmPeriodBlocks(overrides?: CallOverrides): Promise<BigNumber>;
1586
+
1587
+ countStakedZombies(
1588
+ nodeNum: BigNumberish,
1589
+ overrides?: CallOverrides
1590
+ ): Promise<BigNumber>;
1591
+
1592
+ countZombiesStakedOnChildren(
1593
+ nodeNum: BigNumberish,
1594
+ overrides?: CallOverrides
1595
+ ): Promise<BigNumber>;
1596
+
1597
+ createChallenge(
1598
+ stakers: [string, string],
1599
+ nodeNums: [BigNumberish, BigNumberish],
1600
+ machineStatuses: [BigNumberish, BigNumberish],
1601
+ globalStates: [GlobalStateStruct, GlobalStateStruct],
1602
+ numBlocks: BigNumberish,
1603
+ secondExecutionHash: BytesLike,
1604
+ proposedTimes: [BigNumberish, BigNumberish],
1605
+ wasmModuleRoots: [BytesLike, BytesLike],
1606
+ overrides?: Overrides & { from?: string | Promise<string> }
1607
+ ): Promise<BigNumber>;
1608
+
1609
+ currentChallenge(
1610
+ staker: string,
1611
+ overrides?: CallOverrides
1612
+ ): Promise<BigNumber>;
1613
+
1614
+ currentRequiredStake(overrides?: CallOverrides): Promise<BigNumber>;
1615
+
1616
+ extraChallengeTimeBlocks(overrides?: CallOverrides): Promise<BigNumber>;
1617
+
1618
+ firstUnresolvedNode(overrides?: CallOverrides): Promise<BigNumber>;
1619
+
1620
+ getNode(
1621
+ nodeNum: BigNumberish,
1622
+ overrides?: CallOverrides
1623
+ ): Promise<BigNumber>;
1624
+
1625
+ getNodeCreationBlockForLogLookup(
1626
+ nodeNum: BigNumberish,
1627
+ overrides?: CallOverrides
1628
+ ): Promise<BigNumber>;
1629
+
1630
+ getStaker(staker: string, overrides?: CallOverrides): Promise<BigNumber>;
1631
+
1632
+ getStakerAddress(
1633
+ stakerNum: BigNumberish,
1634
+ overrides?: CallOverrides
1635
+ ): Promise<BigNumber>;
1636
+
1637
+ initialize(
1638
+ stakeToken: string,
1639
+ overrides?: CallOverrides
1640
+ ): Promise<BigNumber>;
1641
+
1642
+ isERC20Enabled(overrides?: CallOverrides): Promise<BigNumber>;
1643
+
1644
+ isStaked(staker: string, overrides?: CallOverrides): Promise<BigNumber>;
1645
+
1646
+ isValidator(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
1647
+
1648
+ isZombie(staker: string, overrides?: CallOverrides): Promise<BigNumber>;
1649
+
1650
+ lastStakeBlock(overrides?: CallOverrides): Promise<BigNumber>;
1651
+
1652
+ latestConfirmed(overrides?: CallOverrides): Promise<BigNumber>;
1653
+
1654
+ latestNodeCreated(overrides?: CallOverrides): Promise<BigNumber>;
1655
+
1656
+ latestStakedNode(
1657
+ staker: string,
1658
+ overrides?: CallOverrides
1659
+ ): Promise<BigNumber>;
1660
+
1661
+ loserStakeEscrow(overrides?: CallOverrides): Promise<BigNumber>;
1662
+
1663
+ minimumAssertionPeriod(overrides?: CallOverrides): Promise<BigNumber>;
1664
+
1665
+ newStakeOnExistingNode(
1666
+ tokenAmount: BigNumberish,
1667
+ nodeNum: BigNumberish,
1668
+ nodeHash: BytesLike,
1669
+ overrides?: Overrides & { from?: string | Promise<string> }
1670
+ ): Promise<BigNumber>;
1671
+
1672
+ newStakeOnNewNode(
1673
+ tokenAmount: BigNumberish,
1674
+ assertion: AssertionStruct,
1675
+ expectedNodeHash: BytesLike,
1676
+ prevNodeInboxMaxCount: BigNumberish,
1677
+ overrides?: Overrides & { from?: string | Promise<string> }
1678
+ ): Promise<BigNumber>;
1679
+
1680
+ nodeHasStaker(
1681
+ nodeNum: BigNumberish,
1682
+ staker: string,
1683
+ overrides?: CallOverrides
1684
+ ): Promise<BigNumber>;
1685
+
1686
+ outbox(overrides?: CallOverrides): Promise<BigNumber>;
1687
+
1688
+ owner(overrides?: CallOverrides): Promise<BigNumber>;
1689
+
1690
+ reduceDeposit(
1691
+ target: BigNumberish,
1692
+ overrides?: Overrides & { from?: string | Promise<string> }
1693
+ ): Promise<BigNumber>;
1694
+
1695
+ rejectNextNode(
1696
+ stakerAddress: string,
1697
+ overrides?: Overrides & { from?: string | Promise<string> }
1698
+ ): Promise<BigNumber>;
1699
+
1700
+ removeOldZombies(
1701
+ startIndex: BigNumberish,
1702
+ overrides?: Overrides & { from?: string | Promise<string> }
1703
+ ): Promise<BigNumber>;
1704
+
1705
+ removeWhitelistAfterFork(
1706
+ overrides?: Overrides & { from?: string | Promise<string> }
1707
+ ): Promise<BigNumber>;
1708
+
1709
+ removeWhitelistAfterValidatorAfk(
1710
+ overrides?: Overrides & { from?: string | Promise<string> }
1711
+ ): Promise<BigNumber>;
1712
+
1713
+ removeZombie(
1714
+ zombieNum: BigNumberish,
1715
+ maxNodes: BigNumberish,
1716
+ overrides?: Overrides & { from?: string | Promise<string> }
1717
+ ): Promise<BigNumber>;
1718
+
1719
+ requireUnresolved(
1720
+ nodeNum: BigNumberish,
1721
+ overrides?: CallOverrides
1722
+ ): Promise<BigNumber>;
1723
+
1724
+ requireUnresolvedExists(overrides?: CallOverrides): Promise<BigNumber>;
1725
+
1726
+ requiredStake(
1727
+ blockNumber: BigNumberish,
1728
+ firstUnresolvedNodeNum: BigNumberish,
1729
+ latestCreatedNode: BigNumberish,
1730
+ overrides?: CallOverrides
1731
+ ): Promise<BigNumber>;
1732
+
1733
+ returnOldDeposit(
1734
+ stakerAddress: string,
1735
+ overrides?: Overrides & { from?: string | Promise<string> }
1736
+ ): Promise<BigNumber>;
1737
+
1738
+ rollupEventInbox(overrides?: CallOverrides): Promise<BigNumber>;
1739
+
1740
+ sequencerInbox(overrides?: CallOverrides): Promise<BigNumber>;
1741
+
1742
+ stakeOnExistingNode(
1743
+ nodeNum: BigNumberish,
1744
+ nodeHash: BytesLike,
1745
+ overrides?: Overrides & { from?: string | Promise<string> }
1746
+ ): Promise<BigNumber>;
1747
+
1748
+ stakeOnNewNode(
1749
+ assertion: AssertionStruct,
1750
+ expectedNodeHash: BytesLike,
1751
+ prevNodeInboxMaxCount: BigNumberish,
1752
+ overrides?: Overrides & { from?: string | Promise<string> }
1753
+ ): Promise<BigNumber>;
1754
+
1755
+ stakeToken(overrides?: CallOverrides): Promise<BigNumber>;
1756
+
1757
+ stakerCount(overrides?: CallOverrides): Promise<BigNumber>;
1758
+
1759
+ validatorWhitelistDisabled(overrides?: CallOverrides): Promise<BigNumber>;
1760
+
1761
+ wasmModuleRoot(overrides?: CallOverrides): Promise<BigNumber>;
1762
+
1763
+ withdrawStakerFunds(
1764
+ overrides?: Overrides & { from?: string | Promise<string> }
1765
+ ): Promise<BigNumber>;
1766
+
1767
+ withdrawableFunds(
1768
+ owner: string,
1769
+ overrides?: CallOverrides
1770
+ ): Promise<BigNumber>;
1771
+
1772
+ zombieAddress(
1773
+ zombieNum: BigNumberish,
1774
+ overrides?: CallOverrides
1775
+ ): Promise<BigNumber>;
1776
+
1777
+ zombieCount(overrides?: CallOverrides): Promise<BigNumber>;
1778
+
1779
+ zombieLatestStakedNode(
1780
+ zombieNum: BigNumberish,
1781
+ overrides?: CallOverrides
1782
+ ): Promise<BigNumber>;
1783
+ };
1784
+
1785
+ populateTransaction: {
1786
+ addToDeposit(
1787
+ stakerAddress: string,
1788
+ tokenAmount: BigNumberish,
1789
+ overrides?: Overrides & { from?: string | Promise<string> }
1790
+ ): Promise<PopulatedTransaction>;
1791
+
1792
+ amountStaked(
1793
+ staker: string,
1794
+ overrides?: CallOverrides
1795
+ ): Promise<PopulatedTransaction>;
1796
+
1797
+ baseStake(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1798
+
1799
+ bridge(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1800
+
1801
+ chainId(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1802
+
1803
+ challengeManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1804
+
1805
+ confirmNextNode(
1806
+ blockHash: BytesLike,
1807
+ sendRoot: BytesLike,
1808
+ overrides?: Overrides & { from?: string | Promise<string> }
1809
+ ): Promise<PopulatedTransaction>;
1810
+
1811
+ confirmPeriodBlocks(
1812
+ overrides?: CallOverrides
1813
+ ): Promise<PopulatedTransaction>;
1814
+
1815
+ countStakedZombies(
1816
+ nodeNum: BigNumberish,
1817
+ overrides?: CallOverrides
1818
+ ): Promise<PopulatedTransaction>;
1819
+
1820
+ countZombiesStakedOnChildren(
1821
+ nodeNum: BigNumberish,
1822
+ overrides?: CallOverrides
1823
+ ): Promise<PopulatedTransaction>;
1824
+
1825
+ createChallenge(
1826
+ stakers: [string, string],
1827
+ nodeNums: [BigNumberish, BigNumberish],
1828
+ machineStatuses: [BigNumberish, BigNumberish],
1829
+ globalStates: [GlobalStateStruct, GlobalStateStruct],
1830
+ numBlocks: BigNumberish,
1831
+ secondExecutionHash: BytesLike,
1832
+ proposedTimes: [BigNumberish, BigNumberish],
1833
+ wasmModuleRoots: [BytesLike, BytesLike],
1834
+ overrides?: Overrides & { from?: string | Promise<string> }
1835
+ ): Promise<PopulatedTransaction>;
1836
+
1837
+ currentChallenge(
1838
+ staker: string,
1839
+ overrides?: CallOverrides
1840
+ ): Promise<PopulatedTransaction>;
1841
+
1842
+ currentRequiredStake(
1843
+ overrides?: CallOverrides
1844
+ ): Promise<PopulatedTransaction>;
1845
+
1846
+ extraChallengeTimeBlocks(
1847
+ overrides?: CallOverrides
1848
+ ): Promise<PopulatedTransaction>;
1849
+
1850
+ firstUnresolvedNode(
1851
+ overrides?: CallOverrides
1852
+ ): Promise<PopulatedTransaction>;
1853
+
1854
+ getNode(
1855
+ nodeNum: BigNumberish,
1856
+ overrides?: CallOverrides
1857
+ ): Promise<PopulatedTransaction>;
1858
+
1859
+ getNodeCreationBlockForLogLookup(
1860
+ nodeNum: BigNumberish,
1861
+ overrides?: CallOverrides
1862
+ ): Promise<PopulatedTransaction>;
1863
+
1864
+ getStaker(
1865
+ staker: string,
1866
+ overrides?: CallOverrides
1867
+ ): Promise<PopulatedTransaction>;
1868
+
1869
+ getStakerAddress(
1870
+ stakerNum: BigNumberish,
1871
+ overrides?: CallOverrides
1872
+ ): Promise<PopulatedTransaction>;
1873
+
1874
+ initialize(
1875
+ stakeToken: string,
1876
+ overrides?: CallOverrides
1877
+ ): Promise<PopulatedTransaction>;
1878
+
1879
+ isERC20Enabled(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1880
+
1881
+ isStaked(
1882
+ staker: string,
1883
+ overrides?: CallOverrides
1884
+ ): Promise<PopulatedTransaction>;
1885
+
1886
+ isValidator(
1887
+ arg0: string,
1888
+ overrides?: CallOverrides
1889
+ ): Promise<PopulatedTransaction>;
1890
+
1891
+ isZombie(
1892
+ staker: string,
1893
+ overrides?: CallOverrides
1894
+ ): Promise<PopulatedTransaction>;
1895
+
1896
+ lastStakeBlock(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1897
+
1898
+ latestConfirmed(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1899
+
1900
+ latestNodeCreated(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1901
+
1902
+ latestStakedNode(
1903
+ staker: string,
1904
+ overrides?: CallOverrides
1905
+ ): Promise<PopulatedTransaction>;
1906
+
1907
+ loserStakeEscrow(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1908
+
1909
+ minimumAssertionPeriod(
1910
+ overrides?: CallOverrides
1911
+ ): Promise<PopulatedTransaction>;
1912
+
1913
+ newStakeOnExistingNode(
1914
+ tokenAmount: BigNumberish,
1915
+ nodeNum: BigNumberish,
1916
+ nodeHash: BytesLike,
1917
+ overrides?: Overrides & { from?: string | Promise<string> }
1918
+ ): Promise<PopulatedTransaction>;
1919
+
1920
+ newStakeOnNewNode(
1921
+ tokenAmount: BigNumberish,
1922
+ assertion: AssertionStruct,
1923
+ expectedNodeHash: BytesLike,
1924
+ prevNodeInboxMaxCount: BigNumberish,
1925
+ overrides?: Overrides & { from?: string | Promise<string> }
1926
+ ): Promise<PopulatedTransaction>;
1927
+
1928
+ nodeHasStaker(
1929
+ nodeNum: BigNumberish,
1930
+ staker: string,
1931
+ overrides?: CallOverrides
1932
+ ): Promise<PopulatedTransaction>;
1933
+
1934
+ outbox(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1935
+
1936
+ owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1937
+
1938
+ reduceDeposit(
1939
+ target: BigNumberish,
1940
+ overrides?: Overrides & { from?: string | Promise<string> }
1941
+ ): Promise<PopulatedTransaction>;
1942
+
1943
+ rejectNextNode(
1944
+ stakerAddress: string,
1945
+ overrides?: Overrides & { from?: string | Promise<string> }
1946
+ ): Promise<PopulatedTransaction>;
1947
+
1948
+ removeOldZombies(
1949
+ startIndex: BigNumberish,
1950
+ overrides?: Overrides & { from?: string | Promise<string> }
1951
+ ): Promise<PopulatedTransaction>;
1952
+
1953
+ removeWhitelistAfterFork(
1954
+ overrides?: Overrides & { from?: string | Promise<string> }
1955
+ ): Promise<PopulatedTransaction>;
1956
+
1957
+ removeWhitelistAfterValidatorAfk(
1958
+ overrides?: Overrides & { from?: string | Promise<string> }
1959
+ ): Promise<PopulatedTransaction>;
1960
+
1961
+ removeZombie(
1962
+ zombieNum: BigNumberish,
1963
+ maxNodes: BigNumberish,
1964
+ overrides?: Overrides & { from?: string | Promise<string> }
1965
+ ): Promise<PopulatedTransaction>;
1966
+
1967
+ requireUnresolved(
1968
+ nodeNum: BigNumberish,
1969
+ overrides?: CallOverrides
1970
+ ): Promise<PopulatedTransaction>;
1971
+
1972
+ requireUnresolvedExists(
1973
+ overrides?: CallOverrides
1974
+ ): Promise<PopulatedTransaction>;
1975
+
1976
+ requiredStake(
1977
+ blockNumber: BigNumberish,
1978
+ firstUnresolvedNodeNum: BigNumberish,
1979
+ latestCreatedNode: BigNumberish,
1980
+ overrides?: CallOverrides
1981
+ ): Promise<PopulatedTransaction>;
1982
+
1983
+ returnOldDeposit(
1984
+ stakerAddress: string,
1985
+ overrides?: Overrides & { from?: string | Promise<string> }
1986
+ ): Promise<PopulatedTransaction>;
1987
+
1988
+ rollupEventInbox(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1989
+
1990
+ sequencerInbox(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1991
+
1992
+ stakeOnExistingNode(
1993
+ nodeNum: BigNumberish,
1994
+ nodeHash: BytesLike,
1995
+ overrides?: Overrides & { from?: string | Promise<string> }
1996
+ ): Promise<PopulatedTransaction>;
1997
+
1998
+ stakeOnNewNode(
1999
+ assertion: AssertionStruct,
2000
+ expectedNodeHash: BytesLike,
2001
+ prevNodeInboxMaxCount: BigNumberish,
2002
+ overrides?: Overrides & { from?: string | Promise<string> }
2003
+ ): Promise<PopulatedTransaction>;
2004
+
2005
+ stakeToken(overrides?: CallOverrides): Promise<PopulatedTransaction>;
2006
+
2007
+ stakerCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
2008
+
2009
+ validatorWhitelistDisabled(
2010
+ overrides?: CallOverrides
2011
+ ): Promise<PopulatedTransaction>;
2012
+
2013
+ wasmModuleRoot(overrides?: CallOverrides): Promise<PopulatedTransaction>;
2014
+
2015
+ withdrawStakerFunds(
2016
+ overrides?: Overrides & { from?: string | Promise<string> }
2017
+ ): Promise<PopulatedTransaction>;
2018
+
2019
+ withdrawableFunds(
2020
+ owner: string,
2021
+ overrides?: CallOverrides
2022
+ ): Promise<PopulatedTransaction>;
2023
+
2024
+ zombieAddress(
2025
+ zombieNum: BigNumberish,
2026
+ overrides?: CallOverrides
2027
+ ): Promise<PopulatedTransaction>;
2028
+
2029
+ zombieCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
2030
+
2031
+ zombieLatestStakedNode(
2032
+ zombieNum: BigNumberish,
2033
+ overrides?: CallOverrides
2034
+ ): Promise<PopulatedTransaction>;
2035
+ };
2036
+ }