@raac/rpc 2.0.0-beta.1 → 2.0.0-beta.3

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 (579) hide show
  1. package/dist/RPCLibrary.js +57 -23
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +2 -2
  3. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +8 -2
  4. package/dist/artifacts/core/governance/gauges/GaugeRewardsDistributor.sol/GaugeRewardsDistributor.json +2 -2
  5. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +2 -2
  6. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +2 -2
  7. package/dist/artifacts/core/lockers/RAACMaturityVault.sol/RAACMaturityVault.json +2 -2
  8. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.json +2 -2
  9. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +62 -86
  10. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +2 -2
  11. package/dist/artifacts/core/psm/PSMVault.sol/PSMVault.json +2303 -0
  12. package/dist/artifacts/core/psm/RateProvider.sol/RateProvider.json +444 -0
  13. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +2 -2
  14. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +69 -66
  15. package/dist/artifacts/zeno/Auction.sol/Auction.json +278 -120
  16. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +31 -148
  17. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +80 -45
  18. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +11 -88
  19. package/dist/assets/getAsset.js +2 -2
  20. package/dist/assets/getSupply.js +7 -7
  21. package/dist/configs/chains/1.json +18 -0
  22. package/dist/configs/chains/11155111.json +4 -0
  23. package/dist/configs/chains/17000.json +4 -0
  24. package/dist/configs/chains/18453.json +4 -0
  25. package/dist/configs/chains/8453.json +4 -0
  26. package/dist/contracts/feeCollector/claimRewardFromPool.js +2 -2
  27. package/dist/contracts/findContract.js +10 -9
  28. package/dist/contracts/getContractAddress.js +1 -2
  29. package/dist/contracts/getTokenMetadata.js +31 -0
  30. package/dist/contracts/governance/_helpers.js +1 -22
  31. package/dist/contracts/governance/distributor/claimAll.js +2 -2
  32. package/dist/contracts/governance/distributor/claimForGauge.js +2 -2
  33. package/dist/contracts/governance/distributor/deposit.js +2 -2
  34. package/dist/contracts/governance/distributor/setController.js +2 -2
  35. package/dist/contracts/governance/distributor/setLastClaimedEpoch.js +2 -2
  36. package/dist/contracts/governance/distributor/setMaxClaimBound.js +2 -2
  37. package/dist/contracts/governance/distributor/withdrawDust.js +2 -2
  38. package/dist/contracts/governance/distributor/withdrawRemovedGaugeRewards.js +2 -2
  39. package/dist/contracts/governance/gauge/claimRewardToken.js +2 -3
  40. package/dist/contracts/governance/gauge/pullRewardsFromDistributor.js +2 -2
  41. package/dist/contracts/governance/gauge/stake.js +2 -3
  42. package/dist/contracts/governance/gauge/updateUserRewards.js +2 -3
  43. package/dist/contracts/governance/gauge/withdraw.js +2 -3
  44. package/dist/contracts/governance/gaugeController/addGauge.js +2 -2
  45. package/dist/contracts/governance/gaugeController/batchVote.js +2 -2
  46. package/dist/contracts/governance/gaugeController/forceCompleteCheckpoint.js +2 -2
  47. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeight.js +2 -2
  48. package/dist/contracts/governance/gaugeController/kick.js +2 -2
  49. package/dist/contracts/governance/gaugeController/removeGauge.js +2 -2
  50. package/dist/contracts/governance/gaugeController/removePowerFromGauge.js +2 -2
  51. package/dist/contracts/governance/gaugeController/setBoostAmplificationEnabled.js +2 -2
  52. package/dist/contracts/governance/gaugeController/setDistributor.js +2 -2
  53. package/dist/contracts/governance/gaugeController/setEmergencyGaugePause.js +2 -2
  54. package/dist/contracts/governance/gaugeController/setEmergencyGaugePauseBatch.js +2 -2
  55. package/dist/contracts/governance/gaugeController/setEmergencyPause.js +2 -2
  56. package/dist/contracts/governance/gaugeController/setMaxVoteBuckets.js +2 -2
  57. package/dist/contracts/governance/gaugeController/vote.js +2 -2
  58. package/dist/contracts/governance/proposals/cancel.js +3 -4
  59. package/dist/contracts/governance/proposals/castVote.js +4 -4
  60. package/dist/contracts/governance/proposals/execute.js +3 -4
  61. package/dist/contracts/governance/proposals/getVoteReceipt.js +0 -1
  62. package/dist/contracts/governance/proposals/propose.js +3 -4
  63. package/dist/contracts/governance/proposals/setParameter.js +3 -4
  64. package/dist/contracts/governance/proposals/setTimelock.js +3 -4
  65. package/dist/contracts/housePrices/getLatestPrice.js +3 -3
  66. package/dist/contracts/housePrices/setOracle.js +3 -4
  67. package/dist/contracts/lockers/liquidLocker/deposit.js +12 -4
  68. package/dist/contracts/lockers/liquidLocker/hasHarvestRole.js +15 -0
  69. package/dist/contracts/pmBlender/getReserveBalance.js +3 -3
  70. package/dist/contracts/pmBlender/getSupportedTokens.js +0 -1
  71. package/dist/contracts/pmBlender/previewDeposit.js +3 -3
  72. package/dist/contracts/pmBlender/previewSwap.js +3 -3
  73. package/dist/contracts/pmBlender/previewWithdraw.js +3 -3
  74. package/dist/contracts/pmMarket/getMarketConfig.js +3 -3
  75. package/dist/contracts/pmTreasury/getCollateralRatio.js +4 -2
  76. package/dist/contracts/pmTreasury/getCurrentNav.js +4 -2
  77. package/dist/contracts/pmTreasury/getLeverageRatio.js +4 -2
  78. package/dist/contracts/pmTreasury/getMaxMintablePMUSD.js +4 -2
  79. package/dist/contracts/pmTreasury/getMaxMintablePMUSDWithoutBaseToken.js +4 -2
  80. package/dist/contracts/pmTreasury/getMaxMintableXPM.js +4 -2
  81. package/dist/contracts/pmTreasury/getMaxRedeemablePMUSD.js +4 -2
  82. package/dist/contracts/pmTreasury/getMaxRedeemableXPM.js +4 -2
  83. package/dist/contracts/pmTreasury/getTotalBaseToken.js +4 -2
  84. package/dist/contracts/psm/_helpers.js +68 -0
  85. package/dist/contracts/psm/cancelExit.js +20 -0
  86. package/dist/contracts/psm/deposit.js +25 -0
  87. package/dist/contracts/psm/getVaultInfo.js +126 -0
  88. package/dist/contracts/psm/previewDeposit.js +21 -0
  89. package/dist/contracts/psm/previewProportionalSplit.js +19 -0
  90. package/dist/contracts/psm/previewRedeem.js +21 -0
  91. package/dist/contracts/psm/previewSwap.js +21 -0
  92. package/dist/contracts/psm/redeem.js +25 -0
  93. package/dist/contracts/psm/requestExit.js +20 -0
  94. package/dist/contracts/psm/swap.js +24 -0
  95. package/dist/contracts/resolveName.js +1 -1
  96. package/dist/contracts/tokens/veRAAC/_helpers.js +0 -2
  97. package/dist/contracts/tokens/veRAAC/claimReward.js +3 -4
  98. package/dist/contracts/tokens/veRAAC/distributeRewards.js +3 -4
  99. package/dist/contracts/tokens/veRAAC/extend.js +3 -4
  100. package/dist/contracts/tokens/veRAAC/finalizeRagequit.js +3 -4
  101. package/dist/contracts/tokens/veRAAC/getRewardTokens.js +34 -0
  102. package/dist/contracts/tokens/veRAAC/getTotalSupply.js +0 -1
  103. package/dist/contracts/tokens/veRAAC/getTotalSupplyAt.js +1 -1
  104. package/dist/contracts/tokens/veRAAC/increase.js +3 -4
  105. package/dist/contracts/tokens/veRAAC/lock.js +3 -4
  106. package/dist/contracts/tokens/veRAAC/ragequitAll.js +3 -4
  107. package/dist/contracts/tokens/veRAAC/ragequitLock.js +3 -4
  108. package/dist/contracts/tokens/veRAAC/withdraw.js +3 -4
  109. package/dist/contracts/zeno/createAuction.js +30 -15
  110. package/dist/contracts/zeno/createZeno.js +23 -12
  111. package/dist/contracts/zeno/getAuctions.js +35 -33
  112. package/dist/contracts/zeno/getZenos.js +32 -16
  113. package/dist/generated/errors.json +3537 -0
  114. package/dist/index.js +1 -0
  115. package/dist/methods/approveToken.js +2 -4
  116. package/dist/methods/commons/checkAllowance.js +2 -3
  117. package/dist/methods/commons/estimateGasPrice.js +0 -1
  118. package/dist/methods/getAssetBalance.js +4 -4
  119. package/dist/nfts/approveNFT.js +3 -5
  120. package/dist/nfts/getAllTokens.js +3 -4
  121. package/dist/nfts/getApprovalForAll.js +3 -4
  122. package/dist/nfts/getBaseUri.js +3 -4
  123. package/dist/nfts/getHousePrice.js +3 -3
  124. package/dist/nfts/getMintFeePercentage.js +3 -3
  125. package/dist/nfts/getMintPrice.js +3 -3
  126. package/dist/nfts/getNFTApproval.js +3 -4
  127. package/dist/nfts/getOwnerOfNFT.js +3 -5
  128. package/dist/nfts/getTokenURI.js +3 -4
  129. package/dist/nfts/getTokensByOwner.js +3 -4
  130. package/dist/nfts/getTotalPropertiesCount.js +3 -4
  131. package/dist/nfts/mint.js +3 -5
  132. package/dist/nfts/setApprovalForAll.js +3 -5
  133. package/dist/nfts/setBaseUri.js +3 -4
  134. package/dist/nfts/totalNFTSupply.js +3 -3
  135. package/dist/oracles/houses/request.js +2 -15
  136. package/dist/oracles/houses/simulate.js +0 -3
  137. package/dist/oracles/prime-rate/request.js +2 -16
  138. package/dist/oracles/prime-rate/simulate.js +0 -4
  139. package/dist/pools/lendingPool/adapters/erc20/getERC20AdapterBalance.js +2 -2
  140. package/dist/pools/lendingPool/adapters/erc20/getERC20AdapterInfo.js +4 -2
  141. package/dist/pools/lendingPool/adapters/erc721/getERC721AdapterDeposits.js +4 -3
  142. package/dist/pools/lendingPool/adapters/erc721/getERC721AdapterInfo.js +4 -3
  143. package/dist/pools/lendingPool/borrowFromLendingPool.js +4 -2
  144. package/dist/pools/lendingPool/borrowFromLendingPoolWithInsurance.js +3 -8
  145. package/dist/pools/lendingPool/calculateInsuranceFee.js +4 -2
  146. package/dist/pools/lendingPool/closeLiquidation.js +4 -2
  147. package/dist/pools/lendingPool/depositAssetToLendingPool.js +4 -2
  148. package/dist/pools/lendingPool/depositToLendingPool.js +4 -6
  149. package/dist/pools/lendingPool/getAdapters.js +4 -2
  150. package/dist/pools/lendingPool/getEligibleUserDeposits.js +4 -2
  151. package/dist/pools/lendingPool/getHealthFactor.js +4 -2
  152. package/dist/pools/lendingPool/getHousePrice.js +3 -3
  153. package/dist/pools/lendingPool/getLendingPoolInfo.js +3 -2
  154. package/dist/pools/lendingPool/getLendingPoolTotalLiquidity.js +4 -2
  155. package/dist/pools/lendingPool/getParameters.js +4 -2
  156. package/dist/pools/lendingPool/getPositionDebt.js +4 -2
  157. package/dist/pools/lendingPool/getPositionScaledDebt.js +4 -2
  158. package/dist/pools/lendingPool/getPositionView.js +4 -2
  159. package/dist/pools/lendingPool/getPositionsScaledDebt.js +4 -2
  160. package/dist/pools/lendingPool/getRawUserDepositsInLendingPool.js +4 -2
  161. package/dist/pools/lendingPool/getUserCollateralValue.js +4 -2
  162. package/dist/pools/lendingPool/initializeLiquidation.js +4 -2
  163. package/dist/pools/lendingPool/openVaultPosition.js +4 -6
  164. package/dist/pools/lendingPool/repayToLendingPool.js +4 -2
  165. package/dist/pools/lendingPool/vaultOpened.js +4 -2
  166. package/dist/pools/lendingPool/withdrawAssetFromLendingPool.js +4 -2
  167. package/dist/pools/lendingPool/withdrawFromLendingPool.js +3 -4
  168. package/dist/pools/liquidityPool/getLiquidityPoolInfo.js +3 -3
  169. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterAssetValue.js +2 -2
  170. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterInfo.js +2 -2
  171. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterTotalValue.js +2 -2
  172. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterAssetValue.js +2 -2
  173. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterDeposits.js +2 -2
  174. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterInfo.js +2 -2
  175. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterTotalValue.js +2 -2
  176. package/dist/pools/rwaVault/checkRedeemEligibility.js +46 -0
  177. package/dist/pools/rwaVault/depositToRWAVault.js +4 -4
  178. package/dist/pools/rwaVault/getAdapters.js +2 -2
  179. package/dist/pools/rwaVault/getNextRandomNFT.js +4 -2
  180. package/dist/pools/rwaVault/getRWAVaultInfo.js +4 -2
  181. package/dist/pools/rwaVault/previewDeposit.js +4 -2
  182. package/dist/pools/rwaVault/previewWithdraw.js +4 -2
  183. package/dist/pools/rwaVault/redeemNFTFromRWAVault.js +4 -4
  184. package/dist/pools/rwaVault/requestRandomSeed.js +4 -4
  185. package/dist/pools/stabilityPool/depositToStabilityPool.js +4 -4
  186. package/dist/pools/stabilityPool/getRawUserDepositsInStabilityPool.js +4 -2
  187. package/dist/pools/stabilityPool/getStabilityPoolInfo.js +4 -2
  188. package/dist/pools/stabilityPool/getStabilityPoolTotalDeposits.js +4 -2
  189. package/dist/pools/stabilityPool/getWithdrawRequestInfo.js +4 -2
  190. package/dist/pools/stabilityPool/getWithdrawTimelockConfig.js +25 -0
  191. package/dist/pools/stabilityPool/requestWithdraw.js +4 -4
  192. package/dist/pools/stabilityPool/withdrawFromStabilityPool.js +4 -4
  193. package/dist/prices/computeStakingAPY.js +12 -0
  194. package/dist/prices/getCurveLPPriceUSD.js +46 -0
  195. package/dist/prices/getPrices.js +10 -8
  196. package/dist/prices/getStakingTokenPriceUSD.js +25 -0
  197. package/dist/prices/getWrapperPriceUSD.js +33 -0
  198. package/dist/prices/tokenPricesUSD.js +20 -0
  199. package/dist/scripts/generateErrorCatalogue.js +237 -0
  200. package/dist/types/RPCLibrary.d.ts +42 -8
  201. package/dist/types/configs/chains/index.d.ts +36 -0
  202. package/dist/types/configs/index.d.ts +18 -0
  203. package/dist/types/contracts/findContract.d.ts +3 -1
  204. package/dist/types/contracts/getTokenMetadata.d.ts +13 -0
  205. package/dist/types/contracts/governance/_helpers.d.ts +0 -20
  206. package/dist/types/contracts/governance/proposals/castVote.d.ts +1 -2
  207. package/dist/types/contracts/lockers/liquidLocker/hasHarvestRole.d.ts +8 -0
  208. package/dist/types/contracts/psm/_helpers.d.ts +18 -0
  209. package/dist/types/contracts/psm/cancelExit.d.ts +4 -0
  210. package/dist/types/contracts/psm/deposit.d.ts +9 -0
  211. package/dist/types/contracts/psm/getVaultInfo.d.ts +77 -0
  212. package/dist/types/contracts/psm/previewDeposit.d.ts +7 -0
  213. package/dist/types/contracts/psm/previewProportionalSplit.d.ts +9 -0
  214. package/dist/types/contracts/psm/previewRedeem.d.ts +7 -0
  215. package/dist/types/contracts/psm/previewSwap.d.ts +7 -0
  216. package/dist/types/contracts/psm/redeem.d.ts +9 -0
  217. package/dist/types/contracts/psm/requestExit.d.ts +4 -0
  218. package/dist/types/contracts/psm/swap.d.ts +8 -0
  219. package/dist/types/contracts/tokens/veRAAC/getRewardTokens.d.ts +10 -0
  220. package/dist/types/contracts/zeno/createAuction.d.ts +15 -5
  221. package/dist/types/contracts/zeno/createZeno.d.ts +10 -1
  222. package/dist/types/contracts/zeno/getAuctions.d.ts +10 -11
  223. package/dist/types/contracts/zeno/getZenos.d.ts +25 -2
  224. package/dist/types/index.d.ts +1 -0
  225. package/dist/types/pools/rwaVault/checkRedeemEligibility.d.ts +15 -0
  226. package/dist/types/pools/stabilityPool/getWithdrawTimelockConfig.d.ts +14 -0
  227. package/dist/types/prices/computeStakingAPY.d.ts +2 -0
  228. package/dist/types/prices/getCurveLPPriceUSD.d.ts +3 -0
  229. package/dist/types/prices/getPrices.d.ts +4 -8
  230. package/dist/types/prices/getStakingTokenPriceUSD.d.ts +16 -0
  231. package/dist/types/prices/getWrapperPriceUSD.d.ts +7 -0
  232. package/dist/types/prices/tokenPricesUSD.d.ts +7 -0
  233. package/dist/types/scripts/generateErrorCatalogue.d.ts +45 -0
  234. package/dist/types/typechain-types/@openzeppelin/contracts/index.d.ts +2 -0
  235. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.d.ts +65 -0
  236. package/dist/types/typechain-types/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
  237. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.d.ts +36 -0
  238. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.d.ts +20 -0
  239. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
  240. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/Proxy.d.ts +20 -0
  241. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.d.ts +25 -0
  242. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/beacon/index.d.ts +1 -0
  243. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/index.d.ts +7 -0
  244. package/dist/types/typechain-types/{contracts/core/governance/gauges/VeBoostProxy.d.ts → @openzeppelin/contracts/proxy/transparent/ProxyAdmin.d.ts} +24 -47
  245. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.d.ts +80 -0
  246. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.d.ts +51 -0
  247. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +2 -0
  248. package/dist/types/typechain-types/@openzeppelin/contracts/proxy/transparent/index.d.ts +3 -0
  249. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeController.d.ts +29 -2
  250. package/dist/types/typechain-types/contracts/core/governance/gauges/index.d.ts +0 -2
  251. package/dist/types/typechain-types/contracts/core/lockers/RAACBotLocker.d.ts +1 -9
  252. package/dist/types/typechain-types/contracts/core/lockers/RAACLiquidLocker.d.ts +47 -2
  253. package/dist/types/typechain-types/contracts/core/lockers/RAACMaturityVault.d.ts +24 -10
  254. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +42 -43
  255. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPoolStorage.d.ts +7 -3
  256. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LiquidationProxy.d.ts +7 -3
  257. package/dist/types/typechain-types/contracts/core/pools/LendingPool/VaultProxy.d.ts +7 -3
  258. package/dist/types/typechain-types/contracts/core/tokens/VeRAACToken.d.ts +59 -12
  259. package/dist/types/typechain-types/contracts/core/tokens/VeRAACTokenStorage.d.ts +47 -12
  260. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeController.d.ts +29 -2
  261. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/index.d.ts +0 -2
  262. package/dist/types/typechain-types/contracts/interfaces/core/lockers/IRAACBotLocker.d.ts +1 -9
  263. package/dist/types/typechain-types/contracts/interfaces/core/lockers/IRaacLiquidLocker.d.ts +82 -15
  264. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +32 -6
  265. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDebtToken.d.ts +5 -1
  266. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IveRAACToken.d.ts +47 -12
  267. package/dist/types/typechain-types/contracts/interfaces/zeno/IAuction.d.ts +43 -39
  268. package/dist/types/typechain-types/contracts/interfaces/zeno/IZENO.d.ts +28 -22
  269. package/dist/types/typechain-types/contracts/libraries/math/TimeWeightedAverage.d.ts +2 -36
  270. package/dist/types/typechain-types/contracts/mocks/core/governance/gauges/MockGaugeStub.d.ts +33 -0
  271. package/dist/types/typechain-types/contracts/mocks/core/governance/gauges/index.d.ts +1 -0
  272. package/dist/types/typechain-types/contracts/mocks/core/lockers/LockerSimMocks.sol/SimToken.d.ts +173 -0
  273. package/dist/types/typechain-types/contracts/mocks/core/lockers/LockerSimMocks.sol/SimVault.d.ts +53 -0
  274. package/dist/types/typechain-types/contracts/mocks/core/lockers/LockerSimMocks.sol/SimVe.d.ts +91 -0
  275. package/dist/types/typechain-types/contracts/mocks/core/lockers/LockerSimMocks.sol/index.d.ts +3 -0
  276. package/dist/types/typechain-types/contracts/mocks/core/lockers/index.d.ts +2 -0
  277. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +32 -6
  278. package/dist/types/typechain-types/contracts/mocks/libraries/governance/PowerCheckpointMock.d.ts +6 -2
  279. package/dist/types/typechain-types/contracts/zeno/Auction.d.ts +200 -108
  280. package/dist/types/typechain-types/contracts/zeno/AuctionFactory.d.ts +21 -105
  281. package/dist/types/typechain-types/contracts/zeno/ZENO.d.ts +46 -40
  282. package/dist/types/typechain-types/contracts/zeno/ZENOFactory.d.ts +10 -57
  283. package/dist/types/typechain-types/factories/@openzeppelin/contracts/index.d.ts +1 -0
  284. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.d.ts +42 -0
  285. package/dist/types/typechain-types/factories/@openzeppelin/contracts/interfaces/index.d.ts +1 -0
  286. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.d.ts +71 -0
  287. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.d.ts +50 -0
  288. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.d.ts +2 -0
  289. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/Proxy__factory.d.ts +10 -0
  290. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.d.ts +17 -0
  291. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.d.ts +1 -0
  292. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/index.d.ts +4 -0
  293. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts +115 -0
  294. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.d.ts +56 -0
  295. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts +102 -0
  296. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +2 -0
  297. package/dist/types/typechain-types/factories/@openzeppelin/contracts/proxy/transparent/index.d.ts +2 -0
  298. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +1 -1
  299. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +26 -1
  300. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeRewardsDistributor__factory.d.ts +1 -1
  301. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +1 -1
  302. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +1 -1
  303. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/index.d.ts +0 -2
  304. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACBotLocker__factory.d.ts +1 -11
  305. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACLiquidLocker__factory.d.ts +66 -1
  306. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACMaturityVault__factory.d.ts +25 -9
  307. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +1 -1
  308. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPoolStorage__factory.d.ts +12 -2
  309. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +43 -60
  310. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LiquidationProxy__factory.d.ts +12 -2
  311. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/VaultProxy__factory.d.ts +12 -2
  312. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationStrategyProxy__factory.d.ts +1 -1
  313. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPoolStorage__factory.d.ts +1 -1
  314. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +1 -1
  315. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +1 -1
  316. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +1 -1
  317. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACTokenStorage__factory.d.ts +47 -18
  318. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +58 -19
  319. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGaugeController__factory.d.ts +25 -0
  320. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/index.d.ts +0 -2
  321. package/dist/types/typechain-types/factories/contracts/interfaces/core/lockers/IRAACBotLocker__factory.d.ts +0 -10
  322. package/dist/types/typechain-types/factories/contracts/interfaces/core/lockers/IRaacLiquidLocker__factory.d.ts +91 -6
  323. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +30 -0
  324. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDebtToken__factory.d.ts +10 -0
  325. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IveRAACToken__factory.d.ts +47 -18
  326. package/dist/types/typechain-types/factories/contracts/interfaces/zeno/IAuction__factory.d.ts +52 -30
  327. package/dist/types/typechain-types/factories/contracts/interfaces/zeno/IZENO__factory.d.ts +36 -8
  328. package/dist/types/typechain-types/factories/contracts/libraries/governance/BoostCalculator__factory.d.ts +1 -1
  329. package/dist/types/typechain-types/factories/contracts/libraries/governance/LockManager__factory.d.ts +1 -1
  330. package/dist/types/typechain-types/factories/contracts/libraries/governance/PowerCheckpoint__factory.d.ts +1 -1
  331. package/dist/types/typechain-types/factories/contracts/libraries/governance/RagequitLib__factory.d.ts +1 -1
  332. package/dist/types/typechain-types/factories/contracts/libraries/governance/RewardLib__factory.d.ts +1 -1
  333. package/dist/types/typechain-types/factories/contracts/libraries/math/TimeWeightedAverage__factory.d.ts +1 -36
  334. package/dist/types/typechain-types/factories/contracts/libraries/pools/LendingPoolFeeLibrary__factory.d.ts +1 -1
  335. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  336. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockGaugeStub__factory.d.ts +42 -0
  337. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/index.d.ts +1 -0
  338. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/libraries/LockManagerMock__factory.d.ts +1 -1
  339. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LockerSimMocks.sol/SimToken__factory.d.ts +306 -0
  340. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LockerSimMocks.sol/SimVault__factory.d.ts +68 -0
  341. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LockerSimMocks.sol/SimVe__factory.d.ts +149 -0
  342. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LockerSimMocks.sol/index.d.ts +3 -0
  343. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/index.d.ts +1 -0
  344. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  345. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +1 -1
  346. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +31 -1
  347. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockTimeUtils__factory.d.ts +1 -1
  348. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/BoostCalculatorMock__factory.d.ts +1 -1
  349. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/PowerCheckpointMock__factory.d.ts +5 -1
  350. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RagequitHarness__factory.d.ts +1 -1
  351. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RewardIntegralCalculatorMock.sol/MockRewardIntegralCalculator__factory.d.ts +1 -1
  352. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/TimeWeightedAverageMock__factory.d.ts +2 -9
  353. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMockCalculation__factory.d.ts +1 -1
  354. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +1 -1
  355. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  356. package/dist/types/typechain-types/factories/contracts/zeno/AuctionFactory__factory.d.ts +26 -118
  357. package/dist/types/typechain-types/factories/contracts/zeno/Auction__factory.d.ts +230 -106
  358. package/dist/types/typechain-types/factories/contracts/zeno/ZENOFactory__factory.d.ts +9 -68
  359. package/dist/types/typechain-types/factories/contracts/zeno/ZENO__factory.d.ts +66 -38
  360. package/dist/types/typechain-types/index.d.ts +24 -8
  361. package/dist/types/typechain-types/psm/PSMVault.d.ts +1503 -0
  362. package/dist/types/typechain-types/psm/RateProvider.d.ts +228 -0
  363. package/dist/types/typechain-types/psm/common.d.ts +46 -0
  364. package/dist/types/typechain-types/psm/factories/PSMVault__factory.d.ts +1795 -0
  365. package/dist/types/typechain-types/psm/factories/RateProvider__factory.d.ts +299 -0
  366. package/dist/types/typechain-types/psm/factories/imports.sol/PSMProxyAdmin__factory.d.ts +117 -0
  367. package/dist/types/typechain-types/psm/factories/imports.sol/PSMTransparentProxy__factory.d.ts +108 -0
  368. package/dist/types/typechain-types/psm/factories/imports.sol/index.d.ts +2 -0
  369. package/dist/types/typechain-types/psm/factories/index.d.ts +8 -0
  370. package/dist/types/typechain-types/psm/factories/interfaces/IBaseAssetNav__factory.d.ts +21 -0
  371. package/dist/types/typechain-types/psm/factories/interfaces/IRateProvider__factory.d.ts +65 -0
  372. package/dist/types/typechain-types/psm/factories/interfaces/IRebalancer__factory.d.ts +25 -0
  373. package/dist/types/typechain-types/{factories/contracts/interfaces/core/governance/gauges/IVeBoost__factory.d.ts → psm/factories/interfaces/ISavingsToken__factory.d.ts} +215 -192
  374. package/dist/types/typechain-types/psm/factories/interfaces/index.d.ts +6 -0
  375. package/dist/types/typechain-types/psm/factories/interfaces/v2/IRebalancerV2__factory.d.ts +21 -0
  376. package/dist/types/typechain-types/psm/factories/interfaces/v2/index.d.ts +1 -0
  377. package/dist/types/typechain-types/psm/factories/interfaces/v3/IRateProviderV3__factory.d.ts +65 -0
  378. package/dist/types/typechain-types/psm/factories/interfaces/v3/index.d.ts +1 -0
  379. package/dist/types/typechain-types/psm/factories/mocks/MockBaseAssetModule__factory.d.ts +450 -0
  380. package/dist/types/typechain-types/psm/factories/mocks/MockChainlinkFeed__factory.d.ts +106 -0
  381. package/dist/types/typechain-types/psm/factories/mocks/MockERC20__factory.d.ts +288 -0
  382. package/dist/types/typechain-types/psm/factories/mocks/MockFeeOnTransferERC20__factory.d.ts +356 -0
  383. package/dist/types/typechain-types/psm/factories/mocks/MockPmUSD__factory.d.ts +326 -0
  384. package/dist/types/typechain-types/psm/factories/mocks/MockProxy__factory.d.ts +108 -0
  385. package/dist/types/typechain-types/psm/factories/mocks/MockRebalancer.sol/IMockMintable__factory.d.ts +21 -0
  386. package/dist/types/typechain-types/psm/factories/mocks/MockRebalancer.sol/MockRebalancer__factory.d.ts +138 -0
  387. package/dist/types/typechain-types/psm/factories/mocks/MockRebalancer.sol/index.d.ts +2 -0
  388. package/dist/types/typechain-types/psm/factories/mocks/MockRebalancerV2.sol/IMockMintable__factory.d.ts +21 -0
  389. package/dist/types/typechain-types/psm/factories/mocks/MockRebalancerV2.sol/MockRebalancerV2__factory.d.ts +134 -0
  390. package/dist/types/typechain-types/psm/factories/mocks/MockRebalancerV2.sol/index.d.ts +2 -0
  391. package/dist/types/typechain-types/psm/factories/mocks/MockSavingsToken__factory.d.ts +330 -0
  392. package/dist/types/typechain-types/psm/factories/mocks/index.d.ts +9 -0
  393. package/dist/types/typechain-types/psm/factories/utils/index.d.ts +1 -0
  394. package/dist/types/typechain-types/psm/factories/utils/zap/AladdinZap__factory.d.ts +322 -0
  395. package/dist/types/typechain-types/psm/factories/utils/zap/TokenZapLogic__factory.d.ts +73 -0
  396. package/dist/types/typechain-types/psm/factories/utils/zap/index.d.ts +3 -0
  397. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IBalancerPool__factory.d.ts +91 -0
  398. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IBalancerVault__factory.d.ts +261 -0
  399. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IConvexCRVDepositor__factory.d.ts +49 -0
  400. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveAPool.sol/ICurveA2Pool__factory.d.ts +305 -0
  401. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveAPool.sol/ICurveA3Pool__factory.d.ts +305 -0
  402. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveAPool.sol/ICurveA4Pool__factory.d.ts +305 -0
  403. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveAPool.sol/ICurveAPool__factory.d.ts +305 -0
  404. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveAPool.sol/index.d.ts +4 -0
  405. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveBasePool.sol/ICurveBase2Pool__factory.d.ts +39 -0
  406. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveBasePool.sol/ICurveBase3Pool__factory.d.ts +39 -0
  407. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveBasePool.sol/ICurveBase4Pool__factory.d.ts +39 -0
  408. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveBasePool.sol/ICurveBasePool__factory.d.ts +175 -0
  409. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveBasePool.sol/index.d.ts +4 -0
  410. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveCryptoPool.sol/ICurveCryptoPool__factory.d.ts +301 -0
  411. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveCryptoPool.sol/ICurveTriCryptoPool__factory.d.ts +165 -0
  412. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveCryptoPool.sol/IZapCurveMetaCryptoPool__factory.d.ts +181 -0
  413. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveCryptoPool.sol/index.d.ts +3 -0
  414. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveETHPool__factory.d.ts +155 -0
  415. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveDepositZap3Pool__factory.d.ts +99 -0
  416. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveDepositZap4Pool__factory.d.ts +99 -0
  417. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveDepositZap__factory.d.ts +55 -0
  418. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveFactoryMetaPool__factory.d.ts +193 -0
  419. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryMetaPool.sol/index.d.ts +4 -0
  420. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlain2Pool__factory.d.ts +183 -0
  421. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlain3Pool__factory.d.ts +183 -0
  422. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlain4Pool__factory.d.ts +183 -0
  423. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlainPool__factory.d.ts +147 -0
  424. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveFactoryPlainPool.sol/index.d.ts +4 -0
  425. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveMetaPool.sol/ICurveMetaPoolDeposit__factory.d.ts +141 -0
  426. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveMetaPool.sol/ICurveMetaPoolSwap__factory.d.ts +227 -0
  427. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveMetaPool.sol/index.d.ts +2 -0
  428. package/dist/types/typechain-types/{factories/contracts/interfaces/core/governance/gauges/IVeBoostProxy__factory.d.ts → psm/factories/utils/zap/interfaces/ICurvePoolRegistry__factory.d.ts} +13 -24
  429. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveY2PoolDeposit__factory.d.ts +165 -0
  430. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveY2PoolSwap__factory.d.ts +193 -0
  431. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveY3PoolDeposit__factory.d.ts +165 -0
  432. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveY3PoolSwap__factory.d.ts +193 -0
  433. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveY4PoolDeposit__factory.d.ts +165 -0
  434. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveY4PoolSwap__factory.d.ts +193 -0
  435. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveYPoolDeposit__factory.d.ts +165 -0
  436. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/ICurveYPoolSwap__factory.d.ts +193 -0
  437. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ICurveYPool.sol/index.d.ts +8 -0
  438. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ILidoStETH__factory.d.ts +35 -0
  439. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/ILidoWstETH__factory.d.ts +83 -0
  440. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IUniswapV2Pair__factory.d.ts +95 -0
  441. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IUniswapV3Pool__factory.d.ts +115 -0
  442. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IUniswapV3Router__factory.d.ts +54 -0
  443. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IWETH__factory.d.ts +23 -0
  444. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/IZap__factory.d.ts +107 -0
  445. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/concentrator/IAladdinCRV__factory.d.ts +401 -0
  446. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/concentrator/IAladdinCompounder__factory.d.ts +350 -0
  447. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/concentrator/index.d.ts +2 -0
  448. package/dist/types/typechain-types/psm/factories/utils/zap/interfaces/index.d.ts +20 -0
  449. package/dist/types/typechain-types/psm/factories/v2/PSMVaultV2__factory.d.ts +1846 -0
  450. package/dist/types/typechain-types/psm/factories/v2/RebalancerV2.sol/IPSMVaultView__factory.d.ts +17 -0
  451. package/dist/types/typechain-types/psm/factories/v2/RebalancerV2.sol/IRateOracle__factory.d.ts +31 -0
  452. package/dist/types/typechain-types/psm/factories/v2/RebalancerV2.sol/IZap__factory.d.ts +33 -0
  453. package/dist/types/typechain-types/psm/factories/v2/RebalancerV2.sol/RebalancerV2__factory.d.ts +506 -0
  454. package/dist/types/typechain-types/psm/factories/v2/RebalancerV2.sol/index.d.ts +4 -0
  455. package/dist/types/typechain-types/psm/factories/v2/index.d.ts +2 -0
  456. package/dist/types/typechain-types/psm/factories/v3/PSMVaultV3__factory.d.ts +1955 -0
  457. package/dist/types/typechain-types/psm/factories/v3/RateProviderComposed__factory.d.ts +303 -0
  458. package/dist/types/typechain-types/psm/factories/v3/RateProviderDirect__factory.d.ts +293 -0
  459. package/dist/types/typechain-types/psm/factories/v3/index.d.ts +3 -0
  460. package/dist/types/typechain-types/psm/imports.sol/PSMProxyAdmin.d.ts +96 -0
  461. package/dist/types/typechain-types/psm/imports.sol/PSMTransparentProxy.d.ts +51 -0
  462. package/dist/types/typechain-types/psm/imports.sol/index.d.ts +2 -0
  463. package/dist/types/typechain-types/psm/index.d.ts +157 -0
  464. package/dist/types/typechain-types/psm/interfaces/IBaseAssetNav.d.ts +33 -0
  465. package/dist/types/typechain-types/psm/interfaces/IRateProvider.d.ts +75 -0
  466. package/dist/types/typechain-types/psm/interfaces/IRebalancer.d.ts +39 -0
  467. package/dist/types/typechain-types/psm/interfaces/ISavingsToken.d.ts +400 -0
  468. package/dist/types/typechain-types/psm/interfaces/index.d.ts +8 -0
  469. package/dist/types/typechain-types/psm/interfaces/v2/IRebalancerV2.d.ts +35 -0
  470. package/dist/types/typechain-types/psm/interfaces/v2/index.d.ts +1 -0
  471. package/dist/types/typechain-types/psm/interfaces/v3/IRateProviderV3.d.ts +75 -0
  472. package/dist/types/typechain-types/psm/interfaces/v3/index.d.ts +1 -0
  473. package/dist/types/typechain-types/psm/mocks/MockBaseAssetModule.d.ts +311 -0
  474. package/dist/types/typechain-types/psm/mocks/MockChainlinkFeed.d.ts +91 -0
  475. package/dist/types/typechain-types/psm/mocks/MockERC20.d.ts +179 -0
  476. package/dist/types/typechain-types/psm/mocks/MockFeeOnTransferERC20.d.ts +247 -0
  477. package/dist/types/typechain-types/psm/mocks/MockPmUSD.d.ts +213 -0
  478. package/dist/types/typechain-types/psm/mocks/MockProxy.d.ts +51 -0
  479. package/dist/types/typechain-types/psm/mocks/MockRebalancer.sol/IMockMintable.d.ts +35 -0
  480. package/dist/types/typechain-types/psm/mocks/MockRebalancer.sol/MockRebalancer.d.ts +125 -0
  481. package/dist/types/typechain-types/psm/mocks/MockRebalancer.sol/index.d.ts +2 -0
  482. package/dist/types/typechain-types/psm/mocks/MockRebalancerV2.sol/IMockMintable.d.ts +35 -0
  483. package/dist/types/typechain-types/psm/mocks/MockRebalancerV2.sol/MockRebalancerV2.d.ts +121 -0
  484. package/dist/types/typechain-types/psm/mocks/MockRebalancerV2.sol/index.d.ts +2 -0
  485. package/dist/types/typechain-types/psm/mocks/MockSavingsToken.d.ts +213 -0
  486. package/dist/types/typechain-types/psm/mocks/index.d.ts +11 -0
  487. package/dist/types/typechain-types/psm/utils/index.d.ts +2 -0
  488. package/dist/types/typechain-types/psm/utils/zap/AladdinZap.d.ts +276 -0
  489. package/dist/types/typechain-types/psm/utils/zap/TokenZapLogic.d.ts +59 -0
  490. package/dist/types/typechain-types/psm/utils/zap/index.d.ts +4 -0
  491. package/dist/types/typechain-types/psm/utils/zap/interfaces/IBalancerPool.d.ts +101 -0
  492. package/dist/types/typechain-types/psm/utils/zap/interfaces/IBalancerVault.d.ts +199 -0
  493. package/dist/types/typechain-types/psm/utils/zap/interfaces/IConvexCRVDepositor.d.ts +61 -0
  494. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveAPool.sol/ICurveA2Pool.d.ts +245 -0
  495. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveAPool.sol/ICurveA3Pool.d.ts +245 -0
  496. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveAPool.sol/ICurveA4Pool.d.ts +245 -0
  497. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveAPool.sol/ICurveAPool.d.ts +245 -0
  498. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveAPool.sol/index.d.ts +4 -0
  499. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveBasePool.sol/ICurveBase2Pool.d.ts +49 -0
  500. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveBasePool.sol/ICurveBase3Pool.d.ts +49 -0
  501. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveBasePool.sol/ICurveBase4Pool.d.ts +49 -0
  502. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveBasePool.sol/ICurveBasePool.d.ts +159 -0
  503. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveBasePool.sol/index.d.ts +4 -0
  504. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveCryptoPool.sol/ICurveCryptoPool.d.ts +249 -0
  505. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveCryptoPool.sol/ICurveTriCryptoPool.d.ts +153 -0
  506. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveCryptoPool.sol/IZapCurveMetaCryptoPool.d.ts +165 -0
  507. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveCryptoPool.sol/index.d.ts +3 -0
  508. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveETHPool.d.ts +135 -0
  509. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveDepositZap.d.ts +55 -0
  510. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveDepositZap3Pool.d.ts +87 -0
  511. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveDepositZap4Pool.d.ts +87 -0
  512. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryMetaPool.sol/ICurveFactoryMetaPool.d.ts +159 -0
  513. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryMetaPool.sol/index.d.ts +4 -0
  514. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlain2Pool.d.ts +159 -0
  515. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlain3Pool.d.ts +159 -0
  516. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlain4Pool.d.ts +159 -0
  517. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryPlainPool.sol/ICurveFactoryPlainPool.d.ts +131 -0
  518. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveFactoryPlainPool.sol/index.d.ts +4 -0
  519. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveMetaPool.sol/ICurveMetaPoolDeposit.d.ts +133 -0
  520. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveMetaPool.sol/ICurveMetaPoolSwap.d.ts +191 -0
  521. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveMetaPool.sol/index.d.ts +2 -0
  522. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurvePoolRegistry.d.ts +45 -0
  523. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveY2PoolDeposit.d.ts +163 -0
  524. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveY2PoolSwap.d.ts +179 -0
  525. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveY3PoolDeposit.d.ts +163 -0
  526. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveY3PoolSwap.d.ts +179 -0
  527. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveY4PoolDeposit.d.ts +163 -0
  528. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveY4PoolSwap.d.ts +179 -0
  529. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveYPoolDeposit.d.ts +163 -0
  530. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/ICurveYPoolSwap.d.ts +179 -0
  531. package/dist/types/typechain-types/psm/utils/zap/interfaces/ICurveYPool.sol/index.d.ts +8 -0
  532. package/dist/types/typechain-types/psm/utils/zap/interfaces/ILidoStETH.d.ts +45 -0
  533. package/dist/types/typechain-types/psm/utils/zap/interfaces/ILidoWstETH.d.ts +89 -0
  534. package/dist/types/typechain-types/psm/utils/zap/interfaces/IUniswapV2Pair.d.ts +103 -0
  535. package/dist/types/typechain-types/psm/utils/zap/interfaces/IUniswapV3Pool.d.ts +113 -0
  536. package/dist/types/typechain-types/psm/utils/zap/interfaces/IUniswapV3Router.d.ts +55 -0
  537. package/dist/types/typechain-types/psm/utils/zap/interfaces/IWETH.d.ts +43 -0
  538. package/dist/types/typechain-types/psm/utils/zap/interfaces/IZap.d.ts +91 -0
  539. package/dist/types/typechain-types/psm/utils/zap/interfaces/concentrator/IAladdinCRV.d.ts +361 -0
  540. package/dist/types/typechain-types/psm/utils/zap/interfaces/concentrator/IAladdinCompounder.d.ts +290 -0
  541. package/dist/types/typechain-types/psm/utils/zap/interfaces/concentrator/index.d.ts +2 -0
  542. package/dist/types/typechain-types/psm/utils/zap/interfaces/index.d.ts +28 -0
  543. package/dist/types/typechain-types/psm/v2/PSMVaultV2.d.ts +1528 -0
  544. package/dist/types/typechain-types/psm/v2/RebalancerV2.sol/IPSMVaultView.d.ts +31 -0
  545. package/dist/types/typechain-types/psm/v2/RebalancerV2.sol/IRateOracle.d.ts +43 -0
  546. package/dist/types/typechain-types/psm/v2/RebalancerV2.sol/IZap.d.ts +39 -0
  547. package/dist/types/typechain-types/psm/v2/RebalancerV2.sol/RebalancerV2.d.ts +387 -0
  548. package/dist/types/typechain-types/psm/v2/RebalancerV2.sol/index.d.ts +4 -0
  549. package/dist/types/typechain-types/psm/v2/index.d.ts +3 -0
  550. package/dist/types/typechain-types/psm/v3/PSMVaultV3.d.ts +1631 -0
  551. package/dist/types/typechain-types/psm/v3/RateProviderComposed.d.ts +228 -0
  552. package/dist/types/typechain-types/psm/v3/RateProviderDirect.d.ts +218 -0
  553. package/dist/types/typechain-types/psm/v3/index.d.ts +3 -0
  554. package/dist/types/utils/artifacts.d.ts +244 -102
  555. package/dist/types/utils/contracts.d.ts +36 -0
  556. package/dist/types/utils/errorDecoder.d.ts +21 -30
  557. package/dist/types/utils/rpcError.d.ts +52 -0
  558. package/dist/utils/artifacts.js +6 -0
  559. package/dist/utils/chain.js +2 -1
  560. package/dist/utils/config.js +0 -1
  561. package/dist/utils/contracts.js +1 -1
  562. package/dist/utils/errorDecoder.js +45 -121
  563. package/dist/utils/rpcError.js +135 -0
  564. package/dist/wallet/assets/approveAsset.js +10 -12
  565. package/dist/wallet/assets/burnAsset.js +14 -16
  566. package/dist/wallet/assets/getAllowance.js +4 -4
  567. package/dist/wallet/assets/getAsset.js +2 -2
  568. package/dist/wallet/assets/getBalance.js +4 -3
  569. package/dist/wallet/assets/mintAsset.js +14 -17
  570. package/dist/wallet/assets/transferAsset.js +7 -10
  571. package/package.json +4 -3
  572. package/dist/generated/errorMap.json +0 -3945
  573. package/dist/scripts/generateErrorMap.js +0 -180
  574. package/dist/types/scripts/generateErrorMap.d.ts +0 -1
  575. package/dist/types/typechain-types/contracts/core/governance/gauges/VeBoost.d.ts +0 -518
  576. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IVeBoost.d.ts +0 -311
  577. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IVeBoostProxy.d.ts +0 -50
  578. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/VeBoostProxy__factory.d.ts +0 -152
  579. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/VeBoost__factory.d.ts +0 -716
