@raac/rpc 1.2.0-beta.9 → 2.0.0-beta.0

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 (666) hide show
  1. package/dist/RPCLibrary.js +59 -10
  2. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.json +113 -20
  3. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +259 -31
  4. package/dist/artifacts/core/governance/gauges/GaugeRewardsDistributor.sol/GaugeRewardsDistributor.json +159 -31
  5. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +115 -22
  6. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +115 -22
  7. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.json +367 -98
  8. package/dist/artifacts/core/governance/proposals/TimelockController.sol/TimelockController.json +11 -16
  9. package/dist/artifacts/core/lockers/RAACLiquidLocker.sol/RAACLiquidLocker.json +113 -19
  10. package/dist/assets/_helpers.js +31 -0
  11. package/dist/assets/getAsset.js +13 -3
  12. package/dist/assets/getAssets.js +15 -15
  13. package/dist/assets/getSupply.js +16 -5
  14. package/dist/configs/chains/1.json +31 -35
  15. package/dist/configs/chains/11155111.json +101 -120
  16. package/dist/configs/chains/17000.json +31 -35
  17. package/dist/configs/chains/18453.json +31 -35
  18. package/dist/configs/chains/8453.json +88 -41
  19. package/dist/contracts/decodeCall.js +61 -0
  20. package/dist/contracts/findContract.js +68 -0
  21. package/dist/contracts/getContractAddress.js +5 -1
  22. package/dist/contracts/governance/_helpers.js +39 -0
  23. package/dist/contracts/governance/distributor/claimAll.js +18 -11
  24. package/dist/contracts/governance/distributor/claimForGauge.js +18 -12
  25. package/dist/contracts/governance/distributor/deposit.js +17 -12
  26. package/dist/contracts/governance/distributor/getClaimableForGauge.js +12 -9
  27. package/dist/contracts/governance/distributor/getClaimedAtEpoch.js +13 -10
  28. package/dist/contracts/governance/distributor/getDepositedAtEpoch.js +10 -9
  29. package/dist/contracts/governance/distributor/getDustLastProcessedEpoch.js +28 -0
  30. package/dist/contracts/governance/distributor/getGaugeController.js +7 -7
  31. package/dist/contracts/governance/distributor/getLastClaimedEpoch.js +10 -9
  32. package/dist/contracts/governance/distributor/getMaxClaimBound.js +29 -0
  33. package/dist/contracts/governance/distributor/getPeriodDuration.js +7 -7
  34. package/dist/contracts/governance/distributor/getRewardToken.js +7 -7
  35. package/dist/contracts/governance/distributor/getRewardTokenInfo.js +18 -9
  36. package/dist/contracts/governance/distributor/getRewardTokenStats.js +13 -8
  37. package/dist/contracts/governance/distributor/index.js +5 -2
  38. package/dist/contracts/governance/distributor/setController.js +17 -12
  39. package/dist/contracts/governance/distributor/setLastClaimedEpoch.js +32 -0
  40. package/dist/contracts/governance/distributor/setMaxClaimBound.js +31 -0
  41. package/dist/contracts/governance/distributor/withdrawDust.js +31 -0
  42. package/dist/contracts/governance/distributor/withdrawRemovedGaugeRewards.js +19 -13
  43. package/dist/contracts/governance/gauge/_apy.js +126 -0
  44. package/dist/contracts/governance/gauge/_tokens.js +54 -0
  45. package/dist/contracts/governance/gauge/addRewardToken.js +2 -12
  46. package/dist/contracts/governance/gauge/approveGaugeToken.js +31 -0
  47. package/dist/contracts/governance/gauge/claimExtraReward.js +2 -12
  48. package/dist/contracts/governance/gauge/claimExtraRewards.js +2 -12
  49. package/dist/contracts/governance/gauge/claimOnBehalfOf.js +3 -13
  50. package/dist/contracts/governance/gauge/claimRewardToken.js +3 -13
  51. package/dist/contracts/governance/gauge/claimRewardsFor.js +2 -12
  52. package/dist/contracts/governance/gauge/depositRewardToken.js +3 -13
  53. package/dist/contracts/governance/gauge/getAllPendingExtraRewards.js +8 -10
  54. package/dist/contracts/governance/gauge/getApy.js +45 -0
  55. package/dist/contracts/governance/gauge/getBalanceOf.js +10 -18
  56. package/dist/contracts/governance/gauge/getControllerAddress.js +2 -9
  57. package/dist/contracts/governance/gauge/getDecimalAdjustment.js +5 -10
  58. package/dist/contracts/governance/gauge/getDepositRAACOnClaim.js +2 -9
  59. package/dist/contracts/governance/gauge/getDistributorData.js +2 -9
  60. package/dist/contracts/governance/gauge/getDistributors.js +2 -9
  61. package/dist/contracts/governance/gauge/getEarnedExtraReward.js +31 -0
  62. package/dist/contracts/governance/gauge/getEarnedReward.js +10 -15
  63. package/dist/contracts/governance/gauge/getExtraRewardTokens.js +2 -9
  64. package/dist/contracts/governance/gauge/getGaugeData.js +40 -0
  65. package/dist/contracts/governance/gauge/getGaugeRewardTokenData.js +14 -14
  66. package/dist/contracts/governance/gauge/getPauseStatus.js +31 -0
  67. package/dist/contracts/governance/gauge/getPendingExtraRewards.js +5 -10
  68. package/dist/contracts/governance/gauge/getPendingRewards.js +10 -15
  69. package/dist/contracts/governance/gauge/getPeriodBoundaries.js +2 -15
  70. package/dist/contracts/governance/gauge/getPeriodDuration.js +2 -15
  71. package/dist/contracts/governance/gauge/getRaacAutolockMin.js +5 -10
  72. package/dist/contracts/governance/gauge/getRawBalanceOf.js +10 -18
  73. package/dist/contracts/governance/gauge/getRawTotalSupply.js +10 -18
  74. package/dist/contracts/governance/gauge/getRewardTokens.js +28 -0
  75. package/dist/contracts/governance/gauge/getTotalSupply.js +10 -18
  76. package/dist/contracts/governance/gauge/getUserApy.js +73 -0
  77. package/dist/contracts/governance/gauge/getUserClaimableRewards.js +26 -86
  78. package/dist/contracts/governance/gauge/getUserGaugeState.js +52 -0
  79. package/dist/contracts/governance/gauge/getUserRewardTokenData.js +12 -11
  80. package/dist/contracts/governance/gauge/getUserWeight.js +11 -11
  81. package/dist/contracts/governance/gauge/index.js +11 -1
  82. package/dist/contracts/governance/gauge/isPaused.js +4 -11
  83. package/dist/contracts/governance/gauge/manageDistributor.js +2 -12
  84. package/dist/contracts/governance/gauge/pullRewardsFromDistributor.js +30 -0
  85. package/dist/contracts/governance/gauge/setController.js +2 -12
  86. package/dist/contracts/governance/gauge/setDepositRAACOnClaim.js +2 -12
  87. package/dist/contracts/governance/gauge/setEmergencyPaused.js +2 -12
  88. package/dist/contracts/governance/gauge/setGaugeRewardDistributor.js +2 -12
  89. package/dist/contracts/governance/gauge/setRaacAutolockMin.js +3 -13
  90. package/dist/contracts/governance/gauge/stake.js +3 -19
  91. package/dist/contracts/governance/gauge/unwrapStakingToken.js +28 -0
  92. package/dist/contracts/governance/gauge/updateUserRewards.js +2 -18
  93. package/dist/contracts/governance/gauge/withdraw.js +3 -19
  94. package/dist/contracts/governance/gauge/wrapStakingToken.js +28 -0
  95. package/dist/contracts/governance/gaugeController/addGauge.js +19 -11
  96. package/dist/contracts/governance/gaugeController/batchVote.js +20 -12
  97. package/dist/contracts/governance/gaugeController/calculateBoost.js +25 -23
  98. package/dist/contracts/governance/gaugeController/forceCompleteCheckpoint.js +19 -11
  99. package/dist/contracts/governance/gaugeController/getActiveGaugeCount.js +28 -0
  100. package/dist/contracts/governance/gaugeController/getActiveGauges.js +13 -15
  101. package/dist/contracts/governance/gaugeController/getConstants.js +10 -18
  102. package/dist/contracts/governance/gaugeController/getCurrentEpoch.js +8 -7
  103. package/dist/contracts/governance/gaugeController/getExpiredGaugeVotePower.js +30 -0
  104. package/dist/contracts/governance/gaugeController/getGauge.js +13 -10
  105. package/dist/contracts/governance/gaugeController/getGaugeDistributor.js +28 -0
  106. package/dist/contracts/governance/gaugeController/getGaugeEmissions.js +52 -64
  107. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeight.js +19 -15
  108. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeightView.js +14 -11
  109. package/dist/contracts/governance/gaugeController/getGaugeWeight.js +12 -9
  110. package/dist/contracts/governance/gaugeController/getLastVoteTime.js +11 -9
  111. package/dist/contracts/governance/gaugeController/getMaxVoteBuckets.js +28 -0
  112. package/dist/contracts/governance/gaugeController/getNextEpoch.js +8 -7
  113. package/dist/contracts/governance/gaugeController/getRegisteredGaugeList.js +28 -0
  114. package/dist/contracts/governance/gaugeController/getTotalWeight.js +10 -8
  115. package/dist/contracts/governance/gaugeController/getUserGaugeVotePower.js +11 -9
  116. package/dist/contracts/governance/gaugeController/getUserVotePowerRemaining.js +10 -10
  117. package/dist/contracts/governance/gaugeController/getVeToken.js +8 -7
  118. package/dist/contracts/governance/gaugeController/getVoteUserLocks.js +33 -0
  119. package/dist/contracts/governance/gaugeController/getVoteUserPower.js +8 -7
  120. package/dist/contracts/governance/gaugeController/getVoteUserSlope.js +13 -10
  121. package/dist/contracts/governance/gaugeController/index.js +10 -1
  122. package/dist/contracts/governance/gaugeController/isGaugeActive.js +11 -9
  123. package/dist/contracts/governance/gaugeController/isPaused.js +9 -8
  124. package/dist/contracts/governance/gaugeController/kick.js +17 -10
  125. package/dist/contracts/governance/gaugeController/removeGauge.js +20 -11
  126. package/dist/contracts/governance/gaugeController/removePowerFromGauge.js +19 -11
  127. package/dist/contracts/governance/gaugeController/setBoostAmplificationEnabled.js +20 -12
  128. package/dist/contracts/governance/gaugeController/setDistributor.js +31 -0
  129. package/dist/contracts/governance/gaugeController/setEmergencyGaugePause.js +20 -12
  130. package/dist/contracts/governance/gaugeController/setEmergencyGaugePauseBatch.js +33 -0
  131. package/dist/contracts/governance/gaugeController/setEmergencyPause.js +18 -11
  132. package/dist/contracts/governance/gaugeController/setMaxVoteBuckets.js +31 -0
  133. package/dist/contracts/governance/gaugeController/vote.js +15 -16
  134. package/dist/contracts/governance/gaugeSystems/_helpers.js +123 -0
  135. package/dist/contracts/governance/gaugeSystems/findGauge.js +14 -0
  136. package/dist/contracts/governance/gaugeSystems/getGaugeSystem.js +14 -0
  137. package/dist/contracts/governance/gaugeSystems/getGaugeSystems.js +13 -0
  138. package/dist/contracts/governance/gaugeSystems/getGauges.js +15 -0
  139. package/dist/contracts/governance/gaugeSystems/index.js +21 -0
  140. package/dist/contracts/governance/proposals/cancel.js +8 -7
  141. package/dist/contracts/governance/proposals/castVote.js +8 -6
  142. package/dist/contracts/governance/proposals/execute.js +6 -5
  143. package/dist/contracts/governance/proposals/getGovernances.js +22 -0
  144. package/dist/contracts/{tokens/veRAAC/getEffectiveLockEnd.js → governance/proposals/getLabel.js} +10 -11
  145. package/dist/contracts/governance/proposals/getProposal.js +14 -18
  146. package/dist/contracts/governance/proposals/getProposalCount.js +4 -3
  147. package/dist/contracts/governance/proposals/{getProposalData.js → getProposalEta.js} +12 -16
  148. package/dist/contracts/governance/proposals/getProposalInfo.js +10 -8
  149. package/dist/contracts/governance/proposals/getProposalThreshold.js +7 -5
  150. package/dist/contracts/governance/proposals/getQuorum.js +11 -8
  151. package/dist/contracts/governance/proposals/getQuorumNumerator.js +7 -8
  152. package/dist/contracts/governance/proposals/getRoles.js +34 -0
  153. package/dist/contracts/governance/proposals/getState.js +4 -3
  154. package/dist/contracts/governance/proposals/getVoteReceipt.js +54 -0
  155. package/dist/contracts/governance/proposals/getVotes.js +8 -6
  156. package/dist/contracts/governance/proposals/getVotingDelay.js +4 -3
  157. package/dist/contracts/governance/proposals/getVotingPeriod.js +4 -3
  158. package/dist/contracts/governance/proposals/hasRole.js +31 -0
  159. package/dist/contracts/governance/proposals/hasVoted.js +32 -0
  160. package/dist/contracts/governance/proposals/index.js +22 -4
  161. package/dist/contracts/governance/proposals/propose.js +9 -20
  162. package/dist/contracts/governance/proposals/setParameter.js +46 -0
  163. package/dist/contracts/governance/proposals/setTimelock.js +36 -0
  164. package/dist/contracts/governance/timelock/getConstants.js +4 -3
  165. package/dist/contracts/governance/timelock/getMinDelay.js +4 -3
  166. package/dist/contracts/governance/timelock/getRoles.js +37 -0
  167. package/dist/contracts/governance/timelock/getTimestamp.js +4 -3
  168. package/dist/contracts/governance/timelock/hasRole.js +31 -0
  169. package/dist/contracts/governance/timelock/hashOperationBatch.js +7 -6
  170. package/dist/contracts/governance/timelock/index.js +5 -1
  171. package/dist/contracts/governance/timelock/isOperationDone.js +4 -3
  172. package/dist/contracts/governance/timelock/isOperationPending.js +4 -3
  173. package/dist/contracts/governance/timelock/isOperationReady.js +4 -3
  174. package/dist/contracts/housePrices/getLatestPrice.js +12 -4
  175. package/dist/contracts/lockers/botLocker/getClaimable.js +8 -1
  176. package/dist/contracts/lockers/botLocker/getClaimables.js +10 -4
  177. package/dist/contracts/lockers/botLocker/getClaimedRewards.js +13 -4
  178. package/dist/contracts/lockers/liquidLocker/borrow.js +5 -0
  179. package/dist/contracts/lockers/liquidLocker/checkAccountHealth.js +15 -0
  180. package/dist/contracts/lockers/liquidLocker/deposit.js +4 -0
  181. package/dist/contracts/lockers/liquidLocker/donate.js +4 -0
  182. package/dist/contracts/lockers/liquidLocker/getConfig.js +14 -7
  183. package/dist/contracts/lockers/liquidLocker/getGlobalInfo.js +12 -17
  184. package/dist/contracts/lockers/liquidLocker/getUserInfo.js +12 -15
  185. package/dist/contracts/lockers/liquidLocker/getUserLocks.js +20 -8
  186. package/dist/contracts/lockers/liquidLocker/harvest.js +5 -0
  187. package/dist/contracts/lockers/liquidLocker/previewWithdraw.js +26 -0
  188. package/dist/contracts/lockers/liquidLocker/repay.js +5 -1
  189. package/dist/contracts/lockers/liquidLocker/requestUnlock.js +16 -4
  190. package/dist/contracts/lockers/liquidLocker/voteGauge.js +7 -1
  191. package/dist/contracts/lockers/maturityVault/deposit.js +4 -0
  192. package/dist/contracts/lockers/maturityVault/depositFor.js +5 -0
  193. package/dist/contracts/lockers/maturityVault/distribute.js +5 -0
  194. package/dist/contracts/lockers/maturityVault/getConfig.js +12 -2
  195. package/dist/contracts/lockers/maturityVault/getGlobalInfo.js +9 -11
  196. package/dist/contracts/lockers/maturityVault/getUserInfo.js +8 -4
  197. package/dist/contracts/lockers/maturityVault/withdraw.js +5 -0
  198. package/dist/contracts/pmBlender/_helpers.js +19 -0
  199. package/dist/contracts/pmBlender/getReserveBalance.js +13 -12
  200. package/dist/contracts/pmBlender/previewDeposit.js +15 -12
  201. package/dist/contracts/pmBlender/previewSwap.js +16 -12
  202. package/dist/contracts/pmBlender/previewWithdraw.js +15 -12
  203. package/dist/contracts/pmMarket/getMarketConfig.js +15 -13
  204. package/dist/contracts/pmTreasury/_helpers.js +51 -0
  205. package/dist/contracts/pmTreasury/getCollateralRatio.js +13 -16
  206. package/dist/contracts/pmTreasury/getCurrentNav.js +15 -22
  207. package/dist/contracts/pmTreasury/getLeverageRatio.js +13 -16
  208. package/dist/contracts/pmTreasury/getMaxMintablePMUSD.js +17 -21
  209. package/dist/contracts/pmTreasury/getMaxMintablePMUSDWithoutBaseToken.js +16 -19
  210. package/dist/contracts/pmTreasury/getMaxMintableXPM.js +18 -22
  211. package/dist/contracts/pmTreasury/getMaxRedeemablePMUSD.js +17 -21
  212. package/dist/contracts/pmTreasury/getMaxRedeemableXPM.js +17 -21
  213. package/dist/contracts/pmTreasury/getTotalBaseToken.js +13 -16
  214. package/dist/contracts/tokens/RAAC/getBalance.js +16 -5
  215. package/dist/contracts/tokens/RAAC/getTotalSupply.js +12 -7
  216. package/dist/contracts/tokens/crvUSD/getBalance.js +16 -5
  217. package/dist/contracts/tokens/crvUSD/getTotalSupply.js +12 -7
  218. package/dist/contracts/tokens/leRAAC/approve.js +9 -0
  219. package/dist/contracts/tokens/leRAAC/burn.js +5 -0
  220. package/dist/contracts/tokens/leRAAC/burnFrom.js +6 -0
  221. package/dist/contracts/tokens/leRAAC/getAllowance.js +11 -2
  222. package/dist/contracts/tokens/leRAAC/getBalance.js +10 -2
  223. package/dist/contracts/tokens/leRAAC/getMinterInfo.js +10 -1
  224. package/dist/contracts/tokens/leRAAC/getTotalSupply.js +9 -2
  225. package/dist/contracts/tokens/leRAAC/transfer.js +9 -0
  226. package/dist/contracts/tokens/leRAAC/transferFrom.js +10 -0
  227. package/dist/contracts/tokens/pmUSD/getBalance.js +16 -5
  228. package/dist/contracts/tokens/pmUSD/getTotalSupply.js +11 -6
  229. package/dist/contracts/tokens/rcrvUSD/getBalance.js +17 -6
  230. package/dist/contracts/tokens/rcrvUSD/getTotalSupply.js +13 -7
  231. package/dist/contracts/tokens/veRAAC/_helpers.js +38 -0
  232. package/dist/contracts/tokens/veRAAC/distributeRewards.js +1 -1
  233. package/dist/contracts/tokens/veRAAC/getBalance.js +10 -1
  234. package/dist/contracts/tokens/veRAAC/getBalanceAt.js +3 -2
  235. package/dist/contracts/tokens/veRAAC/getBalanceAtTime.js +3 -2
  236. package/dist/contracts/tokens/veRAAC/getCheckpoint.js +3 -2
  237. package/dist/contracts/tokens/veRAAC/getClaimable.js +3 -2
  238. package/dist/contracts/tokens/veRAAC/getClaimed.js +3 -2
  239. package/dist/contracts/tokens/veRAAC/getEarned.js +3 -2
  240. package/dist/contracts/tokens/veRAAC/getGlobalLockInfo.js +3 -2
  241. package/dist/contracts/tokens/veRAAC/getLockedBalance.js +3 -2
  242. package/dist/contracts/tokens/veRAAC/getLocks.js +5 -7
  243. package/dist/contracts/tokens/veRAAC/getMinLockAmount.js +36 -0
  244. package/dist/contracts/tokens/veRAAC/getRagequitRequest.js +6 -5
  245. package/dist/contracts/tokens/veRAAC/getRawBalanceOf.js +3 -2
  246. package/dist/contracts/tokens/veRAAC/getRawTotalSupply.js +3 -2
  247. package/dist/contracts/tokens/veRAAC/getTotalSupply.js +7 -5
  248. package/dist/contracts/tokens/veRAAC/getTotalSupplyAt.js +3 -2
  249. package/dist/contracts/tokens/veRAAC/getTotalSupplyAtTime.js +3 -2
  250. package/dist/contracts/tokens/veRAAC/getUserPointHistory.js +5 -4
  251. package/dist/contracts/tokens/veRAAC/increase.js +1 -1
  252. package/dist/contracts/tokens/veRAAC/increaseWithApproval.js +4 -17
  253. package/dist/contracts/tokens/veRAAC/index.js +3 -3
  254. package/dist/contracts/tokens/veRAAC/lock.js +1 -1
  255. package/dist/contracts/tokens/veRAAC/lockWithApproval.js +4 -19
  256. package/dist/contracts/tokens/xPM/getBalance.js +16 -5
  257. package/dist/contracts/tokens/xPM/getTotalSupply.js +11 -6
  258. package/dist/contracts/zap/aladdin/zap.js +9 -1
  259. package/dist/contracts/zap/aladdin/zapFrom.js +9 -1
  260. package/dist/contracts/zap/aladdin/zapWithRoutes.js +11 -2
  261. package/dist/contracts/zeno/createAuction.js +13 -0
  262. package/dist/contracts/zeno/getAuctions.js +25 -2
  263. package/dist/generated/errorMap.json +3945 -0
  264. package/dist/index.js +15 -0
  265. package/dist/methods/approveToken.js +10 -2
  266. package/dist/methods/commons/checkAllowance.js +11 -1
  267. package/dist/methods/getAssetBalance.js +16 -6
  268. package/dist/minter/_helpers.js +11 -0
  269. package/dist/minter/calculateScheduledMintableAmount.js +3 -1
  270. package/dist/minter/get.js +5 -10
  271. package/dist/minter/getApy.js +12 -9
  272. package/dist/minter/getDistributionPools.js +4 -3
  273. package/dist/minter/getEmissionPerSecond.js +4 -2
  274. package/dist/minter/getPoolInfo.js +5 -3
  275. package/dist/nfts/_helpers.js +17 -0
  276. package/dist/nfts/getHousePrice.js +10 -1
  277. package/dist/nfts/getMintFeePercentage.js +7 -3
  278. package/dist/nfts/getMintPrice.js +10 -7
  279. package/dist/nfts/mint.js +12 -4
  280. package/dist/pools/lendingPool/_helpers.js +37 -2
  281. package/dist/pools/lendingPool/adapters/erc20/getERC20AdapterBalance.js +15 -3
  282. package/dist/pools/lendingPool/borrowFromLendingPool.js +13 -3
  283. package/dist/pools/lendingPool/borrowFromLendingPoolWithInsurance.js +19 -9
  284. package/dist/pools/lendingPool/calculateInsuranceFee.js +12 -5
  285. package/dist/pools/lendingPool/depositToLendingPool.js +9 -6
  286. package/dist/pools/lendingPool/getEligibleUserDeposits.js +5 -7
  287. package/dist/pools/lendingPool/getHealthFactor.js +8 -7
  288. package/dist/pools/lendingPool/getHousePrice.js +10 -6
  289. package/dist/pools/lendingPool/getLendingPoolInfo.js +92 -82
  290. package/dist/pools/lendingPool/getLendingPoolTotalLiquidity.js +8 -4
  291. package/dist/pools/lendingPool/getParameters.js +22 -14
  292. package/dist/pools/lendingPool/getPositionDebt.js +7 -5
  293. package/dist/pools/lendingPool/getPositionScaledDebt.js +7 -7
  294. package/dist/pools/lendingPool/getPositionView.js +24 -19
  295. package/dist/pools/lendingPool/getPositionsScaledDebt.js +6 -8
  296. package/dist/pools/lendingPool/getRawUserDepositsInLendingPool.js +8 -4
  297. package/dist/pools/lendingPool/getUserCollateralValue.js +7 -8
  298. package/dist/pools/lendingPool/openVaultPosition.js +3 -4
  299. package/dist/pools/lendingPool/repayToLendingPool.js +9 -0
  300. package/dist/pools/lendingPool/withdrawFromLendingPool.js +15 -16
  301. package/dist/pools/liquidityPool/getLiquidityPoolInfo.js +23 -30
  302. package/dist/pools/rwaVault/_helpers.js +26 -2
  303. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterAssetValue.js +9 -1
  304. package/dist/pools/rwaVault/adapters/erc20/getERC20VaultAdapterTotalValue.js +8 -1
  305. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterAssetValue.js +9 -1
  306. package/dist/pools/rwaVault/adapters/erc721/getERC721VaultAdapterTotalValue.js +8 -1
  307. package/dist/pools/rwaVault/depositToRWAVault.js +15 -3
  308. package/dist/pools/rwaVault/getRWAVaultInfo.js +10 -3
  309. package/dist/pools/rwaVault/previewDeposit.js +11 -5
  310. package/dist/pools/rwaVault/previewWithdraw.js +11 -5
  311. package/dist/pools/rwaVault/redeemNFTFromRWAVault.js +11 -3
  312. package/dist/pools/stabilityPool/depositToStabilityPool.js +11 -9
  313. package/dist/pools/stabilityPool/getRawUserDepositsInStabilityPool.js +11 -9
  314. package/dist/pools/stabilityPool/getStabilityPoolInfo.js +16 -30
  315. package/dist/pools/stabilityPool/getStabilityPoolTotalDeposits.js +10 -7
  316. package/dist/pools/stabilityPool/getWithdrawRequestInfo.js +17 -7
  317. package/dist/pools/stabilityPool/requestWithdraw.js +9 -4
  318. package/dist/pools/stabilityPool/withdrawFromStabilityPool.js +11 -9
  319. package/dist/prices/getPrices.js +10 -4
  320. package/dist/scripts/index.js +2 -1
  321. package/dist/scripts/liquidation.js +11 -10
  322. package/dist/types/RPCLibrary.d.ts +46 -4
  323. package/dist/types/assets/_helpers.d.ts +16 -0
  324. package/dist/types/assets/getAsset.d.ts +12 -1
  325. package/dist/types/assets/getAssets.d.ts +10 -1
  326. package/dist/types/assets/getSupply.d.ts +10 -1
  327. package/dist/types/configs/chains/index.d.ts +54 -66
  328. package/dist/types/configs/index.d.ts +27 -33
  329. package/dist/types/contracts/decodeCall.d.ts +33 -0
  330. package/dist/types/contracts/findContract.d.ts +24 -0
  331. package/dist/types/contracts/governance/_helpers.d.ts +28 -0
  332. package/dist/types/contracts/governance/distributor/claimAll.d.ts +7 -5
  333. package/dist/types/contracts/governance/distributor/claimForGauge.d.ts +7 -6
  334. package/dist/types/contracts/governance/distributor/deposit.d.ts +7 -6
  335. package/dist/types/contracts/governance/distributor/getClaimableForGauge.d.ts +7 -4
  336. package/dist/types/contracts/governance/distributor/getClaimedAtEpoch.d.ts +8 -5
  337. package/dist/types/contracts/governance/distributor/getDepositedAtEpoch.d.ts +7 -4
  338. package/dist/types/contracts/governance/distributor/getDustLastProcessedEpoch.d.ts +12 -0
  339. package/dist/types/contracts/governance/distributor/getGaugeController.d.ts +5 -3
  340. package/dist/types/contracts/governance/distributor/getLastClaimedEpoch.d.ts +6 -4
  341. package/dist/types/contracts/governance/distributor/getMaxClaimBound.d.ts +15 -0
  342. package/dist/types/contracts/governance/distributor/getPeriodDuration.d.ts +5 -3
  343. package/dist/types/contracts/governance/distributor/getRewardToken.d.ts +5 -3
  344. package/dist/types/contracts/governance/distributor/getRewardTokenInfo.d.ts +10 -7
  345. package/dist/types/contracts/governance/distributor/getRewardTokenStats.d.ts +9 -6
  346. package/dist/types/contracts/governance/distributor/index.d.ts +5 -2
  347. package/dist/types/contracts/governance/distributor/setController.d.ts +7 -6
  348. package/dist/types/contracts/governance/distributor/setLastClaimedEpoch.d.ts +13 -0
  349. package/dist/types/contracts/governance/distributor/setMaxClaimBound.d.ts +13 -0
  350. package/dist/types/contracts/governance/distributor/withdrawDust.d.ts +13 -0
  351. package/dist/types/contracts/governance/distributor/withdrawRemovedGaugeRewards.d.ts +8 -7
  352. package/dist/types/contracts/governance/gauge/_apy.d.ts +72 -0
  353. package/dist/types/contracts/governance/gauge/_tokens.d.ts +25 -0
  354. package/dist/types/contracts/governance/gauge/approveGaugeToken.d.ts +14 -0
  355. package/dist/types/contracts/governance/gauge/claimOnBehalfOf.d.ts +2 -2
  356. package/dist/types/contracts/governance/gauge/claimRewardToken.d.ts +1 -1
  357. package/dist/types/contracts/governance/gauge/depositRewardToken.d.ts +2 -2
  358. package/dist/types/contracts/governance/gauge/getAllPendingExtraRewards.d.ts +3 -1
  359. package/dist/types/contracts/governance/gauge/getApy.d.ts +48 -0
  360. package/dist/types/contracts/governance/gauge/getBalanceOf.d.ts +3 -2
  361. package/dist/types/contracts/governance/gauge/getDecimalAdjustment.d.ts +3 -1
  362. package/dist/types/contracts/governance/gauge/getEarnedExtraReward.d.ts +14 -0
  363. package/dist/types/contracts/governance/gauge/getEarnedReward.d.ts +5 -3
  364. package/dist/types/contracts/governance/gauge/getGaugeData.d.ts +24 -0
  365. package/dist/types/contracts/governance/gauge/getGaugeRewardTokenData.d.ts +18 -10
  366. package/dist/types/contracts/governance/gauge/getPauseStatus.d.ts +19 -0
  367. package/dist/types/contracts/governance/gauge/getPendingExtraRewards.d.ts +3 -1
  368. package/dist/types/contracts/governance/gauge/getPendingRewards.d.ts +5 -3
  369. package/dist/types/contracts/governance/gauge/getRaacAutolockMin.d.ts +3 -1
  370. package/dist/types/contracts/governance/gauge/getRawBalanceOf.d.ts +3 -2
  371. package/dist/types/contracts/governance/gauge/getRawTotalSupply.d.ts +3 -2
  372. package/dist/types/contracts/governance/gauge/getRewardTokens.d.ts +11 -0
  373. package/dist/types/contracts/governance/gauge/getTotalSupply.d.ts +3 -2
  374. package/dist/types/contracts/governance/gauge/getUserApy.d.ts +46 -0
  375. package/dist/types/contracts/governance/gauge/getUserClaimableRewards.d.ts +22 -20
  376. package/dist/types/contracts/governance/gauge/getUserGaugeState.d.ts +35 -0
  377. package/dist/types/contracts/governance/gauge/getUserRewardTokenData.d.ts +15 -8
  378. package/dist/types/contracts/governance/gauge/getUserWeight.d.ts +4 -2
  379. package/dist/types/contracts/governance/gauge/index.d.ts +11 -1
  380. package/dist/types/contracts/governance/gauge/isPaused.d.ts +1 -1
  381. package/dist/types/contracts/governance/gauge/pullRewardsFromDistributor.d.ts +11 -0
  382. package/dist/types/contracts/governance/gauge/setRaacAutolockMin.d.ts +2 -2
  383. package/dist/types/contracts/governance/gauge/stake.d.ts +2 -2
  384. package/dist/types/contracts/governance/gauge/unwrapStakingToken.d.ts +12 -0
  385. package/dist/types/contracts/governance/gauge/withdraw.d.ts +2 -2
  386. package/dist/types/contracts/governance/gauge/wrapStakingToken.d.ts +13 -0
  387. package/dist/types/contracts/governance/gaugeController/addGauge.d.ts +8 -5
  388. package/dist/types/contracts/governance/gaugeController/batchVote.d.ts +9 -6
  389. package/dist/types/contracts/governance/gaugeController/calculateBoost.d.ts +12 -9
  390. package/dist/types/contracts/governance/gaugeController/forceCompleteCheckpoint.d.ts +8 -5
  391. package/dist/types/contracts/governance/gaugeController/getActiveGaugeCount.d.ts +12 -0
  392. package/dist/types/contracts/governance/gaugeController/getActiveGauges.d.ts +10 -5
  393. package/dist/types/contracts/governance/gaugeController/getConstants.d.ts +6 -4
  394. package/dist/types/contracts/governance/gaugeController/getCurrentEpoch.d.ts +6 -3
  395. package/dist/types/contracts/governance/gaugeController/getExpiredGaugeVotePower.d.ts +16 -0
  396. package/dist/types/contracts/governance/gaugeController/getGauge.d.ts +9 -5
  397. package/dist/types/contracts/governance/gaugeController/getGaugeDistributor.d.ts +12 -0
  398. package/dist/types/contracts/governance/gaugeController/getGaugeEmissions.d.ts +23 -20
  399. package/dist/types/contracts/governance/gaugeController/getGaugeRelativeWeight.d.ts +8 -9
  400. package/dist/types/contracts/governance/gaugeController/getGaugeRelativeWeightView.d.ts +11 -7
  401. package/dist/types/contracts/governance/gaugeController/getGaugeWeight.d.ts +7 -4
  402. package/dist/types/contracts/governance/gaugeController/getLastVoteTime.d.ts +7 -4
  403. package/dist/types/contracts/governance/gaugeController/getMaxVoteBuckets.d.ts +12 -0
  404. package/dist/types/contracts/governance/gaugeController/getNextEpoch.d.ts +6 -3
  405. package/dist/types/contracts/governance/gaugeController/getRegisteredGaugeList.d.ts +12 -0
  406. package/dist/types/contracts/governance/gaugeController/getTotalWeight.d.ts +6 -3
  407. package/dist/types/contracts/governance/gaugeController/getUserGaugeVotePower.d.ts +7 -4
  408. package/dist/types/contracts/governance/gaugeController/getUserVotePowerRemaining.d.ts +6 -4
  409. package/dist/types/contracts/governance/gaugeController/getVeToken.d.ts +6 -3
  410. package/dist/types/contracts/governance/gaugeController/getVoteUserLocks.d.ts +18 -0
  411. package/dist/types/contracts/governance/gaugeController/getVoteUserPower.d.ts +6 -3
  412. package/dist/types/contracts/governance/gaugeController/getVoteUserSlope.d.ts +10 -6
  413. package/dist/types/contracts/governance/gaugeController/index.d.ts +10 -1
  414. package/dist/types/contracts/governance/gaugeController/isGaugeActive.d.ts +6 -4
  415. package/dist/types/contracts/governance/gaugeController/isPaused.d.ts +6 -3
  416. package/dist/types/contracts/governance/gaugeController/kick.d.ts +7 -4
  417. package/dist/types/contracts/governance/gaugeController/removeGauge.d.ts +9 -5
  418. package/dist/types/contracts/governance/gaugeController/removePowerFromGauge.d.ts +8 -5
  419. package/dist/types/contracts/governance/gaugeController/setBoostAmplificationEnabled.d.ts +9 -6
  420. package/dist/types/contracts/governance/gaugeController/setDistributor.d.ts +13 -0
  421. package/dist/types/contracts/governance/gaugeController/setEmergencyGaugePause.d.ts +9 -6
  422. package/dist/types/contracts/governance/gaugeController/setEmergencyGaugePauseBatch.d.ts +14 -0
  423. package/dist/types/contracts/governance/gaugeController/setEmergencyPause.d.ts +8 -5
  424. package/dist/types/contracts/governance/gaugeController/setMaxVoteBuckets.d.ts +13 -0
  425. package/dist/types/contracts/governance/gaugeController/vote.d.ts +9 -7
  426. package/dist/types/contracts/governance/gaugeSystems/_helpers.d.ts +71 -0
  427. package/dist/types/contracts/governance/gaugeSystems/findGauge.d.ts +11 -0
  428. package/dist/types/contracts/governance/gaugeSystems/getGaugeSystem.d.ts +11 -0
  429. package/dist/types/contracts/governance/gaugeSystems/getGaugeSystems.d.ts +10 -0
  430. package/dist/types/contracts/governance/gaugeSystems/getGauges.d.ts +13 -0
  431. package/dist/types/contracts/governance/gaugeSystems/index.d.ts +5 -0
  432. package/dist/types/contracts/governance/proposals/cancel.d.ts +5 -4
  433. package/dist/types/contracts/governance/proposals/castVote.d.ts +5 -3
  434. package/dist/types/contracts/governance/proposals/execute.d.ts +3 -2
  435. package/dist/types/contracts/governance/proposals/getGovernances.d.ts +11 -0
  436. package/dist/types/contracts/governance/proposals/getLabel.d.ts +11 -0
  437. package/dist/types/contracts/governance/proposals/getProposal.d.ts +13 -13
  438. package/dist/types/contracts/governance/proposals/getProposalCount.d.ts +2 -1
  439. package/dist/types/contracts/governance/proposals/getProposalEta.d.ts +13 -0
  440. package/dist/types/contracts/governance/proposals/getProposalInfo.d.ts +12 -6
  441. package/dist/types/contracts/governance/proposals/getProposalThreshold.d.ts +4 -2
  442. package/dist/types/contracts/governance/proposals/getQuorum.d.ts +7 -4
  443. package/dist/types/contracts/governance/proposals/getQuorumNumerator.d.ts +7 -3
  444. package/dist/types/contracts/governance/proposals/getRoles.d.ts +16 -0
  445. package/dist/types/contracts/governance/proposals/getState.d.ts +2 -1
  446. package/dist/types/contracts/governance/proposals/getVoteReceipt.d.ts +27 -0
  447. package/dist/types/contracts/governance/proposals/getVotes.d.ts +8 -4
  448. package/dist/types/contracts/governance/proposals/getVotingDelay.d.ts +2 -1
  449. package/dist/types/contracts/governance/proposals/getVotingPeriod.d.ts +2 -1
  450. package/dist/types/contracts/governance/proposals/hasRole.d.ts +13 -0
  451. package/dist/types/contracts/governance/proposals/hasVoted.d.ts +14 -0
  452. package/dist/types/contracts/governance/proposals/index.d.ts +11 -2
  453. package/dist/types/contracts/governance/proposals/propose.d.ts +4 -14
  454. package/dist/types/contracts/governance/proposals/setParameter.d.ts +23 -0
  455. package/dist/types/contracts/governance/proposals/setTimelock.d.ts +14 -0
  456. package/dist/types/contracts/governance/timelock/getConstants.d.ts +2 -1
  457. package/dist/types/contracts/governance/timelock/getMinDelay.d.ts +2 -1
  458. package/dist/types/contracts/governance/timelock/getRoles.d.ts +19 -0
  459. package/dist/types/contracts/governance/timelock/getTimestamp.d.ts +2 -1
  460. package/dist/types/contracts/governance/timelock/hasRole.d.ts +13 -0
  461. package/dist/types/contracts/governance/timelock/hashOperationBatch.d.ts +4 -3
  462. package/dist/types/contracts/governance/timelock/index.d.ts +2 -0
  463. package/dist/types/contracts/governance/timelock/isOperationDone.d.ts +2 -1
  464. package/dist/types/contracts/governance/timelock/isOperationPending.d.ts +2 -1
  465. package/dist/types/contracts/governance/timelock/isOperationReady.d.ts +2 -1
  466. package/dist/types/contracts/housePrices/getLatestPrice.d.ts +16 -6
  467. package/dist/types/contracts/lockers/botLocker/getClaimable.d.ts +8 -1
  468. package/dist/types/contracts/lockers/botLocker/getClaimables.d.ts +8 -1
  469. package/dist/types/contracts/lockers/botLocker/getClaimedRewards.d.ts +11 -1
  470. package/dist/types/contracts/lockers/liquidLocker/borrow.d.ts +6 -1
  471. package/dist/types/contracts/lockers/liquidLocker/checkAccountHealth.d.ts +9 -0
  472. package/dist/types/contracts/lockers/liquidLocker/deposit.d.ts +5 -1
  473. package/dist/types/contracts/lockers/liquidLocker/donate.d.ts +5 -1
  474. package/dist/types/contracts/lockers/liquidLocker/getConfig.d.ts +19 -7
  475. package/dist/types/contracts/lockers/liquidLocker/getGlobalInfo.d.ts +19 -16
  476. package/dist/types/contracts/lockers/liquidLocker/getUserInfo.d.ts +17 -14
  477. package/dist/types/contracts/lockers/liquidLocker/getUserLocks.d.ts +20 -7
  478. package/dist/types/contracts/lockers/liquidLocker/harvest.d.ts +6 -1
  479. package/dist/types/contracts/lockers/liquidLocker/previewWithdraw.d.ts +22 -0
  480. package/dist/types/contracts/lockers/liquidLocker/repay.d.ts +6 -2
  481. package/dist/types/contracts/lockers/liquidLocker/requestUnlock.d.ts +15 -3
  482. package/dist/types/contracts/lockers/liquidLocker/voteGauge.d.ts +8 -2
  483. package/dist/types/contracts/lockers/maturityVault/deposit.d.ts +5 -1
  484. package/dist/types/contracts/lockers/maturityVault/depositFor.d.ts +6 -1
  485. package/dist/types/contracts/lockers/maturityVault/distribute.d.ts +6 -1
  486. package/dist/types/contracts/lockers/maturityVault/getConfig.d.ts +12 -2
  487. package/dist/types/contracts/lockers/maturityVault/getGlobalInfo.d.ts +15 -15
  488. package/dist/types/contracts/lockers/maturityVault/getUserInfo.d.ts +10 -6
  489. package/dist/types/contracts/lockers/maturityVault/withdraw.d.ts +6 -1
  490. package/dist/types/contracts/pmBlender/_helpers.d.ts +12 -0
  491. package/dist/types/contracts/pmBlender/getReserveBalance.d.ts +9 -1
  492. package/dist/types/contracts/pmBlender/previewDeposit.d.ts +11 -1
  493. package/dist/types/contracts/pmBlender/previewSwap.d.ts +12 -1
  494. package/dist/types/contracts/pmBlender/previewWithdraw.d.ts +11 -1
  495. package/dist/types/contracts/pmMarket/getMarketConfig.d.ts +20 -11
  496. package/dist/types/contracts/pmTreasury/_helpers.d.ts +27 -0
  497. package/dist/types/contracts/pmTreasury/getCollateralRatio.d.ts +9 -1
  498. package/dist/types/contracts/pmTreasury/getCurrentNav.d.ts +18 -9
  499. package/dist/types/contracts/pmTreasury/getLeverageRatio.d.ts +9 -1
  500. package/dist/types/contracts/pmTreasury/getMaxMintablePMUSD.d.ts +17 -9
  501. package/dist/types/contracts/pmTreasury/getMaxMintablePMUSDWithoutBaseToken.d.ts +15 -5
  502. package/dist/types/contracts/pmTreasury/getMaxMintableXPM.d.ts +18 -8
  503. package/dist/types/contracts/pmTreasury/getMaxRedeemablePMUSD.d.ts +17 -7
  504. package/dist/types/contracts/pmTreasury/getMaxRedeemableXPM.d.ts +17 -7
  505. package/dist/types/contracts/pmTreasury/getTotalBaseToken.d.ts +9 -1
  506. package/dist/types/contracts/tokens/RAAC/getBalance.d.ts +11 -1
  507. package/dist/types/contracts/tokens/RAAC/getTotalSupply.d.ts +7 -3
  508. package/dist/types/contracts/tokens/crvUSD/getBalance.d.ts +11 -1
  509. package/dist/types/contracts/tokens/crvUSD/getTotalSupply.d.ts +7 -3
  510. package/dist/types/contracts/tokens/leRAAC/approve.d.ts +10 -1
  511. package/dist/types/contracts/tokens/leRAAC/burn.d.ts +6 -1
  512. package/dist/types/contracts/tokens/leRAAC/burnFrom.d.ts +7 -1
  513. package/dist/types/contracts/tokens/leRAAC/getAllowance.d.ts +11 -1
  514. package/dist/types/contracts/tokens/leRAAC/getBalance.d.ts +10 -1
  515. package/dist/types/contracts/tokens/leRAAC/getMinterInfo.d.ts +14 -2
  516. package/dist/types/contracts/tokens/leRAAC/getTotalSupply.d.ts +9 -1
  517. package/dist/types/contracts/tokens/leRAAC/transfer.d.ts +10 -1
  518. package/dist/types/contracts/tokens/leRAAC/transferFrom.d.ts +11 -1
  519. package/dist/types/contracts/tokens/pmUSD/getBalance.d.ts +11 -1
  520. package/dist/types/contracts/tokens/pmUSD/getTotalSupply.d.ts +7 -3
  521. package/dist/types/contracts/tokens/rcrvUSD/getBalance.d.ts +11 -1
  522. package/dist/types/contracts/tokens/rcrvUSD/getTotalSupply.d.ts +8 -3
  523. package/dist/types/contracts/tokens/veRAAC/_helpers.d.ts +15 -0
  524. package/dist/types/contracts/tokens/veRAAC/distributeRewards.d.ts +2 -2
  525. package/dist/types/contracts/tokens/veRAAC/getBalance.d.ts +10 -1
  526. package/dist/types/contracts/tokens/veRAAC/getBalanceAt.d.ts +3 -2
  527. package/dist/types/contracts/tokens/veRAAC/getBalanceAtTime.d.ts +3 -2
  528. package/dist/types/contracts/tokens/veRAAC/getCheckpoint.d.ts +4 -2
  529. package/dist/types/contracts/tokens/veRAAC/getClaimable.d.ts +3 -2
  530. package/dist/types/contracts/tokens/veRAAC/getClaimed.d.ts +3 -2
  531. package/dist/types/contracts/tokens/veRAAC/getEarned.d.ts +3 -2
  532. package/dist/types/contracts/tokens/veRAAC/getGlobalLockInfo.d.ts +4 -2
  533. package/dist/types/contracts/tokens/veRAAC/getLockedBalance.d.ts +3 -2
  534. package/dist/types/contracts/tokens/veRAAC/getLocks.d.ts +5 -2
  535. package/dist/types/contracts/tokens/veRAAC/getMinLockAmount.d.ts +15 -0
  536. package/dist/types/contracts/tokens/veRAAC/getRagequitRequest.d.ts +10 -5
  537. package/dist/types/contracts/tokens/veRAAC/getRawBalanceOf.d.ts +3 -2
  538. package/dist/types/contracts/tokens/veRAAC/getRawTotalSupply.d.ts +3 -2
  539. package/dist/types/contracts/tokens/veRAAC/getTotalSupply.d.ts +7 -5
  540. package/dist/types/contracts/tokens/veRAAC/getTotalSupplyAt.d.ts +3 -2
  541. package/dist/types/contracts/tokens/veRAAC/getTotalSupplyAtTime.d.ts +3 -2
  542. package/dist/types/contracts/tokens/veRAAC/getUserPointHistory.d.ts +8 -4
  543. package/dist/types/contracts/tokens/veRAAC/increase.d.ts +2 -2
  544. package/dist/types/contracts/tokens/veRAAC/increaseWithApproval.d.ts +3 -3
  545. package/dist/types/contracts/tokens/veRAAC/index.d.ts +1 -1
  546. package/dist/types/contracts/tokens/veRAAC/lock.d.ts +2 -2
  547. package/dist/types/contracts/tokens/veRAAC/lockWithApproval.d.ts +3 -3
  548. package/dist/types/contracts/tokens/xPM/getBalance.d.ts +11 -1
  549. package/dist/types/contracts/tokens/xPM/getTotalSupply.d.ts +7 -3
  550. package/dist/types/contracts/zap/aladdin/zap.d.ts +9 -1
  551. package/dist/types/contracts/zap/aladdin/zapFrom.d.ts +9 -1
  552. package/dist/types/contracts/zap/aladdin/zapWithRoutes.d.ts +11 -2
  553. package/dist/types/contracts/zeno/createAuction.d.ts +13 -0
  554. package/dist/types/contracts/zeno/getAuctions.d.ts +38 -1
  555. package/dist/types/index.d.ts +1 -0
  556. package/dist/types/methods/approveToken.d.ts +10 -1
  557. package/dist/types/methods/commons/checkAllowance.d.ts +11 -1
  558. package/dist/types/methods/getAssetBalance.d.ts +10 -1
  559. package/dist/types/minter/_helpers.d.ts +8 -0
  560. package/dist/types/minter/calculateScheduledMintableAmount.d.ts +3 -1
  561. package/dist/types/minter/get.d.ts +15 -9
  562. package/dist/types/minter/getApy.d.ts +12 -3
  563. package/dist/types/minter/getDistributionPools.d.ts +10 -2
  564. package/dist/types/minter/getEmissionPerSecond.d.ts +3 -1
  565. package/dist/types/minter/getPoolInfo.d.ts +10 -2
  566. package/dist/types/nfts/_helpers.d.ts +10 -0
  567. package/dist/types/nfts/getHousePrice.d.ts +9 -1
  568. package/dist/types/nfts/getMintFeePercentage.d.ts +6 -0
  569. package/dist/types/nfts/getMintPrice.d.ts +9 -4
  570. package/dist/types/nfts/mint.d.ts +10 -1
  571. package/dist/types/pools/lendingPool/_helpers.d.ts +28 -1
  572. package/dist/types/pools/lendingPool/adapters/erc20/getERC20AdapterBalance.d.ts +11 -1
  573. package/dist/types/pools/lendingPool/borrowFromLendingPool.d.ts +10 -1
  574. package/dist/types/pools/lendingPool/borrowFromLendingPoolWithInsurance.d.ts +10 -1
  575. package/dist/types/pools/lendingPool/calculateInsuranceFee.d.ts +12 -1
  576. package/dist/types/pools/lendingPool/depositToLendingPool.d.ts +9 -2
  577. package/dist/types/pools/lendingPool/getEligibleUserDeposits.d.ts +6 -5
  578. package/dist/types/pools/lendingPool/getHealthFactor.d.ts +8 -7
  579. package/dist/types/pools/lendingPool/getHousePrice.d.ts +9 -1
  580. package/dist/types/pools/lendingPool/getLendingPoolInfo.d.ts +48 -21
  581. package/dist/types/pools/lendingPool/getLendingPoolTotalLiquidity.d.ts +9 -1
  582. package/dist/types/pools/lendingPool/getParameters.d.ts +24 -5
  583. package/dist/types/pools/lendingPool/getPositionDebt.d.ts +8 -5
  584. package/dist/types/pools/lendingPool/getPositionScaledDebt.d.ts +8 -7
  585. package/dist/types/pools/lendingPool/getPositionView.d.ts +33 -18
  586. package/dist/types/pools/lendingPool/getPositionsScaledDebt.d.ts +6 -5
  587. package/dist/types/pools/lendingPool/getRawUserDepositsInLendingPool.d.ts +9 -1
  588. package/dist/types/pools/lendingPool/getUserCollateralValue.d.ts +6 -5
  589. package/dist/types/pools/lendingPool/openVaultPosition.d.ts +2 -2
  590. package/dist/types/pools/lendingPool/repayToLendingPool.d.ts +9 -0
  591. package/dist/types/pools/lendingPool/withdrawFromLendingPool.d.ts +9 -1
  592. package/dist/types/pools/liquidityPool/getLiquidityPoolInfo.d.ts +27 -2
  593. package/dist/types/pools/rwaVault/_helpers.d.ts +21 -1
  594. package/dist/types/pools/rwaVault/adapters/erc20/getERC20VaultAdapterAssetValue.d.ts +9 -1
  595. package/dist/types/pools/rwaVault/adapters/erc20/getERC20VaultAdapterTotalValue.d.ts +8 -1
  596. package/dist/types/pools/rwaVault/adapters/erc721/getERC721VaultAdapterAssetValue.d.ts +9 -1
  597. package/dist/types/pools/rwaVault/adapters/erc721/getERC721VaultAdapterTotalValue.d.ts +8 -1
  598. package/dist/types/pools/rwaVault/depositToRWAVault.d.ts +12 -2
  599. package/dist/types/pools/rwaVault/getRWAVaultInfo.d.ts +16 -4
  600. package/dist/types/pools/rwaVault/previewDeposit.d.ts +9 -1
  601. package/dist/types/pools/rwaVault/previewWithdraw.d.ts +9 -1
  602. package/dist/types/pools/rwaVault/redeemNFTFromRWAVault.d.ts +11 -2
  603. package/dist/types/pools/stabilityPool/depositToStabilityPool.d.ts +9 -2
  604. package/dist/types/pools/stabilityPool/getRawUserDepositsInStabilityPool.d.ts +9 -1
  605. package/dist/types/pools/stabilityPool/getStabilityPoolInfo.d.ts +15 -4
  606. package/dist/types/pools/stabilityPool/getStabilityPoolTotalDeposits.d.ts +8 -1
  607. package/dist/types/pools/stabilityPool/getWithdrawRequestInfo.d.ts +19 -6
  608. package/dist/types/pools/stabilityPool/requestWithdraw.d.ts +9 -2
  609. package/dist/types/pools/stabilityPool/withdrawFromStabilityPool.d.ts +9 -2
  610. package/dist/types/prices/getPrices.d.ts +12 -5
  611. package/dist/types/typechain-types/contracts/core/governance/gauges/BaseGauge.d.ts +176 -105
  612. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeController.d.ts +260 -213
  613. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeRewardsDistributor.d.ts +173 -212
  614. package/dist/types/typechain-types/contracts/core/governance/gauges/RAACGauge.d.ts +176 -105
  615. package/dist/types/typechain-types/contracts/core/governance/gauges/RWAGauge.d.ts +176 -105
  616. package/dist/types/typechain-types/contracts/core/governance/proposals/Governance.d.ts +202 -82
  617. package/dist/types/typechain-types/contracts/core/governance/proposals/TimelockController.d.ts +8 -8
  618. package/dist/types/typechain-types/contracts/core/lockers/RAACLiquidLocker.d.ts +89 -37
  619. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IBaseGauge.d.ts +111 -108
  620. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeController.d.ts +210 -34
  621. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeRewardsDistributor.d.ts +112 -151
  622. package/dist/types/typechain-types/contracts/interfaces/core/governance/proposals/IGovernance.d.ts +36 -51
  623. package/dist/types/typechain-types/contracts/interfaces/core/governance/proposals/ITimelockController.d.ts +8 -8
  624. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/BaseGauge__factory.d.ts +174 -95
  625. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +243 -227
  626. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeRewardsDistributor__factory.d.ts +164 -232
  627. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +185 -98
  628. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +185 -98
  629. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/Governance__factory.d.ts +288 -81
  630. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/TimelockController__factory.d.ts +11 -15
  631. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACLiquidLocker__factory.d.ts +101 -30
  632. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IBaseGauge__factory.d.ts +104 -95
  633. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGaugeController__factory.d.ts +241 -22
  634. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGaugeRewardsDistributor__factory.d.ts +72 -158
  635. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/proposals/IGovernance__factory.d.ts +70 -40
  636. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/proposals/ITimelockController__factory.d.ts +8 -4
  637. package/dist/types/utils/amount.d.ts +101 -0
  638. package/dist/types/utils/artifacts.d.ts +40 -0
  639. package/dist/types/utils/contracts.d.ts +52 -64
  640. package/dist/types/wallet/assets/approveAsset.d.ts +10 -1
  641. package/dist/types/wallet/assets/burnAsset.d.ts +8 -0
  642. package/dist/types/wallet/assets/getAllowance.d.ts +12 -1
  643. package/dist/types/wallet/assets/getAsset.d.ts +13 -1
  644. package/dist/types/wallet/assets/getAssets.d.ts +11 -1
  645. package/dist/types/wallet/assets/getBalance.d.ts +11 -5
  646. package/dist/types/wallet/assets/mintAsset.d.ts +9 -0
  647. package/dist/types/wallet/assets/transferAsset.d.ts +10 -0
  648. package/dist/utils/amount.js +131 -0
  649. package/dist/utils/contracts.js +6 -1
  650. package/dist/wallet/assets/approveAsset.js +10 -4
  651. package/dist/wallet/assets/burnAsset.js +9 -2
  652. package/dist/wallet/assets/getAllowance.js +14 -5
  653. package/dist/wallet/assets/getAsset.js +16 -9
  654. package/dist/wallet/assets/getAssets.js +17 -16
  655. package/dist/wallet/assets/getBalance.js +16 -20
  656. package/dist/wallet/assets/mintAsset.js +10 -1
  657. package/dist/wallet/assets/transferAsset.js +12 -3
  658. package/package.json +2 -2
  659. package/dist/contracts/governance/distributor/getStartEpoch.js +0 -28
  660. package/dist/contracts/governance/distributor/withdrawUnallocatedRewards.js +0 -26
  661. package/dist/contracts/governance/gauge/setDistributorApproval.js +0 -35
  662. package/dist/types/contracts/governance/distributor/getStartEpoch.d.ts +0 -10
  663. package/dist/types/contracts/governance/distributor/withdrawUnallocatedRewards.d.ts +0 -12
  664. package/dist/types/contracts/governance/gauge/setDistributorApproval.d.ts +0 -11
  665. package/dist/types/contracts/governance/proposals/getProposalData.d.ts +0 -18
  666. package/dist/types/contracts/tokens/veRAAC/getEffectiveLockEnd.d.ts +0 -11
