@wireio/stake 0.1.3 → 0.1.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (526) hide show
  1. package/README.md +185 -243
  2. package/lib/stake.browser.js +64498 -6551
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +18865 -349
  5. package/lib/stake.js +64886 -6556
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +64498 -6551
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +6 -3
  10. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.dbg.json +4 -0
  11. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.json +164 -0
  12. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  13. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  14. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  15. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  16. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.dbg.json +4 -0
  17. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.json +618 -0
  18. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  19. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.json +40 -0
  20. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  21. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.json +10 -0
  22. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  23. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.json +10 -0
  24. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  25. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  26. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  27. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.json +49 -0
  28. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  29. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  30. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  31. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.json +1458 -0
  32. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  33. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.json +1532 -0
  34. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  35. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.json +1525 -0
  36. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  37. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.json +1076 -0
  38. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  39. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.json +807 -0
  40. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  41. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
  42. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  43. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  44. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  45. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
  46. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  47. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  48. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  49. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  50. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  51. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  52. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  53. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  54. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  55. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.json +344 -0
  56. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  57. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +59 -0
  58. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  59. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +14 -12
  60. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  61. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/LiqEthCommon.json +2 -2
  62. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  63. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  64. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  65. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  66. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  67. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  68. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  69. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  70. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  71. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.json +1376 -0
  72. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
  73. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.json +629 -0
  74. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  75. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  76. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  77. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
  78. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  79. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  80. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  81. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IAccounting.json +25 -21
  82. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  83. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  84. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  85. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  86. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  87. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  88. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  89. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20.json +37 -1
  90. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  91. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  92. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  93. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  94. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  95. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  96. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  97. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  98. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  99. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  100. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  101. package/src/assets/ethereum/{ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.json → hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json} +140 -78
  102. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  103. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  104. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  105. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +548 -0
  106. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  107. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  108. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  109. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  110. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  111. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  112. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  113. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/Uint64BE.json +2 -2
  114. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  115. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  116. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.dbg.json +4 -0
  117. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.json +1111 -0
  118. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  119. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json +1696 -0
  120. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  121. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  122. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  123. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
  124. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
  125. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
  126. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
  127. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
  128. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
  129. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
  130. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
  131. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
  132. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
  133. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.json +1044 -0
  134. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
  135. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +1055 -0
  136. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  137. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +81 -0
  138. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  139. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  140. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  141. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
  142. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  143. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  144. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  145. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +41 -0
  146. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  147. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +287 -0
  148. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  149. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +294 -0
  150. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  151. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +415 -0
  152. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  153. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +399 -0
  154. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  155. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +245 -0
  156. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  157. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1204 -0
  158. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  159. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +312 -0
  160. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  161. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +324 -0
  162. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
  163. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.json +1068 -0
  164. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  165. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
  166. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  167. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  168. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  169. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json +751 -0
  170. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  171. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  172. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  173. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  174. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  175. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  176. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  177. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  178. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  179. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  180. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
  181. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.json +888 -0
  182. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.dbg.json +4 -0
  183. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.json +659 -0
  184. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
  185. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json +1393 -0
  186. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  187. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
  188. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
  189. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
  190. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
  191. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
  192. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
  193. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
  194. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
  195. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
  196. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
  197. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
  198. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
  199. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
  200. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
  201. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
  202. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
  203. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
  204. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
  205. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
  206. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
  207. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
  208. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
  209. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
  210. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
  211. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
  212. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  213. package/src/assets/ethereum/{ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.json → hoodi/outpost/interfaces/IPretoken.sol/IPretoken.json} +6 -12
  214. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  215. package/src/assets/ethereum/{ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.json → hoodi/outpost/interfaces/IWarrant.sol/IWarrant.json} +9 -4
  216. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  217. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  218. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  219. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  220. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  221. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  222. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  223. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
  224. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  225. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
  226. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.dbg.json +4 -0
  227. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.json +560 -0
  228. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.dbg.json +4 -0
  229. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.json +460 -0
  230. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.dbg.json +4 -0
  231. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.json +624 -0
  232. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.dbg.json +4 -0
  233. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.json +164 -0
  234. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  235. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  236. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  237. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  238. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.dbg.json +4 -0
  239. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.json +618 -0
  240. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  241. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.json +40 -0
  242. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  243. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.json +10 -0
  244. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  245. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.json +10 -0
  246. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  247. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  248. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  249. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.json +49 -0
  250. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  251. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  252. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  253. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.json +1458 -0
  254. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  255. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.json +1532 -0
  256. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  257. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.json +1525 -0
  258. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  259. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json +1076 -0
  260. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  261. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json +807 -0
  262. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  263. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
  264. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
  265. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
  266. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
  267. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
  268. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  269. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  270. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  271. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  272. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  273. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  274. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
  275. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
  276. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  277. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  278. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  279. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  280. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  281. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  282. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  283. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
  284. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  285. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  286. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  287. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  288. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  289. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  290. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  291. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  292. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  293. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  294. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  295. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  296. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  297. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  298. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
  299. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.json +89 -0
  300. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  301. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json +1376 -0
  302. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  303. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  304. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  305. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
  306. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  307. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  308. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  309. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  310. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  311. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  312. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  313. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  314. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  315. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  316. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  317. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  318. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  319. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  320. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  321. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  322. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  323. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  324. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  325. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  326. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  327. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  328. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  329. package/src/assets/ethereum/{ABI/liqEth/RewardsERC20.sol/RewardsERC20.json → mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json} +159 -34
  330. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  331. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  332. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  333. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.json +542 -0
  334. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  335. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  336. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  337. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  338. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  339. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  340. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  341. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  342. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  343. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  344. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.dbg.json +4 -0
  345. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json +1915 -0
  346. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
  347. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json +1845 -0
  348. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  349. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  350. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  351. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +551 -0
  352. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.dbg.json +4 -0
  353. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.json +948 -0
  354. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  355. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.json +88 -0
  356. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  357. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  358. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  359. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.json +194 -0
  360. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  361. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  362. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  363. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.json +36 -0
  364. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  365. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.json +199 -0
  366. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  367. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.json +273 -0
  368. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  369. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +394 -0
  370. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  371. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +378 -0
  372. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  373. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.json +224 -0
  374. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  375. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.json +1010 -0
  376. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  377. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.json +291 -0
  378. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  379. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.json +298 -0
  380. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  381. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.json +488 -0
  382. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  383. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  384. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
  385. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
  386. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  387. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  388. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  389. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  390. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  391. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  392. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  393. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  394. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  395. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  396. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.dbg.json +4 -0
  397. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json +943 -0
  398. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
  399. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json +1703 -0
  400. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  401. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.json +2015 -0
  402. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  403. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  404. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  405. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  406. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  407. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  408. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  409. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  410. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
  411. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.json +1871 -0
  412. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
  413. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.json +1653 -0
  414. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  415. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.json +730 -0
  416. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
  417. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.json +936 -0
  418. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
  419. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.json +1665 -0
  420. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  421. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  422. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  423. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json +330 -0
  424. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  425. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json +449 -0
  426. package/src/assets/solana/devnet/idl/liqsol_core.json +8566 -0
  427. package/src/assets/solana/{idl → devnet/idl}/liqsol_token.json +35 -1
  428. package/src/assets/solana/devnet/idl/transfer_hook.json +490 -0
  429. package/src/assets/solana/devnet/idl/validator_leaderboard.json +735 -0
  430. package/src/assets/solana/devnet/types/liqsol_core.ts +8572 -0
  431. package/src/assets/solana/{types → devnet/types}/liqsol_token.ts +35 -1
  432. package/src/assets/solana/devnet/types/transfer_hook.ts +496 -0
  433. package/src/assets/solana/devnet/types/validator_leaderboard.ts +741 -0
  434. package/src/assets/solana/mainnet/idl/liqsol_core.json +6678 -0
  435. package/src/assets/solana/mainnet/idl/liqsol_token.json +217 -0
  436. package/src/assets/solana/mainnet/idl/transfer_hook.json +479 -0
  437. package/src/assets/solana/{idl → mainnet/idl}/validator_leaderboard.json +4 -4
  438. package/src/assets/solana/mainnet/types/liqsol_core.ts +6684 -0
  439. package/src/assets/solana/mainnet/types/liqsol_token.ts +223 -0
  440. package/src/assets/solana/mainnet/types/transfer_hook.ts +485 -0
  441. package/src/assets/solana/{types → mainnet/types}/validator_leaderboard.ts +4 -4
  442. package/src/assets/solana/realdevnet/idl/liqsol_core.json +7112 -0
  443. package/src/assets/solana/realdevnet/idl/liqsol_token.json +217 -0
  444. package/src/assets/solana/realdevnet/idl/transfer_hook.json +479 -0
  445. package/src/assets/solana/realdevnet/idl/validator_leaderboard.json +735 -0
  446. package/src/assets/solana/realdevnet/types/liqsol_core.ts +7118 -0
  447. package/src/assets/solana/realdevnet/types/liqsol_token.ts +223 -0
  448. package/src/assets/solana/realdevnet/types/transfer_hook.ts +485 -0
  449. package/src/assets/solana/realdevnet/types/validator_leaderboard.ts +741 -0
  450. package/src/index.ts +6 -4
  451. package/src/networks/ethereum/clients/convert.client.ts +221 -0
  452. package/src/networks/ethereum/clients/opp.client.ts +389 -0
  453. package/src/networks/ethereum/clients/pretoken.client.ts +165 -0
  454. package/src/networks/ethereum/clients/receipt.client.ts +199 -0
  455. package/src/networks/ethereum/clients/stake.client.ts +203 -0
  456. package/src/networks/ethereum/clients/validator.client.ts +61 -0
  457. package/src/networks/ethereum/contract.ts +424 -109
  458. package/src/networks/ethereum/ethereum.ts +546 -110
  459. package/src/networks/ethereum/types.ts +125 -17
  460. package/src/networks/ethereum/utils.ts +340 -0
  461. package/src/networks/solana/clients/convert.client.ts +341 -0
  462. package/src/networks/solana/clients/distribution.client.ts +266 -262
  463. package/src/networks/solana/clients/leaderboard.client.ts +68 -26
  464. package/src/networks/solana/clients/outpost.client.ts +342 -0
  465. package/src/networks/solana/clients/token.client.ts +214 -0
  466. package/src/networks/solana/constants.ts +100 -181
  467. package/src/networks/solana/program.ts +432 -28
  468. package/src/networks/solana/solana.ts +1137 -149
  469. package/src/networks/solana/types.ts +743 -33
  470. package/src/networks/solana/utils.ts +368 -304
  471. package/src/{staker/staker.ts → staker.ts} +27 -6
  472. package/src/types.ts +364 -0
  473. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +0 -4
  474. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json +0 -1153
  475. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +0 -4
  476. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -4
  477. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -4
  478. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.dbg.json +0 -4
  479. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.dbg.json +0 -4
  480. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -4
  481. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -4
  482. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.json +0 -138
  483. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -4
  484. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -4
  485. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -4
  486. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.dbg.json +0 -4
  487. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.dbg.json +0 -4
  488. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.dbg.json +0 -4
  489. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.json +0 -10
  490. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.dbg.json +0 -4
  491. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.json +0 -10
  492. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.dbg.json +0 -4
  493. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.json +0 -225
  494. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.dbg.json +0 -4
  495. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.json +0 -10
  496. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.dbg.json +0 -4
  497. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.json +0 -10
  498. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +0 -4
  499. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.json +0 -813
  500. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +0 -4
  501. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json +0 -651
  502. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +0 -4
  503. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +0 -1110
  504. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.dbg.json +0 -4
  505. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.json +0 -391
  506. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.dbg.json +0 -4
  507. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.json +0 -402
  508. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +0 -4
  509. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json +0 -1225
  510. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -4
  511. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +0 -927
  512. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -4
  513. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -4
  514. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json +0 -447
  515. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -4
  516. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +0 -472
  517. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +0 -4
  518. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +0 -330
  519. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +0 -4
  520. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +0 -449
  521. package/src/assets/solana/idl/liqsol_core.json +0 -4239
  522. package/src/assets/solana/types/liqsol_core.ts +0 -4245
  523. package/src/networks/solana/clients/deposit.client.ts +0 -131
  524. package/src/staker/types.ts +0 -49
  525. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
  526. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