@@ -1,137 +1,61 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getErrorInfo = getErrorInfo;
4
- exports.decodeErrorName = decodeErrorName;
5
- exports.decodeErrorMessage = decodeErrorMessage;
6
- exports.attachDecodedError = attachDecodedError;
7
- exports.attachDecodedErrorMessage = attachDecodedErrorMessage;
3
+ exports.decodeRevertWithAbi = decodeRevertWithAbi;
4
+ exports.decodeRevertWithAllAbis = decodeRevertWithAllAbis;
8
5
  const ethers_1 = require("ethers");
9
6
  const artifacts_1 = require("./artifacts");
10
- // Try to load the generated error map, fallback to runtime scanning
11
- let ERROR_SIGNATURE_MAP = {};
12
- try {
13
- const generatedMap = require('../generated/errorMap.json');
14
- ERROR_SIGNATURE_MAP = generatedMap;
15
- }
16
- catch (error) {
17
- console.warn('Generated error map not found, falling back to runtime scanning...');
18
- // Fallback to runtime scanning (original implementation)
19
- (function buildErrorSignatureMap() {
20
- for (const abiKey in artifacts_1.ABIS) {
21
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
22
- // @ts-ignore – ABIS may contain unknown items
23
- const abi = artifacts_1.ABIS[abiKey];
24
- if (!Array.isArray(abi))
25
- continue;
26
- for (const item of abi) {
27
- if (item.type !== "error")
28
- continue;
29
- const inputs = (item.inputs || []);
30
- const signature = `${item.name}(${inputs.map((input) => input.type).join(",")})`;
31
- const selector = (0, ethers_1.id)(signature).slice(0, 10).toLowerCase();
32
- if (!ERROR_SIGNATURE_MAP[selector]) {
33
- ERROR_SIGNATURE_MAP[selector] = {
34
- name: item.name,
35
- signature,
36
- message: `${item.name.replace(/([A-Z])/g, ' $1').trim()} error occurred`,
37
- contract: abiKey,
38
- inputs: inputs.map((input) => ({
39
- name: input.name || '',
40
- type: input.type,
41
- internalType: input.internalType || input.type,
42
- })),
43
- };
44
- }
45
- }
46
- }
47
- })();
48
- }
49
7
  /**
50
- * Returns detailed information about the error encoded in the given data blob.
8
+ * Decodes revert data against a specific contract's ABI, recovering the error's
9
+ * argument values, not just its name, as long as the caller already knows
10
+ * which contract it called (see contracts/findContract.ts).
11
+ *
12
+ * @param abi The ABI of the contract that was called.
51
13
  * @param data The revert data returned by the EVM (e.g., error.data).
14
+ * @returns The error name and its decoded arguments, or null if `data` doesn't match any error in `abi`.
52
15
  */
