@paraswap/dex-lib 4.8.24 → 4.8.25

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 (432) hide show
  1. package/build/abi/AaveV2_lending_pool.json +53 -0
  2. package/build/abi/Bancor.json +392 -0
  3. package/build/abi/Compound_CETH.json +12 -0
  4. package/build/abi/SSPM.json +829 -0
  5. package/build/abi/Smoothy.json +1049 -0
  6. package/build/abi/StaderOracle.json +2170 -0
  7. package/build/abi/aave-weth-gateway-avalanche.json +242 -0
  8. package/build/abi/aave-weth-gateway-polygon.json +242 -0
  9. package/build/abi/aave-weth-gateway.json +24 -0
  10. package/build/abi/bunni-v2/BunniHook.abi.json +1921 -0
  11. package/build/abi/bunni-v2/BunniHub.abi.json +1598 -0
  12. package/build/abi/bunni-v2/BunniToken.abi.json +833 -0
  13. package/build/abi/bunni-v2/FeeOverrideHooklet.abi.json +1947 -0
  14. package/build/abi/bunni-v2/FloodPlain.abi.json +1195 -0
  15. package/build/abi/bunni-v2/PoolManager.abi.json +1366 -0
  16. package/build/abi/bunni-v2/V4Quoter.abi.json +637 -0
  17. package/build/abi/concentrator/arUSD.json +568 -0
  18. package/build/abi/concentrator/arUSD5115.json +1746 -0
  19. package/build/abi/gmx/fast-price-events.json +70 -0
  20. package/build/abi/gmx/fast-price-feed.json +748 -0
  21. package/build/abi/gmx/reader.json +337 -0
  22. package/build/abi/gmx/vault-price-feed.json +477 -0
  23. package/build/abi/gmx/vault.json +2002 -0
  24. package/build/abi/jarvis/ChainlinkAccessControlledOffchainAggregator.json +1009 -0
  25. package/build/abi/jarvis/SynthereumPriceFeed.json +381 -0
  26. package/build/abi/jarvis/jarvis-v6-pool.json +1041 -0
  27. package/build/abi/kyberdmm/kyber-dmm-exchange-router.abi.json +1148 -0
  28. package/build/abi/kyberdmm/kyber-dmm-factory.abi.json +335 -0
  29. package/build/abi/kyberdmm/kyber-dmm-pool.abi.json +803 -0
  30. package/build/abi/synthetix/CombinedSynthetix.abi.json +442 -0
  31. package/build/abi/wombat/asset.json +743 -0
  32. package/build/abi/wombat/bmw.json +1247 -0
  33. package/build/abi/wombat/pool-v2.json +1289 -0
  34. package/build/abi/wombat/pool-v3.json +2013 -0
  35. package/build/dex/aave-v2/aave-v2.d.ts +33 -0
  36. package/build/dex/aave-v2/aave-v2.js +328 -0
  37. package/build/dex/aave-v2/aave-v2.js.map +1 -0
  38. package/build/dex/aave-v2/config.d.ts +14 -0
  39. package/build/dex/aave-v2/config.js +49 -0
  40. package/build/dex/aave-v2/config.js.map +1 -0
  41. package/build/dex/aave-v2/tokenlist.json +904 -0
  42. package/build/dex/aave-v2/tokens.d.ts +8 -0
  43. package/build/dex/aave-v2/tokens.js +65 -0
  44. package/build/dex/aave-v2/tokens.js.map +1 -0
  45. package/build/dex/aave-v2/types.d.ts +33 -0
  46. package/build/dex/aave-v2/types.js +11 -0
  47. package/build/dex/aave-v2/types.js.map +1 -0
  48. package/build/dex/bancor/bancor.d.ts +15 -0
  49. package/build/dex/bancor/bancor.js +74 -0
  50. package/build/dex/bancor/bancor.js.map +1 -0
  51. package/build/dex/bancor/config.d.ts +6 -0
  52. package/build/dex/bancor/config.js +11 -0
  53. package/build/dex/bancor/config.js.map +1 -0
  54. package/build/dex/bancor/types.d.ts +16 -0
  55. package/build/dex/bancor/types.js +8 -0
  56. package/build/dex/bancor/types.js.map +1 -0
  57. package/build/dex/bebop/bebop.js +1 -1
  58. package/build/dex/bebop/bebop.js.map +1 -1
  59. package/build/dex/bunni-v2/bunni-v2-pool.d.ts +62 -0
  60. package/build/dex/bunni-v2/bunni-v2-pool.js +505 -0
  61. package/build/dex/bunni-v2/bunni-v2-pool.js.map +1 -0
  62. package/build/dex/bunni-v2/bunni-v2.d.ts +51 -0
  63. package/build/dex/bunni-v2/bunni-v2.js +460 -0
  64. package/build/dex/bunni-v2/bunni-v2.js.map +1 -0
  65. package/build/dex/{renegade → bunni-v2}/config.d.ts +1 -1
  66. package/build/dex/bunni-v2/config.js +130 -0
  67. package/build/dex/bunni-v2/config.js.map +1 -0
  68. package/build/dex/bunni-v2/encoder.d.ts +19 -0
  69. package/build/dex/{pancakeswap-infinity → bunni-v2}/encoder.js +199 -88
  70. package/build/dex/bunni-v2/encoder.js.map +1 -0
  71. package/build/dex/bunni-v2/getOnChainState.d.ts +26 -0
  72. package/build/dex/bunni-v2/getOnChainState.js +493 -0
  73. package/build/dex/bunni-v2/getOnChainState.js.map +1 -0
  74. package/build/dex/bunni-v2/hook/BunniSwapMath.d.ts +7 -0
  75. package/build/dex/bunni-v2/hook/BunniSwapMath.js +198 -0
  76. package/build/dex/bunni-v2/hook/BunniSwapMath.js.map +1 -0
  77. package/build/dex/bunni-v2/hook/SwapMath.d.ts +8 -0
  78. package/build/dex/bunni-v2/hook/SwapMath.js +65 -0
  79. package/build/dex/bunni-v2/hook/SwapMath.js.map +1 -0
  80. package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.d.ts +33 -0
  81. package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.js +33 -0
  82. package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.js.map +1 -0
  83. package/build/dex/bunni-v2/hooklet/index.d.ts +21 -0
  84. package/build/dex/bunni-v2/hooklet/index.js +64 -0
  85. package/build/dex/bunni-v2/hooklet/index.js.map +1 -0
  86. package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.d.ts +70 -0
  87. package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.js +277 -0
  88. package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.js.map +1 -0
  89. package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.d.ts +64 -0
  90. package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.js +262 -0
  91. package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.js.map +1 -0
  92. package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.d.ts +60 -0
  93. package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.js +224 -0
  94. package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.js.map +1 -0
  95. package/build/dex/bunni-v2/ldf/GeometricDistribution.d.ts +56 -0
  96. package/build/dex/bunni-v2/ldf/GeometricDistribution.js +489 -0
  97. package/build/dex/bunni-v2/ldf/GeometricDistribution.js.map +1 -0
  98. package/build/dex/bunni-v2/ldf/LDFType.d.ts +5 -0
  99. package/build/dex/bunni-v2/ldf/LDFType.js +10 -0
  100. package/build/dex/bunni-v2/ldf/LDFType.js.map +1 -0
  101. package/build/dex/bunni-v2/ldf/ShiftMode.d.ts +7 -0
  102. package/build/dex/bunni-v2/ldf/ShiftMode.js +19 -0
  103. package/build/dex/bunni-v2/ldf/ShiftMode.js.map +1 -0
  104. package/build/dex/bunni-v2/ldf/UniformDistribution.d.ts +55 -0
  105. package/build/dex/bunni-v2/ldf/UniformDistribution.js +291 -0
  106. package/build/dex/bunni-v2/ldf/UniformDistribution.js.map +1 -0
  107. package/build/dex/bunni-v2/ldf/index.d.ts +15 -0
  108. package/build/dex/bunni-v2/ldf/index.js +21 -0
  109. package/build/dex/bunni-v2/ldf/index.js.map +1 -0
  110. package/build/dex/bunni-v2/lib/AmAmmPayload.d.ts +4 -0
  111. package/build/dex/bunni-v2/lib/AmAmmPayload.js +10 -0
  112. package/build/dex/bunni-v2/lib/AmAmmPayload.js.map +1 -0
  113. package/build/dex/bunni-v2/lib/BitMath.d.ts +4 -0
  114. package/build/dex/bunni-v2/lib/BitMath.js +24 -0
  115. package/build/dex/bunni-v2/lib/BitMath.js.map +1 -0
  116. package/build/dex/bunni-v2/lib/Constants.d.ts +15 -0
  117. package/build/dex/bunni-v2/lib/Constants.js +19 -0
  118. package/build/dex/bunni-v2/lib/Constants.js.map +1 -0
  119. package/build/dex/bunni-v2/lib/ExpMath.d.ts +5 -0
  120. package/build/dex/bunni-v2/lib/ExpMath.js +121 -0
  121. package/build/dex/bunni-v2/lib/ExpMath.js.map +1 -0
  122. package/build/dex/bunni-v2/lib/FeeMath.d.ts +2 -0
  123. package/build/dex/bunni-v2/lib/FeeMath.js +27 -0
  124. package/build/dex/bunni-v2/lib/FeeMath.js.map +1 -0
  125. package/build/dex/bunni-v2/lib/FixedPointMath.d.ts +3 -0
  126. package/build/dex/bunni-v2/lib/FixedPointMath.js +15 -0
  127. package/build/dex/bunni-v2/lib/FixedPointMath.js.map +1 -0
  128. package/build/dex/bunni-v2/lib/FullMathX96.d.ts +4 -0
  129. package/build/dex/bunni-v2/lib/FullMathX96.js +21 -0
  130. package/build/dex/bunni-v2/lib/FullMathX96.js.map +1 -0
  131. package/build/dex/bunni-v2/lib/IdleBalance.d.ts +11 -0
  132. package/build/dex/bunni-v2/lib/IdleBalance.js +33 -0
  133. package/build/dex/bunni-v2/lib/IdleBalance.js.map +1 -0
  134. package/build/dex/bunni-v2/lib/LiquidityAmounts.d.ts +6 -0
  135. package/build/dex/bunni-v2/lib/LiquidityAmounts.js +25 -0
  136. package/build/dex/bunni-v2/lib/LiquidityAmounts.js.map +1 -0
  137. package/build/dex/bunni-v2/lib/Math.d.ts +28 -0
  138. package/build/dex/bunni-v2/lib/Math.js +169 -0
  139. package/build/dex/bunni-v2/lib/Math.js.map +1 -0
  140. package/build/dex/bunni-v2/lib/Oracle.d.ts +27 -0
  141. package/build/dex/bunni-v2/lib/Oracle.js +180 -0
  142. package/build/dex/bunni-v2/lib/Oracle.js.map +1 -0
  143. package/build/dex/bunni-v2/lib/QueryLDF.d.ts +12 -0
  144. package/build/dex/bunni-v2/lib/QueryLDF.js +90 -0
  145. package/build/dex/bunni-v2/lib/QueryLDF.js.map +1 -0
  146. package/build/dex/bunni-v2/lib/QueryTwap.d.ts +2 -0
  147. package/build/dex/bunni-v2/lib/QueryTwap.js +13 -0
  148. package/build/dex/bunni-v2/lib/QueryTwap.js.map +1 -0
  149. package/build/dex/bunni-v2/lib/SqrtPriceMath.d.ts +8 -0
  150. package/build/dex/bunni-v2/lib/SqrtPriceMath.js +84 -0
  151. package/build/dex/bunni-v2/lib/SqrtPriceMath.js.map +1 -0
  152. package/build/dex/bunni-v2/lib/TickMath.d.ts +11 -0
  153. package/build/dex/bunni-v2/lib/TickMath.js +100 -0
  154. package/build/dex/bunni-v2/lib/TickMath.js.map +1 -0
  155. package/build/dex/bunni-v2/lib/VaultMath.d.ts +2 -0
  156. package/build/dex/bunni-v2/lib/VaultMath.js +11 -0
  157. package/build/dex/bunni-v2/lib/VaultMath.js.map +1 -0
  158. package/build/dex/bunni-v2/logic/AmAmm.d.ts +11 -0
  159. package/build/dex/bunni-v2/logic/AmAmm.js +156 -0
  160. package/build/dex/bunni-v2/logic/AmAmm.js.map +1 -0
  161. package/build/dex/bunni-v2/logic/BunniHookLogic.d.ts +10 -0
  162. package/build/dex/bunni-v2/logic/BunniHookLogic.js +298 -0
  163. package/build/dex/bunni-v2/logic/BunniHookLogic.js.map +1 -0
  164. package/build/dex/bunni-v2/logic/BunniHubLogic.d.ts +5 -0
  165. package/build/dex/bunni-v2/logic/BunniHubLogic.js +245 -0
  166. package/build/dex/bunni-v2/logic/BunniHubLogic.js.map +1 -0
  167. package/build/dex/bunni-v2/logic/BunniQuoter.d.ts +12 -0
  168. package/build/dex/bunni-v2/logic/BunniQuoter.js +201 -0
  169. package/build/dex/bunni-v2/logic/BunniQuoter.js.map +1 -0
  170. package/build/dex/bunni-v2/subgraph.d.ts +7 -0
  171. package/build/dex/bunni-v2/subgraph.js +184 -0
  172. package/build/dex/bunni-v2/subgraph.js.map +1 -0
  173. package/build/dex/bunni-v2/types.d.ts +257 -0
  174. package/build/dex/{renegade/api → bunni-v2}/types.js.map +1 -1
  175. package/build/dex/bunni-v2/utils.d.ts +12 -0
  176. package/build/dex/bunni-v2/utils.js +182 -0
  177. package/build/dex/bunni-v2/utils.js.map +1 -0
  178. package/build/dex/compound/compound.d.ts +15 -0
  179. package/build/dex/compound/compound.js +57 -0
  180. package/build/dex/compound/compound.js.map +1 -0
  181. package/build/dex/compound/types.d.ts +8 -0
  182. package/build/dex/compound/types.js +9 -0
  183. package/build/dex/compound/types.js.map +1 -0
  184. package/build/dex/concentrator-arusd/concentrator-arusd-event.d.ts +17 -0
  185. package/build/dex/concentrator-arusd/concentrator-arusd-event.js +69 -0
  186. package/build/dex/concentrator-arusd/concentrator-arusd-event.js.map +1 -0
  187. package/build/dex/concentrator-arusd/concentrator-arusd.d.ts +41 -0
  188. package/build/dex/concentrator-arusd/concentrator-arusd.js +202 -0
  189. package/build/dex/concentrator-arusd/concentrator-arusd.js.map +1 -0
  190. package/build/dex/concentrator-arusd/config.d.ts +3 -0
  191. package/build/dex/concentrator-arusd/config.js +14 -0
  192. package/build/dex/concentrator-arusd/config.js.map +1 -0
  193. package/build/dex/concentrator-arusd/types.d.ts +14 -0
  194. package/build/dex/concentrator-arusd/types.js.map +1 -0
  195. package/build/dex/concentrator-arusd/utils.d.ts +4 -0
  196. package/build/dex/concentrator-arusd/utils.js +26 -0
  197. package/build/dex/concentrator-arusd/utils.js.map +1 -0
  198. package/build/dex/curve-v1/forks/swerve/config.d.ts +4 -0
  199. package/build/dex/curve-v1/forks/swerve/config.js +47 -0
  200. package/build/dex/curve-v1/forks/swerve/config.js.map +1 -0
  201. package/build/dex/curve-v1/forks/swerve/swerve.d.ts +16 -0
  202. package/build/dex/curve-v1/forks/swerve/swerve.js +46 -0
  203. package/build/dex/curve-v1/forks/swerve/swerve.js.map +1 -0
  204. package/build/dex/gmx/config.d.ts +11 -0
  205. package/build/dex/gmx/config.js +61 -0
  206. package/build/dex/gmx/config.js.map +1 -0
  207. package/build/dex/gmx/fast-price-feed.d.ts +26 -0
  208. package/build/dex/gmx/fast-price-feed.js +184 -0
  209. package/build/dex/gmx/fast-price-feed.js.map +1 -0
  210. package/build/dex/gmx/gmx.d.ts +54 -0
  211. package/build/dex/gmx/gmx.js +247 -0
  212. package/build/dex/gmx/gmx.js.map +1 -0
  213. package/build/dex/gmx/pool.d.ts +21 -0
  214. package/build/dex/gmx/pool.js +212 -0
  215. package/build/dex/gmx/pool.js.map +1 -0
  216. package/build/dex/gmx/types.d.ts +100 -0
  217. package/build/dex/gmx/types.js +3 -0
  218. package/build/dex/gmx/types.js.map +1 -0
  219. package/build/dex/gmx/usdg.d.ts +15 -0
  220. package/build/dex/gmx/usdg.js +62 -0
  221. package/build/dex/gmx/usdg.js.map +1 -0
  222. package/build/dex/gmx/vault-price-feed.d.ts +47 -0
  223. package/build/dex/gmx/vault-price-feed.js +245 -0
  224. package/build/dex/gmx/vault-price-feed.js.map +1 -0
  225. package/build/dex/gmx/vault-utils.d.ts +8 -0
  226. package/build/dex/gmx/vault-utils.js +42 -0
  227. package/build/dex/gmx/vault-utils.js.map +1 -0
  228. package/build/dex/gmx/vault.d.ts +46 -0
  229. package/build/dex/gmx/vault.js +182 -0
  230. package/build/dex/gmx/vault.js.map +1 -0
  231. package/build/dex/jarvis-v6/chainLinkpriceFeed-event.d.ts +15 -0
  232. package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js +51 -0
  233. package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js.map +1 -0
  234. package/build/dex/jarvis-v6/config.d.ts +4 -0
  235. package/build/dex/jarvis-v6/config.js +244 -0
  236. package/build/dex/jarvis-v6/config.js.map +1 -0
  237. package/build/dex/jarvis-v6/jarvis-v6-events.d.ts +27 -0
  238. package/build/dex/jarvis-v6/jarvis-v6-events.js +54 -0
  239. package/build/dex/jarvis-v6/jarvis-v6-events.js.map +1 -0
  240. package/build/dex/jarvis-v6/jarvis-v6.d.ts +49 -0
  241. package/build/dex/jarvis-v6/jarvis-v6.js +321 -0
  242. package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -0
  243. package/build/dex/jarvis-v6/syntheteumPool-event.d.ts +15 -0
  244. package/build/dex/jarvis-v6/syntheteumPool-event.js +49 -0
  245. package/build/dex/jarvis-v6/syntheteumPool-event.js.map +1 -0
  246. package/build/dex/jarvis-v6/types.d.ts +48 -0
  247. package/build/dex/jarvis-v6/types.js +9 -0
  248. package/build/dex/jarvis-v6/types.js.map +1 -0
  249. package/build/dex/jarvis-v6/utils.d.ts +13 -0
  250. package/build/dex/jarvis-v6/utils.js +75 -0
  251. package/build/dex/jarvis-v6/utils.js.map +1 -0
  252. package/build/dex/kyberdmm/config.d.ts +9 -0
  253. package/build/dex/kyberdmm/config.js +59 -0
  254. package/build/dex/kyberdmm/config.js.map +1 -0
  255. package/build/dex/kyberdmm/fee-formula.d.ts +15 -0
  256. package/build/dex/kyberdmm/fee-formula.js +88 -0
  257. package/build/dex/kyberdmm/fee-formula.js.map +1 -0
  258. package/build/dex/kyberdmm/kyberdmm.d.ts +55 -0
  259. package/build/dex/kyberdmm/kyberdmm.js +447 -0
  260. package/build/dex/kyberdmm/kyberdmm.js.map +1 -0
  261. package/build/dex/kyberdmm/math-ext.d.ts +2 -0
  262. package/build/dex/kyberdmm/math-ext.js +27 -0
  263. package/build/dex/kyberdmm/math-ext.js.map +1 -0
  264. package/build/dex/kyberdmm/pool.d.ts +50 -0
  265. package/build/dex/kyberdmm/pool.js +157 -0
  266. package/build/dex/kyberdmm/pool.js.map +1 -0
  267. package/build/dex/kyberdmm/types.d.ts +81 -0
  268. package/build/dex/kyberdmm/types.js +9 -0
  269. package/build/dex/kyberdmm/types.js.map +1 -0
  270. package/build/dex/quickswap/thena-fusion.d.ts +6 -0
  271. package/build/dex/quickswap/thena-fusion.js +19 -0
  272. package/build/dex/quickswap/thena-fusion.js.map +1 -0
  273. package/build/dex/smoothy/smoothy.d.ts +16 -0
  274. package/build/dex/smoothy/smoothy.js +60 -0
  275. package/build/dex/smoothy/smoothy.js.map +1 -0
  276. package/build/dex/smoothy/types.d.ts +15 -0
  277. package/build/dex/smoothy/types.js +8 -0
  278. package/build/dex/smoothy/types.js.map +1 -0
  279. package/build/dex/stader/config.d.ts +3 -0
  280. package/build/dex/stader/config.js +14 -0
  281. package/build/dex/stader/config.js.map +1 -0
  282. package/build/dex/stader/stader-pool.d.ts +19 -0
  283. package/build/dex/stader/stader-pool.js +56 -0
  284. package/build/dex/stader/stader-pool.js.map +1 -0
  285. package/build/dex/stader/stader.d.ts +42 -0
  286. package/build/dex/stader/stader.js +195 -0
  287. package/build/dex/stader/stader.js.map +1 -0
  288. package/build/dex/stader/types.d.ts +13 -0
  289. package/build/dex/stader/types.js +8 -0
  290. package/build/dex/stader/types.js.map +1 -0
  291. package/build/dex/stader/utils.d.ts +4 -0
  292. package/build/dex/stader/utils.js +23 -0
  293. package/build/dex/stader/utils.js.map +1 -0
  294. package/build/dex/synthetix/config.d.ts +4 -0
  295. package/build/dex/synthetix/config.js +53 -0
  296. package/build/dex/synthetix/config.js.map +1 -0
  297. package/build/dex/synthetix/constants.d.ts +23 -0
  298. package/build/dex/synthetix/constants.js +32 -0
  299. package/build/dex/synthetix/constants.js.map +1 -0
  300. package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.d.ts +17 -0
  301. package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.js +102 -0
  302. package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.js.map +1 -0
  303. package/build/dex/synthetix/contract-math/ExchangeRates.d.ts +8 -0
  304. package/build/dex/synthetix/contract-math/ExchangeRates.js +77 -0
  305. package/build/dex/synthetix/contract-math/ExchangeRates.js.map +1 -0
  306. package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.d.ts +17 -0
  307. package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.js +126 -0
  308. package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.js.map +1 -0
  309. package/build/dex/synthetix/contract-math/FullMath.d.ts +3 -0
  310. package/build/dex/synthetix/contract-math/FullMath.js +14 -0
  311. package/build/dex/synthetix/contract-math/FullMath.js.map +1 -0
  312. package/build/dex/synthetix/contract-math/OracleLibrary.d.ts +8 -0
  313. package/build/dex/synthetix/contract-math/OracleLibrary.js +60 -0
  314. package/build/dex/synthetix/contract-math/OracleLibrary.js.map +1 -0
  315. package/build/dex/synthetix/contract-math/SafeDecimalMath.d.ts +9 -0
  316. package/build/dex/synthetix/contract-math/SafeDecimalMath.js +41 -0
  317. package/build/dex/synthetix/contract-math/SafeDecimalMath.js.map +1 -0
  318. package/build/dex/synthetix/contract-math/TickMath.d.ts +7 -0
  319. package/build/dex/synthetix/contract-math/TickMath.js +63 -0
  320. package/build/dex/synthetix/contract-math/TickMath.js.map +1 -0
  321. package/build/dex/synthetix/contract-math/synthetix-math.d.ts +17 -0
  322. package/build/dex/synthetix/contract-math/synthetix-math.js +127 -0
  323. package/build/dex/synthetix/contract-math/synthetix-math.js.map +1 -0
  324. package/build/dex/synthetix/synthetix-state.d.ts +36 -0
  325. package/build/dex/synthetix/synthetix-state.js +615 -0
  326. package/build/dex/synthetix/synthetix-state.js.map +1 -0
  327. package/build/dex/synthetix/synthetix.d.ts +45 -0
  328. package/build/dex/synthetix/synthetix.js +304 -0
  329. package/build/dex/synthetix/synthetix.js.map +1 -0
  330. package/build/dex/synthetix/types.d.ts +90 -0
  331. package/build/dex/synthetix/types.js +3 -0
  332. package/build/dex/synthetix/types.js.map +1 -0
  333. package/build/dex/synthetix/utils.d.ts +10 -0
  334. package/build/dex/synthetix/utils.js +91 -0
  335. package/build/dex/synthetix/utils.js.map +1 -0
  336. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.d.ts +7 -0
  337. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +20 -0
  338. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +1 -0
  339. package/build/dex/uniswap-v4/api-go/compare-pricing.d.ts +1 -0
  340. package/build/dex/uniswap-v4/api-go/compare-pricing.js +187 -0
  341. package/build/dex/uniswap-v4/api-go/compare-pricing.js.map +1 -0
  342. package/build/dex/uniswap-v4/api-go/compare-states.d.ts +1 -0
  343. package/build/dex/uniswap-v4/api-go/compare-states.js +149 -0
  344. package/build/dex/uniswap-v4/api-go/compare-states.js.map +1 -0
  345. package/build/dex/uniswap-v4/api-go/fetch-pool-key.d.ts +0 -0
  346. package/build/dex/uniswap-v4/api-go/fetch-pool-key.js +140 -0
  347. package/build/dex/uniswap-v4/api-go/fetch-pool-key.js.map +1 -0
  348. package/build/dex/wombat/config.d.ts +4 -0
  349. package/build/dex/wombat/config.js +77 -0
  350. package/build/dex/wombat/config.js.map +1 -0
  351. package/build/dex/wombat/types.d.ts +34 -0
  352. package/build/dex/wombat/types.js +3 -0
  353. package/build/dex/wombat/types.js.map +1 -0
  354. package/build/dex/wombat/utils.d.ts +10 -0
  355. package/build/dex/wombat/utils.js +79 -0
  356. package/build/dex/wombat/utils.js.map +1 -0
  357. package/build/dex/wombat/wombat-bmw.d.ts +40 -0
  358. package/build/dex/wombat/wombat-bmw.js +136 -0
  359. package/build/dex/wombat/wombat-bmw.js.map +1 -0
  360. package/build/dex/wombat/wombat-pool.d.ts +60 -0
  361. package/build/dex/wombat/wombat-pool.js +488 -0
  362. package/build/dex/wombat/wombat-pool.js.map +1 -0
  363. package/build/dex/wombat/wombat-quoter.d.ts +17 -0
  364. package/build/dex/wombat/wombat-quoter.js +192 -0
  365. package/build/dex/wombat/wombat-quoter.js.map +1 -0
  366. package/build/dex/wombat/wombat.d.ts +58 -0
  367. package/build/dex/wombat/wombat.js +298 -0
  368. package/build/dex/wombat/wombat.js.map +1 -0
  369. package/build/tenderly-simulation.d.ts +221 -0
  370. package/build/tenderly-simulation.js +517 -0
  371. package/build/tenderly-simulation.js.map +1 -0
  372. package/package.json +1 -1
  373. package/build/abi/pancakeswap-infinity/cl-pool-manager.abi.json +0 -136
  374. package/build/abi/pancakeswap-infinity/cl-quoter.abi.json +0 -66
  375. package/build/abi/pancakeswap-infinity/router.abi.json +0 -23
  376. package/build/dex/pancakeswap-infinity/config.d.ts +0 -4
  377. package/build/dex/pancakeswap-infinity/config.js +0 -30
  378. package/build/dex/pancakeswap-infinity/config.js.map +0 -1
  379. package/build/dex/pancakeswap-infinity/constants.d.ts +0 -11
  380. package/build/dex/pancakeswap-infinity/constants.js +0 -15
  381. package/build/dex/pancakeswap-infinity/constants.js.map +0 -1
  382. package/build/dex/pancakeswap-infinity/encoder.d.ts +0 -16
  383. package/build/dex/pancakeswap-infinity/encoder.js.map +0 -1
  384. package/build/dex/pancakeswap-infinity/liquidity.d.ts +0 -1
  385. package/build/dex/pancakeswap-infinity/liquidity.js +0 -7
  386. package/build/dex/pancakeswap-infinity/liquidity.js.map +0 -1
  387. package/build/dex/pancakeswap-infinity/optimizer.d.ts +0 -2
  388. package/build/dex/pancakeswap-infinity/optimizer.js +0 -48
  389. package/build/dex/pancakeswap-infinity/optimizer.js.map +0 -1
  390. package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.d.ts +0 -36
  391. package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.js +0 -393
  392. package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.js.map +0 -1
  393. package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.d.ts +0 -37
  394. package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.js +0 -289
  395. package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.js.map +0 -1
  396. package/build/dex/pancakeswap-infinity/pancakeswap-infinity.d.ts +0 -42
  397. package/build/dex/pancakeswap-infinity/pancakeswap-infinity.js +0 -350
  398. package/build/dex/pancakeswap-infinity/pancakeswap-infinity.js.map +0 -1
  399. package/build/dex/pancakeswap-infinity/subgraph.d.ts +0 -8
  400. package/build/dex/pancakeswap-infinity/subgraph.js +0 -122
  401. package/build/dex/pancakeswap-infinity/subgraph.js.map +0 -1
  402. package/build/dex/pancakeswap-infinity/types.d.ts +0 -101
  403. package/build/dex/pancakeswap-infinity/types.js.map +0 -1
  404. package/build/dex/pancakeswap-infinity/utils.d.ts +0 -5
  405. package/build/dex/pancakeswap-infinity/utils.js +0 -45
  406. package/build/dex/pancakeswap-infinity/utils.js.map +0 -1
  407. package/build/dex/renegade/api/auth.d.ts +0 -1
  408. package/build/dex/renegade/api/auth.js +0 -63
  409. package/build/dex/renegade/api/auth.js.map +0 -1
  410. package/build/dex/renegade/api/renegade-client.d.ts +0 -18
  411. package/build/dex/renegade/api/renegade-client.js +0 -82
  412. package/build/dex/renegade/api/renegade-client.js.map +0 -1
  413. package/build/dex/renegade/api/types.d.ts +0 -110
  414. package/build/dex/renegade/config.js +0 -16
  415. package/build/dex/renegade/config.js.map +0 -1
  416. package/build/dex/renegade/constants.d.ts +0 -25
  417. package/build/dex/renegade/constants.js +0 -47
  418. package/build/dex/renegade/constants.js.map +0 -1
  419. package/build/dex/renegade/rate-fetcher.d.ts +0 -23
  420. package/build/dex/renegade/rate-fetcher.js +0 -135
  421. package/build/dex/renegade/rate-fetcher.js.map +0 -1
  422. package/build/dex/renegade/renegade-levels-response.d.ts +0 -22
  423. package/build/dex/renegade/renegade-levels-response.js +0 -99
  424. package/build/dex/renegade/renegade-levels-response.js.map +0 -1
  425. package/build/dex/renegade/renegade.d.ts +0 -57
  426. package/build/dex/renegade/renegade.js +0 -499
  427. package/build/dex/renegade/renegade.js.map +0 -1
  428. package/build/dex/renegade/types.d.ts +0 -38
  429. package/build/dex/renegade/types.js +0 -4
  430. package/build/dex/renegade/types.js.map +0 -1
  431. /package/build/dex/{pancakeswap-infinity → bunni-v2}/types.js +0 -0
  432. /package/build/dex/{renegade/api → concentrator-arusd}/types.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/dex/pancakeswap-infinity/utils.ts"],"names":[],"mappings":";;AAGA,8BAUC;AAID,oBAcC;AAID,oEAKC;AAGD,4CAUC;AArDD,mCAAgC;AAGhC,SAAgB,SAAS,CAAC,CAAY,EAAE,CAAY;IAClD,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IACD,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,+DAA+D;AAC/D,uEAAuE;AACvE,SAAgB,IAAI,CAAC,GAAY;IAC/B,OAAO,eAAM,CAAC,KAAK,CAAC,SAAS,CAC3B,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CACjC,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,EACjE;QACE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;QAC3B,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;QAC3B,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE;QACvB,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE;QAC7B,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,UAAU;KACf,CACF,CACF,CAAC;AACJ,CAAC;AAED,kDAAkD;AAClD,kEAAkE;AAClE,SAAgB,4BAA4B,CAAC,UAAkB;IAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAClD,oBAAoB;IACpB,OAAO,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;AAChD,CAAC;AAED,qEAAqE;AACrE,SAAgB,gBAAgB,CAC9B,WAAmB,EACnB,kBAA0B,CAAC;IAE3B,MAAM,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IACnE,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;IAC1D,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAC5B,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,EAC1C,EAAE,CACH,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- export declare function generateRenegadeAuthHeaders(path: string, body: string, existingHeaders: Record<string, string>, apiKey: string, apiSecret: string): Record<string, string>;
