@raac/rpc 1.0.1 → 1.0.2-beta.1

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 (241) hide show
  1. package/dist/RPCLibrary.js +61 -8
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +1743 -0
  3. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.json +175 -67
  4. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.json +279 -0
  5. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +1231 -195
  6. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +153 -199
  7. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.json +72 -2
  8. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.json +2 -2
  9. package/dist/artifacts/core/tokens/IndexToken.sol/IndexToken.json +770 -0
  10. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.json +707 -49
  11. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.json +23 -84
  12. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +62 -62
  13. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +2 -2
  14. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.json +774 -0
  15. package/dist/artifacts/zeno/Auction.sol/Auction.json +34 -114
  16. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +3 -3
  17. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +3 -3
  18. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +3 -3
  19. package/dist/configs/chains/17000.json +127 -0
  20. package/dist/configs/chains/8453.json +26 -14
  21. package/dist/configs/chains/index.js +2 -0
  22. package/dist/configs/createConfig.js +6 -0
  23. package/dist/contracts/feeCollector/claimRewardFromPool.js +24 -0
  24. package/dist/contracts/housePrices/getLatestPrice.js +1 -1
  25. package/dist/contracts/indexToken/getNextRandomNFT.js +30 -0
  26. package/dist/contracts/indexToken/redeemNFT.js +39 -0
  27. package/dist/nfts/getAllTokens.js +34 -0
  28. package/dist/nfts/{addNewBatch.js → getBaseUri.js} +7 -8
  29. package/dist/nfts/getMintFeePercentage.js +23 -0
  30. package/dist/nfts/getMintPrice.js +28 -0
  31. package/dist/nfts/getTokenURI.js +23 -0
  32. package/dist/nfts/getTokensByOwner.js +35 -0
  33. package/dist/nfts/getTotalPropertiesCount.js +23 -0
  34. package/dist/nfts/{getCurrentBatchSize.js → totalNFTSupply.js} +3 -3
  35. package/dist/pools/lendingPool/borrowFromLendingPool.js +4 -3
  36. package/dist/pools/lendingPool/borrowFromLendingPoolWithInsurance.js +40 -0
  37. package/dist/pools/lendingPool/calculateInsuranceFee.js +20 -0
  38. package/dist/pools/lendingPool/claimReward.js +22 -0
  39. package/dist/pools/lendingPool/closeLiquidation.js +28 -0
  40. package/dist/pools/lendingPool/depositNFTToLendingPool.js +0 -1
  41. package/dist/pools/lendingPool/depositToLendingPool.js +2 -2
  42. package/dist/pools/lendingPool/getAllUserData.js +28 -0
  43. package/dist/pools/lendingPool/getEligibleUserDeposits.js +27 -0
  44. package/dist/pools/lendingPool/getHealthFactor.js +27 -0
  45. package/dist/pools/lendingPool/getLendingPoolInfo.js +8 -5
  46. package/dist/pools/lendingPool/getPendingReward.js +20 -0
  47. package/dist/pools/lendingPool/getPositionDebt.js +27 -0
  48. package/dist/pools/lendingPool/getPositionScaledDebt.js +27 -0
  49. package/dist/pools/lendingPool/getPositionView.js +38 -0
  50. package/dist/pools/lendingPool/getPositionsScaledDebt.js +27 -0
  51. package/dist/pools/lendingPool/getRawUserDepositsInLendingPool.js +21 -0
  52. package/dist/pools/lendingPool/getUserCollateralValue.js +27 -0
  53. package/dist/pools/lendingPool/initializeLiquidation.js +28 -0
  54. package/dist/pools/lendingPool/repayToLendingPool.js +4 -8
  55. package/dist/pools/lendingPool/withdrawFromLendingPool.js +2 -2
  56. package/dist/pools/stabilityPool/depositNFTToStabilityPool.js +40 -0
  57. package/dist/pools/stabilityPool/getRawUserDepositsInStabilityPool.js +21 -0
  58. package/dist/pools/stabilityPool/getStabilityPoolInfo.js +2 -12
  59. package/dist/scripts/index.js +90 -35
  60. package/dist/types/RPCLibrary.d.ts +61 -8
  61. package/dist/types/configs/chains/index.d.ts +2 -0
  62. package/dist/types/configs/createConfig.d.ts +6 -0
  63. package/dist/types/configs/index.d.ts +1 -0
  64. package/dist/types/contracts/feeCollector/claimRewardFromPool.d.ts +4 -0
  65. package/dist/types/contracts/housePrices/getLatestPrice.d.ts +1 -1
  66. package/dist/types/contracts/indexToken/getNextRandomNFT.d.ts +7 -0
  67. package/dist/types/contracts/indexToken/redeemNFT.d.ts +4 -0
  68. package/dist/types/nfts/getAllTokens.d.ts +7 -0
  69. package/dist/types/nfts/getBaseUri.d.ts +4 -0
  70. package/dist/types/nfts/getMintFeePercentage.d.ts +4 -0
  71. package/dist/types/nfts/getMintPrice.d.ts +7 -0
  72. package/dist/types/nfts/getTokenURI.d.ts +4 -0
  73. package/dist/types/nfts/getTokensByOwner.d.ts +10 -0
  74. package/dist/types/nfts/getTotalPropertiesCount.d.ts +4 -0
  75. package/dist/types/nfts/totalNFTSupply.d.ts +4 -0
  76. package/dist/types/pools/lendingPool/borrowFromLendingPool.d.ts +1 -1
  77. package/dist/types/pools/lendingPool/borrowFromLendingPoolWithInsurance.d.ts +4 -0
  78. package/dist/types/pools/lendingPool/calculateInsuranceFee.d.ts +4 -0
  79. package/dist/types/pools/lendingPool/claimReward.d.ts +4 -0
  80. package/dist/types/pools/lendingPool/closeLiquidation.d.ts +11 -0
  81. package/dist/types/pools/lendingPool/getAllUserData.d.ts +16 -0
  82. package/dist/types/pools/lendingPool/getEligibleUserDeposits.d.ts +11 -0
  83. package/dist/types/pools/lendingPool/getHealthFactor.d.ts +11 -0
  84. package/dist/types/pools/lendingPool/getLendingPoolInfo.d.ts +2 -1
  85. package/dist/types/pools/lendingPool/getPendingReward.d.ts +4 -0
  86. package/dist/types/pools/lendingPool/getPositionDebt.d.ts +11 -0
  87. package/dist/types/pools/lendingPool/getPositionScaledDebt.d.ts +11 -0
  88. package/dist/types/pools/lendingPool/getPositionView.d.ts +27 -0
  89. package/dist/types/pools/lendingPool/getPositionsScaledDebt.d.ts +11 -0
  90. package/dist/types/pools/lendingPool/getRawUserDepositsInLendingPool.d.ts +4 -0
  91. package/dist/types/pools/lendingPool/getUserCollateralValue.d.ts +11 -0
  92. package/dist/types/pools/lendingPool/initializeLiquidation.d.ts +11 -0
  93. package/dist/types/pools/lendingPool/repayToLendingPool.d.ts +2 -2
  94. package/dist/types/pools/lendingPool/withdrawNFTFromLendingPool.d.ts +1 -1
  95. package/dist/types/pools/stabilityPool/depositNFTToStabilityPool.d.ts +4 -0
  96. package/dist/types/pools/stabilityPool/getRawUserDepositsInStabilityPool.d.ts +4 -0
  97. package/dist/types/pools/stabilityPool/getStabilityPoolInfo.d.ts +1 -3
  98. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/index.d.ts +2 -0
  99. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/VRFConsumerBaseV2.d.ts +35 -0
  100. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/index.d.ts +3 -0
  101. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/interfaces/VRFCoordinatorV2Interface.d.ts +156 -0
  102. package/dist/types/typechain-types/@chainlink/contracts/src/v0.8/vrf/interfaces/index.d.ts +1 -0
  103. package/dist/types/typechain-types/contracts/core/collectors/FeeCollector.d.ts +446 -221
  104. package/dist/types/typechain-types/contracts/core/minters/RAACMinter/RAACMinter.d.ts +108 -20
  105. package/dist/types/typechain-types/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator.d.ts +6 -16
  106. package/dist/types/typechain-types/contracts/core/oracles/BaseVRFv2Consumer.d.ts +166 -0
  107. package/dist/types/typechain-types/contracts/core/oracles/index.d.ts +1 -0
  108. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +811 -99
  109. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/StabilityPool.d.ts +152 -148
  110. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/index.d.ts +0 -1
  111. package/dist/types/typechain-types/contracts/core/primitives/RAACHousePrices.d.ts +29 -2
  112. package/dist/types/typechain-types/contracts/core/tokens/DebtToken.d.ts +65 -51
  113. package/dist/types/typechain-types/contracts/core/tokens/IndexToken.d.ts +187 -2
  114. package/dist/types/typechain-types/contracts/core/tokens/RAACNFT.d.ts +413 -19
  115. package/dist/types/typechain-types/contracts/core/tokens/RToken.d.ts +40 -40
  116. package/dist/types/typechain-types/contracts/interfaces/core/collectors/IBaseCollector.d.ts +39 -0
  117. package/dist/types/typechain-types/contracts/interfaces/core/collectors/IFeeCollector.d.ts +317 -130
  118. package/dist/types/typechain-types/contracts/interfaces/core/collectors/index.d.ts +1 -0
  119. package/dist/types/typechain-types/contracts/interfaces/core/index.d.ts +2 -0
  120. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACMinter/IRAACMinter.d.ts +58 -22
  121. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator.d.ts +5 -3
  122. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IBaseVRFv2Consumer.d.ts +86 -0
  123. package/dist/types/typechain-types/contracts/interfaces/core/oracles/index.d.ts +1 -0
  124. package/dist/types/typechain-types/contracts/interfaces/core/pools/ILiquidityPool.d.ts +83 -45
  125. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +539 -54
  126. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/IStabilityPool.d.ts +92 -71
  127. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDebtToken.d.ts +123 -27
  128. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IIndexToken.d.ts +187 -0
  129. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRAACNFT.d.ts +243 -17
  130. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRToken.d.ts +37 -37
  131. package/dist/types/typechain-types/contracts/interfaces/core/tokens/index.d.ts +1 -0
  132. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IBaseVault.d.ts +83 -0
  133. package/dist/types/typechain-types/contracts/interfaces/core/vaults/index.d.ts +1 -0
  134. package/dist/types/typechain-types/contracts/interfaces/index.d.ts +0 -1
  135. package/dist/types/typechain-types/contracts/mocks/core/collectors/index.d.ts +0 -1
  136. package/dist/types/typechain-types/contracts/mocks/core/governance/proposals/TimelockTestTarget.d.ts +5 -1
  137. package/dist/types/typechain-types/contracts/mocks/core/index.d.ts +2 -0
  138. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockVRFCoordinatorV2.d.ts +530 -0
  139. package/dist/types/typechain-types/contracts/mocks/core/oracles/index.d.ts +1 -0
  140. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolCollector.d.ts +156 -0
  141. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +557 -102
  142. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLiquidityPool.d.ts +486 -0
  143. package/dist/types/typechain-types/contracts/mocks/core/pools/index.d.ts +2 -0
  144. package/dist/types/typechain-types/contracts/mocks/core/primitives/MockDistributableContract.d.ts +35 -0
  145. package/dist/types/typechain-types/contracts/mocks/core/primitives/index.d.ts +1 -0
  146. package/dist/types/typechain-types/contracts/mocks/core/tokens/MockCollectableUnderlying.d.ts +292 -0
  147. package/dist/types/typechain-types/contracts/mocks/core/tokens/index.d.ts +1 -0
  148. package/dist/types/typechain-types/contracts/mocks/core/vaults/MockVault.d.ts +290 -0
  149. package/dist/types/typechain-types/contracts/mocks/core/vaults/index.d.ts +1 -0
  150. package/dist/types/typechain-types/contracts/mocks/libraries/MockStringUtils.d.ts +25 -0
  151. package/dist/types/typechain-types/contracts/mocks/libraries/index.d.ts +1 -0
  152. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/index.d.ts +1 -0
  153. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/VRFConsumerBaseV2__factory.d.ts +33 -0
  154. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/index.d.ts +2 -0
  155. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/interfaces/VRFCoordinatorV2Interface__factory.d.ts +171 -0
  156. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/interfaces/index.d.ts +1 -0
  157. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +571 -194
  158. package/dist/types/typechain-types/factories/contracts/core/minters/RAACMinter/RAACMinter__factory.d.ts +138 -54
  159. package/dist/types/typechain-types/factories/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator__factory.d.ts +5 -31
  160. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseVRFv2Consumer__factory.d.ts +231 -0
  161. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACHousePriceOracle__factory.d.ts +1 -1
  162. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +1 -1
  163. package/dist/types/typechain-types/factories/contracts/core/oracles/index.d.ts +1 -0
  164. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +897 -64
  165. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/NFTLiquidator__factory.d.ts +1 -1
  166. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +128 -161
  167. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/index.d.ts +0 -1
  168. package/dist/types/typechain-types/factories/contracts/core/primitives/RAACHousePrices__factory.d.ts +54 -1
  169. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +47 -29
  170. package/dist/types/typechain-types/factories/contracts/core/tokens/IndexToken__factory.d.ts +317 -1
  171. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACNFT__factory.d.ts +525 -17
  172. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACToken__factory.d.ts +1 -1
  173. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +52 -52
  174. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +1 -1
  175. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/IBaseCollector__factory.d.ts +33 -0
  176. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/IFeeCollector__factory.d.ts +409 -90
  177. package/dist/types/typechain-types/factories/contracts/interfaces/core/collectors/index.d.ts +1 -0
  178. package/dist/types/typechain-types/factories/contracts/interfaces/core/index.d.ts +1 -0
  179. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACMinter/IRAACMinter__factory.d.ts +59 -15
  180. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACReleaseOrchestrator/IReleaseOrchestrator__factory.d.ts +4 -0
  181. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IBaseVRFv2Consumer__factory.d.ts +78 -0
  182. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/index.d.ts +1 -0
  183. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/ILiquidityPool__factory.d.ts +119 -39
  184. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +547 -19
  185. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/IStabilityPool__factory.d.ts +68 -67
  186. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDebtToken__factory.d.ts +119 -6
  187. package/dist/types/typechain-types/factories/{erc721a/contracts/IERC721A__factory.d.ts → contracts/interfaces/core/tokens/IIndexToken__factory.d.ts} +74 -215
  188. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRAACNFT__factory.d.ts +274 -10
  189. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRToken__factory.d.ts +26 -26
  190. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/index.d.ts +1 -0
  191. package/dist/types/typechain-types/factories/contracts/interfaces/{IMarketCreator__factory.d.ts → core/vaults/IBaseVault__factory.d.ts} +78 -42
  192. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/index.d.ts +1 -0
  193. package/dist/types/typechain-types/factories/contracts/interfaces/index.d.ts +0 -1
  194. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  195. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/index.d.ts +0 -1
  196. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockBaseGauge__factory.d.ts +16 -4
  197. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockTestTarget__factory.d.ts +10 -1
  198. package/dist/types/typechain-types/factories/contracts/mocks/core/index.d.ts +1 -0
  199. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  200. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockVRFCoordinatorV2__factory.d.ts +620 -0
  201. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACHousePriceOracle__factory.d.ts +1 -1
  202. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +1 -1
  203. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/index.d.ts +1 -0
  204. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolCollector__factory.d.ts +234 -0
  205. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +539 -77
  206. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPool__factory.d.ts +1 -1
  207. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLiquidityPool__factory.d.ts +795 -0
  208. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockStabilityPool__factory.d.ts +1 -1
  209. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/index.d.ts +2 -0
  210. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockDistributableContract__factory.d.ts +68 -0
  211. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/index.d.ts +1 -0
  212. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockCollectableUnderlying__factory.d.ts +451 -0
  213. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/index.d.ts +1 -0
  214. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/MockVault__factory.d.ts +525 -0
  215. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/index.d.ts +1 -0
  216. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockStringUtils__factory.d.ts +40 -0
  217. package/dist/types/typechain-types/factories/contracts/mocks/libraries/index.d.ts +1 -0
  218. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +1 -1
  219. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  220. package/dist/types/typechain-types/factories/index.d.ts +0 -1
  221. package/dist/types/typechain-types/index.d.ts +28 -10
  222. package/dist/types/utils/artifacts.d.ts +677 -39
  223. package/dist/types/utils/contracts.d.ts +2 -0
  224. package/dist/utils/artifacts.js +9 -0
  225. package/package.json +1 -1
  226. package/dist/nfts/getDepositedNFTs.js +0 -19
  227. package/dist/nfts/getOwnedNFTs.js +0 -34
  228. package/dist/types/nfts/addNewBatch.d.ts +0 -4
  229. package/dist/types/nfts/getCurrentBatchSize.d.ts +0 -4
  230. package/dist/types/nfts/getDepositedNFTs.d.ts +0 -7
  231. package/dist/types/nfts/getOwnedNFTs.d.ts +0 -7
  232. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/MarketCreator.d.ts +0 -274
  233. package/dist/types/typechain-types/contracts/interfaces/IMarketCreator.d.ts +0 -85
  234. package/dist/types/typechain-types/contracts/mocks/core/collectors/MockFeeCollector.d.ts +0 -708
  235. package/dist/types/typechain-types/erc721a/contracts/IERC721A.d.ts +0 -242
  236. package/dist/types/typechain-types/erc721a/contracts/index.d.ts +0 -1
  237. package/dist/types/typechain-types/erc721a/index.d.ts +0 -2
  238. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/MarketCreator__factory.d.ts +0 -405
  239. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockFeeCollector__factory.d.ts +0 -985
  240. package/dist/types/typechain-types/factories/erc721a/contracts/index.d.ts +0 -1
  241. package/dist/types/typechain-types/factories/erc721a/index.d.ts +0 -1