@@ -3,116 +3,438 @@
3
3
  *
4
4
  * Provides a unified service for interacting with Ethereum smart contracts using ethers.js.
5
5
  */
6
- import AccountingArtifact from '../../assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json';
7
- import DepositManagerArtifact from '../../assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json';
8
- import LiqEthArtifact from '../../assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json';
9
- import LiqEthBurnArtifact from '../../assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.json';
10
- // import LiqEthCommonArtifact from '../../assets/ethereum/ABI/liqEth/liqEthCommon.sol/liqEthCommon.json';
11
- import LiqEthMintArtifact from '../../assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.json';
12
- // import RewardsERC20Artifact from '../../assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.json';
13
- import StakingModuleArtifact from '../../assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json';
14
- // import ValidatorBalanceArtifact from '../../assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.json';
15
- import WithdrawalQueueArtifact from '../../assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.json';
16
- import WithdrawalVaultArtifact from '../../assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json';
17
- // import YieldArtifact from '../../assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.json';
18
-
19
- import ERC20Artifact from '../../assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json';
20
- import ERC721Artifact from '../../assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json';
21
- import ERC1155Artifact from '../../assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json';
6
+
7
+ // Mainnet artifacts
8
+ import MainnetAccountingArtifact from '../../assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.json';
9
+ import MainnetDepositManagerArtifact from '../../assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json';
10
+ import MainnetLiqEthArtifact from '../../assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json';
11
+ import MainnetStakingModuleArtifact from '../../assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json';
12
+ import MainnetWithdrawalQueueArtifact from '../../assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json';
13
+ import MainnetWithdrawalVaultArtifact from '../../assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json';
14
+ import MainnetBeaconStateArtifact from '../../assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json';
15
+ import MainnetYieldOracleArtifact from '../../assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json';
16
+ import MainnetDepositorArtifact from '../../assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json';
17
+ import MainnetReceiptNFTArtifact from '../../assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.json';
18
+ import MainnetOutpostManagerArtifact from '../../assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json';
19
+ import MainnetBARArtifact from '../../assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json';
20
+ import MainnetOPPArtifact from '../../assets/ethereum/mainnet/outpost/OPP.sol/OPP.json';
21
+ import MainnetOPPCommonArtifact from '../../assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.json';
22
+ import MainnetOPPInboundArtifact from '../../assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.json';
23
+ import MainnetPretokenArtifact from '../../assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json';
24
+ import MainnetEthUsdPriceConsumerArtifact from '../../assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json';
25
+ import MainnetPoolArtifact from '../../assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json';
26
+ import MainnetOutpostManagerAuthorityArtifact from '../../assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json';
27
+ import MainnetIodataArtifact from '../../assets/ethereum/mainnet/common/iodata.sol/iodata.json';
28
+ import MainnetBase58Artifact from '../../assets/ethereum/mainnet/common/Base58.sol/Base58.json';
29
+ import MainnetSysioMerkleArtifact from '../../assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json';
30
+ import MainnetSysioWriteArtifact from '../../assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json';
31
+ import MainnetERC20Artifact from '../../assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json';
32
+ import MainnetERC721Artifact from '../../assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json';
33
+ import MainnetERC1155Artifact from '../../assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json';
34
+
35
+ // Hoodi artifacts
36
+ import HoodiAccountingArtifact from '../../assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json';
37
+ import HoodiDepositManagerArtifact from '../../assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.json';
38
+ import HoodiLiqEthArtifact from '../../assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json';
39
+ import HoodiStakingModuleArtifact from '../../assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json';
40
+ import HoodiWithdrawalQueueArtifact from '../../assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.json';
41
+ import HoodiWithdrawalVaultArtifact from '../../assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.json';
42
+ import HoodiBeaconStateArtifact from '../../assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.json';
43
+ import HoodiYieldOracleArtifact from '../../assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.json';
44
+ import HoodiDepositorArtifact from '../../assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json';
45
+ import HoodiReceiptNFTArtifact from '../../assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json';
46
+ import HoodiOutpostManagerArtifact from '../../assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json';
47
+ import HoodiBARArtifact from '../../assets/ethereum/hoodi/outpost/BAR.sol/BAR.json';
48
+ import HoodiOPPArtifact from '../../assets/ethereum/hoodi/outpost/OPP.sol/OPP.json';
49
+ import HoodiOPPCommonArtifact from '../../assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json';
50
+ import HoodiOPPInboundArtifact from '../../assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json';
51
+ import HoodiPretokenArtifact from '../../assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json';
52
+ import HoodiEthUsdPriceConsumerArtifact from '../../assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json';
53
+ import HoodiPoolArtifact from '../../assets/ethereum/hoodi/outpost/Pool.sol/Pool.json';
54
+ import HoodiOutpostManagerAuthorityArtifact from '../../assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json';
55
+ import HoodiIodataArtifact from '../../assets/ethereum/hoodi/common/iodata.sol/iodata.json';
56
+ import HoodiBase58Artifact from '../../assets/ethereum/hoodi/common/Base58.sol/Base58.json';
57
+ import HoodiSysioMerkleArtifact from '../../assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.json';
58
+ import HoodiSysioWriteArtifact from '../../assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.json';
59
+ import HoodiERC20Artifact from '../../assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json';
60
+ import HoodiERC721Artifact from '../../assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json';
61
+ import HoodiERC1155Artifact from '../../assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json';
22
62
 