@@ -1,63 +0,0 @@
1
- "use strict";
2
- // Authentication helper for Renegade DEX integration.
3
- // Implements HMAC-SHA256 authentication signing requests over path, sorted x-renegade-* headers, and body.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.generateRenegadeAuthHeaders = generateRenegadeAuthHeaders;
6
- const hmac_1 = require("@noble/hashes/hmac");
7
- const sha256_1 = require("@noble/hashes/sha256");
8
- const buffer_1 = require("buffer");
9
- const constants_1 = require("../constants");
10
- // Generate authentication headers for Renegade API requests.
11
- // Adds API key header, generates HMAC-SHA256 signature over path + headers + body, and sets expiration timestamp.
12
- function generateRenegadeAuthHeaders(path, body, existingHeaders, apiKey, apiSecret) {
13
- // Clone existing headers to avoid mutation
14
- const signedHeaders = { ...existingHeaders };
15
- // Add timestamp and expiry
16
- const now = Date.now();
17
- const expiry = now + constants_1.REQUEST_SIGNATURE_DURATION_MS;
18
- signedHeaders[constants_1.RENEGADE_AUTH_EXPIRATION_HEADER] = expiry.toString();
19
- // Add API key
20
- signedHeaders[constants_1.RENEGADE_API_KEY_HEADER] = apiKey;
21
- // Decode API secret from base64 to Uint8Array
22
- const apiSecretBytes = decodeBase64(apiSecret);
23
- // Compute the MAC signature using the headers with expiry
24
- const signature = computeHmacSignature(path, signedHeaders, body, apiSecretBytes);
25
- signedHeaders[constants_1.RENEGADE_AUTH_HEADER] = signature;
26
- // Return new headers object with both auth headers
27
- return signedHeaders;
28
- }
29
- // Compute the HMAC-SHA256 signature for a Renegade API request.
30
- // Returns base64-encoded HMAC signature without padding.
31
- function computeHmacSignature(path, headers, body, apiSecret) {
32
- // Filter and sort x-renegade-* headers (excluding auth header itself)
33
- const candidateHeaderEntries = Object.entries(headers);
34
- const renegadeHeaderEntries = candidateHeaderEntries
35
- .filter(([key]) => key.toLowerCase().startsWith(constants_1.RENEGADE_HEADER_PREFIX))
36
- .filter(([key]) => key.toLowerCase() !== constants_1.RENEGADE_AUTH_HEADER.toLowerCase());
37
- // Canonicalize header order (lexicographic by header name, case-insensitive)
38
- const canonicalHeaderEntries = renegadeHeaderEntries.sort(([a], [b]) => a.toLowerCase().localeCompare(b.toLowerCase()));
39
- // Prepare crypto primitives
40
- const encoder = new TextEncoder();
41
- const mac = hmac_1.hmac.create(sha256_1.sha256, apiSecret);
42
- // Add path to signature
43
- mac.update(encoder.encode(path));
44
- // Add Renegade headers to signature
45
- for (const [key, value] of canonicalHeaderEntries) {
46
- mac.update(encoder.encode(key));
47
- mac.update(encoder.encode(value.toString()));
48
- }
49
- // Add stringified body to signature
50
- mac.update(encoder.encode(body));
51
- // Generate signature and return as base64 without padding
52
- const digest = mac.digest();
53
- return encodeBase64(digest);
54
- }
55
- // Decode a base64 string to a Uint8Array.
56
- function decodeBase64(base64) {
57
- return new Uint8Array(buffer_1.Buffer.from(base64, 'base64'));
58
- }
59
- // Encode a Uint8Array to a base64 string without trailing '=' padding.
60
- function encodeBase64(data) {
61
- return buffer_1.Buffer.from(data).toString('base64').replace(/=+$/, '');
62
- }
63
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/dex/renegade/api/auth.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { Network } from '../../../constants';
2
- import { IDexHelper } from '../../../dex-helper/idex-helper';
3
- import { Logger } from '../../../types';
4
- import { ExternalOrder, QuoteQueryParams, SignedExternalQuote, SponsoredMatchResponse, SponsoredQuoteResponse } from './types';
5
- export declare class RenegadeClient {
6
- private readonly dexHelper;
7
- private readonly network;
8
- private readonly apiKey;
9
- private readonly apiSecret;
10
- private readonly logger;
11
- private readonly baseUrl;
12
- constructor(dexHelper: IDexHelper, network: Network, apiKey: string, apiSecret: string, logger: Logger);
13
- requestQuote(externalOrder: ExternalOrder, queryParams?: QuoteQueryParams): Promise<SponsoredQuoteResponse>;
14
- assembleExternalMatch(signedQuote: SignedExternalQuote, queryParams?: QuoteQueryParams & {
15
- updated_order?: ExternalOrder | null;
16
- }): Promise<SponsoredMatchResponse>;
17
- private buildUrlWithQueryParams;
18
- }
@@ -1,82 +0,0 @@
1
- "use strict";
2
- // RenegadeClient - Client for Renegade match endpoint API
3
- // Handles authentication and HTTP requests to Renegade's external match endpoint.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.RenegadeClient = void 0;
6
- const auth_1 = require("./auth");
7
- const constants_1 = require("../constants");
8
- // Default headers for Renegade API requests
9
- const DEFAULT_RENEGADE_HEADERS = {
10
- 'content-type': 'application/json',
11
- accept: 'application/json;number=string',
12
- };
13
- // Client for interacting with Renegade match endpoint API
14
- class RenegadeClient {
15
- dexHelper;
16
- network;
17
- apiKey;
18
- apiSecret;
19
- logger;
20
- baseUrl;
21
- constructor(dexHelper, network, apiKey, apiSecret, logger) {
22
- this.dexHelper = dexHelper;
23
- this.network = network;
24
- this.apiKey = apiKey;
25
- this.apiSecret = apiSecret;
26
- this.logger = logger;
27
- this.baseUrl = (0, constants_1.buildRenegadeApiUrl)(this.network);
28
- }
29
- // Request a quote from Renegade API
30
- async requestQuote(externalOrder, queryParams) {
31
- const requestBody = {
32
- external_order: externalOrder,
33
- };
34
- const { url: quoteUrl, pathWithQuery } = this.buildUrlWithQueryParams(constants_1.RENEGADE_QUOTE_ENDPOINT, queryParams);
35
- const headers = (0, auth_1.generateRenegadeAuthHeaders)(pathWithQuery, JSON.stringify(requestBody), DEFAULT_RENEGADE_HEADERS, this.apiKey, this.apiSecret);
36
- this.logger.debug('Requesting quote from Renegade API', {
37
- url: quoteUrl,
38
- order: externalOrder,
39
- queryParams,
40
- });
41
- const response = await this.dexHelper.httpRequest.post(quoteUrl, requestBody, constants_1.RENEGADE_API_TIMEOUT_MS, headers);
42
- return response;
43
- }
44
- // Assemble an external match from a signed quote
45
- async assembleExternalMatch(signedQuote, queryParams) {
46
- const requestBody = {
47
- signed_quote: signedQuote,
48
- };
49
- if (queryParams?.updated_order !== undefined) {
50
- requestBody.updated_order = queryParams.updated_order;
51
- }
52
- const { updated_order, ...urlQueryParams } = queryParams || {};
53
- const { url: assembleUrl, pathWithQuery } = this.buildUrlWithQueryParams(constants_1.RENEGADE_ASSEMBLE_ENDPOINT, urlQueryParams);
54
- const headers = (0, auth_1.generateRenegadeAuthHeaders)(pathWithQuery, JSON.stringify(requestBody), DEFAULT_RENEGADE_HEADERS, this.apiKey, this.apiSecret);
55
- this.logger.debug('Assembling external match from Renegade API', {
56
- url: assembleUrl,
57
- queryParams,
58
- });
59
- const response = await this.dexHelper.httpRequest.post(assembleUrl, requestBody, constants_1.RENEGADE_API_TIMEOUT_MS, headers);
60
- this.logger.debug('Assembled external match from Renegade API', JSON.stringify(response, null, 2));
61
- return response;
62
- }
63
- // Build URL with query parameters from endpoint path and optional query params
64
- buildUrlWithQueryParams(endpoint, queryParams) {
65
- const url = new URL(endpoint, this.baseUrl);
66
- if (queryParams) {
67
- const searchParams = new URLSearchParams();
68
- for (const [key, value] of Object.entries(queryParams)) {
69
- if (value !== undefined) {
70
- searchParams.append(key, value.toString());
71
- }
72
- }
73
- url.search = searchParams.toString();
74
- }
75
- return {
76
- url: url.toString(),
77
- pathWithQuery: url.pathname + url.search,
78
- };
79
- }
80
- }
81
- exports.RenegadeClient = RenegadeClient;
82
- //# sourceMappingURL=renegade-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"renegade-client.js","sourceRoot":"","sources":["../../../../src/dex/renegade/api/renegade-client.ts"],"names":[],"mappings":"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"}
@@ -1,110 +0,0 @@
1
- export type AssembleExternalMatchRequest = {
2
- signed_quote: SignedExternalQuote;
3
- do_gas_estimation?: boolean;
4
- allow_shared?: boolean;
5
- matching_pool?: string;
6
- relayer_fee_rate?: number;
7
- receiver_address?: string | null;
8
- updated_order?: ExternalOrder | null;
9
- };
10
- export type ExternalOrder = {
11
- quote_mint: string;
12
- base_mint: string;
13
- side: 'Buy' | 'Sell';
14
- base_amount: string;
15
- quote_amount: string;
16
- exact_base_output: string;
17
- exact_quote_output: string;
18
- min_fill_size: string;
19
- };
20
- export type ExternalQuoteRequest = {
21
- external_order: ExternalOrder;
22
- matching_pool?: string;
23
- relayer_fee_rate?: number;
24
- };
25
- export type SignedExternalQuote = {
26
- quote: ApiExternalQuote;
27
- signature: string;
28
- };
29
- export type SponsoredMatchResponse = {
30
- match_bundle: AtomicMatchApiBundle;
31
- is_sponsored: boolean;
32
- gas_sponsorship_info?: GasSponsorshipInfo | null;
33
- };
34
- export type SponsoredQuoteResponse = {
35
- signed_quote: SignedExternalQuote;
36
- gas_sponsorship_info?: SignedGasSponsorshipInfo | null;
37
- };
38
- export type QuoteQueryParams = {
39
- disable_gas_sponsorship?: boolean;
40
- refund_address?: string;
41
- refund_native_eth?: boolean;
42
- use_gas_sponsorship?: boolean;
43
- };
44
- type ApiExternalAssetTransfer = {
45
- mint: string;
46
- amount: string;
47
- };
48
- type ApiExternalMatchResult = {
49
- quote_mint: string;
50
- base_mint: string;
51
- quote_amount: string;
52
- base_amount: string;
53
- direction: 'Buy' | 'Sell';
54
- };
55
- type ApiTimestampedPrice = {
56
- price: string;
57
- timestamp: number;
58
- };
59
- type AtomicMatchApiBundle = {
60
- match_result: ApiExternalMatchResult;
61
- fees: FeeTake;
62
- receive: ApiExternalAssetTransfer;
63
- send: ApiExternalAssetTransfer;
64
- settlement_tx: TransactionRequest;
65
- };
66
- type ApiExternalQuote = {
67
- order: ExternalOrder;
68
- match_result: ApiExternalMatchResult;
69
- fees: FeeTake;
70
- send: ApiExternalAssetTransfer;
71
- receive: ApiExternalAssetTransfer;
72
- price: ApiTimestampedPrice;
73
- timestamp: number;
74
- };
75
- type FeeTake = {
76
- relayer_fee: string;
77
- protocol_fee: string;
78
- };
79
- type GasSponsorshipInfo = {
80
- refund_amount: string;
81
- refund_native_eth: boolean;
82
- refund_address: string | null;
83
- };
84
- type SignedGasSponsorshipInfo = {
85
- gas_sponsorship_info: GasSponsorshipInfo;
86
- signature: string;
87
- };
88
- type TransactionRequest = {
89
- from?: string | null;
90
- to?: string | null;
91
- gasPrice?: string;
92
- maxFeePerGas?: string;
93
- maxPriorityFeePerGas?: string;
94
- maxFeePerBlobGas?: string;
95
- gas?: string;
96
- value?: string;
97
- input?: string;
98
- data?: string;
99
- nonce?: string;
100
- chainId?: string;
101
- accessList?: Array<{
102
- address: string;
103
- storageKeys: string[];
104
- }>;
105
- type?: string;
106
- blobVersionedHashes?: string[];
107
- sidecar?: Record<string, any>;
108
- authorizationList?: Array<Record<string, any>>;
109
- };
110
- export {};
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RenegadeConfig = void 0;
4
- const constants_1 = require("../../constants");
5
- const constants_2 = require("./constants");
6
- exports.RenegadeConfig = {
7
- [constants_2.RENEGADE_NAME]: {
8
- [constants_1.Network.ARBITRUM]: {
9
- usdcAddress: '0xaf88d065e77c8cc2239327c5edb3a432268e5831',
10
- },
11
- [constants_1.Network.BASE]: {
12
- usdcAddress: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913',
13
- },
14
- },
15
- };
16
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/renegade/config.ts"],"names":[],"mappings":";;;AAEA,+CAA0C;AAC1C,2CAA4C;AAE/B,QAAA,cAAc,GAA4B;IACrD,CAAC,yBAAa,CAAC,EAAE;QACf,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,WAAW,EAAE,4CAA4C;SAC1D;QACD,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,WAAW,EAAE,4CAA4C;SAC1D;KACF;CACF,CAAC"}
@@ -1,25 +0,0 @@
1
- import { Network } from '../../constants';
2
- export declare const RENEGADE_NAME = "Renegade";
3
- export declare const RENEGADE_ARBITRUM_BASE_URL = "https://arbitrum-one.auth-server.renegade.fi";
4
- export declare const RENEGADE_BASE_BASE_URL = "https://base-mainnet.auth-server.renegade.fi";
5
- export declare const RENEGADE_LEVELS_ENDPOINT = "/rfqt/v3/levels";
6
- export declare const RENEGADE_QUOTE_ENDPOINT = "/v0/matching-engine/quote";
7
- export declare const RENEGADE_ASSEMBLE_ENDPOINT = "/v0/matching-engine/assemble-external-match";
8
- export declare function buildRenegadeApiUrl(network: Network): string;
9
- export declare const RENEGADE_LEVELS_CACHE_TTL_SECONDS = 30;
10
- export declare const RENEGADE_LEVELS_POLLING_INTERVAL = 15000;
11
- export declare const RENEGADE_LEVELS_CACHE_KEY = "renegade_levels";
12
- export declare const RENEGADE_TOKEN_METADATA_CACHE_TTL_SECONDS: number;
13
- export declare const RENEGADE_TOKEN_METADATA_POLLING_INTERVAL: number;
14
- export declare const RENEGADE_TOKEN_METADATA_CACHE_KEY = "renegade_token_metadata";
15
- export declare const RENEGADE_QUOTE_CACHE_TTL_SECONDS = 5;
16
- export declare const RENEGADE_QUOTE_CACHE_KEY = "renegade_quote";
17
- export declare const RENEGADE_API_TIMEOUT_MS = 10000;
18
- export declare const RENEGADE_INIT_TIMEOUT_MS = 5000;
19
- export declare const RENEGADE_HEADER_PREFIX = "x-renegade";
20
- export declare const RENEGADE_API_KEY_HEADER = "x-renegade-api-key";
21
- export declare const RENEGADE_AUTH_HEADER = "x-renegade-auth";
22
- export declare const RENEGADE_AUTH_EXPIRATION_HEADER = "x-renegade-auth-expiration";
23
- export declare const REQUEST_SIGNATURE_DURATION_MS = 10000;
24
- export declare const RENEGADE_GAS_COST = 3000000;
25
- export declare const RENEGADE_TOKEN_MAPPINGS_BASE_URL = "https://raw.githubusercontent.com/renegade-fi/token-mappings/main/";
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RENEGADE_TOKEN_MAPPINGS_BASE_URL = exports.RENEGADE_GAS_COST = exports.REQUEST_SIGNATURE_DURATION_MS = exports.RENEGADE_AUTH_EXPIRATION_HEADER = exports.RENEGADE_AUTH_HEADER = exports.RENEGADE_API_KEY_HEADER = exports.RENEGADE_HEADER_PREFIX = exports.RENEGADE_INIT_TIMEOUT_MS = exports.RENEGADE_API_TIMEOUT_MS = exports.RENEGADE_QUOTE_CACHE_KEY = exports.RENEGADE_QUOTE_CACHE_TTL_SECONDS = exports.RENEGADE_TOKEN_METADATA_CACHE_KEY = exports.RENEGADE_TOKEN_METADATA_POLLING_INTERVAL = exports.RENEGADE_TOKEN_METADATA_CACHE_TTL_SECONDS = exports.RENEGADE_LEVELS_CACHE_KEY = exports.RENEGADE_LEVELS_POLLING_INTERVAL = exports.RENEGADE_LEVELS_CACHE_TTL_SECONDS = exports.RENEGADE_ASSEMBLE_ENDPOINT = exports.RENEGADE_QUOTE_ENDPOINT = exports.RENEGADE_LEVELS_ENDPOINT = exports.RENEGADE_BASE_BASE_URL = exports.RENEGADE_ARBITRUM_BASE_URL = exports.RENEGADE_NAME = void 0;
4
- exports.buildRenegadeApiUrl = buildRenegadeApiUrl;
5
- // Constants for Renegade DEX integration
6
- const constants_1 = require("../../constants");
7
- exports.RENEGADE_NAME = 'Renegade';
8
- // Base API URLs for each network
9
- exports.RENEGADE_ARBITRUM_BASE_URL = 'https://arbitrum-one.auth-server.renegade.fi';
10
- exports.RENEGADE_BASE_BASE_URL = 'https://base-mainnet.auth-server.renegade.fi';
11
- exports.RENEGADE_LEVELS_ENDPOINT = '/rfqt/v3/levels';
12
- exports.RENEGADE_QUOTE_ENDPOINT = '/v0/matching-engine/quote';
13
- exports.RENEGADE_ASSEMBLE_ENDPOINT = '/v0/matching-engine/assemble-external-match';
14
- // Get Renegade API base URL for a specific network.
15
- function buildRenegadeApiUrl(network) {
16
- switch (network) {
17
- case constants_1.Network.ARBITRUM:
18
- return exports.RENEGADE_ARBITRUM_BASE_URL;
19
- case constants_1.Network.BASE:
20
- return exports.RENEGADE_BASE_BASE_URL;
21
- default:
22
- throw new Error(`Network ${network} is not supported by Renegade`);
23
- }
24
- }
25
- // Caching constants
26
- exports.RENEGADE_LEVELS_CACHE_TTL_SECONDS = 30;
27
- exports.RENEGADE_LEVELS_POLLING_INTERVAL = 15_000;
28
- exports.RENEGADE_LEVELS_CACHE_KEY = 'renegade_levels';
29
- exports.RENEGADE_TOKEN_METADATA_CACHE_TTL_SECONDS = 24 * 60 * 60; // 24 hours
30
- exports.RENEGADE_TOKEN_METADATA_POLLING_INTERVAL = 24 * 60 * 60 * 1000; // 24 hours
31
- exports.RENEGADE_TOKEN_METADATA_CACHE_KEY = 'renegade_token_metadata';
32
- exports.RENEGADE_QUOTE_CACHE_TTL_SECONDS = 5;
33
- exports.RENEGADE_QUOTE_CACHE_KEY = 'renegade_quote';
34
- // API timeout settings
35
- exports.RENEGADE_API_TIMEOUT_MS = 10_000;
36
- exports.RENEGADE_INIT_TIMEOUT_MS = 5_000;
37
- // Authentication constants
38
- exports.RENEGADE_HEADER_PREFIX = 'x-renegade';
39
- exports.RENEGADE_API_KEY_HEADER = 'x-renegade-api-key';
40
- exports.RENEGADE_AUTH_HEADER = 'x-renegade-auth';
41
- exports.RENEGADE_AUTH_EXPIRATION_HEADER = 'x-renegade-auth-expiration';
42
- exports.REQUEST_SIGNATURE_DURATION_MS = 10_000;
43
- // Gas cost estimation
44
- exports.RENEGADE_GAS_COST = 3_000_000;
45
- // Token metadata API constants
46
- exports.RENEGADE_TOKEN_MAPPINGS_BASE_URL = 'https://raw.githubusercontent.com/renegade-fi/token-mappings/main/';
47
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dex/renegade/constants.ts"],"names":[],"mappings":";;;AAiBA,kDASC;AA1BD,yCAAyC;AACzC,+CAA0C;AAE7B,QAAA,aAAa,GAAG,UAAU,CAAC;AAExC,iCAAiC;AACpB,QAAA,0BAA0B,GACrC,8CAA8C,CAAC;AACpC,QAAA,sBAAsB,GACjC,8CAA8C,CAAC;AAEpC,QAAA,wBAAwB,GAAG,iBAAiB,CAAC;AAC7C,QAAA,uBAAuB,GAAG,2BAA2B,CAAC;AACtD,QAAA,0BAA0B,GACrC,6CAA6C,CAAC;AAEhD,oDAAoD;AACpD,SAAgB,mBAAmB,CAAC,OAAgB;IAClD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,mBAAO,CAAC,QAAQ;YACnB,OAAO,kCAA0B,CAAC;QACpC,KAAK,mBAAO,CAAC,IAAI;YACf,OAAO,8BAAsB,CAAC;QAChC;YACE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,+BAA+B,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,oBAAoB;AACP,QAAA,iCAAiC,GAAG,EAAE,CAAC;AACvC,QAAA,gCAAgC,GAAG,MAAM,CAAC;AAC1C,QAAA,yBAAyB,GAAG,iBAAiB,CAAC;AAE9C,QAAA,yCAAyC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW;AACrE,QAAA,wCAAwC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AAC3E,QAAA,iCAAiC,GAAG,yBAAyB,CAAC;AAE9D,QAAA,gCAAgC,GAAG,CAAC,CAAC;AACrC,QAAA,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,uBAAuB;AACV,QAAA,uBAAuB,GAAG,MAAM,CAAC;AACjC,QAAA,wBAAwB,GAAG,KAAK,CAAC;AAE9C,2BAA2B;AACd,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,uBAAuB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,oBAAoB,GAAG,iBAAiB,CAAC;AACzC,QAAA,+BAA+B,GAAG,4BAA4B,CAAC;AAC/D,QAAA,6BAA6B,GAAG,MAAM,CAAC;AAEpD,sBAAsB;AACT,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAE3C,+BAA+B;AAClB,QAAA,gCAAgC,GAC3C,oEAAoE,CAAC"}
@@ -1,23 +0,0 @@
1
- import { Network } from '../../constants';
2
- import { IDexHelper } from '../../dex-helper';
3
- import { Logger } from '../../types';
4
- import { RenegadeRateFetcherConfig } from './types';
5
- export declare class RateFetcher {
6
- private dexHelper;
7
- private dexKey;
8
- private network;
9
- private logger;
10
- private config;
11
- private levelsFetcher;
12
- private levelsCacheKey;
13
- private levelsCacheTTL;
14
- private tokenMetadataFetcher;
15
- private tokenMetadataCacheKey;
16
- private tokenMetadataCacheTTL;
17
- constructor(dexHelper: IDexHelper, dexKey: string, network: Network, logger: Logger, config: RenegadeRateFetcherConfig);
18
- private getChainName;
19
- private handleLevelsResponse;
20
- private handleTokenMetadataResponse;
21
- start(): void;
22
- stop(): void;
23
- }
@@ -1,135 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RateFetcher = void 0;
4
- const constants_1 = require("../../constants");
5
- const fetcher_1 = require("../../lib/fetcher/fetcher");
6
- const auth_1 = require("./api/auth");
7
- const constants_2 = require("./constants");
8
- const renegade_levels_response_1 = require("./renegade-levels-response");
9
- // RateFetcher for Renegade DEX integration using the Fetcher class.
10
- // This implementation uses the standard Fetcher class with HMAC-SHA256 authentication
11
- // and includes polling functionality for real-time price level updates.
12
- class RateFetcher {
13
- dexHelper;
14
- dexKey;
15
- network;
16
- logger;
17
- config;
18
- levelsFetcher;
19
- levelsCacheKey;
20
- levelsCacheTTL;
21
- tokenMetadataFetcher;
22
- tokenMetadataCacheKey;
23
- tokenMetadataCacheTTL;
24
- constructor(dexHelper, dexKey, network, logger, config) {
25
- this.dexHelper = dexHelper;
26
- this.dexKey = dexKey;
27
- this.network = network;
28
- this.logger = logger;
29
- this.config = config;
30
- this.levelsCacheKey = config.levelsCacheKey;
31
- this.levelsCacheTTL = config.levelsCacheTTL;
32
- this.tokenMetadataCacheKey = config.tokenMetadataCacheKey;
33
- this.tokenMetadataCacheTTL = config.tokenMetadataCacheTTL;
34
- // Build network-specific API URL
35
- const baseUrl = (0, constants_2.buildRenegadeApiUrl)(this.network);
36
- const url = `${baseUrl}${constants_2.RENEGADE_LEVELS_ENDPOINT}`;
37
- // Create authentication function for Renegade API
38
- const authenticate = (options) => {
39
- // Convert headers to string format for auth function
40
- const stringHeaders = {};
41
- for (const [key, value] of Object.entries(options.headers ?? {})) {
42
- stringHeaders[key] = String(value);
43
- }
44
- // Generate authenticated headers using HMAC-SHA256
45
- const authenticatedHeaders = (0, auth_1.generateRenegadeAuthHeaders)(constants_2.RENEGADE_LEVELS_ENDPOINT, options.data ? JSON.stringify(options.data) : '', // Convert body to string
46
- stringHeaders, this.config.apiKey, this.config.apiSecret);
47
- options.headers = authenticatedHeaders;
48
- return options;
49
- };
50
- // Create caster function to validate and transform response
51
- const caster = (data) => {
52
- if (typeof data !== 'object' || data === null) {
53
- throw new Error('Invalid response format from Renegade API');
54
- }
55
- const response = data;
56
- return new renegade_levels_response_1.RenegadeLevelsResponse(response);
57
- };
58
- // Create request info for the Fetcher
59
- const requestInfo = {
60
- requestOptions: {
61
- url,
62
- method: 'GET',
63
- headers: {
64
- 'Content-Type': 'application/json',
65
- },
66
- },
67
- caster,
68
- authenticate,
69
- };
70
- // Initialize the Fetcher
71
- this.levelsFetcher = new fetcher_1.Fetcher(this.dexHelper.httpRequest, {
72
- info: requestInfo,
73
- handler: this.handleLevelsResponse.bind(this),
74
- }, constants_2.RENEGADE_LEVELS_POLLING_INTERVAL, this.logger);
75
- const chainName = this.getChainName();
76
- const tokenUrl = `${constants_2.RENEGADE_TOKEN_MAPPINGS_BASE_URL}${chainName}.json`;
77
- const tokenCaster = (data) => {
78
- if (typeof data !== 'object' || data === null) {
79
- throw new Error('Invalid token metadata response format');
80
- }
81
- return data;
82
- };
83
- const tokenRequestInfo = {
84
- requestOptions: {
85
- url: tokenUrl,
86
- method: 'GET',
87
- },
88
- caster: tokenCaster,
89
- };
90
- this.tokenMetadataFetcher = new fetcher_1.Fetcher(this.dexHelper.httpRequest, {
91
- info: tokenRequestInfo,
92
- handler: this.handleTokenMetadataResponse.bind(this),
93
- }, constants_2.RENEGADE_TOKEN_METADATA_POLLING_INTERVAL, this.logger);
94
- }
95
- // Get chain name for token mappings URL.
96
- getChainName() {
97
- switch (this.network) {
98
- case constants_1.Network.ARBITRUM:
99
- return 'arbitrum-one';
100
- case constants_1.Network.BASE:
101
- return 'base-mainnet';
102
- default:
103
- throw new Error(`Network ${this.network} is not supported for token metadata`);
104
- }
105
- }
106
- // Handle successful levels response from the Fetcher.
107
- handleLevelsResponse(levelsResponse) {
108
- const rawData = levelsResponse.getRawData();
109
- this.logger.info(`Renegade levels response: ${JSON.stringify(rawData)}`);
110
- this.dexHelper.cache.setex(this.dexKey, this.network, this.levelsCacheKey, this.levelsCacheTTL, JSON.stringify(rawData));
111
- }
112
- // Handle successful token metadata response from the Fetcher.
113
- handleTokenMetadataResponse(tokenRemap) {
114
- const tokensMap = {};
115
- for (const tokenInfo of tokenRemap.tokens) {
116
- const address = tokenInfo.address.toLowerCase();
117
- tokensMap[address] = {
118
- address: tokenInfo.address,
119
- decimals: tokenInfo.decimals,
120
- symbol: tokenInfo.ticker,
121
- };
122
- }
123
- this.dexHelper.cache.setex(this.dexKey, this.network, this.tokenMetadataCacheKey, this.tokenMetadataCacheTTL, JSON.stringify(tokensMap));
124
- }
125
- start() {
126
- this.levelsFetcher.startPolling();
127
- this.tokenMetadataFetcher.startPolling();
128
- }
129
- stop() {
130
- this.levelsFetcher.stopPolling();
131
- this.tokenMetadataFetcher.stopPolling();
132
- }
133
- }
134
- exports.RateFetcher = RateFetcher;
135
- //# sourceMappingURL=rate-fetcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/renegade/rate-fetcher.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { Address, PoolLiquidity } from '../../types';
2
- import { RenegadeDepth } from './types';
3
- export declare class RenegadeLevelsResponse {
4
- private readonly levels;
5
- private readonly poolLiquidity;
6
- constructor(data: {
7
- [pairIdentifier: string]: RenegadeDepth;
8
- });
9
- getRawData(): {
10
- [pairIdentifier: string]: RenegadeDepth;
11
- };
12
- getPoolLiquidity(tokenAddress: Address): PoolLiquidity[];
13
- getDirectionalLiquidityForToken(tokenAddress: Address, usdcAddress: Address): Array<{
14
- baseToken: Address;
15
- quoteToken: Address;
16
- outboundLiquidityUSD: number;
17
- reverseLiquidityUSD: number;
18
- isTokenBase: boolean;
19
- }>;
20
- private parsePairIdentifier;
21
- private calculateLiquidityUSD;
22
- }