@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,746 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ ERC20Bridge,
8
+ ERC20BridgeInterface,
9
+ } from "../../../src/bridge/ERC20Bridge";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "uint256",
16
+ name: "stored",
17
+ type: "uint256",
18
+ },
19
+ {
20
+ internalType: "uint256",
21
+ name: "received",
22
+ type: "uint256",
23
+ },
24
+ ],
25
+ name: "BadSequencerMessageNumber",
26
+ type: "error",
27
+ },
28
+ {
29
+ inputs: [
30
+ {
31
+ internalType: "address",
32
+ name: "target",
33
+ type: "address",
34
+ },
35
+ ],
36
+ name: "CallTargetNotAllowed",
37
+ type: "error",
38
+ },
39
+ {
40
+ inputs: [
41
+ {
42
+ internalType: "address",
43
+ name: "outbox",
44
+ type: "address",
45
+ },
46
+ ],
47
+ name: "InvalidOutboxSet",
48
+ type: "error",
49
+ },
50
+ {
51
+ inputs: [
52
+ {
53
+ internalType: "address",
54
+ name: "token",
55
+ type: "address",
56
+ },
57
+ ],
58
+ name: "InvalidTokenSet",
59
+ type: "error",
60
+ },
61
+ {
62
+ inputs: [
63
+ {
64
+ internalType: "address",
65
+ name: "addr",
66
+ type: "address",
67
+ },
68
+ ],
69
+ name: "NotContract",
70
+ type: "error",
71
+ },
72
+ {
73
+ inputs: [
74
+ {
75
+ internalType: "address",
76
+ name: "sender",
77
+ type: "address",
78
+ },
79
+ ],
80
+ name: "NotDelayedInbox",
81
+ type: "error",
82
+ },
83
+ {
84
+ inputs: [
85
+ {
86
+ internalType: "address",
87
+ name: "sender",
88
+ type: "address",
89
+ },
90
+ ],
91
+ name: "NotOutbox",
92
+ type: "error",
93
+ },
94
+ {
95
+ inputs: [
96
+ {
97
+ internalType: "address",
98
+ name: "sender",
99
+ type: "address",
100
+ },
101
+ {
102
+ internalType: "address",
103
+ name: "rollup",
104
+ type: "address",
105
+ },
106
+ {
107
+ internalType: "address",
108
+ name: "owner",
109
+ type: "address",
110
+ },
111
+ ],
112
+ name: "NotRollupOrOwner",
113
+ type: "error",
114
+ },
115
+ {
116
+ inputs: [
117
+ {
118
+ internalType: "address",
119
+ name: "sender",
120
+ type: "address",
121
+ },
122
+ ],
123
+ name: "NotSequencerInbox",
124
+ type: "error",
125
+ },
126
+ {
127
+ anonymous: false,
128
+ inputs: [
129
+ {
130
+ indexed: true,
131
+ internalType: "address",
132
+ name: "outbox",
133
+ type: "address",
134
+ },
135
+ {
136
+ indexed: true,
137
+ internalType: "address",
138
+ name: "to",
139
+ type: "address",
140
+ },
141
+ {
142
+ indexed: false,
143
+ internalType: "uint256",
144
+ name: "value",
145
+ type: "uint256",
146
+ },
147
+ {
148
+ indexed: false,
149
+ internalType: "bytes",
150
+ name: "data",
151
+ type: "bytes",
152
+ },
153
+ ],
154
+ name: "BridgeCallTriggered",
155
+ type: "event",
156
+ },
157
+ {
158
+ anonymous: false,
159
+ inputs: [
160
+ {
161
+ indexed: true,
162
+ internalType: "address",
163
+ name: "inbox",
164
+ type: "address",
165
+ },
166
+ {
167
+ indexed: false,
168
+ internalType: "bool",
169
+ name: "enabled",
170
+ type: "bool",
171
+ },
172
+ ],
173
+ name: "InboxToggle",
174
+ type: "event",
175
+ },
176
+ {
177
+ anonymous: false,
178
+ inputs: [
179
+ {
180
+ indexed: true,
181
+ internalType: "uint256",
182
+ name: "messageIndex",
183
+ type: "uint256",
184
+ },
185
+ {
186
+ indexed: true,
187
+ internalType: "bytes32",
188
+ name: "beforeInboxAcc",
189
+ type: "bytes32",
190
+ },
191
+ {
192
+ indexed: false,
193
+ internalType: "address",
194
+ name: "inbox",
195
+ type: "address",
196
+ },
197
+ {
198
+ indexed: false,
199
+ internalType: "uint8",
200
+ name: "kind",
201
+ type: "uint8",
202
+ },
203
+ {
204
+ indexed: false,
205
+ internalType: "address",
206
+ name: "sender",
207
+ type: "address",
208
+ },
209
+ {
210
+ indexed: false,
211
+ internalType: "bytes32",
212
+ name: "messageDataHash",
213
+ type: "bytes32",
214
+ },
215
+ {
216
+ indexed: false,
217
+ internalType: "uint256",
218
+ name: "baseFeeL1",
219
+ type: "uint256",
220
+ },
221
+ {
222
+ indexed: false,
223
+ internalType: "uint64",
224
+ name: "timestamp",
225
+ type: "uint64",
226
+ },
227
+ ],
228
+ name: "MessageDelivered",
229
+ type: "event",
230
+ },
231
+ {
232
+ anonymous: false,
233
+ inputs: [
234
+ {
235
+ indexed: true,
236
+ internalType: "address",
237
+ name: "outbox",
238
+ type: "address",
239
+ },
240
+ {
241
+ indexed: false,
242
+ internalType: "bool",
243
+ name: "enabled",
244
+ type: "bool",
245
+ },
246
+ ],
247
+ name: "OutboxToggle",
248
+ type: "event",
249
+ },
250
+ {
251
+ anonymous: false,
252
+ inputs: [
253
+ {
254
+ indexed: false,
255
+ internalType: "address",
256
+ name: "newSequencerInbox",
257
+ type: "address",
258
+ },
259
+ ],
260
+ name: "SequencerInboxUpdated",
261
+ type: "event",
262
+ },
263
+ {
264
+ inputs: [],
265
+ name: "acceptFundsFromOldBridge",
266
+ outputs: [],
267
+ stateMutability: "payable",
268
+ type: "function",
269
+ },
270
+ {
271
+ inputs: [],
272
+ name: "activeOutbox",
273
+ outputs: [
274
+ {
275
+ internalType: "address",
276
+ name: "",
277
+ type: "address",
278
+ },
279
+ ],
280
+ stateMutability: "view",
281
+ type: "function",
282
+ },
283
+ {
284
+ inputs: [
285
+ {
286
+ internalType: "uint256",
287
+ name: "",
288
+ type: "uint256",
289
+ },
290
+ ],
291
+ name: "allowedDelayedInboxList",
292
+ outputs: [
293
+ {
294
+ internalType: "address",
295
+ name: "",
296
+ type: "address",
297
+ },
298
+ ],
299
+ stateMutability: "view",
300
+ type: "function",
301
+ },
302
+ {
303
+ inputs: [
304
+ {
305
+ internalType: "address",
306
+ name: "inbox",
307
+ type: "address",
308
+ },
309
+ ],
310
+ name: "allowedDelayedInboxes",
311
+ outputs: [
312
+ {
313
+ internalType: "bool",
314
+ name: "",
315
+ type: "bool",
316
+ },
317
+ ],
318
+ stateMutability: "view",
319
+ type: "function",
320
+ },
321
+ {
322
+ inputs: [
323
+ {
324
+ internalType: "uint256",
325
+ name: "",
326
+ type: "uint256",
327
+ },
328
+ ],
329
+ name: "allowedOutboxList",
330
+ outputs: [
331
+ {
332
+ internalType: "address",
333
+ name: "",
334
+ type: "address",
335
+ },
336
+ ],
337
+ stateMutability: "view",
338
+ type: "function",
339
+ },
340
+ {
341
+ inputs: [
342
+ {
343
+ internalType: "address",
344
+ name: "outbox",
345
+ type: "address",
346
+ },
347
+ ],
348
+ name: "allowedOutboxes",
349
+ outputs: [
350
+ {
351
+ internalType: "bool",
352
+ name: "",
353
+ type: "bool",
354
+ },
355
+ ],
356
+ stateMutability: "view",
357
+ type: "function",
358
+ },
359
+ {
360
+ inputs: [
361
+ {
362
+ internalType: "uint256",
363
+ name: "",
364
+ type: "uint256",
365
+ },
366
+ ],
367
+ name: "delayedInboxAccs",
368
+ outputs: [
369
+ {
370
+ internalType: "bytes32",
371
+ name: "",
372
+ type: "bytes32",
373
+ },
374
+ ],
375
+ stateMutability: "view",
376
+ type: "function",
377
+ },
378
+ {
379
+ inputs: [],
380
+ name: "delayedMessageCount",
381
+ outputs: [
382
+ {
383
+ internalType: "uint256",
384
+ name: "",
385
+ type: "uint256",
386
+ },
387
+ ],
388
+ stateMutability: "view",
389
+ type: "function",
390
+ },
391
+ {
392
+ inputs: [
393
+ {
394
+ internalType: "uint8",
395
+ name: "kind",
396
+ type: "uint8",
397
+ },
398
+ {
399
+ internalType: "address",
400
+ name: "sender",
401
+ type: "address",
402
+ },
403
+ {
404
+ internalType: "bytes32",
405
+ name: "messageDataHash",
406
+ type: "bytes32",
407
+ },
408
+ {
409
+ internalType: "uint256",
410
+ name: "tokenFeeAmount",
411
+ type: "uint256",
412
+ },
413
+ ],
414
+ name: "enqueueDelayedMessage",
415
+ outputs: [
416
+ {
417
+ internalType: "uint256",
418
+ name: "",
419
+ type: "uint256",
420
+ },
421
+ ],
422
+ stateMutability: "nonpayable",
423
+ type: "function",
424
+ },
425
+ {
426
+ inputs: [
427
+ {
428
+ internalType: "bytes32",
429
+ name: "dataHash",
430
+ type: "bytes32",
431
+ },
432
+ {
433
+ internalType: "uint256",
434
+ name: "afterDelayedMessagesRead",
435
+ type: "uint256",
436
+ },
437
+ {
438
+ internalType: "uint256",
439
+ name: "prevMessageCount",
440
+ type: "uint256",
441
+ },
442
+ {
443
+ internalType: "uint256",
444
+ name: "newMessageCount",
445
+ type: "uint256",
446
+ },
447
+ ],
448
+ name: "enqueueSequencerMessage",
449
+ outputs: [
450
+ {
451
+ internalType: "uint256",
452
+ name: "seqMessageIndex",
453
+ type: "uint256",
454
+ },
455
+ {
456
+ internalType: "bytes32",
457
+ name: "beforeAcc",
458
+ type: "bytes32",
459
+ },
460
+ {
461
+ internalType: "bytes32",
462
+ name: "delayedAcc",
463
+ type: "bytes32",
464
+ },
465
+ {
466
+ internalType: "bytes32",
467
+ name: "acc",
468
+ type: "bytes32",
469
+ },
470
+ ],
471
+ stateMutability: "nonpayable",
472
+ type: "function",
473
+ },
474
+ {
475
+ inputs: [
476
+ {
477
+ internalType: "address",
478
+ name: "to",
479
+ type: "address",
480
+ },
481
+ {
482
+ internalType: "uint256",
483
+ name: "value",
484
+ type: "uint256",
485
+ },
486
+ {
487
+ internalType: "bytes",
488
+ name: "data",
489
+ type: "bytes",
490
+ },
491
+ ],
492
+ name: "executeCall",
493
+ outputs: [
494
+ {
495
+ internalType: "bool",
496
+ name: "success",
497
+ type: "bool",
498
+ },
499
+ {
500
+ internalType: "bytes",
501
+ name: "returnData",
502
+ type: "bytes",
503
+ },
504
+ ],
505
+ stateMutability: "nonpayable",
506
+ type: "function",
507
+ },
508
+ {
509
+ inputs: [
510
+ {
511
+ internalType: "contract IOwnable",
512
+ name: "rollup_",
513
+ type: "address",
514
+ },
515
+ {
516
+ internalType: "address",
517
+ name: "nativeToken_",
518
+ type: "address",
519
+ },
520
+ ],
521
+ name: "initialize",
522
+ outputs: [],
523
+ stateMutability: "nonpayable",
524
+ type: "function",
525
+ },
526
+ {
527
+ inputs: [],
528
+ name: "nativeToken",
529
+ outputs: [
530
+ {
531
+ internalType: "address",
532
+ name: "",
533
+ type: "address",
534
+ },
535
+ ],
536
+ stateMutability: "view",
537
+ type: "function",
538
+ },
539
+ {
540
+ inputs: [],
541
+ name: "rollup",
542
+ outputs: [
543
+ {
544
+ internalType: "contract IOwnable",
545
+ name: "",
546
+ type: "address",
547
+ },
548
+ ],
549
+ stateMutability: "view",
550
+ type: "function",
551
+ },
552
+ {
553
+ inputs: [],
554
+ name: "sequencerInbox",
555
+ outputs: [
556
+ {
557
+ internalType: "address",
558
+ name: "",
559
+ type: "address",
560
+ },
561
+ ],
562
+ stateMutability: "view",
563
+ type: "function",
564
+ },
565
+ {
566
+ inputs: [
567
+ {
568
+ internalType: "uint256",
569
+ name: "",
570
+ type: "uint256",
571
+ },
572
+ ],
573
+ name: "sequencerInboxAccs",
574
+ outputs: [
575
+ {
576
+ internalType: "bytes32",
577
+ name: "",
578
+ type: "bytes32",
579
+ },
580
+ ],
581
+ stateMutability: "view",
582
+ type: "function",
583
+ },
584
+ {
585
+ inputs: [],
586
+ name: "sequencerMessageCount",
587
+ outputs: [
588
+ {
589
+ internalType: "uint256",
590
+ name: "",
591
+ type: "uint256",
592
+ },
593
+ ],
594
+ stateMutability: "view",
595
+ type: "function",
596
+ },
597
+ {
598
+ inputs: [],
599
+ name: "sequencerReportedSubMessageCount",
600
+ outputs: [
601
+ {
602
+ internalType: "uint256",
603
+ name: "",
604
+ type: "uint256",
605
+ },
606
+ ],
607
+ stateMutability: "view",
608
+ type: "function",
609
+ },
610
+ {
611
+ inputs: [
612
+ {
613
+ internalType: "address",
614
+ name: "inbox",
615
+ type: "address",
616
+ },
617
+ {
618
+ internalType: "bool",
619
+ name: "enabled",
620
+ type: "bool",
621
+ },
622
+ ],
623
+ name: "setDelayedInbox",
624
+ outputs: [],
625
+ stateMutability: "nonpayable",
626
+ type: "function",
627
+ },
628
+ {
629
+ inputs: [
630
+ {
631
+ internalType: "address",
632
+ name: "outbox",
633
+ type: "address",
634
+ },
635
+ {
636
+ internalType: "bool",
637
+ name: "enabled",
638
+ type: "bool",
639
+ },
640
+ ],
641
+ name: "setOutbox",
642
+ outputs: [],
643
+ stateMutability: "nonpayable",
644
+ type: "function",
645
+ },
646
+ {
647
+ inputs: [
648
+ {
649
+ internalType: "address",
650
+ name: "_sequencerInbox",
651
+ type: "address",
652
+ },
653
+ ],
654
+ name: "setSequencerInbox",
655
+ outputs: [],
656
+ stateMutability: "nonpayable",
657
+ type: "function",
658
+ },
659
+ {
660
+ inputs: [
661
+ {
662
+ internalType: "uint256",
663
+ name: "newMsgCount",
664
+ type: "uint256",
665
+ },
666
+ ],
667
+ name: "setSequencerReportedSubMessageCount",
668
+ outputs: [],
669
+ stateMutability: "nonpayable",
670
+ type: "function",
671
+ },
672
+ {
673
+ inputs: [
674
+ {
675
+ internalType: "address",
676
+ name: "sender",
677
+ type: "address",
678
+ },
679
+ {
680
+ internalType: "bytes32",
681
+ name: "messageDataHash",
682
+ type: "bytes32",
683
+ },
684
+ ],
685
+ name: "submitBatchSpendingReport",
686
+ outputs: [
687
+ {
688
+ internalType: "uint256",
689
+ name: "",
690
+ type: "uint256",
691
+ },
692
+ ],
693
+ stateMutability: "nonpayable",
694
+ type: "function",
695
+ },
696
+ ];
697
+
698
+ const _bytecode =
699
+ "0x60a06040523060805234801561001457600080fd5b50608051611b22610030600039600061081b0152611b226000f3fe60806040526004361061013f5760003560e01c80639e5d4c49116100b6578063e1758bd81161006f578063e1758bd8146103a0578063e76f5c8d146103c0578063e77145f4146101d8578063eca067ad146103e0578063ee35f327146103f5578063f81ff3b31461041557600080fd5b80639e5d4c49146102dd578063ab5d89431461030b578063ae60bd1314610320578063cb23bcb514610340578063cee3d72814610360578063d5719dc21461038057600080fd5b80634f61f850116101085780634f61f850146101fa5780635fca4a161461021a57806375d81e25146102305780637a88b1071461025057806386598a5614610270578063945e1147146102b057600080fd5b806284120c1461014457806316bf557914610168578063413b35bd1461018857806347fb24c5146101b8578063485cc955146101da575b600080fd5b34801561015057600080fd5b506007545b6040519081526020015b60405180910390f35b34801561017457600080fd5b5061015561018336600461175f565b610435565b34801561019457600080fd5b506101a86101a336600461178d565b610456565b604051901515815260200161015f565b3480156101c457600080fd5b506101d86101d33660046117b8565b610477565b005b3480156101e657600080fd5b506101d86101f53660046117f1565b61076c565b34801561020657600080fd5b506101d861021536600461178d565b610918565b34801561022657600080fd5b50610155600a5481565b34801561023c57600080fd5b5061015561024b36600461181f565b610a3d565b34801561025c57600080fd5b5061015561026b36600461186b565b610a54565b34801561027c57600080fd5b5061029061028b366004611897565b610a9a565b60408051948552602085019390935291830152606082015260800161015f565b3480156102bc57600080fd5b506102d06102cb36600461175f565b610c01565b60405161015f91906118c9565b3480156102e957600080fd5b506102fd6102f83660046118dd565b610c2b565b60405161015f9291906119be565b34801561031757600080fd5b506102d0610d60565b34801561032c57600080fd5b506101a861033b36600461178d565b610d86565b34801561034c57600080fd5b506008546102d0906001600160a01b031681565b34801561036c57600080fd5b506101d861037b3660046117b8565b610da8565b34801561038c57600080fd5b5061015561039b36600461175f565b6110c1565b3480156103ac57600080fd5b50603d546102d0906001600160a01b031681565b3480156103cc57600080fd5b506102d06103db36600461175f565b6110d1565b3480156103ec57600080fd5b50600654610155565b34801561040157600080fd5b506009546102d0906001600160a01b031681565b34801561042157600080fd5b506101d861043036600461175f565b6110e1565b6007818154811061044557600080fd5b600091825260209091200154905081565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6008546001600160a01b0316331461054f5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156104ce57600080fd5b505afa1580156104e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050691906119d9565b9050336001600160a01b0382161461054d57600854604051630739600760e01b81526105449133916001600160a01b039091169084906004016119f6565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a282151581151514156105bc5750505050565b821561064a57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610766565b6003805461065a90600190611a19565b8154811061066a5761066a611a3e565b6000918252602090912001548254600380546001600160a01b0390931692909190811061069957610699611a3e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106e7576106e7611a3e565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600380548061071d5761071d611a54565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505050565b600054610100900460ff166107875760005460ff161561078b565b303b155b6107ee5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610544565b600054610100900460ff16158015610810576000805461ffff19166101011790555b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561089e5760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610544565b6001600160a01b0382166108c7578160405163036ffb6b60e11b815260040161054491906118c9565b603d80546001600160a01b038085166001600160a01b0319928316179092556005805482168317905560088054928616929091169190911790558015610913576000805461ff00191690555b505050565b6008546001600160a01b031633146109e75760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561096f57600080fd5b505afa158015610983573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a791906119d9565b9050336001600160a01b038216146109e557600854604051630739600760e01b81526105449133916001600160a01b039091169084906004016119f6565b505b600980546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a90610a329083906118c9565b60405180910390a150565b6000610a4b858585856111b5565b95945050505050565b6009546000906001600160a01b03163314610a84573360405163223e13c160e21b815260040161054491906118c9565b610a93600d84434248876111fa565b9392505050565b6009546000908190819081906001600160a01b03163314610ad0573360405163223e13c160e21b815260040161054491906118c9565b85600a5414158015610ae157508515155b8015610aee5750600a5415155b15610b1a57600a5460405163e2051feb60e01b8152600481019190915260248101879052604401610544565b600a85905560075493508315610b585760078054610b3a90600190611a19565b81548110610b4a57610b4a611a3e565b906000526020600020015492505b8615610b89576006610b6b600189611a19565b81548110610b7b57610b7b611a3e565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600780546001810182556000919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688018190559398929750909550919350915050565b60048181548110610c1157600080fd5b6000918252602090912001546001600160a01b0316905081565b60006060610c3833610456565b610c5757336040516332ea82ab60e01b815260040161054491906118c9565b8215801590610c6e57506001600160a01b0386163b155b15610c8e578560405163b5cf5b8f60e01b815260040161054491906118c9565b600580546001600160a01b031981163317909155604080516020601f87018190048102820181019092528581526001600160a01b0390921691610cef9189918991899089908190840183828082843760009201919091525061138992505050565b600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610d4e908a908a908a90611a6a565b60405180910390a35094509492505050565b6005546000906001600160a01b0390811690811415610d8157600091505090565b919050565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b6008546001600160a01b03163314610e775760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610dff57600080fd5b505afa158015610e13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3791906119d9565b9050336001600160a01b03821614610e7557600854604051630739600760e01b81526105449133916001600160a01b039091169084906004016119f6565b505b6001600160a01b038281161415610ea3578160405163077abed160e41b815260040161054491906118c9565b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a28215158115151415610f115750505050565b8215610fa057604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610766565b60048054610fb090600190611a19565b81548110610fc057610fc0611a3e565b6000918252602090912001548254600480546001600160a01b03909316929091908110610fef57610fef611a3e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460026000600485600001548154811061103d5761103d611a3e565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600480548061107357611073611a54565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6006818154811061044557600080fd5b60038181548110610c1157600080fd5b6008546001600160a01b031633146111b05760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561113857600080fd5b505afa15801561114c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117091906119d9565b9050336001600160a01b038216146111ae57600854604051630739600760e01b81526105449133916001600160a01b039091169084906004016119f6565b505b600a55565b60006111c033610d86565b6111df573360405163b6c60ea360e01b815260040161054491906118c9565b60006111ef8686434285896111fa565b9050610a4b83611456565b600654604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a5909201909252805191012060009190600082156112b4576006611296600185611a19565b815481106112a6576112a6611a3e565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b603d546000906060906001600160a01b03868116911614156113cb57603d54604051631c2d9a4160e31b8152610544916001600160a01b0316906004016118c9565b603d546113e2906001600160a01b03168686611471565b8251600192501561144e57846001600160a01b0316836040516114059190611aa0565b6000604051808303816000865af19150503d8060008114611442576040519150601f19603f3d011682016040523d82523d6000602084013e611447565b606091505b5090925090505b935093915050565b603d5461146e906001600160a01b03163330846114d4565b50565b6040516001600160a01b03831660248201526044810182905261091390849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915261150c565b6040516001600160a01b03808516602483015283166044820152606481018290526107669085906323b872dd60e01b9060840161149d565b6000611561826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166115de9092919063ffffffff16565b805190915015610913578080602001905181019061157f9190611abc565b6109135760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610544565b60606115ed84846000856115f5565b949350505050565b6060824710156116565760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610544565b6001600160a01b0385163b6116ad5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610544565b600080866001600160a01b031685876040516116c99190611aa0565b60006040518083038185875af1925050503d8060008114611706576040519150601f19603f3d011682016040523d82523d6000602084013e61170b565b606091505b509150915061171b828286611726565b979650505050505050565b60608315611735575081610a93565b8251156117455782518084602001fd5b8160405162461bcd60e51b81526004016105449190611ad9565b60006020828403121561177157600080fd5b5035919050565b6001600160a01b038116811461146e57600080fd5b60006020828403121561179f57600080fd5b8135610a9381611778565b801515811461146e57600080fd5b600080604083850312156117cb57600080fd5b82356117d681611778565b915060208301356117e6816117aa565b809150509250929050565b6000806040838503121561180457600080fd5b823561180f81611778565b915060208301356117e681611778565b6000806000806080858703121561183557600080fd5b843560ff8116811461184657600080fd5b9350602085013561185681611778565b93969395505050506040820135916060013590565b6000806040838503121561187e57600080fd5b823561188981611778565b946020939093013593505050565b600080600080608085870312156118ad57600080fd5b5050823594602084013594506040840135936060013592509050565b6001600160a01b0391909116815260200190565b600080600080606085870312156118f357600080fd5b84356118fe81611778565b935060208501359250604085013567ffffffffffffffff8082111561192257600080fd5b818701915087601f83011261193657600080fd5b81358181111561194557600080fd5b88602082850101111561195757600080fd5b95989497505060200194505050565b60005b83811015611981578181015183820152602001611969565b838111156107665750506000910152565b600081518084526119aa816020860160208601611966565b601f01601f19169290920160200192915050565b82151581526040602082015260006115ed6040830184611992565b6000602082840312156119eb57600080fd5b8151610a9381611778565b6001600160a01b0393841681529183166020830152909116604082015260600190565b600082821015611a3957634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008251611ab2818460208701611966565b9190910192915050565b600060208284031215611ace57600080fd5b8151610a93816117aa565b602081526000610a93602083018461199256fea2646970667358221220345f1a888793fe88ee4b3a1194e817bdf165cbc902007fc2a00031ce5349fb4c64736f6c63430008090033";
700
+
701
+ type ERC20BridgeConstructorParams =
702
+ | [signer?: Signer]
703
+ | ConstructorParameters<typeof ContractFactory>;
704
+
705
+ const isSuperArgs = (
706
+ xs: ERC20BridgeConstructorParams
707
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
708
+
709
+ export class ERC20Bridge__factory extends ContractFactory {
710
+ constructor(...args: ERC20BridgeConstructorParams) {
711
+ if (isSuperArgs(args)) {
712
+ super(...args);
713
+ } else {
714
+ super(_abi, _bytecode, args[0]);
715
+ }
716
+ }
717
+
718
+ override deploy(
719
+ overrides?: Overrides & { from?: string | Promise<string> }
720
+ ): Promise<ERC20Bridge> {
721
+ return super.deploy(overrides || {}) as Promise<ERC20Bridge>;
722
+ }
723
+ override getDeployTransaction(
724
+ overrides?: Overrides & { from?: string | Promise<string> }
725
+ ): TransactionRequest {
726
+ return super.getDeployTransaction(overrides || {});
727
+ }
728
+ override attach(address: string): ERC20Bridge {
729
+ return super.attach(address) as ERC20Bridge;
730
+ }
731
+ override connect(signer: Signer): ERC20Bridge__factory {
732
+ return super.connect(signer) as ERC20Bridge__factory;
733
+ }
734
+
735
+ static readonly bytecode = _bytecode;
736
+ static readonly abi = _abi;
737
+ static createInterface(): ERC20BridgeInterface {
738
+ return new utils.Interface(_abi) as ERC20BridgeInterface;
739
+ }
740
+ static connect(
741
+ address: string,
742
+ signerOrProvider: Signer | Provider
743
+ ): ERC20Bridge {
744
+ return new Contract(address, _abi, signerOrProvider) as ERC20Bridge;
745
+ }
746
+ }