@wireio/stake 0.0.5 → 0.0.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 (504) hide show
  1. package/README.md +204 -15
  2. package/lib/stake.browser.js +69370 -4589
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +17899 -5512
  5. package/lib/stake.js +70103 -4899
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +69370 -4589
  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/IDepositContract.json +39 -0
  48. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  49. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  50. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  51. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  52. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  53. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  54. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  55. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  56. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  57. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.json +344 -0
  58. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  59. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  60. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  61. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  62. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  63. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  64. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  65. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  66. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  67. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  68. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  69. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  70. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  71. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  72. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  73. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.json +1376 -0
  74. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
  75. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.json +629 -0
  76. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  77. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  78. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  79. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
  80. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  81. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  82. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  83. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  84. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  85. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  86. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  87. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  88. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  89. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  90. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  91. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  92. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  93. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  94. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  95. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  96. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  97. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  98. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  99. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  100. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  101. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  102. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  103. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
  104. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  105. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  106. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  107. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +548 -0
  108. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  109. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  110. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  111. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  112. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  113. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  114. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  115. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  116. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  117. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  118. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.dbg.json +4 -0
  119. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.json +1111 -0
  120. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  121. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json +1696 -0
  122. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  123. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  124. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  125. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
  126. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
  127. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
  128. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
  129. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
  130. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
  131. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
  132. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
  133. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
  134. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
  135. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.json +1044 -0
  136. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
  137. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +1055 -0
  138. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  139. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +81 -0
  140. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  141. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  142. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  143. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
  144. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  145. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  146. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  147. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +41 -0
  148. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  149. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +287 -0
  150. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  151. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +294 -0
  152. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  153. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +415 -0
  154. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  155. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +399 -0
  156. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  157. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +245 -0
  158. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  159. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1204 -0
  160. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  161. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +312 -0
  162. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  163. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +324 -0
  164. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
  165. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.json +1068 -0
  166. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  167. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
  168. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  169. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  170. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  171. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json +751 -0
  172. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  173. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  174. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  175. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  176. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  177. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  178. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  179. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  180. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  181. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  182. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
  183. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.json +888 -0
  184. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.dbg.json +4 -0
  185. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.json +659 -0
  186. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
  187. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json +1393 -0
  188. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  189. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
  190. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
  191. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
  192. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
  193. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
  194. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
  195. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
  196. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
  197. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
  198. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
  199. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
  200. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
  201. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
  202. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
  203. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
  204. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
  205. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
  206. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
  207. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
  208. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
  209. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
  210. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
  211. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
  212. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
  213. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
  214. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  215. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  216. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  217. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  218. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  219. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  220. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  221. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  222. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  223. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  224. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  225. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
  226. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  227. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
  228. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.dbg.json +4 -0
  229. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.json +560 -0
  230. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.dbg.json +4 -0
  231. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.json +460 -0
  232. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.dbg.json +4 -0
  233. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.json +624 -0
  234. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.dbg.json +4 -0
  235. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.json +164 -0
  236. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  237. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  238. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  239. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  240. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.dbg.json +4 -0
  241. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.json +618 -0
  242. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  243. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.json +40 -0
  244. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  245. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.json +10 -0
  246. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  247. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.json +10 -0
  248. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  249. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  250. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  251. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.json +49 -0
  252. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  253. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  254. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  255. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.json +1458 -0
  256. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  257. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.json +1532 -0
  258. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  259. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.json +1525 -0
  260. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  261. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json +1076 -0
  262. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  263. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json +807 -0
  264. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  265. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
  266. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
  267. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
  268. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
  269. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
  270. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  271. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  272. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  273. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  274. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  275. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  276. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
  277. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
  278. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  279. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  280. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  281. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  282. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  283. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  284. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  285. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
  286. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  287. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  288. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  289. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  290. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  291. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  292. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  293. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  294. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  295. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  296. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  297. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  298. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  299. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  300. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
  301. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.json +89 -0
  302. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  303. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json +1376 -0
  304. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  305. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  306. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  307. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
  308. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  309. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  310. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  311. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  312. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  313. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  314. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  315. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  316. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  317. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  318. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  319. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  320. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  321. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  322. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  323. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  324. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  325. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  326. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  327. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  328. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  329. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  330. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  331. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
  332. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  333. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  334. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  335. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.json +542 -0
  336. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  337. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  338. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  339. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  340. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  341. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  342. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  343. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  344. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  345. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  346. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.dbg.json +4 -0
  347. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json +1915 -0
  348. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
  349. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json +1845 -0
  350. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  351. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  352. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  353. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +551 -0
  354. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.dbg.json +4 -0
  355. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.json +948 -0
  356. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  357. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.json +88 -0
  358. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  359. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  360. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  361. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.json +194 -0
  362. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  363. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  364. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  365. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.json +36 -0
  366. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  367. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.json +199 -0
  368. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  369. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.json +273 -0
  370. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  371. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +394 -0
  372. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  373. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +378 -0
  374. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  375. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.json +224 -0
  376. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  377. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.json +1010 -0
  378. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  379. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.json +291 -0
  380. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  381. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.json +298 -0
  382. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  383. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.json +488 -0
  384. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  385. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  386. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
  387. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
  388. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  389. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  390. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  391. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  392. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  393. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  394. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  395. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  396. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  397. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  398. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.dbg.json +4 -0
  399. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json +943 -0
  400. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
  401. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json +1703 -0
  402. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  403. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.json +2015 -0
  404. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  405. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  406. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  407. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  408. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  409. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  410. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  411. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  412. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
  413. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.json +1871 -0
  414. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
  415. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.json +1653 -0
  416. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  417. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.json +730 -0
  418. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
  419. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.json +936 -0
  420. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
  421. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.json +1665 -0
  422. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  423. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  424. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  425. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json +330 -0
  426. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  427. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json +449 -0
  428. package/src/assets/solana/devnet/idl/liqsol_core.json +8546 -0
  429. package/src/assets/solana/devnet/idl/liqsol_token.json +217 -0
  430. package/src/assets/solana/devnet/idl/transfer_hook.json +490 -0
  431. package/src/assets/solana/devnet/idl/validator_leaderboard.json +735 -0
  432. package/src/assets/solana/devnet/types/liqsol_core.ts +8552 -0
  433. package/src/assets/solana/devnet/types/liqsol_token.ts +223 -0
  434. package/src/assets/solana/devnet/types/transfer_hook.ts +496 -0
  435. package/src/assets/solana/devnet/types/validator_leaderboard.ts +741 -0
  436. package/src/assets/solana/mainnet/idl/liqsol_core.json +6678 -0
  437. package/src/assets/solana/mainnet/idl/liqsol_token.json +217 -0
  438. package/src/assets/solana/mainnet/idl/transfer_hook.json +479 -0
  439. package/src/assets/solana/mainnet/idl/validator_leaderboard.json +574 -0
  440. package/src/assets/solana/mainnet/types/liqsol_core.ts +6684 -0
  441. package/src/assets/solana/mainnet/types/liqsol_token.ts +223 -0
  442. package/src/assets/solana/mainnet/types/transfer_hook.ts +485 -0
  443. package/src/assets/solana/mainnet/types/validator_leaderboard.ts +580 -0
  444. package/src/assets/solana/realdevnet/idl/liqsol_core.json +7112 -0
  445. package/src/assets/solana/realdevnet/idl/liqsol_token.json +217 -0
  446. package/src/assets/solana/realdevnet/idl/transfer_hook.json +479 -0
  447. package/src/assets/solana/realdevnet/idl/validator_leaderboard.json +735 -0
  448. package/src/assets/solana/realdevnet/types/liqsol_core.ts +7118 -0
  449. package/src/assets/solana/realdevnet/types/liqsol_token.ts +223 -0
  450. package/src/assets/solana/realdevnet/types/transfer_hook.ts +485 -0
  451. package/src/assets/solana/realdevnet/types/validator_leaderboard.ts +741 -0
  452. package/src/index.ts +7 -8
  453. package/src/networks/ethereum/clients/convert.client.ts +221 -0
  454. package/src/networks/ethereum/clients/opp.client.ts +389 -0
  455. package/src/networks/ethereum/clients/pretoken.client.ts +165 -0
  456. package/src/networks/ethereum/clients/receipt.client.ts +199 -0
  457. package/src/networks/ethereum/clients/stake.client.ts +203 -0
  458. package/src/networks/ethereum/clients/validator.client.ts +61 -0
  459. package/src/networks/ethereum/contract.ts +438 -58
  460. package/src/networks/ethereum/ethereum.ts +591 -51
  461. package/src/networks/ethereum/types.ts +138 -2
  462. package/src/networks/ethereum/utils.ts +340 -0
  463. package/src/networks/solana/clients/convert.client.ts +341 -0
  464. package/src/networks/solana/clients/distribution.client.ts +304 -176
  465. package/src/networks/solana/clients/leaderboard.client.ts +85 -163
  466. package/src/networks/solana/clients/outpost.client.ts +325 -0
  467. package/src/networks/solana/clients/token.client.ts +210 -0
  468. package/src/networks/solana/constants.ts +152 -69
  469. package/src/networks/solana/program.ts +397 -102
  470. package/src/networks/solana/solana.ts +1208 -68
  471. package/src/networks/solana/types.ts +757 -0
  472. package/src/networks/solana/utils.ts +542 -93
  473. package/src/scripts/fetch-artifacts.sh +24 -0
  474. package/src/scripts/tsconfig.json +17 -0
  475. package/src/staker.ts +85 -0
  476. package/src/types.ts +364 -0
  477. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -4
  478. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +0 -472
  479. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +0 -4
  480. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +0 -330
  481. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +0 -4
  482. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +0 -449
  483. package/src/assets/solana/idl/deposit.json +0 -260
  484. package/src/assets/solana/idl/distribution.json +0 -736
  485. package/src/assets/solana/idl/liq_sol_token.json +0 -275
  486. package/src/assets/solana/idl/stake_controller.json +0 -1788
  487. package/src/assets/solana/idl/stake_registry.json +0 -435
  488. package/src/assets/solana/idl/treasury.json +0 -336
  489. package/src/assets/solana/idl/validator_leaderboard.json +0 -528
  490. package/src/assets/solana/idl/validator_registry.json +0 -418
  491. package/src/assets/solana/idl/yield_oracle.json +0 -32
  492. package/src/assets/solana/types/deposit.ts +0 -266
  493. package/src/assets/solana/types/distribution.ts +0 -742
  494. package/src/assets/solana/types/liq_sol_token.ts +0 -281
  495. package/src/assets/solana/types/stake_controller.ts +0 -1794
  496. package/src/assets/solana/types/stake_registry.ts +0 -441
  497. package/src/assets/solana/types/treasury.ts +0 -342
  498. package/src/assets/solana/types/validator_leaderboard.ts +0 -534
  499. package/src/assets/solana/types/validator_registry.ts +0 -424
  500. package/src/assets/solana/types/yield_oracle.ts +0 -38
  501. package/src/networks/solana/clients/deposit.client.ts +0 -178
  502. package/src/staker/staker.ts +0 -56
  503. package/src/staker/types.ts +0 -40
  504. package/src/utils.ts +0 -9