53
- function getErrorInfo(data) {
54
- if (!data || typeof data !== "string")
16
+ function decodeRevertWithAbi(abi, data) {
17
+ if (!data || typeof data !== "string" || !data.startsWith("0x"))
55
18
  return null;
56
- let selector;
57
- if (data.startsWith("0x")) {
58
- selector = data.slice(0, 10).toLowerCase();
19
+ let parsed;
20
+ try {
21
+ parsed = ethers_1.Interface.from(abi).parseError(data);
59
22
  }
60
- else {
61
- // look for first 4-byte hex inside the string (e.g., error message)
62
- const match = data.match(/0x[0-9a-fA-F]{8}/);
63
- if (match)
64
- selector = match[0].toLowerCase();
65
- }
66
- if (!selector)
23
+ catch {
67
24
  return null;
68
- return ERROR_SIGNATURE_MAP[selector] ?? null;
69
- }
70
- /**
71
- * Returns only the error name, or null if it cannot be decoded.
72
- */
73
- function decodeErrorName(data) {
74
- const info = getErrorInfo(data);
75
- return info?.name ?? null;
76
- }
77
- /**
78
- * Returns the custom error message, or null if it cannot be decoded.
79
- */
80
- function decodeErrorMessage(data) {
81
- const info = getErrorInfo(data);
82
- return info?.message ?? null;
83
- }
84
- /**
85
- * Builds a user-friendly error prefix with decoded error name (if available).
86
- * Usage example:
87
- * const msg = attachDecodedError("Deposit failed", caughtError);
88
- */
89
- function attachDecodedError(prefix, error) {
90
- // ethers@6 nests the original error under error.error
91
- // viem/ethcall surface it directly on error.data
92
- const data = (error && ((error.data ?? error.error?.data) ||
93
- // viem error format: error.shortMessage
94
- undefined));
95
- // If data not found, attempt to extract selector from message like
96
- // "Encoded error signature \"0xa9b65aba\" not found on ABI"
97
- let selector;
98
- if (data && data.startsWith("0x")) {
99
- selector = data.slice(0, 10).toLowerCase();
100
- }
101
- else if (typeof error?.message === "string") {
102
- const SIGNATURE_REGEX = /Encoded error signature \"(0x[0-9a-fA-F]{8})\"/;
103
- const match = error.message.match(SIGNATURE_REGEX);
104
- if (match)
105
- selector = match[1].toLowerCase();
106
25
  }
107
- if (!selector)
108
- return prefix; // unable to determine
109
- const decodedName = ERROR_SIGNATURE_MAP[selector]?.name ?? null;
110
- // console.debug("Decoded", selector, decodedName);
111
- return decodedName ? `${prefix} (${decodedName})` : prefix;
26
+ if (!parsed)
27
+ return null;
28
+ const args = {};
29
+ parsed.fragment.inputs.forEach((input, i) => {
30
+ args[input.name || String(i)] = parsed.args[i];
31
+ });
32
+ return { name: parsed.name, args };
112
33
  }
34
+ let ALL_ERRORS;
113
35
  /**
114
- * Builds a user-friendly error message with custom error description (if available).
115
- * Usage example:
116
- * const msg = attachDecodedErrorMessage("Deposit failed", caughtError);
36
+ * Decodes revert data against every custom error in {@link ABIS}. This is the
37
+ * fallback for a revert thrown by a contract other than the one called: e.g.
38
+ * LendingPool.deposit bubbling up crvUSD's `ERC20InsufficientAllowance`, which
39
+ * LendingPool's own ABI does not declare. When two contracts declare the same
40
+ * selector, the first one in `ABIS` order wins: a shared selector means a
41
+ * shared signature, so only the argument names can differ.
42
+ *
43
+ * @param data The revert data returned by the EVM (e.g., error.data).
44
+ * @returns The error name and its decoded arguments, or null if no known contract declares that selector.
117
45
  */
118
- function attachDecodedErrorMessage(prefix, error) {
119
- const data = (error && ((error.data ?? error.error?.data) ||
120
- undefined));
121
- let selector;
122
- if (data && data.startsWith("0x")) {
123
- selector = data.slice(0, 10).toLowerCase();
124
- }
125
- else if (typeof error?.message === "string") {
126
- const SIGNATURE_REGEX = /Encoded error signature \"(0x[0-9a-fA-F]{8})\"/;
127
- const match = error.message.match(SIGNATURE_REGEX);
128
- if (match)
129
- selector = match[1].toLowerCase();
46
+ function decodeRevertWithAllAbis(data) {
47
+ if (!ALL_ERRORS) {
48
+ const bySelector = new Map();
49
+ for (const abi of Object.values(artifacts_1.ABIS)) {
50
+ for (const item of abi) {
51
+ if (item?.type !== "error")
52
+ continue;
53
+ const fragment = ethers_1.ErrorFragment.from(item);
54
+ if (!bySelector.has(fragment.selector))
55
+ bySelector.set(fragment.selector, fragment);
56
+ }
57
+ }
58
+ ALL_ERRORS = new ethers_1.Interface([...bySelector.values()]);
130
59
  }
131
- if (!selector)
132
- return prefix;
133
- const errorInfo = ERROR_SIGNATURE_MAP[selector];
134
- if (!errorInfo)
135
- return prefix;
136
- return `${prefix}: ${errorInfo.message}`;
60
+ return decodeRevertWithAbi(ALL_ERRORS, data);
137
61
  }
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RpcError = void 0;
4
+ exports.toRpcError = toRpcError;
5
+ const findContract_1 = require("../contracts/findContract");
6
+ const artifacts_1 = require("./artifacts");
7
+ const errorDecoder_1 = require("./errorDecoder");
8
+ /**
9
+ * The one error type every `rpc` function throws. Replaces the ~5 inconsistent
10
+ * catch-block shapes in the codebase today (plain `new Error(\`Failed to…\`)`
11
+ * rewraps, ad hoc decoder string concatenation, raw rethrows, no handling at
12
+ * all) with one structure a consumer can actually branch on: skip
13
+ * `USER_REJECTED` without a toast, tag Sentry with `code`/`contract`/`errorName`
14
+ * instead of a free-text string.
15
+ */
16
+ class RpcError extends Error {
17
+ code;
18
+ action;
19
+ contract;
20
+ errorName;
21
+ selector;
22
+ args;
23
+ cause;
24
+ constructor(params) {
25
+ super(params.message);
26
+ this.name = "RpcError";
27
+ this.code = params.code;
28
+ this.action = params.action;
29
+ this.contract = params.contract;
30
+ this.errorName = params.errorName;
31
+ this.selector = params.selector;
32
+ this.args = params.args;
33
+ this.cause = params.cause;
34
+ // Restores the prototype chain lost when transpiling `extends Error`.
35
+ Object.setPrototypeOf(this, RpcError.prototype);
36
+ }
37
+ }
38
+ exports.RpcError = RpcError;
39
+ // Ships once `scripts/generateErrorCatalogue.ts` has run; absent until then,
40
+ // same "optional, gracefully missing" treatment as any other generated file.
41
+ let CATALOGUE = {};
42
+ try {
43
+ CATALOGUE = require("../generated/errors.json");
44
+ }
45
+ catch {
46
+ // No catalogue yet — messages fall back to the raw error message below.
47
+ }
48
+ const REJECTION_CODES = new Set(["ACTION_REJECTED", 4001, "4001"]);
49
+ function isUserRejection(error) {
50
+ const codes = [error?.code, error?.info?.error?.code, error?.error?.code, error?.cause?.code];
51
+ return codes.some((code) => REJECTION_CODES.has(code));
52
+ }
53
+ const NETWORK_CODES = new Set(["NETWORK_ERROR", "TIMEOUT", "SERVER_ERROR"]);
54
+ /**
55
+ * Builds an {@link RpcError} from whatever ethers, a wallet, or the network
56
+ * threw. Every `rpc` function's catch block calls this instead of hand-rolling
57
+ * its own rewrap.
58
+ *
59
+ * @param action - What was being attempted, e.g. "lendingPool.deposit".
60
+ * @param error - The error caught.
61
+ * @param resolve - The chain and, when known, the address that was called —
62
+ * lets the error be decoded against that contract's own ABI instead of a
63
+ * selector-only guess, and names the contract on the result.
64
+ */
65
+ function toRpcError(action, error, resolve) {
66
+ const err = error;
67
+ if (isUserRejection(err)) {
68
+ return new RpcError({
69
+ code: "USER_REJECTED",
70
+ action,
71
+ message: "Rejected in wallet.",
72
+ cause: error,
73
+ });
74
+ }
75
+ let contract;
76
+ let abi;
77
+ let contractType;
78
+ if (resolve?.address) {
79
+ const info = (0, findContract_1.findContract)(resolve.chainId, resolve.address);
80
+ if (info) {
81
+ contract = { id: info.id, name: info.label, address: info.address };
82
+ if (info.abi) {
83
+ abi = (0, artifacts_1.getABI)(info.abi);
84
+ contractType = info.abi;
85
+ }
86
+ }
87
+ }
88
+ const data = err?.data ?? err?.error?.data ?? err?.info?.error?.data;
89
+ const selector = typeof data === "string" && /^0x[0-9a-fA-F]{8}/.test(data) ? data.slice(0, 10).toLowerCase() : undefined;
90
+ let errorName;
91
+ let args;
92
+ // ethers already decoded this against the ABI it used to make the call —
93
+ // free and more precise than re-decoding, when it's there.
94
+ if (err?.revert?.name) {
95
+ errorName = err.revert.name;
96
+ const inputs = err.revert.fragment?.inputs;
97
+ if (Array.isArray(err.revert.args) && Array.isArray(inputs)) {
98
+ args = {};
99
+ inputs.forEach((input, i) => {
100
+ args[input.name || String(i)] = err.revert.args[i];
101
+ });
102
+ }
103
+ }
104
+ if (!errorName) {
105
+ // A revert bubbled up from a nested call (e.g. crvUSD's
106
+ // ERC20InsufficientAllowance through LendingPool) isn't in the called
107
+ // contract's ABI, so fall back to every known one.
108
+ const decoded = (abi && (0, errorDecoder_1.decodeRevertWithAbi)(abi, data)) || (0, errorDecoder_1.decodeRevertWithAllAbis)(data);
109
+ if (decoded) {
110
+ errorName = decoded.name;
111
+ args = decoded.args;
112
+ }
113
+ }
114
+ let code;
115
+ if (errorName || selector || err?.code === "CALL_EXCEPTION") {
116
+ code = "CONTRACT_REVERT";
117
+ }
118
+ else if (err?.code === "INSUFFICIENT_FUNDS") {
119
+ code = "INSUFFICIENT_FUNDS";
120
+ }
121
+ else if (NETWORK_CODES.has(err?.code)) {
122
+ code = "NETWORK";
123
+ }
124
+ else {
125
+ code = "UNKNOWN";
126
+ }
127
+ let message;
128
+ const catalogueKey = contractType && selector ? `${contractType}:${selector}` : undefined;
129
+ const catalogueEntry = catalogueKey ? CATALOGUE[catalogueKey] : undefined;
130
+ if (catalogueEntry)
131
+ message = catalogueEntry.message;
132
+ if (!message)
133
+ message = err?.shortMessage ?? err?.message ?? String(err ?? "Unknown error");
134
+ return new RpcError({ code, action, message, contract, errorName, selector, args, cause: error });
135
+ }
@@ -2,7 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ethers_1 = require("ethers");
4
4
  const contracts_1 = require("../../utils/contracts");
5
- const artifacts_1 = require("../../utils/artifacts");
5
+ const rpcError_1 = require("../../utils/rpcError");
6
+ // `approve` is the same on every ERC20, so this doesn't need the asset's full
7
+ // ABI - some asset keys (e.g. pmUSD) resolve to an address but ship an empty
8
+ // compiled artifact, which made `getABI(assetId)` return `[]` and approving
9
+ // under them fail with "tokenContract.approve is not a function".
10
+ const ERC20_APPROVE_ABI = ["function approve(address spender, uint256 amount) returns (bool)"];
6
11
  /**
7
12
  * Approves `spender` to pull an asset from the signer.
8
13
  * @param chainId The chain id.
@@ -16,22 +21,15 @@ async function approveAsset(chainId, assetId, spender, amount, signer) {
16
21
  if (!signer) {
17
22
  throw new Error("Wallet not connected");
18
23
  }
24
+ const tokenAddress = (0, contracts_1.getContractAddress)(chainId, assetId);
19
25
  try {
20
- const tokenAddress = (0, contracts_1.getContractAddress)(chainId, assetId);
21
- // @ts-ignore
22
- const abi = (0, artifacts_1.getABI)(assetId);
23
- const tokenContract = new ethers_1.ethers.Contract(tokenAddress, abi, signer);
24
- const tx = await tokenContract.approve(spender, amount, {
25
- nonce: await signer.getNonce(),
26
- });
27
- console.log(`Approval transaction sent for ${assetId}:`, tx.hash);
26
+ const tokenContract = new ethers_1.ethers.Contract(tokenAddress, ERC20_APPROVE_ABI, signer);
27
+ const tx = await tokenContract.approve(spender, amount);
28
28
  const receipt = await tx.wait();
29
- console.log(`Approved ${amount} ${assetId} for ${spender} successfully:`, receipt.transactionHash);
30
29
  return receipt;
31
30
  }
32
31
  catch (error) {
33
- console.error(`Approval error for ${assetId}:`, error);
34
- throw new Error(`Token approval failed for ${assetId}: ${error.message}`);
32
+ throw (0, rpcError_1.toRpcError)("wallet.approveAsset", error, { chainId, address: tokenAddress });
35
33
  }
36
34
  }
37
35
  exports.default = approveAsset;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ethers_1 = require("ethers");
4
4
  const contracts_1 = require("../../utils/contracts");
5
5
  const artifacts_1 = require("../../utils/artifacts");
6
+ const rpcError_1 = require("../../utils/rpcError");
6
7
  /**
7
8
  * Burns an asset from the signer.
8
9
  * @param chainId The chain id.
@@ -12,19 +13,19 @@ const artifacts_1 = require("../../utils/artifacts");
12
13
  * @returns The transaction receipt.
13
14
  */
14
15
  async function burnAsset(chainId, assetId, amount, signer) {
16
+ if (!signer) {
17
+ throw new Error("Wallet not connected");
18
+ }
19
+ const { assets } = (0, contracts_1.getConfig)(chainId);
20
+ const asset = Object.values(assets).find(
21
+ // @ts-ignore
22
+ (asset) => asset.id.toLowerCase() === assetId.toLowerCase());
23
+ if (!asset) {
24
+ throw new Error(`Asset ${assetId} not found on chain ${chainId}`);
25
+ }
26
+ // @ts-ignore
27
+ const contractAddress = asset.contract;
15
28
  try {
16
- if (!signer) {
17
- throw new Error("Wallet not connected");
18
- }
19
- const { assets } = (0, contracts_1.getConfig)(chainId);
20
- const asset = Object.values(assets).find(
21
- // @ts-ignore
22
- (asset) => asset.id.toLowerCase() === assetId.toLowerCase());
23
- if (!asset) {
24
- throw new Error(`Asset ${assetId} not found on chain ${chainId}`);
25
- }
26
- // @ts-ignore
27
- const contractAddress = asset.contract;
28
29
  // @ts-ignore
29
30
  const abi = (0, artifacts_1.getABI)(assetId);
30
31
  const contract = new ethers_1.ethers.Contract(contractAddress, abi, signer);
@@ -34,14 +35,11 @@ async function burnAsset(chainId, assetId, amount, signer) {
34
35
  const tx = await contract.burn(amount, {
35
36
  nonce: +(await signer.getNonce()),
36
37
  });
37
- console.log(`Burning transaction sent for ${assetId}:`, tx.hash);
38
38
  const receipt = await tx.wait();
39
- console.log(`Burned ${amount} ${assetId} successfully:`, receipt.transactionHash);
40
39
  return receipt;
41
40
  }
42
41
  catch (error) {
43
- console.error(`Error burning asset ${assetId}:`, error);
44
- throw new Error(`Burning failed for ${assetId}: ${error.message}`);
42
+ throw (0, rpcError_1.toRpcError)("wallet.burnAsset", error, { chainId, address: contractAddress });
45
43
  }
46
44
  }
47
45
  exports.default = burnAsset;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ethers_1 = require("ethers");
4
4
  const contracts_1 = require("../../utils/contracts");
5
5
  const amount_1 = require("../../utils/amount");
6
+ const rpcError_1 = require("../../utils/rpcError");
6
7
  /**
7
8
  * Reads how much of an asset `spender` may pull from `owner`.
8
9
  * @param chainId The chain id.
@@ -14,6 +15,7 @@ const amount_1 = require("../../utils/amount");
14
15
  * @throws If the read fails.
15
16
  */
16
17
  async function getAllowance(chainId, assetId, owner, spender, provider) {
18
+ let contractAddress;
17
19
  try {
18
20
  if (assetId === "eth") {
19
21
  return (0, amount_1.toAmount)(ethers_1.ethers.MaxUint256, amount_1.WAD_DECIMALS, "ETH");
@@ -21,15 +23,13 @@ async function getAllowance(chainId, assetId, owner, spender, provider) {
21
23
  const ALLOWANCE_ABI = [
22
24
  "function allowance(address,address) view returns (uint256)",
23
25
  ];
24
- const contractAddress = (0, contracts_1.getContractAddress)(chainId, assetId);
26
+ contractAddress = (0, contracts_1.getContractAddress)(chainId, assetId);
25
27
  const contract = new ethers_1.ethers.Contract(contractAddress, ALLOWANCE_ABI, provider);
26
28
  const allowance = await contract.allowance(owner, spender);
27
29
  return (0, amount_1.toTokenAmount)(chainId, assetId, allowance);
28
30
  }
29
31
  catch (error) {
30
- console.error(`Error getting allowance for asset ${assetId}:`, error);
31
- console.log({ assetId, owner, spender });
32
- throw error;
32
+ throw (0, rpcError_1.toRpcError)("wallet.getAllowance", error, { chainId, address: contractAddress });
33
33
  }
34
34
  }
35
35
  exports.default = getAllowance;
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const contracts_1 = require("../../utils/contracts");
7
7
  const getBalance_1 = __importDefault(require("./getBalance"));
8
+ const rpcError_1 = require("../../utils/rpcError");
8
9
  /**
9
10
  * Reads a configured asset's config entry together with a wallet's balance of it.
10
11
  * @param chainId The chain id.
@@ -22,8 +23,7 @@ async function getAsset(chainId, assetId, address, provider) {
22
23
  return { ...asset, balance };
23
24
  }
24
25
  catch (error) {
25
- console.log(`Error getting balance: ${error}`);
26
- throw error;
26
+ throw (0, rpcError_1.toRpcError)("wallet.getAsset", error, { chainId });
27
27
  }
28
28
  }
29
29
  exports.default = getAsset;
@@ -4,6 +4,7 @@ const ethers_1 = require("ethers");
4
4
  const contracts_1 = require("../../utils/contracts");
5
5
  const amount_1 = require("../../utils/amount");
6
6
  const _helpers_1 = require("../../assets/_helpers");
7
+ const rpcError_1 = require("../../utils/rpcError");
7
8
  /**
8
9
  * Reads a wallet's balance of a configured asset or native ETH.
9
10
  * @param chainId The chain id.
@@ -15,20 +16,20 @@ const _helpers_1 = require("../../assets/_helpers");
15
16
  */
16
17
  async function getBalance(chainId, assetId, address, provider) {
17
18
  const BALANCE_OF_ABI = ["function balanceOf(address) view returns (uint256)"];
19
+ let contractAddress;
18
20
  try {
19
21
  if (assetId === "eth") {
20
22
  const balance = await provider.getBalance(address);
21
23
  return (0, amount_1.toAmount)(balance, amount_1.WAD_DECIMALS, "ETH");
22
24
  }
23
25
  (0, _helpers_1.assertAssetDeployed)(chainId, assetId);
24
- const contractAddress = (0, contracts_1.getContractAddress)(chainId, assetId);
26
+ contractAddress = (0, contracts_1.getContractAddress)(chainId, assetId);
25
27
  const contract = new ethers_1.ethers.Contract(contractAddress, BALANCE_OF_ABI, provider);
26
28
  const balance = await contract.balanceOf(address);
27
29
  return (0, amount_1.toTokenAmount)(chainId, assetId, balance);
28
30
  }
29
31
  catch (error) {
30
- console.error(`Error getting balance for asset ${assetId}:`, error);
31
- throw error;
32
+ throw (0, rpcError_1.toRpcError)("wallet.getBalance", error, { chainId, address: contractAddress });
32
33
  }
33
34
  }
34
35
  exports.default = getBalance;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ethers_1 = require("ethers");
4
4
  const contracts_1 = require("../../utils/contracts");
5
5
  const artifacts_1 = require("../../utils/artifacts");
6
+ const rpcError_1 = require("../../utils/rpcError");
6
7
  /**
7
8
  * Mints an asset to `address`.
8
9
  * @param chainId The chain id.
@@ -13,20 +14,19 @@ const artifacts_1 = require("../../utils/artifacts");
13
14
  * @returns The transaction receipt.
14
15
  */
15
16
  async function mintAsset(chainId, assetId, amount, address, signer) {
17
+ if (!signer) {
18
+ throw new Error("Wallet not connected");
19
+ }
20
+ const { assets } = (0, contracts_1.getConfig)(chainId);
21
+ const asset = Object.values(assets).find(
22
+ // @ts-ignore
23
+ (asset) => asset.id.toLowerCase() === assetId.toLowerCase());
24
+ if (!asset) {
25
+ throw new Error(`Asset ${assetId} not found on chain ${chainId}`);
26
+ }
27
+ // @ts-ignore
28
+ const contractAddress = asset.contract;
16
29
  try {
17
- if (!signer) {
18
- throw new Error("Wallet not connected");
19
- }
20
- const { assets } = (0, contracts_1.getConfig)(chainId);
21
- console.log("assets", assets);
22
- const asset = Object.values(assets).find(
23
- // @ts-ignore
24
- (asset) => asset.id.toLowerCase() === assetId.toLowerCase());
25
- if (!asset) {
26
- throw new Error(`Asset ${assetId} not found on chain ${chainId}`);
27
- }
28
- // @ts-ignore
29
- const contractAddress = asset.contract;
30
30
  let contract;
31
31
  // @ts-ignore
32
32
  const abi = (0, artifacts_1.getABI)(assetId);
@@ -38,14 +38,11 @@ async function mintAsset(chainId, assetId, amount, address, signer) {
38
38
  // maxFeePerGas,
39
39
  nonce: +(await signer.getNonce()),
40
40
  });
41
- console.log(`Minting transaction sent for ${assetId}:`, tx.hash);
42
41
  const receipt = await tx.wait();
43
- console.log(`Minted ${amount} ${assetId} successfully:`, receipt.hash);
44
42
  return receipt;
45
43
  }
46
44
  catch (error) {
47
- console.error(`Error minting asset ${assetId}:`, error);
48
- throw new Error(`Minting failed for ${assetId}: ${error.message}`);
45
+ throw (0, rpcError_1.toRpcError)("wallet.mintAsset", error, { chainId, address: contractAddress });
49
46
  }
50
47
  }
51
48
  exports.default = mintAsset;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ethers_1 = require("ethers");
4
4
  const contracts_1 = require("../../utils/contracts");
5
5
  const artifacts_1 = require("../../utils/artifacts");
6
+ const rpcError_1 = require("../../utils/rpcError");
6
7
  /**
7
8
  * Transfers an asset or native ETH from the signer.
8
9
  * @param chainId The chain id.
@@ -14,10 +15,11 @@ const artifacts_1 = require("../../utils/artifacts");
14
15
  * @returns The transaction receipt.
15
16
  */
16
17
  async function transferAsset(chainId, assetId, amount, fromAddress, toAddress, signer) {
18
+ if (!signer) {
19
+ throw new Error("Wallet not connected");
20
+ }
21
+ let contractAddress;
17
22
  try {
18
- if (!signer) {
19
- throw new Error("Wallet not connected");
20
- }
21
23
  if (assetId.toLowerCase() === "eth") {
22
24
  // Handle ETH transfer
23
25
  const tx = await signer.sendTransaction({
@@ -25,9 +27,7 @@ async function transferAsset(chainId, assetId, amount, fromAddress, toAddress, s
25
27
  value: amount,
26
28
  nonce: await signer.getNonce(),
27
29
  });
28
- console.log(`ETH transfer transaction sent:`, tx.hash);
29
30
  const receipt = await tx.wait();
30
- console.log(`Transferred ${amount} ETH from ${fromAddress} to ${toAddress} successfully:`, (await receipt?.getTransaction())?.hash);
31
31
  return receipt;
32
32
  }
33
33
  else {
@@ -40,7 +40,7 @@ async function transferAsset(chainId, assetId, amount, fromAddress, toAddress, s
40
40
  throw new Error(`Asset ${assetId} not found on chain ${chainId}`);
41
41
  }
42
42
  // @ts-ignore
43
- const contractAddress = asset.contract;
43
+ contractAddress = asset.contract;
44
44
  // @ts-ignore
45
45
  const abi = (0, artifacts_1.getABI)(assetId);
46
46
  const contract = new ethers_1.ethers.Contract(contractAddress, abi, signer);
@@ -50,15 +50,12 @@ async function transferAsset(chainId, assetId, amount, fromAddress, toAddress, s
50
50
  const tx = await contract.transfer(toAddress, amount, {
51
51
  nonce: await signer.getNonce(),
52
52
  });
53
- console.log(`Transfer transaction sent for ${assetId}:`, tx.hash);
54
53
  const receipt = await tx.wait();
55
- console.log(`Transferred ${amount} ${assetId} from ${fromAddress} to ${toAddress} successfully:`, receipt.transactionHash);
56
54
  return receipt;
57
55
  }
58
56
  }
59
57
  catch (error) {
60
- console.error(`Error transferring asset ${assetId}:`, error);
61
- throw new Error(`Transfer failed for ${assetId}: ${error.message}`);
58
+ throw (0, rpcError_1.toRpcError)("wallet.transferAsset", error, { chainId, address: contractAddress });
62
59
  }
63
60
  }
64
61
  exports.default = transferAsset;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raac/rpc",
3
- "version": "2.0.0-beta.1",
3
+ "version": "2.0.0-beta.3",
4
4
  "description": "RPC Library for RAAC",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -9,13 +9,13 @@
9
9
  ],
10
10
  "scripts": {
11
11
  "dev": "ts-node-dev --transpile-only --env-file=.env scripts/index.ts",
12
- "build": "npm run generate:errors && tsc && cp -r typechain-types dist/types && cp -r generated dist/generated",
12
+ "build": "tsc && cp -r typechain-types dist/types && cp -r generated dist/generated",
13
13
  "build:watch": "tsc --watch",
14
14
  "test": "echo \"Error: no test specified\" && exit 1",
15
15
  "sync": "bash setup.sh",
16
16
  "clean": "rm -rf dist",
17
17
  "prebuild": "npm run clean",
18
- "generate:errors": "ts-node scripts/generateErrorMap.ts"
18
+ "generate:catalogue": "node --env-file=.env -r ts-node/register/transpile-only scripts/generateErrorCatalogue.ts"
19
19
  },
20
20
  "keywords": [
21
21
  "RAAC",
@@ -32,6 +32,7 @@
32
32
  "ethers5": "npm:ethers@5.8.0"
33
33
  },
34
34
  "devDependencies": {
35
+ "@anthropic-ai/sdk": "^0.127.0",
35
36
  "eslint": "9.39.1",
36
37
  "ts-node": "10.9.2",
37
38
  "ts-node-dev": "2.0.0",