@mento-protocol/mento-sdk 3.0.0-beta.26 → 3.0.0-beta.27

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 (433) hide show
  1. package/package.json +1 -1
  2. package/dist/cache/routes.d.ts +0 -13
  3. package/dist/cache/routes.d.ts.map +0 -1
  4. package/dist/cache/routes.js +0 -11483
  5. package/dist/cache/routes.js.map +0 -1
  6. package/dist/cache/tokens.d.ts +0 -67
  7. package/dist/cache/tokens.d.ts.map +0 -1
  8. package/dist/cache/tokens.js +0 -379
  9. package/dist/cache/tokens.js.map +0 -1
  10. package/dist/core/abis/activePool.d.ts +0 -2
  11. package/dist/core/abis/activePool.d.ts.map +0 -1
  12. package/dist/core/abis/activePool.js +0 -14
  13. package/dist/core/abis/activePool.js.map +0 -1
  14. package/dist/core/abis/addressesRegistry.d.ts +0 -2
  15. package/dist/core/abis/addressesRegistry.d.ts.map +0 -1
  16. package/dist/core/abis/addressesRegistry.js +0 -26
  17. package/dist/core/abis/addressesRegistry.js.map +0 -1
  18. package/dist/core/abis/bipoolmanager.d.ts +0 -34
  19. package/dist/core/abis/bipoolmanager.d.ts.map +0 -1
  20. package/dist/core/abis/bipoolmanager.js +0 -72
  21. package/dist/core/abis/bipoolmanager.js.map +0 -1
  22. package/dist/core/abis/borrowerOperations.d.ts +0 -9
  23. package/dist/core/abis/borrowerOperations.d.ts.map +0 -1
  24. package/dist/core/abis/borrowerOperations.js +0 -89
  25. package/dist/core/abis/borrowerOperations.js.map +0 -1
  26. package/dist/core/abis/breakerbox.d.ts +0 -13
  27. package/dist/core/abis/breakerbox.d.ts.map +0 -1
  28. package/dist/core/abis/breakerbox.js +0 -8
  29. package/dist/core/abis/breakerbox.js.map +0 -1
  30. package/dist/core/abis/broker.d.ts +0 -2
  31. package/dist/core/abis/broker.d.ts.map +0 -1
  32. package/dist/core/abis/broker.js +0 -9
  33. package/dist/core/abis/broker.js.map +0 -1
  34. package/dist/core/abis/erc20.d.ts +0 -9
  35. package/dist/core/abis/erc20.d.ts.map +0 -1
  36. package/dist/core/abis/erc20.js +0 -21
  37. package/dist/core/abis/erc20.js.map +0 -1
  38. package/dist/core/abis/fpmm.d.ts +0 -270
  39. package/dist/core/abis/fpmm.d.ts.map +0 -1
  40. package/dist/core/abis/fpmm.js +0 -49
  41. package/dist/core/abis/fpmm.js.map +0 -1
  42. package/dist/core/abis/fpmmFactory.d.ts +0 -85
  43. package/dist/core/abis/fpmmFactory.d.ts.map +0 -1
  44. package/dist/core/abis/fpmmFactory.js +0 -26
  45. package/dist/core/abis/fpmmFactory.js.map +0 -1
  46. package/dist/core/abis/hintHelpers.d.ts +0 -2
  47. package/dist/core/abis/hintHelpers.d.ts.map +0 -1
  48. package/dist/core/abis/hintHelpers.js +0 -14
  49. package/dist/core/abis/hintHelpers.js.map +0 -1
  50. package/dist/core/abis/index.d.ts +0 -22
  51. package/dist/core/abis/index.d.ts.map +0 -1
  52. package/dist/core/abis/index.js +0 -38
  53. package/dist/core/abis/index.js.map +0 -1
  54. package/dist/core/abis/multiTroveGetter.d.ts +0 -8
  55. package/dist/core/abis/multiTroveGetter.d.ts.map +0 -1
  56. package/dist/core/abis/multiTroveGetter.js +0 -15
  57. package/dist/core/abis/multiTroveGetter.js.map +0 -1
  58. package/dist/core/abis/priceFeed.d.ts +0 -7
  59. package/dist/core/abis/priceFeed.d.ts.map +0 -1
  60. package/dist/core/abis/priceFeed.js +0 -16
  61. package/dist/core/abis/priceFeed.js.map +0 -1
  62. package/dist/core/abis/pricingmodule.d.ts +0 -2
  63. package/dist/core/abis/pricingmodule.d.ts.map +0 -1
  64. package/dist/core/abis/pricingmodule.js +0 -6
  65. package/dist/core/abis/pricingmodule.js.map +0 -1
  66. package/dist/core/abis/reserve.d.ts +0 -2
  67. package/dist/core/abis/reserve.d.ts.map +0 -1
  68. package/dist/core/abis/reserve.js +0 -10
  69. package/dist/core/abis/reserve.js.map +0 -1
  70. package/dist/core/abis/router.d.ts +0 -521
  71. package/dist/core/abis/router.d.ts.map +0 -1
  72. package/dist/core/abis/router.js +0 -45
  73. package/dist/core/abis/router.js.map +0 -1
  74. package/dist/core/abis/sortedTroves.d.ts +0 -2
  75. package/dist/core/abis/sortedTroves.d.ts.map +0 -1
  76. package/dist/core/abis/sortedTroves.js +0 -15
  77. package/dist/core/abis/sortedTroves.js.map +0 -1
  78. package/dist/core/abis/systemParams.d.ts +0 -2
  79. package/dist/core/abis/systemParams.d.ts.map +0 -1
  80. package/dist/core/abis/systemParams.js +0 -14
  81. package/dist/core/abis/systemParams.js.map +0 -1
  82. package/dist/core/abis/troveManager.d.ts +0 -2
  83. package/dist/core/abis/troveManager.d.ts.map +0 -1
  84. package/dist/core/abis/troveManager.js +0 -27
  85. package/dist/core/abis/troveManager.js.map +0 -1
  86. package/dist/core/abis/troveNFT.d.ts +0 -2
  87. package/dist/core/abis/troveNFT.d.ts.map +0 -1
  88. package/dist/core/abis/troveNFT.js +0 -9
  89. package/dist/core/abis/troveNFT.js.map +0 -1
  90. package/dist/core/abis/uniswapV3.d.ts +0 -4
  91. package/dist/core/abis/uniswapV3.d.ts.map +0 -1
  92. package/dist/core/abis/uniswapV3.js +0 -16
  93. package/dist/core/abis/uniswapV3.js.map +0 -1
  94. package/dist/core/abis/virtualPool.d.ts +0 -50
  95. package/dist/core/abis/virtualPool.d.ts.map +0 -1
  96. package/dist/core/abis/virtualPool.js +0 -11
  97. package/dist/core/abis/virtualPool.js.map +0 -1
  98. package/dist/core/abis/virtualPoolFactory.d.ts +0 -59
  99. package/dist/core/abis/virtualPoolFactory.d.ts.map +0 -1
  100. package/dist/core/abis/virtualPoolFactory.js +0 -17
  101. package/dist/core/abis/virtualPoolFactory.js.map +0 -1
  102. package/dist/core/constants/aaveConfig.d.ts +0 -7
  103. package/dist/core/constants/aaveConfig.d.ts.map +0 -1
  104. package/dist/core/constants/aaveConfig.js +0 -22
  105. package/dist/core/constants/aaveConfig.js.map +0 -1
  106. package/dist/core/constants/addresses.d.ts +0 -13
  107. package/dist/core/constants/addresses.d.ts.map +0 -1
  108. package/dist/core/constants/addresses.js +0 -83
  109. package/dist/core/constants/addresses.js.map +0 -1
  110. package/dist/core/constants/borrowConstants.d.ts +0 -10
  111. package/dist/core/constants/borrowConstants.d.ts.map +0 -1
  112. package/dist/core/constants/borrowConstants.js +0 -16
  113. package/dist/core/constants/borrowConstants.js.map +0 -1
  114. package/dist/core/constants/borrowRegistries.d.ts +0 -7
  115. package/dist/core/constants/borrowRegistries.d.ts.map +0 -1
  116. package/dist/core/constants/borrowRegistries.js +0 -31
  117. package/dist/core/constants/borrowRegistries.js.map +0 -1
  118. package/dist/core/constants/chainId.d.ts +0 -5
  119. package/dist/core/constants/chainId.d.ts.map +0 -1
  120. package/dist/core/constants/chainId.js +0 -9
  121. package/dist/core/constants/chainId.js.map +0 -1
  122. package/dist/core/constants/contractNames.d.ts +0 -21
  123. package/dist/core/constants/contractNames.d.ts.map +0 -1
  124. package/dist/core/constants/contractNames.js +0 -24
  125. package/dist/core/constants/contractNames.js.map +0 -1
  126. package/dist/core/constants/index.d.ts +0 -9
  127. package/dist/core/constants/index.d.ts.map +0 -1
  128. package/dist/core/constants/index.js +0 -25
  129. package/dist/core/constants/index.js.map +0 -1
  130. package/dist/core/constants/mentoAddresses.d.ts +0 -7
  131. package/dist/core/constants/mentoAddresses.d.ts.map +0 -1
  132. package/dist/core/constants/mentoAddresses.js +0 -10
  133. package/dist/core/constants/mentoAddresses.js.map +0 -1
  134. package/dist/core/constants/protocolAddresses.d.ts +0 -5
  135. package/dist/core/constants/protocolAddresses.d.ts.map +0 -1
  136. package/dist/core/constants/protocolAddresses.js +0 -8
  137. package/dist/core/constants/protocolAddresses.js.map +0 -1
  138. package/dist/core/errors/base.d.ts +0 -8
  139. package/dist/core/errors/base.d.ts.map +0 -1
  140. package/dist/core/errors/base.js +0 -17
  141. package/dist/core/errors/base.js.map +0 -1
  142. package/dist/core/errors/index.d.ts +0 -4
  143. package/dist/core/errors/index.d.ts.map +0 -1
  144. package/dist/core/errors/index.js +0 -20
  145. package/dist/core/errors/index.js.map +0 -1
  146. package/dist/core/errors/oracle.d.ts +0 -9
  147. package/dist/core/errors/oracle.d.ts.map +0 -1
  148. package/dist/core/errors/oracle.js +0 -15
  149. package/dist/core/errors/oracle.js.map +0 -1
  150. package/dist/core/errors/router.d.ts +0 -14
  151. package/dist/core/errors/router.d.ts.map +0 -1
  152. package/dist/core/errors/router.js +0 -24
  153. package/dist/core/errors/router.js.map +0 -1
  154. package/dist/core/types/borrow.d.ts +0 -87
  155. package/dist/core/types/borrow.d.ts.map +0 -1
  156. package/dist/core/types/borrow.js +0 -3
  157. package/dist/core/types/borrow.js.map +0 -1
  158. package/dist/core/types/contractAddresses.d.ts +0 -41
  159. package/dist/core/types/contractAddresses.d.ts.map +0 -1
  160. package/dist/core/types/contractAddresses.js +0 -3
  161. package/dist/core/types/contractAddresses.js.map +0 -1
  162. package/dist/core/types/index.d.ts +0 -10
  163. package/dist/core/types/index.d.ts.map +0 -1
  164. package/dist/core/types/index.js +0 -26
  165. package/dist/core/types/index.js.map +0 -1
  166. package/dist/core/types/liquidity.d.ts +0 -117
  167. package/dist/core/types/liquidity.d.ts.map +0 -1
  168. package/dist/core/types/liquidity.js +0 -3
  169. package/dist/core/types/liquidity.js.map +0 -1
  170. package/dist/core/types/pool.d.ts +0 -145
  171. package/dist/core/types/pool.d.ts.map +0 -1
  172. package/dist/core/types/pool.js +0 -14
  173. package/dist/core/types/pool.js.map +0 -1
  174. package/dist/core/types/provider.d.ts +0 -45
  175. package/dist/core/types/provider.d.ts.map +0 -1
  176. package/dist/core/types/provider.js +0 -3
  177. package/dist/core/types/provider.js.map +0 -1
  178. package/dist/core/types/route.d.ts +0 -62
  179. package/dist/core/types/route.d.ts.map +0 -1
  180. package/dist/core/types/route.js +0 -3
  181. package/dist/core/types/route.js.map +0 -1
  182. package/dist/core/types/token.d.ts +0 -35
  183. package/dist/core/types/token.d.ts.map +0 -1
  184. package/dist/core/types/token.js +0 -3
  185. package/dist/core/types/token.js.map +0 -1
  186. package/dist/core/types/tradingLimits.d.ts +0 -91
  187. package/dist/core/types/tradingLimits.d.ts.map +0 -1
  188. package/dist/core/types/tradingLimits.js +0 -3
  189. package/dist/core/types/tradingLimits.js.map +0 -1
  190. package/dist/core/types/tradingMode.d.ts +0 -24
  191. package/dist/core/types/tradingMode.d.ts.map +0 -1
  192. package/dist/core/types/tradingMode.js +0 -31
  193. package/dist/core/types/tradingMode.js.map +0 -1
  194. package/dist/core/types/transaction.d.ts +0 -45
  195. package/dist/core/types/transaction.d.ts.map +0 -1
  196. package/dist/core/types/transaction.js +0 -3
  197. package/dist/core/types/transaction.js.map +0 -1
  198. package/dist/index.d.ts +0 -87
  199. package/dist/index.d.ts.map +0 -1
  200. package/dist/index.js +0 -136
  201. package/dist/index.js.map +0 -1
  202. package/dist/services/borrow/BorrowService.d.ts +0 -54
  203. package/dist/services/borrow/BorrowService.d.ts.map +0 -1
  204. package/dist/services/borrow/BorrowService.js +0 -129
  205. package/dist/services/borrow/BorrowService.js.map +0 -1
  206. package/dist/services/borrow/borrowHelpers.d.ts +0 -4
  207. package/dist/services/borrow/borrowHelpers.d.ts.map +0 -1
  208. package/dist/services/borrow/borrowHelpers.js +0 -13
  209. package/dist/services/borrow/borrowHelpers.js.map +0 -1
  210. package/dist/services/borrow/borrowMath.d.ts +0 -13
  211. package/dist/services/borrow/borrowMath.d.ts.map +0 -1
  212. package/dist/services/borrow/borrowMath.js +0 -129
  213. package/dist/services/borrow/borrowMath.js.map +0 -1
  214. package/dist/services/borrow/index.d.ts +0 -2
  215. package/dist/services/borrow/index.d.ts.map +0 -1
  216. package/dist/services/borrow/index.js +0 -18
  217. package/dist/services/borrow/index.js.map +0 -1
  218. package/dist/services/borrow/internal/borrowApprovalService.d.ts +0 -14
  219. package/dist/services/borrow/internal/borrowApprovalService.d.ts.map +0 -1
  220. package/dist/services/borrow/internal/borrowApprovalService.js +0 -53
  221. package/dist/services/borrow/internal/borrowApprovalService.js.map +0 -1
  222. package/dist/services/borrow/internal/borrowContextStore.d.ts +0 -11
  223. package/dist/services/borrow/internal/borrowContextStore.d.ts.map +0 -1
  224. package/dist/services/borrow/internal/borrowContextStore.js +0 -40
  225. package/dist/services/borrow/internal/borrowContextStore.js.map +0 -1
  226. package/dist/services/borrow/internal/borrowErc20.d.ts +0 -5
  227. package/dist/services/borrow/internal/borrowErc20.d.ts.map +0 -1
  228. package/dist/services/borrow/internal/borrowErc20.js +0 -43
  229. package/dist/services/borrow/internal/borrowErc20.js.map +0 -1
  230. package/dist/services/borrow/internal/borrowHints.d.ts +0 -7
  231. package/dist/services/borrow/internal/borrowHints.d.ts.map +0 -1
  232. package/dist/services/borrow/internal/borrowHints.js +0 -31
  233. package/dist/services/borrow/internal/borrowHints.js.map +0 -1
  234. package/dist/services/borrow/internal/borrowPositionParser.d.ts +0 -4
  235. package/dist/services/borrow/internal/borrowPositionParser.d.ts.map +0 -1
  236. package/dist/services/borrow/internal/borrowPositionParser.js +0 -87
  237. package/dist/services/borrow/internal/borrowPositionParser.js.map +0 -1
  238. package/dist/services/borrow/internal/borrowReadService.d.ts +0 -28
  239. package/dist/services/borrow/internal/borrowReadService.d.ts.map +0 -1
  240. package/dist/services/borrow/internal/borrowReadService.js +0 -218
  241. package/dist/services/borrow/internal/borrowReadService.js.map +0 -1
  242. package/dist/services/borrow/internal/borrowRegistryReader.d.ts +0 -5
  243. package/dist/services/borrow/internal/borrowRegistryReader.d.ts.map +0 -1
  244. package/dist/services/borrow/internal/borrowRegistryReader.js +0 -96
  245. package/dist/services/borrow/internal/borrowRegistryReader.js.map +0 -1
  246. package/dist/services/borrow/internal/borrowTransactionService.d.ts +0 -23
  247. package/dist/services/borrow/internal/borrowTransactionService.d.ts.map +0 -1
  248. package/dist/services/borrow/internal/borrowTransactionService.js +0 -276
  249. package/dist/services/borrow/internal/borrowTransactionService.js.map +0 -1
  250. package/dist/services/borrow/internal/borrowTypes.d.ts +0 -15
  251. package/dist/services/borrow/internal/borrowTypes.d.ts.map +0 -1
  252. package/dist/services/borrow/internal/borrowTypes.js +0 -3
  253. package/dist/services/borrow/internal/borrowTypes.js.map +0 -1
  254. package/dist/services/borrow/internal/borrowValidation.d.ts +0 -13
  255. package/dist/services/borrow/internal/borrowValidation.d.ts.map +0 -1
  256. package/dist/services/borrow/internal/borrowValidation.js +0 -96
  257. package/dist/services/borrow/internal/borrowValidation.js.map +0 -1
  258. package/dist/services/index.d.ts +0 -9
  259. package/dist/services/index.d.ts.map +0 -1
  260. package/dist/services/index.js +0 -25
  261. package/dist/services/index.js.map +0 -1
  262. package/dist/services/liquidity/LiquidityService.d.ts +0 -154
  263. package/dist/services/liquidity/LiquidityService.d.ts.map +0 -1
  264. package/dist/services/liquidity/LiquidityService.js +0 -184
  265. package/dist/services/liquidity/LiquidityService.js.map +0 -1
  266. package/dist/services/liquidity/basicLiquidity.d.ts +0 -11
  267. package/dist/services/liquidity/basicLiquidity.d.ts.map +0 -1
  268. package/dist/services/liquidity/basicLiquidity.js +0 -172
  269. package/dist/services/liquidity/basicLiquidity.js.map +0 -1
  270. package/dist/services/liquidity/index.d.ts +0 -2
  271. package/dist/services/liquidity/index.d.ts.map +0 -1
  272. package/dist/services/liquidity/index.js +0 -18
  273. package/dist/services/liquidity/index.js.map +0 -1
  274. package/dist/services/liquidity/liquidityHelpers.d.ts +0 -13
  275. package/dist/services/liquidity/liquidityHelpers.d.ts.map +0 -1
  276. package/dist/services/liquidity/liquidityHelpers.js +0 -74
  277. package/dist/services/liquidity/liquidityHelpers.js.map +0 -1
  278. package/dist/services/liquidity/zapHelpers.d.ts +0 -66
  279. package/dist/services/liquidity/zapHelpers.d.ts.map +0 -1
  280. package/dist/services/liquidity/zapHelpers.js +0 -133
  281. package/dist/services/liquidity/zapHelpers.js.map +0 -1
  282. package/dist/services/liquidity/zapIn.d.ts +0 -17
  283. package/dist/services/liquidity/zapIn.d.ts.map +0 -1
  284. package/dist/services/liquidity/zapIn.js +0 -125
  285. package/dist/services/liquidity/zapIn.js.map +0 -1
  286. package/dist/services/liquidity/zapOut.d.ts +0 -17
  287. package/dist/services/liquidity/zapOut.d.ts.map +0 -1
  288. package/dist/services/liquidity/zapOut.js +0 -242
  289. package/dist/services/liquidity/zapOut.js.map +0 -1
  290. package/dist/services/pools/PoolService.d.ts +0 -62
  291. package/dist/services/pools/PoolService.d.ts.map +0 -1
  292. package/dist/services/pools/PoolService.js +0 -110
  293. package/dist/services/pools/PoolService.js.map +0 -1
  294. package/dist/services/pools/index.d.ts +0 -2
  295. package/dist/services/pools/index.d.ts.map +0 -1
  296. package/dist/services/pools/index.js +0 -18
  297. package/dist/services/pools/index.js.map +0 -1
  298. package/dist/services/pools/poolDetails.d.ts +0 -11
  299. package/dist/services/pools/poolDetails.d.ts.map +0 -1
  300. package/dist/services/pools/poolDetails.js +0 -151
  301. package/dist/services/pools/poolDetails.js.map +0 -1
  302. package/dist/services/pools/poolDiscovery.d.ts +0 -12
  303. package/dist/services/pools/poolDiscovery.d.ts.map +0 -1
  304. package/dist/services/pools/poolDiscovery.js +0 -114
  305. package/dist/services/pools/poolDiscovery.js.map +0 -1
  306. package/dist/services/quotes/QuoteService.d.ts +0 -50
  307. package/dist/services/quotes/QuoteService.d.ts.map +0 -1
  308. package/dist/services/quotes/QuoteService.js +0 -88
  309. package/dist/services/quotes/QuoteService.js.map +0 -1
  310. package/dist/services/quotes/index.d.ts +0 -2
  311. package/dist/services/quotes/index.d.ts.map +0 -1
  312. package/dist/services/quotes/index.js +0 -18
  313. package/dist/services/quotes/index.js.map +0 -1
  314. package/dist/services/routes/RouteService.d.ts +0 -109
  315. package/dist/services/routes/RouteService.d.ts.map +0 -1
  316. package/dist/services/routes/RouteService.js +0 -239
  317. package/dist/services/routes/RouteService.js.map +0 -1
  318. package/dist/services/routes/index.d.ts +0 -2
  319. package/dist/services/routes/index.d.ts.map +0 -1
  320. package/dist/services/routes/index.js +0 -18
  321. package/dist/services/routes/index.js.map +0 -1
  322. package/dist/services/swap/SwapService.d.ts +0 -162
  323. package/dist/services/swap/SwapService.d.ts.map +0 -1
  324. package/dist/services/swap/SwapService.js +0 -181
  325. package/dist/services/swap/SwapService.js.map +0 -1
  326. package/dist/services/swap/index.d.ts +0 -2
  327. package/dist/services/swap/index.d.ts.map +0 -1
  328. package/dist/services/swap/index.js +0 -18
  329. package/dist/services/swap/index.js.map +0 -1
  330. package/dist/services/tokens/index.d.ts +0 -2
  331. package/dist/services/tokens/index.d.ts.map +0 -1
  332. package/dist/services/tokens/index.js +0 -18
  333. package/dist/services/tokens/index.js.map +0 -1
  334. package/dist/services/tokens/supply/ISupplyCalculator.d.ts +0 -14
  335. package/dist/services/tokens/supply/ISupplyCalculator.d.ts.map +0 -1
  336. package/dist/services/tokens/supply/ISupplyCalculator.js +0 -3
  337. package/dist/services/tokens/supply/ISupplyCalculator.js.map +0 -1
  338. package/dist/services/tokens/supply/aaveSupplyCalculator.d.ts +0 -22
  339. package/dist/services/tokens/supply/aaveSupplyCalculator.d.ts.map +0 -1
  340. package/dist/services/tokens/supply/aaveSupplyCalculator.js +0 -46
  341. package/dist/services/tokens/supply/aaveSupplyCalculator.js.map +0 -1
  342. package/dist/services/tokens/supply/calculatorFactory.d.ts +0 -8
  343. package/dist/services/tokens/supply/calculatorFactory.d.ts.map +0 -1
  344. package/dist/services/tokens/supply/calculatorFactory.js +0 -3
  345. package/dist/services/tokens/supply/calculatorFactory.js.map +0 -1
  346. package/dist/services/tokens/supply/defaultCalculatorFactory.d.ts +0 -9
  347. package/dist/services/tokens/supply/defaultCalculatorFactory.d.ts.map +0 -1
  348. package/dist/services/tokens/supply/defaultCalculatorFactory.js +0 -28
  349. package/dist/services/tokens/supply/defaultCalculatorFactory.js.map +0 -1
  350. package/dist/services/tokens/supply/index.d.ts +0 -7
  351. package/dist/services/tokens/supply/index.d.ts.map +0 -1
  352. package/dist/services/tokens/supply/index.js +0 -23
  353. package/dist/services/tokens/supply/index.js.map +0 -1
  354. package/dist/services/tokens/supply/multisigSupplyCalculator.d.ts +0 -9
  355. package/dist/services/tokens/supply/multisigSupplyCalculator.d.ts.map +0 -1
  356. package/dist/services/tokens/supply/multisigSupplyCalculator.js +0 -33
  357. package/dist/services/tokens/supply/multisigSupplyCalculator.js.map +0 -1
  358. package/dist/services/tokens/supply/uniV3SupplyCalculator.d.ts +0 -21
  359. package/dist/services/tokens/supply/uniV3SupplyCalculator.d.ts.map +0 -1
  360. package/dist/services/tokens/supply/uniV3SupplyCalculator.js +0 -238
  361. package/dist/services/tokens/supply/uniV3SupplyCalculator.js.map +0 -1
  362. package/dist/services/tokens/supplyAdjustmentService.d.ts +0 -15
  363. package/dist/services/tokens/supplyAdjustmentService.d.ts.map +0 -1
  364. package/dist/services/tokens/supplyAdjustmentService.js +0 -44
  365. package/dist/services/tokens/supplyAdjustmentService.js.map +0 -1
  366. package/dist/services/tokens/tokenService.d.ts +0 -33
  367. package/dist/services/tokens/tokenService.d.ts.map +0 -1
  368. package/dist/services/tokens/tokenService.js +0 -136
  369. package/dist/services/tokens/tokenService.js.map +0 -1
  370. package/dist/services/trading/TradingLimitsService.d.ts +0 -38
  371. package/dist/services/trading/TradingLimitsService.d.ts.map +0 -1
  372. package/dist/services/trading/TradingLimitsService.js +0 -157
  373. package/dist/services/trading/TradingLimitsService.js.map +0 -1
  374. package/dist/services/trading/TradingService.d.ts +0 -110
  375. package/dist/services/trading/TradingService.d.ts.map +0 -1
  376. package/dist/services/trading/TradingService.js +0 -162
  377. package/dist/services/trading/TradingService.js.map +0 -1
  378. package/dist/services/trading/index.d.ts +0 -3
  379. package/dist/services/trading/index.d.ts.map +0 -1
  380. package/dist/services/trading/index.js +0 -19
  381. package/dist/services/trading/index.js.map +0 -1
  382. package/dist/utils/chainConfig.d.ts +0 -16
  383. package/dist/utils/chainConfig.d.ts.map +0 -1
  384. package/dist/utils/chainConfig.js +0 -62
  385. package/dist/utils/chainConfig.js.map +0 -1
  386. package/dist/utils/costUtils.d.ts +0 -12
  387. package/dist/utils/costUtils.d.ts.map +0 -1
  388. package/dist/utils/costUtils.js +0 -59
  389. package/dist/utils/costUtils.js.map +0 -1
  390. package/dist/utils/deadline.d.ts +0 -21
  391. package/dist/utils/deadline.d.ts.map +0 -1
  392. package/dist/utils/deadline.js +0 -26
  393. package/dist/utils/deadline.js.map +0 -1
  394. package/dist/utils/index.d.ts +0 -10
  395. package/dist/utils/index.d.ts.map +0 -1
  396. package/dist/utils/index.js +0 -26
  397. package/dist/utils/index.js.map +0 -1
  398. package/dist/utils/pathEncoder.d.ts +0 -34
  399. package/dist/utils/pathEncoder.d.ts.map +0 -1
  400. package/dist/utils/pathEncoder.js +0 -73
  401. package/dist/utils/pathEncoder.js.map +0 -1
  402. package/dist/utils/rateFeed.d.ts +0 -18
  403. package/dist/utils/rateFeed.d.ts.map +0 -1
  404. package/dist/utils/rateFeed.js +0 -27
  405. package/dist/utils/rateFeed.js.map +0 -1
  406. package/dist/utils/retry.d.ts +0 -12
  407. package/dist/utils/retry.d.ts.map +0 -1
  408. package/dist/utils/retry.js +0 -28
  409. package/dist/utils/retry.js.map +0 -1
  410. package/dist/utils/routeUtils.d.ts +0 -295
  411. package/dist/utils/routeUtils.d.ts.map +0 -1
  412. package/dist/utils/routeUtils.js +0 -371
  413. package/dist/utils/routeUtils.js.map +0 -1
  414. package/dist/utils/routes.d.ts +0 -3
  415. package/dist/utils/routes.d.ts.map +0 -1
  416. package/dist/utils/routes.js +0 -8
  417. package/dist/utils/routes.js.map +0 -1
  418. package/dist/utils/sortUtils.d.ts +0 -24
  419. package/dist/utils/sortUtils.d.ts.map +0 -1
  420. package/dist/utils/sortUtils.js +0 -39
  421. package/dist/utils/sortUtils.js.map +0 -1
  422. package/dist/utils/tokens.d.ts +0 -2
  423. package/dist/utils/tokens.d.ts.map +0 -1
  424. package/dist/utils/tokens.js +0 -13
  425. package/dist/utils/tokens.js.map +0 -1
  426. package/dist/utils/tradingLimits.d.ts +0 -41
  427. package/dist/utils/tradingLimits.d.ts.map +0 -1
  428. package/dist/utils/tradingLimits.js +0 -171
  429. package/dist/utils/tradingLimits.js.map +0 -1
  430. package/dist/utils/validation.d.ts +0 -19
  431. package/dist/utils/validation.d.ts.map +0 -1
  432. package/dist/utils/validation.js +0 -34
  433. package/dist/utils/validation.js.map +0 -1
