@wireio/stake 0.2.4 → 0.2.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 (554) hide show
  1. package/README.md +185 -243
  2. package/lib/stake.browser.js +59679 -12796
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +16805 -3254
  5. package/lib/stake.js +60211 -13152
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +59679 -12796
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +6 -3
  10. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.dbg.json +4 -0
  11. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.json +164 -0
  12. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  13. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  14. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  15. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  16. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.dbg.json +4 -0
  17. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.json +618 -0
  18. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  19. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.json +40 -0
  20. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  21. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.json +10 -0
  22. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  23. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.json +10 -0
  24. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  25. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  26. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  27. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.json +49 -0
  28. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  29. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  30. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  31. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.json +1458 -0
  32. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  33. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.json +1532 -0
  34. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  35. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.json +1525 -0
  36. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  37. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.json +1076 -0
  38. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  39. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.json +807 -0
  40. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  41. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
  42. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  43. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  44. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  45. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
  46. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  47. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  48. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  49. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  50. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  51. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  52. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  53. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  54. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  55. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.json +344 -0
  56. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  57. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +59 -0
  58. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  59. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +14 -12
  60. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  61. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/LiqEthCommon.json +2 -2
  62. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  63. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  64. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  65. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  66. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  67. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  68. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  69. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  70. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  71. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.json +1376 -0
  72. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
  73. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.json +629 -0
  74. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  75. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  76. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  77. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
  78. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  79. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  80. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  81. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IAccounting.json +1 -1
  82. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  83. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  84. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  85. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  86. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  87. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  88. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  89. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20.json +37 -1
  90. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  91. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  92. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  93. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  94. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  95. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  96. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  97. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  98. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  99. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  100. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  101. package/src/assets/ethereum/{ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.json → hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json} +140 -78
  102. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  103. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  104. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  105. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +548 -0
  106. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  107. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  108. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  109. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  110. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  111. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  112. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  113. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/Uint64BE.json +2 -2
  114. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  115. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  116. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.dbg.json +4 -0
  117. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.json +1111 -0
  118. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  119. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json +1696 -0
  120. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  121. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  122. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
  123. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
  124. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
  125. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
  126. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
  127. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
  128. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
  129. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
  130. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
  131. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
  132. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.json +1044 -0
  133. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
  134. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +1055 -0
  135. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  136. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +81 -0
  137. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  138. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  139. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
  140. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  141. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  142. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  143. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +41 -0
  144. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  145. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +287 -0
  146. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  147. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +294 -0
  148. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  149. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +415 -0
  150. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  151. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +399 -0
  152. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  153. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +245 -0
  154. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  155. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1204 -0
  156. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  157. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +312 -0
  158. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  159. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +324 -0
  160. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
  161. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.json +1068 -0
  162. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  163. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
  164. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  165. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  166. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  167. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json +751 -0
  168. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  169. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  170. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  171. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  172. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  173. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  174. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  175. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  176. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  177. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
  178. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.json +888 -0
  179. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.dbg.json +4 -0
  180. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.json +659 -0
  181. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
  182. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json +1393 -0
  183. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  184. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
  185. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
  186. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
  187. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
  188. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
  189. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
  190. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
  191. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
  192. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
  193. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
  194. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
  195. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
  196. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
  197. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
  198. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
  199. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
  200. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
  201. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
  202. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
  203. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
  204. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
  205. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
  206. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
  207. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
  208. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
  209. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  210. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  211. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  212. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  213. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  214. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  215. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  216. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  217. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
  218. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  219. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
  220. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.dbg.json +4 -0
  221. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.json +560 -0
  222. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.dbg.json +4 -0
  223. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.json +460 -0
  224. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.dbg.json +4 -0
  225. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.json +624 -0
  226. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.dbg.json +4 -0
  227. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.json +164 -0
  228. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  229. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  230. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  231. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  232. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.dbg.json +4 -0
  233. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.json +618 -0
  234. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  235. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.json +40 -0
  236. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  237. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.json +10 -0
  238. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  239. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.json +10 -0
  240. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  241. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  242. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  243. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.json +49 -0
  244. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  245. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  246. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  247. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.json +1458 -0
  248. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  249. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.json +1532 -0
  250. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  251. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.json +1525 -0
  252. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  253. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json +1076 -0
  254. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  255. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json +807 -0
  256. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  257. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
  258. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
  259. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
  260. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
  261. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
  262. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  263. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  264. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  265. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  266. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  267. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  268. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
  269. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
  270. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  271. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  272. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  273. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  274. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  275. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  276. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  277. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
  278. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  279. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  280. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  281. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  282. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  283. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  284. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  285. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  286. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  287. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  288. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  289. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  290. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  291. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  292. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
  293. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.json +89 -0
  294. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  295. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json +1376 -0
  296. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  297. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  298. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  299. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
  300. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  301. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  302. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  303. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  304. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  305. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  306. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  307. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  308. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  309. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  310. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  311. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  312. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  313. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  314. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  315. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  316. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  317. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  318. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  319. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  320. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  321. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  322. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  323. package/src/assets/ethereum/{ABI/liqEth/RewardsERC20.sol/RewardsERC20.json → mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json} +159 -34
  324. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  325. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  326. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  327. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.json +542 -0
  328. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  329. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  330. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  331. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  332. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  333. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  334. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  335. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  336. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  337. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  338. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.dbg.json +4 -0
  339. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json +1915 -0
  340. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
  341. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json +1845 -0
  342. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  343. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  344. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  345. package/src/assets/ethereum/{ABI → mainnet}/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +31 -81
  346. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.dbg.json +4 -0
  347. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.json +948 -0
  348. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  349. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  350. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  351. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  352. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  353. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  354. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  355. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  356. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  357. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  358. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  359. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  360. package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPInbound.sol/OPPInbound.json +2 -2
  361. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  362. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  363. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  364. package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostErrors.sol/OutpostErrors.json +33 -18
  365. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  366. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
  367. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
  368. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  369. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  370. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  371. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  372. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  373. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  374. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.dbg.json +4 -0
  375. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json +943 -0
  376. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
  377. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json +1703 -0
  378. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  379. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.json +2015 -0
  380. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  381. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  382. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  383. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  384. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  385. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  386. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  387. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  388. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
  389. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/BAR.sol/BAR.json +34 -19
  390. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
  391. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.json +1653 -0
  392. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  393. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/OutpostManager.sol/OutpostManager.json +3 -3
  394. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
  395. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Pool.sol/Pool.json +34 -19
  396. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
  397. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.json +1665 -0
  398. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  399. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  400. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  401. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json +330 -0
  402. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  403. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json +449 -0
  404. package/src/assets/solana/devnet/idl/liqsol_core.json +8566 -0
  405. package/src/assets/solana/{idl → devnet/idl}/liqsol_token.json +35 -1
  406. package/src/assets/solana/devnet/idl/transfer_hook.json +490 -0
  407. package/src/assets/solana/devnet/idl/validator_leaderboard.json +735 -0
  408. package/src/assets/solana/devnet/types/liqsol_core.ts +8572 -0
  409. package/src/assets/solana/{types → devnet/types}/liqsol_token.ts +35 -1
  410. package/src/assets/solana/devnet/types/transfer_hook.ts +496 -0
  411. package/src/assets/solana/devnet/types/validator_leaderboard.ts +741 -0
  412. package/src/assets/solana/{idl → mainnet/idl}/liqsol_core.json +3816 -1567
  413. package/src/assets/solana/mainnet/idl/liqsol_token.json +217 -0
  414. package/src/assets/solana/mainnet/idl/transfer_hook.json +479 -0
  415. package/src/assets/solana/{idl → mainnet/idl}/validator_leaderboard.json +4 -4
  416. package/src/assets/solana/{types → mainnet/types}/liqsol_core.ts +3816 -1567
  417. package/src/assets/solana/mainnet/types/liqsol_token.ts +223 -0
  418. package/src/assets/solana/mainnet/types/transfer_hook.ts +485 -0
  419. package/src/assets/solana/{types → mainnet/types}/validator_leaderboard.ts +4 -4
  420. package/src/assets/solana/realdevnet/idl/liqsol_core.json +7112 -0
  421. package/src/assets/solana/realdevnet/idl/liqsol_token.json +217 -0
  422. package/src/assets/solana/realdevnet/idl/transfer_hook.json +479 -0
  423. package/src/assets/solana/realdevnet/idl/validator_leaderboard.json +735 -0
  424. package/src/assets/solana/realdevnet/types/liqsol_core.ts +7118 -0
  425. package/src/assets/solana/realdevnet/types/liqsol_token.ts +223 -0
  426. package/src/assets/solana/realdevnet/types/transfer_hook.ts +485 -0
  427. package/src/assets/solana/realdevnet/types/validator_leaderboard.ts +741 -0
  428. package/src/index.ts +2 -2
  429. package/src/networks/ethereum/clients/convert.client.ts +221 -0
  430. package/src/networks/ethereum/clients/opp.client.ts +389 -0
  431. package/src/networks/ethereum/clients/pretoken.client.ts +165 -0
  432. package/src/networks/ethereum/clients/receipt.client.ts +199 -0
  433. package/src/networks/ethereum/clients/stake.client.ts +110 -122
  434. package/src/networks/ethereum/clients/validator.client.ts +61 -0
  435. package/src/networks/ethereum/contract.ts +424 -165
  436. package/src/networks/ethereum/ethereum.ts +505 -172
  437. package/src/networks/ethereum/types.ts +71 -30
  438. package/src/networks/ethereum/utils.ts +340 -0
  439. package/src/networks/solana/clients/convert.client.ts +341 -0
  440. package/src/networks/solana/clients/distribution.client.ts +269 -263
  441. package/src/networks/solana/clients/leaderboard.client.ts +68 -26
  442. package/src/networks/solana/clients/outpost.client.ts +224 -357
  443. package/src/networks/solana/clients/token.client.ts +96 -107
  444. package/src/networks/solana/constants.ts +88 -216
  445. package/src/networks/solana/program.ts +432 -28
  446. package/src/networks/solana/solana.ts +1070 -399
  447. package/src/networks/solana/types.ts +688 -75
  448. package/src/networks/solana/utils.ts +160 -359
  449. package/src/staker.ts +25 -4
  450. package/src/types.ts +261 -40
  451. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +0 -4
  452. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json +0 -1114
  453. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +0 -4
  454. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -4
  455. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -4
  456. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -4
  457. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -4
  458. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.json +0 -118
  459. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -4
  460. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -4
  461. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -4
  462. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.dbg.json +0 -4
  463. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.dbg.json +0 -4
  464. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.dbg.json +0 -4
  465. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.json +0 -10
  466. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.dbg.json +0 -4
  467. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.json +0 -10
  468. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.dbg.json +0 -4
  469. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.json +0 -225
  470. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.dbg.json +0 -4
  471. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.json +0 -10
  472. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.dbg.json +0 -4
  473. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.json +0 -10
  474. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +0 -4
  475. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.json +0 -813
  476. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +0 -4
  477. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json +0 -573
  478. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +0 -4
  479. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +0 -1087
  480. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +0 -4
  481. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json +0 -1183
  482. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -4
  483. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +0 -927
  484. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -4
  485. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -4
  486. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json +0 -447
  487. package/src/assets/ethereum/ABI/outpost/BAR.sol/BAR.dbg.json +0 -4
  488. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.dbg.json +0 -4
  489. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.json +0 -1753
  490. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +0 -4
  491. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +0 -4
  492. package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.dbg.json +0 -4
  493. package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.json +0 -930
  494. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPP.dbg.json +0 -4
  495. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +0 -4
  496. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPInbound.dbg.json +0 -4
  497. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +0 -4
  498. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPSender.dbg.json +0 -4
  499. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/OPPCommon.dbg.json +0 -4
  500. package/src/assets/ethereum/ABI/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +0 -4
  501. package/src/assets/ethereum/ABI/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +0 -4
  502. package/src/assets/ethereum/ABI/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +0 -4
  503. package/src/assets/ethereum/ABI/outpost/OPPErrors.sol/OPPErrors.dbg.json +0 -4
  504. package/src/assets/ethereum/ABI/outpost/OPPInbound.sol/OPPInbound.dbg.json +0 -4
  505. package/src/assets/ethereum/ABI/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +0 -4
  506. package/src/assets/ethereum/ABI/outpost/OPPSender.sol/OPPSender.dbg.json +0 -4
  507. package/src/assets/ethereum/ABI/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +0 -4
  508. package/src/assets/ethereum/ABI/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +0 -4
  509. package/src/assets/ethereum/ABI/outpost/OutpostManager.sol/OutpostManager.dbg.json +0 -4
  510. package/src/assets/ethereum/ABI/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +0 -4
  511. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +0 -4
  512. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +0 -4
  513. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +0 -4
  514. package/src/assets/ethereum/ABI/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +0 -4
  515. package/src/assets/ethereum/ABI/outpost/Pool.sol/Pool.dbg.json +0 -4
  516. package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +0 -4
  517. package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.json +0 -2020
  518. package/src/assets/ethereum/ABI/outpost/Warrant.sol/Warrant.dbg.json +0 -4
  519. package/src/assets/ethereum/ABI/outpost/Warrant.sol/Warrant.json +0 -1650
  520. package/src/assets/ethereum/ABI/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +0 -4
  521. package/src/assets/ethereum/ABI/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +0 -4
  522. package/src/assets/ethereum/ABI/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +0 -4
  523. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -4
  524. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +0 -472
  525. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +0 -4
  526. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +0 -330
  527. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +0 -4
  528. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +0 -449
  529. package/src/networks/ethereum/clients/deposit.client.ts +0 -82
  530. package/src/networks/solana/clients/deposit.client.ts +0 -127
  531. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
  532. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
  533. /package/src/assets/ethereum/{ABI → hoodi}/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +0 -0
  534. /package/src/assets/ethereum/{ABI → hoodi}/outpost/OPPCommon.sol/IOPPEndpoint.json +0 -0
  535. /package/src/assets/ethereum/{ABI → hoodi}/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +0 -0
  536. /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IWarrant.sol/IWarrant.json +0 -0
  537. /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +0 -0
  538. /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +0 -0
  539. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPP.json +0 -0
  540. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPInbound.json +0 -0
  541. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPReceiver.json +0 -0
  542. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPSender.json +0 -0
  543. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/OPPCommon.json +0 -0
  544. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpoint.sol/OPPEndpoint.json +0 -0
  545. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +0 -0
  546. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +0 -0
  547. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPErrors.sol/OPPErrors.json +0 -0
  548. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPReceiver.sol/OPPReceiver.json +0 -0
  549. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPSender.sol/OPPSender.json +0 -0
  550. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManaged.sol/OutpostManaged.json +0 -0
  551. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +0 -0
  552. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/IOutpostManager.json +0 -0
  553. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +0 -0
  554. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostOwnable.sol/OutpostOwnable.json +0 -0