@@ -1,9 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
3
  const getAdapterAddress_1 = require("./getAdapterAddress");
5
4
  const _helpers_1 = require("./_helpers");
6
5
  // TODO: interface changed
6
+ /**
7
+ * Computes the insurance fee for borrowing `amount` with insurance, including any previously uninsured balance.
8
+ * @param chainId The chain id.
9
+ * @param adapterName The lending pool adapter holding the collateral.
10
+ * @param userAddress The borrower.
11
+ * @param data The adapter-encoded position data.
12
+ * @param amount The amount to borrow, in reserve asset (crvUSD) base units.
13
+ * @param provider The provider to read with.
14
+ * @returns The fee in reserve asset (crvUSD) base units.
15
+ */
7
16
  async function calculateInsuranceFee(chainId, adapterName, userAddress, data, amount, provider) {
8
17
  try {
9
18
  const adapterAddress = (0, getAdapterAddress_1.getAdapterAddressOnly)(chainId, adapterName);
@@ -11,10 +20,8 @@ async function calculateInsuranceFee(chainId, adapterName, userAddress, data, am
11
20
  throw new Error(`Adapter ${adapterName} not found`);
12
21
  }
13
22
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
14
- const amountInWei = ethers_1.ethers.parseEther(amount);
15
- const fee = await lendingPoolContract.calculateInsuranceFee(adapterAddress, userAddress, data, amountInWei);
16
- console.log(`Insurance fee: ${ethers_1.ethers.formatEther(fee)}`);
17
- return fee;
23
+ const fee = await lendingPoolContract.calculateInsuranceFee(adapterAddress, userAddress, data, amount);
24
+ return (0, _helpers_1.toReserveAmount)(chainId, fee);
18
25
  }
19
26
  catch (error) {
20
27
  console.error("Error in calculateInsuranceFee:", error);
@@ -1,24 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
3
  const _helpers_1 = require("./_helpers");
5
4
  const errorDecoder_1 = require("../../utils/errorDecoder");
6
- // checked
5
+ /**
6
+ * Deposits the reserve asset into the lending pool and receives rToken.
7
+ * @param chainId The chain id.
8
+ * @param amount The amount to deposit, in reserve asset (crvUSD) base units.
9
+ * @param signer The depositor.
10
+ * @returns The transaction receipt.
11
+ */
7
12
  async function depositToLendingPool(chainId, amount, signer) {
8
13
  if (!signer) {
9
14
  throw new Error("Wallet not connected");
10
15
  }
11
16
  try {
12
17
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, signer);
13
- const amountInWei = ethers_1.ethers.parseEther(amount);
14
- // const { maxFeePerGas } = await estimateGasPrice(signer);
15
- const depositTx = await lendingPoolContract.deposit(amountInWei.toString(), {
18
+ const depositTx = await lendingPoolContract.deposit(amount, {
16
19
  // maxFeePerGas,
17
20
  nonce: await signer.getNonce(),
18
21
  });
19
22
  console.log(`Deposit transaction sent for rToken:`, depositTx.hash);
20
23
  const receipt = await depositTx.wait();
21
- console.log(`Deposited ${amount} rToken to lending pool successfully:`, receipt?.hash);
24
+ console.log(`Deposited ${amount} base units to lending pool successfully:`, receipt?.hash);
22
25
  return receipt;
23
26
  }
24
27
  catch (error) {
@@ -1,20 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
3
  const _helpers_1 = require("./_helpers");
5
4
  /**
6
5
  * @description Total amount of RToken + DEToken = total crvUSD they put in the system so far. How much they have contributed to the system.
7
- * @param chainId
8
- * @param address
9
- * @param provider
10
- * @returns
6
+ * @param chainId The chain id.
7
+ * @param address The user.
8
+ * @param provider The provider to read with.
9
+ * @returns The user's raw rToken deposits plus stability pool deposits, in reserve asset (crvUSD) base units.
11
10
  */
12
11
  async function getEligibleUserDeposits(chainId, address, provider) {
13
12
  try {
14
13
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
15
14
  const value = await lendingPoolContract.getEligibleUserDeposits(address);
16
- console.log(`Eligible user deposits: ${ethers_1.ethers.formatEther(value)}`);
17
- return value;
15
+ return (0, _helpers_1.toReserveAmount)(chainId, value);
18
16
  }
19
17
  catch (error) {
20
18
  console.error("Error in getEligibleUserDeposits:", error);
@@ -3,14 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = getHealthFactor;
4
4
  const getAdapterAddress_1 = require("./getAdapterAddress");
5
5
  const _helpers_1 = require("./_helpers");
6
+ const amount_1 = require("../../utils/amount");
6
7
  /**
7
8
  * @description Get the health factor of a NFT position -> factor < 1 : undercollateralized.
8
- * @param chainId
9
- * @param adapterName
10
- * @param userAddress
11
- * @param data
12
- * @param provider
13
- * @returns The health factor of a position (0, inf)
9
+ * @param chainId The chain id.
10
+ * @param adapterName The lending pool adapter holding the collateral.
11
+ * @param userAddress The borrower.
12
+ * @param data The adapter-encoded position data.
13
+ * @param provider The provider to read with.
14
+ * @returns The health factor, 1e18-scaled (liquidatable below 1e18). A position with no debt returns 1e27 (`WadRayMath.RAY`), which reads as 1e9.
14
15
  */
15
16
  async function getHealthFactor(chainId, adapterName, userAddress, data, provider) {
16
17
  try {
@@ -20,7 +21,7 @@ async function getHealthFactor(chainId, adapterName, userAddress, data, provider
20
21
  throw new Error(`Adapter ${adapterName} not found for chain ${chainId}`);
21
22
  }
22
23
  const healthFactor = await lendingPoolContract.calculateHealthFactor(adapterAddress, userAddress, data);
23
- return healthFactor;
24
+ return (0, amount_1.toScaled)(healthFactor, amount_1.WAD_DECIMALS);
24
25
  }
25
26
  catch (error) {
26
27
  console.error("Error getting health factor:", error);
@@ -3,9 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ethers_1 = require("ethers");
4
4
  const getContractAddress_1 = require("../../contracts/getContractAddress");
5
5
  const artifacts_1 = require("../../utils/artifacts");
6
- // checked
6
+ const amount_1 = require("../../utils/amount");
7
+ /**
8
+ * Reads the latest crvUSD price of a RAAC NFT.
9
+ * @param chainId The chain id.
10
+ * @param tokenId The RAAC NFT token id.
11
+ * @param signer The signer to read with.
12
+ * @returns The house price in crvUSD base units. RAACHousePrices always returns it with 18 decimals.
13
+ */
7
14
  async function getHousePrice(chainId, tokenId, signer) {
8
- console.log(chainId, tokenId, signer);
9
15
  if (!signer) {
10
16
  throw new Error("Wallet not connected");
11
17
  }
@@ -13,10 +19,8 @@ async function getHousePrice(chainId, tokenId, signer) {
13
19
  const raacHousePricesAddress = (0, getContractAddress_1.getContractAddress)(chainId, "raachouseprices");
14
20
  const raacHousePricesABI = (0, artifacts_1.getABI)("raachouseprices");
15
21
  const raacHousePricesContract = new ethers_1.ethers.Contract(raacHousePricesAddress, raacHousePricesABI, signer);
16
- const housePrice = await raacHousePricesContract.getLatestPrice(tokenId);
17
- console.log({ housePrice });
18
- console.log(`House price for token ID ${tokenId}: ${ethers_1.ethers.formatEther(housePrice)} ETH`);
19
- return housePrice;
22
+ const [price] = await raacHousePricesContract.getLatestPrice(tokenId);
23
+ return (0, amount_1.toAmount)(price, amount_1.WAD_DECIMALS);
20
24
  }
21
25
  catch (error) {
22
26
  console.error(`Error getting house price for token ID ${tokenId}:`, error);
@@ -1,103 +1,113 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  const ethers_1 = require("ethers");
7
+ const chains_1 = __importDefault(require("../../configs/chains"));
4
8
  const _helpers_1 = require("./_helpers");
5
9
  const artifacts_1 = require("../../utils/artifacts");
10
+ const getContractAddress_1 = __importDefault(require("../../contracts/getContractAddress"));
11
+ const amount_1 = require("../../utils/amount");
12
+ const RAY = 10n ** 27n;
13
+ const HALF_RAY = RAY / 2n;
14
+ /** Mirrors WadRayMath.rayMul (half-up rounding). */
15
+ const rayMul = (a, b) => (a * b + HALF_RAY) / RAY;
16
+ /** A ray (27-decimal) value. */
17
+ const ray = (value) => (0, amount_1.toScaled)(value, amount_1.RAY_DECIMALS);
18
+ /**
19
+ * Effective yearly cost of a nominal RAY borrow rate: e^r - 1, as a ray.
20
+ * The usage index compounds (ReserveLibrary.calculateCompoundedInterest), so the
21
+ * borrow side's effective rate exceeds its nominal rate. The liquidity index
22
+ * accrues linearly, so the supply side has no equivalent gap.
23
+ * Computed in floating point, so digits past double precision are not meaningful.
24
+ */
25
+ const toCompoundedApy = (rate) => BigInt(Math.round(Math.expm1(Number(rate) / 1e27) * 1e27));
26
+ /**
27
+ * Reads the lending pool's reserve state, rates and, optionally, a user's redeemable balance.
28
+ * @param chainId The chain id.
29
+ * @param userAddress The user whose rToken balance to include in `userRedeemable`.
30
+ * @param provider The provider to read with. Defaults to the chain's first configured RPC.
31
+ * @returns The pool info; see `LendingPoolInfo` for units.
32
+ */
6
33
  async function getLendingPoolInfo(chainId, userAddress, provider) {
7
34
  try {
35
+ if (!provider) {
36
+ const rpc = chains_1.default[chainId].rpcs[0];
37
+ provider = new ethers_1.ethers.JsonRpcProvider(rpc);
38
+ }
8
39
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
9
- const handleError = (operation, returnType) => (error) => {
10
- if (error.code === "BAD_DATA") {
11
- console.log(`BAD_DATA from ${operation} - Pool empty?`, error.messag);
12
- return returnType || null;
13
- }
14
- throw error;
15
- };
16
40
  const [reserve, rateData, normalizedIncome, normalizedDebt] = await Promise.all([
17
- lendingPoolContract.reserve().catch(handleError("reserve")),
18
- lendingPoolContract.rateData().catch(handleError("rateData")),
19
- lendingPoolContract.getNormalizedIncome().catch(handleError("getNormalizedIncome", 0n)),
20
- lendingPoolContract.getNormalizedDebt().catch(handleError("getNormalizedDebt", 0n)),
41
+ lendingPoolContract.reserve(),
42
+ lendingPoolContract.rateData(),
43
+ lendingPoolContract.getNormalizedIncome(),
44
+ lendingPoolContract.getNormalizedDebt(),
21
45
  ]);
22
- // Extract data from reserve
23
- const totalLiquidity = reserve?.totalLiquidity ?? 0n;
24
- const totalUsage = reserve?.totalUsage ?? 0n;
25
- const liquidityIndex = reserve?.liquidityIndex ?? 0n;
26
- const usageIndex = reserve?.usageIndex ?? 0n;
27
- // Compute utilization
28
- let utilization = 0n;
29
- if (totalLiquidity + totalUsage > 0n) {
30
- utilization = (totalUsage * BigInt(1e27)) / (totalLiquidity + totalUsage);
31
- }
32
- // Extract rate data
33
- const currentLiquidityRate = rateData?.currentLiquidityRate ?? 0n;
34
- const currentUsageRate = rateData?.currentUsageRate ?? 0n;
35
- // why is prime rate 0?
36
- const primeRate = rateData?.primeRate ?? 0n;
37
- const baseRate = rateData?.baseRate ?? 0n;
38
- const optimalRate = rateData?.optimalRate ?? 0n;
39
- const maxRate = rateData?.maxRate ?? 0n;
40
- const optimalUtilizationRate = rateData?.optimalUtilizationRate ?? 0n;
41
- const protocolFeeRate = rateData?.protocolFeeRate ?? 0n;
42
- const pendingProtocolFeeAmount = reserve?.[8];
43
- // Compute APY
44
- let apr;
45
- if (utilization <= optimalUtilizationRate && optimalUtilizationRate > 0) {
46
- apr = optimalRate;
47
- }
48
- else {
49
- const excessUtilization = utilization - optimalUtilizationRate;
50
- const maxExcessUtilization = BigInt(1e27) - optimalUtilizationRate;
51
- const rateSlope = maxRate - optimalRate;
52
- const rateIncrease = (excessUtilization * rateSlope) / maxExcessUtilization;
53
- apr = primeRate + rateIncrease;
54
- apr = apr > maxRate ? maxRate : apr;
55
- }
56
- // compute the APY
57
- // FIXME: This is not correct
58
- let apy;
59
- const grossLiquidityRate = utilization * currentUsageRate / BigInt(1e27);
60
- const protocolFeeAmount = grossLiquidityRate * protocolFeeRate / BigInt(1e27);
61
- apy = grossLiquidityRate - protocolFeeAmount;
62
- console.log("apr", apy);
46
+ // Rates as maintained by the pool. These are written by
47
+ // ReserveLibrary.updateInterestRatesAndLiquidity on every operation that moves
48
+ // liquidity or debt, and interest accrues at them until the next one, so they
49
+ // are the rates actually in effect - not a stale snapshot to be recomputed.
50
+ const supplyRate = rateData.currentLiquidityRate;
51
+ const borrowRate = rateData.currentUsageRate;
52
+ const pendingProtocolFeeAmount = await getPendingProtocolFee(chainId, provider, reserve, normalizedIncome);
63
53
  let userRedeemable = 0n;
64
54
  if (userAddress) {
65
- // Fetch user's scaled RToken balance
66
- const rTokenAddress = reserve?.reserveRTokenAddress;
67
- const rTokenABI = (0, artifacts_1.getABI)("rtoken");
68
- const rTokenContract = new ethers_1.ethers.Contract(rTokenAddress, rTokenABI, provider);
69
- const userScaledBalance = await rTokenContract
70
- .balanceOf(userAddress)
71
- .catch(handleError("rToken balanceOf"));
72
- // Compute user's redeemable balance: userRedeemable = userScaledBalance * liquidityIndex / RAY
73
- userRedeemable = (userScaledBalance * liquidityIndex) / BigInt(1e27);
55
+ // RToken.balanceOf already applies the liquidity index, so it is the
56
+ // redeemable underlying amount - do not scale it again.
57
+ const rTokenContract = new ethers_1.ethers.Contract(reserve.reserveRTokenAddress, (0, artifacts_1.getABI)("rtoken"), provider);
58
+ userRedeemable = await rTokenContract.balanceOf(userAddress);
74
59
  }
75
- const result = {
76
- totalLiquidity: ethers_1.ethers.formatEther(totalLiquidity),
77
- totalBorrow: ethers_1.ethers.formatEther(totalUsage),
78
- utilization: (Number(utilization.toString()) / 1e27).toFixed(6), // Utilization as a decimal value between 0 and 1
79
- liquidityIndex: (Number(liquidityIndex.toString()) / 1e27).toFixed(6),
80
- usageIndex: (Number(usageIndex.toString()) / 1e27).toFixed(6),
81
- currentLiquidityRate: (Number(currentLiquidityRate.toString()) / 1e25).toFixed(2),
82
- currentUsageRate: (Number(currentUsageRate.toString()) / 1e25).toFixed(2),
83
- primeRate: (Number(primeRate.toString()) / 1e25).toFixed(2),
84
- baseRate: (Number(baseRate.toString()) / 1e25).toFixed(2),
85
- optimalRate: (Number(optimalRate.toString()) / 1e25).toFixed(2),
86
- maxRate: (Number(maxRate.toString()) / 1e25).toFixed(2),
87
- optimalUtilizationRate: (Number(optimalUtilizationRate.toString()) / 1e27).toFixed(6),
88
- protocolFeeRate: (Number(protocolFeeRate.toString()) / 1e25).toFixed(2),
89
- normalizedIncome: (Number(normalizedIncome.toString()) / 1e27).toFixed(6),
90
- normalizedDebt: (Number(normalizedDebt.toString()) / 1e27).toFixed(6),
91
- apy: (Number(apy.toString()) / 1e25).toFixed(2),
92
- userRedeemable: ethers_1.ethers.formatEther(userRedeemable ?? 0n),
93
- apr: (Number(apr.toString()) / 1e25).toFixed(2),
94
- pendingProtocolFeeAmount: ethers_1.ethers.formatEther(pendingProtocolFeeAmount),
60
+ return {
61
+ totalLiquidity: (0, _helpers_1.toReserveAmount)(chainId, reserve.totalLiquidity),
62
+ totalBorrow: (0, _helpers_1.toReserveAmount)(chainId, reserve.totalUsage),
63
+ utilization: ray(rateData.currentUtilizationRate ?? 0n),
64
+ liquidityIndex: ray(reserve.liquidityIndex),
65
+ usageIndex: ray(reserve.usageIndex),
66
+ supplyRate: ray(supplyRate),
67
+ borrowRate: ray(borrowRate),
68
+ supplyApy: ray(supplyRate),
69
+ borrowApy: ray(toCompoundedApy(borrowRate)),
70
+ primeRate: ray(rateData.primeRate),
71
+ baseRate: ray(rateData.baseRate),
72
+ optimalRate: ray(rateData.optimalRate),
73
+ maxRate: ray(rateData.maxRate),
74
+ optimalUtilizationRate: ray(rateData.optimalUtilizationRate),
75
+ protocolFeeRate: ray(rateData.protocolFeeRate),
76
+ currentProtocolFeeRate: ray(rateData.currentProtocolFeeRate ?? 0n),
77
+ normalizedIncome: ray(normalizedIncome),
78
+ normalizedDebt: ray(normalizedDebt),
79
+ userRedeemable: (0, _helpers_1.toReserveAmount)(chainId, userRedeemable),
80
+ pendingProtocolFeeAmount: (0, _helpers_1.toReserveAmount)(chainId, pendingProtocolFeeAmount),
81
+ currentLiquidityRate: ray(supplyRate),
82
+ currentUsageRate: ray(borrowRate),
83
+ apr: ray(borrowRate),
84
+ apy: ray(supplyRate),
95
85
  };
96
- return result;
97
86
  }
98
87
  catch (error) {
99
88
  console.error("Error fetching lending pool info:", error);
100
89
  throw error;
101
90
  }
102
91
  }
92
+ /**
93
+ * Resolves the protocol fee owed in underlying asset units.
94
+ *
95
+ * Newer pools bank the fee scaled by the liquidity index and expose
96
+ * `getPendingProtocolFee()`, which re-values it at the current index. Older pools
97
+ * store the unscaled amount in the reserve's ninth slot and have no getter, so
98
+ * fall back to reading it directly.
99
+ * @returns The pending protocol fee in reserve asset base units.
100
+ */
101
+ async function getPendingProtocolFee(chainId, provider, reserve, normalizedIncome) {
102
+ const stored = reserve?.[8] ?? 0n;
103
+ if (stored === 0n)
104
+ return 0n;
105
+ try {
106
+ const pool = new ethers_1.ethers.Contract((0, getContractAddress_1.default)(chainId, "lendingpool"), ["function getPendingProtocolFee() view returns (uint256)"], provider);
107
+ return await pool.getPendingProtocolFee();
108
+ }
109
+ catch {
110
+ return normalizedIncome > 0n ? rayMul(stored, normalizedIncome) : stored;
111
+ }
112
+ }
103
113
  exports.default = getLendingPoolInfo;
@@ -1,14 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const _helpers_1 = require("./_helpers");
4
- // The lending pool reserve contains the total liquidity of the lending pool. see getLendingPooInfo.ts
5
- // @deprecated
4
+ /**
5
+ * Reads the lending pool's total liquidity.
6
+ * @deprecated Use `getLendingPoolInfo(...).totalLiquidity`.
7
+ * @param chainId The chain id.
8
+ * @param provider The provider to read with.
9
+ * @returns The total liquidity in reserve asset (crvUSD) base units.
10
+ */
6
11
  async function getLendingPoolTotalLiquidity(chainId, provider) {
7
12
  try {
8
13
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
9
14
  const reserve = (await lendingPoolContract.reserve());
10
- const totalLiquidity = reserve.totalLiquidity;
11
- return totalLiquidity;
15
+ return (0, _helpers_1.toReserveAmount)(chainId, reserve.totalLiquidity);
12
16
  }
13
17
  catch (error) {
14
18
  console.error("Error fetching total liquidity:", error);
@@ -1,24 +1,32 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const _helpers_1 = require("./_helpers");
4
+ /**
5
+ * Reads the lending pool's protocol parameters.
6
+ * @param chainId The chain id.
7
+ * @param provider The provider to read with.
8
+ * @returns The parameters: caps, fees and minimums as `TokenAmount`s in reserve asset base units, ratios as basis points.
9
+ */
4
10
  async function getParameters(chainId, provider) {
5
11
  try {
6
12
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
7
- const [canPaybackDebt, withdrawalsPaused, liquidationThreshold, liquidationGracePeriod, insuranceFee, depositFee, liquidityBufferRatio, supplyCap, borrowCap, vaultOpeningFee, borrowThreshold,] = await lendingPoolContract.parameters();
8
- const parameters = {
9
- canPaybackDebt,
10
- withdrawalsPaused,
11
- liquidationThreshold,
12
- liquidationGracePeriod,
13
- insuranceFee,
14
- depositFee,
15
- liquidityBufferRatio,
16
- supplyCap,
17
- borrowCap,
18
- vaultOpeningFee,
19
- borrowThreshold,
13
+ const p = await lendingPoolContract.parameters();
14
+ return {
15
+ canPaybackDebt: p.canPaybackDebt,
16
+ withdrawalsPaused: p.withdrawalsPaused,
17
+ liquidationThreshold: p.liquidationThreshold,
18
+ liquidationGracePeriod: p.liquidationGracePeriod,
19
+ insuranceFee: p.insuranceFee,
20
+ depositFee: p.depositFee,
21
+ liquidityBufferRatio: p.liquidityBufferRatio,
22
+ supplyCap: (0, _helpers_1.toReserveAmount)(chainId, p.supplyCap),
23
+ borrowCap: (0, _helpers_1.toReserveAmount)(chainId, p.borrowCap),
24
+ vaultOpeningFee: (0, _helpers_1.toReserveAmount)(chainId, p.vaultOpeningFee),
25
+ borrowThreshold: p.borrowThreshold,
26
+ minDepositAmount: (0, _helpers_1.toReserveAmount)(chainId, p.minDepositAmount),
27
+ primeRateChangeBps: p.primeRateChangeBps,
28
+ minVaultRebalanceAmount: (0, _helpers_1.toReserveAmount)(chainId, p.minVaultRebalanceAmount),
20
29
  };
21
- return parameters;
22
30
  }
23
31
  catch (error) {
24
32
  console.error("Error in getParameters:", error);
@@ -5,10 +5,12 @@ const _helpers_1 = require("./_helpers");
5
5
  // TODO: interface changed
6
6
  /**
7
7
  * @description Get the raw debt of the user on a NFT. Equivant to the original amount borrowed on NFT.
8
- * @param chainId
9
- * @param address
10
- * @param provider
11
- * @returns The raw debt of the user on a NFT
8
+ * @param chainId The chain id.
9
+ * @param adapterName The lending pool adapter holding the collateral.
10
+ * @param userAddress The borrower.
11
+ * @param data The adapter-encoded position data.
12
+ * @param provider The provider to read with.
13
+ * @returns The raw debt of the position (principal, without accrued interest), in reserve asset (crvUSD) base units.
12
14
  */
13
15
  async function getPositionDebt(chainId, adapterName, userAddress, data, provider) {
14
16
  try {
@@ -18,7 +20,7 @@ async function getPositionDebt(chainId, adapterName, userAddress, data, provider
18
20
  throw new Error(`Adapter ${adapterName} not found for chain ${chainId}`);
19
21
  }
20
22
  const debt = await lendingPoolContract.getPositionDebt(adapterAddress, userAddress, data);
21
- return debt;
23
+ return (0, _helpers_1.toReserveAmount)(chainId, debt);
22
24
  }
23
25
  catch (error) {
24
26
  console.error("Error getting position debt:", error);
@@ -5,12 +5,12 @@ const _helpers_1 = require("./_helpers");
5
5
  // TODO: interface changed
6
6
  /**
7
7
  * @description Get the scaled debt of the user on a NFT (contains the accured interest)
8
- * @param chainId
9
- * @param lendingPoolAddress
10
- * @param adapterName
11
- * @param userAddress
12
- * @param data
13
- * @returns The debt of the user on a NFT with the accured interest
8
+ * @param chainId The chain id.
9
+ * @param adapterName The lending pool adapter holding the collateral.
10
+ * @param userAddress The borrower.
11
+ * @param data The adapter-encoded position data.
12
+ * @param provider The provider to read with.
13
+ * @returns The debt of the position including accrued interest, in reserve asset (crvUSD) base units.
14
14
  */
15
15
  async function getPositionScaledDebt(chainId, adapterName, userAddress, data, provider) {
16
16
  try {
@@ -20,7 +20,7 @@ async function getPositionScaledDebt(chainId, adapterName, userAddress, data, pr
20
20
  throw new Error(`Adapter ${adapterName} not found for chain ${chainId}`);
21
21
  }
22
22
  const scaledDebt = await lendingPoolContract.getPositionScaledDebt(adapterAddress, userAddress, data);
23
- return scaledDebt;
23
+ return (0, _helpers_1.toReserveAmount)(chainId, scaledDebt);
24
24
  }
25
25
  catch (error) {
26
26
  console.error("Error getting position scaled debt:", error);
@@ -1,31 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.transformPositionView = transformPositionView;
4
- const ethers_1 = require("ethers");
5
4
  const getAdapterAddress_1 = require("./getAdapterAddress");
6
5
  const _helpers_1 = require("./_helpers");
7
- // TODO: interface changed
8
- function transformPositionView(positionView) {
6
+ const amount_1 = require("../../utils/amount");
7
+ /**
8
+ * Maps the on-chain `CollateralPositionView` struct to a `PositionView`.
9
+ * @param positionView The struct returned by `LendingPool.getPositionView`.
10
+ * @param chainId The chain id, used to resolve the reserve asset's decimals.
11
+ * @returns The position view.
12
+ */
13
+ function transformPositionView(positionView, chainId) {
9
14
  return {
10
- rawDebtBalance: ethers_1.ethers.formatEther(positionView?.[0] || 0n),
11
- scaledDebtBalance: ethers_1.ethers.formatEther(positionView?.[1] || 0n),
12
- healthFactor: (positionView?.[2] || 0n).toString(),
13
- isUnderLiquidation: positionView?.[3] || false,
14
- liquidationStartTime: (positionView?.[4] || 0n).toString(),
15
- positionIndex: (positionView?.[5] || 0n).toString(),
16
- isInsured: positionView?.[6] || false,
17
- adapter: positionView?.[7],
18
- asset: positionView?.[8],
15
+ rawDebtBalance: (0, _helpers_1.toReserveAmount)(chainId, positionView.rawDebtBalance),
16
+ scaledDebtBalance: (0, _helpers_1.toReserveAmount)(chainId, positionView.scaledDebtBalance),
17
+ healthFactor: (0, amount_1.toScaled)(positionView.healthFactor, amount_1.WAD_DECIMALS),
18
+ isUnderLiquidation: positionView.isUnderLiquidation,
19
+ liquidationStartTime: positionView.liquidationStartTime.toString(),
20
+ positionIndex: (0, amount_1.toScaled)(positionView.positionIndex, amount_1.RAY_DECIMALS),
21
+ isInsured: positionView.isInsured,
22
+ adapter: positionView.adapter,
23
+ asset: positionView.asset,
19
24
  };
20
25
  }
21
26
  /**
22
27
  * @description Return all the information about a NFT position
23
- * @param chainId
24
- * @param adapterName
25
- * @param userAddress
26
- * @param data
27
- * @param provider
28
- * @returns All information about a NFT position
28
+ * @param chainId The chain id.
29
+ * @param adapterName The lending pool adapter holding the collateral.
30
+ * @param userAddress The borrower.
31
+ * @param data The adapter-encoded position data.
32
+ * @param provider The provider to read with.
33
+ * @returns The position's debts, health factor, liquidation state, index, insurance flag, adapter and asset.
29
34
  */
30
35
  async function getPositionView(chainId, adapterName, userAddress, data, provider) {
31
36
  try {
@@ -35,7 +40,7 @@ async function getPositionView(chainId, adapterName, userAddress, data, provider
35
40
  }
36
41
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
37
42
  const position = await lendingPoolContract.getPositionView(adapterAddress, userAddress, data);
38
- return transformPositionView(position);
43
+ return transformPositionView(position, chainId);
39
44
  }
40
45
  catch (error) {
41
46
  console.error("Error in getPositionView:", error);
@@ -1,21 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
3
  const _helpers_1 = require("./_helpers");
5
4
  // TODO: interface changed
6
5
  /**
7
6
  * @description Get the sum of all the scaled debts of a user over all NFTs
8
- * @param chainId
9
- * @param address
10
- * @param provider
11
- * @returns The debt of the user
7
+ * @param chainId The chain id.
8
+ * @param address The user.
9
+ * @param provider The provider to read with.
10
+ * @returns The user's total debt including accrued interest, in reserve asset (crvUSD) base units.
12
11
  */
13
12
  async function getPositionsScaledDebt(chainId, address, provider) {
14
13
  try {
15
14
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
16
- const reward = await lendingPoolContract.getPositionsScaledDebt(address);
17
- console.log(`getPositionsScaledDebt result: ${ethers_1.ethers.formatEther(reward)}`);
18
- return reward;
15
+ const debt = await lendingPoolContract.getPositionsScaledDebt(address);
16
+ return (0, _helpers_1.toReserveAmount)(chainId, debt);
19
17
  }
20
18
  catch (error) {
21
19
  console.error("Error in getPositionsScaledDebt:", error);
@@ -1,14 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
3
  const _helpers_1 = require("./_helpers");
5
- // Get the amount of RToken RAW deposit in the lending pool, without the accured interest
4
+ /**
5
+ * Reads the user's raw rToken balance in the lending pool, without accrued interest.
6
+ * @param chainId The chain id.
7
+ * @param address The user.
8
+ * @param provider The provider to read with.
9
+ * @returns The raw deposit in rToken (reserve asset, crvUSD) base units.
10
+ */
6
11
  async function getRawUserDepositsInLendingPool(chainId, address, provider) {
7
12
  try {
8
13
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
9
14
  const value = await lendingPoolContract.getUserDeposits(address);
10
- console.log(`User deposits in lending pool: ${ethers_1.ethers.formatEther(value)}`);
11
- return value;
15
+ return (0, _helpers_1.toReserveAmount)(chainId, value);
12
16
  }
13
17
  catch (error) {
14
18
  console.error("Error in getRawUserDepositsInLendingPool:", error);
@@ -1,21 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const ethers_1 = require("ethers");
4
3
  const _helpers_1 = require("./_helpers");
4
+ const amount_1 = require("../../utils/amount");
5
5
  // TODO: interface changed: not efficient
6
6
  /**
7
7
  * @description Sum of the prices of all the NFTS
8
- * @param chainId
9
- * @param address
10
- * @param provider
11
- * @returns The total value of the collateral
8
+ * @param chainId The chain id.
9
+ * @param address The user.
10
+ * @param provider The provider to read with.
11
+ * @returns The total collateral value in crvUSD base units. Asset adapters always price with 18 decimals.
12
12
  */
13
13
  async function getUserCollateralValue(chainId, address, provider) {
14
14
  try {
15
15
  const lendingPoolContract = await (0, _helpers_1.getLendingPoolContract)(chainId, provider);
16
- const reward = await lendingPoolContract.getUserCollateralValue(address);
17
- console.log(`getUserCollateralValue result: ${ethers_1.ethers.formatEther(reward)}`);
18
- return reward;
16
+ const value = await lendingPoolContract.getUserCollateralValue(address);
17
+ return (0, amount_1.toAmount)(value, amount_1.WAD_DECIMALS);
19
18
  }
20
19
  catch (error) {
21
20
  console.error("Error in getUserCollateralValue:", error);