@@ -0,0 +1,210 @@
1
+ import { AnchorProvider, BN, Program } from '@coral-xyz/anchor';
2
+ import type { TransactionInstruction, Connection } from '@solana/web3.js';
3
+ import { PublicKey, SystemProgram } from '@solana/web3.js';
4
+ import {
5
+ TOKEN_2022_PROGRAM_ID,
6
+ ASSOCIATED_TOKEN_PROGRAM_ID,
7
+ } from '@solana/spl-token';
8
+
9
+ import {
10
+ buildOutpostAccounts,
11
+ type OutpostAccounts,
12
+ } from '../utils';
13
+
14
+ import { LiqsolCoreClientIdl, SolanaProgramService } from '../program';
15
+
16
+ import {
17
+ GlobalState,
18
+ PriceHistory,
19
+ TrancheState,
20
+ WalletLike,
21
+ OutpostAccount,
22
+ UserPretokenRecord,
23
+ } from '../types';
24
+
25
+ import {
26
+ CHAINLINK_FEED,
27
+ CHAINLINK_PROGRAM,
28
+ } from '../constants';
29
+
30
+ export class TokenClient {
31
+ private readonly program: Program<LiqsolCoreClientIdl>;
32
+
33
+ get wallet(): WalletLike {
34
+ return this.provider.wallet;
35
+ }
36
+
37
+ get connection(): Connection {
38
+ return this.provider.connection;
39
+ }
40
+
41
+ constructor(
42
+ private readonly provider: AnchorProvider,
43
+ private readonly pgs: SolanaProgramService
44
+ ) {
45
+ this.program = pgs.getProgram('liqsolCore');
46
+ }
47
+
48
+ // ---------------------------------------------------------------------------
49
+ // Account helpers
50
+ // ---------------------------------------------------------------------------
51
+
52
+ async getAccounts(user: PublicKey): Promise<OutpostAccounts> {
53
+ return buildOutpostAccounts(this.provider.connection, user, this.pgs);
54
+ }
55
+
56
+ async fetchGlobalState(): Promise<GlobalState> {
57
+ const { globalState } = await this.getAccounts(this.wallet.publicKey);
58
+ return this.program.account.globalState.fetch(globalState);
59
+ }
60
+
61
+ async fetchTrancheState(): Promise<TrancheState> {
62
+ const { trancheState } = await this.getAccounts(this.wallet.publicKey);
63
+ return this.program.account.trancheState.fetch(trancheState);
64
+ }
65
+
66
+ /**
67
+ * Fetch the per-user Outpost account (old "wire receipt").
68
+ * Returns null if the user has never interacted with Outpost.
69
+ */
70
+ async fetchOutpostAccount(user: PublicKey): Promise<OutpostAccount | null> {
71
+ const { outpostAccount } = await this.getAccounts(user);
72
+ return this.program.account.outpostAccount.fetchNullable(outpostAccount);
73
+ }
74
+
75
+ /**
76
+ * Fetch the per-user pretoken purchase record.
77
+ * Returns null if the user has never purchased pretokens.
78
+ */
79
+ async fetchUserPretokenRecord(
80
+ user: PublicKey,
81
+ ): Promise<UserPretokenRecord | null> {
82
+ const { userPretokenRecord } = await this.getAccounts(user);
83
+ return this.program.account.userPretokenRecord.fetchNullable(
84
+ userPretokenRecord,
85
+ );
86
+ }
87
+
88
+ // ---------------------------------------------------------------------------
89
+ // Instruction builders (no send / confirm)
90
+ // ---------------------------------------------------------------------------
91
+
92
+ /**
93
+ * Build a pretoken `purchase` instruction using liqSOL from the user’s ATA.
94
+ *
95
+ * This mirrors capital-staking `executePurchase` wiring:
96
+ * - amountLamports: liqSOL amount (raw token-2022 units, not SOL)
97
+ */
98
+ async buildPurchaseIx(
99
+ amountLamports: bigint,
100
+ user = this.wallet.publicKey,
101
+ ): Promise<TransactionInstruction> {
102
+ console.log('build purchase for', user.toBase58());
103
+
104
+ const a = await this.getAccounts(user);
105
+
106
+ const extraAccountMetaList = this.pgs.deriveExtraAccountMetaListPda(a.liqsolMint);
107
+ const liqsolCoreProgram = this.pgs.PROGRAM_IDS.LIQSOL_CORE;
108
+ const transferHookProgram = this.pgs.PROGRAM_IDS.TRANSFER_HOOK;
109
+
110
+ return this.program.methods
111
+ .purchase(new BN(amountLamports.toString()))
112
+ .accounts({
113
+ user: a.user,
114
+ liqsolMint: a.liqsolMint,
115
+ globalState: a.globalState,
116
+ distributionState: a.distributionState,
117
+
118
+ // buyer’s liqSOL
119
+ buyerAta: a.userAta,
120
+
121
+ // pool / bucket context
122
+ poolAuthority: a.poolAuthority,
123
+ bucketAuthority: a.bucketAuthority,
124
+ bucketTokenAccount: a.bucketTokenAccount,
125
+ bucketUserRecord: a.bucketUserRecord,
126
+
127
+ // distribution userRecords (token-account keyed)
128
+ senderUserRecord: a.userUserRecord,
129
+ receiverUserRecord: a.liqsolPoolUserRecord,
130
+
131
+ // transfer-hook wiring
132
+ extraAccountMetaList,
133
+ liqsolCoreProgram,
134
+ transferHookProgram,
135
+
136
+ // pool + outpost + tranche
137
+ liqsolPoolAta: a.liqsolPoolAta,
138
+ outpostAccount: a.outpostAccount,
139
+ trancheState: a.trancheState,
140
+ userPretokenRecord: a.userPretokenRecord,
141
+
142
+ // Chainlink pricing
143
+ chainlinkFeed: a.chainLinkFeed ?? CHAINLINK_FEED,
144
+ chainlinkProgram: a.chainLinkProgram ?? CHAINLINK_PROGRAM,
145
+
146
+ tokenProgram: TOKEN_2022_PROGRAM_ID,
147
+ associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ID,
148
+ systemProgram: SystemProgram.programId,
149
+
150
+ pretokenPurchaseHistory: a.pretokenPurchaseHistory,
151
+ } as any)
152
+ .instruction();
153
+ }
154
+
155
+ // NOTE:
156
+ // - There is no longer `purchaseWithSol` in the IDL - SOL → liqSOL happens
157
+ // through the deposit / liqSOL minting path, not directly in pretokens.
158
+ // - `purchaseFromYield` is an operator-facing / protocol flow and you
159
+ // indicated you’ll trigger it from Wire infra, so we don’t expose a
160
+ // client helper here for now.
161
+
162
+ // ---------------------------------------------------------------------------
163
+ // Price helpers (SOL/USD via priceHistory account)
164
+ // ---------------------------------------------------------------------------
165
+
166
+ async getSolPriceUsdSafe(): Promise<{ price?: bigint; timestamp?: number }> {
167
+ try {
168
+ const price = await this.getSolPriceUsd();
169
+ // current priceHistory account has no timestamp; keep optional
170
+ return { price, timestamp: undefined };
171
+ } catch {
172
+ return { price: undefined, timestamp: undefined };
173
+ }
174
+ }
175
+
176
+ /**
177
+ * Fetch latest SOL/USD price (1e8 scale) from liqsol_core.priceHistory.
178
+ * Uses the ring-buffer semantics from capital-staking.
179
+ */
180
+ async getSolPriceUsd(): Promise<bigint> {
181
+ const priceHistoryPda = this.pgs.derivePriceHistoryPda();
182
+ const history = (await this.program.account.priceHistory.fetch(
183
+ priceHistoryPda,
184
+ )) as PriceHistory;
185
+
186
+ const { prices, nextIndex, count, windowSize } = history;
187
+
188
+ if (!prices || prices.length === 0 || !count) {
189
+ throw new Error('Price history is empty - no SOL price available');
190
+ }
191
+
192
+ const capacity = prices.length || windowSize;
193
+ if (!capacity) {
194
+ throw new Error(
195
+ 'Price history capacity is zero - check account layout',
196
+ );
197
+ }
198
+
199
+ const lastIndex = nextIndex === 0 ? capacity - 1 : nextIndex - 1;
200
+ const latest = prices[lastIndex];
201
+
202
+ if (!BN.isBN(latest)) {
203
+ throw new Error(
204
+ 'Latest price entry is not a BN - check IDL/decoder',
205
+ );
206
+ }
207
+
208
+ return BigInt(latest.toString());
209
+ }
210
+ }
@@ -1,73 +1,156 @@
1
1
  // src/networks/solana/constants.ts