@@ -6,32 +6,43 @@ import {
6
6
  ASSOCIATED_TOKEN_PROGRAM_ID,
7
7
  } from '@solana/spl-token';
8
8
 
9
- import { buildOutpostAccounts, type OutpostAccounts, buildSolanaTrancheSnapshot } from '../utils';
10
- import { SolanaProgramService } from '../program';
11
- import { LiqsolCore } from '../../../assets/solana/types/liqsol_core';
9
+ import {
10
+ buildOutpostAccounts,
11
+ type OutpostAccounts,
12
+ } from '../utils';
13
+
14
+ import { LiqsolCoreClientIdl, SolanaProgramService } from '../program';
15
+
12
16
  import {
13
17
  GlobalState,
14
18
  PriceHistory,
15
19
  TrancheState,
16
- UserWarrantRecord,
17
20
  WalletLike,
18
- WireReceipt,
21
+ OutpostAccount,
22
+ UserPretokenRecord,
19
23
  } from '../types';
20
- import { derivePriceHistoryPda } from '../constants';
21
- import type { } from '../types';
22
- import { ChainID, SolChainID } from '@wireio/core';
23
- import { PurchaseAsset, PurchaseQuote, TrancheSnapshot } from '../../../types';
24
+
25
+ import {
26
+ CHAINLINK_FEED,
27
+ CHAINLINK_PROGRAM,
28
+ } from '../constants';
24
29
 