23
63
  import { AddressBook, ContractName } from './types';
24
64
  import { Contract, ethers, providers, Signer } from 'ethers';
25
65
  import { JsonFragment } from '@ethersproject/abi';
26
66
  import { ErrorDescription } from '@ethersproject/abi/lib/interface';
67
+ import { EvmChainID } from '@wireio/core';
68
+ import { SupportedEvmChainID } from '../../types';
69
+
70
+ export const ERC20Abi = MainnetERC20Artifact.abi;
71
+ export const ERC721Abi = MainnetERC721Artifact.abi;
72
+ export const ERC1155Abi = MainnetERC1155Artifact.abi;
73
+
74
+ type AbiArtifact = { abi: JsonFragment[] };
75
+
76
+ type ArtifactBundle = {
77
+ Accounting: AbiArtifact;
78
+ DepositManager: AbiArtifact;
79
+ LiqEthToken: AbiArtifact;
80
+ StakingModule: AbiArtifact;
81
+ WithdrawalQueue: AbiArtifact;
82
+ WithdrawalVault: AbiArtifact;
83
+ BeaconState: AbiArtifact;
84
+ YieldOracle: AbiArtifact;
85
+ Depositor: AbiArtifact;
86
+ ReceiptNFT: AbiArtifact;
87
+ OutpostManager: AbiArtifact;
88
+ BAR: AbiArtifact;
89
+ OPP: AbiArtifact;
90
+ OPPCommon: AbiArtifact;
91
+ OPPInbound: AbiArtifact;
92
+ Pretoken: AbiArtifact;
93
+ EthUsdPriceConsumer: AbiArtifact;
94
+ Pool: AbiArtifact;
95
+ OutpostManagerAuthority: AbiArtifact;
96
+ iodata: AbiArtifact;
97
+ Base58: AbiArtifact;
98
+ sysio_merkle: AbiArtifact;
99
+ sysio_write: AbiArtifact;
100
+ ERC20: AbiArtifact;
101
+ ERC721: AbiArtifact;
102
+ ERC1155: AbiArtifact;
103
+ };
27
104
 
