@wireio/stake 0.5.2 → 0.6.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 (587) hide show
  1. package/README.md +185 -243
  2. package/lib/stake.browser.js +44268 -8685
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +11351 -1479
  5. package/lib/stake.js +44729 -9066
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +44268 -8685
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +4 -3
  10. package/src/assets/ethereum/hoodi/WNS/BucketWNS.sol/BucketWNS.dbg.json +4 -0
  11. package/src/assets/ethereum/hoodi/WNS/BucketWNS.sol/BucketWNS.json +699 -0
  12. package/src/assets/ethereum/hoodi/WNS/Challenge.sol/Challenge.dbg.json +4 -0
  13. package/src/assets/ethereum/hoodi/WNS/Challenge.sol/Challenge.json +3139 -0
  14. package/src/assets/ethereum/hoodi/WNS/ChallengeLib.sol/ChallengeLib.dbg.json +4 -0
  15. package/src/assets/ethereum/hoodi/WNS/ChallengeLib.sol/ChallengeLib.json +106 -0
  16. package/src/assets/ethereum/hoodi/WNS/Errors.sol/WNSErrs.dbg.json +4 -0
  17. package/src/assets/ethereum/hoodi/WNS/Errors.sol/WNSErrs.json +180 -0
  18. package/src/assets/ethereum/hoodi/WNS/LiqWNS.sol/LiqWNS.dbg.json +4 -0
  19. package/src/assets/ethereum/hoodi/WNS/LiqWNS.sol/LiqWNS.json +470 -0
  20. package/src/assets/ethereum/hoodi/WNS/SChain.sol/SChain.dbg.json +4 -0
  21. package/src/assets/ethereum/hoodi/WNS/SChain.sol/SChain.json +1983 -0
  22. package/src/assets/ethereum/hoodi/WNS/UTXO.sol/UTXO.dbg.json +4 -0
  23. package/src/assets/ethereum/hoodi/WNS/UTXO.sol/UTXO.json +1231 -0
  24. package/src/assets/ethereum/hoodi/WNS/UTXOio.sol/UTXOio.dbg.json +4 -0
  25. package/src/assets/ethereum/hoodi/WNS/UTXOio.sol/UTXOio.json +1524 -0
  26. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IBucketWNS.dbg.json +4 -0
  27. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IBucketWNS.json +119 -0
  28. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IChallenge.dbg.json +4 -0
  29. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IChallenge.json +374 -0
  30. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/ISChain.dbg.json +4 -0
  31. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/ISChain.json +865 -0
  32. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IUTXO.dbg.json +4 -0
  33. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/IUTXO.json +524 -0
  34. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/WNSCommon.dbg.json +4 -0
  35. package/src/assets/ethereum/hoodi/WNS/WNSCommon.sol/WNSCommon.json +10 -0
  36. package/src/assets/ethereum/hoodi/WNS/WithdrawBatch.sol/WithdrawBatch.dbg.json +4 -0
  37. package/src/assets/ethereum/hoodi/WNS/WithdrawBatch.sol/WithdrawBatch.json +1232 -0
  38. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.dbg.json +4 -0
  39. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  40. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  41. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.dbg.json +4 -0
  42. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  43. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  44. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  45. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  46. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  47. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  48. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  49. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  50. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  51. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  52. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  53. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  54. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
  55. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  56. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  57. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
  58. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  59. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  60. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  61. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  62. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  63. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  64. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  65. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  66. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IStakingModule.json +1 -1
  67. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  68. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  69. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  70. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/LiqEthCommon.json +2 -2
  71. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  72. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  73. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  74. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthManaged.sol/LiqEthManaged.json +2 -2
  75. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  76. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  77. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  78. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  79. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  80. package/src/assets/ethereum/{ABI → hoodi}/liqEth/Yield.sol/YieldOracle.json +2 -2
  81. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
  82. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.json +629 -0
  83. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  84. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  85. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  86. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
  87. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  88. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/DepositManager.sol/DepositManager.json +3 -3
  89. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  90. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IAccounting.json +1 -1
  91. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  92. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  93. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  94. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  95. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  96. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  97. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  98. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20.json +1 -1
  99. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  100. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20Pausable.json +1 -1
  101. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  102. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  103. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  104. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  105. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  106. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  107. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  108. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  109. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  110. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/RewardsERC20.sol/RewardsERC20Upgradeable.json +1 -1
  111. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  112. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +1 -1
  113. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  114. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +548 -0
  115. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  116. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  117. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  118. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  119. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  120. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +2 -2
  121. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  122. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/Uint64BE.json +2 -2
  123. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  124. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/WithdrawalVault.json +2 -2
  125. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.dbg.json +4 -0
  126. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.json +1111 -0
  127. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  128. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json +1590 -0
  129. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  130. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  131. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
  132. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
  133. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
  134. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
  135. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
  136. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
  137. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
  138. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.dbg.json +4 -0
  139. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.json +10 -0
  140. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
  141. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
  142. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.dbg.json +4 -0
  143. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.json +29 -0
  144. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
  145. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.json +1033 -0
  146. package/src/assets/ethereum/hoodi/outpost/MockAggregator.sol/MockAggregator.json +97 -0
  147. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
  148. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +1055 -0
  149. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  150. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +81 -0
  151. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  152. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  153. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
  154. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  155. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  156. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  157. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +41 -0
  158. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  159. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +287 -0
  160. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  161. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +294 -0
  162. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  163. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +415 -0
  164. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  165. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +399 -0
  166. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  167. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +245 -0
  168. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  169. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1204 -0
  170. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  171. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +312 -0
  172. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  173. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +324 -0
  174. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
  175. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.json +1068 -0
  176. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  177. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
  178. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  179. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  180. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  181. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json +751 -0
  182. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  183. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  184. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  185. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  186. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  187. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  188. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  189. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  190. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  191. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
  192. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.json +888 -0
  193. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.dbg.json +4 -0
  194. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.json +659 -0
  195. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
  196. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json +1393 -0
  197. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  198. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
  199. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
  200. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
  201. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
  202. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
  203. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
  204. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
  205. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
  206. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
  207. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
  208. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
  209. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
  210. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
  211. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
  212. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
  213. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
  214. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
  215. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
  216. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
  217. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
  218. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
  219. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
  220. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
  221. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
  222. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
  223. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  224. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  225. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  226. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  227. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  228. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  229. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  230. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
  231. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  232. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
  233. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.dbg.json +4 -0
  234. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.json +560 -0
  235. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.dbg.json +4 -0
  236. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.json +460 -0
  237. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.dbg.json +4 -0
  238. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.json +624 -0
  239. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.dbg.json +4 -0
  240. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.json +164 -0
  241. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  242. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  243. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  244. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  245. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.dbg.json +4 -0
  246. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.json +618 -0
  247. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  248. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.json +40 -0
  249. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  250. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.json +10 -0
  251. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  252. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.json +10 -0
  253. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  254. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  255. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  256. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.json +49 -0
  257. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  258. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  259. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  260. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.json +1458 -0
  261. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  262. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.json +1532 -0
  263. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  264. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.json +1525 -0
  265. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  266. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json +1076 -0
  267. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  268. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json +807 -0
  269. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  270. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
  271. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
  272. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
  273. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
  274. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
  275. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  276. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  277. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  278. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  279. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  280. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  281. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
  282. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
  283. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  284. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  285. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  286. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  287. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  288. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  289. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  290. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
  291. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  292. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  293. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  294. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  295. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  296. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  297. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  298. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  299. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  300. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  301. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  302. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  303. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  304. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  305. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
  306. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.json +89 -0
  307. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  308. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json +1376 -0
  309. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  310. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  311. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  312. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
  313. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  314. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  315. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  316. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  317. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  318. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  319. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  320. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  321. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  322. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  323. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  324. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  325. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  326. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  327. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  328. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  329. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  330. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  331. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  332. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  333. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  334. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  335. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  336. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
  337. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  338. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  339. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  340. package/src/assets/ethereum/{ABI/liqEth → mainnet/liqEth/v1}/accounting.sol/Accounting.json +3 -3
  341. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  342. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  343. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  344. package/src/assets/ethereum/{ABI/liqEth → mainnet/liqEth/v1}/stakingModule.sol/StakingModule.json +3 -3
  345. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  346. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  347. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  348. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  349. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  350. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  351. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.dbg.json +4 -0
  352. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json +1915 -0
  353. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
  354. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json +1845 -0
  355. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  356. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  357. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  358. package/src/assets/ethereum/{ABI → mainnet}/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +31 -29
  359. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.dbg.json +4 -0
  360. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  361. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  362. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  363. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  364. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  365. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  366. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  367. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  368. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  369. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  370. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  371. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  372. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  373. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  374. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  375. package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostErrors.sol/OutpostErrors.json +33 -18
  376. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  377. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
  378. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
  379. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  380. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  381. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  382. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  383. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  384. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  385. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.dbg.json +4 -0
  386. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json +943 -0
  387. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
  388. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json +1703 -0
  389. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  390. package/src/assets/ethereum/{ABI → mainnet}/outpost/ReceiptNFT.sol/ReceiptNFT.json +33 -18
  391. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  392. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  393. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  394. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  395. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  396. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  397. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  398. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  399. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
  400. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/BAR.sol/BAR.json +34 -19
  401. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
  402. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Depositor.sol/Depositor.json +34 -19
  403. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  404. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/OutpostManager.sol/OutpostManager.json +3 -3
  405. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
  406. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Pool.sol/Pool.json +34 -19
  407. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
  408. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Pretoken.sol/Pretoken.json +34 -19
  409. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  410. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  411. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  412. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json +330 -0
  413. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  414. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json +449 -0
  415. package/src/assets/solana/devnet/idl/liqsol_core.json +8566 -0
  416. package/src/assets/solana/{idl → devnet/idl}/liqsol_token.json +34 -0
  417. package/src/assets/solana/devnet/idl/transfer_hook.json +490 -0
  418. package/src/assets/solana/{idl → devnet/idl}/validator_leaderboard.json +15 -0
  419. package/src/assets/solana/devnet/types/liqsol_core.ts +8572 -0
  420. package/src/assets/solana/{types → devnet/types}/liqsol_token.ts +34 -0
  421. package/src/assets/solana/devnet/types/transfer_hook.ts +496 -0
  422. package/src/assets/solana/{types → devnet/types}/validator_leaderboard.ts +15 -0
  423. package/src/assets/solana/{idl → mainnet/idl}/liqsol_core.json +669 -420
  424. package/src/assets/solana/mainnet/idl/liqsol_token.json +217 -0
  425. package/src/assets/solana/mainnet/idl/transfer_hook.json +479 -0
  426. package/src/assets/solana/mainnet/idl/validator_leaderboard.json +574 -0
  427. package/src/assets/solana/{types → mainnet/types}/liqsol_core.ts +669 -420
  428. package/src/assets/solana/mainnet/types/liqsol_token.ts +223 -0
  429. package/src/assets/solana/mainnet/types/transfer_hook.ts +485 -0
  430. package/src/assets/solana/mainnet/types/validator_leaderboard.ts +580 -0
  431. package/src/assets/solana/realdevnet/idl/liqsol_core.json +7112 -0
  432. package/src/assets/solana/realdevnet/idl/liqsol_token.json +217 -0
  433. package/src/assets/solana/realdevnet/idl/transfer_hook.json +479 -0
  434. package/src/assets/solana/realdevnet/idl/validator_leaderboard.json +735 -0
  435. package/src/assets/solana/realdevnet/types/liqsol_core.ts +7118 -0
  436. package/src/assets/solana/realdevnet/types/liqsol_token.ts +223 -0
  437. package/src/assets/solana/realdevnet/types/transfer_hook.ts +485 -0
  438. package/src/assets/solana/realdevnet/types/validator_leaderboard.ts +741 -0
  439. package/src/index.ts +2 -2
  440. package/src/networks/ethereum/clients/convert.client.ts +35 -1
  441. package/src/networks/ethereum/clients/opp.client.ts +20 -21
  442. package/src/networks/ethereum/clients/receipt.client.ts +93 -23
  443. package/src/networks/ethereum/clients/stake.client.ts +192 -20
  444. package/src/networks/ethereum/clients/validator.client.ts +61 -0
  445. package/src/networks/ethereum/contract.ts +424 -205
  446. package/src/networks/ethereum/ethereum.ts +344 -132
  447. package/src/networks/ethereum/types.ts +41 -13
  448. package/src/networks/ethereum/utils.ts +103 -71
  449. package/src/networks/solana/clients/convert.client.ts +341 -0
  450. package/src/networks/solana/clients/distribution.client.ts +131 -24
  451. package/src/networks/solana/clients/leaderboard.client.ts +10 -13
  452. package/src/networks/solana/clients/outpost.client.ts +110 -78
  453. package/src/networks/solana/clients/token.client.ts +20 -15
  454. package/src/networks/solana/constants.ts +56 -285
  455. package/src/networks/solana/program.ts +446 -28
  456. package/src/networks/solana/solana.ts +816 -413
  457. package/src/networks/solana/types.ts +41 -15
  458. package/src/networks/solana/utils.ts +114 -335
  459. package/src/staker.ts +24 -3
  460. package/src/types.ts +94 -22
  461. package/src/assets/ethereum/ABI/common/Base58.sol/Base58.dbg.json +0 -4
  462. package/src/assets/ethereum/ABI/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +0 -4
  463. package/src/assets/ethereum/ABI/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +0 -4
  464. package/src/assets/ethereum/ABI/common/iodata.sol/iodata.dbg.json +0 -4
  465. package/src/assets/ethereum/ABI/common/iodata_util.sol/iodata_util.dbg.json +0 -4
  466. package/src/assets/ethereum/ABI/common/sysio_data.sol/sysio_data.dbg.json +0 -4
  467. package/src/assets/ethereum/ABI/common/sysio_errors.sol/sysio_errors.dbg.json +0 -4
  468. package/src/assets/ethereum/ABI/common/sysio_merkle.sol/sysio_merkle.dbg.json +0 -4
  469. package/src/assets/ethereum/ABI/common/sysio_name.sol/sysio_name.dbg.json +0 -4
  470. package/src/assets/ethereum/ABI/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +0 -4
  471. package/src/assets/ethereum/ABI/common/sysio_read.sol/sysio_read.dbg.json +0 -4
  472. package/src/assets/ethereum/ABI/common/sysio_tester.sol/SysioTester.dbg.json +0 -4
  473. package/src/assets/ethereum/ABI/common/sysio_verify.sol/sysio_verify.dbg.json +0 -4
  474. package/src/assets/ethereum/ABI/common/sysio_write.sol/sysio_write.dbg.json +0 -4
  475. package/src/assets/ethereum/ABI/liqEth/BeaconState.sol/BeaconState.dbg.json +0 -4
  476. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +0 -4
  477. package/src/assets/ethereum/ABI/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +0 -4
  478. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +0 -4
  479. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -4
  480. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -4
  481. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -4
  482. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -4
  483. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -4
  484. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -4
  485. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -4
  486. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -4
  487. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -4
  488. package/src/assets/ethereum/ABI/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +0 -4
  489. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +0 -4
  490. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +0 -4
  491. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +0 -4
  492. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +0 -4
  493. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +0 -4
  494. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +0 -1202
  495. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +0 -4
  496. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -4
  497. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -4
  498. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -4
  499. package/src/assets/ethereum/ABI/outpost/Aggregator.sol/Aggregator.json +0 -82
  500. package/src/assets/ethereum/ABI/outpost/BAR.sol/BAR.dbg.json +0 -4
  501. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.dbg.json +0 -4
  502. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +0 -4
  503. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +0 -4
  504. package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.dbg.json +0 -4
  505. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPP.dbg.json +0 -4
  506. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +0 -4
  507. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPInbound.dbg.json +0 -4
  508. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +0 -4
  509. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPSender.dbg.json +0 -4
  510. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/OPPCommon.dbg.json +0 -4
  511. package/src/assets/ethereum/ABI/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +0 -4
  512. package/src/assets/ethereum/ABI/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +0 -4
  513. package/src/assets/ethereum/ABI/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +0 -4
  514. package/src/assets/ethereum/ABI/outpost/OPPErrors.sol/OPPErrors.dbg.json +0 -4
  515. package/src/assets/ethereum/ABI/outpost/OPPInbound.sol/OPPInbound.dbg.json +0 -4
  516. package/src/assets/ethereum/ABI/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +0 -4
  517. package/src/assets/ethereum/ABI/outpost/OPPSender.sol/OPPSender.dbg.json +0 -4
  518. package/src/assets/ethereum/ABI/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +0 -4
  519. package/src/assets/ethereum/ABI/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +0 -4
  520. package/src/assets/ethereum/ABI/outpost/OutpostManager.sol/OutpostManager.dbg.json +0 -4
  521. package/src/assets/ethereum/ABI/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +0 -4
  522. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +0 -4
  523. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +0 -4
  524. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +0 -4
  525. package/src/assets/ethereum/ABI/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +0 -4
  526. package/src/assets/ethereum/ABI/outpost/Pool.sol/Pool.dbg.json +0 -4
  527. package/src/assets/ethereum/ABI/outpost/Pretoken.sol/Pretoken.dbg.json +0 -4
  528. package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +0 -4
  529. package/src/assets/ethereum/ABI/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +0 -4
  530. package/src/assets/ethereum/ABI/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +0 -4
  531. package/src/assets/ethereum/ABI/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +0 -4
  532. package/src/assets/ethereum/ABI/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +0 -4
  533. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -4
  534. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +0 -472
  535. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +0 -4
  536. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +0 -330
  537. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +0 -4
  538. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +0 -449
  539. package/src/assets/solana/idl/transfer_hook.json +0 -197
  540. package/src/assets/solana/types/transfer_hook.ts +0 -203
  541. package/src/networks/solana/clients/deposit.client.ts +0 -292
  542. /package/src/assets/ethereum/{ABI → hoodi}/common/Base58.sol/Base58.json +0 -0
  543. /package/src/assets/ethereum/{ABI → hoodi}/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +0 -0
  544. /package/src/assets/ethereum/{ABI → hoodi}/common/RestrictedCallers.sol/RestrictedCallers.json +0 -0
  545. /package/src/assets/ethereum/{ABI → hoodi}/common/iodata.sol/iodata.json +0 -0
  546. /package/src/assets/ethereum/{ABI → hoodi}/common/iodata_util.sol/iodata_util.json +0 -0
  547. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_data.sol/sysio_data.json +0 -0
  548. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_errors.sol/sysio_errors.json +0 -0
  549. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_merkle.sol/sysio_merkle.json +0 -0
  550. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_name.sol/sysio_name.json +0 -0
  551. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_pubkey.sol/sysio_pubkey.json +0 -0
  552. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_read.sol/sysio_read.json +0 -0
  553. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_tester.sol/SysioTester.json +0 -0
  554. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_verify.sol/sysio_verify.json +0 -0
  555. /package/src/assets/ethereum/{ABI → hoodi}/common/sysio_write.sol/sysio_write.json +0 -0
  556. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/BeaconState.sol/BeaconState.json +0 -0
  557. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +0 -0
  558. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
  559. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
  560. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
  561. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
  562. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
  563. /package/src/assets/ethereum/{ABI → hoodi}/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +0 -0
  564. /package/src/assets/ethereum/{ABI → hoodi}/outpost/OPPCommon.sol/IOPPEndpoint.json +0 -0
  565. /package/src/assets/ethereum/{ABI → hoodi}/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +0 -0
  566. /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IPretoken.sol/IPretoken.json +0 -0
  567. /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IWarrant.sol/IWarrant.json +0 -0
  568. /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +0 -0
  569. /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +0 -0
  570. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPP.sol/OPP.json +0 -0
  571. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPP.json +0 -0
  572. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPInbound.json +0 -0
  573. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPReceiver.json +0 -0
  574. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPSender.json +0 -0
  575. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/OPPCommon.json +0 -0
  576. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpoint.sol/OPPEndpoint.json +0 -0
  577. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +0 -0
  578. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +0 -0
  579. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPErrors.sol/OPPErrors.json +0 -0
  580. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPInbound.sol/OPPInbound.json +0 -0
  581. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPReceiver.sol/OPPReceiver.json +0 -0
  582. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPSender.sol/OPPSender.json +0 -0
  583. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManaged.sol/OutpostManaged.json +0 -0
  584. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +0 -0
  585. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/IOutpostManager.json +0 -0
  586. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +0 -0
  587. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostOwnable.sol/OutpostOwnable.json +0 -0
