@1delta/margin-fetcher 0.0.13 → 0.0.15-0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (510) hide show
  1. package/dist/_esm-2UAQOYNJ.js +3898 -0
  2. package/dist/_esm-2UAQOYNJ.js.map +1 -0
  3. package/dist/abis/aave-v2/YLDR.d.ts.map +1 -1
  4. package/dist/abis/aave-v3/AavePoolDataProviderLegacy.d.ts.map +1 -1
  5. package/dist/abis/compound-v2/CollateralToken.d.ts +58 -0
  6. package/dist/abis/compound-v2/CollateralToken.d.ts.map +1 -0
  7. package/dist/abis/compound-v2/Comptroller.d.ts +1 -1600
  8. package/dist/abis/compound-v2/Comptroller.d.ts.map +1 -1
  9. package/dist/abis/compound-v2/VenusLens.d.ts +1007 -0
  10. package/dist/abis/{aave/AavePoolV3.d.ts.map → compound-v2/VenusLens.d.ts.map} +1 -1
  11. package/dist/abis/compound-v2/VenusLensLegacy.d.ts +109 -0
  12. package/dist/abis/compound-v2/VenusLensLegacy.d.ts.map +1 -0
  13. package/dist/abis/compound-v3/Comet.d.ts +0 -20
  14. package/dist/abis/compound-v3/Comet.d.ts.map +1 -1
  15. package/dist/abis/morpho/lens.d.ts +127 -15
  16. package/dist/abis/morpho/lens.d.ts.map +1 -1
  17. package/dist/abis/multicall/Multicall.d.ts.map +1 -1
  18. package/dist/abis/oracle/ChainLinkAggregator.d.ts +5 -223
  19. package/dist/abis/oracle/ChainLinkAggregator.d.ts.map +1 -1
  20. package/dist/abis/oracle/ProxyOracle.d.ts +26 -0
  21. package/dist/abis/oracle/ProxyOracle.d.ts.map +1 -0
  22. package/dist/abis/oracle/UniV3.d.ts +12 -0
  23. package/dist/abis/oracle/UniV3.d.ts.map +1 -0
  24. package/dist/assets/index.d.ts +3 -8
  25. package/dist/assets/index.d.ts.map +1 -1
  26. package/dist/assets/liquidityThresholds.d.ts +10 -0
  27. package/dist/assets/liquidityThresholds.d.ts.map +1 -1
  28. package/dist/ccip-NAPFCFLK.js +5 -0
  29. package/dist/ccip-NAPFCFLK.js.map +1 -0
  30. package/dist/chunk-BYTNVMX7.js +369 -0
  31. package/dist/chunk-BYTNVMX7.js.map +1 -0
  32. package/dist/chunk-JJRW5HVN.js +4133 -0
  33. package/dist/chunk-JJRW5HVN.js.map +1 -0
  34. package/dist/chunk-PR4QN5HX.js +39 -0
  35. package/dist/chunk-PR4QN5HX.js.map +1 -0
  36. package/dist/flash-liquidity/assets.d.ts +2 -2
  37. package/dist/flash-liquidity/assets.d.ts.map +1 -1
  38. package/dist/flash-liquidity/fetchLiquidity.d.ts +3 -3
  39. package/dist/flash-liquidity/fetchLiquidity.d.ts.map +1 -1
  40. package/dist/flash-liquidity/index.d.ts +2 -2
  41. package/dist/flash-liquidity/types.d.ts +1 -0
  42. package/dist/flash-liquidity/types.d.ts.map +1 -1
  43. package/dist/flash-liquidity/utils.d.ts +3 -2
  44. package/dist/flash-liquidity/utils.d.ts.map +1 -1
  45. package/dist/index.d.ts +9 -7
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +23868 -6
  48. package/dist/index.js.map +1 -0
  49. package/dist/lending/aave-v2-type/misc.d.ts +3 -9
  50. package/dist/lending/aave-v2-type/misc.d.ts.map +1 -1
  51. package/dist/lending/aave-v2-type/publicCallBuild.d.ts +3 -4
  52. package/dist/lending/aave-v2-type/publicCallBuild.d.ts.map +1 -1
  53. package/dist/lending/aave-v2-type/publicCallParse.d.ts +4 -5
  54. package/dist/lending/aave-v2-type/publicCallParse.d.ts.map +1 -1
  55. package/dist/lending/aave-v3-type/publicCallBuild.d.ts +3 -3
  56. package/dist/lending/aave-v3-type/publicCallBuild.d.ts.map +1 -1
  57. package/dist/lending/aave-v3-type/publicCallParse.d.ts +5 -6
  58. package/dist/lending/aave-v3-type/publicCallParse.d.ts.map +1 -1
  59. package/dist/lending/addresses/aave.d.ts.map +1 -1
  60. package/dist/lending/addresses/aaveV2.d.ts.map +1 -1
  61. package/dist/lending/addresses/compoundV2.d.ts +13 -0
  62. package/dist/lending/addresses/compoundV2.d.ts.map +1 -0
  63. package/dist/lending/addresses/compoundV3.d.ts +2 -4
  64. package/dist/lending/addresses/compoundV3.d.ts.map +1 -1
  65. package/dist/lending/addresses/meridian.d.ts +3 -0
  66. package/dist/lending/addresses/meridian.d.ts.map +1 -1
  67. package/dist/lending/addresses/takotako.d.ts.map +1 -1
  68. package/dist/lending/compound-v2/getters/moonwell.d.ts +32 -0
  69. package/dist/lending/compound-v2/getters/moonwell.d.ts.map +1 -0
  70. package/dist/lending/compound-v2/getters/types.d.ts +12 -0
  71. package/dist/lending/compound-v2/getters/types.d.ts.map +1 -0
  72. package/dist/lending/compound-v2/getters/venus.d.ts +86 -0
  73. package/dist/lending/compound-v2/getters/venus.d.ts.map +1 -0
  74. package/dist/lending/compound-v2/publicCallBuild.d.ts +2 -0
  75. package/dist/lending/compound-v2/publicCallBuild.d.ts.map +1 -0
  76. package/dist/lending/compound-v2/publicCallParse.d.ts +6 -0
  77. package/dist/lending/compound-v2/publicCallParse.d.ts.map +1 -0
  78. package/dist/lending/compound-v3/publicCallBuild.d.ts +1 -2
  79. package/dist/lending/compound-v3/publicCallBuild.d.ts.map +1 -1
  80. package/dist/lending/compound-v3/publicCallParse.d.ts +3 -4
  81. package/dist/lending/compound-v3/publicCallParse.d.ts.map +1 -1
  82. package/dist/lending/fetchLender.d.ts +5 -3
  83. package/dist/lending/fetchLender.d.ts.map +1 -1
  84. package/dist/lending/fetchLenderAll.d.ts +2 -2
  85. package/dist/lending/fetchLenderAll.d.ts.map +1 -1
  86. package/dist/lending/fetchLenderExt.d.ts +2 -2
  87. package/dist/lending/fetchLenderExt.d.ts.map +1 -1
  88. package/dist/lending/index.d.ts +6 -5
  89. package/dist/lending/index.d.ts.map +1 -1
  90. package/dist/lending/init/publicCallBuild.d.ts +1 -1
  91. package/dist/lending/init/publicCallBuild.d.ts.map +1 -1
  92. package/dist/lending/init/publicCallParse.d.ts +4 -4
  93. package/dist/lending/init/publicCallParse.d.ts.map +1 -1
  94. package/dist/lending/lista/getMarketsFromChain.d.ts +4 -0
  95. package/dist/lending/lista/getMarketsFromChain.d.ts.map +1 -0
  96. package/dist/lending/lista/getMarketsOnChain.d.ts +6 -0
  97. package/dist/lending/lista/getMarketsOnChain.d.ts.map +1 -0
  98. package/dist/lending/lista/publicCallBuild.d.ts +10 -0
  99. package/dist/lending/lista/publicCallBuild.d.ts.map +1 -0
  100. package/dist/lending/meta/index.d.ts +20 -0
  101. package/dist/lending/meta/index.d.ts.map +1 -0
  102. package/dist/lending/morpho/convertPublic.d.ts +2 -2
  103. package/dist/lending/morpho/convertPublic.d.ts.map +1 -1
  104. package/dist/lending/morpho/fetchPublic.d.ts.map +1 -1
  105. package/dist/lending/morpho/getMarketsFromChain.d.ts +4 -0
  106. package/dist/lending/morpho/getMarketsFromChain.d.ts.map +1 -0
  107. package/dist/lending/morpho/index.d.ts +3 -0
  108. package/dist/lending/morpho/index.d.ts.map +1 -0
  109. package/dist/lending/morpho/publicCallBuild.d.ts +12 -2
  110. package/dist/lending/morpho/publicCallBuild.d.ts.map +1 -1
  111. package/dist/lending/morpho/utils/evmParser.d.ts +48 -0
  112. package/dist/lending/morpho/utils/evmParser.d.ts.map +1 -0
  113. package/dist/lending/morpho/utils/mathLib.d.ts +125 -0
  114. package/dist/lending/morpho/utils/mathLib.d.ts.map +1 -0
  115. package/dist/lending/morpho/utils/parsers.d.ts +10 -0
  116. package/dist/lending/morpho/utils/parsers.d.ts.map +1 -0
  117. package/dist/lending/user-data/aave-v2-type/userCallBuild.d.ts +3 -3
  118. package/dist/lending/user-data/aave-v2-type/userCallBuild.d.ts.map +1 -1
  119. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts +2 -2
  120. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts.map +1 -1
  121. package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts +3 -3
  122. package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts.map +1 -1
  123. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts +2 -2
  124. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts.map +1 -1
  125. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts +2 -2
  126. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts.map +1 -1
  127. package/dist/lending/user-data/abis.d.ts +179 -34
  128. package/dist/lending/user-data/abis.d.ts.map +1 -1
  129. package/dist/lending/user-data/compound-v2/index.d.ts +3 -0
  130. package/dist/lending/user-data/compound-v2/index.d.ts.map +1 -0
  131. package/dist/lending/user-data/compound-v2/userCallBuild.d.ts +4 -0
  132. package/dist/lending/user-data/compound-v2/userCallBuild.d.ts.map +1 -0
  133. package/dist/lending/user-data/compound-v2/userCallParse.d.ts +8 -0
  134. package/dist/lending/user-data/compound-v2/userCallParse.d.ts.map +1 -0
  135. package/dist/lending/user-data/compound-v3/index.d.ts +2 -3
  136. package/dist/lending/user-data/compound-v3/index.d.ts.map +1 -1
  137. package/dist/lending/user-data/compound-v3/userCallBuild.d.ts +3 -3
  138. package/dist/lending/user-data/compound-v3/userCallBuild.d.ts.map +1 -1
  139. package/dist/lending/user-data/compound-v3/userCallParse.d.ts +2 -2
  140. package/dist/lending/user-data/compound-v3/userCallParse.d.ts.map +1 -1
  141. package/dist/lending/user-data/fetchUserData.d.ts +114 -5
  142. package/dist/lending/user-data/fetchUserData.d.ts.map +1 -1
  143. package/dist/lending/user-data/index.d.ts +2 -2
  144. package/dist/lending/user-data/index.d.ts.map +1 -1
  145. package/dist/lending/user-data/init/userCallBuild.d.ts +2 -2
  146. package/dist/lending/user-data/init/userCallBuild.d.ts.map +1 -1
  147. package/dist/lending/user-data/init/userCallParse.d.ts +2 -2
  148. package/dist/lending/user-data/init/userCallParse.d.ts.map +1 -1
  149. package/dist/lending/user-data/morpho/decoder.d.ts +20 -1
  150. package/dist/lending/user-data/morpho/decoder.d.ts.map +1 -1
  151. package/dist/lending/user-data/morpho/index.d.ts +4 -0
  152. package/dist/lending/user-data/morpho/index.d.ts.map +1 -0
  153. package/dist/lending/user-data/morpho/morphoLib.d.ts.map +1 -1
  154. package/dist/lending/user-data/morpho/types.d.ts.map +1 -1
  155. package/dist/lending/user-data/morpho/userCallBuild.d.ts +6 -3
  156. package/dist/lending/user-data/morpho/userCallBuild.d.ts.map +1 -1
  157. package/dist/lending/user-data/morpho/userCallParse.d.ts +16 -2
  158. package/dist/lending/user-data/morpho/userCallParse.d.ts.map +1 -1
  159. package/dist/lending/user-data/utils/createGeneralUserState.d.ts +4 -1
  160. package/dist/lending/user-data/utils/createGeneralUserState.d.ts.map +1 -1
  161. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.d.ts +1 -1
  162. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.d.ts.map +1 -1
  163. package/dist/lending/user-data/utils/formatting/generalFormatters.d.ts +1 -1
  164. package/dist/lending/user-data/utils/formatting/generalFormatters.d.ts.map +1 -1
  165. package/dist/lending/user-data/utils/formatting/index.d.ts +1 -1
  166. package/dist/lending/user-data/utils/index.d.ts +4 -4
  167. package/dist/lending/user-data/utils/index.d.ts.map +1 -1
  168. package/dist/lending-pairs/computeLendingPairs.d.ts +10 -1
  169. package/dist/lending-pairs/computeLendingPairs.d.ts.map +1 -1
  170. package/dist/lending-pairs/index.d.ts +1 -1
  171. package/dist/lending-pairs/index.d.ts.map +1 -1
  172. package/dist/lending-pools/computeLenderDataFromPools.d.ts +10 -0
  173. package/dist/lending-pools/computeLenderDataFromPools.d.ts.map +1 -0
  174. package/dist/lending-pools/computeLendingPools.d.ts +23 -0
  175. package/dist/lending-pools/computeLendingPools.d.ts.map +1 -0
  176. package/dist/lending-pools/index.d.ts +3 -0
  177. package/dist/lending-pools/index.d.ts.map +1 -0
  178. package/dist/prices/defillama/index.d.ts.map +1 -1
  179. package/dist/prices/index.d.ts +3 -2
  180. package/dist/prices/index.d.ts.map +1 -1
  181. package/dist/prices/main-prices/addresses/api3.d.ts.map +1 -1
  182. package/dist/prices/main-prices/addresses/chainlink.d.ts +0 -7
  183. package/dist/prices/main-prices/addresses/chainlink.d.ts.map +1 -1
  184. package/dist/prices/main-prices/fetchOracleData.d.ts +9 -3
  185. package/dist/prices/main-prices/fetchOracleData.d.ts.map +1 -1
  186. package/dist/prices/main-prices/index.d.ts +1 -1
  187. package/dist/prices/main-prices/index.d.ts.map +1 -1
  188. package/dist/prices/pendle/fetchPendlePrices.d.ts +47 -0
  189. package/dist/prices/pendle/fetchPendlePrices.d.ts.map +1 -0
  190. package/dist/prices/pendle/index.d.ts +2 -0
  191. package/dist/prices/pendle/index.d.ts.map +1 -0
  192. package/dist/secp256k1-XP7IUONI.js +2208 -0
  193. package/dist/secp256k1-XP7IUONI.js.map +1 -0
  194. package/dist/types/apiReturnType.d.ts +4 -4
  195. package/dist/types/apiReturnType.d.ts.map +1 -1
  196. package/dist/{lending/types/index.d.ts → types/general.d.ts} +1 -1
  197. package/dist/types/general.d.ts.map +1 -0
  198. package/dist/types/index.d.ts +5 -41
  199. package/dist/types/index.d.ts.map +1 -1
  200. package/dist/{lending/aave-v2-type/types.d.ts → types/lender/aave-v2-types.d.ts} +5 -9
  201. package/dist/types/lender/aave-v2-types.d.ts.map +1 -0
  202. package/dist/{lending/aave-v3-type/types.d.ts → types/lender/aave-v3-types.d.ts} +5 -9
  203. package/dist/types/lender/aave-v3-types.d.ts.map +1 -0
  204. package/dist/types/lender/compound-v2-types.d.ts +41 -0
  205. package/dist/types/lender/compound-v2-types.d.ts.map +1 -0
  206. package/dist/{lending/compound-v3/types.d.ts → types/lender/compound-v3-types.d.ts} +5 -9
  207. package/dist/types/lender/compound-v3-types.d.ts.map +1 -0
  208. package/dist/{lending/init/types.d.ts → types/lender/init-types.d.ts} +5 -9
  209. package/dist/types/lender/init-types.d.ts.map +1 -0
  210. package/dist/{lending/morpho/types.d.ts → types/lender/morpho-types.d.ts} +12 -2
  211. package/dist/types/lender/morpho-types.d.ts.map +1 -0
  212. package/dist/{lending/user-data/types.d.ts → types/lenderTypes.d.ts} +30 -20
  213. package/dist/types/lenderTypes.d.ts.map +1 -0
  214. package/dist/types/misc.d.ts +47 -0
  215. package/dist/types/misc.d.ts.map +1 -0
  216. package/dist/types/providers.d.ts +1 -9
  217. package/dist/types/providers.d.ts.map +1 -1
  218. package/dist/utils/constants.d.ts +0 -23
  219. package/dist/utils/constants.d.ts.map +1 -1
  220. package/dist/utils/index.d.ts +6 -7
  221. package/dist/utils/index.d.ts.map +1 -1
  222. package/dist/utils/multicall.d.ts +2 -1
  223. package/dist/utils/multicall.d.ts.map +1 -1
  224. package/dist/utils/parsing.d.ts +6 -3
  225. package/dist/utils/parsing.d.ts.map +1 -1
  226. package/dist/yields/index.d.ts.map +1 -1
  227. package/dist/yields/yieldTypes.d.ts +76 -0
  228. package/dist/yields/yieldTypes.d.ts.map +1 -0
  229. package/package.json +16 -8
  230. package/dist/abis/aave/AToken.d.ts +0 -526
  231. package/dist/abis/aave/AToken.d.ts.map +0 -1
  232. package/dist/abis/aave/AToken.js +0 -686
  233. package/dist/abis/aave/AaveOracle.js +0 -66
  234. package/dist/abis/aave/AavePoolAndDataProvider.js +0 -2080
  235. package/dist/abis/aave/AavePoolV3.d.ts +0 -819
  236. package/dist/abis/aave/AavePoolV3.js +0 -1060
  237. package/dist/abis/aave/AavePoolV3Upgraded.js +0 -1474
  238. package/dist/abis/aave/AaveV3ProtocolDataProvider.js +0 -553
  239. package/dist/abis/aave/VariableDebtToken.js +0 -820
  240. package/dist/abis/aave-v2/ProtocolDataProvider.js +0 -312
  241. package/dist/abis/aave-v2/YLDR.js +0 -199
  242. package/dist/abis/aave-v3/AavePoolDataProviderLegacy.js +0 -460
  243. package/dist/abis/aave-v3/AavePoolLegacy.js +0 -1060
  244. package/dist/abis/aave-v3/YLDR.js +0 -46
  245. package/dist/abis/aurelius/Rewarder.js +0 -118
  246. package/dist/abis/compound-v2/CompoundLens.js +0 -851
  247. package/dist/abis/compound-v2/Comptroller.js +0 -2104
  248. package/dist/abis/compound-v3/Comet.js +0 -1829
  249. package/dist/abis/compound-v3/CometExt.js +0 -536
  250. package/dist/abis/compound-v3/CometLens.js +0 -194
  251. package/dist/abis/compound-v3/CometRewards.js +0 -330
  252. package/dist/abis/compound-v3/IrGetter.js +0 -31
  253. package/dist/abis/flashloan-united/flashAbi.js +0 -72
  254. package/dist/abis/init/Core.d.ts +0 -523
  255. package/dist/abis/init/Core.d.ts.map +0 -1
  256. package/dist/abis/init/Core.js +0 -681
  257. package/dist/abis/init/InitFlashAggregator.d.ts +0 -624
  258. package/dist/abis/init/InitFlashAggregator.d.ts.map +0 -1
  259. package/dist/abis/init/InitFlashAggregator.js +0 -795
  260. package/dist/abis/init/InitLens.js +0 -203
  261. package/dist/abis/init/PosManager.d.ts +0 -802
  262. package/dist/abis/init/PosManager.d.ts.map +0 -1
  263. package/dist/abis/init/PosManager.js +0 -1055
  264. package/dist/abis/lendle/IncentivesController.js +0 -525
  265. package/dist/abis/lendle/MultiFeeDistribution.js +0 -820
  266. package/dist/abis/meridian/PullRewardsIncentivesController.js +0 -98
  267. package/dist/abis/morpho/blue.js +0 -99
  268. package/dist/abis/morpho/lens.js +0 -31
  269. package/dist/abis/multicall/Multicall.js +0 -101
  270. package/dist/abis/oracle/AaveOracle.js +0 -66
  271. package/dist/abis/oracle/Api3Oracle.js +0 -62
  272. package/dist/abis/oracle/ChainLinkAggregator.js +0 -480
  273. package/dist/abis/oracle/RWADynamicOracle.js +0 -15
  274. package/dist/abis/oracle/UniswapV2Pair.js +0 -659
  275. package/dist/abis/uniswap/FeeOnTransferDetector.d.ts +0 -102
  276. package/dist/abis/uniswap/FeeOnTransferDetector.d.ts.map +0 -1
  277. package/dist/abis/uniswap/FeeOnTransferDetector.js +0 -133
  278. package/dist/abis/uniswap/UniswapV2Pair.d.ts +0 -513
  279. package/dist/abis/uniswap/UniswapV2Pair.d.ts.map +0 -1
  280. package/dist/abis/uniswap/UniswapV2Pair.js +0 -659
  281. package/dist/assets/index.js +0 -54
  282. package/dist/assets/liquidityThresholds.js +0 -51
  283. package/dist/flash-liquidity/assets.js +0 -45
  284. package/dist/flash-liquidity/fetchLiquidity.js +0 -235
  285. package/dist/flash-liquidity/index.js +0 -2
  286. package/dist/flash-liquidity/types.js +0 -8
  287. package/dist/flash-liquidity/utils.js +0 -17
  288. package/dist/lending/aave-v2-type/misc.js +0 -8
  289. package/dist/lending/aave-v2-type/publicCallBuild.js +0 -102
  290. package/dist/lending/aave-v2-type/publicCallParse.js +0 -257
  291. package/dist/lending/aave-v2-type/types.d.ts.map +0 -1
  292. package/dist/lending/aave-v2-type/types.js +0 -46
  293. package/dist/lending/aave-v3-type/publicCallBuild.js +0 -123
  294. package/dist/lending/aave-v3-type/publicCallParse.js +0 -307
  295. package/dist/lending/aave-v3-type/types.d.ts.map +0 -1
  296. package/dist/lending/aave-v3-type/types.js +0 -98
  297. package/dist/lending/addresses/aave.js +0 -10
  298. package/dist/lending/addresses/aaveV2.js +0 -6
  299. package/dist/lending/addresses/aurelius.js +0 -12
  300. package/dist/lending/addresses/compoundV3.js +0 -36
  301. package/dist/lending/addresses/contracts.d.ts +0 -5
  302. package/dist/lending/addresses/contracts.d.ts.map +0 -1
  303. package/dist/lending/addresses/contracts.js +0 -49
  304. package/dist/lending/addresses/hana.js +0 -6
  305. package/dist/lending/addresses/index.d.ts +0 -2
  306. package/dist/lending/addresses/index.d.ts.map +0 -1
  307. package/dist/lending/addresses/index.js +0 -1
  308. package/dist/lending/addresses/init.js +0 -33
  309. package/dist/lending/addresses/lendle.js +0 -12
  310. package/dist/lending/addresses/meridian.js +0 -12
  311. package/dist/lending/addresses/takotako.js +0 -12
  312. package/dist/lending/compound-v3/publicCallBuild.js +0 -63
  313. package/dist/lending/compound-v3/publicCallParse.js +0 -135
  314. package/dist/lending/compound-v3/types.d.ts.map +0 -1
  315. package/dist/lending/compound-v3/types.js +0 -6
  316. package/dist/lending/fetchLender.js +0 -104
  317. package/dist/lending/fetchLenderAll.js +0 -12
  318. package/dist/lending/fetchLenderExt.js +0 -42
  319. package/dist/lending/index.js +0 -5
  320. package/dist/lending/init/publicCallBuild.js +0 -21
  321. package/dist/lending/init/publicCallParse.js +0 -76
  322. package/dist/lending/init/types.d.ts.map +0 -1
  323. package/dist/lending/init/types.js +0 -6
  324. package/dist/lending/morpho/convertPublic.js +0 -119
  325. package/dist/lending/morpho/fetchPublic.js +0 -72
  326. package/dist/lending/morpho/publicCallBuild.js +0 -6
  327. package/dist/lending/morpho/types.d.ts.map +0 -1
  328. package/dist/lending/morpho/types.js +0 -1
  329. package/dist/lending/types/index.d.ts.map +0 -1
  330. package/dist/lending/types/index.js +0 -1
  331. package/dist/lending/user-data/aave-v2-type/userCallBuild.js +0 -87
  332. package/dist/lending/user-data/aave-v2-type/userCallParse.js +0 -239
  333. package/dist/lending/user-data/aave-v3-type/userCallBuild.js +0 -26
  334. package/dist/lending/user-data/aave-v3-type/userCallParse.js +0 -84
  335. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.js +0 -81
  336. package/dist/lending/user-data/abis.js +0 -56
  337. package/dist/lending/user-data/compound-v3/addresses.d.ts +0 -10
  338. package/dist/lending/user-data/compound-v3/addresses.d.ts.map +0 -1
  339. package/dist/lending/user-data/compound-v3/addresses.js +0 -33
  340. package/dist/lending/user-data/compound-v3/index.js +0 -3
  341. package/dist/lending/user-data/compound-v3/userCallBuild.js +0 -44
  342. package/dist/lending/user-data/compound-v3/userCallParse.js +0 -103
  343. package/dist/lending/user-data/fetchUserData.js +0 -100
  344. package/dist/lending/user-data/index.js +0 -2
  345. package/dist/lending/user-data/init/userCallBuild.js +0 -20
  346. package/dist/lending/user-data/init/userCallParse.js +0 -88
  347. package/dist/lending/user-data/morpho/decoder.js +0 -52
  348. package/dist/lending/user-data/morpho/morphoLib.js +0 -21
  349. package/dist/lending/user-data/morpho/types.js +0 -13
  350. package/dist/lending/user-data/morpho/userCallBuild.js +0 -42
  351. package/dist/lending/user-data/morpho/userCallParse.js +0 -102
  352. package/dist/lending/user-data/morpho/userCallParseNoDeploy.d.ts +0 -11
  353. package/dist/lending/user-data/morpho/userCallParseNoDeploy.d.ts.map +0 -1
  354. package/dist/lending/user-data/morpho/userCallParseNoDeploy.js +0 -112
  355. package/dist/lending/user-data/types.d.ts.map +0 -1
  356. package/dist/lending/user-data/types.js +0 -38
  357. package/dist/lending/user-data/utils/createGeneralUserState.js +0 -105
  358. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.js +0 -96
  359. package/dist/lending/user-data/utils/formatting/generalFormatters.js +0 -109
  360. package/dist/lending/user-data/utils/formatting/index.js +0 -1
  361. package/dist/lending/user-data/utils/index.js +0 -17
  362. package/dist/lending-pairs/computeLendingPairs.js +0 -259
  363. package/dist/lending-pairs/index.js +0 -1
  364. package/dist/prices/defillama/index.js +0 -269
  365. package/dist/prices/index.js +0 -2
  366. package/dist/prices/main-prices/addresses/aaveOracles.d.ts +0 -278
  367. package/dist/prices/main-prices/addresses/aaveOracles.d.ts.map +0 -1
  368. package/dist/prices/main-prices/addresses/aaveOracles.js +0 -277
  369. package/dist/prices/main-prices/addresses/api3.js +0 -9
  370. package/dist/prices/main-prices/addresses/chainlink.js +0 -744
  371. package/dist/prices/main-prices/fetchOracleData.js +0 -348
  372. package/dist/prices/main-prices/index.js +0 -1
  373. package/dist/types/apiReturnType.js +0 -1
  374. package/dist/types/index.js +0 -10
  375. package/dist/types/providers.js +0 -1
  376. package/dist/utils/constants.js +0 -97
  377. package/dist/utils/index.js +0 -106
  378. package/dist/utils/multicall.js +0 -30
  379. package/dist/utils/parsing.js +0 -66
  380. package/dist/yields/index.js +0 -164
  381. package/src/abis/aave/AToken.ts +0 -686
  382. package/src/abis/aave/AaveOracle.ts +0 -66
  383. package/src/abis/aave/AavePoolAndDataProvider.ts +0 -2080
  384. package/src/abis/aave/AavePoolV3.ts +0 -1060
  385. package/src/abis/aave/AavePoolV3Upgraded.ts +0 -1474
  386. package/src/abis/aave/AaveV3ProtocolDataProvider.ts +0 -553
  387. package/src/abis/aave/VariableDebtToken.ts +0 -820
  388. package/src/abis/aave-v2/ProtocolDataProvider.ts +0 -312
  389. package/src/abis/aave-v2/YLDR.ts +0 -199
  390. package/src/abis/aave-v3/AavePoolDataProviderLegacy.ts +0 -459
  391. package/src/abis/aave-v3/AavePoolLegacy.ts +0 -1060
  392. package/src/abis/aave-v3/YLDR.ts +0 -46
  393. package/src/abis/aurelius/Rewarder.ts +0 -118
  394. package/src/abis/compound-v2/CompoundLens.ts +0 -851
  395. package/src/abis/compound-v2/Comptroller.ts +0 -2104
  396. package/src/abis/compound-v3/Comet.ts +0 -1829
  397. package/src/abis/compound-v3/CometExt.ts +0 -536
  398. package/src/abis/compound-v3/CometLens.ts +0 -194
  399. package/src/abis/compound-v3/CometRewards.ts +0 -330
  400. package/src/abis/compound-v3/IrGetter.ts +0 -31
  401. package/src/abis/flashloan-united/flashAbi.ts +0 -72
  402. package/src/abis/init/Core.ts +0 -681
  403. package/src/abis/init/InitFlashAggregator.ts +0 -795
  404. package/src/abis/init/InitLens.ts +0 -203
  405. package/src/abis/init/PosManager.ts +0 -1055
  406. package/src/abis/lendle/IncentivesController.ts +0 -525
  407. package/src/abis/lendle/MultiFeeDistribution.ts +0 -820
  408. package/src/abis/meridian/PullRewardsIncentivesController.ts +0 -98
  409. package/src/abis/morpho/blue.ts +0 -99
  410. package/src/abis/morpho/lens.ts +0 -31
  411. package/src/abis/multicall/Multicall.ts +0 -101
  412. package/src/abis/oracle/AaveOracle.ts +0 -66
  413. package/src/abis/oracle/Api3Oracle.ts +0 -62
  414. package/src/abis/oracle/ChainLinkAggregator.ts +0 -480
  415. package/src/abis/oracle/RWADynamicOracle.ts +0 -15
  416. package/src/abis/oracle/UniswapV2Pair.ts +0 -659
  417. package/src/abis/uniswap/FeeOnTransferDetector.ts +0 -133
  418. package/src/abis/uniswap/UniswapV2Pair.ts +0 -659
  419. package/src/assets/index.ts +0 -101
  420. package/src/assets/liquidityThresholds.ts +0 -83
  421. package/src/flash-liquidity/assets.ts +0 -61
  422. package/src/flash-liquidity/fetchLiquidity.ts +0 -300
  423. package/src/flash-liquidity/index.ts +0 -2
  424. package/src/flash-liquidity/types.ts +0 -20
  425. package/src/flash-liquidity/utils.ts +0 -22
  426. package/src/index.ts +0 -7
  427. package/src/lending/aave-v2-type/misc.ts +0 -9
  428. package/src/lending/aave-v2-type/publicCallBuild.ts +0 -105
  429. package/src/lending/aave-v2-type/publicCallParse.ts +0 -305
  430. package/src/lending/aave-v2-type/types.ts +0 -100
  431. package/src/lending/aave-v3-type/publicCallBuild.ts +0 -148
  432. package/src/lending/aave-v3-type/publicCallParse.ts +0 -378
  433. package/src/lending/aave-v3-type/types.ts +0 -191
  434. package/src/lending/addresses/aave.ts +0 -12
  435. package/src/lending/addresses/aaveV2.ts +0 -8
  436. package/src/lending/addresses/aurelius.ts +0 -13
  437. package/src/lending/addresses/compoundV3.ts +0 -56
  438. package/src/lending/addresses/contracts.ts +0 -54
  439. package/src/lending/addresses/hana.ts +0 -7
  440. package/src/lending/addresses/index.ts +0 -1
  441. package/src/lending/addresses/init.ts +0 -37
  442. package/src/lending/addresses/lendle.ts +0 -13
  443. package/src/lending/addresses/meridian.ts +0 -13
  444. package/src/lending/addresses/takotako.ts +0 -14
  445. package/src/lending/compound-v3/publicCallBuild.ts +0 -74
  446. package/src/lending/compound-v3/publicCallParse.ts +0 -202
  447. package/src/lending/compound-v3/types.ts +0 -45
  448. package/src/lending/fetchLender.ts +0 -181
  449. package/src/lending/fetchLenderAll.ts +0 -30
  450. package/src/lending/fetchLenderExt.ts +0 -82
  451. package/src/lending/index.ts +0 -5
  452. package/src/lending/init/publicCallBuild.ts +0 -29
  453. package/src/lending/init/publicCallParse.ts +0 -93
  454. package/src/lending/init/types.ts +0 -53
  455. package/src/lending/morpho/convertPublic.ts +0 -153
  456. package/src/lending/morpho/fetchPublic.ts +0 -80
  457. package/src/lending/morpho/publicCallBuild.ts +0 -11
  458. package/src/lending/morpho/types.ts +0 -129
  459. package/src/lending/types/index.ts +0 -16
  460. package/src/lending/user-data/aave-v2-type/userCallBuild.ts +0 -118
  461. package/src/lending/user-data/aave-v2-type/userCallParse.ts +0 -343
  462. package/src/lending/user-data/aave-v3-type/userCallBuild.ts +0 -42
  463. package/src/lending/user-data/aave-v3-type/userCallParse.ts +0 -126
  464. package/src/lending/user-data/aave-v3-type/userCallParseYldr.ts +0 -124
  465. package/src/lending/user-data/abis.ts +0 -53
  466. package/src/lending/user-data/compound-v3/addresses.ts +0 -59
  467. package/src/lending/user-data/compound-v3/index.ts +0 -3
  468. package/src/lending/user-data/compound-v3/userCallBuild.ts +0 -53
  469. package/src/lending/user-data/compound-v3/userCallParse.ts +0 -126
  470. package/src/lending/user-data/fetchUserData.ts +0 -205
  471. package/src/lending/user-data/index.ts +0 -2
  472. package/src/lending/user-data/init/userCallBuild.ts +0 -26
  473. package/src/lending/user-data/init/userCallParse.ts +0 -115
  474. package/src/lending/user-data/morpho/decoder.ts +0 -71
  475. package/src/lending/user-data/morpho/morphoLib.ts +0 -61
  476. package/src/lending/user-data/morpho/types.ts +0 -12
  477. package/src/lending/user-data/morpho/userCallBuild.ts +0 -63
  478. package/src/lending/user-data/morpho/userCallParse.ts +0 -150
  479. package/src/lending/user-data/morpho/userCallParseNoDeploy.ts +0 -168
  480. package/src/lending/user-data/types.ts +0 -300
  481. package/src/lending/user-data/utils/createGeneralUserState.ts +0 -142
  482. package/src/lending/user-data/utils/createMultiAccountStyleUserState.ts +0 -113
  483. package/src/lending/user-data/utils/formatting/generalFormatters.ts +0 -121
  484. package/src/lending/user-data/utils/formatting/index.ts +0 -1
  485. package/src/lending/user-data/utils/index.ts +0 -19
  486. package/src/lending-pairs/computeLendingPairs.ts +0 -445
  487. package/src/lending-pairs/index.ts +0 -1
  488. package/src/prices/defillama/index.ts +0 -306
  489. package/src/prices/index.ts +0 -2
  490. package/src/prices/main-prices/addresses/aaveOracles.ts +0 -278
  491. package/src/prices/main-prices/addresses/api3.ts +0 -10
  492. package/src/prices/main-prices/addresses/chainlink.ts +0 -750
  493. package/src/prices/main-prices/fetchOracleData.ts +0 -496
  494. package/src/prices/main-prices/index.ts +0 -1
  495. package/src/types/apiReturnType.ts +0 -80
  496. package/src/types/index.ts +0 -38
  497. package/src/types/providers.ts +0 -26
  498. package/src/utils/constants.ts +0 -100
  499. package/src/utils/index.ts +0 -139
  500. package/src/utils/multicall.ts +0 -53
  501. package/src/utils/parsing.ts +0 -80
  502. package/src/yields/index.ts +0 -207
  503. package/test/index.test.ts +0 -112
  504. package/test/lenderData.test.ts +0 -13320
  505. package/test/mainPrices.test.ts +0 -23
  506. package/test/morpho.test.ts +0 -20
  507. package/test/userDataMorpho.test.ts +0 -79
  508. package/test/userdata.test.ts +0 -261
  509. package/test/utils.ts +0 -13
  510. package/tsconfig.json +0 -28