28
- export const ERC20Abi = ERC20Artifact.abi;
29
- export const ERC721Abi = ERC721Artifact.abi;
30
- export const ERC1155Abi = ERC1155Artifact.abi;
105
+ const MAINNET_ARTIFACTS: ArtifactBundle = {
106
+ Accounting: MainnetAccountingArtifact as AbiArtifact,
107
+ DepositManager: MainnetDepositManagerArtifact as AbiArtifact,
108
+ LiqEthToken: MainnetLiqEthArtifact as AbiArtifact,
109
+ StakingModule: MainnetStakingModuleArtifact as AbiArtifact,
110
+ WithdrawalQueue: MainnetWithdrawalQueueArtifact as AbiArtifact,
111
+ WithdrawalVault: MainnetWithdrawalVaultArtifact as AbiArtifact,
112
+ BeaconState: MainnetBeaconStateArtifact as AbiArtifact,
113
+ YieldOracle: MainnetYieldOracleArtifact as AbiArtifact,
114
+ Depositor: MainnetDepositorArtifact as AbiArtifact,
115
+ ReceiptNFT: MainnetReceiptNFTArtifact as AbiArtifact,
116
+ OutpostManager: MainnetOutpostManagerArtifact as AbiArtifact,
117
+ BAR: MainnetBARArtifact as AbiArtifact,
118
+ OPP: MainnetOPPArtifact as AbiArtifact,
119
+ OPPCommon: MainnetOPPCommonArtifact as AbiArtifact,
120
+ OPPInbound: MainnetOPPInboundArtifact as AbiArtifact,
121
+ Pretoken: MainnetPretokenArtifact as AbiArtifact,
122
+ EthUsdPriceConsumer: MainnetEthUsdPriceConsumerArtifact as AbiArtifact,
123
+ Pool: MainnetPoolArtifact as AbiArtifact,
124
+ OutpostManagerAuthority: MainnetOutpostManagerAuthorityArtifact as AbiArtifact,
125
+ iodata: MainnetIodataArtifact as AbiArtifact,
126
+ Base58: MainnetBase58Artifact as AbiArtifact,
127
+ sysio_merkle: MainnetSysioMerkleArtifact as AbiArtifact,
128
+ sysio_write: MainnetSysioWriteArtifact as AbiArtifact,
129
+ ERC20: MainnetERC20Artifact as AbiArtifact,
130
+ ERC721: MainnetERC721Artifact as AbiArtifact,
131
+ ERC1155: MainnetERC1155Artifact as AbiArtifact,
132
+ };
133
+
134
+ const HOODI_ARTIFACTS: ArtifactBundle = {
135
+ Accounting: HoodiAccountingArtifact as AbiArtifact,
136
+ DepositManager: HoodiDepositManagerArtifact as AbiArtifact,
137
+ LiqEthToken: HoodiLiqEthArtifact as AbiArtifact,
138
+ StakingModule: HoodiStakingModuleArtifact as AbiArtifact,
139
+ WithdrawalQueue: HoodiWithdrawalQueueArtifact as AbiArtifact,
140
+ WithdrawalVault: HoodiWithdrawalVaultArtifact as AbiArtifact,
141
+ BeaconState: HoodiBeaconStateArtifact as AbiArtifact,
142
+ YieldOracle: HoodiYieldOracleArtifact as AbiArtifact,
143
+ Depositor: HoodiDepositorArtifact as AbiArtifact,
144
+ ReceiptNFT: HoodiReceiptNFTArtifact as AbiArtifact,
145
+ OutpostManager: HoodiOutpostManagerArtifact as AbiArtifact,
146
+ BAR: HoodiBARArtifact as AbiArtifact,
147
+ OPP: HoodiOPPArtifact as AbiArtifact,
148
+ OPPCommon: HoodiOPPCommonArtifact as AbiArtifact,
149
+ OPPInbound: HoodiOPPInboundArtifact as AbiArtifact,
150
+ Pretoken: HoodiPretokenArtifact as AbiArtifact,
151
+ EthUsdPriceConsumer: HoodiEthUsdPriceConsumerArtifact as AbiArtifact,
152
+ Pool: HoodiPoolArtifact as AbiArtifact,
153
+ OutpostManagerAuthority: HoodiOutpostManagerAuthorityArtifact as AbiArtifact,
154
+ iodata: HoodiIodataArtifact as AbiArtifact,
155
+ Base58: HoodiBase58Artifact as AbiArtifact,
156
+ sysio_merkle: HoodiSysioMerkleArtifact as AbiArtifact,
157
+ sysio_write: HoodiSysioWriteArtifact as AbiArtifact,
158
+ ERC20: HoodiERC20Artifact as AbiArtifact,
159
+ ERC721: HoodiERC721Artifact as AbiArtifact,
160
+ ERC1155: HoodiERC1155Artifact as AbiArtifact,
161
+ };
31
162
 