@@ -8,13 +8,14 @@ import {
8
8
  TrancheSnapshot
9
9
  } from '../../types';
10
10
  import { EthereumContractService } from './contract';
11
- import { preLaunchReceipt } from './types';
12
- import { buildEthereumTrancheSnapshot } from './utils';
11
+ import { preLaunchReceipt, WithdrawReceipt } from './types';
12
+ import { buildEthereumTrancheSnapshot, formatContractErrors } from './utils';
13
13
  import { ConvertClient } from './clients/convert.client';
14
14
  import { StakeClient } from './clients/stake.client';
15
15
  import { PretokenClient } from './clients/pretoken.client';
16
16
  import { OPPClient } from './clients/opp.client';
17
17
  import { ReceiptClient } from './clients/receipt.client';
18
+ import { ValidatorClient } from './clients/validator.client';
18
19
 
19
20
  export const INITIAL_TRANCHE_SUPPLY = 35000;
20
21
 
@@ -29,10 +30,11 @@ export class EthereumStakingClient implements IStakingClient {
29
30
  private stakeClient: StakeClient;
30
31
  private oppClient: OPPClient;
31
32
  private receiptClient: ReceiptClient;
32
-
33
+ private validatorClient: ValidatorClient;
33
34
 
34
35
  get contract() { return this.contractService.contract; }
35
36
  get network() { return this.config.network; }
37
+ get address() { return this.signer?.getAddress(); }
36
38
 
37
39
  constructor(private config: StakerConfig) {
38
40
  try {
@@ -48,6 +50,7 @@ export class EthereumStakingClient implements IStakingClient {
48
50
  this.contractService = new EthereumContractService({
49
51
  provider: this.provider,
50
52
  signer: this.signer,
53
+ chainId: config.network.chainId as EvmChainID,
51
54
  });
52
55
 
53
56
  this.convertClient = new ConvertClient(this.contractService);
@@ -55,6 +58,7 @@ export class EthereumStakingClient implements IStakingClient {
55
58
  this.stakeClient = new StakeClient(this.contractService);
56
59
  this.oppClient = new OPPClient(this.contractService);
57
60
  this.receiptClient = new ReceiptClient(this.contractService);
61
+ this.validatorClient = new ValidatorClient(this.contractService)
58
62
  }
59
63
  catch (error) {
60
64
  // console.error('Error initializing EthereumStakingClient:', error);
@@ -91,26 +95,51 @@ export class EthereumStakingClient implements IStakingClient {
91
95
  async withdraw(amount: bigint): Promise<string> {
92
96
  this.ensureUser();
93
97
 
94
- const address = await this.signer!.getAddress();
98
+ const address = await this.address!;
95
99
  const amountWei = BigNumber.from(amount);
96
100
 
97
101
  const result = await this.convertClient.performWithdraw(address, amountWei)
98
102
  return result.txHash;
99
103
  }
100
104
 
105
+ /**
106
+ * List withdrawal queue receipts for a wallet (pending / in-progress exits after safeBurn).
107
+ * @param address Owner to query; defaults to the connected wallet.
108
+ * @returns Withdrawal receipt NFT entries from the protocol view
109
+ */
110
+ async getPendingWithdraws(address?: string): Promise<WithdrawReceipt[]> {
111
+ this.ensureUser();
112
+ const owner = address ?? await this.address!;
113
+ return await this.receiptClient.fetchWithdrawReceipts(owner);
114
+ }
115
+
116
+ /**
117
+ * Claim native ETH for a matured withdrawal using the WithdrawalQueue NFT token id
118
+ * (via DepositManager.claim after the delay has passed).
119
+ * @param tokenId Withdrawal request / queue NFT token id
120
+ * @returns transaction hash
121
+ */
122
+ async claimWithdraw(tokenId: bigint): Promise<string> {
123
+ this.ensureUser();
124
+
125
+ const tokenIdBigNum = BigNumber.from(tokenId)
126
+ const result = await this.convertClient.claimWithdraw(tokenIdBigNum)
127
+ return result.txHash;
128
+ }
129
+
101
130
 
102
131
  /**
103
132
  * Stake liqETH via DepositManager.
104
133
  * @param amount Amount in wei - Keep this as a bigint / string in the caller; avoid JS floats.
105
134
  * @returns transaction hash
106
135
  */
107
- async stake(amount: bigint): Promise<string> {
136
+ async stake(amount: bigint, wireAccount?: string): Promise<string> {
108
137
  this.ensureUser();
109
138
 
110
- const walletAddress = await this.signer!.getAddress();
139
+ const walletAddress = await this.address!;
111
140
  const amountWei = BigNumber.from(amount);
112
141
 
113
- const result = await this.stakeClient.performStake(amountWei, walletAddress);
142
+ const result = await this.stakeClient.performStakeToWire(amountWei, walletAddress, wireAccount);
114
143
  return result.txHash;
115
144
  }
116
145
 
@@ -120,6 +149,57 @@ export class EthereumStakingClient implements IStakingClient {
120
149
  throw new Error("Method not yet implemented.");
121
150
  }
122
151
 
152
+ /**
153
+ * Deposit ETH to liqETH, then stake the liqETH.
154
+ * @param amountWei Amount in wei.
155
+ * @returns transaction hash
156
+ */
157
+ async depositAndStake(amount: bigint, wireAccount?: string): Promise<string> {
158
+ this.ensureUser();
159
+ if (!amount || amount <= BigInt(0))
160
+ throw new Error('Amount must be greater than zero.');
161
+
162
+
163
+ const walletAddress = await this.address!;
164
+ let amountWei = BigNumber.from(amount);
165
+
166
+
167
+ const result = await this.convertClient.performDeposit(amountWei);
168
+ console.log('result of performDeposit()', result);
169
+
170
+ const result2 = await this.stakeClient.performStakeToWire(amountWei, walletAddress, wireAccount);
171
+ console.log('result of performStakeToWire()', result2);
172
+
173
+ // const result = await this.stakeClient.performDepositAndStakeToWire(BigNumber.from(amountWei), wireAccount);
174
+ return result2.txHash;
175
+ }
176
+
177
+ /**
178
+ * Deposit ETH to liqETH, then purchase pretokens in a single transaction.
179
+ * @param amountWei Amount in wei.
180
+ * @returns transaction hash
181
+ */
182
+ async depositAndBuy(amountWei: bigint): Promise<string> {
183
+ this.ensureUser();
184
+ if (!amountWei || amountWei <= BigInt(0))
185
+ throw new Error('Amount must be greater than zero.');
186
+
187
+ const result = await this.stakeClient.performDepositAndPurchase(BigNumber.from(amountWei));
188
+ return result.txHash;
189
+ }
190
+
191
+ /**
192
+ * Unstake liqETH, then request a withdrawal in a single transaction.
193
+ * @param tokenId The ReceiptNFT token ID for the stake position
194
+ * @returns transaction hash
195
+ */
196
+ async unstakeAndWithdraw(tokenId: bigint): Promise<string> {
197
+ this.ensureUser();
198
+
199
+ const result = await this.stakeClient.performUnstakeAndRequestWithdraw(BigNumber.from(tokenId));
200
+ return result.txHash;
201
+ }
202
+
123
203
 
124
204
  /**
125
205
  * ETH Prelaunch function to unstake liqEth
@@ -139,16 +219,55 @@ export class EthereumStakingClient implements IStakingClient {
139
219
  async buy(amount: bigint): Promise<string> {
140
220
  this.ensureUser();
141
221
 
142
- const buyer = await this.signer!.getAddress();
143
-
144
- // ! Hoodi only - check if the mock aggregator price is stale, and if so, update it before submitting the buy request
145
- await this.updateMockAggregatorPrice();
222
+ const buyer = await this.address!;
146
223
 
147
224
  let result = await this.pretokenClient.purchasePretokensWithLiqETH(amount, buyer);
148
225
  return result && result.txHash ? result.txHash : "Error - no resulting txHash";
149
226
  }
150
227
 
151
228
 
229
+ /**
230
+ * Validator functions
231
+ */
232
+ async validatorDeposit(): Promise<string> {
233
+ this.ensureUser();
234
+
235
+ let result = await this.validatorClient.validatorDepositAndLockBond();
236
+ return result && result.txHash ? result.txHash : "Error - no resulting txHash";
237
+ }
238
+
239
+
240
+
241
+
242
+
243
+ // ! Testnet only - check if the mock aggregator price is stale, and if so, update it before submitting the buy request
244
+ // async crankTestnetAggregator(): Promise<string> {
245
+ // this.ensureUser();
246
+
247
+ // const network = await this.provider.getNetwork();
248
+ // const chainId = network.chainId;
249
+ // const allowedTestChains = new Set([560048, 31337]);
250
+ // if (!allowedTestChains.has(chainId)) return "Testnet crank is only intended for test/local networks - current chain is "+chainId+". Skipping aggregator update";
251
+
252
+ // const [agg, opp] = await Promise.allSettled([
253
+ // this.updateMockAggregatorPrice(),
254
+ // this.fixOppTooManyAttestations(),
255
+ // ]);
256
+
257
+ // const fmt = (name: string, r: PromiseSettledResult<unknown>) => {
258
+ // if (r.status === 'fulfilled') {
259
+ // const suffix = r.value !== undefined ? ` (${String(r.value)})` : '';
260
+ // return `${name}: ok${suffix}`;
261
+ // }
262
+ // return `${name}: failed (${String(r.reason)})`;
263
+ // };
264
+
265
+ // console.log('crankTestnetAggregator()', { agg, opp });
266
+ // return `${fmt('updateMockAggregatorPrice', agg)}; ${fmt('fixOppTooManyAttestations', opp)}`;
267
+ // }
268
+
269
+
270
+
152
271
  /**
153
272
  * Resolve the user's ETH + liqETH balances.
154
273
  *
@@ -156,101 +275,107 @@ export class EthereumStakingClient implements IStakingClient {
156
275
  * actual = liqETH token balance (ERC-20)
157
276
  * tracked = liqETH tracked balance (protocol/accounting view)
158
277
  */
159
- async getPortfolio(): Promise<Portfolio | null> {
160
- if (!this.signer) return Promise.resolve(null);
278
+ async getPortfolio(address?: string): Promise<Portfolio | null> {
161
279
 
162
- const walletAddress = await this.signer!.getAddress();
280
+ try {
281
+ if (!this.signer) return Promise.resolve(null);
163
282
 
164
- // 1) Native ETH balance
165
- const nativeBalance = await this.provider.getBalance(walletAddress);
166
- const nativeDecimals = this.network?.nativeCurrency?.decimals ?? 18;
167
- const nativeSymbol = this.network?.nativeCurrency?.symbol ?? 'ETH';
283
+ const walletAddress = address ?? await this.address!;
168
284
 
169
- // 2) liqETH ERC-20 balance (actual)
170
- const liqBalance: ethers.BigNumber = await this.contract.LiqEthToken.balanceOf(walletAddress);
171
- const liqSymbol = 'Liq' + (this.network?.nativeCurrency?.symbol ?? 'ETH');
285
+ // 1) Native ETH balance
286
+ const nativeBalance = await this.provider.getBalance(walletAddress);
287
+ const nativeDecimals = this.network?.nativeCurrency?.decimals ?? 18;
288
+ const nativeSymbol = this.network?.nativeCurrency?.symbol ?? 'ETH';
172
289
 
173
- // 3) staked liqEth ERC-20 balance (calculate from receipts)
174
- let stakeReceipts = await this.receiptClient.stakeReceipts(walletAddress);
175
- let stakeBalanceBN = BigNumber.from(0);
176
- for (let r of stakeReceipts) {
177
- stakeBalanceBN = stakeBalanceBN.add(BigNumber.from(r.receipt.principal.amount));
178
- }
179
- let stakeSharesBN = BigNumber.from(0);
180
- for (let r of stakeReceipts) {
181
- stakeSharesBN = stakeSharesBN.add(BigNumber.from(r.receipt.shares.amount));
182
- }
290
+ // 2) liqETH ERC-20 balance (actual)
291
+ const liqBalance: ethers.BigNumber = await this.contract.LiqEthToken.balanceOf(walletAddress);
292
+ const liqSymbol = 'Liq' + (this.network?.nativeCurrency?.symbol ?? 'ETH');
183
293
 
184
- // 4) WIRE pretoken balance
185
- const wireBalance: ethers.BigNumber = await this.contract.Pretoken.balanceOf(walletAddress);
294
+ // 3) staked liqEth ERC-20 balance (calculate from receipts)
295
+ let stakeReceipts = await this.receiptClient.stakeReceipts(walletAddress);
186
296
 
297
+ let stakeBalanceBN = BigNumber.from(0);
298
+ for (let r of stakeReceipts) {
299
+ stakeBalanceBN = stakeBalanceBN.add(BigNumber.from(r.receipt.principal.amount));
300
+ }
301
+ let stakeSharesBN = BigNumber.from(0);
302
+ for (let r of stakeReceipts) {
303
+ stakeSharesBN = stakeSharesBN.add(BigNumber.from(r.receipt.shares.amount));
304
+ }
187
305
 
188
- // 5) Calculate staking yield
189
- let currentIndex = BigInt(0);
190
- let totalShares = BigInt(0);
191
- let userShares = BigInt(0);
192
- const indexScale = BigInt(1e27);
193
- try {
194
- // These may throw if not implemented on contract
195
- const [indexBn, totalSharesBn] = await Promise.all([
196
- this.contract.Depositor.index().catch(() => BigNumber.from(0)),
197
- this.contract.Depositor.totalShares().catch(() => BigNumber.from(0)),
198
- ]);
306
+ // 4) WIRE pretoken balance
307
+ const wireBalance: ethers.BigNumber = await this.contract.Pretoken.balanceOf(walletAddress);
199
308
 
200
- const userSharesBn = stakeSharesBN;
201
- currentIndex = BigInt(indexBn.toString());
202
- totalShares = BigInt(totalSharesBn.toString());
203
- userShares = BigInt(userSharesBn.toString());
204
- } catch { }
205
-
206
- // sharesToTokens(userShares, currentIndex) = userShares * currentIndex / indexScale
207
- let estimatedClaim = BigInt(0);
208
- let estimatedYield = BigInt(0);
209
-
210
- // started work on estimating the user's personal APY - not necessary at the moment
211
- // let estimatedAPY: number | null = null;
212
- // if (userShares > BigInt(0) && currentIndex > BigInt(0)) {
213
- // estimatedClaim = (userShares * currentIndex) / indexScale;
214
- // if (estimatedClaim > stakeBalanceBN.toBigInt()) {
215
- // estimatedYield = estimatedClaim - stakeBalanceBN.toBigInt();
216
- // }
217
-
218
- // estimatedAPY = null;
219
- // }
220
-
221
- const portfolio: Portfolio = {
222
- native: {
223
- amount: nativeBalance.toBigInt(),
224
- decimals: nativeDecimals,
225
- symbol: nativeSymbol,
226
- },
227
- liq: {
228
- amount: liqBalance.toBigInt(),
229
- decimals: nativeDecimals,
230
- symbol: liqSymbol,
231
- },
232
- staked: {
233
- amount: stakeBalanceBN.toBigInt(),
234
- decimals: nativeDecimals,
235
- symbol: liqSymbol,
236
- },
237
- wire: {
238
- amount: wireBalance.toBigInt(),
239
- decimals: 18,
240
- symbol: '$WIRE',
241
- },
242
-
243
- yield: {
244
- currentIndex,
245
- indexScale,
246
- totalShares,
247
- userShares,
248
- estimatedClaim,
249
- estimatedYield,
250
- },
251
- chainID: this.network.chainId
309
+ // 5) Calculate staking yield
310
+ let currentIndex = BigInt(0);
311
+ let totalShares = BigInt(0);
312
+ let userShares = BigInt(0);
313
+ const indexScale = BigInt(1e27);
314
+ try {
315
+ // These may throw if not implemented on contract
316
+ const [indexBn, totalSharesBn] = await Promise.all([
317
+ this.contract.Depositor.index().catch(() => BigNumber.from(0)),
318
+ this.contract.Depositor.totalShares().catch(() => BigNumber.from(0)),
319
+ ]);
320
+
321
+ const userSharesBn = stakeSharesBN;
322
+ currentIndex = BigInt(indexBn.toString());
323
+ totalShares = BigInt(totalSharesBn.toString());
324
+ userShares = BigInt(userSharesBn.toString());
325
+ } catch (error) {
326
+ console.log('Error fetching staking index/shares:', error);
327
+ }
328
+
329
+ // sharesToTokens(userShares, currentIndex) = userShares * currentIndex / indexScale
330
+ let estimatedClaim = BigInt(0);
331
+ let estimatedYield = BigInt(0);
332
+
333
+ if (userShares > BigInt(0) && currentIndex > BigInt(0)) {
334
+ estimatedClaim = (userShares * currentIndex) / indexScale;
335
+ if (estimatedClaim > stakeBalanceBN.toBigInt()) {
336
+ estimatedYield = estimatedClaim - stakeBalanceBN.toBigInt();
337
+ }
338
+ }
339
+
340
+
341
+ const portfolio: Portfolio = {
342
+ native: {
343
+ amount: nativeBalance.toBigInt(),
344
+ decimals: nativeDecimals,
345
+ symbol: nativeSymbol,
346
+ },
347
+ liq: {
348
+ amount: liqBalance.toBigInt(),
349
+ decimals: nativeDecimals,
350
+ symbol: liqSymbol,
351
+ },
352
+ staked: {
353
+ amount: stakeBalanceBN.toBigInt(),
354
+ decimals: nativeDecimals,
355
+ symbol: liqSymbol,
356
+ },
357
+ wire: {
358
+ amount: wireBalance.toBigInt(),
359
+ decimals: 18,
360
+ symbol: '$WIRE',
361
+ },
362
+
363
+ yield: {
364
+ currentIndex,
365
+ indexScale,
366
+ totalShares,
367
+ userShares,
368
+ estimatedClaim,
369
+ estimatedYield,
370
+ },
371
+ chainID: this.network.chainId
372
+ }
373
+ return portfolio;
374
+ }
375
+ catch (error) {
376
+ // console.log('Error fetching Ethereum portfolio:', error);
377
+ throw error;
252
378
  }
253
- return portfolio;
254
379
  }
255
380
 
256
381
  /**
@@ -261,7 +386,7 @@ export class EthereumStakingClient implements IStakingClient {
261
386
  async fetchPrelaunchReceipts(address?: string): Promise<preLaunchReceipt[]> {
262
387
  this.ensureUser();
263
388
 
264
- if (address === undefined) address = await this.signer!.getAddress();
389
+ if (address === undefined) address = await this.address!;
265
390
 
266
391
  //default to stake receipts
267
392
  return await this.receiptClient.stakeReceipts(address);
@@ -270,11 +395,13 @@ export class EthereumStakingClient implements IStakingClient {
270
395
  async getOPPMessages(address?: string): Promise<OPPAssertion[]> {
271
396
  this.ensureUser();
272
397
 
273
- if (!address) address = await this.signer!.getAddress();
398
+ if (!address) address = await this.address!;
274
399
 
275
400
  return await this.oppClient.getMessages(address);
276
401
  }
277
402
 
403
+
404
+
278
405
  // Ensure that signer wallet is available for write operations
279
406
  private ensureUser() {
280
407
  if (!this.signer) {
@@ -330,26 +457,13 @@ export class EthereumStakingClient implements IStakingClient {
330
457
  *
331
458
  * SUPPORTS READ-ONLY ACcESS
332
459
  */
333
- async getTrancheSnapshot(options?: {
334
- chainID?: ChainID;
335
- windowBefore?: number;
336
- windowAfter?: number;
337
- }): Promise<TrancheSnapshot> {
338
- const {
339
- chainID = EvmChainID.Hoodi,
340
- windowBefore,
341
- windowAfter,
342
- } = options ?? {};
343
-
344
-
460
+ async getTrancheSnapshot(chainID: ChainID): Promise<TrancheSnapshot> {
345
461
  try {
346
-
347
462
  const blockNumber = await this.provider.getBlockNumber();
348
463
  const blockTag = { blockTag: blockNumber };
349
464
 
350
-
351
465
  // Fetch all required contract data
352
- const [totalSharesBn, indexBn, trancheNumberBn, trancheSupplyBn, tranchePriceWadBn, totalSupplyBn, supplyGrowthBps, priceGrowthCents, minPriceUsd, maxPriceUsd] = await Promise.all([
466
+ const [totalSharesBn, indexBn, trancheNumberBn, trancheSupplyBn, tranchePriceUsdBn, totalSupplyBn, supplyGrowthBps, priceGrowthCents, minPriceUsd, maxPriceUsd] = await Promise.all([
353
467
  this.contract.Depositor.totalShares(blockTag),
354
468
  this.contract.Depositor.index(blockTag),
355
469
  this.contract.Pretoken.trancheNumber(blockTag),
@@ -362,15 +476,18 @@ export class EthereumStakingClient implements IStakingClient {
362
476
  this.contract.EthUsdPriceConsumer.MAX_PRICE(),
363
477
  ]);
364
478
 
365
-
366
479
  const totalTrancheSupply = BigInt(totalSupplyBn.toString()) / BigInt(1e10);
367
480
  const currentTrancheSupply = BigInt(trancheSupplyBn.toString()) / BigInt(1e10);
368
481
 
369
-
370
482
  // fetch price and timestamp from aggregator
371
- const [roundId, answer, startedAt, updatedAt, answeredInRound] = await this.contract.MockAggregator.latestRoundData();
372
- let ethPriceUsd: bigint = BigInt(answer.toString());
373
- let nativePriceTimestamp: number = Number(updatedAt);
483
+ // const [roundId, answer, startedAt, updatedAt, answeredInRound] = await this.contract.MockAggregator.latestRoundData();
484
+ //originally fetched ethPrice from aggregator - pulling from EthUsdPriceConsumer instead - this is where the actual price gets pulled from when purchasing pretokens.
485
+ // let ethPriceUsd: bigint = BigInt(answer.toString());)
486
+
487
+ let ethPriceUsdBn = await this.contract.EthUsdPriceConsumer.getPrice18Decimals();
488
+ let ethPriceUsd: bigint = BigInt(ethPriceUsdBn.toString()) / BigInt(1e10);
489
+
490
+ // let nativePriceTimestamp: number = Number(updatedAt);
374
491
 
375
492
  const initialTrancheSupply = BigInt(INITIAL_TRANCHE_SUPPLY) * BigInt(1e8);
376
493
 
@@ -380,23 +497,17 @@ export class EthereumStakingClient implements IStakingClient {
380
497
  indexBn,
381
498
  trancheNumberBn,
382
499
  currentTrancheSupply,
383
- tranchePriceWadBn,
500
+ tranchePriceUsdBn,
384
501
  totalTrancheSupply,
385
502
  initialTrancheSupply,
386
503
  supplyGrowthBps,
387
504
  priceGrowthCents,
388
505
  minPriceUsd,
389
506
  maxPriceUsd,
390
-
391
507
  ethPriceUsd,
392
- nativePriceTimestamp,
393
- ladderWindowBefore: windowBefore,
394
- ladderWindowAfter: windowAfter,
395
508
  });
396
509
  }
397
510
  catch (err: any) {
398
- console.log(err);
399
-
400
511
  throw new Error(`Error fetching Ethereum tranche snapshot: ${err?.message || err}`);
401
512
  }
402
513
  }
@@ -413,14 +524,15 @@ export class EthereumStakingClient implements IStakingClient {
413
524
  * @param options.safetyMultiplier Additional safety multiplier on top of txCount (default 1.5x)
414
525
  * @param options.minBufferWei Optional override minimum buffer (defaults ~0.002 ETH)
415
526
  */
416
- async estimateGasBuffer(options?: {
527
+ async getDepositBuffer(options?: {
417
528
  txCount?: number;
418
529
  safetyMultiplier?: number;
419
530
  minBufferWei?: bigint;
531
+ balanceOverrideLamports?: bigint;
420
532
  }): Promise<bigint> {
421
533
  this.ensureUser();
422
534
 
423
- const walletAddress = await this.signer!.getAddress();
535
+ const walletAddress = await this.address!;
424
536
 
425
537
  // 1) Estimate a baseline gas usage using a simple self-transfer.
426
538
  // This is cheap and doesn't depend on your contract ABI at all.
@@ -475,7 +587,8 @@ export class EthereumStakingClient implements IStakingClient {
475
587
  // Internal ETH Staking client helper functions
476
588
  // ---------------------------------------------------------------------
477
589
 
478
- // ! This is a temporary measure for Hoodi testnet because there is no aggregator deployed
590
+ // ! This is a temporary measure for testnet because there is no aggregator deployed
591
+ /*
479
592
  private async updateMockAggregatorPrice() {
480
593
  const aggregator = this.contract.MockAggregator;
481
594
 
@@ -487,10 +600,12 @@ export class EthereumStakingClient implements IStakingClient {
487
600
  const ONE_HOUR = 1 * 3600;
488
601
  // const ONE_HOUR = 10;
489
602
  if (ageSec > ONE_HOUR) {
603
+ console.log('Attempt to run updateMockAggregatorPrice - MockAggregator price is stale by', ageSec, 'seconds - updating price before proceeding with buy...');
604
+
490
605
  // safety check - only run in non-production contexts
491
606
  const network = await this.provider.getNetwork();
492
607
  const chainId = network.chainId;
493
- const allowedTestChains = new Set([560048]);
608
+ const allowedTestChains = new Set([560048, 31337]);
494
609
  if (!allowedTestChains.has(chainId)) {
495
610
  console.warn(`MockAggregator is stale (${ageSec}s) but chainId ${chainId} is not a test/local network — skipping update.`);
496
611
  return;
@@ -504,6 +619,8 @@ export class EthereumStakingClient implements IStakingClient {
504
619
 
505
620
  const currentEthPrice = ethers.utils.parseUnits(ethUsd.toString(), 8);
506
621
 
622
+ console.log('currentEthPrice', currentEthPrice.toString())
623
+
507
624
  try {
508
625
  //update to be intentionally stale
509
626
  // const alttx = await aggregator.updateStale(currentEthPrice, now - 7200);
@@ -513,7 +630,8 @@ export class EthereumStakingClient implements IStakingClient {
513
630
  //update answer with current timestamp
514
631
  const tx = await aggregator.updateAnswer(currentEthPrice);
515
632
  const txreceipt = await tx.wait(1);
516
- // console.log('MockAggregator answer updated - receipt:', txreceipt)
633
+ console.log('MockAggregator answer updated - receipt:', txreceipt)
634
+ return txreceipt
517
635
  } catch (err: any) {
518
636
  console.error('MockAggregator updateAnswer failed', err?.message || err);
519
637
  }
@@ -521,4 +639,98 @@ export class EthereumStakingClient implements IStakingClient {
521
639
  console.log(`MockAggregator updated ${ageSec}s ago — no update needed`);
522
640
  }
523
641
  }
524
- }
642
+
643
+
644
+ private async fixOppTooManyAttestations() {
645
+ const opp = this.contract.OPP;
646
+ const outpostManager = this.contract.OutpostManager;
647
+
648
+ const [authority, pendingCountRaw, maxRaw, sendModeTagRaw] = await Promise.all([
649
+ opp.authority(),
650
+ opp.pendingAttestationCount(),
651
+ opp.MESSAGE_EPOCH_MAX_ATTESTATIONS(),
652
+ opp.sendModeTag(),
653
+ ]);
654
+
655
+ const toBigInt = (v: any) => (typeof v === "bigint" ? v : BigInt(v.toString()));
656
+ const pendingCount = toBigInt(pendingCountRaw);
657
+ const maxAttestations = toBigInt(maxRaw);
658
+ const sendModeTag = toBigInt(sendModeTagRaw);
659
+
660
+ console.log(`OPP status: authority=${authority}, pendingAttestationCount=${pendingCount}, MESSAGE_EPOCH_MAX_ATTESTATIONS=${maxAttestations}, sendModeTag=${sendModeTag}`);
661
+
662
+ if (sendModeTag === 0n) {
663
+ console.log("OPP is not in send mode.");
664
+ // return;
665
+ }
666
+
667
+ const shouldBumpMax = maxAttestations === 1n || pendingCount > maxAttestations;
668
+ if (!shouldBumpMax) {
669
+ console.log(
670
+ `No fix needed: pendingAttestationCount=${pendingCount} <= MESSAGE_EPOCH_MAX_ATTESTATIONS=${maxAttestations}`,
671
+ );
672
+ // return;
673
+ }
674
+
675
+ console.log(
676
+ `OPP bump needed (pending=${pendingCount}, max=${maxAttestations}) — attempting to set new max and ${sendModeTag === 0n ? 'skip' : 'call'} exitSendMode(${sendModeTag})...`
677
+ );
678
+
679
+ console.log(await this.provider.getNetwork());
680
+
681
+
682
+
683
+ // safety check to only run in testnet
684
+ const network = await this.provider.getNetwork();
685
+ const chainId = toBigInt(network.chainId);
686
+ const allowedTestChains = new Set<bigint>([560048n, 31337n]);
687
+ if (!allowedTestChains.has(chainId)) {
688
+ console.warn(
689
+ `Refusing to modify OPP config on chainId ${chainId}. Add it to allowedTestChains if this is expected.`
690
+ );
691
+ return;
692
+ }
693
+
694
+ // minimal bump bump: set max to pendingCount (or a small default when max was 1) + buffer.
695
+ const base = pendingCount > 0n ? pendingCount : 1n;
696
+ // const newMax = base + 2n; // add a small buffer to prevent immediate recurrence
697
+ const newMax = 1n; // add a small buffer to prevent immediate recurrence
698
+
699
+ const encodeOppCall = (fn: string, args: any[]) =>
700
+ opp.interface.encodeFunctionData(fn, args);
701
+
702
+ try {
703
+ const data = encodeOppCall('setMessageEpochMaxAttestations', [newMax]);
704
+ await outpostManager.callStatic.execute(opp.address, data);
705
+ console.log('OutpostManager.execute(callStatic) setMessageEpochMaxAttestations passed');
706
+ } catch (e) {
707
+ console.error('OutpostManager.execute(callStatic) setMessageEpochMaxAttestations revert:', e);
708
+ }
709
+
710
+
711
+ try {
712
+ const data1 = encodeOppCall('setMessageEpochMaxAttestations', [newMax]);
713
+ const tx1 = await outpostManager.execute(opp.address, data1, {
714
+ gasLimit: 500_000,
715
+ });
716
+ const receipt1 = await tx1.wait(1);
717
+ console.log("setMessageEpochMaxAttestations confirmed:", receipt1);
718
+
719
+ if (sendModeTag !== 0n) {
720
+ const data2 = encodeOppCall('exitSendMode', [sendModeTag]);
721
+ const tx2 = await outpostManager.execute(opp.address, data2, {
722
+ gasLimit: 500_000,
723
+ });
724
+ const receipt2 = await tx2.wait(1);
725
+ console.log("exitSendMode confirmed:", receipt2);
726
+ return { setMaxReceipt: receipt1, exitReceipt: receipt2 };
727
+ }
728
+
729
+ return { setMaxReceipt: receipt1 };
730
+ } catch (err: any) {
731
+ let errorObj = formatContractErrors(err);
732
+ console.error("fixOppTooManyAttestations failed:", err?.message || err, errorObj);
733
+ }
734
+ }
735
+ */
736
+ }