25
30
  export class TokenClient {
26
- private readonly program: Program<LiqsolCore>;
31
+ private readonly program: Program<LiqsolCoreClientIdl>;
27
32
 
28
33
  get wallet(): WalletLike {
29
34
  return this.provider.wallet;
30
35
  }
31
36
 
32
- constructor(private readonly provider: AnchorProvider) {
33
- const svc = new SolanaProgramService(provider);
34
- this.program = svc.getProgram('liqsolCore');
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');
35
46
  }
36
47
 
37
48
  // ---------------------------------------------------------------------------
@@ -39,7 +50,7 @@ export class TokenClient {
39
50
  // ---------------------------------------------------------------------------
40
51
 
41
52
  async getAccounts(user: PublicKey): Promise<OutpostAccounts> {
42
- return buildOutpostAccounts(this.provider.connection, user);
53
+ return buildOutpostAccounts(this.provider.connection, user, this.pgs);
43
54
  }
44
55
 
45
56
  async fetchGlobalState(): Promise<GlobalState> {
@@ -52,132 +63,106 @@ export class TokenClient {
52
63
  return this.program.account.trancheState.fetch(trancheState);
53
64
  }
54
65
 
55
- async fetchWireReceipt(user: PublicKey): Promise<WireReceipt> {
56
- const { wireReceipt } = await this.getAccounts(user);
57
- return this.program.account.wireReceipt.fetch(wireReceipt);
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);
58
73
  }
59
74
 
60
- async fetchUserWarrantRecord(user: PublicKey): Promise<UserWarrantRecord> {
61
- const { userWarrantRecord } = await this.getAccounts(user);
62
- return this.program.account.userWarrantRecord.fetch(userWarrantRecord);
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
+ );
63
86
  }
64
87
 
65
- // ---------------------------------------------------------------------------
66
- // Tranche snapshot / quoting
67
- // ---------------------------------------------------------------------------
68
-
69
88
  // ---------------------------------------------------------------------------
70
89
  // Instruction builders (no send / confirm)
71
90
  // ---------------------------------------------------------------------------
72
91
 
73
- async buildPurchaseWithSolIx(
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(
74
99
  amountLamports: bigint,
75
100
  user = this.wallet.publicKey,
76
101
  ): Promise<TransactionInstruction> {
102
+ console.log('build purchase for', user.toBase58());
103
+
77
104
  const a = await this.getAccounts(user);
78
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
+
79
110
  return this.program.methods
80
- .purchaseWithSol(new BN(amountLamports.toString()))
111
+ .purchase(new BN(amountLamports.toString()))
81
112
  .accounts({
82
113
  user: a.user,
83
114
  liqsolMint: a.liqsolMint,
84
115
  globalState: a.globalState,
116
+ distributionState: a.distributionState,
85
117
 
118
+ // buyer’s liqSOL
119
+ buyerAta: a.userAta,
120
+
121
+ // pool / bucket context
86
122
  poolAuthority: a.poolAuthority,
87
- liqsolPoolAta: a.liqsolPoolAta,
88
- liqsolPoolUserRecord: a.poolUserRecord,
89
- distributionState: a.distributionState,
90
- payRateHistory: a.payRateHistory,
91
123
  bucketAuthority: a.bucketAuthority,
92
124
  bucketTokenAccount: a.bucketTokenAccount,
93
- solBucket: a.solBucket,
94
-
95
- // IDL name is warrantDepositRecord (wireReceipt PDA)
96
- warrantDepositRecord: a.wireReceipt,
97
-
98
- trancheState: a.trancheState,
99
- userWarrantRecord: a.userWarrantRecord,
100
-
101
- chainlinkFeed: a.chainLinkFeed,
102
- chainlinkProgram: a.chainLinkProgram,
103
-
104
- tokenProgram: TOKEN_2022_PROGRAM_ID,
105
- systemProgram: SystemProgram.programId,
106
- })
107
- .instruction();
108
- }
125
+ bucketUserRecord: a.bucketUserRecord,
109
126
 
110
- async buildPurchaseWithLiqsolIx(
111
- amountLamports: bigint,
112
- user = this.wallet.publicKey,
113
- ): Promise<TransactionInstruction> {
114
- const a = await this.getAccounts(user);
127
+ // distribution userRecords (token-account keyed)
128
+ senderUserRecord: a.userUserRecord,
129
+ receiverUserRecord: a.liqsolPoolUserRecord,
115
130
 
116
- return this.program.methods
117
- .purchaseWithLiqsol(new BN(amountLamports.toString()))
118
- .accounts({
119
- user: a.user,
120
- liqsolMint: a.liqsolMint,
121
- globalState: a.globalState,
131
+ // transfer-hook wiring
132
+ extraAccountMetaList,
133
+ liqsolCoreProgram,
134
+ transferHookProgram,
122
135
 
123
- buyerAta: a.userAta,
124
- poolAuthority: a.poolAuthority,
136
+ // pool + outpost + tranche
125
137
  liqsolPoolAta: a.liqsolPoolAta,
126
-
127
- warrantDepositRecord: a.wireReceipt,
128
-
129
- liqsolPoolUserRecord: a.poolUserRecord,
130
- distributionState: a.distributionState,
131
- payRateHistory: a.payRateHistory,
132
- bucketAuthority: a.bucketAuthority,
133
- bucketTokenAccount: a.bucketTokenAccount,
134
- solBucket: a.solBucket,
135
-
138
+ outpostAccount: a.outpostAccount,
136
139
  trancheState: a.trancheState,
137
- userWarrantRecord: a.userWarrantRecord,
140
+ userPretokenRecord: a.userPretokenRecord,
138
141
 
139
- chainlinkFeed: a.chainLinkFeed,
140
- chainlinkProgram: a.chainLinkProgram,
142
+ // Chainlink pricing
143
+ chainlinkFeed: a.chainLinkFeed ?? CHAINLINK_FEED,
144
+ chainlinkProgram: a.chainLinkProgram ?? CHAINLINK_PROGRAM,
141
145
 
142
146
  tokenProgram: TOKEN_2022_PROGRAM_ID,
143
147
  associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ID,
144
148
  systemProgram: SystemProgram.programId,
145
- })
146
- .instruction();
147
- }
148
-
149
- async buildPurchaseFromYieldIx(
150
- user = this.wallet.publicKey,
151
- ): Promise<TransactionInstruction> {
152
- const a = await this.getAccounts(user);
153
-
154
- return this.program.methods
155
- .purchaseWarrantsFromYield()
156
- .accounts({
157
- user: a.user,
158
- globalState: a.globalState,
159
- liqsolMint: a.liqsolMint,
160
- poolAuthority: a.poolAuthority,
161
- liqsolPoolAta: a.liqsolPoolAta,
162
- solBucket: a.solBucket,
163
149
 
164
- liqsolPoolUserRecord: a.poolUserRecord,
165
- distributionState: a.distributionState,
166
- payRateHistory: a.payRateHistory,
167
- bucketAuthority: a.bucketAuthority,
168
- bucketTokenAccount: a.bucketTokenAccount,
150
+ pretokenPurchaseHistory: a.pretokenPurchaseHistory,
169
151
 
170
- trancheState: a.trancheState,
171
- userWarrantRecord: a.userWarrantRecord,
172
- chainlinkFeed: a.chainLinkFeed,
173
- chainlinkProgram: a.chainLinkProgram,
174
-
175
- tokenProgram: TOKEN_2022_PROGRAM_ID,
176
- systemProgram: SystemProgram.programId,
152
+ globalConfig: a.globalConfig,
153
+ oppEpochState: a.oppEpochState,
154
+ pendingAttestations: a.pendingAttestations
177
155
  })
178
156
  .instruction();
179
157
  }
180
158
 
159
+ // NOTE:
160
+ // - There is no longer `purchaseWithSol` in the IDL - SOL → liqSOL happens
161
+ // through the deposit / liqSOL minting path, not directly in pretokens.
162
+ // - `purchaseFromYield` is an operator-facing / protocol flow and you
163
+ // indicated you’ll trigger it from Wire infra, so we don’t expose a
164
+ // client helper here for now.
165
+
181
166
  // ---------------------------------------------------------------------------
182
167
  // Price helpers (SOL/USD via priceHistory account)
183
168
  // ---------------------------------------------------------------------------
@@ -194,10 +179,10 @@ export class TokenClient {
194
179
 
195
180
  /**
196
181
  * Fetch latest SOL/USD price (1e8 scale) from liqsol_core.priceHistory.
197
- * Uses the ring-buffer semantics from earlier SDK code.
182
+ * Uses the ring-buffer semantics from capital-staking.
198
183
  */
199
184
  async getSolPriceUsd(): Promise<bigint> {
200
- const priceHistoryPda = derivePriceHistoryPda();
185
+ const priceHistoryPda = this.pgs.derivePriceHistoryPda();
201
186
  const history = (await this.program.account.priceHistory.fetch(
202
187
  priceHistoryPda,
203
188
  )) as PriceHistory;
@@ -205,19 +190,23 @@ export class TokenClient {
205
190
  const { prices, nextIndex, count, windowSize } = history;
206
191
 
207
192
  if (!prices || prices.length === 0 || !count) {
208
- throw new Error('Price history is empty no SOL price available');
193
+ throw new Error('Price history is empty - no SOL price available');
209
194
  }
210
195
 
211
196
  const capacity = prices.length || windowSize;
212
197
  if (!capacity) {
213
- throw new Error('Price history capacity is zero – check account layout');
198
+ throw new Error(
199
+ 'Price history capacity is zero - check account layout',
200
+ );
214
201
  }
215
202
 
216
203
  const lastIndex = nextIndex === 0 ? capacity - 1 : nextIndex - 1;
217
204
  const latest = prices[lastIndex];
218
205
 
219
206
  if (!BN.isBN(latest)) {
220
- throw new Error('Latest price entry is not a BN – check IDL/decoder');
207
+ throw new Error(
208
+ 'Latest price entry is not a BN - check IDL/decoder',
209
+ );
221
210
  }
222
211
 
223
212
  return BigInt(latest.toString());
@@ -1,43 +1,65 @@
1
1
  // src/networks/solana/constants.ts
2
2
  import { PublicKey, StakeProgram } from '@solana/web3.js';
3
+ import { SolChainID } from '@wireio/core';
3
4
 
4
- import liqsolCoreIDL from "../../assets/solana/idl/liqsol_core.json";
5
- import liqSolTokenIDL from "../../assets/solana/idl/liqsol_token.json";
6
- import validatorLeaderboardIDL from "../../assets/solana/idl/validator_leaderboard.json";
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';
7
15
 
8
16
  /**
9
- * ---------------------------------------------------------------------------
10
- * PROGRAM IDS
11
- * ---------------------------------------------------------------------------
12
- *
13
- * These should match:
14
- * - `metadata.address` in your Anchor IDLs under src/assets/solana/idl/*.json
15
- * - The program IDs printed by your deploy scripts
17
+ * Per-chain program IDs (NOT global anymore).
16
18
  */
17
- // Extract program IDs from IDL files
18
- export const PROGRAM_IDS = {
19
- LIQSOL_CORE: new PublicKey(liqsolCoreIDL.address),
20
- LIQSOL_TOKEN: new PublicKey(liqSolTokenIDL.address),
21
- VALIDATOR_LEADERBOARD: new PublicKey(validatorLeaderboardIDL.address),
22
- } as const;
19
+ export type SolanaProgramIds = {
20
+ LIQSOL_CORE: PublicKey;
21
+ LIQSOL_TOKEN: PublicKey;
22
+ VALIDATOR_LEADERBOARD: PublicKey;
23
+ TRANSFER_HOOK: PublicKey;
24
+ ALT: PublicKey;
25
+ };
23
26
 
24
- // Export individual program IDs for convenience
25
- export const {
26
- LIQSOL_CORE,
27
- LIQSOL_TOKEN,
28
- VALIDATOR_LEADERBOARD,
29
- } = PROGRAM_IDS;
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;
52
+ };
30
53
 
31
54
  /**
32
55
  * ---------------------------------------------------------------------------
33
56
  * PDA SEEDS (must match on-chain programs)
34
57
  * ---------------------------------------------------------------------------
35
- *
36
- * These strings are baked into the on-chain programs and are already used in
37
- * your test utils. We centralize them here so all clients share them.
38
58
  */
39
-
40
59
  export const PDA_SEEDS = {
60
+ // GLOBAL CONFIG
61
+ GLOBAL_CONFIG: 'global_config',
62
+
41
63
  // liqsol_core: deposit / stake controller
42
64
  DEPOSIT_AUTHORITY: 'deposit_authority',
43
65
  VAULT: 'vault',
@@ -54,236 +76,86 @@ export const PDA_SEEDS = {
54
76
  DISTRIBUTION_STATE: 'distribution_state',
55
77
  USER_RECORD: 'user_record',
56
78
 
57
- // pay-rate history
79
+ // pay-rate / price history
58
80
  PAY_RATE_HISTORY: 'pay_rate_history',
81
+ PRICE_HISTORY: 'price_history',
59
82
 
60
83
  // validator leaderboard (state + records)
61
84
  LEADERBOARD_STATE: 'leaderboard_state',
62
85
  VALIDATOR_RECORD: 'validator',
63
86
  GLOBAL_STAKE_INFO: 'global_stake_info',
64
87
 
65
- // Outpost
66
- WARRANT_DEPOSIT_GLOBAL: 'warrant_deposit_global',
88
+ // Outpost / Wire pretokens
89
+ OUTPOST_GLOBAL_STATE: 'outpost_global_state',
67
90
  LIQSOL_POOL: 'liqsol_pool',
68
- WARRANT_DEPOSIT_RECORD: 'warrant_deposit_record',
69
- WIRE_SOL_BUCKET: 'wire_sol_bucket',
91
+ OUTPOST_ACCOUNT: 'outpost_account',
92
+ USER_PRETOKEN_RECORD: 'user_pretoken_record',
70
93
  TRANCHE_STATE: 'tranche_state',
71
- USER_WARRANT_RECORD: 'user_warrant_record',
72
94
 
73
- // BAR
95
+ // BAR module (bonded actor roles)
74
96
  BAR_STATE_SEED: 'bar_state',
75
97
  BONDED_ACTOR_SEED: 'bonded_actor',
76
98
  BOND_LEVEL_SEED: 'bond_level',
77
99
 
78
- // Other?
79
- PRICE_HISTORY: 'price_history',
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
+
116
+ // OPP (outpost protocol pipeline)
117
+ OPP_EPOCH_STATE: 'opp_epoch_state',
118
+ PENDING_ATTESTATIONS: 'pending_attestations',
119
+ OPP_BRIDGE_STATE: 'opp_bridge_state',
80
120
  } as const;
81
121
 
82
122
  /**
83
- * Helpers for PDA derivation so clients don’t duplicate logic.
84
- */
85
- export const deriveLiqsolMintPda = () =>
86
- PublicKey.findProgramAddressSync(
87
- [Buffer.from(PDA_SEEDS.LIQSOL_MINT)],
88
- PROGRAM_IDS.LIQSOL_TOKEN,
89
- )[0];
90
-
91
- export const deriveLiqsolMintAuthorityPda = () =>
92
- PublicKey.findProgramAddressSync(
93
- [Buffer.from(PDA_SEEDS.LIQSOL_MINT_AUTHORITY)],
94
- PROGRAM_IDS.LIQSOL_TOKEN,
95
- )[0];
96
-
97
- export const deriveDepositAuthorityPda = () =>
98
- PublicKey.findProgramAddressSync(
99
- [Buffer.from(PDA_SEEDS.DEPOSIT_AUTHORITY)],
100
- PROGRAM_IDS.LIQSOL_CORE,
101
- )[0];
102
-
103
- export const deriveVaultPda = () =>
104
- PublicKey.findProgramAddressSync(
105
- [Buffer.from(PDA_SEEDS.VAULT)],
106
- PROGRAM_IDS.LIQSOL_CORE,
107
- )[0];
108
-
109
- export const deriveReservePoolPda = () =>
110
- PublicKey.findProgramAddressSync(
111
- [Buffer.from(PDA_SEEDS.RESERVE_POOL)],
112
- PROGRAM_IDS.LIQSOL_CORE,
113
- )[0];
114
-
115
- export const deriveStakeControllerStatePda = () =>
116
- PublicKey.findProgramAddressSync(
117
- [Buffer.from(PDA_SEEDS.STAKE_CONTROLLER_STATE)],
118
- PROGRAM_IDS.LIQSOL_CORE,
119
- )[0];
120
-
121
- export const derivePayoutStatePda = () =>
122
- PublicKey.findProgramAddressSync(
123
- [Buffer.from(PDA_SEEDS.PAYOUT_STATE)],
124
- PROGRAM_IDS.LIQSOL_CORE,
125
- )[0];
126
-
127
- export const deriveBucketAuthorityPda = () =>
128
- PublicKey.findProgramAddressSync(
129
- [Buffer.from(PDA_SEEDS.BUCKET_AUTHORITY)],
130
- PROGRAM_IDS.LIQSOL_CORE,
131
- )[0];
132
-
133
- export const deriveDistributionStatePda = () =>
134
- PublicKey.findProgramAddressSync(
135
- [Buffer.from(PDA_SEEDS.DISTRIBUTION_STATE)],
136
- PROGRAM_IDS.LIQSOL_CORE,
137
- )[0];
138
-
139
- export const deriveUserRecordPda = (user: PublicKey) =>
140
- PublicKey.findProgramAddressSync(
141
- [Buffer.from(PDA_SEEDS.USER_RECORD), user.toBuffer()],
142
- PROGRAM_IDS.LIQSOL_CORE,
143
- )[0];
144
-
145
- export const derivePayRateHistoryPda = () =>
146
- PublicKey.findProgramAddressSync(
147
- [Buffer.from(PDA_SEEDS.PAY_RATE_HISTORY)],
148
- PROGRAM_IDS.LIQSOL_CORE,
149
- )[0];
150
-
151
- export const deriveLeaderboardStatePda = () =>
152
- PublicKey.findProgramAddressSync(
153
- [Buffer.from(PDA_SEEDS.LEADERBOARD_STATE)],
154
- PROGRAM_IDS.VALIDATOR_LEADERBOARD,
155
- )[0];
156
-
157
- export const deriveValidatorRecordPda = (voteAccount: PublicKey) =>
158
- PublicKey.findProgramAddressSync(
159
- [Buffer.from(PDA_SEEDS.VALIDATOR_RECORD), voteAccount.toBuffer()],
160
- PROGRAM_IDS.VALIDATOR_LEADERBOARD,
161
- )[0];
162
-
163
- export const deriveStakeControllerVaultPda = () =>
164
- PublicKey.findProgramAddressSync(
165
- [Buffer.from(PDA_SEEDS.VAULT)],
166
- PROGRAM_IDS.LIQSOL_CORE,
167
- )[0];
168
-
169
- /**
170
- * OUTPOST
171
- */
172
- export const deriveOutpostGlobalStatePda = () =>
173
- PublicKey.findProgramAddressSync(
174
- [Buffer.from(PDA_SEEDS.WARRANT_DEPOSIT_GLOBAL)],
175
- LIQSOL_CORE,
176
- )[0];
177
-
178
- export const deriveOutpostPoolAuthorityPda = () =>
179
- PublicKey.findProgramAddressSync(
180
- [Buffer.from(PDA_SEEDS.LIQSOL_POOL)],
181
- LIQSOL_CORE,
182
- )[0];
183
-
184
- export const deriveWireReceiptPda = (user: PublicKey) =>
185
- PublicKey.findProgramAddressSync(
186
- [Buffer.from(PDA_SEEDS.WARRANT_DEPOSIT_RECORD), user.toBuffer()],
187
- LIQSOL_CORE,
188
- )[0];
189
-
190
- export const derivePoolUserRecordPda = (poolAuthority: PublicKey) =>
191
- PublicKey.findProgramAddressSync(
192
- [Buffer.from(PDA_SEEDS.USER_RECORD), poolAuthority.toBuffer()],
193
- LIQSOL_CORE,
194
- )[0];
195
-
196
- export const deriveUserUserRecordPda = (user: PublicKey) =>
197
- PublicKey.findProgramAddressSync(
198
- [Buffer.from(PDA_SEEDS.USER_RECORD), user.toBuffer()],
199
- LIQSOL_CORE,
200
- )[0];
201
-
202
- export const deriveSolBucketPda = () =>
203
- PublicKey.findProgramAddressSync(
204
- [Buffer.from(PDA_SEEDS.WIRE_SOL_BUCKET)],
205
- LIQSOL_CORE,
206
- )[0];
207
-
208
- export const deriveTrancheStatePda = () =>
209
- PublicKey.findProgramAddressSync(
210
- [Buffer.from(PDA_SEEDS.TRANCHE_STATE)],
211
- LIQSOL_CORE,
212
- )[0];
213
-
214
- export const deriveUserWarrantRecordPda = (user: PublicKey) =>
215
- PublicKey.findProgramAddressSync(
216
- [Buffer.from(PDA_SEEDS.USER_WARRANT_RECORD), user.toBuffer()],
217
- LIQSOL_CORE,
218
- )[0];
219
-
220
- export const deriveBarConfigPda = () =>
221
- PublicKey.findProgramAddressSync(
222
- [Buffer.from(PDA_SEEDS.BAR_STATE_SEED)],
223
- LIQSOL_CORE,
224
- )[0];
225
-
226
- export const deriveBondLevelPda = (bondLevelId: number[]) =>
227
- PublicKey.findProgramAddressSync(
228
- [Buffer.from(PDA_SEEDS.BOND_LEVEL_SEED), Buffer.from(bondLevelId)],
229
- LIQSOL_CORE,
230
- )[0];
231
-
232
- export const deriveBondedActorPda = (actor: PublicKey) =>
233
- PublicKey.findProgramAddressSync(
234
- [Buffer.from(PDA_SEEDS.BONDED_ACTOR_SEED), actor.toBuffer()],
235
- LIQSOL_CORE,
236
- )[0];
237
-
238
- export const derivePriceHistoryPda = () =>
239
- PublicKey.findProgramAddressSync(
240
- [Buffer.from(PDA_SEEDS.PRICE_HISTORY)],
241
- LIQSOL_CORE,
242
- )[0];
243
-
244
- /**
245
- * Ephemeral stake account address used per-deposit.
246
- * On-chain convention: seed = `ephemeral_<u32>` under StakeProgram.programId.
123
+ * Ephemeral stake account address seed helper
124
+ * (this one really is global & chain-agnostic).
247
125
  */
248
126
  export const deriveEphemeralStakeAddress = async (
249
127
  user: PublicKey,
250
- seed: any,
128
+ seed: number,
251
129
  ): Promise<PublicKey> => {
252
130
  const seedStr = `ephemeral_${seed}`;
253
- return await PublicKey.createWithSeed(user, seedStr, StakeProgram.programId);
131
+ return PublicKey.createWithSeed(user, seedStr, StakeProgram.programId);
254
132
  };
255
133
 
256
134
  /**
257
- * Constant keys
135
+ * Constant keys (Chainlink)
258
136
  */
259
-
260
- export const CHAINLINK_FEED = new PublicKey("99B2bTijsU6f1GCT73HmdR7HCFFjGMBcPZY6jZ96ynrR");
261
- export const CHAINLINK_PROGRAM = new PublicKey("HEvSKofvBgfaexv23kMabbYqxasxU3mQ4ibBMEmJWHny");
137
+ export const CHAINLINK_FEED = new PublicKey(
138
+ 'CH31Xns5z3M1cTAbKW34jcxPPciazARpijcHj9rxtemt',
139
+ );
140
+ export const CHAINLINK_PROGRAM = new PublicKey(
141
+ 'HEvSKofvBgfaexv23kMabbYqxasxU3mQ4ibBMEmJWHny',
142
+ );
262
143
 
263
144
  /**
264
145
  * ---------------------------------------------------------------------------
265
146
  * ECONOMICS & MATH CONSTANTS
266
147
  * ---------------------------------------------------------------------------
267
148
  */
268
-
269
- // Same scale factor used on-chain for pay-rate math
270
149
  export const PAY_RATE_SCALE_FACTOR = BigInt(1_000_000_000_000); // 10^12
271
-
272
- // Default pay rate fallback used in tests & utils
273
150
  export const DEFAULT_AVERAGE_PAY_RATE = BigInt(191_780_821);
274
-
275
- // How many history entries to average when computing expected fee
276
151
  export const DEFAULT_PAY_RATE_LOOKBACK = 5;
277
-
278
- // Rent exemption for ephemeral stake account (lamports)
279
- // Mirrors EPHEMERAL_RENT_EXEMPTION = 2_282_880 used in tests
280
152
  export const EPHEMERAL_RENT_EXEMPTION = 2_282_880;
281
153
 
282
- // For convenience: lamports <-> SOL helpers (no RPC dependency)
283
154
  export const LAMPORTS_PER_SOL = 1_000_000_000;
155
+ export const INDEX_SCALE = BigInt(1_000_000_000_000); // 1e12
284
156
 
285
157
  export const lamportsToSol = (lamports: number | bigint): number =>
286
158
  Number(lamports) / LAMPORTS_PER_SOL;
287
159
 
288
160
  export const solToLamports = (sol: number): bigint =>
289
- BigInt(Math.round(sol * LAMPORTS_PER_SOL));
161
+ BigInt(Math.round(sol * LAMPORTS_PER_SOL));