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,251 +1,248 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- var __importDefault = (this && this.__importDefault) || function (mod) {
35
- return (mod && mod.__esModule) ? mod : { "default": mod };
36
- };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- const initializer = __importStar(require("./offchainInitializer"));
39
- const offchainPriceHelper_1 = __importDefault(require("./offchainPriceHelper"));
40
- const offchainAPRHelper_1 = __importDefault(require("./offchainAPRHelper"));
41
- const offchainSolidexHelper_1 = __importDefault(require("./offchainSolidexHelper"));
42
- const account_1 = __importDefault(require("./account"));
43
- const offchainEndpointManager_1 = __importDefault(require("./offchainEndpointManager"));
44
- const offchainLendingVault_1 = __importDefault(require("./offchainLendingVault"));
45
- const configManager_1 = __importDefault(require("./configManager"));
46
- class Offchain {
47
- constructor(cfg) {
48
- this.getPriceHelper = () => this.priceHelper;
49
- this.getSolidexHelper = () => this.solidexHelper;
50
- this.getConfigManager = () => this.configManager;
51
- this.getAPRHelper = () => this.aprHelper;
52
- /**
53
- * TODO
54
- * Potrei organizzare in:
55
- * - lendingPoolData
56
- * - usersData
57
- * - tvlData
58
- * - ximxData
59
- * - lendingVaultData
60
- */
61
- // TODO make everything protected
62
- // Fetchers
63
- this.apolloFetcher = initializer.apolloFetcher;
64
- this.fetchLendingPools = initializer.fetchLendingPools;
65
- this.fetchLendingPoolsPast = initializer.fetchLendingPoolsPast;
66
- this.fetchPastVolume = initializer.fetchPastVolume;
67
- this.fetchCurrentVolumeAndReserves = initializer.fetchCurrentVolumeAndReserves;
68
- this.fetchImpermaxChefRewardRates = initializer.fetchImpermaxChefRewardRates;
69
- this.fetchUniswapAPR = initializer.fetchUniswapAPR;
70
- this.fetchBlockByTimestamp = initializer.fetchBlockByTimestamp;
71
- this.initializeLendingPoolsData = initializer.initializeLendingPoolsData;
72
- this.getLendingPoolsData = initializer.getLendingPoolsData;
73
- this.getLendingPoolData = initializer.getLendingPoolData;
74
- this.initializeTvlData = initializer.initializeTvlData;
75
- this.getTvlData = initializer.getTvlData;
76
- this.fetchUserData = initializer.fetchUserData;
77
- this.initializeUserData = initializer.initializeUserData;
78
- this.getUserData = initializer.getUserData;
79
- this.initializeXimxData = initializer.initializeXimxData;
80
- this.getXimxData = initializer.getXimxData;
81
- this.fetchLendingVaults = initializer.fetchLendingVaults;
82
- this.initializeLendingVaultsData = initializer.initializeLendingVaultsData;
83
- this.getLendingVaultsData = initializer.getLendingVaultsData;
84
- this.getLendingVaultData = initializer.getLendingVaultData;
85
- this.fetchLendingVaultsUserData = initializer.fetchLendingVaultsUserData;
86
- this.initializeLendingVaultsUserData = initializer.initializeLendingVaultsUserData;
87
- this.getLendingVaultsUserData = initializer.getLendingVaultsUserData;
88
- this.fetchWhitelist = initializer.fetchWhitelist;
89
- this.initializeWhitelistData = initializer.initializeWhitelistData;
90
- this.getWhitelistData = initializer.getWhitelistData;
91
- this.getWhitelistState = initializer.getWhitelistState;
92
- this.network = cfg.network;
93
- this.chainId = cfg.chainId;
94
- this.whitelistedPairs = cfg.whitelistedPairs ? cfg.whitelistedPairs : {};
95
- this.priceHelper = new offchainPriceHelper_1.default(this);
96
- this.solidexHelper = new offchainSolidexHelper_1.default(this);
97
- this.configManager = new configManager_1.default(this);
98
- this.aprHelper = new offchainAPRHelper_1.default(this);
99
- this.endpointManager = new offchainEndpointManager_1.default();
100
- this.accounts = {};
101
- this.usersData = {};
102
- this.lendingVaultsUsersData = {};
103
- }
104
- cleanCache() {
105
- this.lendingPoolsData = null;
106
- this.usersData = {};
107
- this.lendingVaultsData = null;
108
- this.lendingVaultsUsersData = {};
109
- this.tvlData = null;
110
- this.ximxData = null;
111
- this.whitelistData = null;
112
- this.priceHelper.cleanCache();
113
- this.solidexHelper.cleanCache();
114
- this.configManager.cleanCache();
115
- this.aprHelper.cleanCache();
116
- }
117
- getLendingPool(factory, pairAddress) {
118
- return __awaiter(this, void 0, void 0, function* () {
119
- yield this.getLendingPoolsData(); // make sure that lending pools are initialized
120
- return this.lendingPools[factory][pairAddress];
121
- });
122
- }
123
- getLendingVault(vaultAddress) {
124
- return __awaiter(this, void 0, void 0, function* () {
125
- yield this.getLendingVaultsData(); // make sure that lending vaults are initialized
126
- if (!this.lendingVaults)
127
- this.lendingVaults = {};
128
- if (!this.lendingVaults[vaultAddress])
129
- this.lendingVaults[vaultAddress] = new offchainLendingVault_1.default(this, vaultAddress);
130
- return this.lendingVaults[vaultAddress];
131
- });
132
- }
133
- getAccount(accountAddress) {
134
- if (!this.accounts[accountAddress])
135
- this.accounts[accountAddress] = new account_1.default(this, accountAddress);
136
- return this.accounts[accountAddress];
137
- }
138
- /**
139
- * DATA GETTERS
140
- */
141
- // Pair List
142
- getPairList() {
143
- return __awaiter(this, void 0, void 0, function* () {
144
- const result = [];
145
- const lendingPoolData = yield this.getLendingPoolsData();
146
- let factory;
147
- for (factory in lendingPoolData) {
148
- for (const pairAddress in lendingPoolData[factory]) {
149
- result.push({ pairAddress, factory });
150
- }
151
- }
152
- return result;
153
- });
154
- }
155
- getPairData(factory, pairAddress) {
156
- return __awaiter(this, void 0, void 0, function* () {
157
- const lendingPool = yield this.getLendingPool(factory, pairAddress);
158
- const totalBorrowsUSD = yield lendingPool.getTotalBorrowsUSD();
159
- return { pairAddress, factory, totalBorrowsUSD };
160
- });
161
- }
162
- getPairListWithData(pairList) {
163
- return __awaiter(this, void 0, void 0, function* () {
164
- const requests = [];
165
- for (const pair of pairList) {
166
- requests.push(this.getPairData(pair.factory, pair.pairAddress));
167
- }
168
- return Promise.all(requests);
169
- });
170
- }
171
- // Crosschain TVL Data
172
- getCrossChainTVL() {
173
- return __awaiter(this, void 0, void 0, function* () {
174
- // Try llama
175
- const llamaTvl = yield this.getAPRHelper().getImpermaxTvl();
176
- if (llamaTvl)
177
- return llamaTvl;
178
- // Fallback to subgraph
179
- const tvlData = yield this.getTvlData();
180
- return tvlData.crossChainTVLUSD;
181
- });
182
- }
183
- getCrossChainTotalValueSupplied() {
184
- return __awaiter(this, void 0, void 0, function* () {
185
- const tvlData = yield this.getTvlData();
186
- return tvlData.crossChainSupplyUSD;
187
- });
188
- }
189
- getCrossChainTotalValueBorrowed() {
190
- return __awaiter(this, void 0, void 0, function* () {
191
- const tvlData = yield this.getTvlData();
192
- return tvlData.crossChainBorrowUSD;
193
- });
194
- }
195
- // This chain TVL Data
196
- getTotalValueLocked() {
197
- return __awaiter(this, void 0, void 0, function* () {
198
- // Try llama
199
- const { tvl } = yield this.getAPRHelper().getLlamaTvlAndBorrows(this.network);
200
- if (tvl)
201
- return tvl;
202
- // Fallback to subgraph
203
- const tvlData = yield this.getTvlData();
204
- return tvlData.totalBalanceUSD;
205
- });
206
- }
207
- getTotalValueSupplied() {
208
- return __awaiter(this, void 0, void 0, function* () {
209
- // Try llama
210
- const { totalSupplied } = yield this.getAPRHelper().getLlamaTvlAndBorrows(this.network);
211
- if (totalSupplied)
212
- return totalSupplied;
213
- // Fallback to subgraph
214
- const tvlData = yield this.getTvlData();
215
- return tvlData.totalSupplyUSD;
216
- });
217
- }
218
- getTotalValueBorrowed() {
219
- return __awaiter(this, void 0, void 0, function* () {
220
- // Try llama
221
- const { borrowed } = yield this.getAPRHelper().getLlamaTvlAndBorrows(this.network);
222
- if (borrowed)
223
- return borrowed;
224
- // Fallback to subgraph
225
- const tvlData = yield this.getTvlData();
226
- return tvlData.totalBorrowsUSD;
227
- });
228
- }
229
- // IMX Staking
230
- getXIMXAPY() {
231
- return __awaiter(this, void 0, void 0, function* () {
232
- const ximxData = yield this.getXimxData();
233
- if (!ximxData)
234
- return 0;
235
- return Math.pow(1 + parseFloat(ximxData.dailyAPR), 365) - 1;
236
- });
237
- }
238
- getProtocolChart() {
239
- return __awaiter(this, void 0, void 0, function* () {
240
- const protocolTvlChart = yield this.getAPRHelper().getProtocolTvlChart();
241
- return protocolTvlChart;
242
- });
243
- }
244
- getProtocolChainChart(chain) {
245
- return __awaiter(this, void 0, void 0, function* () {
246
- const chainTvlCharts = yield this.getAPRHelper().getChainTvlChart(chain);
247
- return chainTvlCharts;
248
- });
249
- }
250
- }
251
- exports.default = Offchain;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __importDefault = (this && this.__importDefault) || function (mod) {
35
+ return (mod && mod.__esModule) ? mod : { "default": mod };
36
+ };
37
+ Object.defineProperty(exports, "__esModule", { value: true });
38
+ const initializer = __importStar(require("./offchainInitializer"));
39
+ const offchainPriceHelper_1 = __importDefault(require("./offchainPriceHelper"));
40
+ const offchainAPRHelper_1 = __importDefault(require("./offchainAPRHelper"));
41
+ const offchainSolidexHelper_1 = __importDefault(require("./offchainSolidexHelper"));
42
+ const account_1 = __importDefault(require("./account"));
43
+ const offchainEndpointManager_1 = __importDefault(require("./offchainEndpointManager"));
44
+ const offchainVault_1 = __importDefault(require("./vault/offchainVault"));
45
+ const configManager_1 = __importDefault(require("./configManager"));
46
+ const chainId_1 = require("../config/chainId");
47
+ class Offchain {
48
+ constructor(offchainMultichain, network) {
49
+ this.whitelistedPairs = {};
50
+ this.getPriceHelper = () => this.priceHelper;
51
+ this.getSolidexHelper = () => this.solidexHelper;
52
+ this.getConfigManager = () => this.configManager;
53
+ this.getAPRHelper = () => this.aprHelper;
54
+ // TODO make everything protected
55
+ // Fetchers
56
+ this.apolloFetcher = initializer.apolloFetcher;
57
+ this.fetchLendingPools = initializer.fetchLendingPools;
58
+ this.fetchLendingPoolsPast = initializer.fetchLendingPoolsPast;
59
+ this.fetchPastVolume = initializer.fetchPastVolume;
60
+ this.fetchCurrentVolumeAndReserves = initializer.fetchCurrentVolumeAndReserves;
61
+ this.fetchImpermaxChefRewardRates = initializer.fetchImpermaxChefRewardRates;
62
+ this.fetchUniswapAPR = initializer.fetchUniswapAPR;
63
+ this.fetchBlockByTimestamp = initializer.fetchBlockByTimestamp;
64
+ this.initializeLendingPoolsData = initializer.initializeLendingPoolsData;
65
+ this.getLendingPoolsData = initializer.getLendingPoolsData;
66
+ this.getLendingPoolData = initializer.getLendingPoolData;
67
+ this.initializeTvlData = initializer.initializeTvlData;
68
+ this.getTvlData = initializer.getTvlData;
69
+ this.fetchUserData = initializer.fetchUserData;
70
+ this.initializeUserData = initializer.initializeUserData;
71
+ this.getUserData = initializer.getUserData;
72
+ this.initializeXimxData = initializer.initializeXimxData;
73
+ this.getXimxData = initializer.getXimxData;
74
+ this.fetchLendingVaults = initializer.fetchLendingVaults;
75
+ this.initializeLendingVaultsData = initializer.initializeLendingVaultsData;
76
+ this.getLendingVaultsData = initializer.getLendingVaultsData;
77
+ this.getLendingVaultData = initializer.getLendingVaultData;
78
+ this.fetchLendingVaultsUserData = initializer.fetchLendingVaultsUserData;
79
+ this.initializeLendingVaultsUserData = initializer.initializeLendingVaultsUserData;
80
+ this.getLendingVaultsUserData = initializer.getLendingVaultsUserData;
81
+ this.fetchWhitelist = initializer.fetchWhitelist;
82
+ this.initializeWhitelistData = initializer.initializeWhitelistData;
83
+ this.getWhitelistData = initializer.getWhitelistData;
84
+ this.getWhitelistState = initializer.getWhitelistState;
85
+ // TODO fix conflicting lines (commented)
86
+ //this.network = cfg.network;
87
+ //this.chainId = cfg.chainId;
88
+ //this.whitelistedPairs = cfg.whitelistedPairs ? cfg.whitelistedPairs : {};
89
+ this.offchainMultichain = offchainMultichain;
90
+ this.network = network;
91
+ this.chainId = chainId_1.CHAIN_IDS[network];
92
+ this.priceHelper = new offchainPriceHelper_1.default(this);
93
+ this.solidexHelper = new offchainSolidexHelper_1.default(this);
94
+ this.configManager = new configManager_1.default(this);
95
+ this.aprHelper = new offchainAPRHelper_1.default(this);
96
+ this.endpointManager = new offchainEndpointManager_1.default();
97
+ this.accounts = {};
98
+ this.usersData = {};
99
+ this.lendingVaultsUsersData = {};
100
+ }
101
+ cleanCache() {
102
+ this.lendingPoolsData = null;
103
+ this.usersData = {};
104
+ this.lendingVaultsData = null;
105
+ this.lendingVaultsUsersData = {};
106
+ this.tvlData = null;
107
+ this.ximxData = null;
108
+ this.whitelistData = null;
109
+ this.priceHelper.cleanCache();
110
+ this.solidexHelper.cleanCache();
111
+ this.configManager.cleanCache();
112
+ this.aprHelper.cleanCache();
113
+ }
114
+ getLendingPool(factory, pairAddress) {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ yield this.getLendingPoolsData(); // make sure that lending pools are initialized
117
+ return this.lendingPools[factory][pairAddress];
118
+ });
119
+ }
120
+ getLendingVault(vaultAddress) {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ yield this.getLendingVaultsData(); // make sure that lending vaults are initialized
123
+ if (!this.vaults)
124
+ this.vaults = {};
125
+ if (!this.vaults[vaultAddress])
126
+ this.vaults[vaultAddress] = new offchainVault_1.default(this, vaultAddress);
127
+ return this.vaults[vaultAddress];
128
+ });
129
+ }
130
+ getAccount(accountAddress) {
131
+ if (!this.accounts[accountAddress])
132
+ this.accounts[accountAddress] = new account_1.default(this, accountAddress);
133
+ return this.accounts[accountAddress];
134
+ }
135
+ /**
136
+ * DATA GETTERS
137
+ */
138
+ // Pair List
139
+ getPairList() {
140
+ return __awaiter(this, void 0, void 0, function* () {
141
+ const result = [];
142
+ const lendingPoolData = yield this.getLendingPoolsData();
143
+ let factory;
144
+ for (factory in lendingPoolData) {
145
+ for (const pairAddress in lendingPoolData[factory]) {
146
+ result.push({ pairAddress, factory });
147
+ }
148
+ }
149
+ return result;
150
+ });
151
+ }
152
+ getPairData(factory, pairAddress) {
153
+ return __awaiter(this, void 0, void 0, function* () {
154
+ const lendingPool = yield this.getLendingPool(factory, pairAddress);
155
+ const totalBorrowsUSD = yield lendingPool.getTotalBorrowsUSD();
156
+ return { pairAddress, factory, totalBorrowsUSD };
157
+ });
158
+ }
159
+ getPairListWithData(pairList) {
160
+ return __awaiter(this, void 0, void 0, function* () {
161
+ const requests = [];
162
+ for (const pair of pairList) {
163
+ requests.push(this.getPairData(pair.factory, pair.pairAddress));
164
+ }
165
+ return Promise.all(requests);
166
+ });
167
+ }
168
+ // Crosschain TVL Data
169
+ getCrossChainTVL() {
170
+ return __awaiter(this, void 0, void 0, function* () {
171
+ // Try llama
172
+ const llamaTvl = yield this.getAPRHelper().getImpermaxTvl();
173
+ if (llamaTvl)
174
+ return llamaTvl;
175
+ // Fallback to subgraph
176
+ const tvlData = yield this.getTvlData();
177
+ return tvlData.crossChainTVLUSD;
178
+ });
179
+ }
180
+ getCrossChainTotalValueSupplied() {
181
+ return __awaiter(this, void 0, void 0, function* () {
182
+ const tvlData = yield this.getTvlData();
183
+ return tvlData.crossChainSupplyUSD;
184
+ });
185
+ }
186
+ getCrossChainTotalValueBorrowed() {
187
+ return __awaiter(this, void 0, void 0, function* () {
188
+ const tvlData = yield this.getTvlData();
189
+ return tvlData.crossChainBorrowUSD;
190
+ });
191
+ }
192
+ // This chain TVL Data
193
+ getTotalValueLocked() {
194
+ return __awaiter(this, void 0, void 0, function* () {
195
+ // Try llama
196
+ const { tvl } = yield this.getAPRHelper().getLlamaTvlAndBorrows(this.network);
197
+ if (tvl)
198
+ return tvl;
199
+ // Fallback to subgraph
200
+ const tvlData = yield this.getTvlData();
201
+ return tvlData.totalBalanceUSD;
202
+ });
203
+ }
204
+ getTotalValueSupplied() {
205
+ return __awaiter(this, void 0, void 0, function* () {
206
+ // Try llama
207
+ const { totalSupplied } = yield this.getAPRHelper().getLlamaTvlAndBorrows(this.network);
208
+ if (totalSupplied)
209
+ return totalSupplied;
210
+ // Fallback to subgraph
211
+ const tvlData = yield this.getTvlData();
212
+ return tvlData.totalSupplyUSD;
213
+ });
214
+ }
215
+ getTotalValueBorrowed() {
216
+ return __awaiter(this, void 0, void 0, function* () {
217
+ // Try llama
218
+ const { borrowed } = yield this.getAPRHelper().getLlamaTvlAndBorrows(this.network);
219
+ if (borrowed)
220
+ return borrowed;
221
+ // Fallback to subgraph
222
+ const tvlData = yield this.getTvlData();
223
+ return tvlData.totalBorrowsUSD;
224
+ });
225
+ }
226
+ // IMX Staking
227
+ getXIMXAPY() {
228
+ return __awaiter(this, void 0, void 0, function* () {
229
+ const ximxData = yield this.getXimxData();
230
+ if (!ximxData)
231
+ return 0;
232
+ return Math.pow(1 + parseFloat(ximxData.dailyAPR), 365) - 1;
233
+ });
234
+ }
235
+ getProtocolChart() {
236
+ return __awaiter(this, void 0, void 0, function* () {
237
+ const protocolTvlChart = yield this.getAPRHelper().getProtocolTvlChart();
238
+ return protocolTvlChart;
239
+ });
240
+ }
241
+ getProtocolChainChart(chain) {
242
+ return __awaiter(this, void 0, void 0, function* () {
243
+ const chainTvlCharts = yield this.getAPRHelper().getChainTvlChart(chain);
244
+ return chainTvlCharts;
245
+ });
246
+ }
247
+ }
248
+ exports.default = Offchain;
@@ -1,45 +1,45 @@
1
- import { Address, Networks } from "../config/types";
2
- import Offchain from "./index";
3
- export type LlamaTvlChart = {
4
- date: number;
5
- totalLiquidityUSD: number;
6
- }[];
7
- export type LlamaChainChart = {
8
- tokens: string[];
9
- tokensInUsd: number[];
10
- tvl: {
11
- date: number;
12
- totalLiquidityUSD: number;
13
- }[];
14
- }[];
15
- export default class OffchainAPRHelper {
16
- private llamaAllPools;
17
- private initialized;
18
- private chainTvls;
19
- private tvlInitialized;
20
- private chainsTotalSupplied;
21
- private totalSuppliedInitialized;
22
- private chainTvlCharts;
23
- private protocolTvlChart;
24
- private readonly blacklistedProjects;
25
- offchain: Offchain;
26
- constructor(offchain: Offchain);
27
- cleanCache(): void;
28
- private isBlacklisted;
29
- private initializeYields;
30
- private initializeTvls;
31
- private initializePoolsBorrow;
32
- private getLlamaYields;
33
- private getLlamaTvls;
34
- private getChainsTotalSupplied;
35
- getLlamaAPR(pool: Address, chain: Networks): Promise<number>;
36
- getLlamaTvlAndBorrows(chain: Networks): Promise<{
37
- tvl: number;
38
- borrowed: number;
39
- totalSupplied: number;
40
- }>;
41
- getImpermaxBorrows(): Promise<number>;
42
- getImpermaxTvl(): Promise<number>;
43
- getProtocolTvlChart(): Promise<LlamaTvlChart>;
44
- getChainTvlChart(chain: Networks): Promise<LlamaTvlChart>;
45
- }
1
+ import { Address, Networks } from "../config/types";
2
+ import Offchain from "./index";
3
+ export type LlamaTvlChart = {
4
+ date: number;
5
+ totalLiquidityUSD: number;
6
+ }[];
7
+ export type LlamaChainChart = {
8
+ tokens: string[];
9
+ tokensInUsd: number[];
10
+ tvl: {
11
+ date: number;
12
+ totalLiquidityUSD: number;
13
+ }[];
14
+ }[];
15
+ export default class OffchainAPRHelper {
16
+ private llamaAllPools;
17
+ private initialized;
18
+ private chainTvls;
19
+ private tvlInitialized;
20
+ private chainsTotalSupplied;
21
+ private totalSuppliedInitialized;
22
+ private chainTvlCharts;
23
+ private protocolTvlChart;
24
+ private readonly blacklistedProjects;
25
+ offchain: Offchain;
26
+ constructor(offchain: Offchain);
27
+ cleanCache(): void;
28
+ private isBlacklisted;
29
+ private initializeYields;
30
+ private initializeTvls;
31
+ private initializePoolsBorrow;
32
+ private getLlamaYields;
33
+ private getLlamaTvls;
34
+ private getChainsTotalSupplied;
35
+ getLlamaAPR(pool: Address, chain: Networks): Promise<number>;
36
+ getLlamaTvlAndBorrows(chain: Networks): Promise<{
37
+ tvl: number;
38
+ borrowed: number;
39
+ totalSupplied: number;
40
+ }>;
41
+ getImpermaxBorrows(): Promise<number>;
42
+ getImpermaxTvl(): Promise<number>;
43
+ getProtocolTvlChart(): Promise<LlamaTvlChart>;
44
+ getChainTvlChart(chain: Networks): Promise<LlamaTvlChart>;
45
+ }