2
+ import { PublicKey, StakeProgram } from '@solana/web3.js';
3
+ import { SolChainID } from '@wireio/core';
2
4
 
3
- import { PublicKey } from '@solana/web3.js';
4
- import { TOKEN_2022_PROGRAM_ID, ASSOCIATED_TOKEN_PROGRAM_ID } from '@solana/spl-token';
5
-
6
- // IDLs — (must match your filesystem: src/assets/solana/idl/*.json)
7
- import DepositIDL from '../../assets/solana/idl/deposit.json';
8
- import DistributionIDL from '../../assets/solana/idl/distribution.json';
9
- import LiqSolTokenIDL from '../../assets/solana/idl/liq_sol_token.json';
10
- import StakeControllerIDL from '../../assets/solana/idl/stake_controller.json';
11
- import StakeRegistryIDL from '../../assets/solana/idl/stake_registry.json';
12
- import TreasuryIDL from '../../assets/solana/idl/treasury.json';
13
- import ValidatorLeaderboardIDL from '../../assets/solana/idl/validator_leaderboard.json';
14
- import ValidatorRegistryIDL from '../../assets/solana/idl/validator_registry.json';
15
- import YieldOracleIDL from '../../assets/solana/idl/yield_oracle.json';
16
-
17
- // Types for your clients
18
- import type { Deposit } from '../../assets/solana/types/deposit';
19
- import type { Distribution } from '../../assets/solana/types/distribution';
20
- import type { ValidatorLeaderboard } from '../../assets/solana/types/validator_leaderboard';
21
- import type { LiqSolToken } from '../../assets/solana/types/liq_sol_token';
22
- import type { StakeController } from '../../assets/solana/types/stake_controller';
23
- import type { StakeRegistry } from '../../assets/solana/types/stake_registry';
24
- import type { Treasury } from '../../assets/solana/types/treasury';
25
- import type { ValidatorRegistry } from '../../assets/solana/types/validator_registry';
26
- import type { YieldOracle } from '../../assets/solana/types/yield_oracle';
27
-
28
- // Re-export for easy import elsewhere:
29
- export {
30
- Deposit,
31
- DepositIDL,
32
- Distribution,
33
- DistributionIDL,
34
- LiqSolToken,
35
- LiqSolTokenIDL,
36
- StakeController,
37
- StakeControllerIDL,
38
- StakeRegistry,
39
- StakeRegistryIDL,
40
- Treasury,
41
- TreasuryIDL,
42
- ValidatorLeaderboard,
43
- ValidatorLeaderboardIDL,
44
- ValidatorRegistry,
45
- ValidatorRegistryIDL,
46
- YieldOracle,
47
- YieldOracleIDL,
5
+ import mainnetLiqsolCoreIDL from '../../assets/solana/mainnet/idl/liqsol_core.json';
6
+ import mainnetLiqSolTokenIDL from '../../assets/solana/mainnet/idl/liqsol_token.json';
7
+ import mainnetValidatorLeaderboardIDL from '../../assets/solana/mainnet/idl/validator_leaderboard.json';
8
+ import mainnetTransferHookIDL from '../../assets/solana/mainnet/idl/transfer_hook.json';
9
+
10
+ import devnetLiqsolCoreIDL from '../../assets/solana/devnet/idl/liqsol_core.json';
11
+ import devnetLiqSolTokenIDL from '../../assets/solana/devnet/idl/liqsol_token.json';
12
+ import devnetValidatorLeaderboardIDL from '../../assets/solana/devnet/idl/validator_leaderboard.json';
13
+ import devnetTransferHookIDL from '../../assets/solana/devnet/idl/transfer_hook.json';
14
+ import { SupportedSolChainID } from '../../types';
15
+
16
+ /**
17
+ * Per-chain program IDs (NOT global anymore).
18
+ */
19
+ export type SolanaProgramIds = {
20
+ LIQSOL_CORE: PublicKey;
21
+ LIQSOL_TOKEN: PublicKey;
22
+ VALIDATOR_LEADERBOARD: PublicKey;
23
+ TRANSFER_HOOK: PublicKey;
24
+ ALT: PublicKey;
25
+ };
26
+
27
+ const MAINNET_PROGRAM_IDS: SolanaProgramIds = {
28
+ LIQSOL_CORE: new PublicKey(mainnetLiqsolCoreIDL.address),
29
+ LIQSOL_TOKEN: new PublicKey(mainnetLiqSolTokenIDL.address),
30
+ VALIDATOR_LEADERBOARD: new PublicKey(mainnetValidatorLeaderboardIDL.address),
31
+ TRANSFER_HOOK: new PublicKey(mainnetTransferHookIDL.address),
32
+ ALT: new PublicKey("AQXTHwkdNBEiXeQuVA5uCoxvzgYUmudRxthQY4vWKCPS")
33
+ };
34
+
35
+ const DEVNET_PROGRAM_IDS: SolanaProgramIds = {
36
+ LIQSOL_CORE: new PublicKey(devnetLiqsolCoreIDL.address),
37
+ LIQSOL_TOKEN: new PublicKey(devnetLiqSolTokenIDL.address),
38
+ VALIDATOR_LEADERBOARD: new PublicKey(devnetValidatorLeaderboardIDL.address),
39
+ TRANSFER_HOOK: new PublicKey(devnetTransferHookIDL.address),
40
+ ALT: new PublicKey("AZQmTbacBuAsJpncg2N2AwcZsLG1Sxeohbau9vjezmTz")
41
+ };
42
+
43
+ export const PROGRAM_IDS_BY_CHAIN: Record<SupportedSolChainID, SolanaProgramIds> = {
44
+ [SolChainID.Mainnet]: MAINNET_PROGRAM_IDS,
45
+ [SolChainID.Devnet]: DEVNET_PROGRAM_IDS,
46
+ };
47
+
48
+ export const getProgramIds = (chainId: SolChainID): SolanaProgramIds => {
49
+ const ids = PROGRAM_IDS_BY_CHAIN[chainId];
50
+ if (!ids) throw new Error(`Unsupported Solana chainId=${chainId}`);
51
+ return ids;
48
52
  };
49
53
 
50
- // — Program IDs — anchor “address” fields inside each IDL must match these:
51
- export const DEPOSIT_PROGRAM_ID = new PublicKey(DepositIDL.address);
52
- export const DISTRIBUTION_PROGRAM_ID = new PublicKey(DistributionIDL.address);
53
- export const LIQSOL_TOKEN_PROGRAM_ID = new PublicKey(LiqSolTokenIDL.address);
54
- export const STAKE_CONTROLLER_PROGRAM_ID = new PublicKey(StakeControllerIDL.address);
55
- export const STAKE_REGISTRY_PROGRAM_ID = new PublicKey(StakeRegistryIDL.address);
56
- export const TREASURY_PROGRAM_ID = new PublicKey(TreasuryIDL.address);
57
- export const VALIDATOR_LEADERBOARD_PROGRAM_ID = new PublicKey(ValidatorLeaderboardIDL.address);
58
- export const VALIDATOR_REGISTRY_PROGRAM_ID = new PublicKey(ValidatorRegistryIDL.address);
59
- export const YIELD_ORACLE_PROGRAM_ID = new PublicKey(YieldOracleIDL.address);
60
-
61
- // — Protocol constants — tweak as needed:
62
- export const MIN_SOL_TO_PARTICIPATE = 1_000_000_000; // 1 SOL in lamports
63
- export const MIN_FUNDS_THRESHOLD = 10_000_000_000; // 10 SOL in lamports
64
- export const RESERVE_FOR_FEES = 1_000_000_000; // 1 SOL
65
-
66
- // Pre-derived PDA seeds for your convenience —
67
- // (you can still use your utils.ts helpers instead)
68
- export const TREASURY_WALLET_PDA = new PublicKey('9gLj1MRrm66GNYqnMLPGUzyYqYJpVLQgFSbtCQV9Ta4G');
69
- export const LIQSOL_MINT_ADDRESS = new PublicKey('B2XtJABkc6eUoYUNgSfZVb3kYckmbh2zxp4rp2hX2Xwa');
70
- export const STAKE_VAULT_PDA = new PublicKey('AY83EfU5LXJGDhbLeP45H3tLKisGZgSe2G4mGYfPimqN');
71
-
72
- // re-export SPL token constants:
73
- export { TOKEN_2022_PROGRAM_ID, ASSOCIATED_TOKEN_PROGRAM_ID };
54
+ /**
55
+ * ---------------------------------------------------------------------------
56
+ * PDA SEEDS (must match on-chain programs)
57
+ * ---------------------------------------------------------------------------
58
+ */
59
+ export const PDA_SEEDS = {
60
+ // GLOBAL CONFIG
61
+ GLOBAL_CONFIG: 'global_config',
62
+
63
+ // liqsol_core: deposit / stake controller
64
+ DEPOSIT_AUTHORITY: 'deposit_authority',
65
+ VAULT: 'vault',
66
+ RESERVE_POOL: 'reserve_pool',
67
+ STAKE_CONTROLLER_STATE: 'stake_controller',
68
+ PAYOUT_STATE: 'payout_state',
69
+
70
+ // liqsol_token: mint + bucket
71
+ LIQSOL_MINT: 'liqsol_mint',
72
+ LIQSOL_MINT_AUTHORITY: 'mint_authority',
73
+ BUCKET_AUTHORITY: 'liqsol_bucket',
74
+
75
+ // distribution program (embedded in liqsol_core)
76
+ DISTRIBUTION_STATE: 'distribution_state',
77
+ USER_RECORD: 'user_record',
78
+
79
+ // pay-rate / price history
80
+ PAY_RATE_HISTORY: 'pay_rate_history',
81
+ PRICE_HISTORY: 'price_history',
82
+
83
+ // validator leaderboard (state + records)
84
+ LEADERBOARD_STATE: 'leaderboard_state',
85
+ VALIDATOR_RECORD: 'validator',
86
+ GLOBAL_STAKE_INFO: 'global_stake_info',
87
+
88
+ // Outpost / Wire pretokens
89
+ OUTPOST_GLOBAL_STATE: 'outpost_global_state',
90
+ LIQSOL_POOL: 'liqsol_pool',
91
+ OUTPOST_ACCOUNT: 'outpost_account',
92
+ USER_PRETOKEN_RECORD: 'user_pretoken_record',
93
+ TRANCHE_STATE: 'tranche_state',
94
+
95
+ // BAR module (bonded actor roles)
96
+ BAR_STATE_SEED: 'bar_state',
97
+ BONDED_ACTOR_SEED: 'bonded_actor',
98
+ BOND_LEVEL_SEED: 'bond_level',
99
+
100
+ // SPL transfer-hook extra account metas
101
+ EXTRA_ACCOUNT_METAS: 'extra-account-metas',
102
+
103
+ // Withdraw module / receipts
104
+ WITHDRAW_GLOBAL: 'global',
105
+ STAKE_ALLOCATION_STATE: 'stake_allocation_state',
106
+ STAKE_METRICS: 'stake_metrics',
107
+ MAINTENANCE_LEDGER: 'maintenance_ledger',
108
+ WITHDRAW_MINT_AUTHORITY: 'mint_authority',
109
+ MINT_METADATA: 'mint_metadata',
110
+ LIQ_RECEIPT_DATA: 'liq_receipt_data',
111
+ WITHDRAW_MINT: 'mint',
112
+
113
+ // New
114
+ PRETOKEN_PURCHASE_HISTORY: 'pretoken_purchase_history',
115
+ } as const;
116
+
117
+ /**
118
+ * Ephemeral stake account address seed helper
119
+ * (this one really is global & chain-agnostic).
120
+ */
121
+ export const deriveEphemeralStakeAddress = async (
122
+ user: PublicKey,
123
+ seed: number,
124
+ ): Promise<PublicKey> => {
125
+ const seedStr = `ephemeral_${seed}`;
126
+ return PublicKey.createWithSeed(user, seedStr, StakeProgram.programId);
127
+ };
128
+
129
+ /**
130
+ * Constant keys (Chainlink)
131
+ */
132
+ export const CHAINLINK_FEED = new PublicKey(
133
+ 'CH31Xns5z3M1cTAbKW34jcxPPciazARpijcHj9rxtemt',
134
+ );
135
+ export const CHAINLINK_PROGRAM = new PublicKey(
136
+ 'HEvSKofvBgfaexv23kMabbYqxasxU3mQ4ibBMEmJWHny',
137
+ );
138
+
139
+ /**
140
+ * ---------------------------------------------------------------------------
141
+ * ECONOMICS & MATH CONSTANTS
142
+ * ---------------------------------------------------------------------------
143
+ */
144
+ export const PAY_RATE_SCALE_FACTOR = BigInt(1_000_000_000_000); // 10^12
145
+ export const DEFAULT_AVERAGE_PAY_RATE = BigInt(191_780_821);
146
+ export const DEFAULT_PAY_RATE_LOOKBACK = 5;
147
+ export const EPHEMERAL_RENT_EXEMPTION = 2_282_880;
148
+
149
+ export const LAMPORTS_PER_SOL = 1_000_000_000;
150
+ export const INDEX_SCALE = BigInt(1_000_000_000_000); // 1e12
151
+
152
+ export const lamportsToSol = (lamports: number | bigint): number =>
153
+ Number(lamports) / LAMPORTS_PER_SOL;
154
+
155
+ export const solToLamports = (sol: number): bigint =>
156
+ BigInt(Math.round(sol * LAMPORTS_PER_SOL));