@@ -6,17 +6,13 @@ const artifacts_1 = require("../../utils/artifacts");
6
6
  async function repayToLendingPool(chainId, tokenId, amount, signer) {
7
7
  try {
8
8
  const lendingPoolAddress = (0, getContractAddress_1.getContractAddress)(chainId, "lendingpool");
9
- const crvUSDAddress = (0, getContractAddress_1.getContractAddress)(chainId, "rcrvusd");
10
9
  const lendingPoolABI = (0, artifacts_1.getABI)("lendingpool");
11
- const crvUSDABI = (0, artifacts_1.getABI)("crvusd");
12
10
  const lendingPoolContract = new ethers_1.ethers.Contract(lendingPoolAddress, lendingPoolABI, signer);
13
- const crvUSDTokenContract = new ethers_1.ethers.Contract(crvUSDAddress, crvUSDABI, signer);
14
- const approveTx = await crvUSDTokenContract.approve(lendingPoolAddress, amount);
15
- await approveTx.wait();
16
- console.log(`Approved lendingPoolContract to spend ${ethers_1.ethers.formatEther(amount)} crvUSD`);
17
- const tx = await lendingPoolContract.repay(amount);
11
+ const amountInWei = ethers_1.ethers.parseEther(amount.toString());
12
+ console.log("Repaying amount in wei:", amountInWei.toString());
13
+ const tx = await lendingPoolContract.repay(tokenId, amountInWei.toString());
18
14
  const receipt = await tx.wait();
19
- console.log(`Repaid ${ethers_1.ethers.formatEther(amount)} for NFT #${tokenId}`);
15
+ console.log(`Repaid ${amount} crvUSD to lending pool.`);
20
16
  console.log(`Transaction hash: ${receipt?.hash}`);
21
17
  return receipt;
22
18
  }
@@ -19,11 +19,11 @@ async function withdrawFromLendingPool(chainId, amount, signer) {
19
19
  const { maxFeePerGas } = await (0, estimateGasPrice_1.default)(signer);
20
20
  const userBalance = await rTokenContract.balanceOf(await signer.getAddress());
21
21
  if (userBalance < amount) {
22
- throw new Error(`Insufficient rcrvUSD balance. Available: ${ethers_1.ethers.formatEther(userBalance)}, Requested: ${ethers_1.ethers.formatEther(amount)}`);
22
+ throw new Error(`Insufficient rToken balance. Available: ${ethers_1.ethers.formatEther(userBalance)}, Requested: ${ethers_1.ethers.formatEther(amount)}`);
23
23
  }
24
24
  const approveTx = await rTokenContract.approve(lendingPoolAddress, amountInWei);
25
25
  await approveTx.wait();
26
- console.log(`Approved LendingPool to spend ${amount} rcrvUSD`);
26
+ console.log(`Approved LendingPool to spend ${amount} rToken`);
27
27
  // const withdraw = await lendingPoolContract.withdraw(amountInWei.toString(), {
28
28
  // maxFeePerGas,
29
29
  // nonce: await signer.getNonce()
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ethers_1 = require("ethers");
4
+ const contracts_1 = require("../../utils/contracts");
5
+ const artifacts_1 = require("../../utils/artifacts");
6
+ async function depositNFTToStabilityPool(chainId, tokenId, signer) {
7
+ if (!signer) {
8
+ throw new Error("Wallet not connected");
9
+ }
10
+ try {
11
+ const stabilityPoolAddress = (0, contracts_1.getContractAddress)(chainId, "stabilitypool");
12
+ const abi = (0, artifacts_1.getABI)("stabilitypool");
13
+ const stabilityPoolContract = new ethers_1.ethers.Contract(stabilityPoolAddress, abi, signer);
14
+ const RAACNFTAddress = (0, contracts_1.getContractAddress)(chainId, "raacnft");
15
+ const raacNFTABI = (0, artifacts_1.getABI)("raacnft");
16
+ const raacNFTContract = new ethers_1.ethers.Contract(RAACNFTAddress, raacNFTABI, signer);
17
+ const owner = await raacNFTContract.ownerOf(tokenId);
18
+ if (owner.toLowerCase() !== (await signer.getAddress()).toLowerCase()) {
19
+ throw new Error(`Signer does not own NFT #${tokenId}`);
20
+ }
21
+ // approve the disposal of the NFT
22
+ const approvalTx = await raacNFTContract.approve(stabilityPoolAddress, tokenId, {
23
+ nonce: await signer.getNonce(),
24
+ });
25
+ await approvalTx.wait();
26
+ console.log(`Approved stability pool to transfer NFT #${tokenId}`);
27
+ const tx = await stabilityPoolContract.depositNFT(RAACNFTAddress, tokenId, {
28
+ nonce: await signer.getNonce(),
29
+ });
30
+ console.log(`Deposit NFT transaction sent to Stability Pool:`, tx.hash);
31
+ const receipt = await tx.wait();
32
+ console.log(`Deposited token ${tokenId} to Stability Pool successfully:`, receipt?.hash);
33
+ return receipt;
34
+ }
35
+ catch (error) {
36
+ console.error(`Error depositing NFT to Stability Pool:`, error);
37
+ throw new Error(`NFT Deposit to Stability Pool failed: ${error.message}`);
38
+ }
39
+ }
40
+ exports.default = depositNFTToStabilityPool;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ethers_1 = require("ethers");
4
+ const getContractAddress_1 = require("../../contracts/getContractAddress");
5
+ const artifacts_1 = require("../../utils/artifacts");
6
+ // Get the amount of RToken RAW deposit in the lending pool, without the accured interest
7
+ async function getRawUserDepositInStabilityPool(chainId, address, provider) {
8
+ try {
9
+ const stabilityPoolAddress = (0, getContractAddress_1.getContractAddress)(chainId, "stabilitypool");
10
+ const stabilityPoolABI = (0, artifacts_1.getABI)("stabilitypool");
11
+ const stabilityPoolContract = new ethers_1.ethers.Contract(stabilityPoolAddress, stabilityPoolABI, provider);
12
+ const value = await stabilityPoolContract.getUserDeposit(address);
13
+ console.log(`User deposits in stability pool: ${ethers_1.ethers.formatEther(value)}`);
14
+ return value;
15
+ }
16
+ catch (error) {
17
+ console.error("Error in getRawUserDepositInStabilityPool:", error);
18
+ throw error;
19
+ }
20
+ }
21
+ exports.default = getRawUserDepositInStabilityPool;
@@ -17,16 +17,10 @@ async function getStabilityPoolInfo(chainId, address, provider) {
17
17
  };
18
18
  console.log(await stabilityPoolContract.deToken());
19
19
  // Fetch data from StabilityPool
20
- const [totalDeposits, totalAllocation, exchangeRate, totalRAACRewards] = await Promise.all([
20
+ const [totalDeposits, totalAllocation] = await Promise.all([
21
21
  stabilityPoolContract
22
22
  .getTotalDeposits()
23
23
  .catch(handleError("getTotalDeposits")),
24
- stabilityPoolContract
25
- .getTotalAllocation()
26
- .catch(handleError("getTotalAllocation")),
27
- stabilityPoolContract
28
- .getExchangeRate()
29
- .catch(handleError("getExchangeRate")),
30
24
  stabilityPoolContract
31
25
  .raacToken()
32
26
  .then(async (raacTokenAddress) => {
@@ -51,9 +45,7 @@ async function getStabilityPoolInfo(chainId, address, provider) {
51
45
  ]);
52
46
  }
53
47
  // Fetch RAAC Minter information if needed for APY calculation
54
- const raacMinterAddress = await stabilityPoolContract
55
- .raacMinter()
56
- .catch(handleError("raacMinter"));
48
+ const raacMinterAddress = (0, contracts_1.getContractAddress)(chainId, "raacminter");
57
49
  let apy = 0n;
58
50
  if (raacMinterAddress && raacMinterAddress !== ethers_1.ethers.ZeroAddress) {
59
51
  const raacMinterABI = (0, artifacts_1.getABI)("raacminter");
@@ -74,8 +66,6 @@ async function getStabilityPoolInfo(chainId, address, provider) {
74
66
  const result = {
75
67
  totalDeposits: ethers_1.ethers.formatEther(totalDeposits ?? 0n),
76
68
  totalAllocation: (totalAllocation ?? 0n).toString(),
77
- exchangeRate: ethers_1.ethers.formatUnits(exchangeRate ?? 0n, 18),
78
- totalRAACRewards: ethers_1.ethers.formatEther(totalRAACRewards ?? 0n),
79
69
  userDeposit: ethers_1.ethers.formatEther(userDeposit ?? 0n),
80
70
  pendingRewards: ethers_1.ethers.formatEther(pendingRewards ?? 0n),
81
71
  apy: parseFloat((apy ?? 0n).toString()) / 100, // APY in percentage
@@ -29,37 +29,63 @@ async function setup() {
29
29
  rpc.provider = provider;
30
30
  rpc.chainId = chainId;
31
31
  // send myself some CRVUSD
32
- await rpc.wallet.assets.mintAsset(chainId, "crvusd", 10000n, signer.address, signer);
33
- // // set the base uri to localhost:3000
34
- await rpc.nfts.setBaseUri(chainId, "https://localhost:3000", signer);
35
- // // set the oracle address of the RAACHousePrice. TEmporarily simulating that I AM THE ORACLE
32
+ await rpc.wallet.assets.mintAsset(chainId, "crvusd", 10000000n, signer.address, signer);
33
+ // // set the base uri to instruxi data gateway
34
+ await rpc.nfts.setBaseUri(chainId, "https://gateway-staging.instruxi.dev/api/v1/vnft/metadata/public/1/0x0000000000000000000000000000", signer);
35
+ // // // set the oracle address of the RAACHousePrice. TEmporarily simulating that I AM THE ORACLE
36
36
  await rpc.contracts.housePrices.setOracle(chainId, signer.address, signer);
37
- // // set price for 3 houses
37
+ // // // set price for 3 houses
38
38
  const housePriceAddress = (0, contracts_1.getContractAddress)(chainId, "raachouseprices");
39
39
  const housePriceABI = (0, artifacts_1.getABI)("raachouseprices");
40
40
  const housePriceContract = new ethers_1.ethers.Contract(housePriceAddress, housePriceABI, signer);
41
- let tx = await housePriceContract.setHousePrice(1, (0, ethers_1.parseEther)("100"));
42
- await tx.wait();
43
- console.log("Price set for house 1");
44
- tx = await housePriceContract.setHousePrice(2, (0, ethers_1.parseEther)("200"));
45
- await tx.wait();
46
- console.log("Price set for house 2");
47
- tx = await housePriceContract.setHousePrice(3, (0, ethers_1.parseEther)("300"));
48
- await tx.wait();
49
- console.log("Price set for house 3");
50
- // make sure that prices are set
51
- let price = await rpc.nfts.getHousePrice(chainId, 1, provider);
52
- if (price !== "100.0") {
53
- throw new Error("Price not set correctly");
41
+ const raacNFTAddress = (0, contracts_1.getContractAddress)(chainId, "raacnft");
42
+ const raacNFTABI = (0, artifacts_1.getABI)("raacnft");
43
+ const raacNFTContract = new ethers_1.ethers.Contract(raacNFTAddress, raacNFTABI, signer);
44
+ const countTokens = 3;
45
+ // // Generate 10 house prices between 100K and 2M
46
+ const housePrices = [];
47
+ for (let i = 1; i <= countTokens; i++) {
48
+ const price = Math.floor(Math.random() * (2000000 - 100000) + 100000);
49
+ housePrices.push(price);
50
+ }
51
+ // // Mint the new properties
52
+ for (let i = 1; i <= countTokens; i++) {
53
+ const tx = await raacNFTContract.minterMint(signer.address, i);
54
+ await tx.wait();
55
+ console.log("Minted NFT", i);
54
56
  }
55
- price = await rpc.nfts.getHousePrice(chainId, 2, provider);
56
- if (price !== "200.0") {
57
- throw new Error("Price not set correctly");
57
+ // set house prices
58
+ for (let i = 1; i <= countTokens; i++) {
59
+ const tx = await housePriceContract.setHousePrice(i, (0, ethers_1.parseEther)(housePrices[i - 1].toString()));
60
+ await tx.wait();
61
+ console.log("Price set for house", i);
58
62
  }
59
- price = await rpc.nfts.getHousePrice(chainId, 3, provider);
60
- if (price !== "300.0") {
61
- throw new Error("Price not set correctly");
63
+ // confirm the house prices are set
64
+ for (let i = 1; i <= countTokens; i++) {
65
+ const price = await rpc.nfts.getHousePrice(chainId, i, provider);
66
+ console.log("Price for house", i, price);
67
+ if (price !== housePrices[i - 1].toString() + ".0") {
68
+ throw new Error("Price not set correctly");
69
+ }
62
70
  }
71
+ // Generate some random NFT and set price only: not purchased yet
72
+ let nftIdStart = countTokens + 1;
73
+ let nftIdEnd = countTokens + 10;
74
+ for (let i = nftIdStart; i <= nftIdEnd; i++) {
75
+ const price = Math.floor(Math.random() * (2000000 - 100000) + 100000);
76
+ const tx = await housePriceContract.setHousePrice(i, (0, ethers_1.parseEther)(price.toString()));
77
+ await tx.wait();
78
+ console.log("Price set for house", i);
79
+ }
80
+ /// Temporary fix for stabillity pool setStabilityPool
81
+ const stabilityPoolAddress = (0, contracts_1.getContractAddress)(chainId, "stabilitypool");
82
+ const deTokenAddress = (0, contracts_1.getContractAddress)(chainId, "detoken");
83
+ const deTokenABI = (0, artifacts_1.getABI)("detoken");
84
+ const deTokenContract = new ethers_1.ethers.Contract(deTokenAddress, deTokenABI, signer);
85
+ const tx = await deTokenContract.setStabilityPool(stabilityPoolAddress);
86
+ await tx.wait();
87
+ console.log("Stability pool set to", stabilityPoolAddress);
88
+ fulfillRequest();
63
89
  }
64
90
  const execute = async () => {
65
91
  const provider = await getProvider();
@@ -68,16 +94,45 @@ const execute = async () => {
68
94
  rpc.address = signer.address;
69
95
  rpc.provider = provider;
70
96
  rpc.chainId = chainId;
71
- const balance = await rpc.wallet.assets.getBalance(chainId, "detoken", signer.address, provider);
72
- console.log("Balance: ", balance);
73
- const rtokenBalance = await rpc.wallet.assets.getBalance(chainId, "rtoken", signer.address, provider);
74
- console.log("RToken Balance: ", rtokenBalance);
75
- const stabilityPoolAddress = (0, contracts_1.getContractAddress)(chainId, "stabilitypool");
76
- const allowance = await rpc.wallet.assets.getAllowance(chainId, "detoken", signer.address, stabilityPoolAddress, provider);
77
- console.log("Allowance: ", allowance);
78
- // withdraw
79
- // await rpc.pools.stabilityPool.withdrawFromStabilityPool(chainId, "4", signer);
80
- // console.log("Withdrawn from stability pool");
97
+ console.log(await rpc.contracts.indexToken.getNextRandomNFT(chainId, provider));
98
+ };
99
+ const updateNFTPrice = async (id, price) => {
100
+ const provider = await getProvider();
101
+ const signer = await createWallet(TEST_MNEMONIC, provider);
102
+ const rpc = new RPCLibrary_1.default();
103
+ rpc.address = signer.address;
104
+ rpc.provider = provider;
105
+ rpc.chainId = chainId;
106
+ const housePriceAddress = (0, contracts_1.getContractAddress)(chainId, "raachouseprices");
107
+ const housePriceABI = (0, artifacts_1.getABI)("raachouseprices");
108
+ const housePriceContract = new ethers_1.ethers.Contract(housePriceAddress, housePriceABI, signer);
109
+ let tx;
110
+ tx = await housePriceContract.setHousePrice(id, ethers_1.ethers.parseEther(price));
111
+ console.log(await rpc.nfts.getHousePrice(chainId, parseInt(id), provider));
112
+ };
113
+ const fulfillRequest = async () => {
114
+ const provider = await getProvider();
115
+ const signer = await createWallet(TEST_MNEMONIC, provider);
116
+ const rpc = new RPCLibrary_1.default();
117
+ rpc.address = signer.address;
118
+ rpc.provider = provider;
119
+ rpc.chainId = chainId;
120
+ const indexTokenAddress = (0, contracts_1.getContractAddress)(chainId, "indextoken");
121
+ const indexTokenABI = (0, artifacts_1.getABI)("indextoken");
122
+ const indexTokenContract = new ethers_1.ethers.Contract(indexTokenAddress, indexTokenABI, signer);
123
+ const vrfCoordinatorAddress = "0x9d4454B023096f34B160D6B654540c56A1F81688";
124
+ const vrfCoordinatorABI = (0, artifacts_1.getABI)("mockvrfcoordinator");
125
+ const vrfCoordinatorContract = new ethers_1.ethers.Contract(vrfCoordinatorAddress, vrfCoordinatorABI, signer);
126
+ const vrfConsumerAddress = "0x5eb3Bc0a489C5A8288765d2336659EbCA68FCd00";
127
+ const vrfConsumerABI = (0, artifacts_1.getABI)("vrfconsumer");
128
+ const vrfConsumerContract = new ethers_1.ethers.Contract(vrfConsumerAddress, vrfConsumerABI, signer);
129
+ await vrfCoordinatorContract.fulfillRandomWordsWithOverride(await vrfConsumerContract.lastRequestId(), vrfConsumerAddress, [12]);
130
+ const nextRandom = await vrfConsumerContract.getRequestStatus();
131
+ console.log("Next random number", nextRandom);
132
+ const redemptionToken = await rpc.contracts.indexToken.getNextRandomNFT(chainId, provider);
133
+ console.log("Redemption token", redemptionToken);
81
134
  };
82
- execute();
135
+ // execute();
83
136
  // setup();
137
+ fulfillRequest();
138
+ // updateNFTPrice("7", "1650000");
@@ -20,10 +20,8 @@ import withdrawNFTFromLendingPool from "./pools/lendingPool/withdrawNFTFromLendi
20
20
  import getHousePrice from "./pools/lendingPool/getHousePrice";
21
21
  import mintNFT from "./nfts/mint";
22
22
  import getNFTHousePrice from "./nfts/getHousePrice";
23
- import addNewNFTBatch from "./nfts/addNewBatch";
24
23
  import setNFTBaseUri from "./nfts/setBaseUri";
25
- import getNFTCurrentBatchSize from "./nfts/getCurrentBatchSize";
26
- import getOwnedNFTs from "./nfts/getOwnedNFTs";
24
+ import getTokensByOwner from "./nfts/getTokensByOwner";
27
25
  import getContractAddress from "./contracts/getContractAddress";
28
26
  import getContract from "./contracts/getContract";
29
27
  import getLatestPrice from "./contracts/housePrices/getLatestPrice";
@@ -44,7 +42,33 @@ import createAuction from "./contracts/zeno/createAuction";
44
42
  import createZeno from "./contracts/zeno/createZeno";
45
43
  import getZenos from "./contracts/zeno/getZenos";
46
44
  import { ChainId } from "./configs/chains";
47
- import getDepositedNFTs from "./nfts/getDepositedNFTs";
45
+ import getBaseUri from "./nfts/getBaseUri";
46
+ import getAllUserData from "./pools/lendingPool/getAllUserData";
47
+ import claimRewardFromPool from "./contracts/feeCollector/claimRewardFromPool";
48
+ import claimReward from "./pools/lendingPool/claimReward";
49
+ import getPendingReward from "./pools/lendingPool/getPendingReward";
50
+ import getRawUserDepositsInLendingPool from "./pools/lendingPool/getRawUserDepositsInLendingPool";
51
+ import getRawUserDepositInStabilityPool from "./pools/stabilityPool/getRawUserDepositsInStabilityPool";
52
+ import getEligibleUserDeposits from "./pools/lendingPool/getEligibleUserDeposits";
53
+ import getMintPrice from "./nfts/getMintPrice";
54
+ import getMintFeePercentage from "./nfts/getMintFeePercentage";
55
+ import getAllTokens from "./nfts/getAllTokens";
56
+ import totalNFTSupply from "./nfts/totalNFTSupply";
57
+ import getTokenURI from "./nfts/getTokenURI";
58
+ import getHealthFactor from "./pools/lendingPool/getHealthFactor";
59
+ import getPositionDebt from "./pools/lendingPool/getPositionDebt";
60
+ import getPositionScaledDebt from "./pools/lendingPool/getPositionScaledDebt";
61
+ import getPositionsScaledDebt from "./pools/lendingPool/getPositionsScaledDebt";
62
+ import getPositionView from "./pools/lendingPool/getPositionView";
63
+ import getUserCollateralValue from "./pools/lendingPool/getUserCollateralValue";
64
+ import initializeLiquidation from "./pools/lendingPool/initializeLiquidation";
65
+ import closeLiquidation from "./pools/lendingPool/closeLiquidation";
66
+ import borrowFromLendingPoolWithInsurance from "./pools/lendingPool/borrowFromLendingPoolWithInsurance";
67
+ import depositNFTToStabilityPool from "./pools/stabilityPool/depositNFTToStabilityPool";
68
+ import redeemNFT from "./contracts/indexToken/redeemNFT";
69
+ import getNextRandomNFT from "./contracts/indexToken/getNextRandomNFT";
70
+ import calculateInsuranceFee from "./pools/lendingPool/calculateInsuranceFee";
71
+ import getTotalPropertiesCount from "./nfts/getTotalPropertiesCount";
48
72
  declare class RPCLibrary {
49
73
  signer: Signer | null;
50
74
  isConnected: boolean;
@@ -69,13 +93,17 @@ declare class RPCLibrary {
69
93
  };
70
94
  };
71
95
  nfts: {
96
+ getBaseUri: typeof getBaseUri;
72
97
  mint: typeof mintNFT;
73
98
  getHousePrice: typeof getNFTHousePrice;
74
- getOwnedNFTs: typeof getOwnedNFTs;
75
- getDepositedNFTs: typeof getDepositedNFTs;
76
- addNewBatch: typeof addNewNFTBatch;
99
+ getTokensByOwner: typeof getTokensByOwner;
77
100
  setBaseUri: typeof setNFTBaseUri;
78
- getCurrentBatchSize: typeof getNFTCurrentBatchSize;
101
+ totalSupply: typeof totalNFTSupply;
102
+ getMintPrice: typeof getMintPrice;
103
+ getMintFeePercentage: typeof getMintFeePercentage;
104
+ getAllTokens: typeof getAllTokens;
105
+ getTokenURI: typeof getTokenURI;
106
+ getTotalPropertiesCount: typeof getTotalPropertiesCount;
79
107
  };
80
108
  contracts: {
81
109
  housePrices: {
@@ -89,6 +117,13 @@ declare class RPCLibrary {
89
117
  };
90
118
  getContractAddress: typeof getContractAddress;
91
119
  getContract: typeof getContract;
120
+ feeCollector: {
121
+ claimRewardFromPool: typeof claimRewardFromPool;
122
+ };
123
+ indexToken: {
124
+ getNextRandomNFT: typeof getNextRandomNFT;
125
+ redeemNFT: typeof redeemNFT;
126
+ };
92
127
  };
93
128
  pools: {
94
129
  stabilityPool: {
@@ -96,6 +131,8 @@ declare class RPCLibrary {
96
131
  depositToStabilityPool: typeof depositToStabilityPool;
97
132
  withdrawFromStabilityPool: typeof withdrawFromStabilityPool;
98
133
  calculateRAACRewards: typeof calculateRAACRewards;
134
+ getRawUserDepositInStabilityPool: typeof getRawUserDepositInStabilityPool;
135
+ depositNFTToStabilityPool: typeof depositNFTToStabilityPool;
99
136
  };
100
137
  lendingPool: {
101
138
  repayToLendingPool: typeof repayToLendingPool;
@@ -104,6 +141,22 @@ declare class RPCLibrary {
104
141
  depositNFTToLendingPool: typeof depositNFTToLendingPool;
105
142
  withdrawNFTFromLendingPool: typeof withdrawNFTFromLendingPool;
106
143
  getLendingPoolInfo: typeof getLendingPoolInfo;
144
+ getAllUserData: typeof getAllUserData;
145
+ claimReward: typeof claimReward;
146
+ getPendingReward: typeof getPendingReward;
147
+ getRawUserDepositsInLendingPool: typeof getRawUserDepositsInLendingPool;
148
+ getEligibleUserDeposits: typeof getEligibleUserDeposits;
149
+ getHealthFactor: typeof getHealthFactor;
150
+ getPositionDebt: typeof getPositionDebt;
151
+ getPositionScaledDebt: typeof getPositionScaledDebt;
152
+ getPositionsScaledDebt: typeof getPositionsScaledDebt;
153
+ getPositionView: typeof getPositionView;
154
+ getUserCollateralValue: typeof getUserCollateralValue;
155
+ depositToLendingPool: typeof depositToLendingPool;
156
+ initializeLiquidation: typeof initializeLiquidation;
157
+ closeLiquidation: typeof closeLiquidation;
158
+ borrowFromLendingPoolWithInsurance: typeof borrowFromLendingPoolWithInsurance;
159
+ calculateInsuranceFee: typeof calculateInsuranceFee;
107
160
  };
108
161
  depositToLendingPool: typeof depositToLendingPool;
109
162
  withdrawFromLendingPool: typeof withdrawFromLendingPool;
@@ -1,10 +1,12 @@
1
1
  import { Chain8453 } from "./chain";
2
2
  declare const chains: {
3
3
  8453: Chain8453;
4
+ 17000: Chain8453;
4
5
  };
5
6
  export default chains;
6
7
  export declare const configs: {
7
8
  8453: Chain8453;
9
+ 17000: Chain8453;
8
10
  };
9
11
  export type Configs = typeof chains;
10
12
  export type ConfigKeys = keyof Configs;
@@ -81,6 +81,12 @@ declare function createConfig(chainId: ChainId): {
81
81
  decimals: number;
82
82
  contract: string;
83
83
  };
84
+ indextoken: {
85
+ id: string;
86
+ name: string;
87
+ decimals: number;
88
+ contract: string;
89
+ };
84
90
  };
85
91
  };
86
92
  export default createConfig;
@@ -1,6 +1,7 @@
1
1
  import { ChainId } from "./chains/index";
2
2
  declare function getChainsConfig(): {
3
3
  8453: import("./chains/chain").Chain8453;
4
+ 17000: import("./chains/chain").Chain8453;
4
5
  };
5
6
  declare function setChainConfig(chainId: ChainId, config: any): void;
6
7
  declare function getChainConfig(chainId: ChainId): any;
@@ -0,0 +1,4 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function claimRewardFromPool(chainId: ChainId, poolAddress: string, signer: Signer): Promise<void>;
4
+ export default claimRewardFromPool;
@@ -4,7 +4,7 @@ declare function getLatestPrice(chainId: ChainId, tokenId: string, provider: Pro
4
4
  price: bigint;
5
5
  timestamp: bigint;
6
6
  } | {
7
- price: number;
7
+ price: bigint;
8
8
  timestamp: number;
9
9
  }>;
10
10
  export default getLatestPrice;
@@ -0,0 +1,7 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function getNextRandomNFT(chainId: ChainId, provider: Provider): Promise<{
4
+ nftContract: string;
5
+ tokenId: bigint;
6
+ }>;
7
+ export default getNextRandomNFT;
@@ -0,0 +1,4 @@
1
+ import { ethers, Signer } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function redeemNFT(chainId: ChainId, signer: Signer): Promise<ethers.ContractTransactionReceipt>;
4
+ export default redeemNFT;
@@ -0,0 +1,7 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getAllTokens(chainId: ChainId, provider: Provider, pagination?: {
4
+ offset: number;
5
+ limit: number;
6
+ }): Promise<bigint[]>;
7
+ export default getAllTokens;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getBaseUri(chainId: ChainId, provider: Provider): Promise<string>;
4
+ export default getBaseUri;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getMintFeePercentage(chainId: ChainId, provider: Provider): Promise<bigint>;
4
+ export default getMintFeePercentage;
@@ -0,0 +1,7 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getMintPrice(chainId: ChainId, tokenId: string | number, provider: Provider): Promise<{
4
+ price: bigint;
5
+ decimals: any;
6
+ }>;
7
+ export default getMintPrice;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getTokenURI(chainId: ChainId, tokenId: string | number, provider: Provider): Promise<string>;
4
+ export default getTokenURI;
@@ -0,0 +1,10 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getTokensByOwner(chainId: ChainId, address: string, provider: Provider, pagination?: {
4
+ offset: number;
5
+ limit: number;
6
+ }): Promise<{
7
+ address: string;
8
+ tokens: string[];
9
+ }>;
10
+ export default getTokensByOwner;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function getTotalPropertiesCount(chainId: ChainId, provider: Provider): Promise<bigint>;
4
+ export default getTotalPropertiesCount;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../configs/chains/index";
3
+ declare function totalNFTSupply(chainId: ChainId, provider: Provider): Promise<string>;
4
+ export default totalNFTSupply;
@@ -1,4 +1,4 @@
1
1
  import { ethers, Signer } from "ethers";
2
2
  import { ChainId } from "../../configs/chains/index";
3
- declare function borrowFromLendingPool(chainId: ChainId, tokenId: number | string, amount: string, signer: Signer): Promise<ethers.ContractTransactionReceipt>;
3
+ declare function borrowFromLendingPool(chainId: ChainId, tokenId: string, amount: string, signer: Signer): Promise<ethers.ContractTransactionReceipt>;
4
4
  export default borrowFromLendingPool;
@@ -0,0 +1,4 @@
1
+ import { ethers, Signer } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function borrowFromLendingPoolWithInsurance(chainId: ChainId, tokenId: string, amount: string, signer: Signer): Promise<ethers.ContractTransactionReceipt>;
4
+ export default borrowFromLendingPoolWithInsurance;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function calculateInsuranceFee(chainId: ChainId, address: string, tokenId: string, amount: string, provider: Provider): Promise<string>;
4
+ export default calculateInsuranceFee;
@@ -0,0 +1,4 @@
1
+ import { ethers, Signer } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function claimReward(chainId: ChainId, signer: Signer): Promise<ethers.ContractTransactionReceipt>;
4
+ export default claimReward;
@@ -0,0 +1,11 @@
1
+ import { ethers, Signer } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ /**
4
+ * @description Close the liqudation after the debt has been paid
5
+ * @param chainId
6
+ * @param address
7
+ * @param provider
8
+ * @returns
9
+ */
10
+ declare function closeLiquidation(chainId: ChainId, tokenId: string, signer: Signer): Promise<ethers.ContractTransactionResponse>;
11
+ export default closeLiquidation;
@@ -0,0 +1,16 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../configs/chains";
3
+ declare function getAllUserData(chainId: ChainId, address: string, provider: Provider): Promise<{
4
+ nftTokenIds: string[];
5
+ scaledDebtBalance: string;
6
+ userCollateralValue: string;
7
+ positions: {
8
+ rawDebtBalance: string;
9
+ scaledDebtBalance: string;
10
+ healthFactor: string;
11
+ isUnderLiquidation: boolean;
12
+ liquidationStartTime: string;
13
+ positionIndex: string;
14
+ }[];
15
+ }>;
16
+ export default getAllUserData;
@@ -0,0 +1,11 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ /**
4
+ * @description Total amount of RToken + DEToken = total crvUSD they put in the system so far. How much they have contributed to the system.
5
+ * @param chainId
6
+ * @param address
7
+ * @param provider
8
+ * @returns
9
+ */
10
+ declare function getEligibleUserDeposits(chainId: ChainId, address: string, provider: Provider): Promise<bigint>;
11
+ export default getEligibleUserDeposits;
@@ -0,0 +1,11 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ /**
4
+ * @description Get the health factor of a NFT position -> factor < 1 : undercollateralized.
5
+ * @param chainId
6
+ * @param address
7
+ * @param provider
8
+ * @returns The health factor of a position (0, inf)
9
+ */
10
+ declare function getHealthFactor(chainId: ChainId, address: string, tokenId: string, provider: Provider): Promise<bigint>;
11
+ export default getHealthFactor;
@@ -18,6 +18,7 @@ declare function getLendingPoolInfo(chainId: ChainId, address: string, provider:
18
18
  normalizedDebt: string;
19
19
  apy: string;
20
20
  userRedeemable: string;
21
- totalVaultDeposits: string;
21
+ liquidationThreshold: number;
22
+ healthFactorLiquidationThreshold: any;
22
23
  }>;
23
24
  export default getLendingPoolInfo;
@@ -0,0 +1,4 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../configs/chains/index";
3
+ declare function getPendingReward(chainId: ChainId, address: string, provider: Provider): Promise<bigint>;
4
+ export default getPendingReward;