@steerprotocol/sdk 1.27.0 → 1.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (878) hide show
  1. package/dist/cjs/base/FeeManagerClient.js +9 -0
  2. package/dist/cjs/base/FeeManagerClient.js.map +1 -0
  3. package/dist/cjs/base/PoolClient.js +1 -0
  4. package/dist/cjs/base/PoolClient.js.map +1 -0
  5. package/dist/cjs/base/SmartRewardClient.js +1 -0
  6. package/dist/cjs/base/SmartRewardClient.js.map +1 -0
  7. package/dist/cjs/base/SmartRewards.js +1 -0
  8. package/dist/cjs/base/SmartRewards.js.map +1 -0
  9. package/dist/cjs/base/StakingClient.js +1 -0
  10. package/dist/cjs/base/StakingClient.js.map +1 -0
  11. package/dist/cjs/base/SubgraphClient.js +1 -0
  12. package/dist/cjs/base/SubgraphClient.js.map +1 -0
  13. package/dist/cjs/base/VaultClient.js +1 -0
  14. package/dist/cjs/base/VaultClient.js.map +1 -0
  15. package/dist/cjs/base/vault/deposit/index.js +1 -0
  16. package/dist/cjs/base/vault/deposit/index.js.map +1 -0
  17. package/dist/cjs/base/vault/deposit/types.js +1 -0
  18. package/dist/cjs/base/vault/deposit/types.js.map +1 -0
  19. package/dist/cjs/base/vault/single-asset/calculateLimitPrice.js +1 -0
  20. package/dist/cjs/base/vault/single-asset/calculateLimitPrice.js.map +1 -0
  21. package/dist/cjs/base/vault/single-asset/calculateSwapAmount.js +1 -0
  22. package/dist/cjs/base/vault/single-asset/calculateSwapAmount.js.map +1 -0
  23. package/dist/cjs/base/vault/single-asset/estimateLpTokens.js +1 -0
  24. package/dist/cjs/base/vault/single-asset/estimateLpTokens.js.map +1 -0
  25. package/dist/cjs/base/vault/single-asset/index.js +1 -0
  26. package/dist/cjs/base/vault/single-asset/index.js.map +1 -0
  27. package/dist/cjs/base/vault/single-asset/simulateSwap.js +1 -0
  28. package/dist/cjs/base/vault/single-asset/simulateSwap.js.map +1 -0
  29. package/dist/cjs/base/vault/single-asset/singleAssetDeposit.js +1 -0
  30. package/dist/cjs/base/vault/single-asset/singleAssetDeposit.js.map +1 -0
  31. package/dist/cjs/base/vault/single-asset/types.js +1 -0
  32. package/dist/cjs/base/vault/single-asset/types.js.map +1 -0
  33. package/dist/cjs/base/vault/utils.js +1 -0
  34. package/dist/cjs/base/vault/utils.js.map +1 -0
  35. package/dist/cjs/base/vault/withdraw/index.js +1 -0
  36. package/dist/cjs/base/vault/withdraw/index.js.map +1 -0
  37. package/dist/cjs/base/vault/withdraw/types.js +1 -0
  38. package/dist/cjs/base/vault/withdraw/types.js.map +1 -0
  39. package/dist/cjs/client.js +1 -0
  40. package/dist/cjs/client.js.map +1 -0
  41. package/dist/cjs/const/abis/UniswapPool.js +1 -0
  42. package/dist/cjs/const/abis/UniswapPool.js.map +1 -0
  43. package/dist/cjs/const/abis/erc1155.js +1 -0
  44. package/dist/cjs/const/abis/erc1155.js.map +1 -0
  45. package/dist/cjs/const/abis/erc20.js +1 -0
  46. package/dist/cjs/const/abis/erc20.js.map +1 -0
  47. package/dist/cjs/const/abis/erc721.js +1 -0
  48. package/dist/cjs/const/abis/erc721.js.map +1 -0
  49. package/dist/cjs/const/abis/feeManager.js +1 -0
  50. package/dist/cjs/const/abis/feeManager.js.map +1 -0
  51. package/dist/cjs/const/abis/index.js +1 -0
  52. package/dist/cjs/const/abis/index.js.map +1 -0
  53. package/dist/cjs/const/abis/quoter.js +1 -0
  54. package/dist/cjs/const/abis/quoter.js.map +1 -0
  55. package/dist/cjs/const/abis/singleTokenDeposit.js +1 -0
  56. package/dist/cjs/const/abis/singleTokenDeposit.js.map +1 -0
  57. package/dist/cjs/const/abis/vaultFees.js +1 -0
  58. package/dist/cjs/const/abis/vaultFees.js.map +1 -0
  59. package/dist/cjs/const/amm/configs/ammConfig.js +1 -0
  60. package/dist/cjs/const/amm/configs/ammConfig.js.map +1 -0
  61. package/dist/cjs/const/amm/configs/protocols/aerodrome-v2.js +1 -0
  62. package/dist/cjs/const/amm/configs/protocols/aerodrome-v2.js.map +1 -0
  63. package/dist/cjs/const/amm/configs/protocols/aerodrome.js +1 -0
  64. package/dist/cjs/const/amm/configs/protocols/aerodrome.js.map +1 -0
  65. package/dist/cjs/const/amm/configs/protocols/arthswap.js +1 -0
  66. package/dist/cjs/const/amm/configs/protocols/arthswap.js.map +1 -0
  67. package/dist/cjs/const/amm/configs/protocols/baseswap.js +1 -0
  68. package/dist/cjs/const/amm/configs/protocols/baseswap.js.map +1 -0
  69. package/dist/cjs/const/amm/configs/protocols/basex.js +1 -0
  70. package/dist/cjs/const/amm/configs/protocols/basex.js.map +1 -0
  71. package/dist/cjs/const/amm/configs/protocols/beam.js +1 -0
  72. package/dist/cjs/const/amm/configs/protocols/beam.js.map +1 -0
  73. package/dist/cjs/const/amm/configs/protocols/beamswap.js +1 -0
  74. package/dist/cjs/const/amm/configs/protocols/beamswap.js.map +1 -0
  75. package/dist/cjs/const/amm/configs/protocols/blackhole.js +1 -0
  76. package/dist/cjs/const/amm/configs/protocols/blackhole.js.map +1 -0
  77. package/dist/cjs/const/amm/configs/protocols/camelot.js +1 -0
  78. package/dist/cjs/const/amm/configs/protocols/camelot.js.map +1 -0
  79. package/dist/cjs/const/amm/configs/protocols/crust.js +1 -0
  80. package/dist/cjs/const/amm/configs/protocols/crust.js.map +1 -0
  81. package/dist/cjs/const/amm/configs/protocols/cypher.js +1 -0
  82. package/dist/cjs/const/amm/configs/protocols/cypher.js.map +1 -0
  83. package/dist/cjs/const/amm/configs/protocols/dodo.js +1 -0
  84. package/dist/cjs/const/amm/configs/protocols/dodo.js.map +1 -0
  85. package/dist/cjs/const/amm/configs/protocols/dragonswap.js +1 -0
  86. package/dist/cjs/const/amm/configs/protocols/dragonswap.js.map +1 -0
  87. package/dist/cjs/const/amm/configs/protocols/eddy.js +1 -0
  88. package/dist/cjs/const/amm/configs/protocols/eddy.js.map +1 -0
  89. package/dist/cjs/const/amm/configs/protocols/equilibre.js +1 -0
  90. package/dist/cjs/const/amm/configs/protocols/equilibre.js.map +1 -0
  91. package/dist/cjs/const/amm/configs/protocols/fenix.js +1 -0
  92. package/dist/cjs/const/amm/configs/protocols/fenix.js.map +1 -0
  93. package/dist/cjs/const/amm/configs/protocols/forge.js +1 -0
  94. package/dist/cjs/const/amm/configs/protocols/forge.js.map +1 -0
  95. package/dist/cjs/const/amm/configs/protocols/fusionx.js +1 -0
  96. package/dist/cjs/const/amm/configs/protocols/fusionx.js.map +1 -0
  97. package/dist/cjs/const/amm/configs/protocols/glyph.js +1 -0
  98. package/dist/cjs/const/amm/configs/protocols/glyph.js.map +1 -0
  99. package/dist/cjs/const/amm/configs/protocols/henjin.js +1 -0
  100. package/dist/cjs/const/amm/configs/protocols/henjin.js.map +1 -0
  101. package/dist/cjs/const/amm/configs/protocols/hercules.js +1 -0
  102. package/dist/cjs/const/amm/configs/protocols/hercules.js.map +1 -0
  103. package/dist/cjs/const/amm/configs/protocols/horiza.js +1 -0
  104. package/dist/cjs/const/amm/configs/protocols/horiza.js.map +1 -0
  105. package/dist/cjs/const/amm/configs/protocols/index.js +1 -0
  106. package/dist/cjs/const/amm/configs/protocols/index.js.map +1 -0
  107. package/dist/cjs/const/amm/configs/protocols/katana.js +1 -0
  108. package/dist/cjs/const/amm/configs/protocols/katana.js.map +1 -0
  109. package/dist/cjs/const/amm/configs/protocols/katanaIntegral.js +1 -0
  110. package/dist/cjs/const/amm/configs/protocols/katanaIntegral.js.map +1 -0
  111. package/dist/cjs/const/amm/configs/protocols/kim.js +1 -0
  112. package/dist/cjs/const/amm/configs/protocols/kim.js.map +1 -0
  113. package/dist/cjs/const/amm/configs/protocols/kinetix.js +1 -0
  114. package/dist/cjs/const/amm/configs/protocols/kinetix.js.map +1 -0
  115. package/dist/cjs/const/amm/configs/protocols/kodiak.js +1 -0
  116. package/dist/cjs/const/amm/configs/protocols/kodiak.js.map +1 -0
  117. package/dist/cjs/const/amm/configs/protocols/kyo.js +1 -0
  118. package/dist/cjs/const/amm/configs/protocols/kyo.js.map +1 -0
  119. package/dist/cjs/const/amm/configs/protocols/linehub.js +1 -0
  120. package/dist/cjs/const/amm/configs/protocols/linehub.js.map +1 -0
  121. package/dist/cjs/const/amm/configs/protocols/lynex.js +1 -0
  122. package/dist/cjs/const/amm/configs/protocols/lynex.js.map +1 -0
  123. package/dist/cjs/const/amm/configs/protocols/machinex.js +1 -0
  124. package/dist/cjs/const/amm/configs/protocols/machinex.js.map +1 -0
  125. package/dist/cjs/const/amm/configs/protocols/maia.js +1 -0
  126. package/dist/cjs/const/amm/configs/protocols/maia.js.map +1 -0
  127. package/dist/cjs/const/amm/configs/protocols/metavault.js +1 -0
  128. package/dist/cjs/const/amm/configs/protocols/metavault.js.map +1 -0
  129. package/dist/cjs/const/amm/configs/protocols/nest.js +1 -0
  130. package/dist/cjs/const/amm/configs/protocols/nest.js.map +1 -0
  131. package/dist/cjs/const/amm/configs/protocols/novaswap.js +1 -0
  132. package/dist/cjs/const/amm/configs/protocols/novaswap.js.map +1 -0
  133. package/dist/cjs/const/amm/configs/protocols/ocelex.js +1 -0
  134. package/dist/cjs/const/amm/configs/protocols/ocelex.js.map +1 -0
  135. package/dist/cjs/const/amm/configs/protocols/pancakeswap.js +1 -0
  136. package/dist/cjs/const/amm/configs/protocols/pancakeswap.js.map +1 -0
  137. package/dist/cjs/const/amm/configs/protocols/poolshark.js +1 -0
  138. package/dist/cjs/const/amm/configs/protocols/poolshark.js.map +1 -0
  139. package/dist/cjs/const/amm/configs/protocols/quickswap-algebra.js +1 -0
  140. package/dist/cjs/const/amm/configs/protocols/quickswap-algebra.js.map +1 -0
  141. package/dist/cjs/const/amm/configs/protocols/quickswap-integral.js +1 -0
  142. package/dist/cjs/const/amm/configs/protocols/quickswap-integral.js.map +1 -0
  143. package/dist/cjs/const/amm/configs/protocols/quickswap-univ3.js +1 -0
  144. package/dist/cjs/const/amm/configs/protocols/quickswap-univ3.js.map +1 -0
  145. package/dist/cjs/const/amm/configs/protocols/quickswap.js +1 -0
  146. package/dist/cjs/const/amm/configs/protocols/quickswap.js.map +1 -0
  147. package/dist/cjs/const/amm/configs/protocols/retro.js +1 -0
  148. package/dist/cjs/const/amm/configs/protocols/retro.js.map +1 -0
  149. package/dist/cjs/const/amm/configs/protocols/sailor.js +1 -0
  150. package/dist/cjs/const/amm/configs/protocols/sailor.js.map +1 -0
  151. package/dist/cjs/const/amm/configs/protocols/shadow.js +1 -0
  152. package/dist/cjs/const/amm/configs/protocols/shadow.js.map +1 -0
  153. package/dist/cjs/const/amm/configs/protocols/silverswap.js +1 -0
  154. package/dist/cjs/const/amm/configs/protocols/silverswap.js.map +1 -0
  155. package/dist/cjs/const/amm/configs/protocols/spark.js +1 -0
  156. package/dist/cjs/const/amm/configs/protocols/spark.js.map +1 -0
  157. package/dist/cjs/const/amm/configs/protocols/spark32.js +1 -0
  158. package/dist/cjs/const/amm/configs/protocols/spark32.js.map +1 -0
  159. package/dist/cjs/const/amm/configs/protocols/spookyswap.js +1 -0
  160. package/dist/cjs/const/amm/configs/protocols/spookyswap.js.map +1 -0
  161. package/dist/cjs/const/amm/configs/protocols/stellaswap.js +1 -0
  162. package/dist/cjs/const/amm/configs/protocols/stellaswap.js.map +1 -0
  163. package/dist/cjs/const/amm/configs/protocols/supswap.js +1 -0
  164. package/dist/cjs/const/amm/configs/protocols/supswap.js.map +1 -0
  165. package/dist/cjs/const/amm/configs/protocols/sushi.js +1 -0
  166. package/dist/cjs/const/amm/configs/protocols/sushi.js.map +1 -0
  167. package/dist/cjs/const/amm/configs/protocols/swapmode.js +1 -0
  168. package/dist/cjs/const/amm/configs/protocols/swapmode.js.map +1 -0
  169. package/dist/cjs/const/amm/configs/protocols/swapsicle.js +1 -0
  170. package/dist/cjs/const/amm/configs/protocols/swapsicle.js.map +1 -0
  171. package/dist/cjs/const/amm/configs/protocols/thena.js +1 -0
  172. package/dist/cjs/const/amm/configs/protocols/thena.js.map +1 -0
  173. package/dist/cjs/const/amm/configs/protocols/thick.js +1 -0
  174. package/dist/cjs/const/amm/configs/protocols/thick.js.map +1 -0
  175. package/dist/cjs/const/amm/configs/protocols/thickv2.js +1 -0
  176. package/dist/cjs/const/amm/configs/protocols/thickv2.js.map +1 -0
  177. package/dist/cjs/const/amm/configs/protocols/thruster.js +1 -0
  178. package/dist/cjs/const/amm/configs/protocols/thruster.js.map +1 -0
  179. package/dist/cjs/const/amm/configs/protocols/uniswap.js +1 -0
  180. package/dist/cjs/const/amm/configs/protocols/uniswap.js.map +1 -0
  181. package/dist/cjs/const/amm/configs/protocols/wasabee.js +1 -0
  182. package/dist/cjs/const/amm/configs/protocols/wasabee.js.map +1 -0
  183. package/dist/cjs/const/amm/index.js +1 -0
  184. package/dist/cjs/const/amm/index.js.map +1 -0
  185. package/dist/cjs/const/amm/utils/beacon.js +1 -0
  186. package/dist/cjs/const/amm/utils/beacon.js.map +1 -0
  187. package/dist/cjs/const/amm/utils/contracts.js +1 -0
  188. package/dist/cjs/const/amm/utils/contracts.js.map +1 -0
  189. package/dist/cjs/const/amm/utils/index.js +1 -0
  190. package/dist/cjs/const/amm/utils/index.js.map +1 -0
  191. package/dist/cjs/const/amm/utils/protocol.js +1 -0
  192. package/dist/cjs/const/amm/utils/protocol.js.map +1 -0
  193. package/dist/cjs/const/api.js +1 -0
  194. package/dist/cjs/const/api.js.map +1 -0
  195. package/dist/cjs/const/capabilities.js +1 -0
  196. package/dist/cjs/const/capabilities.js.map +1 -0
  197. package/dist/cjs/const/chain.js +1 -0
  198. package/dist/cjs/const/chain.js.map +1 -0
  199. package/dist/cjs/const/deployments/abis.js +1 -0
  200. package/dist/cjs/const/deployments/abis.js.map +1 -0
  201. package/dist/cjs/const/deployments/apechain.js +1 -0
  202. package/dist/cjs/const/deployments/apechain.js.map +1 -0
  203. package/dist/cjs/const/deployments/arbitrum.js +1 -0
  204. package/dist/cjs/const/deployments/arbitrum.js.map +1 -0
  205. package/dist/cjs/const/deployments/arbitrumgoerli.js +1 -0
  206. package/dist/cjs/const/deployments/arbitrumgoerli.js.map +1 -0
  207. package/dist/cjs/const/deployments/astar.js +1 -0
  208. package/dist/cjs/const/deployments/astar.js.map +1 -0
  209. package/dist/cjs/const/deployments/astarzkevm.js +1 -0
  210. package/dist/cjs/const/deployments/astarzkevm.js.map +1 -0
  211. package/dist/cjs/const/deployments/avalanche.js +1 -0
  212. package/dist/cjs/const/deployments/avalanche.js.map +1 -0
  213. package/dist/cjs/const/deployments/bartiotest.js +1 -0
  214. package/dist/cjs/const/deployments/bartiotest.js.map +1 -0
  215. package/dist/cjs/const/deployments/base.js +1 -0
  216. package/dist/cjs/const/deployments/base.js.map +1 -0
  217. package/dist/cjs/const/deployments/bera.js +1 -0
  218. package/dist/cjs/const/deployments/bera.js.map +1 -0
  219. package/dist/cjs/const/deployments/berachainbartio.js +1 -0
  220. package/dist/cjs/const/deployments/berachainbartio.js.map +1 -0
  221. package/dist/cjs/const/deployments/blast.js +1 -0
  222. package/dist/cjs/const/deployments/blast.js.map +1 -0
  223. package/dist/cjs/const/deployments/bsc.js +1 -0
  224. package/dist/cjs/const/deployments/bsc.js.map +1 -0
  225. package/dist/cjs/const/deployments/celo.js +1 -0
  226. package/dist/cjs/const/deployments/celo.js.map +1 -0
  227. package/dist/cjs/const/deployments/core.js +1 -0
  228. package/dist/cjs/const/deployments/core.js.map +1 -0
  229. package/dist/cjs/const/deployments/eth.js +1 -0
  230. package/dist/cjs/const/deployments/eth.js.map +1 -0
  231. package/dist/cjs/const/deployments/evmos.js +1 -0
  232. package/dist/cjs/const/deployments/evmos.js.map +1 -0
  233. package/dist/cjs/const/deployments/fantom.js +1 -0
  234. package/dist/cjs/const/deployments/fantom.js.map +1 -0
  235. package/dist/cjs/const/deployments/filecoin.js +1 -0
  236. package/dist/cjs/const/deployments/filecoin.js.map +1 -0
  237. package/dist/cjs/const/deployments/flare.js +1 -0
  238. package/dist/cjs/const/deployments/flare.js.map +1 -0
  239. package/dist/cjs/const/deployments/goerli.js +1 -0
  240. package/dist/cjs/const/deployments/goerli.js.map +1 -0
  241. package/dist/cjs/const/deployments/hemi.js +1 -0
  242. package/dist/cjs/const/deployments/hemi.js.map +1 -0
  243. package/dist/cjs/const/deployments/hyperevm.js +1 -0
  244. package/dist/cjs/const/deployments/hyperevm.js.map +1 -0
  245. package/dist/cjs/const/deployments/index.js +1 -0
  246. package/dist/cjs/const/deployments/index.js.map +1 -0
  247. package/dist/cjs/const/deployments/katana.js +1 -0
  248. package/dist/cjs/const/deployments/katana.js.map +1 -0
  249. package/dist/cjs/const/deployments/kava.js +1 -0
  250. package/dist/cjs/const/deployments/kava.js.map +1 -0
  251. package/dist/cjs/const/deployments/linea.js +1 -0
  252. package/dist/cjs/const/deployments/linea.js.map +1 -0
  253. package/dist/cjs/const/deployments/localhost.js +1 -0
  254. package/dist/cjs/const/deployments/localhost.js.map +1 -0
  255. package/dist/cjs/const/deployments/manta.js +1 -0
  256. package/dist/cjs/const/deployments/manta.js.map +1 -0
  257. package/dist/cjs/const/deployments/mantle.js +1 -0
  258. package/dist/cjs/const/deployments/mantle.js.map +1 -0
  259. package/dist/cjs/const/deployments/metis.js +1 -0
  260. package/dist/cjs/const/deployments/metis.js.map +1 -0
  261. package/dist/cjs/const/deployments/mode.js +1 -0
  262. package/dist/cjs/const/deployments/mode.js.map +1 -0
  263. package/dist/cjs/const/deployments/moonbeam.js +1 -0
  264. package/dist/cjs/const/deployments/moonbeam.js.map +1 -0
  265. package/dist/cjs/const/deployments/mumbai.js +1 -0
  266. package/dist/cjs/const/deployments/mumbai.js.map +1 -0
  267. package/dist/cjs/const/deployments/nibiru.js +1 -0
  268. package/dist/cjs/const/deployments/nibiru.js.map +1 -0
  269. package/dist/cjs/const/deployments/okxtestnet.js +1 -0
  270. package/dist/cjs/const/deployments/okxtestnet.js.map +1 -0
  271. package/dist/cjs/const/deployments/optimism.js +1 -0
  272. package/dist/cjs/const/deployments/optimism.js.map +1 -0
  273. package/dist/cjs/const/deployments/optimismgoerli.js +1 -0
  274. package/dist/cjs/const/deployments/optimismgoerli.js.map +1 -0
  275. package/dist/cjs/const/deployments/peaq.js +1 -0
  276. package/dist/cjs/const/deployments/peaq.js.map +1 -0
  277. package/dist/cjs/const/deployments/polygon.js +1 -0
  278. package/dist/cjs/const/deployments/polygon.js.map +1 -0
  279. package/dist/cjs/const/deployments/polyzkevm.js +1 -0
  280. package/dist/cjs/const/deployments/polyzkevm.js.map +1 -0
  281. package/dist/cjs/const/deployments/pyzkevm.js +1 -0
  282. package/dist/cjs/const/deployments/pyzkevm.js.map +1 -0
  283. package/dist/cjs/const/deployments/ronin.js +1 -0
  284. package/dist/cjs/const/deployments/ronin.js.map +1 -0
  285. package/dist/cjs/const/deployments/rootstock.js +1 -0
  286. package/dist/cjs/const/deployments/rootstock.js.map +1 -0
  287. package/dist/cjs/const/deployments/saga.js +1 -0
  288. package/dist/cjs/const/deployments/saga.js.map +1 -0
  289. package/dist/cjs/const/deployments/scroll.js +1 -0
  290. package/dist/cjs/const/deployments/scroll.js.map +1 -0
  291. package/dist/cjs/const/deployments/sei.js +1 -0
  292. package/dist/cjs/const/deployments/sei.js.map +1 -0
  293. package/dist/cjs/const/deployments/soneium.js +1 -0
  294. package/dist/cjs/const/deployments/soneium.js.map +1 -0
  295. package/dist/cjs/const/deployments/sonic.js +1 -0
  296. package/dist/cjs/const/deployments/sonic.js.map +1 -0
  297. package/dist/cjs/const/deployments/taiko.js +1 -0
  298. package/dist/cjs/const/deployments/taiko.js.map +1 -0
  299. package/dist/cjs/const/deployments/tataratestnet.js +1 -0
  300. package/dist/cjs/const/deployments/tataratestnet.js.map +1 -0
  301. package/dist/cjs/const/deployments/telos.js +1 -0
  302. package/dist/cjs/const/deployments/telos.js.map +1 -0
  303. package/dist/cjs/const/deployments/thundercore.js +1 -0
  304. package/dist/cjs/const/deployments/thundercore.js.map +1 -0
  305. package/dist/cjs/const/deployments/uni.js +1 -0
  306. package/dist/cjs/const/deployments/uni.js.map +1 -0
  307. package/dist/cjs/const/deployments/xlayer.js +1 -0
  308. package/dist/cjs/const/deployments/xlayer.js.map +1 -0
  309. package/dist/cjs/const/deployments/zeta.js +1 -0
  310. package/dist/cjs/const/deployments/zeta.js.map +1 -0
  311. package/dist/cjs/const/deployments/zircuit.js +1 -0
  312. package/dist/cjs/const/deployments/zircuit.js.map +1 -0
  313. package/dist/cjs/const/deployments/zklinknova.js +1 -0
  314. package/dist/cjs/const/deployments/zklinknova.js.map +1 -0
  315. package/dist/cjs/const/index.js +1 -0
  316. package/dist/cjs/const/index.js.map +1 -0
  317. package/dist/cjs/const/network.js +1 -0
  318. package/dist/cjs/const/network.js.map +1 -0
  319. package/dist/cjs/const/protocol.js +1 -0
  320. package/dist/cjs/const/protocol.js.map +1 -0
  321. package/dist/cjs/const/quoter.js +1 -0
  322. package/dist/cjs/const/quoter.js.map +1 -0
  323. package/dist/cjs/const/stabilityVaults/index.js +1 -0
  324. package/dist/cjs/const/stabilityVaults/index.js.map +1 -0
  325. package/dist/cjs/const/stabilityVaults/stabilityVaultsConfig.js +1 -0
  326. package/dist/cjs/const/stabilityVaults/stabilityVaultsConfig.js.map +1 -0
  327. package/dist/cjs/const/subgraph.js +1 -0
  328. package/dist/cjs/const/subgraph.js.map +1 -0
  329. package/dist/cjs/const/thegraph.js +1 -0
  330. package/dist/cjs/const/thegraph.js.map +1 -0
  331. package/dist/cjs/index.js +1 -0
  332. package/dist/cjs/index.js.map +1 -0
  333. package/dist/cjs/scripts/processDeployments.js +1 -0
  334. package/dist/cjs/scripts/processDeployments.js.map +1 -0
  335. package/dist/cjs/types.js +1 -0
  336. package/dist/cjs/types.js.map +1 -0
  337. package/dist/cjs/utils/PoolQueryAdapter.js +1 -0
  338. package/dist/cjs/utils/PoolQueryAdapter.js.map +1 -0
  339. package/dist/cjs/utils/SubgraphVaultClient.js +1 -0
  340. package/dist/cjs/utils/SubgraphVaultClient.js.map +1 -0
  341. package/dist/cjs/utils/subgraph-types.js +1 -0
  342. package/dist/cjs/utils/subgraph-types.js.map +1 -0
  343. package/dist/esm/base/FeeManagerClient.js +9 -0
  344. package/dist/esm/base/FeeManagerClient.js.map +1 -0
  345. package/dist/esm/base/PoolClient.js +1 -0
  346. package/dist/esm/base/PoolClient.js.map +1 -0
  347. package/dist/esm/base/SmartRewardClient.js +1 -0
  348. package/dist/esm/base/SmartRewardClient.js.map +1 -0
  349. package/dist/esm/base/SmartRewards.js +1 -0
  350. package/dist/esm/base/SmartRewards.js.map +1 -0
  351. package/dist/esm/base/StakingClient.js +1 -0
  352. package/dist/esm/base/StakingClient.js.map +1 -0
  353. package/dist/esm/base/SubgraphClient.js +1 -0
  354. package/dist/esm/base/SubgraphClient.js.map +1 -0
  355. package/dist/esm/base/VaultClient.js +1 -0
  356. package/dist/esm/base/VaultClient.js.map +1 -0
  357. package/dist/esm/base/vault/deposit/index.js +1 -0
  358. package/dist/esm/base/vault/deposit/index.js.map +1 -0
  359. package/dist/esm/base/vault/deposit/types.js +1 -0
  360. package/dist/esm/base/vault/deposit/types.js.map +1 -0
  361. package/dist/esm/base/vault/single-asset/calculateLimitPrice.js +1 -0
  362. package/dist/esm/base/vault/single-asset/calculateLimitPrice.js.map +1 -0
  363. package/dist/esm/base/vault/single-asset/calculateSwapAmount.js +1 -0
  364. package/dist/esm/base/vault/single-asset/calculateSwapAmount.js.map +1 -0
  365. package/dist/esm/base/vault/single-asset/estimateLpTokens.js +1 -0
  366. package/dist/esm/base/vault/single-asset/estimateLpTokens.js.map +1 -0
  367. package/dist/esm/base/vault/single-asset/index.js +1 -0
  368. package/dist/esm/base/vault/single-asset/index.js.map +1 -0
  369. package/dist/esm/base/vault/single-asset/simulateSwap.js +1 -0
  370. package/dist/esm/base/vault/single-asset/simulateSwap.js.map +1 -0
  371. package/dist/esm/base/vault/single-asset/singleAssetDeposit.js +1 -0
  372. package/dist/esm/base/vault/single-asset/singleAssetDeposit.js.map +1 -0
  373. package/dist/esm/base/vault/single-asset/types.js +1 -0
  374. package/dist/esm/base/vault/single-asset/types.js.map +1 -0
  375. package/dist/esm/base/vault/utils.js +1 -0
  376. package/dist/esm/base/vault/utils.js.map +1 -0
  377. package/dist/esm/base/vault/withdraw/index.js +1 -0
  378. package/dist/esm/base/vault/withdraw/index.js.map +1 -0
  379. package/dist/esm/base/vault/withdraw/types.js +1 -0
  380. package/dist/esm/base/vault/withdraw/types.js.map +1 -0
  381. package/dist/esm/client.js +1 -0
  382. package/dist/esm/client.js.map +1 -0
  383. package/dist/esm/const/abis/UniswapPool.js +1 -0
  384. package/dist/esm/const/abis/UniswapPool.js.map +1 -0
  385. package/dist/esm/const/abis/erc1155.js +1 -0
  386. package/dist/esm/const/abis/erc1155.js.map +1 -0
  387. package/dist/esm/const/abis/erc20.js +1 -0
  388. package/dist/esm/const/abis/erc20.js.map +1 -0
  389. package/dist/esm/const/abis/erc721.js +1 -0
  390. package/dist/esm/const/abis/erc721.js.map +1 -0
  391. package/dist/esm/const/abis/feeManager.js +1 -0
  392. package/dist/esm/const/abis/feeManager.js.map +1 -0
  393. package/dist/esm/const/abis/index.js +1 -0
  394. package/dist/esm/const/abis/index.js.map +1 -0
  395. package/dist/esm/const/abis/quoter.js +1 -0
  396. package/dist/esm/const/abis/quoter.js.map +1 -0
  397. package/dist/esm/const/abis/singleTokenDeposit.js +1 -0
  398. package/dist/esm/const/abis/singleTokenDeposit.js.map +1 -0
  399. package/dist/esm/const/abis/vaultFees.js +1 -0
  400. package/dist/esm/const/abis/vaultFees.js.map +1 -0
  401. package/dist/esm/const/amm/configs/ammConfig.js +1 -0
  402. package/dist/esm/const/amm/configs/ammConfig.js.map +1 -0
  403. package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js +1 -0
  404. package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js.map +1 -0
  405. package/dist/esm/const/amm/configs/protocols/aerodrome.js +1 -0
  406. package/dist/esm/const/amm/configs/protocols/aerodrome.js.map +1 -0
  407. package/dist/esm/const/amm/configs/protocols/arthswap.js +1 -0
  408. package/dist/esm/const/amm/configs/protocols/arthswap.js.map +1 -0
  409. package/dist/esm/const/amm/configs/protocols/baseswap.js +1 -0
  410. package/dist/esm/const/amm/configs/protocols/baseswap.js.map +1 -0
  411. package/dist/esm/const/amm/configs/protocols/basex.js +1 -0
  412. package/dist/esm/const/amm/configs/protocols/basex.js.map +1 -0
  413. package/dist/esm/const/amm/configs/protocols/beam.js +1 -0
  414. package/dist/esm/const/amm/configs/protocols/beam.js.map +1 -0
  415. package/dist/esm/const/amm/configs/protocols/beamswap.js +1 -0
  416. package/dist/esm/const/amm/configs/protocols/beamswap.js.map +1 -0
  417. package/dist/esm/const/amm/configs/protocols/blackhole.js +1 -0
  418. package/dist/esm/const/amm/configs/protocols/blackhole.js.map +1 -0
  419. package/dist/esm/const/amm/configs/protocols/camelot.js +1 -0
  420. package/dist/esm/const/amm/configs/protocols/camelot.js.map +1 -0
  421. package/dist/esm/const/amm/configs/protocols/crust.js +1 -0
  422. package/dist/esm/const/amm/configs/protocols/crust.js.map +1 -0
  423. package/dist/esm/const/amm/configs/protocols/cypher.js +1 -0
  424. package/dist/esm/const/amm/configs/protocols/cypher.js.map +1 -0
  425. package/dist/esm/const/amm/configs/protocols/dodo.js +1 -0
  426. package/dist/esm/const/amm/configs/protocols/dodo.js.map +1 -0
  427. package/dist/esm/const/amm/configs/protocols/dragonswap.js +1 -0
  428. package/dist/esm/const/amm/configs/protocols/dragonswap.js.map +1 -0
  429. package/dist/esm/const/amm/configs/protocols/eddy.js +1 -0
  430. package/dist/esm/const/amm/configs/protocols/eddy.js.map +1 -0
  431. package/dist/esm/const/amm/configs/protocols/equilibre.js +1 -0
  432. package/dist/esm/const/amm/configs/protocols/equilibre.js.map +1 -0
  433. package/dist/esm/const/amm/configs/protocols/fenix.js +1 -0
  434. package/dist/esm/const/amm/configs/protocols/fenix.js.map +1 -0
  435. package/dist/esm/const/amm/configs/protocols/forge.js +1 -0
  436. package/dist/esm/const/amm/configs/protocols/forge.js.map +1 -0
  437. package/dist/esm/const/amm/configs/protocols/fusionx.js +1 -0
  438. package/dist/esm/const/amm/configs/protocols/fusionx.js.map +1 -0
  439. package/dist/esm/const/amm/configs/protocols/glyph.js +1 -0
  440. package/dist/esm/const/amm/configs/protocols/glyph.js.map +1 -0
  441. package/dist/esm/const/amm/configs/protocols/henjin.js +1 -0
  442. package/dist/esm/const/amm/configs/protocols/henjin.js.map +1 -0
  443. package/dist/esm/const/amm/configs/protocols/hercules.js +1 -0
  444. package/dist/esm/const/amm/configs/protocols/hercules.js.map +1 -0
  445. package/dist/esm/const/amm/configs/protocols/horiza.js +1 -0
  446. package/dist/esm/const/amm/configs/protocols/horiza.js.map +1 -0
  447. package/dist/esm/const/amm/configs/protocols/index.js +1 -0
  448. package/dist/esm/const/amm/configs/protocols/index.js.map +1 -0
  449. package/dist/esm/const/amm/configs/protocols/katana.js +1 -0
  450. package/dist/esm/const/amm/configs/protocols/katana.js.map +1 -0
  451. package/dist/esm/const/amm/configs/protocols/katanaIntegral.js +1 -0
  452. package/dist/esm/const/amm/configs/protocols/katanaIntegral.js.map +1 -0
  453. package/dist/esm/const/amm/configs/protocols/kim.js +1 -0
  454. package/dist/esm/const/amm/configs/protocols/kim.js.map +1 -0
  455. package/dist/esm/const/amm/configs/protocols/kinetix.js +1 -0
  456. package/dist/esm/const/amm/configs/protocols/kinetix.js.map +1 -0
  457. package/dist/esm/const/amm/configs/protocols/kodiak.js +1 -0
  458. package/dist/esm/const/amm/configs/protocols/kodiak.js.map +1 -0
  459. package/dist/esm/const/amm/configs/protocols/kyo.js +1 -0
  460. package/dist/esm/const/amm/configs/protocols/kyo.js.map +1 -0
  461. package/dist/esm/const/amm/configs/protocols/linehub.js +1 -0
  462. package/dist/esm/const/amm/configs/protocols/linehub.js.map +1 -0
  463. package/dist/esm/const/amm/configs/protocols/lynex.js +1 -0
  464. package/dist/esm/const/amm/configs/protocols/lynex.js.map +1 -0
  465. package/dist/esm/const/amm/configs/protocols/machinex.js +1 -0
  466. package/dist/esm/const/amm/configs/protocols/machinex.js.map +1 -0
  467. package/dist/esm/const/amm/configs/protocols/maia.js +1 -0
  468. package/dist/esm/const/amm/configs/protocols/maia.js.map +1 -0
  469. package/dist/esm/const/amm/configs/protocols/metavault.js +1 -0
  470. package/dist/esm/const/amm/configs/protocols/metavault.js.map +1 -0
  471. package/dist/esm/const/amm/configs/protocols/nest.js +1 -0
  472. package/dist/esm/const/amm/configs/protocols/nest.js.map +1 -0
  473. package/dist/esm/const/amm/configs/protocols/novaswap.js +1 -0
  474. package/dist/esm/const/amm/configs/protocols/novaswap.js.map +1 -0
  475. package/dist/esm/const/amm/configs/protocols/ocelex.js +1 -0
  476. package/dist/esm/const/amm/configs/protocols/ocelex.js.map +1 -0
  477. package/dist/esm/const/amm/configs/protocols/pancakeswap.js +1 -0
  478. package/dist/esm/const/amm/configs/protocols/pancakeswap.js.map +1 -0
  479. package/dist/esm/const/amm/configs/protocols/poolshark.js +1 -0
  480. package/dist/esm/const/amm/configs/protocols/poolshark.js.map +1 -0
  481. package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js +1 -0
  482. package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js.map +1 -0
  483. package/dist/esm/const/amm/configs/protocols/quickswap-integral.js +1 -0
  484. package/dist/esm/const/amm/configs/protocols/quickswap-integral.js.map +1 -0
  485. package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js +1 -0
  486. package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js.map +1 -0
  487. package/dist/esm/const/amm/configs/protocols/quickswap.js +1 -0
  488. package/dist/esm/const/amm/configs/protocols/quickswap.js.map +1 -0
  489. package/dist/esm/const/amm/configs/protocols/retro.js +1 -0
  490. package/dist/esm/const/amm/configs/protocols/retro.js.map +1 -0
  491. package/dist/esm/const/amm/configs/protocols/sailor.js +1 -0
  492. package/dist/esm/const/amm/configs/protocols/sailor.js.map +1 -0
  493. package/dist/esm/const/amm/configs/protocols/shadow.js +1 -0
  494. package/dist/esm/const/amm/configs/protocols/shadow.js.map +1 -0
  495. package/dist/esm/const/amm/configs/protocols/silverswap.js +1 -0
  496. package/dist/esm/const/amm/configs/protocols/silverswap.js.map +1 -0
  497. package/dist/esm/const/amm/configs/protocols/spark.js +1 -0
  498. package/dist/esm/const/amm/configs/protocols/spark.js.map +1 -0
  499. package/dist/esm/const/amm/configs/protocols/spark32.js +1 -0
  500. package/dist/esm/const/amm/configs/protocols/spark32.js.map +1 -0
  501. package/dist/esm/const/amm/configs/protocols/spookyswap.js +1 -0
  502. package/dist/esm/const/amm/configs/protocols/spookyswap.js.map +1 -0
  503. package/dist/esm/const/amm/configs/protocols/stellaswap.js +1 -0
  504. package/dist/esm/const/amm/configs/protocols/stellaswap.js.map +1 -0
  505. package/dist/esm/const/amm/configs/protocols/supswap.js +1 -0
  506. package/dist/esm/const/amm/configs/protocols/supswap.js.map +1 -0
  507. package/dist/esm/const/amm/configs/protocols/sushi.js +1 -0
  508. package/dist/esm/const/amm/configs/protocols/sushi.js.map +1 -0
  509. package/dist/esm/const/amm/configs/protocols/swapmode.js +1 -0
  510. package/dist/esm/const/amm/configs/protocols/swapmode.js.map +1 -0
  511. package/dist/esm/const/amm/configs/protocols/swapsicle.js +1 -0
  512. package/dist/esm/const/amm/configs/protocols/swapsicle.js.map +1 -0
  513. package/dist/esm/const/amm/configs/protocols/thena.js +1 -0
  514. package/dist/esm/const/amm/configs/protocols/thena.js.map +1 -0
  515. package/dist/esm/const/amm/configs/protocols/thick.js +1 -0
  516. package/dist/esm/const/amm/configs/protocols/thick.js.map +1 -0
  517. package/dist/esm/const/amm/configs/protocols/thickv2.js +1 -0
  518. package/dist/esm/const/amm/configs/protocols/thickv2.js.map +1 -0
  519. package/dist/esm/const/amm/configs/protocols/thruster.js +1 -0
  520. package/dist/esm/const/amm/configs/protocols/thruster.js.map +1 -0
  521. package/dist/esm/const/amm/configs/protocols/uniswap.js +1 -0
  522. package/dist/esm/const/amm/configs/protocols/uniswap.js.map +1 -0
  523. package/dist/esm/const/amm/configs/protocols/wasabee.js +1 -0
  524. package/dist/esm/const/amm/configs/protocols/wasabee.js.map +1 -0
  525. package/dist/esm/const/amm/index.js +1 -0
  526. package/dist/esm/const/amm/index.js.map +1 -0
  527. package/dist/esm/const/amm/utils/beacon.js +1 -0
  528. package/dist/esm/const/amm/utils/beacon.js.map +1 -0
  529. package/dist/esm/const/amm/utils/contracts.js +1 -0
  530. package/dist/esm/const/amm/utils/contracts.js.map +1 -0
  531. package/dist/esm/const/amm/utils/index.js +1 -0
  532. package/dist/esm/const/amm/utils/index.js.map +1 -0
  533. package/dist/esm/const/amm/utils/protocol.js +1 -0
  534. package/dist/esm/const/amm/utils/protocol.js.map +1 -0
  535. package/dist/esm/const/api.js +1 -0
  536. package/dist/esm/const/api.js.map +1 -0
  537. package/dist/esm/const/capabilities.js +1 -0
  538. package/dist/esm/const/capabilities.js.map +1 -0
  539. package/dist/esm/const/chain.js +1 -0
  540. package/dist/esm/const/chain.js.map +1 -0
  541. package/dist/esm/const/deployments/abis.js +1 -0
  542. package/dist/esm/const/deployments/abis.js.map +1 -0
  543. package/dist/esm/const/deployments/apechain.js +1 -0
  544. package/dist/esm/const/deployments/apechain.js.map +1 -0
  545. package/dist/esm/const/deployments/arbitrum.js +1 -0
  546. package/dist/esm/const/deployments/arbitrum.js.map +1 -0
  547. package/dist/esm/const/deployments/arbitrumgoerli.js +1 -0
  548. package/dist/esm/const/deployments/arbitrumgoerli.js.map +1 -0
  549. package/dist/esm/const/deployments/astar.js +1 -0
  550. package/dist/esm/const/deployments/astar.js.map +1 -0
  551. package/dist/esm/const/deployments/astarzkevm.js +1 -0
  552. package/dist/esm/const/deployments/astarzkevm.js.map +1 -0
  553. package/dist/esm/const/deployments/avalanche.js +1 -0
  554. package/dist/esm/const/deployments/avalanche.js.map +1 -0
  555. package/dist/esm/const/deployments/bartiotest.js +1 -0
  556. package/dist/esm/const/deployments/bartiotest.js.map +1 -0
  557. package/dist/esm/const/deployments/base.js +1 -0
  558. package/dist/esm/const/deployments/base.js.map +1 -0
  559. package/dist/esm/const/deployments/bera.js +1 -0
  560. package/dist/esm/const/deployments/bera.js.map +1 -0
  561. package/dist/esm/const/deployments/berachainbartio.js +1 -0
  562. package/dist/esm/const/deployments/berachainbartio.js.map +1 -0
  563. package/dist/esm/const/deployments/blast.js +1 -0
  564. package/dist/esm/const/deployments/blast.js.map +1 -0
  565. package/dist/esm/const/deployments/bsc.js +1 -0
  566. package/dist/esm/const/deployments/bsc.js.map +1 -0
  567. package/dist/esm/const/deployments/celo.js +1 -0
  568. package/dist/esm/const/deployments/celo.js.map +1 -0
  569. package/dist/esm/const/deployments/core.js +1 -0
  570. package/dist/esm/const/deployments/core.js.map +1 -0
  571. package/dist/esm/const/deployments/eth.js +1 -0
  572. package/dist/esm/const/deployments/eth.js.map +1 -0
  573. package/dist/esm/const/deployments/evmos.js +1 -0
  574. package/dist/esm/const/deployments/evmos.js.map +1 -0
  575. package/dist/esm/const/deployments/fantom.js +1 -0
  576. package/dist/esm/const/deployments/fantom.js.map +1 -0
  577. package/dist/esm/const/deployments/filecoin.js +1 -0
  578. package/dist/esm/const/deployments/filecoin.js.map +1 -0
  579. package/dist/esm/const/deployments/flare.js +1 -0
  580. package/dist/esm/const/deployments/flare.js.map +1 -0
  581. package/dist/esm/const/deployments/goerli.js +1 -0
  582. package/dist/esm/const/deployments/goerli.js.map +1 -0
  583. package/dist/esm/const/deployments/hemi.js +1 -0
  584. package/dist/esm/const/deployments/hemi.js.map +1 -0
  585. package/dist/esm/const/deployments/hyperevm.js +1 -0
  586. package/dist/esm/const/deployments/hyperevm.js.map +1 -0
  587. package/dist/esm/const/deployments/index.js +1 -0
  588. package/dist/esm/const/deployments/index.js.map +1 -0
  589. package/dist/esm/const/deployments/katana.js +1 -0
  590. package/dist/esm/const/deployments/katana.js.map +1 -0
  591. package/dist/esm/const/deployments/kava.js +1 -0
  592. package/dist/esm/const/deployments/kava.js.map +1 -0
  593. package/dist/esm/const/deployments/linea.js +1 -0
  594. package/dist/esm/const/deployments/linea.js.map +1 -0
  595. package/dist/esm/const/deployments/localhost.js +1 -0
  596. package/dist/esm/const/deployments/localhost.js.map +1 -0
  597. package/dist/esm/const/deployments/manta.js +1 -0
  598. package/dist/esm/const/deployments/manta.js.map +1 -0
  599. package/dist/esm/const/deployments/mantle.js +1 -0
  600. package/dist/esm/const/deployments/mantle.js.map +1 -0
  601. package/dist/esm/const/deployments/metis.js +1 -0
  602. package/dist/esm/const/deployments/metis.js.map +1 -0
  603. package/dist/esm/const/deployments/mode.js +1 -0
  604. package/dist/esm/const/deployments/mode.js.map +1 -0
  605. package/dist/esm/const/deployments/moonbeam.js +1 -0
  606. package/dist/esm/const/deployments/moonbeam.js.map +1 -0
  607. package/dist/esm/const/deployments/mumbai.js +1 -0
  608. package/dist/esm/const/deployments/mumbai.js.map +1 -0
  609. package/dist/esm/const/deployments/nibiru.js +1 -0
  610. package/dist/esm/const/deployments/nibiru.js.map +1 -0
  611. package/dist/esm/const/deployments/okxtestnet.js +1 -0
  612. package/dist/esm/const/deployments/okxtestnet.js.map +1 -0
  613. package/dist/esm/const/deployments/optimism.js +1 -0
  614. package/dist/esm/const/deployments/optimism.js.map +1 -0
  615. package/dist/esm/const/deployments/optimismgoerli.js +1 -0
  616. package/dist/esm/const/deployments/optimismgoerli.js.map +1 -0
  617. package/dist/esm/const/deployments/peaq.js +1 -0
  618. package/dist/esm/const/deployments/peaq.js.map +1 -0
  619. package/dist/esm/const/deployments/polygon.js +1 -0
  620. package/dist/esm/const/deployments/polygon.js.map +1 -0
  621. package/dist/esm/const/deployments/polyzkevm.js +1 -0
  622. package/dist/esm/const/deployments/polyzkevm.js.map +1 -0
  623. package/dist/esm/const/deployments/pyzkevm.js +1 -0
  624. package/dist/esm/const/deployments/pyzkevm.js.map +1 -0
  625. package/dist/esm/const/deployments/ronin.js +1 -0
  626. package/dist/esm/const/deployments/ronin.js.map +1 -0
  627. package/dist/esm/const/deployments/rootstock.js +1 -0
  628. package/dist/esm/const/deployments/rootstock.js.map +1 -0
  629. package/dist/esm/const/deployments/saga.js +1 -0
  630. package/dist/esm/const/deployments/saga.js.map +1 -0
  631. package/dist/esm/const/deployments/scroll.js +1 -0
  632. package/dist/esm/const/deployments/scroll.js.map +1 -0
  633. package/dist/esm/const/deployments/sei.js +1 -0
  634. package/dist/esm/const/deployments/sei.js.map +1 -0
  635. package/dist/esm/const/deployments/soneium.js +1 -0
  636. package/dist/esm/const/deployments/soneium.js.map +1 -0
  637. package/dist/esm/const/deployments/sonic.js +1 -0
  638. package/dist/esm/const/deployments/sonic.js.map +1 -0
  639. package/dist/esm/const/deployments/taiko.js +1 -0
  640. package/dist/esm/const/deployments/taiko.js.map +1 -0
  641. package/dist/esm/const/deployments/tataratestnet.js +1 -0
  642. package/dist/esm/const/deployments/tataratestnet.js.map +1 -0
  643. package/dist/esm/const/deployments/telos.js +1 -0
  644. package/dist/esm/const/deployments/telos.js.map +1 -0
  645. package/dist/esm/const/deployments/thundercore.js +1 -0
  646. package/dist/esm/const/deployments/thundercore.js.map +1 -0
  647. package/dist/esm/const/deployments/uni.js +1 -0
  648. package/dist/esm/const/deployments/uni.js.map +1 -0
  649. package/dist/esm/const/deployments/xlayer.js +1 -0
  650. package/dist/esm/const/deployments/xlayer.js.map +1 -0
  651. package/dist/esm/const/deployments/zeta.js +1 -0
  652. package/dist/esm/const/deployments/zeta.js.map +1 -0
  653. package/dist/esm/const/deployments/zircuit.js +1 -0
  654. package/dist/esm/const/deployments/zircuit.js.map +1 -0
  655. package/dist/esm/const/deployments/zklinknova.js +1 -0
  656. package/dist/esm/const/deployments/zklinknova.js.map +1 -0
  657. package/dist/esm/const/index.js +1 -0
  658. package/dist/esm/const/index.js.map +1 -0
  659. package/dist/esm/const/network.js +1 -0
  660. package/dist/esm/const/network.js.map +1 -0
  661. package/dist/esm/const/protocol.js +1 -0
  662. package/dist/esm/const/protocol.js.map +1 -0
  663. package/dist/esm/const/quoter.js +1 -0
  664. package/dist/esm/const/quoter.js.map +1 -0
  665. package/dist/esm/const/stabilityVaults/index.js +1 -0
  666. package/dist/esm/const/stabilityVaults/index.js.map +1 -0
  667. package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js +1 -0
  668. package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js.map +1 -0
  669. package/dist/esm/const/subgraph.js +1 -0
  670. package/dist/esm/const/subgraph.js.map +1 -0
  671. package/dist/esm/const/thegraph.js +1 -0
  672. package/dist/esm/const/thegraph.js.map +1 -0
  673. package/dist/esm/index.js +1 -0
  674. package/dist/esm/index.js.map +1 -0
  675. package/dist/esm/scripts/processDeployments.js +1 -0
  676. package/dist/esm/scripts/processDeployments.js.map +1 -0
  677. package/dist/esm/types.js +1 -0
  678. package/dist/esm/types.js.map +1 -0
  679. package/dist/esm/utils/PoolQueryAdapter.js +1 -0
  680. package/dist/esm/utils/PoolQueryAdapter.js.map +1 -0
  681. package/dist/esm/utils/SubgraphVaultClient.js +1 -0
  682. package/dist/esm/utils/SubgraphVaultClient.js.map +1 -0
  683. package/dist/esm/utils/subgraph-types.js +1 -0
  684. package/dist/esm/utils/subgraph-types.js.map +1 -0
  685. package/dist/types/base/FeeManagerClient.d.ts +7 -1
  686. package/dist/types/base/FeeManagerClient.d.ts.map +1 -1
  687. package/package.json +3 -2
  688. package/src/__tests__/base/FeeManagerClient.test.ts +706 -0
  689. package/src/__tests__/base/PoolClient.test.ts +542 -0
  690. package/src/__tests__/base/SmartRewards.test.ts +465 -0
  691. package/src/__tests__/base/StakingClient.test.ts +772 -0
  692. package/src/__tests__/base/SubgraphClient.test.ts +99 -0
  693. package/src/__tests__/base/VaultClient.test.ts +1011 -0
  694. package/src/__tests__/base/vault/single-asset/calculateLimitPrice.test.ts +324 -0
  695. package/src/__tests__/base/vault/single-asset/calculateSwapAmount.test.ts +322 -0
  696. package/src/__tests__/base/vault/single-asset/estimateLpTokens.test.ts +612 -0
  697. package/src/__tests__/base/vault/single-asset/simulateSwap.test.ts +467 -0
  698. package/src/__tests__/base/vault/single-asset/singleAssetDepositClient.test.ts +400 -0
  699. package/src/__tests__/client.test.ts +48 -0
  700. package/src/__tests__/const/capabilities.test.ts +24 -0
  701. package/src/base/FeeManagerClient.ts +711 -0
  702. package/src/base/PoolClient.ts +678 -0
  703. package/src/base/SmartRewardClient.ts +57 -0
  704. package/src/base/SmartRewards.ts +783 -0
  705. package/src/base/StakingClient.ts +917 -0
  706. package/src/base/SubgraphClient.ts +93 -0
  707. package/src/base/VaultClient.ts +1642 -0
  708. package/src/base/vault/deposit/index.ts +705 -0
  709. package/src/base/vault/deposit/types.ts +49 -0
  710. package/src/base/vault/single-asset/README.md +541 -0
  711. package/src/base/vault/single-asset/calculateLimitPrice.ts +279 -0
  712. package/src/base/vault/single-asset/calculateSwapAmount.ts +74 -0
  713. package/src/base/vault/single-asset/estimateLpTokens.ts +393 -0
  714. package/src/base/vault/single-asset/index.ts +85 -0
  715. package/src/base/vault/single-asset/readmes/API_REFERENCE.md +478 -0
  716. package/src/base/vault/single-asset/readmes/calculateLimitPrice.md +455 -0
  717. package/src/base/vault/single-asset/readmes/calculateSwapAmount.md +345 -0
  718. package/src/base/vault/single-asset/readmes/estimateLpTokens.md +585 -0
  719. package/src/base/vault/single-asset/readmes/index.md +174 -0
  720. package/src/base/vault/single-asset/readmes/simulateSwap.md +612 -0
  721. package/src/base/vault/single-asset/simulateSwap.ts +451 -0
  722. package/src/base/vault/single-asset/singleAssetDeposit.ts +411 -0
  723. package/src/base/vault/single-asset/types.ts +186 -0
  724. package/src/base/vault/utils.ts +633 -0
  725. package/src/base/vault/withdraw/index.ts +187 -0
  726. package/src/base/vault/withdraw/types.ts +14 -0
  727. package/src/client.ts +161 -0
  728. package/src/const/abis/UniswapPool.ts +1 -0
  729. package/src/const/abis/erc1155.ts +314 -0
  730. package/src/const/abis/erc20.ts +224 -0
  731. package/src/const/abis/erc721.ts +346 -0
  732. package/src/const/abis/feeManager.ts +672 -0
  733. package/src/const/abis/index.ts +8 -0
  734. package/src/const/abis/quoter.ts +1585 -0
  735. package/src/const/abis/singleTokenDeposit.ts +921 -0
  736. package/src/const/abis/vaultFees.ts +40 -0
  737. package/src/const/amm/configs/ammConfig.ts +130 -0
  738. package/src/const/amm/configs/protocols/aerodrome-v2.ts +18 -0
  739. package/src/const/amm/configs/protocols/aerodrome.ts +18 -0
  740. package/src/const/amm/configs/protocols/arthswap.ts +21 -0
  741. package/src/const/amm/configs/protocols/baseswap.ts +17 -0
  742. package/src/const/amm/configs/protocols/basex.ts +20 -0
  743. package/src/const/amm/configs/protocols/beam.ts +16 -0
  744. package/src/const/amm/configs/protocols/beamswap.ts +17 -0
  745. package/src/const/amm/configs/protocols/blackhole.ts +22 -0
  746. package/src/const/amm/configs/protocols/camelot.ts +26 -0
  747. package/src/const/amm/configs/protocols/crust.ts +16 -0
  748. package/src/const/amm/configs/protocols/cypher.ts +20 -0
  749. package/src/const/amm/configs/protocols/dodo.ts +17 -0
  750. package/src/const/amm/configs/protocols/dragonswap.ts +16 -0
  751. package/src/const/amm/configs/protocols/eddy.ts +17 -0
  752. package/src/const/amm/configs/protocols/equilibre.ts +17 -0
  753. package/src/const/amm/configs/protocols/fenix.ts +17 -0
  754. package/src/const/amm/configs/protocols/forge.ts +22 -0
  755. package/src/const/amm/configs/protocols/fusionx.ts +21 -0
  756. package/src/const/amm/configs/protocols/glyph.ts +22 -0
  757. package/src/const/amm/configs/protocols/henjin.ts +17 -0
  758. package/src/const/amm/configs/protocols/hercules.ts +16 -0
  759. package/src/const/amm/configs/protocols/horiza.ts +23 -0
  760. package/src/const/amm/configs/protocols/index.ts +79 -0
  761. package/src/const/amm/configs/protocols/katana.ts +15 -0
  762. package/src/const/amm/configs/protocols/katanaIntegral.ts +15 -0
  763. package/src/const/amm/configs/protocols/kim.ts +24 -0
  764. package/src/const/amm/configs/protocols/kinetix.ts +23 -0
  765. package/src/const/amm/configs/protocols/kodiak.ts +21 -0
  766. package/src/const/amm/configs/protocols/kyo.ts +20 -0
  767. package/src/const/amm/configs/protocols/linehub.ts +17 -0
  768. package/src/const/amm/configs/protocols/lynex.ts +23 -0
  769. package/src/const/amm/configs/protocols/machinex.ts +22 -0
  770. package/src/const/amm/configs/protocols/maia.ts +22 -0
  771. package/src/const/amm/configs/protocols/metavault.ts +23 -0
  772. package/src/const/amm/configs/protocols/nest.ts +19 -0
  773. package/src/const/amm/configs/protocols/novaswap.ts +16 -0
  774. package/src/const/amm/configs/protocols/ocelex.ts +17 -0
  775. package/src/const/amm/configs/protocols/pancakeswap.ts +26 -0
  776. package/src/const/amm/configs/protocols/poolshark.ts +17 -0
  777. package/src/const/amm/configs/protocols/quickswap-algebra.ts +20 -0
  778. package/src/const/amm/configs/protocols/quickswap-integral.ts +24 -0
  779. package/src/const/amm/configs/protocols/quickswap-univ3.ts +29 -0
  780. package/src/const/amm/configs/protocols/quickswap.ts +29 -0
  781. package/src/const/amm/configs/protocols/retro.ts +23 -0
  782. package/src/const/amm/configs/protocols/sailor.ts +16 -0
  783. package/src/const/amm/configs/protocols/shadow.ts +18 -0
  784. package/src/const/amm/configs/protocols/silverswap.ts +22 -0
  785. package/src/const/amm/configs/protocols/spark.ts +17 -0
  786. package/src/const/amm/configs/protocols/spark32.ts +17 -0
  787. package/src/const/amm/configs/protocols/spookyswap.ts +16 -0
  788. package/src/const/amm/configs/protocols/stellaswap.ts +23 -0
  789. package/src/const/amm/configs/protocols/supswap.ts +17 -0
  790. package/src/const/amm/configs/protocols/sushi.ts +86 -0
  791. package/src/const/amm/configs/protocols/swapmode.ts +17 -0
  792. package/src/const/amm/configs/protocols/swapsicle.ts +17 -0
  793. package/src/const/amm/configs/protocols/thena.ts +22 -0
  794. package/src/const/amm/configs/protocols/thick.ts +19 -0
  795. package/src/const/amm/configs/protocols/thickv2.ts +17 -0
  796. package/src/const/amm/configs/protocols/thruster.ts +19 -0
  797. package/src/const/amm/configs/protocols/uniswap.ts +98 -0
  798. package/src/const/amm/configs/protocols/wasabee.ts +16 -0
  799. package/src/const/amm/index.ts +3 -0
  800. package/src/const/amm/utils/beacon.ts +216 -0
  801. package/src/const/amm/utils/contracts.ts +162 -0
  802. package/src/const/amm/utils/index.ts +127 -0
  803. package/src/const/amm/utils/protocol.ts +171 -0
  804. package/src/const/api.ts +27 -0
  805. package/src/const/capabilities.ts +115 -0
  806. package/src/const/chain.ts +243 -0
  807. package/src/const/deployments/abis.ts +6752 -0
  808. package/src/const/deployments/apechain.ts +17 -0
  809. package/src/const/deployments/arbitrum.ts +26 -0
  810. package/src/const/deployments/arbitrumgoerli.ts +16 -0
  811. package/src/const/deployments/astar.ts +16 -0
  812. package/src/const/deployments/astarzkevm.ts +16 -0
  813. package/src/const/deployments/avalanche.ts +45 -0
  814. package/src/const/deployments/bartiotest.ts +16 -0
  815. package/src/const/deployments/base.ts +24 -0
  816. package/src/const/deployments/bera.ts +16 -0
  817. package/src/const/deployments/berachainbartio.ts +40 -0
  818. package/src/const/deployments/blast.ts +16 -0
  819. package/src/const/deployments/bsc.ts +16 -0
  820. package/src/const/deployments/celo.ts +16 -0
  821. package/src/const/deployments/core.ts +16 -0
  822. package/src/const/deployments/eth.ts +22 -0
  823. package/src/const/deployments/evmos.ts +16 -0
  824. package/src/const/deployments/fantom.ts +16 -0
  825. package/src/const/deployments/filecoin.ts +16 -0
  826. package/src/const/deployments/flare.ts +16 -0
  827. package/src/const/deployments/goerli.ts +16 -0
  828. package/src/const/deployments/hemi.ts +16 -0
  829. package/src/const/deployments/hyperevm.ts +49 -0
  830. package/src/const/deployments/index.ts +49 -0
  831. package/src/const/deployments/katana.ts +48 -0
  832. package/src/const/deployments/kava.ts +16 -0
  833. package/src/const/deployments/linea.ts +16 -0
  834. package/src/const/deployments/localhost.ts +8 -0
  835. package/src/const/deployments/manta.ts +16 -0
  836. package/src/const/deployments/mantle.ts +16 -0
  837. package/src/const/deployments/metis.ts +16 -0
  838. package/src/const/deployments/mode.ts +16 -0
  839. package/src/const/deployments/moonbeam.ts +16 -0
  840. package/src/const/deployments/mumbai.ts +16 -0
  841. package/src/const/deployments/nibiru.ts +49 -0
  842. package/src/const/deployments/okxtestnet.ts +16 -0
  843. package/src/const/deployments/optimism.ts +16 -0
  844. package/src/const/deployments/optimismgoerli.ts +16 -0
  845. package/src/const/deployments/peaq.ts +25 -0
  846. package/src/const/deployments/polygon.ts +25 -0
  847. package/src/const/deployments/polyzkevm.ts +16 -0
  848. package/src/const/deployments/pyzkevm.ts +9 -0
  849. package/src/const/deployments/ronin.ts +17 -0
  850. package/src/const/deployments/rootstock.ts +16 -0
  851. package/src/const/deployments/saga.ts +49 -0
  852. package/src/const/deployments/scroll.ts +16 -0
  853. package/src/const/deployments/sei.ts +16 -0
  854. package/src/const/deployments/soneium.ts +16 -0
  855. package/src/const/deployments/sonic.ts +16 -0
  856. package/src/const/deployments/taiko.ts +16 -0
  857. package/src/const/deployments/tataratestnet.ts +16 -0
  858. package/src/const/deployments/telos.ts +16 -0
  859. package/src/const/deployments/thundercore.ts +16 -0
  860. package/src/const/deployments/uni.ts +16 -0
  861. package/src/const/deployments/xlayer.ts +16 -0
  862. package/src/const/deployments/zeta.ts +16 -0
  863. package/src/const/deployments/zircuit.ts +16 -0
  864. package/src/const/deployments/zklinknova.ts +21 -0
  865. package/src/const/index.ts +12 -0
  866. package/src/const/network.ts +635 -0
  867. package/src/const/protocol.ts +229 -0
  868. package/src/const/quoter.ts +571 -0
  869. package/src/const/stabilityVaults/index.ts +2 -0
  870. package/src/const/stabilityVaults/stabilityVaultsConfig.ts +41 -0
  871. package/src/const/subgraph.ts +157 -0
  872. package/src/const/thegraph.ts +3 -0
  873. package/src/index.ts +80 -0
  874. package/src/scripts/processDeployments.ts +174 -0
  875. package/src/types.ts +202 -0
  876. package/src/utils/PoolQueryAdapter.ts +943 -0
  877. package/src/utils/SubgraphVaultClient.ts +408 -0
  878. package/src/utils/subgraph-types.ts +108 -0