@@ -1,496 +0,0 @@
1
- import { AaveOracleAbi } from '../../abis/oracle/AaveOracle'
2
- import { UniswapV2PairAbi } from '../../abis/oracle/UniswapV2Pair'
3
- import { ChainLinkAggregatorAbi } from '../../abis/oracle/ChainLinkAggregator'
4
- import { Api3OracleAbi } from '../../abis/oracle/Api3Oracle'
5
- import { RWADynamicOracleAbi } from '../../abis/oracle/RWADynamicOracle'
6
-
7
- import { api3OracleAddresses } from './addresses/api3'
8
- import { AAVE_V2_LENDERS, ASSET_META, Chain } from '@1delta/asset-registry'
9
- import { formatEther } from 'viem'
10
- import { getAaveAssets } from '../../assets'
11
- import {
12
- chainlinkOracles,
13
- getChainLinkKeys,
14
- ChainlinkAggregatorIndexes,
15
- } from './addresses/chainlink'
16
- import { fetchDefillamaData } from '../defillama'
17
- import { multicallViemAbiArray } from '../../utils/multicall'
18
- import { AAVE_STYLE_ORACLES } from './addresses/aaveOracles'
19
- import { AAVES_PER_CHAIN } from '../../utils'
20
- import { GetEvmClientFunction } from '../../types'
21
- import { parseRawAmount } from '../../utils/parsing'
22
-
23
- export const formatAavePrice = (price: string, isV2 = false): number => {
24
- return Number(
25
- formatEther(
26
- BigInt(price ?? '0') *
27
- // 10^(18 - decimals)
28
- 10n ** (isV2 ? 0n : 10n),
29
- ),
30
- )
31
- }
32
-
33
- const LENDLE_PAIR_MANTLE = '0x4c57BE599d0e0414785943569E9B6A66dA79Aa6b'
34
- const AU_PAIR_MANTLE = '0x709503fbb50b10f921e812c48fbd5c5522a0b20c'
35
- const WMNT_USDT_PAIR = '0x3e5922cd0cec71dc2d60ec8b36aa4c05b7c1672f'
36
- const RWA_DYNAMIC_ORACLE = '0xA96abbe61AfEdEB0D14a20440Ae7100D9aB4882f'
37
-
38
- interface OracleData {
39
- [key: string]: number
40
- }
41
-
42
- type QueryAave = { oracle: string; assets: string[]; fork: string }
43
-
44
- /**
45
- * Fetches Aave and uniswap V2 oracle data
46
- */
47
- export const fetchMainPrices = async (
48
- chainIds: string[],
49
- getEvmClient: GetEvmClientFunction,
50
- ): Promise<OracleData> => {
51
- let promises = chainIds.map((chainId) => {
52
- const aaveForks = AAVES_PER_CHAIN[chainId]
53
- let reservesToQuery: { fork: string; assets: string[] }[] = aaveForks.map(
54
- (a) => ({ fork: a, assets: getAaveAssets(chainId, a) }),
55
- )
56
- let handled: string[] = []
57
- let queries: QueryAave[] = []
58
- reservesToQuery.forEach((e) => {
59
- const newOnes = e.assets.filter((a) => !handled.includes(a))
60
- if (newOnes.length > 0) {
61
- queries.push({
62
- assets: newOnes,
63
- // @ts-ignore
64
- oracle: AAVE_STYLE_ORACLES[e.fork][chainId],
65
- fork: e.fork,
66
- })
67
- handled = [...handled, ...newOnes]
68
- }
69
- })
70
- const callAave = getAaveCalls(queries)
71
-
72
- const [callsChainLink, chainLinkNames] = getChainLinkCalls(chainId)
73
-
74
- const uniswapV2Calls = getUniswapV2Calls(chainId)
75
-
76
- const [api3Calls, api3Names] = getApi3Calls(chainId)
77
-
78
- const [rwaCalls, rwaNames] = getRWADynamicOracleCalls(chainId)
79
-
80
- return multicallViemAbiArray(
81
- chainId,
82
- [
83
- ...ChainLinkAggregatorAbi,
84
- ...UniswapV2PairAbi,
85
- ...AaveOracleAbi,
86
- ...Api3OracleAbi,
87
- ...RWADynamicOracleAbi,
88
- ],
89
- [
90
- ...callsChainLink,
91
- ...callAave,
92
- ...uniswapV2Calls,
93
- ...api3Calls,
94
- ...rwaCalls,
95
- ],
96
- getEvmClient,
97
- ).then((multicallResult) => {
98
- const chainLinkResults = multicallResult.slice(0, callsChainLink.length)
99
-
100
- const aaveResult = multicallResult.slice(
101
- callsChainLink.length,
102
- callsChainLink.length + callAave.length,
103
- )
104
-
105
- const chainLinkData = parseChainLinkResults(
106
- chainId,
107
- chainLinkResults,
108
- chainLinkNames,
109
- )
110
- // @ts-ignore
111
- const aaveData = parseAaveResults(chainId, aaveResult, queries)
112
-
113
- const uniswapResult = multicallResult.slice(
114
- callsChainLink.length + callAave.length,
115
- callsChainLink.length + callAave.length + uniswapV2Calls.length,
116
- )
117
-
118
- const api3Result = multicallResult.slice(
119
- callsChainLink.length + callAave.length + uniswapV2Calls.length,
120
- callsChainLink.length +
121
- callAave.length +
122
- uniswapV2Calls.length +
123
- api3Calls.length,
124
- )
125
-
126
- const uniswapData = parseUniswapV2results(uniswapResult, chainId)
127
-
128
- const api3Data = parseApi3Results(chainId, api3Result, api3Names)
129
-
130
- const rwaResult = multicallResult.slice(
131
- callsChainLink.length +
132
- callAave.length +
133
- uniswapV2Calls.length +
134
- api3Calls.length,
135
- callsChainLink.length +
136
- callAave.length +
137
- uniswapV2Calls.length +
138
- api3Calls.length +
139
- rwaCalls.length,
140
- )
141
-
142
- const rwaData = parseRWADynamicOracleResults(chainId, rwaResult, rwaNames)
143
- return {
144
- ...uniswapData,
145
- ...aaveData,
146
- ...chainLinkData,
147
- ...api3Data,
148
- ...rwaData,
149
- }
150
- })
151
- })
152
- promises.push(fetchDefillamaData())
153
- const result = await Promise.all(promises)
154
- let data: any = {}
155
- result.forEach((r) => {
156
- data = { ...data, ...r }
157
- })
158
-
159
- return data
160
- }
161
-
162
- /**
163
- * Gets the calls foir the uniswap pools
164
- * @param chainId network id
165
- * @returns array of calls
166
- */
167
- const getUniswapV2Calls = (chainId: string) => {
168
- switch (chainId) {
169
- case Chain.MANTLE:
170
- return [
171
- {
172
- address: WMNT_USDT_PAIR,
173
- name: 'getReserves',
174
- params: [],
175
- },
176
- {
177
- address: LENDLE_PAIR_MANTLE,
178
- name: 'getReserves',
179
- params: [],
180
- },
181
- {
182
- address: AU_PAIR_MANTLE,
183
- name: 'getReserves',
184
- params: [],
185
- },
186
- ]
187
- default:
188
- return []
189
- }
190
- }
191
-
192
- /**
193
- * Create calldata for aave oracles
194
- * @param chainId network
195
- * @param addressesAaveUnderlyings address array
196
- * @returns call data
197
- */
198
- const getAaveCalls = (query: QueryAave[]) => {
199
- if (query.length === 0) return []
200
- return query
201
- .map(({ oracle, assets }) => ({
202
- address: oracle,
203
- name: 'getAssetsPrices',
204
- params: [assets],
205
- }))
206
- .flat()
207
- }
208
-
209
- /**
210
- * Create calldata for chainLink oracles
211
- * @param chainId network
212
- * @param addressesAaveUnderlyings address array
213
- * @returns call data
214
- */
215
- const getChainLinkCalls = (
216
- chainId: string,
217
- ): [
218
- {
219
- address: string
220
- name: string
221
- params: any[]
222
- }[],
223
- string[],
224
- ] => {
225
- switch (chainId) {
226
- case Chain.MANTLE:
227
- return [[], []]
228
- default: {
229
- const keys = getChainLinkKeys(chainId).filter(
230
- (k) => k.split('-')[1] === 'USD',
231
- )
232
- // @ts-ignore
233
- const addresses = keys.map((k) => chainlinkOracles[k][chainId])
234
- return [
235
- addresses.map((tk) => {
236
- return {
237
- address: tk,
238
- name: 'latestRoundData',
239
- params: [],
240
- }
241
- }),
242
- keys.map((k) => k.split('-')[0]),
243
- ]
244
- }
245
- }
246
- }
247
-
248
- /**
249
- * Processes data creeated from fetch through 'getUniswapV2Calls
250
- * @param data the result data array slice from the multicall
251
- * @param chainId network id
252
- * @returns price dictionary asset->number
253
- */
254
- const parseUniswapV2results = (data: any[], chainId: string) => {
255
- switch (chainId) {
256
- case Chain.MANTLE: {
257
- let uniswapData: any = {}
258
- if (data.length > 0) {
259
- const reserves = data[1]
260
- // lendle and wmnt are respective token0s
261
- const lendleReserve = Number(parseRawAmount(reserves[0].toString(), 18))
262
- const wmntReserve = Number(parseRawAmount(reserves[1].toString(), 18))
263
-
264
- const auReserves = data[2]
265
- const auReserve = Number(parseRawAmount(auReserves[1].toString(), 18))
266
- const wmntReserve_au = Number(
267
- parseRawAmount(auReserves[0].toString(), 18),
268
- )
269
-
270
- const reservesWmntUsdt = data[0]
271
- const usdtReserve = Number(
272
- parseRawAmount(reservesWmntUsdt[0].toString(), 6),
273
- )
274
- const wmnt2Reserve = Number(
275
- parseRawAmount(reservesWmntUsdt[1].toString(), 18),
276
- )
277
- const lendPrice =
278
- (wmntReserve / lendleReserve / wmnt2Reserve) * usdtReserve
279
- const auPrice =
280
- (wmntReserve_au / auReserve / wmnt2Reserve) * usdtReserve
281
- uniswapData['LEND'] = lendPrice
282
- uniswapData['AU'] = auPrice
283
- }
284
- return uniswapData
285
- }
286
- default:
287
- return {}
288
- }
289
- }
290
-
291
- function lowDecimalOracle(chainId: string, fork: string) {
292
- // some chains only have high decimal oracles
293
- if (chainId === Chain.AVALANCHE_C_CHAIN || chainId === Chain.MODE) {
294
- return false
295
- }
296
- // otherwise, it depends on whether it is aave V3
297
- return AAVE_V2_LENDERS.includes(fork as any)
298
- }
299
-
300
- /**
301
- * Parser for aave results in ulticall slice
302
- * @param chainId network
303
- * @param data result array slice
304
- * @param assetName asset names (aligned with the originall addresses called)
305
- * @returns price mapping asset->number
306
- */
307
- const parseAaveResults = (
308
- chainId: string,
309
- data: any[],
310
- queries: QueryAave[],
311
- ) => {
312
- let prices: any = {}
313
-
314
- data.forEach((d, i) => {
315
- const details = queries[i]
316
- details.assets.forEach((a, j) => {
317
- const oracleId =
318
- ASSET_META[chainId][a]?.assetGroup ??
319
- ASSET_META[chainId]?.[a]?.symbol ??
320
- chainId + '-' + a
321
- prices[oracleId] = formatAavePrice(
322
- d[j].toString(),
323
- lowDecimalOracle(chainId, details.fork as any),
324
- )
325
- })
326
- })
327
-
328
- return prices
329
- }
330
-
331
- /**
332
- * Parser for aave results in ulticall slice
333
- * @param chainId network
334
- * @param data result array slice
335
- * @param assetName asset names (aligned with the originall addresses called)
336
- * @returns price mapping asset->number
337
- */
338
- const parseChainLinkResults = (
339
- chainId: string,
340
- data: any[],
341
- assetName: string[],
342
- ) => {
343
- switch (chainId) {
344
- default: {
345
- return Object.assign(
346
- {},
347
- ...data.map((entry, index) => {
348
- return {
349
- [assetName[index]]: Number(
350
- parseRawAmount(
351
- entry?.[ChainlinkAggregatorIndexes.answer]?.toString() ?? '0',
352
- 8,
353
- ),
354
- ),
355
- }
356
- }),
357
- )
358
- }
359
- }
360
- }
361
-
362
- /**
363
- * Create calldata for api3 oracles
364
- * @param chainId network
365
- * @returns call data
366
- */
367
- const getApi3Calls = (
368
- chainId: string,
369
- ): [
370
- {
371
- address: string
372
- name: string
373
- params: any[]
374
- }[],
375
- string[],
376
- ] => {
377
- switch (chainId) {
378
- case Chain.MANTLE: {
379
- const keys = ['WETH', 'METH', 'FBTC', 'CMETH']
380
- const addresses = keys.map((k) => api3OracleAddresses[chainId][k])
381
- return [
382
- addresses.map((tk) => {
383
- return {
384
- address: tk,
385
- name: 'read',
386
- params: [],
387
- }
388
- }),
389
- keys,
390
- ]
391
- }
392
- default:
393
- return [[], []]
394
- }
395
- }
396
-
397
- /**
398
- * Parser for api3 results in multicall slice
399
- * @param chainId network
400
- * @param data result array slice
401
- * @param assetName asset names (aligned with the originall addresses called)
402
- * @returns price mapping asset->number
403
- */
404
- const parseApi3Results = (
405
- chainId: string,
406
- data: any[],
407
- assetName: string[],
408
- ) => {
409
- switch (chainId) {
410
- case Chain.MANTLE: {
411
- let prices = Object.assign(
412
- {},
413
- ...data.map((entry, index) => {
414
- return {
415
- [assetName[index]]: Number(
416
- parseRawAmount(entry?.[0]?.toString() ?? '0', 18),
417
- ),
418
- }
419
- }),
420
- )
421
- // METH is given in mETH/WETH
422
- prices['METH'] = prices['METH'] * prices['WETH']
423
- prices['CMETH'] = prices['CMETH'] * prices['METH']
424
- return prices
425
- }
426
- default: {
427
- return {}
428
- }
429
- }
430
- }
431
-
432
- /**
433
- * Create calldata for RWADynamicOracle (wrap rate for musd/usdy)
434
- * @param chainId network
435
- * @returns call data
436
- */
437
- const getRWADynamicOracleCalls = (
438
- chainId: string,
439
- ): [
440
- {
441
- address: string
442
- name: string
443
- params: any[]
444
- }[],
445
- string[],
446
- ] => {
447
- switch (chainId) {
448
- case Chain.MANTLE: {
449
- const keys = ['USDY_MUSD']
450
- return [
451
- [
452
- {
453
- address: RWA_DYNAMIC_ORACLE,
454
- name: 'getPrice',
455
- params: [],
456
- },
457
- ],
458
- keys,
459
- ]
460
- }
461
- default:
462
- return [[], []]
463
- }
464
- }
465
-
466
- /**
467
- * Parser for RWADynamicOracle (wrap rate for musd/usdy) results in multicall slice
468
- * @param chainId network
469
- * @param data result array slice
470
- * @param assetName asset names (aligned with the originall addresses called)
471
- * @returns price mapping asset->number
472
- */
473
- const parseRWADynamicOracleResults = (
474
- chainId: string,
475
- data: any[],
476
- assetName: string[],
477
- ) => {
478
- switch (chainId) {
479
- case Chain.MANTLE: {
480
- let prices = Object.assign(
481
- {},
482
- ...data.map((entry, index) => {
483
- return {
484
- [assetName[index]]: Number(
485
- parseRawAmount(entry?.toString() ?? '0', 18),
486
- ),
487
- }
488
- }),
489
- )
490
- return prices
491
- }
492
- default: {
493
- return {}
494
- }
495
- }
496
- }
@@ -1 +0,0 @@
1
- export * from "./fetchOracleData"
@@ -1,80 +0,0 @@
1
- export interface BaseYields {
2
- // borrow interest rates
3
- variableBorrowRate: number
4
- stableBorrowRate: number
5
- // deposit interest rate
6
- depositRate: number
7
- }
8
-
9
- export type RewardsMap = { [rewardId: string]: BaseYields }
10
-
11
- export interface LenderYields extends BaseYields {
12
- // staking
13
- stakingYield: number
14
-
15
- // rewards
16
- rewards?: RewardsMap
17
- }
18
-
19
- export interface ConfigEntry {
20
- category: number;
21
- borrowCollateralFactor: number;
22
- collateralFactor: number;
23
- borrowFactor: number;
24
- }
25
-
26
- interface PoolConfig {
27
- [category: number]: ConfigEntry;
28
- }
29
-
30
- interface EMode {
31
- category: number;
32
- label: string;
33
- borrowCollateralFactor: number;
34
- collateralFactor: number;
35
- borrowFactor: number;
36
- }
37
-
38
- export interface PoolData {
39
- poolId: string;
40
- underlying: string;
41
- totalDeposits: string;
42
- totalDebtStable: string;
43
- totalDebt: string;
44
- totalLiquidity: number;
45
- totalDepositsUSD: number;
46
- totalDebtStableUSD: number;
47
- totalDebtUSD: number;
48
- totalLiquidityUSD: number;
49
- depositRate: number;
50
- variableBorrowRate: number;
51
- stableBorrowRate: number;
52
- stakingYield: number;
53
- rewards: RewardsMap;
54
- decimals: number;
55
- config: PoolConfig;
56
- collateralActive: boolean;
57
- borrowingEnabled: boolean;
58
- hasStable: boolean;
59
- isActive: boolean;
60
- isFrozen: boolean;
61
- eMode: EMode;
62
- borrowCap: number;
63
- supplyCap: number;
64
- debtCeiling: string;
65
- }
66
-
67
- export type LenderData = {
68
- [chainId: string]: {
69
- data: {
70
- [lender: string]: {
71
- data: {
72
- [poolId: string]: PoolData
73
- },
74
- eModes: { [modeId: number]: EMode }
75
- chainId: string
76
- }
77
- },
78
- lastFetched: number
79
- }
80
- }
@@ -1,38 +0,0 @@
1
- export * from "./apiReturnType"
2
-
3
- export interface ParsedResponse {
4
- price: number
5
- time: number
6
- }
7
- export interface ChainLinkResponse extends ParsedResponse {
8
- roundId: number
9
- }
10
-
11
- export enum ChainlinkAggregatorIndexes {
12
- roundId = 0,
13
- answer,
14
- startedAt,
15
- updatedAt,
16
- answeredInRound
17
- }
18
-
19
- interface LenderRewardsEntry {
20
- deposit: number
21
- borrow: number
22
- }
23
-
24
- export type LenderRewardsMap = { [key: string]: LenderRewardsEntry }
25
- export type NumberMap = { [key: string]: number }
26
- export type FullLenderRewardsMap = { [chainId: string]: { [lender: string]: LenderRewardsMap } }
27
- export type AdditionalYields = {
28
- intrinsicYields: NumberMap
29
- lenderRewards: FullLenderRewardsMap
30
- loaded: boolean
31
- }
32
- export declare interface GeneralCall {
33
- address: string // Address of the contract
34
- name: string // Function name on the contract (example: balanceOf)
35
- params?: any[] // Function params
36
- }
37
-
38
- export * from "./providers"
@@ -1,26 +0,0 @@
1
- import { PublicClient } from 'viem'
2
-
3
- export type MulticallRetryFunction = (
4
- chain: string,
5
- calls: any[],
6
- abi: any,
7
- batchSize?: number,
8
- maxRetries?: number,
9
- providerId?: number,
10
- allowFailure?: boolean
11
- ) => Promise<any[]>
12
-
13
- export type GetEvmClientFunction = (
14
- chain: string,
15
- rpcId?: number
16
- ) => PublicClient
17
-
18
- export interface ProviderDependencies {
19
- multicallRetry: MulticallRetryFunction
20
- getEvmClient: GetEvmClientFunction
21
- }
22
-
23
- export interface OptionalProviderDependencies {
24
- multicallRetry?: MulticallRetryFunction
25
- getEvmClient?: GetEvmClientFunction
26
- }