32
163
  // -----------------------------------------------------------------------------
33
- // Address book
164
+ // Address books (per-chain)
34
165
  // -----------------------------------------------------------------------------
35
166
 
36
- // Make sure ContractName in ./types includes all of these keys.
37
- export const ADDRESSES: AddressBook = {
38
- Accounting: "0xd51CC479c25dc7Cd23f568Ef5c1AdE1671a4D15b",
39
- DepositManager: "0x2249D309f086363ABF5057Ae7f8057279162786B",
40
- LiqEth: "0xd5bd3DC2fD86e917A46f7571708aBB88CbfCc197",
41
- LiqEthMint: "0xdBAa1539eB7b80C29d825FCda76c0d7F8F0E6cFB",
42
- LiqEthBurn: "0x02e0A02fE2311FAd661677B7117FDdc801c1216b",
43
- StakingModule: "0x87047291c3b0D55A551C97B9194A02E1D84e06A9",
44
- WithdrawalQueue: "0x7781368720294fE0bB6D97F14fE2E9275fFED071",
45
- WithdrawalVault: "0x24457626938d4132556005ecA4d9e6F24F85297E",
167
+ /**
168
+ * MAINNET LATEST
169
+ * 1/23/26
170
+ */
171
+ export const MAINNET_ADDRESSES: AddressBook = {
172
+ // LiqETH contracts
173
+ LiqEthAuthority: '0xB8fb7dBA2de501c94EAB723fa48679f698a39Aa4',
174
+ BeaconState: '0x29719E8e76C52F5fD4888DF401579859c305f2DF',
175
+ WithdrawalQueue: '0xce388339bFDAed9cAF536ea7b4F42123b4D755d4',
176
+ LiqEthToken: '0x2C0e75e930Fc72ceD0725854C5E7A55566333F3f',
177
+ Accounting: '0xE31C44d04c7B055afAC9301F55840f030eaF04BC',
178
+ DepositManager: '0x21b339ED55A0f037f91B88044C808CcfCCBbF9A8',
179
+ WithdrawalVault: '0x028743bE7E727aA331A1e952575cb00623B95fE2',
180
+ StakingModule: '0xDe9754Fb58CcD4D74e94DA5682192E4e6eC334b0',
181
+ // YieldOracle: '0x7B7B8894e75b44B6cA7Dc8bE6dED5059621907b2',
182
+
183
+ // Outpost contracts
184
+ OutpostManagerAuthority: '0xeaE32b94c0F858b3600861aAE4Caeee6B6341751',
185
+ iodata: '0x485Ed153c45189d623Bb37816eD3016A56552273',
186
+ Base58: '0x8bB3856EC1114B1cE45a78620CF174D90a1Fd4e7',
187
+ sysio_merkle: '0x5180a926D71c6d94c5c939Fe7Fed14cD7dcAa541',
188
+ ReceiptNFT: '0x651De616A20b17De1095f9A0694A0e0E68025b78',
189
+ EthUsdPriceConsumer: '0x2d866f8DB6F6c94997b0027Ba24bc64a03627ddc',
190
+ Pool: '0xDA268Adcb90c422C2102A5f713182A42A8b9EA0D',
191
+ OutpostManager: '0x9f279804Cb8539c53709AA37a4C1b30A52A85175',
192
+ sysio_write: '0x3F8c880efd2c8C3aA1f0CE40b886cc6913eEC1d3',
193
+ Pretoken: '0xCabF19Fdb7cD063738dd63a418702Ee3642FFc68',
194
+ BAR: '0x2D8f4D4435509d7b8F93C3Ba93D45447C892f7ED',
195
+ OPPCommon: '0x1716EEC9f1E0c1aF7BbbA8Fed10652138914f766',
196
+ OPP: '0x5e1135cF8987268a3e7F68551558Ae92c454429f',
197
+ Depositor: '0xf4b4ccfD684feB46504D77232FBde23b23d4F774',
198
+ OPPInbound: '0x088484d45fF93AFabC63810FB0b335792E2B24f3',
199
+
200
+ // MockAggregator is not deployed on mainnet; keep as zero-address placeholder
201
+ // MockAggregator: '0x0000000000000000000000000000000000000000',
46
202
  };
47
203
 
48
- export type Contracts<T extends string = ContractName> = Record<T, ContractConfig>;
204
+ /**
205
+ * ---HOODI TESTNET LATEST
206
+ * ---3/25/26
207
+ *
208
+ * TEMPORARILY LOCAL ETH WIRE DEVNET ADDRESSES
209
+ * 4/10/26
210
+ *
211
+ */
212
+ export const HOODI_ADDRESSES: AddressBook = {
213
+ // LiqETH contracts
214
+ // LiqEthAuthority: '0x3Eb66Bb91F7a022FbABc1619Cb6acce7025Bc41F',
215
+ // BeaconState: '0x08F879c6D0964E0A17bF688Af23168f654DF372e',
216
+ // WithdrawalQueue: '0x74aDeD940369baDDb0F36426F23B08499e45Fe18',
217
+ // LiqEthToken: '0x8C974517D038e2e3b8a1da7b1A026bC8132A4b2e',
218
+ // Accounting: '0x766CE996B8132b927988c5b2ECAE8108fB1a9307',
219
+ // DepositManager: '0xEd391dB5DB11B5eDBE08e69A51D16e84293C09a3',
220
+ // WithdrawalVault: '0xbaBc0D5997283ab9886696A0dEaB8A8093436b48',
221
+ // StakingModule: '0x4998fBb6Ca5Ee3Db6c339e2962A34791Af643fEa',
222
+ // // YieldOracle: '0x61Fe311C57dd9a38Fb7B0c5A8ec521452dB25378',
49
223
 
50
- export type ContractConfig = {
51
- address: string;
52
- abi: JsonFragment[];
224
+ // // Outpost contracts
225
+ // OutpostManagerAuthority: '0x3B8705Ba1195AF632b3bd9E46F19348BC828FA3D',
226
+ // iodata: '0x4aCABbC74a1cA9B0058d9ADAa0E00Af0f4f73212',
227
+ // Base58: '0x1241F36ff30065deD52d51f0d6524EF971259A12',
228
+ // sysio_merkle: '0x58ca9b5515266Fd6bF94D5F1268C505b2eC9679c',
229
+ // ReceiptNFT: '0x03d6bD46cA9F54B8F8bbA21CfAfe717b36cB8593',
230
+ // EthUsdPriceConsumer: '0xdC2DD993A13b3DD6D255B52285625694bd967c9A',
231
+ // Pool: '0xd4742757AA61B1Fd3Fcd87980D7D460B12Cd9275',
232
+ // OutpostManager: '0x38ec2B56cBCeCaFFe28b535517de1a102C3D74E3',
233
+ // sysio_write: '0x0Ec4C1BaB772958aa3Db27459643bfbE7d92E305',
234
+ // Pretoken: '0x8c97a51A71640fa411DEfab8feC3401eFfd1a2E4',
235
+ // BAR: '0xbAFac13ffd3Aa9aEabaaeb6e4C2cF3dFf3479DC0',
236
+ // OPPCommon: '0x12283a6d4E6cE4A0e8AdB319Fc161c7F4f91EA8F',
237
+ // OPP: '0x87CE3Fe2CDca39C04aa2c14bbF1E1d9DB6358C4A',
238
+ // Depositor: '0x5351B30EA4b75bD9be9Fc0048e88F675f7b3Ac2b',
239
+ // OPPInbound: '0x0B1f7FB1c7f01A9cf490a1387E1E100F2bEA6C6d',
240
+
241
+ // Test-only mock aggregator
242
+ // MockAggregator: '0xFCfc3ddd4CBd9Ad3b3af3A374B8bdA1b66eE6FFF',
243
+
244
+ // TEMPORARY WIRE ETH DEVNET ADDRESSES - 4/10/26
245
+ // LiqETH contracts
246
+ LiqEthAuthority: '0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512',
247
+ BeaconState: '0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9',
248
+ WithdrawalQueue: '0x5FC8d32690cc91D4c39d9d3abcBD16989F875707',
249
+ LiqEthToken: '0xa513E6E4b8f2a923D98304ec87F64353C4D5C853',
250
+ Accounting: '0x8A791620dd6260079BF849Dc5567aDC3F2FdC318',
251
+ DepositManager: '0xB7f8BC63BbcaD18155201308C8f3540b07f84F5e',
252
+ WithdrawalVault: '0x0DCd1Bf9A1b36cE34237eEaFef220932846BCD82',
253
+ StakingModule: '0x0B306BF915C4d645ff596e518fAf3F9669b97016',
254
+ // YieldOracle: '0x9A9f2CCfdE556A7E9Ff0848998Aa4a0CFD8863AE',
255
+
256
+ // Outpost contracts
257
+ OutpostManagerAuthority: '0x202CCe504e04bEd6fC0521238dDf04Bc9E8E15aB',
258
+ iodata: '0x4aCABbC74a1cA9B0058d9ADAa0E00Af0f4f73212',
259
+ Base58: '0x1241F36ff30065deD52d51f0d6524EF971259A12',
260
+ sysio_merkle: '0x172076E0166D1F9Cc711C77Adf8488051744980C',
261
+ ReceiptNFT: '0x2B0d36FACD61B71CC05ab8F3D2355ec3631C0dd5',
262
+ EthUsdPriceConsumer: '0x5c74c94173F05dA1720953407cbb920F3DF9f887',
263
+ Pool: '0x1c85638e118b37167e9298c2268758e058DdfDA0',
264
+ OutpostManager: '0xA4899D35897033b927acFCf422bc745916139776',
265
+ sysio_write: '0x0Ec4C1BaB772958aa3Db27459643bfbE7d92E305',
266
+ Pretoken: '0xe8D2A1E88c91DCd5433208d4152Cc4F399a7e91d',
267
+ BAR: '0x4631BCAbD6dF18D94796344963cB60d44a4136b6',
268
+ OPPCommon: '0xf4B146FbA71F41E0592668ffbF264F1D186b2Ca8',
269
+ OPP: '0xBEc49fA140aCaA83533fB00A2BB19bDdd0290f25',
270
+ Depositor: '0x18E317A7D70d8fBf8e6E893616b52390EbBdb629',
271
+ OPPInbound: '0xAA292E8611aDF267e563f334Ee42320aC96D0463',
272
+
273
+ // MockDepositContract: '0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0',
274
+ // LiqEthBridge: '0x7A9Ec1d04904907De0ED7b6839CcdD59c3716AC9', internal
275
+ // WireYieldHubAttestations: '0x367761085BF3C12e5DA2Df99AC6E1a824612b8fb', internal
276
+
277
+ // Test-only mock aggregator
278
+ // MockAggregator: '0xFCfc3ddd4CBd9Ad3b3af3A374B8bdA1b66eE6FFF',
53
279
  };
54
280
 
281
+ export const ADDRESS_BOOK_BY_CHAIN: Record<SupportedEvmChainID, AddressBook> = {
282
+ [EvmChainID.Ethereum]: MAINNET_ADDRESSES,
283
+ [EvmChainID.Hoodi]: HOODI_ADDRESSES,
284
+ [31337]: HOODI_ADDRESSES,
285
+ };
286
+
287
+ // Old name kept as a mainnet default (optional convenience)
288
+ export const ADDRESSES: AddressBook = MAINNET_ADDRESSES;
289
+
55
290
  // -----------------------------------------------------------------------------
56
291
  // Contract config
57
292
  // -----------------------------------------------------------------------------
58
293
 
59
- export const CONTRACTS: Contracts<ContractName> = {
60
- Accounting: {
61
- address: ADDRESSES.Accounting,
62
- abi: AccountingArtifact.abi as JsonFragment[],
63
- },
64
- LiqEth: {
65
- address: ADDRESSES.LiqEth,
66
- abi: LiqEthArtifact.abi as JsonFragment[],
67
- },
68
- DepositManager: {
69
- address: ADDRESSES.DepositManager,
70
- abi: DepositManagerArtifact.abi as JsonFragment[],
71
- },
72
- LiqEthMint: {
73
- address: ADDRESSES.LiqEthMint,
74
- abi: LiqEthMintArtifact.abi as JsonFragment[],
75
- },
76
- LiqEthBurn: {
77
- address: ADDRESSES.LiqEthBurn,
78
- abi: LiqEthBurnArtifact.abi as JsonFragment[],
79
- },
80
- // RewardsERC20: {
81
- // address: ADDRESSES.RewardsERC20,
82
- // abi: RewardsERC20Artifact.abi as JsonFragment[],
83
- // },
84
- StakingModule: {
85
- address: ADDRESSES.StakingModule,
86
- abi: StakingModuleArtifact.abi as JsonFragment[],
87
- },
88
- // ValidatorBalance: {
89
- // address: ADDRESSES.ValidatorBalance,
90
- // abi: ValidatorBalanceArtifact.abi as JsonFragment[],
91
- // },
92
- WithdrawalQueue: {
93
- address: ADDRESSES.WithdrawalQueue,
94
- abi: WithdrawalQueueArtifact.abi as JsonFragment[],
95
- },
96
- WithdrawalVault: {
97
- address: ADDRESSES.WithdrawalVault,
98
- abi: WithdrawalVaultArtifact.abi as JsonFragment[],
99
- },
100
- // Yield: {
101
- // address: ADDRESSES.Yield,
102
- // abi: YieldArtifact.abi as JsonFragment[],
103
- // },
294
+ export type ContractConfig = {
295
+ address: string;
296
+ abi: JsonFragment[];
104
297
  };
105
298
 
299
+ export type Contracts<T extends string = ContractName> = Record<T, ContractConfig>;
300
+
301
+ function buildContracts(addresses: AddressBook, artifacts: ArtifactBundle): Contracts<ContractName> {
302
+ return {
303
+ // LiqETH Contracts
304
+ LiqEthAuthority: {
305
+ address: addresses.LiqEthAuthority,
306
+ abi: artifacts.LiqEthToken.abi as JsonFragment[],
307
+ },
308
+ BeaconState: {
309
+ address: addresses.BeaconState,
310
+ abi: artifacts.BeaconState.abi as JsonFragment[],
311
+ },
312
+ WithdrawalQueue: {
313
+ address: addresses.WithdrawalQueue,
314
+ abi: artifacts.WithdrawalQueue.abi as JsonFragment[],
315
+ },
316
+ LiqEthToken: {
317
+ address: addresses.LiqEthToken,
318
+ abi: artifacts.LiqEthToken.abi as JsonFragment[],
319
+ },
320
+ Accounting: {
321
+ address: addresses.Accounting,
322
+ abi: artifacts.Accounting.abi as JsonFragment[],
323
+ },
324
+ DepositManager: {
325
+ address: addresses.DepositManager,
326
+ abi: artifacts.DepositManager.abi as JsonFragment[],
327
+ },
328
+ WithdrawalVault: {
329
+ address: addresses.WithdrawalVault,
330
+ abi: artifacts.WithdrawalVault.abi as JsonFragment[],
331
+ },
332
+ StakingModule: {
333
+ address: addresses.StakingModule,
334
+ abi: artifacts.StakingModule.abi as JsonFragment[],
335
+ },
336
+ // YieldOracle: {
337
+ // address: addresses.YieldOracle,
338
+ // abi: artifacts.YieldOracle.abi as JsonFragment[],
339
+ // },
340
+
341
+ // Outpost Contracts
342
+ OutpostManagerAuthority: {
343
+ address: addresses.OutpostManagerAuthority,
344
+ abi: artifacts.OutpostManagerAuthority.abi as JsonFragment[],
345
+ },
346
+ iodata: {
347
+ address: addresses.iodata,
348
+ abi: artifacts.iodata.abi as JsonFragment[],
349
+ },
350
+ Base58: {
351
+ address: addresses.Base58,
352
+ abi: artifacts.Base58.abi as JsonFragment[],
353
+ },
354
+ sysio_merkle: {
355
+ address: addresses.sysio_merkle,
356
+ abi: artifacts.sysio_merkle.abi as JsonFragment[],
357
+ },
358
+ ReceiptNFT: {
359
+ address: addresses.ReceiptNFT,
360
+ abi: artifacts.ReceiptNFT.abi as JsonFragment[],
361
+ },
362
+ Pool: {
363
+ address: addresses.Pool,
364
+ abi: artifacts.Pool.abi as JsonFragment[],
365
+ },
366
+ OutpostManager: {
367
+ address: addresses.OutpostManager,
368
+ abi: artifacts.OutpostManager.abi as JsonFragment[],
369
+ },
370
+ sysio_write: {
371
+ address: addresses.sysio_write,
372
+ abi: artifacts.sysio_write.abi as JsonFragment[],
373
+ },
374
+ EthUsdPriceConsumer: {
375
+ address: addresses.EthUsdPriceConsumer,
376
+ abi: artifacts.EthUsdPriceConsumer.abi as JsonFragment[],
377
+ },
378
+ BAR: {
379
+ address: addresses.BAR,
380
+ abi: artifacts.BAR.abi as JsonFragment[],
381
+ },
382
+ OPPCommon: {
383
+ address: addresses.OPPCommon,
384
+ abi: artifacts.OPPCommon.abi as JsonFragment[],
385
+ },
386
+ OPP: {
387
+ address: addresses.OPP,
388
+ abi: artifacts.OPP.abi as JsonFragment[],
389
+ },
390
+ Pretoken: {
391
+ address: addresses.Pretoken,
392
+ abi: artifacts.Pretoken.abi as JsonFragment[],
393
+ },
394
+ OPPInbound: {
395
+ address: addresses.OPPInbound,
396
+ abi: artifacts.OPPInbound.abi as JsonFragment[],
397
+ },
398
+ Depositor: {
399
+ address: addresses.Depositor,
400
+ abi: artifacts.Depositor.abi as JsonFragment[],
401
+ },
402
+
403
+ // MockAggregator: {
404
+ // address: addresses.MockAggregator,
405
+ // abi: artifacts.Aggregator.abi as JsonFragment[],
406
+ // },
407
+ };
408
+ }
409
+
410
+ export const CONTRACTS_BY_CHAIN: Record<SupportedEvmChainID, Contracts<ContractName>> = {
411
+ [EvmChainID.Ethereum]: buildContracts(MAINNET_ADDRESSES, MAINNET_ARTIFACTS),
412
+ [EvmChainID.Hoodi]: buildContracts(HOODI_ADDRESSES, HOODI_ARTIFACTS),
413
+ };
414
+
415
+ // -----------------------------------------------------------------------------
416
+ // Service
417
+ // -----------------------------------------------------------------------------
418
+
106
419
  export interface ContractOptions {
420
+ /** EVM chain id to select the correct address/contract set */
421
+ chainId: EvmChainID;
107
422
  /** RPC endpoint or injected EIP-1193 provider */
108
423
  provider?: ethers.providers.Provider;
109
424
  /** Only required if you need to send txns */
110
425
  signer?: Signer;
111
426
  }
112
427
 
428
+ const ARTIFACTS_BY_CHAIN: Record<SupportedEvmChainID, ArtifactBundle> = {
429
+ [EvmChainID.Ethereum]: MAINNET_ARTIFACTS,
430
+ [EvmChainID.Hoodi]: HOODI_ARTIFACTS,
431
+ };
432
+
113
433
  export class EthereumContractService {
114
434
  private provider?: providers.Provider;
115
435
  private signer?: Signer;
436
+ private readonly chainId: EvmChainID;
437
+ private readonly contractsConfig: Contracts<ContractName>;
116
438
 
117
439
  public readonly contract: { [N in ContractName]: ethers.Contract } = {} as any;
118
440
  public readonly iface: { [N in ContractName]: ethers.utils.Interface } = {} as any;
@@ -120,33 +442,40 @@ export class EthereumContractService {
120
442
  constructor(opts: ContractOptions) {
121
443
  this.provider = opts.provider;
122
444
  this.signer = opts.signer;
445
+ this.chainId = opts.chainId;
446
+
447
+ const contracts = CONTRACTS_BY_CHAIN[this.chainId];
448
+ if (!contracts) {
449
+ throw new Error(`Unsupported EVM chainId=${this.chainId}`);
450
+ }
451
+ this.contractsConfig = contracts;
123
452
 
124
- (Object.keys(CONTRACTS) as ContractName[]).forEach((name) => {
125
- const { address, abi } = CONTRACTS[name];
453
+ (Object.keys(contracts) as ContractName[]).forEach((name) => {
454
+ const { address, abi } = contracts[name];
126
455
  this.iface[name] = new ethers.utils.Interface(abi);
127
456
  this.contract[name] = new ethers.Contract(
128
457
  address,
129
458
  abi,
130
- this.signer ?? this.provider
459
+ this.signer ?? this.provider,
131
460
  );
132
461
  });
133
462
  }
134
463
 
135
464
  /** Get raw address for a contract */
136
465
  public getAddress(name: ContractName): string {
137
- return CONTRACTS[name].address;
466
+ return this.contractsConfig[name].address;
138
467
  }
139
468
 
140
469
  /** Utility: get a read-only handle even if signer is present */
141
470
  public getReadOnly(name: ContractName): Contract {
142
- const { address, abi } = CONTRACTS[name];
471
+ const { address, abi } = this.contractsConfig[name];
143
472
  return new Contract(address, abi, this.provider);
144
473
  }
145
474
 
146
475
  /** Utility: get a write-enabled handle (throws if no signer) */
147
476
  public getWrite(name: ContractName): Contract {
148
477
  if (!this.signer) throw new Error('No signer available for write calls');
149
- const { address, abi } = CONTRACTS[name];
478
+ const { address, abi } = this.contractsConfig[name];
150
479
  return new Contract(address, abi, this.signer);
151
480
  }
152
481
 
@@ -155,9 +484,9 @@ export class EthereumContractService {
155
484
  return this.provider?.getNetwork();
156
485
  }
157
486
 
158
- /** List all known contract names */
487
+ /** List all known contract names for this chain */
159
488
  public listContractNames(): ContractName[] {
160
- return Object.keys(CONTRACTS) as ContractName[];
489
+ return Object.keys(this.contractsConfig) as ContractName[];
161
490
  }
162
491
 
163
492
  /** Get Interface instance for a contract */
@@ -178,26 +507,10 @@ export class EthereumContractService {
178
507
  public get omniInterface(): ethers.utils.Interface {
179
508
  const all: any[] = [];
180
509
 
181
- const allArtifacts = [
182
- ERC20Artifact,
183
- ERC721Artifact,
184
- ERC1155Artifact,
185
-
186
- // liqETH suite
187
- AccountingArtifact,
188
- DepositManagerArtifact,
189
- LiqEthArtifact,
190
- LiqEthBurnArtifact,
191
- LiqEthMintArtifact,
192
- // RewardsERC20Artifact,
193
- StakingModuleArtifact,
194
- // ValidatorBalanceArtifact,
195
- WithdrawalQueueArtifact,
196
- WithdrawalVaultArtifact,
197
- // YieldArtifact,
198
- ];
199
-
200
- allArtifacts.forEach(artifact => {
510
+ const artifacts : ArtifactBundle = ARTIFACTS_BY_CHAIN[this.chainId];
511
+ const allArtifacts = Object.values(artifacts);
512
+
513
+ allArtifacts.forEach((artifact) => {
201
514
  if (artifact && artifact.abi) {
202
515
  all.push(...artifact.abi);
203
516
  }
@@ -208,7 +521,9 @@ export class EthereumContractService {
208
521
  for (const item of all) {
209
522
  try {
210
523
  const frag = ethers.utils.Fragment.from(item);
211
- const key = `${frag.type}:${frag.format(ethers.utils.FormatTypes.full)}`.toLowerCase();
524
+ const key = `${frag.type}:${frag.format(
525
+ ethers.utils.FormatTypes.full,
526
+ )}`.toLowerCase();
212
527
  if (!seen.has(key)) {
213
528
  seen.add(key);
214
529
  dedup.push(item);
@@ -229,4 +544,4 @@ export class EthereumContractService {
229
544
  throw new Error(`Unable to parse error data: ${revertData}`);
230
545
  }
231
546
  }
232
- }
547
+ }