impermax-sdk 1.2.112 → 2.0.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 (357) hide show
  1. package/lib/abis/ImpermaxABI.d.ts +2 -2
  2. package/lib/abis/ImpermaxABI.js +3 -3
  3. package/lib/abis/contracts/ClaimAggregator.json +2015 -2015
  4. package/lib/abis/contracts/IAllowanceTransfer.json +3772 -0
  5. package/lib/abis/contracts/IBorrowable.json +13207 -13207
  6. package/lib/abis/contracts/IClaimable.json +406 -406
  7. package/lib/abis/contracts/ICollateral.json +9052 -9052
  8. package/lib/abis/contracts/IERC20.json +2376 -2376
  9. package/lib/abis/contracts/IERC721.json +3515 -0
  10. package/lib/abis/contracts/IFactory.json +3660 -3660
  11. package/lib/abis/contracts/IFarmingPool.json +3584 -3584
  12. package/lib/abis/contracts/ILendingVaultV1.json +8358 -8358
  13. package/lib/abis/contracts/IMerkleDistributor.json +1134 -1134
  14. package/lib/abis/contracts/IRouter02.json +7283 -7283
  15. package/lib/abis/contracts/ISimpleUniswapOracle.json +1469 -1469
  16. package/lib/abis/contracts/IStakedLPToken.json +7309 -7309
  17. package/lib/abis/contracts/IStakingRewards.json +1036 -1036
  18. package/lib/abis/contracts/ITokenizedUniswapV2Position.json +4167 -0
  19. package/lib/abis/contracts/ITokenizedUniswapV3Position.json +5539 -0
  20. package/lib/abis/contracts/IUniswapV2Factory.json +1690 -1690
  21. package/lib/abis/contracts/IUniswapV2Pair.json +6761 -6761
  22. package/lib/abis/contracts/IUniswapV3Pool.json +6606 -0
  23. package/lib/abis/contracts/ImpermaxChef.json +20945 -20945
  24. package/lib/abis/contracts/ImpermaxConfigManager.json +31595 -31595
  25. package/lib/abis/contracts/ImpermaxV3Borrowable.json +22131 -0
  26. package/lib/abis/contracts/ImpermaxV3Collateral.json +22988 -0
  27. package/lib/abis/contracts/ImpermaxV3Factory.json +17645 -0
  28. package/lib/abis/contracts/ImpermaxV3UniV2Router01.json +32488 -0
  29. package/lib/abis/contracts/ImpermaxV3UniV3Router01.json +37742 -0
  30. package/lib/abis/contracts/LendingVaultWatcher01.json +4076 -4076
  31. package/lib/abis/contracts/PoolTokenRouter01.json +9058 -0
  32. package/lib/config/amms.d.ts +102 -104
  33. package/lib/config/amms.js +433 -436
  34. package/lib/config/chainId.d.ts +2 -0
  35. package/lib/config/chainId.js +26 -0
  36. package/lib/config/contracts/claim-aggregators.d.ts +2 -2
  37. package/lib/config/contracts/claim-aggregators.js +26 -26
  38. package/lib/config/contracts/impermax-chef.d.ts +2 -2
  39. package/lib/config/contracts/impermax-chef.js +27 -27
  40. package/lib/config/contracts/impermax-config-manager.d.ts +2 -2
  41. package/lib/config/contracts/impermax-config-manager.js +26 -26
  42. package/lib/config/contracts/impermax-factories.d.ts +4 -4
  43. package/lib/config/contracts/impermax-factories.js +87 -87
  44. package/lib/config/contracts/imxes.d.ts +2 -2
  45. package/lib/config/contracts/imxes.js +26 -26
  46. package/lib/config/contracts/lending-vault-watcher.d.ts +2 -2
  47. package/lib/config/contracts/lending-vault-watcher.js +26 -26
  48. package/lib/config/contracts/merkle-distributors.d.ts +4 -4
  49. package/lib/config/contracts/merkle-distributors.js +70 -70
  50. package/lib/config/contracts/routers.d.ts +4 -3
  51. package/lib/config/contracts/routers.js +118 -94
  52. package/lib/config/contracts/simple-uniswap-oracles.d.ts +2 -2
  53. package/lib/config/contracts/simple-uniswap-oracles.js +49 -49
  54. package/lib/config/contracts/weths.d.ts +2 -2
  55. package/lib/config/contracts/weths.js +27 -27
  56. package/lib/config/debank-ids.d.ts +2 -2
  57. package/lib/config/debank-ids.js +26 -26
  58. package/lib/config/endpoints/merkle-distributors.d.ts +4 -4
  59. package/lib/config/endpoints/merkle-distributors.js +70 -70
  60. package/lib/config/eth.d.ts +3 -3
  61. package/lib/config/eth.js +48 -48
  62. package/lib/config/factories.d.ts +7 -7
  63. package/lib/config/factories.js +31 -30
  64. package/lib/config/farms.d.ts +109 -111
  65. package/lib/config/farms.js +207 -210
  66. package/lib/config/general.d.ts +5 -5
  67. package/lib/config/general.js +8 -8
  68. package/lib/config/subgraphs.d.ts +45 -45
  69. package/lib/config/subgraphs.js +187 -187
  70. package/lib/config/types.d.ts +85 -72
  71. package/lib/config/types.js +72 -58
  72. package/lib/index.d.ts +36 -35
  73. package/lib/index.js +159 -152
  74. package/lib/offchain/account/index.d.ts +9 -7
  75. package/lib/offchain/account/index.js +43 -39
  76. package/lib/offchain/account/lendingPool/borrowable.d.ts +14 -0
  77. package/lib/offchain/account/lendingPool/borrowable.js +73 -0
  78. package/lib/offchain/account/lendingPool/collateral.d.ts +12 -0
  79. package/lib/offchain/account/lendingPool/collateral.js +42 -0
  80. package/lib/offchain/account/lendingPool/index.d.ts +6 -5
  81. package/lib/offchain/account/lendingPool/index.js +14 -12
  82. package/lib/offchain/account/lendingPool/offchainAccountBorrowable.d.ts +14 -17
  83. package/lib/offchain/account/lendingPool/offchainAccountBorrowable.js +45 -71
  84. package/lib/offchain/account/lendingPool/offchainAccountCollateral.d.ts +11 -13
  85. package/lib/offchain/account/lendingPool/offchainAccountCollateral.js +31 -43
  86. package/lib/offchain/account/lendingPool/offchainAccountLendingPool.d.ts +28 -21
  87. package/lib/offchain/account/lendingPool/offchainAccountLendingPool.js +69 -68
  88. package/lib/offchain/account/lendingPool/offchainLeveragedPosition.d.ts +25 -0
  89. package/lib/offchain/account/lendingPool/offchainLeveragedPosition.js +116 -0
  90. package/lib/offchain/account/lendingVault.d.ts +11 -0
  91. package/lib/offchain/account/lendingVault.js +38 -0
  92. package/lib/offchain/account/offchainAccount.d.ts +25 -25
  93. package/lib/offchain/account/offchainAccount.js +129 -129
  94. package/lib/offchain/account/offchainAccountLendingVault.d.ts +16 -16
  95. package/lib/offchain/account/offchainAccountLendingVault.js +64 -64
  96. package/lib/offchain/account/offchainAccountPoolToken.d.ts +7 -7
  97. package/lib/offchain/account/offchainAccountPoolToken.js +24 -24
  98. package/lib/offchain/account/offchainMultichainAccount.d.ts +34 -0
  99. package/lib/offchain/account/offchainMultichainAccount.js +66 -0
  100. package/lib/offchain/account/poolToken.d.ts +6 -0
  101. package/lib/offchain/account/poolToken.js +21 -0
  102. package/lib/offchain/account/vault/index.d.ts +3 -0
  103. package/lib/offchain/account/vault/index.js +7 -0
  104. package/lib/offchain/account/vault/offchainAccountVault.d.ts +16 -0
  105. package/lib/offchain/account/vault/offchainAccountVault.js +64 -0
  106. package/lib/offchain/configManager/index.d.ts +5 -5
  107. package/lib/offchain/configManager/index.js +12 -12
  108. package/lib/offchain/configManager/offchainConfigManager.d.ts +25 -25
  109. package/lib/offchain/configManager/offchainConfigManager.js +76 -76
  110. package/lib/offchain/configManager/offchainConfigManagerInitializer.d.ts +6 -6
  111. package/lib/offchain/configManager/offchainConfigManagerInitializer.js +53 -53
  112. package/lib/offchain/configManager/offchainPairConfig.d.ts +40 -40
  113. package/lib/offchain/configManager/offchainPairConfig.js +86 -86
  114. package/lib/offchain/configManager/offchainProposal.d.ts +17 -17
  115. package/lib/offchain/configManager/offchainProposal.js +53 -53
  116. package/lib/offchain/index.d.ts +15 -14
  117. package/lib/offchain/index.js +55 -53
  118. package/lib/offchain/initializer.d.ts +32 -0
  119. package/lib/offchain/initializer.js +627 -0
  120. package/lib/offchain/lendingPool/borrowable.d.ts +55 -0
  121. package/lib/offchain/lendingPool/borrowable.js +351 -0
  122. package/lib/offchain/lendingPool/collateral.d.ts +17 -0
  123. package/lib/offchain/lendingPool/collateral.js +72 -0
  124. package/lib/offchain/lendingPool/index.d.ts +5 -5
  125. package/lib/offchain/lendingPool/index.js +12 -12
  126. package/lib/offchain/lendingPool/offchainBorrowable.d.ts +59 -59
  127. package/lib/offchain/lendingPool/offchainBorrowable.js +366 -366
  128. package/lib/offchain/lendingPool/offchainCollateral.d.ts +20 -19
  129. package/lib/offchain/lendingPool/offchainCollateral.js +81 -75
  130. package/lib/offchain/lendingPool/offchainLendingPool.d.ts +60 -47
  131. package/lib/offchain/lendingPool/offchainLendingPool.js +277 -230
  132. package/lib/offchain/lendingVault.d.ts +22 -0
  133. package/lib/offchain/lendingVault.js +115 -0
  134. package/lib/offchain/offchain.d.ts +106 -113
  135. package/lib/offchain/offchain.js +248 -251
  136. package/lib/offchain/offchainAPRHelper.d.ts +45 -45
  137. package/lib/offchain/offchainAPRHelper.js +239 -239
  138. package/lib/offchain/offchainEndpointManager.d.ts +25 -25
  139. package/lib/offchain/offchainEndpointManager.js +126 -126
  140. package/lib/offchain/offchainInitializer.d.ts +52 -52
  141. package/lib/offchain/offchainInitializer.js +792 -792
  142. package/lib/offchain/offchainLendingVault.d.ts +25 -25
  143. package/lib/offchain/offchainLendingVault.js +114 -114
  144. package/lib/offchain/offchainMultichain.d.ts +50 -0
  145. package/lib/offchain/offchainMultichain.js +75 -0
  146. package/lib/offchain/offchainPoolToken.d.ts +21 -21
  147. package/lib/offchain/offchainPoolToken.js +128 -128
  148. package/lib/offchain/offchainPriceHelper.d.ts +22 -22
  149. package/lib/offchain/offchainPriceHelper.js +364 -364
  150. package/lib/offchain/offchainSolidexHelper.d.ts +16 -16
  151. package/lib/offchain/offchainSolidexHelper.js +58 -58
  152. package/lib/offchain/offchainTypes.d.ts +212 -212
  153. package/lib/offchain/offchainTypes.js +3 -3
  154. package/lib/offchain/poolToken.d.ts +20 -0
  155. package/lib/offchain/poolToken.js +120 -0
  156. package/lib/offchain/priceHelper.d.ts +21 -0
  157. package/lib/offchain/priceHelper.js +195 -0
  158. package/lib/offchain/queries/apis/ponder/index.d.ts +14 -14
  159. package/lib/offchain/queries/apis/ponder/index.js +281 -281
  160. package/lib/offchain/queries/apis/thegraph/index.d.ts +19 -19
  161. package/lib/offchain/queries/apis/thegraph/index.js +355 -355
  162. package/lib/offchain/queries/index.d.ts +20 -20
  163. package/lib/offchain/queries/index.js +51 -51
  164. package/lib/offchain/queries/interfaces/query-builder.d.ts +19 -19
  165. package/lib/offchain/queries/interfaces/query-builder.js +2 -2
  166. package/lib/offchain/queries/interfaces/transformers.js +9 -9
  167. package/lib/offchain/query.d.ts +15 -0
  168. package/lib/offchain/query.js +323 -0
  169. package/lib/offchain/solidexHelper.d.ts +16 -0
  170. package/lib/offchain/solidexHelper.js +58 -0
  171. package/lib/offchain/types.d.ts +150 -0
  172. package/lib/offchain/types.js +3 -0
  173. package/lib/offchain/vault/index.d.ts +6 -0
  174. package/lib/offchain/vault/index.js +14 -0
  175. package/lib/offchain/vault/offchainHedgedVault.d.ts +9 -0
  176. package/lib/offchain/vault/offchainHedgedVault.js +57 -0
  177. package/lib/offchain/vault/offchainLendingVault.d.ts +16 -0
  178. package/lib/offchain/vault/offchainLendingVault.js +73 -0
  179. package/lib/offchain/vault/offchainLeveragedVault.d.ts +9 -0
  180. package/lib/offchain/vault/offchainLeveragedVault.js +57 -0
  181. package/lib/offchain/vault/offchainVault.d.ts +34 -0
  182. package/lib/offchain/vault/offchainVault.js +130 -0
  183. package/lib/onchain/account/index.d.ts +6 -6
  184. package/lib/onchain/account/index.js +38 -38
  185. package/lib/onchain/account/interactions/index.d.ts +28 -0
  186. package/lib/onchain/account/interactions/index.js +158 -0
  187. package/lib/onchain/account/interactions/lendingPool/borrowable.d.ts +16 -0
  188. package/lib/onchain/account/interactions/lendingPool/borrowable.js +49 -0
  189. package/lib/onchain/account/interactions/lendingPool/collateral.d.ts +15 -0
  190. package/lib/onchain/account/interactions/lendingPool/collateral.js +33 -0
  191. package/lib/onchain/account/interactions/lendingPool/index.d.ts +41 -0
  192. package/lib/onchain/account/interactions/lendingPool/index.js +120 -0
  193. package/lib/onchain/account/interactions/lendingVault.d.ts +10 -0
  194. package/lib/onchain/account/interactions/lendingVault.js +12 -0
  195. package/lib/onchain/account/interactions/poolToken.d.ts +33 -0
  196. package/lib/onchain/account/interactions/poolToken.js +180 -0
  197. package/lib/onchain/account/lendingPool/borrowable.d.ts +29 -0
  198. package/lib/onchain/account/lendingPool/borrowable.js +135 -0
  199. package/lib/onchain/account/lendingPool/collateral.d.ts +15 -0
  200. package/lib/onchain/account/lendingPool/collateral.js +66 -0
  201. package/lib/onchain/account/lendingPool/index.d.ts +12 -5
  202. package/lib/onchain/account/lendingPool/index.js +49 -12
  203. package/lib/onchain/account/lendingPool/nftlp/index.d.ts +4 -0
  204. package/lib/onchain/account/lendingPool/nftlp/index.js +11 -0
  205. package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlp.d.ts +7 -0
  206. package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlp.js +12 -0
  207. package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlpUniswapV3.d.ts +4 -0
  208. package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlpUniswapV3.js +13 -0
  209. package/lib/onchain/account/lendingPool/onchainAccountBorrowable.d.ts +39 -34
  210. package/lib/onchain/account/lendingPool/onchainAccountBorrowable.js +131 -176
  211. package/lib/onchain/account/lendingPool/onchainAccountBorrowableV2.d.ts +10 -0
  212. package/lib/onchain/account/lendingPool/onchainAccountBorrowableV2.js +55 -0
  213. package/lib/onchain/account/lendingPool/onchainAccountBorrowableV3.d.ts +10 -0
  214. package/lib/onchain/account/lendingPool/onchainAccountBorrowableV3.js +28 -0
  215. package/lib/onchain/account/lendingPool/onchainAccountCollateral.d.ts +10 -23
  216. package/lib/onchain/account/lendingPool/onchainAccountCollateral.js +26 -109
  217. package/lib/onchain/account/lendingPool/onchainAccountCollateralV2.d.ts +25 -0
  218. package/lib/onchain/account/lendingPool/onchainAccountCollateralV2.js +99 -0
  219. package/lib/onchain/account/lendingPool/onchainAccountCollateralV3.d.ts +18 -0
  220. package/lib/onchain/account/lendingPool/onchainAccountCollateralV3.js +44 -0
  221. package/lib/onchain/account/lendingPool/onchainAccountLendingPool.d.ts +42 -57
  222. package/lib/onchain/account/lendingPool/onchainAccountLendingPool.js +142 -352
  223. package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV2.d.ts +44 -0
  224. package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV2.js +285 -0
  225. package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV3.d.ts +27 -0
  226. package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV3.js +32 -0
  227. package/lib/onchain/account/lendingVault.d.ts +10 -0
  228. package/lib/onchain/account/lendingVault.js +35 -0
  229. package/lib/onchain/account/onchainAccount.d.ts +32 -32
  230. package/lib/onchain/account/onchainAccount.js +166 -167
  231. package/lib/onchain/account/onchainAccountLendingVault.d.ts +19 -19
  232. package/lib/onchain/account/onchainAccountLendingVault.js +48 -48
  233. package/lib/onchain/account/onchainAccountPoolToken.d.ts +30 -30
  234. package/lib/onchain/account/onchainAccountPoolToken.js +86 -86
  235. package/lib/onchain/account/poolToken.d.ts +24 -0
  236. package/lib/onchain/account/poolToken.js +84 -0
  237. package/lib/onchain/configManager/index.d.ts +5 -5
  238. package/lib/onchain/configManager/index.js +12 -12
  239. package/lib/onchain/configManager/onchainConfigManager.d.ts +12 -12
  240. package/lib/onchain/configManager/onchainConfigManager.js +38 -38
  241. package/lib/onchain/configManager/onchainPairConfig.d.ts +38 -38
  242. package/lib/onchain/configManager/onchainPairConfig.js +85 -85
  243. package/lib/onchain/configManager/onchainProposal.d.ts +17 -17
  244. package/lib/onchain/configManager/onchainProposal.js +55 -55
  245. package/lib/onchain/contractsHelper.d.ts +29 -0
  246. package/lib/onchain/contractsHelper.js +52 -0
  247. package/lib/onchain/impermaxFactory/index.d.ts +7 -5
  248. package/lib/onchain/impermaxFactory/index.js +39 -35
  249. package/lib/onchain/impermaxFactory/lendingPool/borrowable.d.ts +36 -0
  250. package/lib/onchain/impermaxFactory/lendingPool/borrowable.js +153 -0
  251. package/lib/onchain/impermaxFactory/lendingPool/collateral.d.ts +17 -0
  252. package/lib/onchain/impermaxFactory/lendingPool/collateral.js +59 -0
  253. package/lib/onchain/impermaxFactory/lendingPool/index.d.ts +12 -5
  254. package/lib/onchain/impermaxFactory/lendingPool/index.js +50 -12
  255. package/lib/onchain/impermaxFactory/lendingPool/nftlp/index.d.ts +4 -0
  256. package/lib/onchain/impermaxFactory/lendingPool/nftlp/index.js +11 -0
  257. package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlp.d.ts +22 -0
  258. package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlp.js +19 -0
  259. package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlpUniswapV3.d.ts +24 -0
  260. package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlpUniswapV3.js +90 -0
  261. package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowable.d.ts +38 -34
  262. package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowable.js +137 -156
  263. package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV2.d.ts +9 -0
  264. package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV2.js +36 -0
  265. package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV3.d.ts +7 -0
  266. package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV3.js +23 -0
  267. package/lib/onchain/impermaxFactory/lendingPool/onchainCollateral.d.ts +8 -19
  268. package/lib/onchain/impermaxFactory/lendingPool/onchainCollateral.js +24 -61
  269. package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV2.d.ts +20 -0
  270. package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV2.js +58 -0
  271. package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV3.d.ts +13 -0
  272. package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV3.js +36 -0
  273. package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPool.d.ts +43 -58
  274. package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPool.js +81 -367
  275. package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV2.d.ts +76 -0
  276. package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV2.js +338 -0
  277. package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV3.d.ts +42 -0
  278. package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV3.js +39 -0
  279. package/lib/onchain/impermaxFactory/onchainImpermaxFactory.d.ts +26 -16
  280. package/lib/onchain/impermaxFactory/onchainImpermaxFactory.js +42 -52
  281. package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV2.d.ts +16 -0
  282. package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV2.js +81 -0
  283. package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV3.d.ts +16 -0
  284. package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV3.js +88 -0
  285. package/lib/onchain/index.d.ts +10 -10
  286. package/lib/onchain/index.js +49 -49
  287. package/lib/onchain/interactions/index.d.ts +8 -8
  288. package/lib/onchain/interactions/index.js +41 -41
  289. package/lib/onchain/interactions/lendingPool/borrowable.d.ts +14 -0
  290. package/lib/onchain/interactions/lendingPool/borrowable.js +47 -0
  291. package/lib/onchain/interactions/lendingPool/collateral.d.ts +13 -0
  292. package/lib/onchain/interactions/lendingPool/collateral.js +31 -0
  293. package/lib/onchain/interactions/lendingPool/index.d.ts +12 -5
  294. package/lib/onchain/interactions/lendingPool/index.js +49 -12
  295. package/lib/onchain/interactions/lendingPool/nftlp/index.d.ts +4 -0
  296. package/lib/onchain/interactions/lendingPool/nftlp/index.js +11 -0
  297. package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlp.d.ts +7 -0
  298. package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlp.js +12 -0
  299. package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlpUniswapV3.d.ts +4 -0
  300. package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlpUniswapV3.js +13 -0
  301. package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowable.d.ts +17 -21
  302. package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowable.js +24 -56
  303. package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV2.d.ts +15 -0
  304. package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV2.js +63 -0
  305. package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV3.d.ts +9 -0
  306. package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV3.js +14 -0
  307. package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateral.d.ts +7 -19
  308. package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateral.js +11 -43
  309. package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV2.d.ts +20 -0
  310. package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV2.js +48 -0
  311. package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV3.d.ts +13 -0
  312. package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV3.js +20 -0
  313. package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPool.d.ts +31 -46
  314. package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPool.js +53 -135
  315. package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV2.d.ts +42 -0
  316. package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV2.js +114 -0
  317. package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV3.d.ts +27 -0
  318. package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV3.js +32 -0
  319. package/lib/onchain/interactions/lendingVault.d.ts +8 -0
  320. package/lib/onchain/interactions/lendingVault.js +15 -0
  321. package/lib/onchain/interactions/onchainInteractions.d.ts +31 -31
  322. package/lib/onchain/interactions/onchainInteractions.js +136 -137
  323. package/lib/onchain/interactions/onchainInteractionsConfigManager.d.ts +17 -17
  324. package/lib/onchain/interactions/onchainInteractionsConfigManager.js +44 -44
  325. package/lib/onchain/interactions/onchainInteractionsLendingVault.d.ts +14 -14
  326. package/lib/onchain/interactions/onchainInteractionsLendingVault.js +21 -21
  327. package/lib/onchain/interactions/onchainInteractionsPoolToken.d.ts +35 -35
  328. package/lib/onchain/interactions/onchainInteractionsPoolToken.js +134 -186
  329. package/lib/onchain/interactions/poolToken.d.ts +31 -0
  330. package/lib/onchain/interactions/poolToken.js +181 -0
  331. package/lib/onchain/lendingVault.d.ts +17 -0
  332. package/lib/onchain/lendingVault.js +56 -0
  333. package/lib/onchain/onchain.d.ts +38 -35
  334. package/lib/onchain/onchain.js +78 -70
  335. package/lib/onchain/onchainContractsHelper.d.ts +42 -31
  336. package/lib/onchain/onchainContractsHelper.js +90 -56
  337. package/lib/onchain/onchainLendingVault.d.ts +22 -22
  338. package/lib/onchain/onchainLendingVault.js +69 -69
  339. package/lib/onchain/onchainPermitHelper.d.ts +21 -0
  340. package/lib/onchain/onchainPermitHelper.js +198 -0
  341. package/lib/onchain/onchainPoolToken.d.ts +35 -35
  342. package/lib/onchain/onchainPoolToken.js +129 -129
  343. package/lib/onchain/onchainTypes.d.ts +70 -64
  344. package/lib/onchain/onchainTypes.js +14 -14
  345. package/lib/onchain/poolToken.d.ts +32 -0
  346. package/lib/onchain/poolToken.js +121 -0
  347. package/lib/onchain/types.d.ts +45 -0
  348. package/lib/onchain/types.js +14 -0
  349. package/lib/utils/ether-utils.d.ts +5 -5
  350. package/lib/utils/ether-utils.js +26 -26
  351. package/lib/utils/index.d.ts +3 -3
  352. package/lib/utils/index.js +16 -16
  353. package/lib/utils/lliquidity-math.d.ts +30 -30
  354. package/lib/utils/lliquidity-math.js +139 -139
  355. package/lib/utils/price-from-reserves.d.ts +2 -0
  356. package/lib/utils/price-from-reserves.js +19 -0
  357. package/package.json +36 -36
