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,16 +1,16 @@
1
- import OffchainAccount from './index';
2
- import OffchainAccountPoolToken from './offchainAccountPoolToken';
3
- import OffchainLendingVault from '../offchainLendingVault';
4
- import { LendingVaultPosition } from '../offchainTypes';
5
- export default class OffchainAccountLendingVault extends OffchainAccountPoolToken {
6
- private readonly account;
7
- protected readonly poolToken: OffchainLendingVault;
8
- constructor(account: OffchainAccount, lendingVault: OffchainLendingVault);
9
- getAccount: () => OffchainAccount;
10
- getPoolToken: () => OffchainLendingVault;
11
- private getVaultAddress;
12
- getLendingVaultPosition(): Promise<LendingVaultPosition | undefined>;
13
- getAmount(): Promise<number>;
14
- getEarnings(): Promise<number>;
15
- getEarningsUSD(): Promise<number>;
16
- }
1
+ import OffchainAccount from './index';
2
+ import OffchainAccountPoolToken from './offchainAccountPoolToken';
3
+ import OffchainLendingVault from '../offchainLendingVault';
4
+ import { LendingVaultPosition } from '../offchainTypes';
5
+ export default class OffchainAccountLendingVault extends OffchainAccountPoolToken {
6
+ private readonly account;
7
+ protected readonly poolToken: OffchainLendingVault;
8
+ constructor(account: OffchainAccount, lendingVault: OffchainLendingVault);
9
+ getAccount: () => OffchainAccount;
10
+ getPoolToken: () => OffchainLendingVault;
11
+ private getVaultAddress;
12
+ getLendingVaultPosition(): Promise<LendingVaultPosition | undefined>;
13
+ getAmount(): Promise<number>;
14
+ getEarnings(): Promise<number>;
15
+ getEarningsUSD(): Promise<number>;
16
+ }
@@ -1,64 +1,64 @@
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 offchainAccountPoolToken_1 = __importDefault(require("./offchainAccountPoolToken"));
16
- class OffchainAccountLendingVault extends offchainAccountPoolToken_1.default {
17
- constructor(account, lendingVault) {
18
- super();
19
- this.getAccount = () => this.account;
20
- this.getPoolToken = () => this.poolToken;
21
- this.getVaultAddress = () => this.poolToken.getVaultAddress();
22
- this.account = account;
23
- this.poolToken = lendingVault;
24
- }
25
- getLendingVaultPosition() {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- const lendingVaultsUserData = yield this.account.getLendingVaultsUserData();
28
- if (!lendingVaultsUserData)
29
- return undefined;
30
- return lendingVaultsUserData[this.getVaultAddress()];
31
- });
32
- }
33
- getAmount() {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- const lendingVaultPosition = yield this.getLendingVaultPosition();
36
- if (!lendingVaultPosition)
37
- return 0;
38
- const exchangeRate = yield this.poolToken.getCurrentExchangeRate();
39
- const tokenBalance = parseFloat(lendingVaultPosition.tokenBalance);
40
- return tokenBalance * exchangeRate;
41
- });
42
- }
43
- getEarnings() {
44
- return __awaiter(this, void 0, void 0, function* () {
45
- const lendingVaultPosition = yield this.getLendingVaultPosition();
46
- if (!lendingVaultPosition)
47
- return 0;
48
- const exchangeRate = yield this.poolToken.getCurrentExchangeRate();
49
- const tokenBalance = parseFloat(lendingVaultPosition.tokenBalance);
50
- const cumulativeEarnings = parseFloat(lendingVaultPosition.cumulativeEarnings);
51
- const lastExchangeRate = parseFloat(lendingVaultPosition.lastExchangeRate);
52
- const newEarnings = (exchangeRate - lastExchangeRate) * tokenBalance;
53
- return cumulativeEarnings + newEarnings;
54
- });
55
- }
56
- getEarningsUSD() {
57
- return __awaiter(this, void 0, void 0, function* () {
58
- const tokenPrice = yield this.poolToken.getTokenPriceAccurate();
59
- const earnings = yield this.getEarnings();
60
- return earnings * tokenPrice;
61
- });
62
- }
63
- }
64
- exports.default = OffchainAccountLendingVault;
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 offchainAccountPoolToken_1 = __importDefault(require("./offchainAccountPoolToken"));
16
+ class OffchainAccountLendingVault extends offchainAccountPoolToken_1.default {
17
+ constructor(account, lendingVault) {
18
+ super();
19
+ this.getAccount = () => this.account;
20
+ this.getPoolToken = () => this.poolToken;
21
+ this.getVaultAddress = () => this.poolToken.getVaultAddress();
22
+ this.account = account;
23
+ this.poolToken = lendingVault;
24
+ }
25
+ getLendingVaultPosition() {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ const lendingVaultsUserData = yield this.account.getLendingVaultsUserData();
28
+ if (!lendingVaultsUserData)
29
+ return undefined;
30
+ return lendingVaultsUserData[this.getVaultAddress()];
31
+ });
32
+ }
33
+ getAmount() {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ const lendingVaultPosition = yield this.getLendingVaultPosition();
36
+ if (!lendingVaultPosition)
37
+ return 0;
38
+ const exchangeRate = yield this.poolToken.getCurrentExchangeRate();
39
+ const tokenBalance = parseFloat(lendingVaultPosition.tokenBalance);
40
+ return tokenBalance * exchangeRate;
41
+ });
42
+ }
43
+ getEarnings() {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ const lendingVaultPosition = yield this.getLendingVaultPosition();
46
+ if (!lendingVaultPosition)
47
+ return 0;
48
+ const exchangeRate = yield this.poolToken.getCurrentExchangeRate();
49
+ const tokenBalance = parseFloat(lendingVaultPosition.tokenBalance);
50
+ const cumulativeEarnings = parseFloat(lendingVaultPosition.cumulativeEarnings);
51
+ const lastExchangeRate = parseFloat(lendingVaultPosition.lastExchangeRate);
52
+ const newEarnings = (exchangeRate - lastExchangeRate) * tokenBalance;
53
+ return cumulativeEarnings + newEarnings;
54
+ });
55
+ }
56
+ getEarningsUSD() {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ const tokenPrice = yield this.poolToken.getTokenPriceAccurate();
59
+ const earnings = yield this.getEarnings();
60
+ return earnings * tokenPrice;
61
+ });
62
+ }
63
+ }
64
+ exports.default = OffchainAccountLendingVault;
@@ -1,7 +1,7 @@
1
- import OffchainPoolToken from '../offchainPoolToken';
2
- export default abstract class OffchainAccountPoolToken {
3
- protected readonly poolToken: OffchainPoolToken;
4
- getPoolToken: () => OffchainPoolToken;
5
- abstract getAmount(): Promise<number>;
6
- getValue(): Promise<number>;
7
- }
1
+ import OffchainPoolToken from '../offchainPoolToken';
2
+ export default abstract class OffchainAccountPoolToken {
3
+ protected readonly poolToken: OffchainPoolToken;
4
+ getPoolToken: () => OffchainPoolToken;
5
+ abstract getAmount(): Promise<number>;
6
+ getValue(): Promise<number>;
7
+ }
@@ -1,24 +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
- Object.defineProperty(exports, "__esModule", { value: true });
12
- class OffchainAccountPoolToken {
13
- constructor() {
14
- this.getPoolToken = () => this.poolToken;
15
- }
16
- getValue() {
17
- return __awaiter(this, void 0, void 0, function* () {
18
- const tokenPrice = yield this.poolToken.getTokenPriceAccurate();
19
- const amount = yield this.getAmount();
20
- return amount * tokenPrice;
21
- });
22
- }
23
- }
24
- exports.default = OffchainAccountPoolToken;
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ class OffchainAccountPoolToken {
13
+ constructor() {
14
+ this.getPoolToken = () => this.poolToken;
15
+ }
16
+ getValue() {
17
+ return __awaiter(this, void 0, void 0, function* () {
18
+ const tokenPrice = yield this.poolToken.getTokenPriceAccurate();
19
+ const amount = yield this.getAmount();
20
+ return amount * tokenPrice;
21
+ });
22
+ }
23
+ }
24
+ exports.default = OffchainAccountPoolToken;
@@ -0,0 +1,34 @@
1
+ import { Address, Networks } from '../../config/types';
2
+ import { OffchainAccountBorrowable } from './lendingPool';
3
+ import OffchainAccountVault from './vault';
4
+ import OffchainMultichain from "../offchainMultichain";
5
+ import OffchainAccount from "./offchainAccount";
6
+ import OffchainLeveragedPosition from "./lendingPool/offchainLeveragedPosition";
7
+ export declare enum LeveragedPositionsOrderBy {
8
+ TVL = 0
9
+ }
10
+ export interface LeveragedPositionsParams {
11
+ }
12
+ export declare enum SupplyPositionsOrderBy {
13
+ TVL = 0
14
+ }
15
+ export interface SupplyPositionsParams {
16
+ }
17
+ export declare enum VaultPositionsOrderBy {
18
+ TVL = 0
19
+ }
20
+ export interface VaultPositionsParams {
21
+ }
22
+ export default class OffchainMultichainAccount {
23
+ readonly offchainMultichain: OffchainMultichain;
24
+ readonly accountAddress: Address;
25
+ constructor(offchainMultichain: OffchainMultichain, account: Address);
26
+ getOffchainMultichain: () => OffchainMultichain;
27
+ getAccountAddress: () => string;
28
+ getOffchainAccount(network: Networks): OffchainAccount;
29
+ getLeveragedPositions(params?: LeveragedPositionsParams, orderBy?: LeveragedPositionsOrderBy): Promise<Array<OffchainLeveragedPosition>>;
30
+ getSupplyPositions(params?: SupplyPositionsParams, orderBy?: SupplyPositionsOrderBy): Promise<Array<OffchainAccountBorrowable>>;
31
+ getVaultPositions(params?: VaultPositionsParams, orderBy?: VaultPositionsOrderBy): Promise<Array<OffchainAccountVault>>;
32
+ getTotalBalanceUSD(): Promise<number>;
33
+ getNetAPR(): Promise<number>;
34
+ }
@@ -0,0 +1,66 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.VaultPositionsOrderBy = exports.SupplyPositionsOrderBy = exports.LeveragedPositionsOrderBy = void 0;
13
+ var LeveragedPositionsOrderBy;
14
+ (function (LeveragedPositionsOrderBy) {
15
+ LeveragedPositionsOrderBy[LeveragedPositionsOrderBy["TVL"] = 0] = "TVL";
16
+ })(LeveragedPositionsOrderBy = exports.LeveragedPositionsOrderBy || (exports.LeveragedPositionsOrderBy = {}));
17
+ var SupplyPositionsOrderBy;
18
+ (function (SupplyPositionsOrderBy) {
19
+ SupplyPositionsOrderBy[SupplyPositionsOrderBy["TVL"] = 0] = "TVL";
20
+ })(SupplyPositionsOrderBy = exports.SupplyPositionsOrderBy || (exports.SupplyPositionsOrderBy = {}));
21
+ var VaultPositionsOrderBy;
22
+ (function (VaultPositionsOrderBy) {
23
+ VaultPositionsOrderBy[VaultPositionsOrderBy["TVL"] = 0] = "TVL";
24
+ })(VaultPositionsOrderBy = exports.VaultPositionsOrderBy || (exports.VaultPositionsOrderBy = {}));
25
+ class OffchainMultichainAccount {
26
+ constructor(offchainMultichain, account) {
27
+ this.getOffchainMultichain = () => this.offchainMultichain;
28
+ this.getAccountAddress = () => this.accountAddress;
29
+ this.offchainMultichain = offchainMultichain;
30
+ this.accountAddress = account;
31
+ }
32
+ getOffchainAccount(network) {
33
+ return this.offchainMultichain.getOffchain(network).getAccount(this.accountAddress);
34
+ }
35
+ // Positions
36
+ getLeveragedPositions(params = {}, orderBy = LeveragedPositionsOrderBy.TVL) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ // TODO FILL WITH FAKE DATA
39
+ return [];
40
+ });
41
+ }
42
+ getSupplyPositions(params = {}, orderBy = SupplyPositionsOrderBy.TVL) {
43
+ return __awaiter(this, void 0, void 0, function* () {
44
+ // TODO FILL WITH FAKE DATA
45
+ return [];
46
+ });
47
+ }
48
+ getVaultPositions(params = {}, orderBy = VaultPositionsOrderBy.TVL) {
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ // TODO FILL WITH FAKE DATA
51
+ return [];
52
+ });
53
+ }
54
+ // Account stats
55
+ getTotalBalanceUSD() {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ return 10;
58
+ });
59
+ }
60
+ getNetAPR() {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ return 1;
63
+ });
64
+ }
65
+ }
66
+ exports.default = OffchainMultichainAccount;
@@ -0,0 +1,6 @@
1
+ import * as offchain from "../";
2
+ export default abstract class PoolToken {
3
+ poolToken: offchain.PoolToken;
4
+ abstract getAmount(): Promise<number>;
5
+ getValue(): Promise<number>;
6
+ }
@@ -0,0 +1,21 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ class PoolToken {
13
+ getValue() {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ const tokenPrice = yield this.offchainPoolToken.getTokenPriceAccurate();
16
+ const amount = yield this.getAmount();
17
+ return amount * tokenPrice;
18
+ });
19
+ }
20
+ }
21
+ exports.default = PoolToken;
@@ -0,0 +1,3 @@
1
+ import OffchainAccountVault from './offchainAccountVault';
2
+ export {};
3
+ export default OffchainAccountVault;
@@ -0,0 +1,7 @@
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 offchainAccountVault_1 = __importDefault(require("./offchainAccountVault"));
7
+ exports.default = offchainAccountVault_1.default;
@@ -0,0 +1,16 @@
1
+ import OffchainAccount from '../index';
2
+ import OffchainAccountPoolToken from '../offchainAccountPoolToken';
3
+ import OffchainVault from '../../vault/offchainVault';
4
+ import { VaultPosition } from '../../offchainTypes';
5
+ export default class OffchainAccountVault extends OffchainAccountPoolToken {
6
+ private readonly account;
7
+ protected readonly poolToken: OffchainVault;
8
+ constructor(account: OffchainAccount, vault: OffchainVault);
9
+ getAccount: () => OffchainAccount;
10
+ getPoolToken: () => OffchainVault;
11
+ private getVaultAddress;
12
+ getVaultPosition(): Promise<VaultPosition | undefined>;
13
+ getAmount(): Promise<number>;
14
+ getEarnings(): Promise<number>;
15
+ getEarningsUSD(): Promise<number>;
16
+ }
@@ -0,0 +1,64 @@
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 offchainAccountPoolToken_1 = __importDefault(require("../offchainAccountPoolToken"));
16
+ class OffchainAccountVault extends offchainAccountPoolToken_1.default {
17
+ constructor(account, vault) {
18
+ super();
19
+ this.getAccount = () => this.account;
20
+ this.getPoolToken = () => this.poolToken;
21
+ this.getVaultAddress = () => this.poolToken.getVaultAddress();
22
+ this.account = account;
23
+ this.poolToken = vault;
24
+ }
25
+ getVaultPosition() {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ const lendingVaultsUserData = yield this.account.getLendingVaultsUserData();
28
+ if (!lendingVaultsUserData)
29
+ return undefined;
30
+ return lendingVaultsUserData[this.getVaultAddress()];
31
+ });
32
+ }
33
+ getAmount() {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ const vaultPosition = yield this.getVaultPosition();
36
+ if (!vaultPosition)
37
+ return 0;
38
+ const exchangeRate = yield this.poolToken.getCurrentExchangeRate();
39
+ const tokenBalance = parseFloat(vaultPosition.tokenBalance);
40
+ return tokenBalance * exchangeRate;
41
+ });
42
+ }
43
+ getEarnings() {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ const vaultPosition = yield this.getVaultPosition();
46
+ if (!vaultPosition)
47
+ return 0;
48
+ const exchangeRate = yield this.poolToken.getCurrentExchangeRate();
49
+ const tokenBalance = parseFloat(vaultPosition.tokenBalance);
50
+ const cumulativeEarnings = parseFloat(vaultPosition.cumulativeEarnings);
51
+ const lastExchangeRate = parseFloat(vaultPosition.lastExchangeRate);
52
+ const newEarnings = (exchangeRate - lastExchangeRate) * tokenBalance;
53
+ return cumulativeEarnings + newEarnings;
54
+ });
55
+ }
56
+ getEarningsUSD() {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ const tokenPrice = yield this.poolToken.getTokenPriceAccurate();
59
+ const earnings = yield this.getEarnings();
60
+ return earnings * tokenPrice;
61
+ });
62
+ }
63
+ }
64
+ exports.default = OffchainAccountVault;
@@ -1,5 +1,5 @@
1
- import OffchainProposal from './offchainProposal';
2
- import OffchainConfigManager from './offchainConfigManager';
3
- import OffchainPairConfig from './offchainPairConfig';
4
- export { OffchainProposal, OffchainPairConfig };
5
- export default OffchainConfigManager;
1
+ import OffchainProposal from './offchainProposal';
2
+ import OffchainConfigManager from './offchainConfigManager';
3
+ import OffchainPairConfig from './offchainPairConfig';
4
+ export { OffchainProposal, OffchainPairConfig };
5
+ export default OffchainConfigManager;
@@ -1,12 +1,12 @@
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
- exports.OffchainPairConfig = exports.OffchainProposal = void 0;
7
- const offchainProposal_1 = __importDefault(require("./offchainProposal"));
8
- exports.OffchainProposal = offchainProposal_1.default;
9
- const offchainConfigManager_1 = __importDefault(require("./offchainConfigManager"));
10
- const offchainPairConfig_1 = __importDefault(require("./offchainPairConfig"));
11
- exports.OffchainPairConfig = offchainPairConfig_1.default;
12
- exports.default = offchainConfigManager_1.default;
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
+ exports.OffchainPairConfig = exports.OffchainProposal = void 0;
7
+ const offchainProposal_1 = __importDefault(require("./offchainProposal"));
8
+ exports.OffchainProposal = offchainProposal_1.default;
9
+ const offchainConfigManager_1 = __importDefault(require("./offchainConfigManager"));
10
+ const offchainPairConfig_1 = __importDefault(require("./offchainPairConfig"));
11
+ exports.OffchainPairConfig = offchainPairConfig_1.default;
12
+ exports.default = offchainConfigManager_1.default;
@@ -1,25 +1,25 @@
1
- import Offchain from '../index';
2
- import OffchainProposal from './offchainProposal';
3
- import { NumberIndex } from '../../config/types';
4
- import { ProposalData, ProposalMetadata } from '../offchainTypes';
5
- import * as initializer from './offchainConfigManagerInitializer';
6
- export default class OffchainConfigManager {
7
- private readonly offchain;
8
- protected proposals: NumberIndex<OffchainProposal>;
9
- protected proposalsMetadata: Promise<ProposalMetadata[]> | null;
10
- protected metadataParameters: {
11
- rangeBegin: number;
12
- rangeLength: number;
13
- descending: boolean;
14
- };
15
- protected proposalsData: NumberIndex<Promise<ProposalData> | null>;
16
- constructor(offchain: Offchain);
17
- cleanCache(): void;
18
- getOffchain: () => Offchain;
19
- getLatestProposals(rangeBegin?: number, rangeLength?: number): Promise<ProposalMetadata[]>;
20
- getProposal(proposalId: number): Promise<OffchainProposal>;
21
- protected fetchProposalsMetadata: typeof initializer.fetchProposalsMetadata;
22
- getProposalsMetadata: typeof initializer.getProposalsMetadata;
23
- protected fetchProposalData: typeof initializer.fetchProposalData;
24
- getProposalData: typeof initializer.getProposalData;
25
- }
1
+ import Offchain from '../index';
2
+ import OffchainProposal from './offchainProposal';
3
+ import { NumberIndex } from '../../config/types';
4
+ import { ProposalData, ProposalMetadata } from '../offchainTypes';
5
+ import * as initializer from './offchainConfigManagerInitializer';
6
+ export default class OffchainConfigManager {
7
+ private readonly offchain;
8
+ protected proposals: NumberIndex<OffchainProposal>;
9
+ protected proposalsMetadata: Promise<ProposalMetadata[]> | null;
10
+ protected metadataParameters: {
11
+ rangeBegin: number;
12
+ rangeLength: number;
13
+ descending: boolean;
14
+ };
15
+ protected proposalsData: NumberIndex<Promise<ProposalData> | null>;
16
+ constructor(offchain: Offchain);
17
+ cleanCache(): void;
18
+ getOffchain: () => Offchain;
19
+ getLatestProposals(rangeBegin?: number, rangeLength?: number): Promise<ProposalMetadata[]>;
20
+ getProposal(proposalId: number): Promise<OffchainProposal>;
21
+ protected fetchProposalsMetadata: typeof initializer.fetchProposalsMetadata;
22
+ getProposalsMetadata: typeof initializer.getProposalsMetadata;
23
+ protected fetchProposalData: typeof initializer.fetchProposalData;
24
+ getProposalData: typeof initializer.getProposalData;
25
+ }