@@ -0,0 +1,783 @@
1
+ import { Campaign, createClient } from '@steerprotocol/api-sdk';
2
+ import type { Address, Hash, PublicClient, WalletClient } from 'viem';
3
+ import { formatUnits } from 'viem';
4
+ import { SteerResponse } from '../types.js';
5
+ import { getSubgraphUrlByChainId } from '../const/subgraph.js';
6
+
7
+ /**
8
+ * Represents a node in the claim proof data structure
9
+ * @property chainId - The ID of the chain where the claim exists
10
+ * @property lastBlockUpdatedTo - The last block number this claim was updated to
11
+ * @property user - The address of the user who can claim
12
+ * @property campaignId - The ID of the campaign this claim belongs to
13
+ * @property amount - The claimable amount as a string (may include decimals)
14
+ * @property proof - The merkle proof array required for claiming
15
+ */
16
+ export interface ClaimProofNode {
17
+ chainId: number;
18
+ lastBlockUpdatedTo: number;
19
+ user: string;
20
+ campaignId: number;
21
+ amount: string;
22
+ proof: readonly string[];
23
+ }
24
+
25
+ export interface ClaimProofEdge {
26
+ node: ClaimProofNode;
27
+ cursor: string;
28
+ }
29
+
30
+ /**
31
+ * Represents a historical claim reward record
32
+ * @property id - Unique identifier for the claim
33
+ * @property user - Address of the user who claimed
34
+ * @property amount - Amount that was claimed (may include decimals)
35
+ * @property campaign - Campaign identifier
36
+ * @property chainId - Chain ID where the claim occurred
37
+ * @property timestamp - Unix timestamp of when the claim occurred
38
+ */
39
+ export interface ClaimRewardNode {
40
+ id: string;
41
+ user: string;
42
+ amount: string;
43
+ campaign: string;
44
+ chainId: number;
45
+ timestamp: number;
46
+ }
47
+
48
+ export interface ClaimRewardEdge {
49
+ cursor: string;
50
+ node: ClaimRewardNode;
51
+ }
52
+
53
+ /**
54
+ * Pagination information for paginated queries
55
+ * @property hasNextPage - Whether there are more results available
56
+ * @property endCursor - Cursor to use for fetching next page, if available
57
+ */
58
+ export interface PageInfo {
59
+ hasNextPage: boolean;
60
+ endCursor: string | null | undefined;
61
+ }
62
+
63
+ /**
64
+ * Connection type for claim rewards, following the Relay specification
65
+ * @property edges - Array of claim reward records with cursors
66
+ * @property pageInfo - Pagination information
67
+ * @property totalCount - Total number of records available
68
+ */
69
+ export interface ClaimRewardsConnection {
70
+ edges: readonly ClaimRewardEdge[];
71
+ pageInfo: PageInfo;
72
+ totalCount: number;
73
+ }
74
+
75
+ export interface ClaimProofsPageInfo {
76
+ hasNextPage: boolean;
77
+ endCursor?: string;
78
+ }
79
+
80
+ export interface ClaimProofsResponse {
81
+ totalCount: number;
82
+ edges: readonly ClaimProofEdge[];
83
+ pageInfo: ClaimProofsPageInfo;
84
+ }
85
+
86
+ export interface SmartRewarderContract {
87
+ chainId: number;
88
+ address: string;
89
+ }
90
+
91
+ /**
92
+ * Parameters required for claiming rewards
93
+ * @property users - Array of user addresses who are claiming
94
+ * @property campaignIds - Array of campaign IDs corresponding to each claim
95
+ * @property amounts - Array of amounts to claim
96
+ * @property proofs - Array of merkle proofs for verification
97
+ * @property rewarderAddress - Address of the smart rewarder contract
98
+ */
99
+ export interface ClaimRewardParams {
100
+ users: readonly Address[];
101
+ campaignIds: readonly bigint[];
102
+ amounts: readonly bigint[];
103
+ proofs: readonly (readonly `0x${string}`[])[];
104
+ rewarderAddress: Address;
105
+ }
106
+
107
+ /**
108
+ * Represents a reward balance with both native and formatted values
109
+ * @property formatted - Human-readable string format with proper decimals
110
+ * @property native - Raw bigint value
111
+ */
112
+ export interface RewardBalance {
113
+ formatted: string;
114
+ native: bigint;
115
+ }
116
+
117
+ /**
118
+ * Comprehensive summary of a user's reward status
119
+ * @property totalEarned - Total rewards earned (claimed + claimable)
120
+ * @property totalClaimed - Total rewards already claimed
121
+ * @property claimable - Rewards available to claim
122
+ */
123
+ export interface RewardSummary {
124
+ totalEarned: RewardBalance;
125
+ totalClaimed: RewardBalance;
126
+ claimable: RewardBalance;
127
+ }
128
+
129
+ export abstract class SmartRewards {
130
+ protected readonly client: ReturnType<typeof createClient>;
131
+ protected readonly publicClient: PublicClient;
132
+ protected readonly walletClient: WalletClient;
133
+
134
+ constructor(
135
+ client: ReturnType<typeof createClient>,
136
+ publicClient: PublicClient,
137
+ walletClient: WalletClient
138
+ ) {
139
+ this.client = client;
140
+ this.publicClient = publicClient;
141
+ this.walletClient = walletClient;
142
+ }
143
+
144
+ public async getCampaigns(chainId: number): Promise<SteerResponse<Campaign[]>> {
145
+ const campaigns = await this.client.campaigns({
146
+ filter: {
147
+ chainId,
148
+ },
149
+ });
150
+
151
+ return {
152
+ data: (campaigns.data?.campaigns.edges.map((edge) => ({
153
+ ...edge.node,
154
+ vaults: edge.node.vaults?.map(vault => ({
155
+ ...vault,
156
+ beaconName: vault.beaconName || '',
157
+ name: vault.name || '',
158
+ protocol: vault.protocol || '',
159
+ protocolBaseType: vault.protocolBaseType || '',
160
+ targetProtocol: vault.targetProtocol || ''
161
+ })) || []
162
+ })) || []) as Campaign[],
163
+ status: campaigns.status,
164
+ success: true,
165
+ };
166
+ }
167
+
168
+ /**
169
+ * Retrieves campaigns associated with a specific pool address
170
+ * @param poolAddress - The address of the pool to get campaigns for
171
+ * @param chainId - Chain ID where the pool exists
172
+ * @returns Promise resolving to an array of campaigns associated with the pool
173
+ *
174
+ * @example
175
+ * ```typescript
176
+ * // Get campaigns for a pool on a specific chain
177
+ * const campaigns = await smartRewards.campaignsByPool('0x...', 1);
178
+ * ```
179
+ */
180
+ public async campaignsByPool(
181
+ poolAddress: string,
182
+ chainId: number
183
+ ): Promise<SteerResponse<Campaign[]>> {
184
+ try {
185
+ const campaigns = await this.client.campaignsByPool({
186
+ pool: poolAddress,
187
+ chainId
188
+ });
189
+
190
+ return {
191
+ data: (campaigns.data?.campaignsByPool?.map(campaign => campaign ? {
192
+ ...campaign,
193
+ vaults: campaign.vaults?.map(vault => vault ? {
194
+ ...vault,
195
+ beaconName: vault.beaconName || '',
196
+ name: vault.name || '',
197
+ protocol: vault.protocol || '',
198
+ protocolBaseType: vault.protocolBaseType || '',
199
+ targetProtocol: vault.targetProtocol || ''
200
+ } : null).filter((v): v is NonNullable<typeof v> => v !== null) || []
201
+ } : null).filter((c): c is NonNullable<typeof c> => c !== null) || []) as Campaign[],
202
+ status: campaigns.status,
203
+ success: true
204
+ };
205
+ } catch (error) {
206
+ return {
207
+ data: null,
208
+ status: 500,
209
+ success: false,
210
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
211
+ };
212
+ }
213
+ }
214
+
215
+ /**
216
+ * Retrieves claim proofs for a user that can be used to claim rewards
217
+ * @param user - Address of the user to get proofs for
218
+ * @param chainId - Chain ID where the claims exist
219
+ * @param campaignId - Optional campaign ID to filter claims
220
+ * @returns Promise resolving to claim proof data with pagination support
221
+ */
222
+ public async getClaimProofs(
223
+ user: Address,
224
+ chainId: number,
225
+ campaignId?: number
226
+ ): Promise<SteerResponse<ClaimProofsResponse>> {
227
+ try {
228
+ const normalizedUser = user.toLowerCase() as Address;
229
+ const response = await this.client.claimProofs({
230
+ user: normalizedUser,
231
+ filter: {
232
+ chainId,
233
+ campaignId
234
+ }
235
+ });
236
+
237
+ if (!response.data?.claimProofs) {
238
+ return {
239
+ data: null,
240
+ status: response.status,
241
+ success: true
242
+ };
243
+ }
244
+
245
+ const transformedResponse: ClaimProofsResponse = {
246
+ totalCount: response.data.claimProofs.totalCount,
247
+ pageInfo: {
248
+ hasNextPage: response.data.claimProofs.pageInfo.hasNextPage,
249
+ endCursor: response.data.claimProofs.pageInfo.endCursor || undefined
250
+ },
251
+ edges: response.data.claimProofs.edges.map(edge => ({
252
+ cursor: edge.cursor,
253
+ node: {
254
+ ...edge.node,
255
+ proof: edge.node.proof?.filter((p): p is string => p !== null) || []
256
+ }
257
+ }))
258
+ };
259
+
260
+ return {
261
+ data: transformedResponse,
262
+ status: response.status,
263
+ success: true
264
+ };
265
+ } catch (error) {
266
+ return {
267
+ data: null,
268
+ status: 500,
269
+ success: false,
270
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
271
+ };
272
+ }
273
+ }
274
+
275
+ /**
276
+ * Retrieves historical claim data for a specific pool
277
+ * @param chainId - Chain ID where the pool exists
278
+ * @param pool - Address or identifier of the pool
279
+ * @param user - Optional user address to filter claims
280
+ * @returns Promise resolving to paginated claim history data
281
+ *
282
+ * @example
283
+ * ```typescript
284
+ * // Get all claims for a pool
285
+ * const allClaims = await smartRewards.getClaimRewardsByPool(1, poolAddress);
286
+ *
287
+ * // Get claims for a specific user in a pool
288
+ * const userClaims = await smartRewards.getClaimRewardsByPool(1, poolAddress, userAddress);
289
+ * ```
290
+ */
291
+ public async getClaimedRewardsByPool(
292
+ chainId: number,
293
+ pool: string,
294
+ user?: Address
295
+ ): Promise<SteerResponse<ClaimRewardsConnection>> {
296
+ try {
297
+ const normalizedPool = pool.toLowerCase();
298
+ const normalizedUser = user ? user.toLowerCase() as Address : undefined;
299
+
300
+ const response = await this.client.claimRewards({
301
+ poolId: normalizedPool,
302
+ chainId,
303
+ filter: normalizedUser ? { user: normalizedUser } : undefined
304
+ });
305
+
306
+ if (!response.data?.claimRewards) {
307
+ return {
308
+ data: null,
309
+ status: response.status,
310
+ success: true
311
+ };
312
+ }
313
+
314
+ const transformedResponse: ClaimRewardsConnection = {
315
+ totalCount: response.data.claimRewards.totalCount,
316
+ pageInfo: {
317
+ hasNextPage: response.data.claimRewards.pageInfo.hasNextPage,
318
+ endCursor: response.data.claimRewards.pageInfo.endCursor
319
+ },
320
+ edges: response.data.claimRewards.edges.map(edge => ({
321
+ cursor: edge.cursor,
322
+ node: {
323
+ ...edge.node,
324
+ timestamp: Number(edge.node.timestamp)
325
+ }
326
+ }))
327
+ };
328
+
329
+ return {
330
+ data: transformedResponse,
331
+ status: response.status,
332
+ success: true
333
+ };
334
+ } catch (error) {
335
+ return {
336
+ data: null,
337
+ status: 500,
338
+ success: false,
339
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
340
+ };
341
+ }
342
+ }
343
+
344
+
345
+
346
+ /**
347
+ * Gets a comprehensive summary of a user's reward status
348
+ * @param user - Address of the user
349
+ * @param chainId - Chain ID to check rewards on
350
+ * @param campaignId - Optional campaign ID to filter rewards
351
+ * @param decimals - Number of decimals for formatting (default: 18)
352
+ * @returns Promise resolving to reward summary with both native and formatted values
353
+ *
354
+ * @example
355
+ * ```typescript
356
+ * const summary = await smartRewards.getRewardSummary(userAddress, chainId);
357
+ * console.log('Total earned:', summary.data.totalEarned.formatted);
358
+ * console.log('Available to claim:', summary.data.claimable.formatted);
359
+ * ```
360
+ */
361
+ public async getRewardSummary(
362
+ user: Address,
363
+ poolAddress: string,
364
+ chainId: number,
365
+ campaignId: number,
366
+ decimals: number = 18
367
+ ): Promise<SteerResponse<RewardSummary>> {
368
+ try {
369
+ // Lowercase addresses
370
+ const normalizedUser = user.toLowerCase() as Address;
371
+ const normalizedPoolAddress = poolAddress.toLowerCase();
372
+
373
+ // Get claimable rewards
374
+ const claimProofs = await this.getClaimProofs(normalizedUser, chainId, campaignId);
375
+
376
+ // Filter claim proofs by campaignId for additional safety
377
+ const filteredClaimProofs = claimProofs.data?.edges.filter(
378
+ edge => edge.node.campaignId === campaignId
379
+ ) || [];
380
+
381
+ const totalAmount = filteredClaimProofs.reduce(
382
+ (sum, edge) => sum + BigInt(edge.node.amount.split('.')[0]),
383
+ 0n
384
+ ) || 0n;
385
+
386
+ // Get claimed rewards
387
+ const claimedRewards = await this.getClaimedRewardsByPool(chainId, normalizedPoolAddress, normalizedUser);
388
+
389
+ // Filter claimed rewards by campaign ID
390
+ const filteredClaimedRewards = claimedRewards.data?.edges.filter(
391
+ edge => Number(edge.node.campaign) === campaignId
392
+ ) || [];
393
+
394
+ const claimedAmount = filteredClaimedRewards.reduce(
395
+ (sum, edge) => sum + BigInt(edge.node.amount.split('.')[0]),
396
+ 0n
397
+ ) || 0n;
398
+
399
+ // Calculate totals
400
+ const claimableAmount = totalAmount - claimedAmount;
401
+
402
+ const summary: RewardSummary = {
403
+ totalEarned: {
404
+ native: totalAmount,
405
+ formatted: formatUnits(totalAmount, decimals)
406
+ },
407
+ totalClaimed: {
408
+ native: claimedAmount,
409
+ formatted: formatUnits(claimedAmount, decimals)
410
+ },
411
+ claimable: {
412
+ native: claimableAmount,
413
+ formatted: formatUnits(claimableAmount, decimals)
414
+ }
415
+ };
416
+
417
+ return {
418
+ data: summary,
419
+ status: 200,
420
+ success: true
421
+ };
422
+ } catch (error) {
423
+ return {
424
+ data: null,
425
+ status: 500,
426
+ success: false,
427
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
428
+ };
429
+ }
430
+ }
431
+
432
+ public async getSmartRewarderContracts(): Promise<SteerResponse<readonly SmartRewarderContract[]>> {
433
+ try {
434
+ const response = await this.client.smartRewarderContracts();
435
+
436
+ return {
437
+ data: response.data?.smartRewarderContracts || [],
438
+ status: response.status,
439
+ success: true
440
+ };
441
+ } catch (error) {
442
+ return {
443
+ data: null,
444
+ status: 500,
445
+ success: false,
446
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
447
+ };
448
+ }
449
+ }
450
+
451
+ /**
452
+ * Claims rewards from the smart rewarder contract
453
+ * @param params - Parameters required for claiming rewards
454
+ * @returns Promise resolving to transaction hash if successful
455
+ *
456
+ * @remarks
457
+ * This method handles the low-level interaction with the smart contract.
458
+ * For a higher-level interface, consider using {@link claimCampaignRewards} instead.
459
+ *
460
+ * @example
461
+ * ```typescript
462
+ * // Get claim proofs
463
+ * const claimProofs = await smartRewards.getClaimProofs(userAddress, chainId, campaignId);
464
+ *
465
+ * // Get smart rewarder contract
466
+ * const rewarders = await smartRewards.getSmartRewarderContracts();
467
+ * const rewarder = rewarders.data?.find(r => r.chainId === chainId);
468
+ *
469
+ * if (claimProofs.data && rewarder) {
470
+ * // Prepare claim data
471
+ * const claimData = smartRewards.prepareClaimData(claimProofs.data);
472
+ * claimData.rewarderAddress = rewarder.address as Address;
473
+ *
474
+ * // Claim rewards
475
+ * const tx = await smartRewards.claimReward(claimData);
476
+ * }
477
+ * ```
478
+ *
479
+ * @throws Will throw an error if no wallet account is found
480
+ * @throws Will throw an error if contract simulation fails
481
+ */
482
+ public async claimReward(params: ClaimRewardParams): Promise<SteerResponse<Hash>> {
483
+ try {
484
+ const account = await this.walletClient.getAddresses();
485
+ if (!account[0]) throw new Error('No account found');
486
+
487
+ // Normalize addresses
488
+ const normalizedParams = {
489
+ ...params,
490
+ users: params.users.map(user => user.toLowerCase() as Address),
491
+ rewarderAddress: params.rewarderAddress.toLowerCase() as Address
492
+ };
493
+
494
+ const { request } = await this.publicClient.simulateContract({
495
+ address: normalizedParams.rewarderAddress,
496
+ abi: [{
497
+ type: 'function',
498
+ inputs: [
499
+ { name: 'users', internalType: 'address[]', type: 'address[]' },
500
+ { name: 'campaignIds', internalType: 'uint256[]', type: 'uint256[]' },
501
+ { name: 'amounts', internalType: 'uint256[]', type: 'uint256[]' },
502
+ { name: 'proofs', internalType: 'bytes32[][]', type: 'bytes32[][]' }
503
+ ],
504
+ name: 'claim',
505
+ outputs: [],
506
+ stateMutability: 'nonpayable'
507
+ }],
508
+ functionName: 'claim',
509
+ args: [
510
+ normalizedParams.users,
511
+ normalizedParams.campaignIds,
512
+ normalizedParams.amounts,
513
+ normalizedParams.proofs
514
+ ],
515
+ account: account[0]
516
+ });
517
+
518
+ const hash = await this.walletClient.writeContract(request);
519
+
520
+ return {
521
+ data: hash,
522
+ status: 200,
523
+ success: true
524
+ };
525
+ } catch (error) {
526
+ return {
527
+ data: null,
528
+ status: 500,
529
+ success: false,
530
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
531
+ };
532
+ }
533
+ }
534
+
535
+ /**
536
+ * Helper function to prepare claim data from claim proofs
537
+ * @param proofs - The claim proofs response from getClaimProofs
538
+ * @returns ClaimRewardParams object ready for use with claimReward
539
+ *
540
+ * @remarks
541
+ * This helper function transforms the claim proofs into the format required by the smart contract.
542
+ * Note that the returned object's rewarderAddress is empty and must be set before using with claimReward.
543
+ *
544
+ * @example
545
+ * ```typescript
546
+ * // Get claim proofs and rewarder contract
547
+ * const proofs = await smartRewards.getClaimProofs(userAddress, chainId);
548
+ * const rewarders = await smartRewards.getSmartRewarderContracts();
549
+ * const rewarder = rewarders.data?.find(r => r.chainId === chainId);
550
+ *
551
+ * if (proofs.data && rewarder) {
552
+ * // Prepare the claim data
553
+ * const claimData = smartRewards.prepareClaimData(proofs.data);
554
+ *
555
+ * // Set the rewarder address (required)
556
+ * claimData.rewarderAddress = rewarder.address as Address;
557
+ *
558
+ * // Now the data is ready for claiming
559
+ * const tx = await smartRewards.claimReward(claimData);
560
+ * }
561
+ * ```
562
+ */
563
+ public prepareClaimData(proofs: ClaimProofsResponse): ClaimRewardParams {
564
+ return {
565
+ users: proofs.edges.map(edge => edge.node.user.toLowerCase() as Address),
566
+ campaignIds: proofs.edges.map(edge => BigInt(edge.node.campaignId)),
567
+ amounts: proofs.edges.map(edge => BigInt(edge.node.amount.split('.')[0])),
568
+ proofs: proofs.edges.map(edge => edge.node.proof as readonly `0x${string}`[]),
569
+ rewarderAddress: '' as Address
570
+ };
571
+ }
572
+
573
+ /**
574
+ * Convenience function to handle the entire claim process
575
+ * @param userAddress The address of the user claiming rewards
576
+ * @param chainId The chain ID where the campaign exists
577
+ * @param campaignId Optional campaign ID to filter claims
578
+ * @returns Transaction hash if successful, or error details if failed
579
+ */
580
+ public async claimCampaignRewards(
581
+ userAddress: Address,
582
+ chainId: number,
583
+ campaignId?: number
584
+ ): Promise<SteerResponse<Hash>> {
585
+ try {
586
+ const normalizedUser = userAddress.toLowerCase() as Address;
587
+
588
+ // Get claim proofs
589
+ const claimProofsResponse = await this.getClaimProofs(normalizedUser, chainId, campaignId);
590
+ if (!claimProofsResponse.data || claimProofsResponse.data.edges.length === 0) {
591
+ return {
592
+ data: null,
593
+ status: 400,
594
+ success: false,
595
+ error: 'No claim proofs found'
596
+ };
597
+ }
598
+
599
+ // Filter claim proofs by campaignId if specified
600
+ let filteredClaimProofs = claimProofsResponse.data;
601
+ if (campaignId !== undefined) {
602
+ filteredClaimProofs = {
603
+ ...claimProofsResponse.data,
604
+ edges: claimProofsResponse.data.edges.filter(edge => edge.node.campaignId === campaignId)
605
+ };
606
+
607
+ // If no matching campaign proofs found after filtering
608
+ if (filteredClaimProofs.edges.length === 0) {
609
+ return {
610
+ data: null,
611
+ status: 400,
612
+ success: false,
613
+ error: `No claim proofs found for campaign ID ${campaignId}`
614
+ };
615
+ }
616
+ }
617
+
618
+ // Get smart rewarder contract
619
+ const rewarderResponse = await this.getSmartRewarderContracts();
620
+ const rewarder = rewarderResponse.data?.find(r => r.chainId === chainId);
621
+ if (!rewarder) {
622
+ return {
623
+ data: null,
624
+ status: 400,
625
+ success: false,
626
+ error: `No smart rewarder contract found for chain ${chainId}`
627
+ };
628
+ }
629
+
630
+ // Prepare claim data
631
+ const claimData = this.prepareClaimData(filteredClaimProofs);
632
+ claimData.rewarderAddress = rewarder.address as Address;
633
+
634
+ // Execute claim
635
+ return await this.claimReward(claimData);
636
+ } catch (error) {
637
+ return {
638
+ data: null,
639
+ status: 500,
640
+ success: false,
641
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
642
+ };
643
+ }
644
+ }
645
+
646
+ /**
647
+ * Prepares the claim rewards campaign object with all necessary data for contract interaction
648
+ * @param userAddress The address of the user claiming rewards
649
+ * @param chainId The chain ID where the campaign exists
650
+ * @param campaignId Optional campaign ID to filter claims
651
+ * @returns Promise resolving to an object containing all necessary data for claiming rewards
652
+ *
653
+ * @example
654
+ * ```typescript
655
+ * // Get the prepared claim data
656
+ * const claimData = await smartRewards.prepareClaimRewardsCampaign(userAddress, chainId, campaignId);
657
+ *
658
+ * if (claimData.success) {
659
+ * // Use the data with your own contract interaction methods
660
+ * const { address, abi, functionName, args } = claimData.data;
661
+ * // Execute the contract call using your preferred method
662
+ * }
663
+ * ```
664
+ */
665
+ public async prepareClaimRewardsCampaign(
666
+ userAddress: Address,
667
+ chainId: number,
668
+ campaignId?: number
669
+ ): Promise<SteerResponse<{
670
+ address: Address;
671
+ abi: {
672
+ type: string;
673
+ inputs: {
674
+ name: string;
675
+ internalType: string;
676
+ type: string;
677
+ }[];
678
+ name: string;
679
+ outputs: never[];
680
+ stateMutability: string;
681
+ }[];
682
+ functionName: string;
683
+ args: readonly [
684
+ readonly Address[],
685
+ readonly bigint[],
686
+ readonly bigint[],
687
+ readonly (readonly `0x${string}`[])[]
688
+ ];
689
+ }>> {
690
+ try {
691
+ const normalizedUser = userAddress.toLowerCase() as Address;
692
+
693
+ // Get claim proofs
694
+ const claimProofsResponse = await this.getClaimProofs(normalizedUser, chainId, campaignId);
695
+ if (!claimProofsResponse.data || claimProofsResponse.data.edges.length === 0) {
696
+ return {
697
+ data: null,
698
+ status: 400,
699
+ success: false,
700
+ error: 'No claim proofs found'
701
+ };
702
+ }
703
+
704
+ // Filter claim proofs by campaignId if specified
705
+ let filteredClaimProofs = claimProofsResponse.data;
706
+ if (campaignId !== undefined) {
707
+ filteredClaimProofs = {
708
+ ...claimProofsResponse.data,
709
+ edges: claimProofsResponse.data.edges.filter(edge => edge.node.campaignId === campaignId)
710
+ };
711
+
712
+ // If no matching campaign proofs found after filtering
713
+ if (filteredClaimProofs.edges.length === 0) {
714
+ return {
715
+ data: null,
716
+ status: 400,
717
+ success: false,
718
+ error: `No claim proofs found for campaign ID ${campaignId}`
719
+ };
720
+ }
721
+ }
722
+
723
+ // Get smart rewarder contract
724
+ const rewarderResponse = await this.getSmartRewarderContracts();
725
+ const rewarder = rewarderResponse.data?.find(r => r.chainId === chainId);
726
+ if (!rewarder) {
727
+ return {
728
+ data: null,
729
+ status: 400,
730
+ success: false,
731
+ error: `No smart rewarder contract found for chain ${chainId}`
732
+ };
733
+ }
734
+
735
+ // Prepare claim data
736
+ const claimData = this.prepareClaimData(filteredClaimProofs);
737
+
738
+ // Prepare the complete contract interaction data
739
+ return {
740
+ data: {
741
+ address: rewarder.address as Address,
742
+ abi: [{
743
+ type: 'function',
744
+ inputs: [
745
+ { name: 'users', internalType: 'address[]', type: 'address[]' },
746
+ { name: 'campaignIds', internalType: 'uint256[]', type: 'uint256[]' },
747
+ { name: 'amounts', internalType: 'uint256[]', type: 'uint256[]' },
748
+ { name: 'proofs', internalType: 'bytes32[][]', type: 'bytes32[][]' }
749
+ ],
750
+ name: 'claim',
751
+ outputs: [],
752
+ stateMutability: 'nonpayable'
753
+ }],
754
+ functionName: 'claim',
755
+ args: [
756
+ claimData.users,
757
+ claimData.campaignIds,
758
+ claimData.amounts,
759
+ claimData.proofs
760
+ ] as const
761
+ },
762
+ status: 200,
763
+ success: true
764
+ };
765
+ } catch (error) {
766
+ return {
767
+ data: null,
768
+ status: 500,
769
+ success: false,
770
+ error: error instanceof Error ? error.message : 'Unknown error occurred'
771
+ };
772
+ }
773
+ }
774
+
775
+ /**
776
+ * Checks if a chain is supported by checking if it has a subgraph URL
777
+ * @param chainId The chain ID to check
778
+ * @returns boolean indicating if the chain is supported
779
+ */
780
+ public supportsChain(chainId: number): boolean {
781
+ return getSubgraphUrlByChainId(chainId) !== undefined;
782
+ }
783
+ }