@@ -1,56 +1,24 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const general_1 = require("../../../config/general");
16
- const onchainInteractionsPoolToken_1 = __importDefault(require("../onchainInteractionsPoolToken"));
17
- class OnchainInteractionsBorrowable extends onchainInteractionsPoolToken_1.default {
18
- constructor(lendingPool, poolTokenType) {
19
- super();
20
- this.getLendingPool = () => this.lendingPool;
21
- this.getPoolToken = () => this.poolToken;
22
- this.getInteractions = () => this.lendingPool.getInteractions();
23
- this.getAccountBorrowable = this.getAccountPoolToken;
24
- this.getRouterContract = () => this.lendingPool.getRouterContract();
25
- // Shortcuts
26
- this.getPoolTokenType = () => this.poolToken.getPoolTokenType();
27
- this.lendingPool = lendingPool;
28
- this.poolToken = lendingPool.getLendingPool().getPoolToken(poolTokenType);
29
- }
30
- getAccountPoolToken() {
31
- return this.lendingPool.getAccountLendingPool().getPoolToken(this.getPoolTokenType());
32
- }
33
- borrow(amount, permitData, onTransactionHash) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- const { router, ptAddress, account, data, deadline } = yield this.getSendData(permitData);
36
- if (yield this.isWETH()) {
37
- return this.send(router.methods.borrowETH(ptAddress, amount, account, deadline, data), onTransactionHash);
38
- }
39
- else {
40
- return this.send(router.methods.borrow(ptAddress, amount, account, deadline, data), onTransactionHash);
41
- }
42
- });
43
- }
44
- repay(amount, onTransactionHash) {
45
- return __awaiter(this, void 0, void 0, function* () {
46
- const { router, ptAddress, account } = yield this.getSendData(null);
47
- if (yield this.isWETH()) {
48
- return this.send(router.methods.repayETH(ptAddress, account, general_1.DEADLINE), onTransactionHash, amount);
49
- }
50
- else {
51
- return this.send(router.methods.repay(ptAddress, amount, account, general_1.DEADLINE), onTransactionHash);
52
- }
53
- });
54
- }
55
- }
56
- exports.default = OnchainInteractionsBorrowable;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const onchainInteractionsPoolToken_1 = __importDefault(require("../onchainInteractionsPoolToken"));
7
+ class OnchainInteractionsBorrowable extends onchainInteractionsPoolToken_1.default {
8
+ constructor(lendingPool, borrowable) {
9
+ super();
10
+ this.getLendingPool = () => this.lendingPool;
11
+ this.getPoolToken = () => this.poolToken;
12
+ this.getInteractions = () => this.lendingPool.getInteractions();
13
+ this.getAccountBorrowable = this.getAccountPoolToken;
14
+ this.getPoolTokenRouter = () => this.lendingPool.getPoolTokenRouter();
15
+ // Shortcuts
16
+ this.getBorrowableType = () => this.poolToken.getBorrowableType();
17
+ this.lendingPool = lendingPool;
18
+ this.poolToken = lendingPool.getLendingPool().getBorrowable(borrowable);
19
+ }
20
+ getAccountPoolToken() {
21
+ return this.lendingPool.getAccountLendingPool().getBorrowable(this.getBorrowableType());
22
+ }
23
+ }
24
+ exports.default = OnchainInteractionsBorrowable;
@@ -0,0 +1,15 @@
1
+ import { Permits } from '../../onchainTypes';
2
+ import { BigNumber } from 'ethers';
3
+ import OnchainInteractionsBorrowable from "./onchainInteractionsBorrowable";
4
+ import { OnchainBorrowableV2 } from "../../impermaxFactory/lendingPool";
5
+ import OnchainInteractionsLendingPoolV2 from "./onchainInteractionsLendingPoolV2";
6
+ export default class OnchainInteractionsBorrowableV2 extends OnchainInteractionsBorrowable {
7
+ protected readonly lendingPool: OnchainInteractionsLendingPoolV2;
8
+ protected readonly poolToken: OnchainBorrowableV2;
9
+ getLendingPool: () => OnchainInteractionsLendingPoolV2;
10
+ getPoolToken: () => OnchainBorrowableV2;
11
+ getBorrowAllowance(): Promise<BigNumber>;
12
+ borrowApprove(amount: BigNumber, onTransactionHash: Function): Promise<any>;
13
+ borrow(amount: BigNumber, permits: Permits, onTransactionHash: Function): Promise<any>;
14
+ repay(amount: BigNumber, onTransactionHash: Function): Promise<any>;
15
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const general_1 = require("../../../config/general");
16
+ const ethers_1 = require("ethers");
17
+ const onchainInteractionsBorrowable_1 = __importDefault(require("./onchainInteractionsBorrowable"));
18
+ class OnchainInteractionsBorrowableV2 extends onchainInteractionsBorrowable_1.default {
19
+ constructor() {
20
+ super(...arguments);
21
+ this.getLendingPool = () => this.lendingPool;
22
+ this.getPoolToken = () => this.poolToken;
23
+ }
24
+ getBorrowAllowance() {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ const poolToken = yield this.poolToken.getPoolToken();
27
+ const { owner, spender } = this.getOwnerSpender();
28
+ const allowance = yield poolToken.methods.borrowAllowance(owner, spender).call();
29
+ return ethers_1.BigNumber.from(allowance);
30
+ });
31
+ }
32
+ borrowApprove(amount, onTransactionHash) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ const { spender } = this.getOwnerSpender();
35
+ const poolToken = yield this.poolToken.getPoolToken();
36
+ return this.send(poolToken.methods.borrowApprove(spender, amount), onTransactionHash);
37
+ });
38
+ }
39
+ borrow(amount, permits, onTransactionHash) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ const { router, ptAddress, account } = yield this.getSendData(permits);
42
+ // TODO temporary fix
43
+ if (yield this.isWETH()) {
44
+ return this.send(router.methods.borrowETH(ptAddress, amount, account, '100000000000000000', '0x'), onTransactionHash);
45
+ }
46
+ else {
47
+ return this.send(router.methods.borrow(ptAddress, amount, account, '100000000000000000', '0x'), onTransactionHash);
48
+ }
49
+ });
50
+ }
51
+ repay(amount, onTransactionHash) {
52
+ return __awaiter(this, void 0, void 0, function* () {
53
+ const { router, ptAddress, account } = yield this.getSendData([]);
54
+ if (yield this.isWETH()) {
55
+ return this.send(router.methods.repayETH(ptAddress, account, general_1.DEADLINE), onTransactionHash, amount);
56
+ }
57
+ else {
58
+ return this.send(router.methods.repay(ptAddress, amount, account, general_1.DEADLINE), onTransactionHash);
59
+ }
60
+ });
61
+ }
62
+ }
63
+ exports.default = OnchainInteractionsBorrowableV2;
@@ -0,0 +1,9 @@
1
+ import OnchainInteractionsBorrowable from "./onchainInteractionsBorrowable";
2
+ import { OnchainBorrowableV3 } from "../../impermaxFactory/lendingPool";
3
+ import OnchainInteractionsLendingPoolV3 from "./onchainInteractionsLendingPoolV3";
4
+ export default class OnchainInteractionsBorrowableV3 extends OnchainInteractionsBorrowable {
5
+ protected readonly lendingPool: OnchainInteractionsLendingPoolV3;
6
+ protected readonly poolToken: OnchainBorrowableV3;
7
+ getLendingPool: () => OnchainInteractionsLendingPoolV3;
8
+ getPoolToken: () => OnchainBorrowableV3;
9
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const onchainInteractionsBorrowable_1 = __importDefault(require("./onchainInteractionsBorrowable"));
7
+ class OnchainInteractionsBorrowableV3 extends onchainInteractionsBorrowable_1.default {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.getLendingPool = () => this.lendingPool;
11
+ this.getPoolToken = () => this.poolToken;
12
+ }
13
+ }
14
+ exports.default = OnchainInteractionsBorrowableV3;
@@ -1,19 +1,7 @@
1
- import OnchainInteractionsLendingPool from './index';
2
- import { ApprovalType, PermitData } from '../../onchainTypes';
3
- import { BigNumber } from 'ethers';
4
- import OnchainInteractionsPoolToken from '../onchainInteractionsPoolToken';
5
- import OnchainCollateral from '../../impermaxFactory/lendingPool/onchainCollateral';
6
- import OnchainAccountCollateral from '../../account/lendingPool/onchainAccountCollateral';
7
- export default class OnchainInteractionsCollateral extends OnchainInteractionsPoolToken {
8
- private readonly lendingPool;
9
- protected readonly poolToken: OnchainCollateral;
10
- constructor(interactionsLendingPool: OnchainInteractionsLendingPool);
11
- getLendingPool: () => OnchainInteractionsLendingPool;
12
- getPoolToken: () => OnchainCollateral;
13
- getInteractions: () => import("..").default;
14
- getAccountPoolToken(): OnchainAccountCollateral;
15
- getAccountCollateral: () => OnchainAccountCollateral;
16
- getRouterContract: () => any;
17
- getPermitData(approvalType: ApprovalType, amount: BigNumber, deadlineArg: BigNumber | null, callBack: (permitData: PermitData | null) => void): Promise<void>;
18
- protected mint(amount: BigNumber, permitData: PermitData, onTransactionHash: Function): Promise<any>;
19
- }
1
+ import OnchainInteractionsLendingPool from './index';
2
+ import OnchainAccountCollateral from '../../account/lendingPool/onchainAccountCollateral';
3
+ export default abstract class OnchainInteractionsCollateral {
4
+ abstract getLendingPool(): OnchainInteractionsLendingPool;
5
+ getInteractions: () => import("..").default;
6
+ getAccountCollateral(): OnchainAccountCollateral;
7
+ }
@@ -1,43 +1,11 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const onchainInteractionsPoolToken_1 = __importDefault(require("../onchainInteractionsPoolToken"));
16
- class OnchainInteractionsCollateral extends onchainInteractionsPoolToken_1.default {
17
- constructor(interactionsLendingPool) {
18
- super();
19
- this.getLendingPool = () => this.lendingPool;
20
- this.getPoolToken = () => this.poolToken;
21
- this.getInteractions = () => this.lendingPool.getInteractions();
22
- this.getAccountCollateral = this.getAccountPoolToken;
23
- this.getRouterContract = () => this.lendingPool.getRouterContract();
24
- this.lendingPool = interactionsLendingPool;
25
- this.poolToken = interactionsLendingPool.getLendingPool().getCollateral();
26
- }
27
- getAccountPoolToken() {
28
- return this.lendingPool.getAccountLendingPool().getCollateral();
29
- }
30
- getPermitData(approvalType, amount, deadlineArg, callBack) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- this._getPermitData(approvalType, amount, deadlineArg, callBack);
33
- });
34
- }
35
- mint(amount, permitData, onTransactionHash) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- const { router, ptAddress, account, data, deadline } = yield this.getSendData(permitData);
38
- return this.send(router.methods.mintCollateral(ptAddress, amount, account, deadline, data), onTransactionHash);
39
- });
40
- }
41
- ;
42
- }
43
- exports.default = OnchainInteractionsCollateral;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class OnchainInteractionsCollateral {
4
+ constructor() {
5
+ this.getInteractions = () => this.getLendingPool().getInteractions();
6
+ }
7
+ getAccountCollateral() {
8
+ return this.getLendingPool().getAccountLendingPool().getCollateral();
9
+ }
10
+ }
11
+ exports.default = OnchainInteractionsCollateral;
@@ -0,0 +1,20 @@
1
+ import { Permits } from '../../onchainTypes';
2
+ import { BigNumber } from 'ethers';
3
+ import OnchainInteractionsPoolToken from '../onchainInteractionsPoolToken';
4
+ import OnchainInteractionsCollateral from "./onchainInteractionsCollateral";
5
+ import OnchainInteractionsLendingPoolV2 from "./onchainInteractionsLendingPoolV2";
6
+ import { OnchainCollateralV2 } from "../../impermaxFactory/lendingPool";
7
+ import { OnchainAccountCollateralV2 } from "../../account/lendingPool";
8
+ export default class OnchainInteractionsCollateralV2 extends OnchainInteractionsPoolToken implements OnchainInteractionsCollateral {
9
+ protected readonly lendingPool: OnchainInteractionsLendingPoolV2;
10
+ protected readonly poolToken: OnchainCollateralV2;
11
+ constructor(interactionsLendingPool: OnchainInteractionsLendingPoolV2);
12
+ getLendingPool: () => OnchainInteractionsLendingPoolV2;
13
+ getPoolToken: () => OnchainCollateralV2;
14
+ getCollateral: () => OnchainCollateralV2;
15
+ getInteractions: () => import("..").default;
16
+ getAccountPoolToken(): OnchainAccountCollateralV2;
17
+ getAccountCollateral: () => OnchainAccountCollateralV2;
18
+ getPoolTokenRouter: () => any;
19
+ protected mint(amount: BigNumber, permit: Permits, onTransactionHash: Function): Promise<any>;
20
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const onchainInteractionsPoolToken_1 = __importDefault(require("../onchainInteractionsPoolToken"));
16
+ class OnchainInteractionsCollateralV2 extends onchainInteractionsPoolToken_1.default {
17
+ constructor(interactionsLendingPool) {
18
+ super();
19
+ this.getLendingPool = () => this.lendingPool;
20
+ this.getPoolToken = () => this.poolToken;
21
+ this.getCollateral = () => this.poolToken;
22
+ this.getInteractions = () => this.lendingPool.getInteractions();
23
+ this.getAccountCollateral = this.getAccountPoolToken;
24
+ this.getPoolTokenRouter = () => this.lendingPool.getPoolTokenRouter();
25
+ this.lendingPool = interactionsLendingPool;
26
+ this.poolToken = interactionsLendingPool.getLendingPool().getCollateral();
27
+ }
28
+ getAccountPoolToken() {
29
+ return this.lendingPool.getAccountLendingPool().getCollateral();
30
+ }
31
+ /*public async getPermitData(
32
+ approvalType: ApprovalType,
33
+ amount: BigNumber,
34
+ deadlineArg: BigNumber | null,
35
+ callBack: (permitData: PermitData | null) => void
36
+ ) {
37
+ this._getPermitData(approvalType, amount, deadlineArg, callBack);
38
+ }*/
39
+ mint(amount, permit, onTransactionHash) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ // TODO temporary fix
42
+ const { router, ptAddress, account } = yield this.getSendData(permit);
43
+ return this.send(router.methods.mintCollateral(ptAddress, amount, account, '100000000000000000', '0x'), onTransactionHash);
44
+ });
45
+ }
46
+ ;
47
+ }
48
+ exports.default = OnchainInteractionsCollateralV2;
@@ -0,0 +1,13 @@
1
+ import OnchainInteractionsCollateral from "./onchainInteractionsCollateral";
2
+ import { OnchainCollateralV3 } from "../../impermaxFactory/lendingPool";
3
+ import { OnchainAccountCollateralV3 } from "../../account/lendingPool";
4
+ import OnchainInteractionsLendingPoolV3 from "./onchainInteractionsLendingPoolV3";
5
+ export default class OnchainInteractionsCollateralV3 extends OnchainInteractionsCollateral {
6
+ protected readonly lendingPool: OnchainInteractionsLendingPoolV3;
7
+ protected readonly collateral: OnchainCollateralV3;
8
+ constructor(interactionsLendingPool: OnchainInteractionsLendingPoolV3);
9
+ getLendingPool: () => OnchainInteractionsLendingPoolV3;
10
+ getCollateral: () => OnchainCollateralV3;
11
+ getInteractions: () => import("..").default;
12
+ getAccountCollateral(): OnchainAccountCollateralV3;
13
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const onchainInteractionsCollateral_1 = __importDefault(require("./onchainInteractionsCollateral"));
7
+ class OnchainInteractionsCollateralV3 extends onchainInteractionsCollateral_1.default {
8
+ constructor(interactionsLendingPool) {
9
+ super();
10
+ this.getLendingPool = () => this.lendingPool;
11
+ this.getCollateral = () => this.collateral;
12
+ this.getInteractions = () => this.lendingPool.getInteractions();
13
+ this.lendingPool = interactionsLendingPool;
14
+ this.collateral = interactionsLendingPool.getLendingPool().getCollateral();
15
+ }
16
+ getAccountCollateral() {
17
+ return this.lendingPool.getAccountLendingPool().getCollateral();
18
+ }
19
+ }
20
+ exports.default = OnchainInteractionsCollateralV3;
@@ -1,46 +1,31 @@
1
- import OnchainInteractions from '../index';
2
- import { PoolTokenType } from '../../../config/types';
3
- import OnchainInteractionsCollateral from './onchainInteractionsCollateral';
4
- import OnchainInteractionsBorrowable from './onchainInteractionsBorrowable';
5
- import { PermitData } from '../../onchainTypes';
6
- import { BigNumber } from 'ethers';
7
- import OnchainInteractionsPoolToken from '../onchainInteractionsPoolToken';
8
- import OnchainLendingPool from '../../impermaxFactory/lendingPool';
9
- import OnchainAccountLendingPool from '../../account/lendingPool';
10
- export default class OnchainInteractionsLendingPool {
11
- private readonly interactions;
12
- private readonly lendingPool;
13
- private readonly poolTokens;
14
- constructor(interactions: OnchainInteractions, lendingPool: OnchainLendingPool);
15
- getInteractions: () => OnchainInteractions;
16
- getLendingPool: () => OnchainLendingPool;
17
- getPoolToken(poolTokenType: PoolTokenType): OnchainInteractionsPoolToken;
18
- getAccountLendingPool(): OnchainAccountLendingPool;
19
- getBorrowableA: () => OnchainInteractionsBorrowable;
20
- getBorrowableB: () => OnchainInteractionsBorrowable;
21
- getCollateral: () => OnchainInteractionsCollateral;
22
- private getFactory;
23
- private getPairAddress;
24
- getRouterContract: () => any;
25
- getAccountAddress: () => string;
26
- send: (method: any, onTransactionHash: Function) => Promise<any>;
27
- getLeverageAmounts(leverage: number, slippage: number): Promise<{
28
- bAmountA: number;
29
- bAmountB: number;
30
- cAmount: number;
31
- bAmountAMin: number;
32
- bAmountBMin: number;
33
- cAmountMin: number;
34
- }>;
35
- leverage(amountA: BigNumber, amountB: BigNumber, amountAMin: BigNumber, amountBMin: BigNumber, permitDataA: PermitData, permitDataB: PermitData, onTransactionHash: Function): Promise<any>;
36
- getDeleverageAmounts(changeCollateralValue: number, slippage: number): Promise<{
37
- bAmountA: number;
38
- bAmountB: number;
39
- cAmount: number;
40
- bAmountAMin: number;
41
- bAmountBMin: number;
42
- }>;
43
- deleverage(tokens: BigNumber, amountAMin: BigNumber, amountBMin: BigNumber, permitData: PermitData, onTransactionHash: Function): Promise<any>;
44
- trackBorrows(onTransactionHash: Function): Promise<any>;
45
- reinvest(onTransactionHash: Function): Promise<any>;
46
- }
1
+ import OnchainInteractions from '../index';
2
+ import { Borrowable } from '../../../config/types';
3
+ import OnchainInteractionsCollateral from './onchainInteractionsCollateral';
4
+ import OnchainInteractionsBorrowable from './onchainInteractionsBorrowable';
5
+ import OnchainLendingPool from '../../impermaxFactory/lendingPool';
6
+ import OnchainAccountLendingPool from '../../account/lendingPool';
7
+ export default abstract class OnchainInteractionsLendingPool {
8
+ protected readonly interactions: OnchainInteractions;
9
+ protected readonly lendingPool: OnchainLendingPool;
10
+ protected readonly collateral: OnchainInteractionsCollateral;
11
+ protected readonly borrowables: {
12
+ [Borrowable.A]: OnchainInteractionsBorrowable;
13
+ [Borrowable.B]: OnchainInteractionsBorrowable;
14
+ };
15
+ protected abstract getNewCollateralObject(): OnchainInteractionsCollateral;
16
+ protected abstract getNewBorrowableObject(borrowable: Borrowable): OnchainInteractionsBorrowable;
17
+ constructor(interactions: OnchainInteractions, lendingPool: OnchainLendingPool);
18
+ getInteractions: () => OnchainInteractions;
19
+ getLendingPool: () => OnchainLendingPool;
20
+ getBorrowable: (borrowable: Borrowable) => OnchainInteractionsBorrowable;
21
+ getBorrowableA: () => OnchainInteractionsBorrowable;
22
+ getBorrowableB: () => OnchainInteractionsBorrowable;
23
+ getCollateral: () => OnchainInteractionsCollateral;
24
+ protected getFactory: () => import("../../../config/types").Factory;
25
+ protected getId: () => string;
26
+ getPoolTokenRouter: () => any;
27
+ getAccountAddress: () => string;
28
+ getAccountLendingPool(): OnchainAccountLendingPool;
29
+ send: (method: any, onTransactionHash: Function) => Promise<any>;
30
+ trackBorrows(onTransactionHash: Function): Promise<any>;
31
+ }