@@ -1,238 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UniV3SupplyCalculator = void 0;
7
- const abis_1 = require("../../../core/abis");
8
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
- const utils_1 = require("../../../utils");
10
- const BATCH_SIZE = 5;
11
- const BATCH_DELAY = 100;
12
- class UniV3SupplyCalculator {
13
- constructor(publicClient, positionManagerAddress, factoryAddress, governanceAddress) {
14
- this.publicClient = publicClient;
15
- this.positionManagerAddress = positionManagerAddress;
16
- this.factoryAddress = factoryAddress;
17
- this.governanceAddress = governanceAddress;
18
- this.decimalsCache = new Map();
19
- this.poolCache = new Map();
20
- }
21
- async getAmount(tokenAddress) {
22
- try {
23
- const positions = await this.getPositionTokenIds();
24
- if (positions.length === 0)
25
- return 0n;
26
- let totalAmount = new bignumber_js_1.default(0);
27
- // Process positions in batches
28
- for (let i = 0; i < positions.length; i += BATCH_SIZE) {
29
- const batchPositions = positions.slice(i, i + BATCH_SIZE);
30
- const batchAmount = await (0, utils_1.retryOperation)(() => this.processPositionBatch(batchPositions, tokenAddress));
31
- totalAmount = totalAmount.plus(batchAmount);
32
- if (i + BATCH_SIZE < positions.length) {
33
- await new Promise((resolve) => setTimeout(resolve, BATCH_DELAY));
34
- }
35
- }
36
- // Convert to bigint, considering token decimals
37
- const decimals = await this.getTokenDecimals(tokenAddress);
38
- try {
39
- const rawAmount = totalAmount
40
- .integerValue(bignumber_js_1.default.ROUND_DOWN)
41
- .abs() // Take absolute value as signs are handled by adjustment service
42
- .toString(10);
43
- // Remove any decimal points and handle scientific notation
44
- const cleanAmount = this.normalizeNumberString(rawAmount);
45
- return BigInt(cleanAmount);
46
- }
47
- catch (error) {
48
- console.error('Error converting to bigint:', {
49
- totalAmount: totalAmount.toString(),
50
- decimals,
51
- error,
52
- });
53
- return 0n;
54
- }
55
- }
56
- catch (error) {
57
- const errorMessage = `Univ3SupplyCalculator: Failed to calculate supply for token ${tokenAddress}: ${error}`;
58
- throw new Error(errorMessage);
59
- }
60
- }
61
- normalizeNumberString(value) {
62
- if (value.includes('e')) {
63
- const [mantissa, exponent] = value.split('e');
64
- const e = parseInt(exponent);
65
- if (e > 0) {
66
- return mantissa.replace('.', '') + '0'.repeat(e);
67
- }
68
- return '0';
69
- }
70
- return value.split('.')[0];
71
- }
72
- async calculatePositionAmount(position, slot0, targetToken) {
73
- const liquidity = new bignumber_js_1.default(position[7].toString());
74
- const sqrtPriceX96 = new bignumber_js_1.default(slot0[0].toString());
75
- const Q96 = new bignumber_js_1.default(2).pow(96);
76
- const sqrtPriceX96Num = sqrtPriceX96.dividedBy(Q96);
77
- const currentTick = sqrtPriceX96Num.isGreaterThan(0)
78
- ? Math.floor(Math.log(sqrtPriceX96Num.toNumber() ** 2) / Math.log(1.0001))
79
- : 0;
80
- const tickLower = Number(position[5]);
81
- const tickUpper = Number(position[6]);
82
- const [amount0, amount1] = this.calculateAmounts(liquidity, currentTick, tickLower, tickUpper, sqrtPriceX96Num);
83
- // Return positive amount if we should add to supply, negative if we should subtract
84
- const isToken0 = position[2] === targetToken;
85
- const amount = isToken0 ? amount0 : amount1;
86
- // If target token is being deposited into the pool, we should subtract from supply
87
- // This means if the position has liquidity of the target token, it's out of circulation
88
- return amount;
89
- }
90
- async processPositionBatch(positionIds, targetToken) {
91
- try {
92
- // Fetch position data
93
- const positionDataPromises = positionIds.map((id) => this.readContract({
94
- address: this.positionManagerAddress,
95
- abi: abis_1.UNIV3_POSITION_MANAGER_ABI,
96
- functionName: 'positions',
97
- args: [id],
98
- }));
99
- const positionData = (await Promise.all(positionDataPromises));
100
- // Filter active positions that contain our target token
101
- const activePositions = positionData.filter((pos) => {
102
- const liquidity = new bignumber_js_1.default(pos[7].toString());
103
- return (!liquidity.isZero() &&
104
- (pos[2] === targetToken || pos[3] === targetToken));
105
- });
106
- if (activePositions.length === 0)
107
- return new bignumber_js_1.default(0);
108
- // Get pool addresses
109
- const poolAddresses = await Promise.all(activePositions.map((pos) => this.getPoolAddress(pos[2], pos[3], Number(pos[4]))));
110
- // Get slot0 data for all pools
111
- const slot0Data = await Promise.all(poolAddresses.map((poolAddress) => this.readContract({
112
- address: poolAddress,
113
- abi: abis_1.UNIV3_POOL_ABI,
114
- functionName: 'slot0',
115
- })));
116
- // Calculate total amount
117
- let totalAmount = new bignumber_js_1.default(0);
118
- for (let i = 0; i < activePositions.length; i++) {
119
- const pos = activePositions[i];
120
- const slot0 = slot0Data[i];
121
- const amount = await this.calculatePositionAmount(pos, slot0, targetToken);
122
- totalAmount = totalAmount.plus(amount);
123
- }
124
- return totalAmount;
125
- }
126
- catch (error) {
127
- console.error('Failed to process position batch:', error);
128
- return new bignumber_js_1.default(0);
129
- }
130
- }
131
- async getPositionTokenIds() {
132
- // Get governance balance
133
- const balance = await this.readContract({
134
- address: this.positionManagerAddress,
135
- abi: abis_1.UNIV3_POSITION_MANAGER_ABI,
136
- functionName: 'balanceOf',
137
- args: [this.governanceAddress],
138
- });
139
- const numPositions = Number(balance);
140
- if (numPositions === 0)
141
- return [];
142
- const tokenIds = [];
143
- for (let i = 0; i < numPositions; i += BATCH_SIZE) {
144
- const batchPromises = Array.from({ length: Math.min(BATCH_SIZE, numPositions - i) }, (_, index) => this.readContract({
145
- address: this.positionManagerAddress,
146
- abi: abis_1.UNIV3_POSITION_MANAGER_ABI,
147
- functionName: 'tokenOfOwnerByIndex',
148
- args: [this.governanceAddress, i + index],
149
- }).then((id) => Number(id)));
150
- const batchResults = await Promise.all(batchPromises);
151
- tokenIds.push(...batchResults);
152
- if (i + BATCH_SIZE < numPositions) {
153
- await new Promise((resolve) => setTimeout(resolve, BATCH_DELAY));
154
- }
155
- }
156
- return tokenIds;
157
- }
158
- async getPoolAddress(token0, token1, fee) {
159
- const cacheKey = `${token0}-${token1}-${fee}`;
160
- if (this.poolCache.has(cacheKey)) {
161
- return this.poolCache.get(cacheKey);
162
- }
163
- const poolAddress = (await this.readContract({
164
- address: this.factoryAddress,
165
- abi: abis_1.UNIV3_FACTORY_ABI,
166
- functionName: 'getPool',
167
- args: [token0, token1, fee],
168
- }));
169
- this.poolCache.set(cacheKey, poolAddress);
170
- return poolAddress;
171
- }
172
- async getTokenDecimals(tokenAddress) {
173
- if (this.decimalsCache.has(tokenAddress)) {
174
- return this.decimalsCache.get(tokenAddress);
175
- }
176
- try {
177
- const decimals = (await this.readContract({
178
- address: tokenAddress,
179
- abi: abis_1.ERC20_ABI,
180
- functionName: 'decimals',
181
- }));
182
- this.decimalsCache.set(tokenAddress, decimals);
183
- return decimals;
184
- }
185
- catch (error) {
186
- console.warn(`Failed to fetch decimals for ${tokenAddress}, using default:`, error);
187
- return 18;
188
- }
189
- }
190
- async readContract(options) {
191
- return this.publicClient.readContract({
192
- address: options.address,
193
- abi: options.abi,
194
- functionName: options.functionName,
195
- args: options.args || [],
196
- });
197
- }
198
- calculateAmounts(liquidity, currentTick, tickLower, tickUpper, sqrtPrice) {
199
- try {
200
- const sqrtRatioLower = new bignumber_js_1.default(Math.sqrt(1.0001 ** tickLower));
201
- const sqrtRatioUpper = new bignumber_js_1.default(Math.sqrt(1.0001 ** tickUpper));
202
- let amount0 = new bignumber_js_1.default(0);
203
- let amount1 = new bignumber_js_1.default(0);
204
- if (currentTick < tickLower) {
205
- const amount0Numerator = sqrtRatioUpper.minus(sqrtRatioLower);
206
- const amount0Denominator = sqrtRatioUpper.multipliedBy(sqrtRatioLower);
207
- if (!amount0Denominator.isZero()) {
208
- amount0 = liquidity.multipliedBy(amount0Numerator.dividedBy(amount0Denominator));
209
- }
210
- }
211
- else if (currentTick < tickUpper) {
212
- const amount0Numerator = sqrtRatioUpper.minus(sqrtPrice);
213
- const amount0Denominator = sqrtPrice.multipliedBy(sqrtRatioUpper);
214
- if (!amount0Denominator.isZero()) {
215
- amount0 = liquidity.multipliedBy(amount0Numerator.dividedBy(amount0Denominator));
216
- }
217
- amount1 = liquidity.multipliedBy(sqrtPrice.minus(sqrtRatioLower));
218
- }
219
- else {
220
- amount1 = liquidity.multipliedBy(sqrtRatioUpper.minus(sqrtRatioLower));
221
- }
222
- return [
223
- amount0.isFinite()
224
- ? amount0.integerValue(bignumber_js_1.default.ROUND_DOWN)
225
- : new bignumber_js_1.default(0),
226
- amount1.isFinite()
227
- ? amount1.integerValue(bignumber_js_1.default.ROUND_DOWN)
228
- : new bignumber_js_1.default(0),
229
- ];
230
- }
231
- catch (error) {
232
- console.error('Error calculating amounts:', error);
233
- return [new bignumber_js_1.default(0), new bignumber_js_1.default(0)];
234
- }
235
- }
236
- }
237
- exports.UniV3SupplyCalculator = UniV3SupplyCalculator;
238
- //# sourceMappingURL=uniV3SupplyCalculator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uniV3SupplyCalculator.js","sourceRoot":"","sources":["../../../../src/services/tokens/supply/uniV3SupplyCalculator.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { StableToken } from '../../core/types';
2
- import { CalculatorFactory } from './supply/calculatorFactory';
3
- import type { PublicClient } from 'viem';
4
- export declare class SupplyAdjustmentService {
5
- private readonly config;
6
- constructor(publicClient: PublicClient, chainId: number, calculatorFactory: CalculatorFactory);
7
- private initializeConfig;
8
- /**
9
- * Get the adjusted supply of a stable token
10
- * @param token - The stable token to get the adjusted supply for
11
- * @returns The adjusted supply
12
- */
13
- getAdjustedSupply(token: StableToken): Promise<string>;
14
- }
15
- //# sourceMappingURL=supplyAdjustmentService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"supplyAdjustmentService.d.ts","sourceRoot":"","sources":["../../../src/services/tokens/supplyAdjustmentService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAGxC,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;gBAExC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB;IAO7F,OAAO,CAAC,gBAAgB;IAmBxB;;;;OAIG;IACG,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;CAa7D"}
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SupplyAdjustmentService = void 0;
4
- const tokens_1 = require("../../cache/tokens");
5
- class SupplyAdjustmentService {
6
- constructor(publicClient, chainId, calculatorFactory) {
7
- if (!publicClient)
8
- throw new Error('PublicClient is required');
9
- if (!calculatorFactory)
10
- throw new Error('Calculator factory is required');
11
- this.config = this.initializeConfig(publicClient, chainId, calculatorFactory);
12
- }
13
- initializeConfig(publicClient, chainId, factory) {
14
- const uniV3Calculator = factory.createUniV3Calculator(publicClient);
15
- const aaveCalculator = factory.createAAVECalculator(publicClient, chainId);
16
- const multisigCalculator = factory.createMultisigCalculator(publicClient);
17
- return Object.freeze({
18
- [tokens_1.TokenSymbol.USDm]: Object.freeze([
19
- { calculator: uniV3Calculator },
20
- { calculator: multisigCalculator },
21
- { calculator: aaveCalculator },
22
- ]),
23
- [tokens_1.TokenSymbol.EURm]: Object.freeze([{ calculator: aaveCalculator }]),
24
- });
25
- }
26
- /**
27
- * Get the adjusted supply of a stable token
28
- * @param token - The stable token to get the adjusted supply for
29
- * @returns The adjusted supply
30
- */
31
- async getAdjustedSupply(token) {
32
- const adjustments = this.config[token.symbol];
33
- if (!adjustments)
34
- return token.totalSupply;
35
- let supply = BigInt(token.totalSupply);
36
- for (const adjustment of adjustments) {
37
- const amount = await adjustment.calculator.getAmount(token.address);
38
- supply -= amount;
39
- }
40
- return supply.toString();
41
- }
42
- }
43
- exports.SupplyAdjustmentService = SupplyAdjustmentService;
44
- //# sourceMappingURL=supplyAdjustmentService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"supplyAdjustmentService.js","sourceRoot":"","sources":["../../../src/services/tokens/supplyAdjustmentService.ts"],"names":[],"mappings":";;;AAGA,+CAAgD;AAEhD,MAAa,uBAAuB;IAGlC,YAAY,YAA0B,EAAE,OAAe,EAAE,iBAAoC;QAC3F,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAC9D,IAAI,CAAC,iBAAiB;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAEzE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAA;IAC/E,CAAC;IAEO,gBAAgB,CACtB,YAA0B,EAC1B,OAAe,EACf,OAA0B;QAE1B,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAA;QACnE,MAAM,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC1E,MAAM,kBAAkB,GAAG,OAAO,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAA;QAEzE,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,CAAC,oBAAW,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;gBAChC,EAAE,UAAU,EAAE,eAAe,EAAE;gBAC/B,EAAE,UAAU,EAAE,kBAAkB,EAAE;gBAClC,EAAE,UAAU,EAAE,cAAc,EAAE;aAC/B,CAAC;YACF,CAAC,oBAAW,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC;SACpE,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAkB;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC,WAAW,CAAA;QAE1C,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAEtC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACnE,MAAM,IAAI,MAAM,CAAA;QAClB,CAAC;QAED,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;CACF;AA/CD,0DA+CC"}
@@ -1,33 +0,0 @@
1
- import { StableToken, CollateralAsset } from '../../core/types';
2
- import type { PublicClient } from 'viem';
3
- export declare class TokenService {
4
- private publicClient;
5
- private chainId;
6
- private supplyAdjustmentService;
7
- constructor(publicClient: PublicClient, chainId: number);
8
- /**
9
- * Get token metadata (name, symbol, decimals)
10
- * @param address - Token contract address
11
- * @returns Token metadata
12
- */
13
- private getTokenMetadata;
14
- /**
15
- * Get total supply of a token
16
- * @param address - Token contract address
17
- * @returns Total supply as string
18
- */
19
- private getTotalSupply;
20
- /**
21
- * Get all stable tokens from the Reserve contract
22
- * @param includeSupply - Whether to fetch total supply and apply adjustments
23
- * @returns Array of stable tokens
24
- */
25
- getStableTokens(includeSupply?: boolean): Promise<StableToken[]>;
26
- /**
27
- * Get all collateral assets from exchanges
28
- * Filters tokens that are marked as collateral in the Reserve contract
29
- * @returns Array of collateral assets
30
- */
31
- getCollateralAssets(): Promise<CollateralAsset[]>;
32
- }
33
- //# sourceMappingURL=tokenService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokenService.d.ts","sourceRoot":"","sources":["../../../src/services/tokens/tokenService.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAetE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAExC,qBAAa,YAAY;IAGX,OAAO,CAAC,YAAY;IAAgB,OAAO,CAAC,OAAO;IAF/D,OAAO,CAAC,uBAAuB,CAAyB;gBAEpC,YAAY,EAAE,YAAY,EAAU,OAAO,EAAE,MAAM;IAQvE;;;;OAIG;YACW,gBAAgB;IAqC9B;;;;OAIG;YACW,cAAc;IAa5B;;;;OAIG;IACU,eAAe,CAAC,aAAa,UAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAyC1E;;;;OAIG;IACU,mBAAmB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;CA0C/D"}
@@ -1,136 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TokenService = void 0;
4
- const abis_1 = require("../../core/abis");
5
- const constants_1 = require("../../core/constants");
6
- const utils_1 = require("../../utils");
7
- const supplyAdjustmentService_1 = require("./supplyAdjustmentService");
8
- const supply_1 = require("./supply");
9
- class TokenService {
10
- constructor(publicClient, chainId) {
11
- this.publicClient = publicClient;
12
- this.chainId = chainId;
13
- this.supplyAdjustmentService = new supplyAdjustmentService_1.SupplyAdjustmentService(publicClient, chainId, new supply_1.DefaultCalculatorFactory());
14
- }
15
- /**
16
- * Get token metadata (name, symbol, decimals)
17
- * @param address - Token contract address
18
- * @returns Token metadata
19
- */
20
- async getTokenMetadata(address) {
21
- const [name, symbol, decimals] = await Promise.all([
22
- (0, utils_1.retryOperation)(() => this.publicClient.readContract({
23
- address: address,
24
- abi: abis_1.ERC20_ABI,
25
- functionName: 'name',
26
- args: [],
27
- })),
28
- (0, utils_1.retryOperation)(() => this.publicClient.readContract({
29
- address: address,
30
- abi: abis_1.ERC20_ABI,
31
- functionName: 'symbol',
32
- args: [],
33
- })),
34
- (0, utils_1.retryOperation)(() => this.publicClient.readContract({
35
- address: address,
36
- abi: abis_1.ERC20_ABI,
37
- functionName: 'decimals',
38
- args: [],
39
- })),
40
- ]);
41
- return {
42
- name: name,
43
- symbol: symbol,
44
- decimals: Number(decimals),
45
- };
46
- }
47
- /**
48
- * Get total supply of a token
49
- * @param address - Token contract address
50
- * @returns Total supply as string
51
- */
52
- async getTotalSupply(address) {
53
- const totalSupply = await (0, utils_1.retryOperation)(() => this.publicClient.readContract({
54
- address: address,
55
- abi: abis_1.ERC20_ABI,
56
- functionName: 'totalSupply',
57
- args: [],
58
- }));
59
- return totalSupply.toString();
60
- }
61
- /**
62
- * Get all stable tokens from the Reserve contract
63
- * @param includeSupply - Whether to fetch total supply and apply adjustments
64
- * @returns Array of stable tokens
65
- */
66
- async getStableTokens(includeSupply = true) {
67
- const reserveAddress = (0, constants_1.getContractAddress)(this.chainId, constants_1.RESERVE);
68
- const tokenAddresses = (await this.publicClient.readContract({
69
- address: reserveAddress,
70
- abi: abis_1.RESERVE_ABI,
71
- functionName: 'getTokens',
72
- args: [],
73
- }));
74
- // TODO: Once we have a cached mapping of stableToken -> addressRegistry we can
75
- // use that to get the token addresses.
76
- const tokens = [];
77
- for (const address of tokenAddresses) {
78
- const metadata = await this.getTokenMetadata(address);
79
- let totalSupply = '0';
80
- if (includeSupply) {
81
- totalSupply = await this.getTotalSupply(address);
82
- }
83
- const token = {
84
- address,
85
- ...metadata,
86
- totalSupply,
87
- };
88
- if (includeSupply) {
89
- const adjustedSupply = await this.supplyAdjustmentService.getAdjustedSupply(token);
90
- token.totalSupply = adjustedSupply;
91
- }
92
- tokens.push(token);
93
- }
94
- return tokens;
95
- }
96
- /**
97
- * Get all collateral assets from exchanges
98
- * Filters tokens that are marked as collateral in the Reserve contract
99
- * @returns Array of collateral assets
100
- */
101
- async getCollateralAssets() {
102
- const biPoolManagerAddress = (0, constants_1.getContractAddress)(this.chainId, constants_1.BIPOOLMANAGER);
103
- const reserveAddress = (0, constants_1.getContractAddress)(this.chainId, constants_1.RESERVE);
104
- // Get all exchanges to find unique token addresses
105
- const exchanges = (await (0, utils_1.retryOperation)(() => this.publicClient.readContract({
106
- address: biPoolManagerAddress,
107
- abi: abis_1.BIPOOL_MANAGER_ABI,
108
- functionName: 'getExchanges',
109
- })));
110
- // Extract unique token addresses from exchanges
111
- const uniqueAddresses = new Set();
112
- for (const exchange of exchanges) {
113
- exchange.assets.forEach((address) => uniqueAddresses.add(address));
114
- }
115
- // Check which tokens are collateral assets and get their metadata
116
- const assets = [];
117
- for (const address of uniqueAddresses) {
118
- const isCollateral = (await (0, utils_1.retryOperation)(() => this.publicClient.readContract({
119
- address: reserveAddress,
120
- abi: abis_1.RESERVE_ABI,
121
- functionName: 'isCollateralAsset',
122
- args: [address],
123
- })));
124
- if (isCollateral) {
125
- const metadata = await this.getTokenMetadata(address);
126
- assets.push({
127
- address,
128
- ...metadata,
129
- });
130
- }
131
- }
132
- return assets;
133
- }
134
- }
135
- exports.TokenService = TokenService;
136
- //# sourceMappingURL=tokenService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokenService.js","sourceRoot":"","sources":["../../../src/services/tokens/tokenService.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import { PublicClient } from 'viem';
2
- import type { Pool, TradingLimit } from '../../core/types';
3
- /**
4
- * Service for querying trading limits from the Mento protocol.
5
- * Supports both FPMM pools (TradingLimitsV2) and Virtual pools (TradingLimitsV1).
6
- */
7
- export declare class TradingLimitsService {
8
- private publicClient;
9
- private chainId;
10
- constructor(publicClient: PublicClient, chainId: number);
11
- /**
12
- * Get trading limits for a pool.
13
- * Returns an array of TradingLimit objects for each configured limit.
14
- *
15
- * @param pool - The pool to get trading limits for
16
- * @returns Array of TradingLimit objects with maxIn/maxOut/until
17
- */
18
- getPoolTradingLimits(pool: Pool): Promise<TradingLimit[]>;
19
- /**
20
- * Get trading limits for an FPMM pool.
21
- * FPMM pools use TradingLimitsV2 with fixed timeframes.
22
- */
23
- private getFPMMTradingLimits;
24
- /**
25
- * Get trading limits for a specific token in an FPMM pool.
26
- */
27
- private getFPMMTokenLimits;
28
- /**
29
- * Get trading limits for a Virtual pool.
30
- * Virtual pools use TradingLimitsV1 via the Broker contract.
31
- */
32
- private getVirtualPoolTradingLimits;
33
- /**
34
- * Get trading limits for a specific token in a Virtual pool.
35
- */
36
- private getVirtualPoolTokenLimits;
37
- }
38
- //# sourceMappingURL=TradingLimitsService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TradingLimitsService.d.ts","sourceRoot":"","sources":["../../../src/services/trading/TradingLimitsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAW,MAAM,MAAM,CAAA;AAC5C,OAAO,KAAK,EACV,IAAI,EACJ,YAAY,EAKb,MAAM,kBAAkB,CAAA;AAYzB;;;GAGG;AACH,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,OAAO;gBADP,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM;IAGzB;;;;;;OAMG;IACG,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAQ/D;;;OAGG;YACW,oBAAoB;IAelC;;OAEG;YACW,kBAAkB;IA0ChC;;;OAGG;YACW,2BAA2B;IAoBzC;;OAEG;YACW,yBAAyB;CA4DxC"}