@steerprotocol/sdk 1.30.8 ā 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +46846 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +1 -0
- package/dist/index.d.mts +11062 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +46660 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +12 -14
- package/dist/cjs/base/FeeManagerClient.js +0 -607
- package/dist/cjs/base/FeeManagerClient.js.map +0 -1
- package/dist/cjs/base/PoolClient.js +0 -455
- package/dist/cjs/base/PoolClient.js.map +0 -1
- package/dist/cjs/base/SmartRewardClient.js +0 -55
- package/dist/cjs/base/SmartRewardClient.js.map +0 -1
- package/dist/cjs/base/SmartRewards.js +0 -560
- package/dist/cjs/base/SmartRewards.js.map +0 -1
- package/dist/cjs/base/StakingClient.js +0 -663
- package/dist/cjs/base/StakingClient.js.map +0 -1
- package/dist/cjs/base/SubgraphClient.js +0 -79
- package/dist/cjs/base/SubgraphClient.js.map +0 -1
- package/dist/cjs/base/VaultClient.js +0 -1647
- package/dist/cjs/base/VaultClient.js.map +0 -1
- package/dist/cjs/base/vault/deposit/index.js +0 -594
- package/dist/cjs/base/vault/deposit/index.js.map +0 -1
- package/dist/cjs/base/vault/deposit/types.js +0 -3
- package/dist/cjs/base/vault/deposit/types.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/calculateLimitPrice.js +0 -231
- package/dist/cjs/base/vault/single-asset/calculateLimitPrice.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/calculateSwapAmount.js +0 -68
- package/dist/cjs/base/vault/single-asset/calculateSwapAmount.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/estimateLpTokens.js +0 -355
- package/dist/cjs/base/vault/single-asset/estimateLpTokens.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/index.js +0 -109
- package/dist/cjs/base/vault/single-asset/index.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/simulateSwap.js +0 -336
- package/dist/cjs/base/vault/single-asset/simulateSwap.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/singleAssetDeposit.js +0 -355
- package/dist/cjs/base/vault/single-asset/singleAssetDeposit.js.map +0 -1
- package/dist/cjs/base/vault/single-asset/types.js +0 -16
- package/dist/cjs/base/vault/single-asset/types.js.map +0 -1
- package/dist/cjs/base/vault/utils.js +0 -583
- package/dist/cjs/base/vault/utils.js.map +0 -1
- package/dist/cjs/base/vault/withdraw/index.js +0 -157
- package/dist/cjs/base/vault/withdraw/index.js.map +0 -1
- package/dist/cjs/base/vault/withdraw/types.js +0 -3
- package/dist/cjs/base/vault/withdraw/types.js.map +0 -1
- package/dist/cjs/client.js +0 -126
- package/dist/cjs/client.js.map +0 -1
- package/dist/cjs/const/abis/UniswapPool.js +0 -5
- package/dist/cjs/const/abis/UniswapPool.js.map +0 -1
- package/dist/cjs/const/abis/erc1155.js +0 -318
- package/dist/cjs/const/abis/erc1155.js.map +0 -1
- package/dist/cjs/const/abis/erc20.js +0 -228
- package/dist/cjs/const/abis/erc20.js.map +0 -1
- package/dist/cjs/const/abis/erc721.js +0 -350
- package/dist/cjs/const/abis/erc721.js.map +0 -1
- package/dist/cjs/const/abis/feeManager.js +0 -676
- package/dist/cjs/const/abis/feeManager.js.map +0 -1
- package/dist/cjs/const/abis/index.js +0 -25
- package/dist/cjs/const/abis/index.js.map +0 -1
- package/dist/cjs/const/abis/quoter.js +0 -1584
- package/dist/cjs/const/abis/quoter.js.map +0 -1
- package/dist/cjs/const/abis/singleTokenDeposit.js +0 -925
- package/dist/cjs/const/abis/singleTokenDeposit.js.map +0 -1
- package/dist/cjs/const/abis/vaultFees.js +0 -44
- package/dist/cjs/const/abis/vaultFees.js.map +0 -1
- package/dist/cjs/const/amm/configs/ammConfig.js +0 -105
- package/dist/cjs/const/amm/configs/ammConfig.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/aerodrome-v2.js +0 -20
- package/dist/cjs/const/amm/configs/protocols/aerodrome-v2.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/aerodrome.js +0 -20
- package/dist/cjs/const/amm/configs/protocols/aerodrome.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/arthswap.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/arthswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/baseswap.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/baseswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/basex.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/basex.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/beam.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/beam.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/beamswap.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/beamswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/blackhole.js +0 -24
- package/dist/cjs/const/amm/configs/protocols/blackhole.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/camelot.js +0 -29
- package/dist/cjs/const/amm/configs/protocols/camelot.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/crust.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/crust.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/cypher.js +0 -23
- package/dist/cjs/const/amm/configs/protocols/cypher.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/dodo.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/dodo.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/dragonswap.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/dragonswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/eddy.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/eddy.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/equilibre.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/equilibre.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/fenix.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/fenix.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/forge.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/forge.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/fusionx.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/fusionx.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/glyph.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/glyph.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/henjin.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/henjin.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/hercules.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/hercules.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/horiza.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/horiza.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/index.js +0 -57
- package/dist/cjs/const/amm/configs/protocols/index.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/katana.js +0 -18
- package/dist/cjs/const/amm/configs/protocols/katana.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/katanaIntegral.js +0 -18
- package/dist/cjs/const/amm/configs/protocols/katanaIntegral.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/kim.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/kim.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/kinetix.js +0 -24
- package/dist/cjs/const/amm/configs/protocols/kinetix.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/kodiak.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/kodiak.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/kyo.js +0 -23
- package/dist/cjs/const/amm/configs/protocols/kyo.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/linehub.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/linehub.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/lynex.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/lynex.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/machinex.js +0 -24
- package/dist/cjs/const/amm/configs/protocols/machinex.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/maia.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/maia.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/metavault.js +0 -26
- package/dist/cjs/const/amm/configs/protocols/metavault.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/nest.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/nest.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/novaswap.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/novaswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/ocelex.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/ocelex.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/pancakeswap.js +0 -29
- package/dist/cjs/const/amm/configs/protocols/pancakeswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/poolshark.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/poolshark.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/quickswap-algebra.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/quickswap-algebra.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/quickswap-integral.js +0 -32
- package/dist/cjs/const/amm/configs/protocols/quickswap-integral.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/quickswap-univ3.js +0 -32
- package/dist/cjs/const/amm/configs/protocols/quickswap-univ3.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/quickswap.js +0 -30
- package/dist/cjs/const/amm/configs/protocols/quickswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/retro.js +0 -26
- package/dist/cjs/const/amm/configs/protocols/retro.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/sailor.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/sailor.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/shadow.js +0 -21
- package/dist/cjs/const/amm/configs/protocols/shadow.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/silverswap.js +0 -23
- package/dist/cjs/const/amm/configs/protocols/silverswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/spark-integral.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/spark-integral.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/spark.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/spark.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/spark32.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/spark32.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/spookyswap.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/spookyswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/stellaswap.js +0 -23
- package/dist/cjs/const/amm/configs/protocols/stellaswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/supswap.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/supswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/sushi.js +0 -87
- package/dist/cjs/const/amm/configs/protocols/sushi.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/swapmode.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/swapmode.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/swapsicle.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/swapsicle.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/thena.js +0 -25
- package/dist/cjs/const/amm/configs/protocols/thena.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/thick.js +0 -20
- package/dist/cjs/const/amm/configs/protocols/thick.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/thickv2.js +0 -20
- package/dist/cjs/const/amm/configs/protocols/thickv2.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/thruster.js +0 -22
- package/dist/cjs/const/amm/configs/protocols/thruster.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/uniswap.js +0 -97
- package/dist/cjs/const/amm/configs/protocols/uniswap.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/uniswapv4.js +0 -32
- package/dist/cjs/const/amm/configs/protocols/uniswapv4.js.map +0 -1
- package/dist/cjs/const/amm/configs/protocols/wasabee.js +0 -19
- package/dist/cjs/const/amm/configs/protocols/wasabee.js.map +0 -1
- package/dist/cjs/const/amm/index.js +0 -20
- package/dist/cjs/const/amm/index.js.map +0 -1
- package/dist/cjs/const/amm/utils/beacon.js +0 -205
- package/dist/cjs/const/amm/utils/beacon.js.map +0 -1
- package/dist/cjs/const/amm/utils/contracts.js +0 -114
- package/dist/cjs/const/amm/utils/contracts.js.map +0 -1
- package/dist/cjs/const/amm/utils/index.js +0 -105
- package/dist/cjs/const/amm/utils/index.js.map +0 -1
- package/dist/cjs/const/amm/utils/protocol.js +0 -139
- package/dist/cjs/const/amm/utils/protocol.js.map +0 -1
- package/dist/cjs/const/api.js +0 -28
- package/dist/cjs/const/api.js.map +0 -1
- package/dist/cjs/const/capabilities.js +0 -69
- package/dist/cjs/const/capabilities.js.map +0 -1
- package/dist/cjs/const/chain.js +0 -250
- package/dist/cjs/const/chain.js.map +0 -1
- package/dist/cjs/const/deployments/abis.js +0 -6756
- package/dist/cjs/const/deployments/abis.js.map +0 -1
- package/dist/cjs/const/deployments/apechain.js +0 -15
- package/dist/cjs/const/deployments/apechain.js.map +0 -1
- package/dist/cjs/const/deployments/arbitrum.js +0 -23
- package/dist/cjs/const/deployments/arbitrum.js.map +0 -1
- package/dist/cjs/const/deployments/arbitrumgoerli.js +0 -14
- package/dist/cjs/const/deployments/arbitrumgoerli.js.map +0 -1
- package/dist/cjs/const/deployments/astar.js +0 -14
- package/dist/cjs/const/deployments/astar.js.map +0 -1
- package/dist/cjs/const/deployments/astarzkevm.js +0 -14
- package/dist/cjs/const/deployments/astarzkevm.js.map +0 -1
- package/dist/cjs/const/deployments/avalanche.js +0 -43
- package/dist/cjs/const/deployments/avalanche.js.map +0 -1
- package/dist/cjs/const/deployments/bartiotest.js +0 -14
- package/dist/cjs/const/deployments/bartiotest.js.map +0 -1
- package/dist/cjs/const/deployments/base.js +0 -22
- package/dist/cjs/const/deployments/base.js.map +0 -1
- package/dist/cjs/const/deployments/bera.js +0 -14
- package/dist/cjs/const/deployments/bera.js.map +0 -1
- package/dist/cjs/const/deployments/berachainbartio.js +0 -38
- package/dist/cjs/const/deployments/berachainbartio.js.map +0 -1
- package/dist/cjs/const/deployments/blast.js +0 -14
- package/dist/cjs/const/deployments/blast.js.map +0 -1
- package/dist/cjs/const/deployments/bsc.js +0 -14
- package/dist/cjs/const/deployments/bsc.js.map +0 -1
- package/dist/cjs/const/deployments/celo.js +0 -14
- package/dist/cjs/const/deployments/celo.js.map +0 -1
- package/dist/cjs/const/deployments/core.js +0 -14
- package/dist/cjs/const/deployments/core.js.map +0 -1
- package/dist/cjs/const/deployments/eth.js +0 -19
- package/dist/cjs/const/deployments/eth.js.map +0 -1
- package/dist/cjs/const/deployments/evmos.js +0 -14
- package/dist/cjs/const/deployments/evmos.js.map +0 -1
- package/dist/cjs/const/deployments/fantom.js +0 -14
- package/dist/cjs/const/deployments/fantom.js.map +0 -1
- package/dist/cjs/const/deployments/filecoin.js +0 -14
- package/dist/cjs/const/deployments/filecoin.js.map +0 -1
- package/dist/cjs/const/deployments/flare.js +0 -14
- package/dist/cjs/const/deployments/flare.js.map +0 -1
- package/dist/cjs/const/deployments/goerli.js +0 -14
- package/dist/cjs/const/deployments/goerli.js.map +0 -1
- package/dist/cjs/const/deployments/hemi.js +0 -14
- package/dist/cjs/const/deployments/hemi.js.map +0 -1
- package/dist/cjs/const/deployments/hyperevm.js +0 -46
- package/dist/cjs/const/deployments/hyperevm.js.map +0 -1
- package/dist/cjs/const/deployments/index.js +0 -101
- package/dist/cjs/const/deployments/index.js.map +0 -1
- package/dist/cjs/const/deployments/katana.js +0 -46
- package/dist/cjs/const/deployments/katana.js.map +0 -1
- package/dist/cjs/const/deployments/kava.js +0 -14
- package/dist/cjs/const/deployments/kava.js.map +0 -1
- package/dist/cjs/const/deployments/linea.js +0 -14
- package/dist/cjs/const/deployments/linea.js.map +0 -1
- package/dist/cjs/const/deployments/localhost.js +0 -12
- package/dist/cjs/const/deployments/localhost.js.map +0 -1
- package/dist/cjs/const/deployments/manta.js +0 -14
- package/dist/cjs/const/deployments/manta.js.map +0 -1
- package/dist/cjs/const/deployments/mantle.js +0 -14
- package/dist/cjs/const/deployments/mantle.js.map +0 -1
- package/dist/cjs/const/deployments/metis.js +0 -14
- package/dist/cjs/const/deployments/metis.js.map +0 -1
- package/dist/cjs/const/deployments/mode.js +0 -14
- package/dist/cjs/const/deployments/mode.js.map +0 -1
- package/dist/cjs/const/deployments/moonbeam.js +0 -14
- package/dist/cjs/const/deployments/moonbeam.js.map +0 -1
- package/dist/cjs/const/deployments/mumbai.js +0 -14
- package/dist/cjs/const/deployments/mumbai.js.map +0 -1
- package/dist/cjs/const/deployments/nibiru.js +0 -47
- package/dist/cjs/const/deployments/nibiru.js.map +0 -1
- package/dist/cjs/const/deployments/okxtestnet.js +0 -14
- package/dist/cjs/const/deployments/okxtestnet.js.map +0 -1
- package/dist/cjs/const/deployments/optimism.js +0 -14
- package/dist/cjs/const/deployments/optimism.js.map +0 -1
- package/dist/cjs/const/deployments/optimismgoerli.js +0 -14
- package/dist/cjs/const/deployments/optimismgoerli.js.map +0 -1
- package/dist/cjs/const/deployments/peaq.js +0 -22
- package/dist/cjs/const/deployments/peaq.js.map +0 -1
- package/dist/cjs/const/deployments/polygon.js +0 -22
- package/dist/cjs/const/deployments/polygon.js.map +0 -1
- package/dist/cjs/const/deployments/polyzkevm.js +0 -14
- package/dist/cjs/const/deployments/polyzkevm.js.map +0 -1
- package/dist/cjs/const/deployments/pyzkevm.js +0 -6
- package/dist/cjs/const/deployments/pyzkevm.js.map +0 -1
- package/dist/cjs/const/deployments/ronin.js +0 -14
- package/dist/cjs/const/deployments/ronin.js.map +0 -1
- package/dist/cjs/const/deployments/rootstock.js +0 -14
- package/dist/cjs/const/deployments/rootstock.js.map +0 -1
- package/dist/cjs/const/deployments/saga.js +0 -47
- package/dist/cjs/const/deployments/saga.js.map +0 -1
- package/dist/cjs/const/deployments/scroll.js +0 -14
- package/dist/cjs/const/deployments/scroll.js.map +0 -1
- package/dist/cjs/const/deployments/sei.js +0 -14
- package/dist/cjs/const/deployments/sei.js.map +0 -1
- package/dist/cjs/const/deployments/soneium.js +0 -14
- package/dist/cjs/const/deployments/soneium.js.map +0 -1
- package/dist/cjs/const/deployments/sonic.js +0 -14
- package/dist/cjs/const/deployments/sonic.js.map +0 -1
- package/dist/cjs/const/deployments/taiko.js +0 -14
- package/dist/cjs/const/deployments/taiko.js.map +0 -1
- package/dist/cjs/const/deployments/tataratestnet.js +0 -14
- package/dist/cjs/const/deployments/tataratestnet.js.map +0 -1
- package/dist/cjs/const/deployments/telos.js +0 -14
- package/dist/cjs/const/deployments/telos.js.map +0 -1
- package/dist/cjs/const/deployments/thundercore.js +0 -14
- package/dist/cjs/const/deployments/thundercore.js.map +0 -1
- package/dist/cjs/const/deployments/uni.js +0 -14
- package/dist/cjs/const/deployments/uni.js.map +0 -1
- package/dist/cjs/const/deployments/xlayer.js +0 -14
- package/dist/cjs/const/deployments/xlayer.js.map +0 -1
- package/dist/cjs/const/deployments/zeta.js +0 -14
- package/dist/cjs/const/deployments/zeta.js.map +0 -1
- package/dist/cjs/const/deployments/zircuit.js +0 -14
- package/dist/cjs/const/deployments/zircuit.js.map +0 -1
- package/dist/cjs/const/deployments/zklinknova.js +0 -18
- package/dist/cjs/const/deployments/zklinknova.js.map +0 -1
- package/dist/cjs/const/index.js +0 -29
- package/dist/cjs/const/index.js.map +0 -1
- package/dist/cjs/const/network.js +0 -542
- package/dist/cjs/const/network.js.map +0 -1
- package/dist/cjs/const/protocol.js +0 -242
- package/dist/cjs/const/protocol.js.map +0 -1
- package/dist/cjs/const/quoter.js +0 -425
- package/dist/cjs/const/quoter.js.map +0 -1
- package/dist/cjs/const/stabilityVaults/index.js +0 -18
- package/dist/cjs/const/stabilityVaults/index.js.map +0 -1
- package/dist/cjs/const/stabilityVaults/stabilityVaultsConfig.js +0 -35
- package/dist/cjs/const/stabilityVaults/stabilityVaultsConfig.js.map +0 -1
- package/dist/cjs/const/subgraph.js +0 -89
- package/dist/cjs/const/subgraph.js.map +0 -1
- package/dist/cjs/const/thegraph.js +0 -8
- package/dist/cjs/const/thegraph.js.map +0 -1
- package/dist/cjs/index.js +0 -96
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/scripts/processDeployments.js +0 -123
- package/dist/cjs/scripts/processDeployments.js.map +0 -1
- package/dist/cjs/types.js +0 -3
- package/dist/cjs/types.js.map +0 -1
- package/dist/cjs/utils/PoolQueryAdapter.js +0 -937
- package/dist/cjs/utils/PoolQueryAdapter.js.map +0 -1
- package/dist/cjs/utils/SubgraphVaultClient.js +0 -433
- package/dist/cjs/utils/SubgraphVaultClient.js.map +0 -1
- package/dist/cjs/utils/subgraph-types.js +0 -3
- package/dist/cjs/utils/subgraph-types.js.map +0 -1
- package/dist/esm/base/FeeManagerClient.js +0 -607
- package/dist/esm/base/FeeManagerClient.js.map +0 -1
- package/dist/esm/base/PoolClient.js +0 -455
- package/dist/esm/base/PoolClient.js.map +0 -1
- package/dist/esm/base/SmartRewardClient.js +0 -55
- package/dist/esm/base/SmartRewardClient.js.map +0 -1
- package/dist/esm/base/SmartRewards.js +0 -560
- package/dist/esm/base/SmartRewards.js.map +0 -1
- package/dist/esm/base/StakingClient.js +0 -663
- package/dist/esm/base/StakingClient.js.map +0 -1
- package/dist/esm/base/SubgraphClient.js +0 -79
- package/dist/esm/base/SubgraphClient.js.map +0 -1
- package/dist/esm/base/VaultClient.js +0 -1647
- package/dist/esm/base/VaultClient.js.map +0 -1
- package/dist/esm/base/vault/deposit/index.js +0 -594
- package/dist/esm/base/vault/deposit/index.js.map +0 -1
- package/dist/esm/base/vault/deposit/types.js +0 -3
- package/dist/esm/base/vault/deposit/types.js.map +0 -1
- package/dist/esm/base/vault/single-asset/calculateLimitPrice.js +0 -231
- package/dist/esm/base/vault/single-asset/calculateLimitPrice.js.map +0 -1
- package/dist/esm/base/vault/single-asset/calculateSwapAmount.js +0 -68
- package/dist/esm/base/vault/single-asset/calculateSwapAmount.js.map +0 -1
- package/dist/esm/base/vault/single-asset/estimateLpTokens.js +0 -355
- package/dist/esm/base/vault/single-asset/estimateLpTokens.js.map +0 -1
- package/dist/esm/base/vault/single-asset/index.js +0 -109
- package/dist/esm/base/vault/single-asset/index.js.map +0 -1
- package/dist/esm/base/vault/single-asset/simulateSwap.js +0 -336
- package/dist/esm/base/vault/single-asset/simulateSwap.js.map +0 -1
- package/dist/esm/base/vault/single-asset/singleAssetDeposit.js +0 -355
- package/dist/esm/base/vault/single-asset/singleAssetDeposit.js.map +0 -1
- package/dist/esm/base/vault/single-asset/types.js +0 -16
- package/dist/esm/base/vault/single-asset/types.js.map +0 -1
- package/dist/esm/base/vault/utils.js +0 -583
- package/dist/esm/base/vault/utils.js.map +0 -1
- package/dist/esm/base/vault/withdraw/index.js +0 -157
- package/dist/esm/base/vault/withdraw/index.js.map +0 -1
- package/dist/esm/base/vault/withdraw/types.js +0 -3
- package/dist/esm/base/vault/withdraw/types.js.map +0 -1
- package/dist/esm/client.js +0 -126
- package/dist/esm/client.js.map +0 -1
- package/dist/esm/const/abis/UniswapPool.js +0 -5
- package/dist/esm/const/abis/UniswapPool.js.map +0 -1
- package/dist/esm/const/abis/erc1155.js +0 -318
- package/dist/esm/const/abis/erc1155.js.map +0 -1
- package/dist/esm/const/abis/erc20.js +0 -228
- package/dist/esm/const/abis/erc20.js.map +0 -1
- package/dist/esm/const/abis/erc721.js +0 -350
- package/dist/esm/const/abis/erc721.js.map +0 -1
- package/dist/esm/const/abis/feeManager.js +0 -676
- package/dist/esm/const/abis/feeManager.js.map +0 -1
- package/dist/esm/const/abis/index.js +0 -25
- package/dist/esm/const/abis/index.js.map +0 -1
- package/dist/esm/const/abis/quoter.js +0 -1584
- package/dist/esm/const/abis/quoter.js.map +0 -1
- package/dist/esm/const/abis/singleTokenDeposit.js +0 -925
- package/dist/esm/const/abis/singleTokenDeposit.js.map +0 -1
- package/dist/esm/const/abis/vaultFees.js +0 -44
- package/dist/esm/const/abis/vaultFees.js.map +0 -1
- package/dist/esm/const/amm/configs/ammConfig.js +0 -105
- package/dist/esm/const/amm/configs/ammConfig.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js +0 -20
- package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/aerodrome.js +0 -20
- package/dist/esm/const/amm/configs/protocols/aerodrome.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/arthswap.js +0 -22
- package/dist/esm/const/amm/configs/protocols/arthswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/baseswap.js +0 -19
- package/dist/esm/const/amm/configs/protocols/baseswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/basex.js +0 -22
- package/dist/esm/const/amm/configs/protocols/basex.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/beam.js +0 -19
- package/dist/esm/const/amm/configs/protocols/beam.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/beamswap.js +0 -19
- package/dist/esm/const/amm/configs/protocols/beamswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/blackhole.js +0 -24
- package/dist/esm/const/amm/configs/protocols/blackhole.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/camelot.js +0 -29
- package/dist/esm/const/amm/configs/protocols/camelot.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/crust.js +0 -19
- package/dist/esm/const/amm/configs/protocols/crust.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/cypher.js +0 -23
- package/dist/esm/const/amm/configs/protocols/cypher.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/dodo.js +0 -19
- package/dist/esm/const/amm/configs/protocols/dodo.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/dragonswap.js +0 -19
- package/dist/esm/const/amm/configs/protocols/dragonswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/eddy.js +0 -19
- package/dist/esm/const/amm/configs/protocols/eddy.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/equilibre.js +0 -19
- package/dist/esm/const/amm/configs/protocols/equilibre.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/fenix.js +0 -19
- package/dist/esm/const/amm/configs/protocols/fenix.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/forge.js +0 -25
- package/dist/esm/const/amm/configs/protocols/forge.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/fusionx.js +0 -22
- package/dist/esm/const/amm/configs/protocols/fusionx.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/glyph.js +0 -25
- package/dist/esm/const/amm/configs/protocols/glyph.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/henjin.js +0 -19
- package/dist/esm/const/amm/configs/protocols/henjin.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/hercules.js +0 -19
- package/dist/esm/const/amm/configs/protocols/hercules.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/horiza.js +0 -25
- package/dist/esm/const/amm/configs/protocols/horiza.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/index.js +0 -57
- package/dist/esm/const/amm/configs/protocols/index.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/katana.js +0 -18
- package/dist/esm/const/amm/configs/protocols/katana.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/katanaIntegral.js +0 -18
- package/dist/esm/const/amm/configs/protocols/katanaIntegral.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/kim.js +0 -25
- package/dist/esm/const/amm/configs/protocols/kim.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/kinetix.js +0 -24
- package/dist/esm/const/amm/configs/protocols/kinetix.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/kodiak.js +0 -22
- package/dist/esm/const/amm/configs/protocols/kodiak.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/kyo.js +0 -23
- package/dist/esm/const/amm/configs/protocols/kyo.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/linehub.js +0 -19
- package/dist/esm/const/amm/configs/protocols/linehub.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/lynex.js +0 -25
- package/dist/esm/const/amm/configs/protocols/lynex.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/machinex.js +0 -24
- package/dist/esm/const/amm/configs/protocols/machinex.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/maia.js +0 -25
- package/dist/esm/const/amm/configs/protocols/maia.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/metavault.js +0 -26
- package/dist/esm/const/amm/configs/protocols/metavault.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/nest.js +0 -22
- package/dist/esm/const/amm/configs/protocols/nest.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/novaswap.js +0 -19
- package/dist/esm/const/amm/configs/protocols/novaswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/ocelex.js +0 -19
- package/dist/esm/const/amm/configs/protocols/ocelex.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/pancakeswap.js +0 -29
- package/dist/esm/const/amm/configs/protocols/pancakeswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/poolshark.js +0 -19
- package/dist/esm/const/amm/configs/protocols/poolshark.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js +0 -22
- package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/quickswap-integral.js +0 -32
- package/dist/esm/const/amm/configs/protocols/quickswap-integral.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js +0 -32
- package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/quickswap.js +0 -30
- package/dist/esm/const/amm/configs/protocols/quickswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/retro.js +0 -26
- package/dist/esm/const/amm/configs/protocols/retro.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/sailor.js +0 -19
- package/dist/esm/const/amm/configs/protocols/sailor.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/shadow.js +0 -21
- package/dist/esm/const/amm/configs/protocols/shadow.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/silverswap.js +0 -23
- package/dist/esm/const/amm/configs/protocols/silverswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/spark-integral.js +0 -22
- package/dist/esm/const/amm/configs/protocols/spark-integral.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/spark.js +0 -19
- package/dist/esm/const/amm/configs/protocols/spark.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/spark32.js +0 -19
- package/dist/esm/const/amm/configs/protocols/spark32.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/spookyswap.js +0 -19
- package/dist/esm/const/amm/configs/protocols/spookyswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/stellaswap.js +0 -23
- package/dist/esm/const/amm/configs/protocols/stellaswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/supswap.js +0 -19
- package/dist/esm/const/amm/configs/protocols/supswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/sushi.js +0 -87
- package/dist/esm/const/amm/configs/protocols/sushi.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/swapmode.js +0 -19
- package/dist/esm/const/amm/configs/protocols/swapmode.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/swapsicle.js +0 -19
- package/dist/esm/const/amm/configs/protocols/swapsicle.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/thena.js +0 -25
- package/dist/esm/const/amm/configs/protocols/thena.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/thick.js +0 -20
- package/dist/esm/const/amm/configs/protocols/thick.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/thickv2.js +0 -20
- package/dist/esm/const/amm/configs/protocols/thickv2.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/thruster.js +0 -22
- package/dist/esm/const/amm/configs/protocols/thruster.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/uniswap.js +0 -97
- package/dist/esm/const/amm/configs/protocols/uniswap.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/uniswapv4.js +0 -32
- package/dist/esm/const/amm/configs/protocols/uniswapv4.js.map +0 -1
- package/dist/esm/const/amm/configs/protocols/wasabee.js +0 -19
- package/dist/esm/const/amm/configs/protocols/wasabee.js.map +0 -1
- package/dist/esm/const/amm/index.js +0 -20
- package/dist/esm/const/amm/index.js.map +0 -1
- package/dist/esm/const/amm/utils/beacon.js +0 -205
- package/dist/esm/const/amm/utils/beacon.js.map +0 -1
- package/dist/esm/const/amm/utils/contracts.js +0 -114
- package/dist/esm/const/amm/utils/contracts.js.map +0 -1
- package/dist/esm/const/amm/utils/index.js +0 -105
- package/dist/esm/const/amm/utils/index.js.map +0 -1
- package/dist/esm/const/amm/utils/protocol.js +0 -139
- package/dist/esm/const/amm/utils/protocol.js.map +0 -1
- package/dist/esm/const/api.js +0 -28
- package/dist/esm/const/api.js.map +0 -1
- package/dist/esm/const/capabilities.js +0 -69
- package/dist/esm/const/capabilities.js.map +0 -1
- package/dist/esm/const/chain.js +0 -250
- package/dist/esm/const/chain.js.map +0 -1
- package/dist/esm/const/deployments/abis.js +0 -6756
- package/dist/esm/const/deployments/abis.js.map +0 -1
- package/dist/esm/const/deployments/apechain.js +0 -15
- package/dist/esm/const/deployments/apechain.js.map +0 -1
- package/dist/esm/const/deployments/arbitrum.js +0 -23
- package/dist/esm/const/deployments/arbitrum.js.map +0 -1
- package/dist/esm/const/deployments/arbitrumgoerli.js +0 -14
- package/dist/esm/const/deployments/arbitrumgoerli.js.map +0 -1
- package/dist/esm/const/deployments/astar.js +0 -14
- package/dist/esm/const/deployments/astar.js.map +0 -1
- package/dist/esm/const/deployments/astarzkevm.js +0 -14
- package/dist/esm/const/deployments/astarzkevm.js.map +0 -1
- package/dist/esm/const/deployments/avalanche.js +0 -43
- package/dist/esm/const/deployments/avalanche.js.map +0 -1
- package/dist/esm/const/deployments/bartiotest.js +0 -14
- package/dist/esm/const/deployments/bartiotest.js.map +0 -1
- package/dist/esm/const/deployments/base.js +0 -22
- package/dist/esm/const/deployments/base.js.map +0 -1
- package/dist/esm/const/deployments/bera.js +0 -14
- package/dist/esm/const/deployments/bera.js.map +0 -1
- package/dist/esm/const/deployments/berachainbartio.js +0 -38
- package/dist/esm/const/deployments/berachainbartio.js.map +0 -1
- package/dist/esm/const/deployments/blast.js +0 -14
- package/dist/esm/const/deployments/blast.js.map +0 -1
- package/dist/esm/const/deployments/bsc.js +0 -14
- package/dist/esm/const/deployments/bsc.js.map +0 -1
- package/dist/esm/const/deployments/celo.js +0 -14
- package/dist/esm/const/deployments/celo.js.map +0 -1
- package/dist/esm/const/deployments/core.js +0 -14
- package/dist/esm/const/deployments/core.js.map +0 -1
- package/dist/esm/const/deployments/eth.js +0 -19
- package/dist/esm/const/deployments/eth.js.map +0 -1
- package/dist/esm/const/deployments/evmos.js +0 -14
- package/dist/esm/const/deployments/evmos.js.map +0 -1
- package/dist/esm/const/deployments/fantom.js +0 -14
- package/dist/esm/const/deployments/fantom.js.map +0 -1
- package/dist/esm/const/deployments/filecoin.js +0 -14
- package/dist/esm/const/deployments/filecoin.js.map +0 -1
- package/dist/esm/const/deployments/flare.js +0 -14
- package/dist/esm/const/deployments/flare.js.map +0 -1
- package/dist/esm/const/deployments/goerli.js +0 -14
- package/dist/esm/const/deployments/goerli.js.map +0 -1
- package/dist/esm/const/deployments/hemi.js +0 -14
- package/dist/esm/const/deployments/hemi.js.map +0 -1
- package/dist/esm/const/deployments/hyperevm.js +0 -46
- package/dist/esm/const/deployments/hyperevm.js.map +0 -1
- package/dist/esm/const/deployments/index.js +0 -101
- package/dist/esm/const/deployments/index.js.map +0 -1
- package/dist/esm/const/deployments/katana.js +0 -46
- package/dist/esm/const/deployments/katana.js.map +0 -1
- package/dist/esm/const/deployments/kava.js +0 -14
- package/dist/esm/const/deployments/kava.js.map +0 -1
- package/dist/esm/const/deployments/linea.js +0 -14
- package/dist/esm/const/deployments/linea.js.map +0 -1
- package/dist/esm/const/deployments/localhost.js +0 -12
- package/dist/esm/const/deployments/localhost.js.map +0 -1
- package/dist/esm/const/deployments/manta.js +0 -14
- package/dist/esm/const/deployments/manta.js.map +0 -1
- package/dist/esm/const/deployments/mantle.js +0 -14
- package/dist/esm/const/deployments/mantle.js.map +0 -1
- package/dist/esm/const/deployments/metis.js +0 -14
- package/dist/esm/const/deployments/metis.js.map +0 -1
- package/dist/esm/const/deployments/mode.js +0 -14
- package/dist/esm/const/deployments/mode.js.map +0 -1
- package/dist/esm/const/deployments/moonbeam.js +0 -14
- package/dist/esm/const/deployments/moonbeam.js.map +0 -1
- package/dist/esm/const/deployments/mumbai.js +0 -14
- package/dist/esm/const/deployments/mumbai.js.map +0 -1
- package/dist/esm/const/deployments/nibiru.js +0 -47
- package/dist/esm/const/deployments/nibiru.js.map +0 -1
- package/dist/esm/const/deployments/okxtestnet.js +0 -14
- package/dist/esm/const/deployments/okxtestnet.js.map +0 -1
- package/dist/esm/const/deployments/optimism.js +0 -14
- package/dist/esm/const/deployments/optimism.js.map +0 -1
- package/dist/esm/const/deployments/optimismgoerli.js +0 -14
- package/dist/esm/const/deployments/optimismgoerli.js.map +0 -1
- package/dist/esm/const/deployments/peaq.js +0 -22
- package/dist/esm/const/deployments/peaq.js.map +0 -1
- package/dist/esm/const/deployments/polygon.js +0 -22
- package/dist/esm/const/deployments/polygon.js.map +0 -1
- package/dist/esm/const/deployments/polyzkevm.js +0 -14
- package/dist/esm/const/deployments/polyzkevm.js.map +0 -1
- package/dist/esm/const/deployments/pyzkevm.js +0 -6
- package/dist/esm/const/deployments/pyzkevm.js.map +0 -1
- package/dist/esm/const/deployments/ronin.js +0 -14
- package/dist/esm/const/deployments/ronin.js.map +0 -1
- package/dist/esm/const/deployments/rootstock.js +0 -14
- package/dist/esm/const/deployments/rootstock.js.map +0 -1
- package/dist/esm/const/deployments/saga.js +0 -47
- package/dist/esm/const/deployments/saga.js.map +0 -1
- package/dist/esm/const/deployments/scroll.js +0 -14
- package/dist/esm/const/deployments/scroll.js.map +0 -1
- package/dist/esm/const/deployments/sei.js +0 -14
- package/dist/esm/const/deployments/sei.js.map +0 -1
- package/dist/esm/const/deployments/soneium.js +0 -14
- package/dist/esm/const/deployments/soneium.js.map +0 -1
- package/dist/esm/const/deployments/sonic.js +0 -14
- package/dist/esm/const/deployments/sonic.js.map +0 -1
- package/dist/esm/const/deployments/taiko.js +0 -14
- package/dist/esm/const/deployments/taiko.js.map +0 -1
- package/dist/esm/const/deployments/tataratestnet.js +0 -14
- package/dist/esm/const/deployments/tataratestnet.js.map +0 -1
- package/dist/esm/const/deployments/telos.js +0 -14
- package/dist/esm/const/deployments/telos.js.map +0 -1
- package/dist/esm/const/deployments/thundercore.js +0 -14
- package/dist/esm/const/deployments/thundercore.js.map +0 -1
- package/dist/esm/const/deployments/uni.js +0 -14
- package/dist/esm/const/deployments/uni.js.map +0 -1
- package/dist/esm/const/deployments/xlayer.js +0 -14
- package/dist/esm/const/deployments/xlayer.js.map +0 -1
- package/dist/esm/const/deployments/zeta.js +0 -14
- package/dist/esm/const/deployments/zeta.js.map +0 -1
- package/dist/esm/const/deployments/zircuit.js +0 -14
- package/dist/esm/const/deployments/zircuit.js.map +0 -1
- package/dist/esm/const/deployments/zklinknova.js +0 -18
- package/dist/esm/const/deployments/zklinknova.js.map +0 -1
- package/dist/esm/const/index.js +0 -29
- package/dist/esm/const/index.js.map +0 -1
- package/dist/esm/const/network.js +0 -542
- package/dist/esm/const/network.js.map +0 -1
- package/dist/esm/const/protocol.js +0 -242
- package/dist/esm/const/protocol.js.map +0 -1
- package/dist/esm/const/quoter.js +0 -425
- package/dist/esm/const/quoter.js.map +0 -1
- package/dist/esm/const/stabilityVaults/index.js +0 -18
- package/dist/esm/const/stabilityVaults/index.js.map +0 -1
- package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js +0 -35
- package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js.map +0 -1
- package/dist/esm/const/subgraph.js +0 -89
- package/dist/esm/const/subgraph.js.map +0 -1
- package/dist/esm/const/thegraph.js +0 -8
- package/dist/esm/const/thegraph.js.map +0 -1
- package/dist/esm/index.js +0 -96
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/scripts/processDeployments.js +0 -123
- package/dist/esm/scripts/processDeployments.js.map +0 -1
- package/dist/esm/types.js +0 -3
- package/dist/esm/types.js.map +0 -1
- package/dist/esm/utils/PoolQueryAdapter.js +0 -937
- package/dist/esm/utils/PoolQueryAdapter.js.map +0 -1
- package/dist/esm/utils/SubgraphVaultClient.js +0 -433
- package/dist/esm/utils/SubgraphVaultClient.js.map +0 -1
- package/dist/esm/utils/subgraph-types.js +0 -3
- package/dist/esm/utils/subgraph-types.js.map +0 -1
- package/dist/types/base/FeeManagerClient.d.ts +0 -49
- package/dist/types/base/FeeManagerClient.d.ts.map +0 -1
- package/dist/types/base/PoolClient.d.ts +0 -257
- package/dist/types/base/PoolClient.d.ts.map +0 -1
- package/dist/types/base/SmartRewardClient.d.ts +0 -46
- package/dist/types/base/SmartRewardClient.d.ts.map +0 -1
- package/dist/types/base/SmartRewards.d.ts +0 -291
- package/dist/types/base/SmartRewards.d.ts.map +0 -1
- package/dist/types/base/StakingClient.d.ts +0 -244
- package/dist/types/base/StakingClient.d.ts.map +0 -1
- package/dist/types/base/SubgraphClient.d.ts +0 -26
- package/dist/types/base/SubgraphClient.d.ts.map +0 -1
- package/dist/types/base/VaultClient.d.ts +0 -788
- package/dist/types/base/VaultClient.d.ts.map +0 -1
- package/dist/types/base/vault/deposit/index.d.ts +0 -71
- package/dist/types/base/vault/deposit/index.d.ts.map +0 -1
- package/dist/types/base/vault/deposit/types.d.ts +0 -44
- package/dist/types/base/vault/deposit/types.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/calculateLimitPrice.d.ts +0 -59
- package/dist/types/base/vault/single-asset/calculateLimitPrice.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/calculateSwapAmount.d.ts +0 -30
- package/dist/types/base/vault/single-asset/calculateSwapAmount.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/estimateLpTokens.d.ts +0 -61
- package/dist/types/base/vault/single-asset/estimateLpTokens.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/index.d.ts +0 -80
- package/dist/types/base/vault/single-asset/index.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/simulateSwap.d.ts +0 -122
- package/dist/types/base/vault/single-asset/simulateSwap.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/singleAssetDeposit.d.ts +0 -141
- package/dist/types/base/vault/single-asset/singleAssetDeposit.d.ts.map +0 -1
- package/dist/types/base/vault/single-asset/types.d.ts +0 -173
- package/dist/types/base/vault/single-asset/types.d.ts.map +0 -1
- package/dist/types/base/vault/utils.d.ts +0 -120
- package/dist/types/base/vault/utils.d.ts.map +0 -1
- package/dist/types/base/vault/withdraw/index.d.ts +0 -45
- package/dist/types/base/vault/withdraw/index.d.ts.map +0 -1
- package/dist/types/base/vault/withdraw/types.d.ts +0 -13
- package/dist/types/base/vault/withdraw/types.d.ts.map +0 -1
- package/dist/types/client.d.ts +0 -97
- package/dist/types/client.d.ts.map +0 -1
- package/dist/types/const/abis/UniswapPool.d.ts +0 -36
- package/dist/types/const/abis/UniswapPool.d.ts.map +0 -1
- package/dist/types/const/abis/erc1155.d.ts +0 -29
- package/dist/types/const/abis/erc1155.d.ts.map +0 -1
- package/dist/types/const/abis/erc20.d.ts +0 -29
- package/dist/types/const/abis/erc20.d.ts.map +0 -1
- package/dist/types/const/abis/erc721.d.ts +0 -45
- package/dist/types/const/abis/erc721.d.ts.map +0 -1
- package/dist/types/const/abis/feeManager.d.ts +0 -527
- package/dist/types/const/abis/feeManager.d.ts.map +0 -1
- package/dist/types/const/abis/index.d.ts +0 -9
- package/dist/types/const/abis/index.d.ts.map +0 -1
- package/dist/types/const/abis/quoter.d.ts +0 -432
- package/dist/types/const/abis/quoter.d.ts.map +0 -1
- package/dist/types/const/abis/singleTokenDeposit.d.ts +0 -47
- package/dist/types/const/abis/singleTokenDeposit.d.ts.map +0 -1
- package/dist/types/const/abis/vaultFees.d.ts +0 -30
- package/dist/types/const/abis/vaultFees.d.ts.map +0 -1
- package/dist/types/const/amm/configs/ammConfig.d.ts +0 -3
- package/dist/types/const/amm/configs/ammConfig.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/aerodrome-v2.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/aerodrome-v2.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/aerodrome.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/aerodrome.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/arthswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/arthswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/baseswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/baseswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/basex.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/basex.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/beam.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/beam.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/beamswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/beamswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/blackhole.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/blackhole.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/camelot.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/camelot.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/crust.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/crust.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/cypher.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/cypher.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/dodo.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/dodo.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/dragonswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/dragonswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/eddy.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/eddy.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/equilibre.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/equilibre.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/fenix.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/fenix.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/forge.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/forge.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/fusionx.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/fusionx.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/glyph.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/glyph.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/henjin.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/henjin.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/hercules.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/hercules.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/horiza.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/horiza.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/index.d.ts +0 -41
- package/dist/types/const/amm/configs/protocols/index.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/katana.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/katana.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/katanaIntegral.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/katanaIntegral.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/kim.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/kim.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/kinetix.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/kinetix.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/kodiak.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/kodiak.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/kyo.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/kyo.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/linehub.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/linehub.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/lynex.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/lynex.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/machinex.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/machinex.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/maia.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/maia.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/metavault.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/metavault.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/nest.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/nest.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/novaswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/novaswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/ocelex.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/ocelex.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/pancakeswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/pancakeswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/poolshark.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/poolshark.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/quickswap-algebra.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/quickswap-algebra.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/quickswap-integral.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/quickswap-integral.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/quickswap-univ3.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/quickswap-univ3.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/quickswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/quickswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/retro.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/retro.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/sailor.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/sailor.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/shadow.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/shadow.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/silverswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/silverswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/spark-integral.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/spark-integral.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/spark.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/spark.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/spark32.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/spark32.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/spookyswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/spookyswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/stellaswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/stellaswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/supswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/supswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/sushi.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/sushi.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/swapmode.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/swapmode.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/swapsicle.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/swapsicle.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/thena.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/thena.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/thick.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/thick.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/thickv2.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/thickv2.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/thruster.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/thruster.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/uniswap.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/uniswap.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/uniswapv4.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/uniswapv4.d.ts.map +0 -1
- package/dist/types/const/amm/configs/protocols/wasabee.d.ts +0 -3
- package/dist/types/const/amm/configs/protocols/wasabee.d.ts.map +0 -1
- package/dist/types/const/amm/index.d.ts +0 -4
- package/dist/types/const/amm/index.d.ts.map +0 -1
- package/dist/types/const/amm/utils/beacon.d.ts +0 -38
- package/dist/types/const/amm/utils/beacon.d.ts.map +0 -1
- package/dist/types/const/amm/utils/contracts.d.ts +0 -83
- package/dist/types/const/amm/utils/contracts.d.ts.map +0 -1
- package/dist/types/const/amm/utils/index.d.ts +0 -13
- package/dist/types/const/amm/utils/index.d.ts.map +0 -1
- package/dist/types/const/amm/utils/protocol.d.ts +0 -74
- package/dist/types/const/amm/utils/protocol.d.ts.map +0 -1
- package/dist/types/const/api.d.ts +0 -17
- package/dist/types/const/api.d.ts.map +0 -1
- package/dist/types/const/capabilities.d.ts +0 -36
- package/dist/types/const/capabilities.d.ts.map +0 -1
- package/dist/types/const/chain.d.ts +0 -192
- package/dist/types/const/chain.d.ts.map +0 -1
- package/dist/types/const/deployments/abis.d.ts +0 -5229
- package/dist/types/const/deployments/abis.d.ts.map +0 -1
- package/dist/types/const/deployments/apechain.d.ts +0 -7
- package/dist/types/const/deployments/apechain.d.ts.map +0 -1
- package/dist/types/const/deployments/arbitrum.d.ts +0 -7
- package/dist/types/const/deployments/arbitrum.d.ts.map +0 -1
- package/dist/types/const/deployments/arbitrumgoerli.d.ts +0 -7
- package/dist/types/const/deployments/arbitrumgoerli.d.ts.map +0 -1
- package/dist/types/const/deployments/astar.d.ts +0 -7
- package/dist/types/const/deployments/astar.d.ts.map +0 -1
- package/dist/types/const/deployments/astarzkevm.d.ts +0 -7
- package/dist/types/const/deployments/astarzkevm.d.ts.map +0 -1
- package/dist/types/const/deployments/avalanche.d.ts +0 -7
- package/dist/types/const/deployments/avalanche.d.ts.map +0 -1
- package/dist/types/const/deployments/bartiotest.d.ts +0 -7
- package/dist/types/const/deployments/bartiotest.d.ts.map +0 -1
- package/dist/types/const/deployments/base.d.ts +0 -7
- package/dist/types/const/deployments/base.d.ts.map +0 -1
- package/dist/types/const/deployments/bera.d.ts +0 -7
- package/dist/types/const/deployments/bera.d.ts.map +0 -1
- package/dist/types/const/deployments/berachainbartio.d.ts +0 -7
- package/dist/types/const/deployments/berachainbartio.d.ts.map +0 -1
- package/dist/types/const/deployments/blast.d.ts +0 -7
- package/dist/types/const/deployments/blast.d.ts.map +0 -1
- package/dist/types/const/deployments/bsc.d.ts +0 -7
- package/dist/types/const/deployments/bsc.d.ts.map +0 -1
- package/dist/types/const/deployments/celo.d.ts +0 -7
- package/dist/types/const/deployments/celo.d.ts.map +0 -1
- package/dist/types/const/deployments/core.d.ts +0 -7
- package/dist/types/const/deployments/core.d.ts.map +0 -1
- package/dist/types/const/deployments/eth.d.ts +0 -7
- package/dist/types/const/deployments/eth.d.ts.map +0 -1
- package/dist/types/const/deployments/evmos.d.ts +0 -7
- package/dist/types/const/deployments/evmos.d.ts.map +0 -1
- package/dist/types/const/deployments/fantom.d.ts +0 -7
- package/dist/types/const/deployments/fantom.d.ts.map +0 -1
- package/dist/types/const/deployments/filecoin.d.ts +0 -7
- package/dist/types/const/deployments/filecoin.d.ts.map +0 -1
- package/dist/types/const/deployments/flare.d.ts +0 -7
- package/dist/types/const/deployments/flare.d.ts.map +0 -1
- package/dist/types/const/deployments/goerli.d.ts +0 -7
- package/dist/types/const/deployments/goerli.d.ts.map +0 -1
- package/dist/types/const/deployments/hemi.d.ts +0 -7
- package/dist/types/const/deployments/hemi.d.ts.map +0 -1
- package/dist/types/const/deployments/hyperevm.d.ts +0 -7
- package/dist/types/const/deployments/hyperevm.d.ts.map +0 -1
- package/dist/types/const/deployments/index.d.ts +0 -49
- package/dist/types/const/deployments/index.d.ts.map +0 -1
- package/dist/types/const/deployments/katana.d.ts +0 -7
- package/dist/types/const/deployments/katana.d.ts.map +0 -1
- package/dist/types/const/deployments/kava.d.ts +0 -7
- package/dist/types/const/deployments/kava.d.ts.map +0 -1
- package/dist/types/const/deployments/linea.d.ts +0 -7
- package/dist/types/const/deployments/linea.d.ts.map +0 -1
- package/dist/types/const/deployments/localhost.d.ts +0 -8
- package/dist/types/const/deployments/localhost.d.ts.map +0 -1
- package/dist/types/const/deployments/manta.d.ts +0 -7
- package/dist/types/const/deployments/manta.d.ts.map +0 -1
- package/dist/types/const/deployments/mantle.d.ts +0 -7
- package/dist/types/const/deployments/mantle.d.ts.map +0 -1
- package/dist/types/const/deployments/metis.d.ts +0 -7
- package/dist/types/const/deployments/metis.d.ts.map +0 -1
- package/dist/types/const/deployments/mode.d.ts +0 -7
- package/dist/types/const/deployments/mode.d.ts.map +0 -1
- package/dist/types/const/deployments/moonbeam.d.ts +0 -7
- package/dist/types/const/deployments/moonbeam.d.ts.map +0 -1
- package/dist/types/const/deployments/mumbai.d.ts +0 -7
- package/dist/types/const/deployments/mumbai.d.ts.map +0 -1
- package/dist/types/const/deployments/nibiru.d.ts +0 -7
- package/dist/types/const/deployments/nibiru.d.ts.map +0 -1
- package/dist/types/const/deployments/okxtestnet.d.ts +0 -7
- package/dist/types/const/deployments/okxtestnet.d.ts.map +0 -1
- package/dist/types/const/deployments/optimism.d.ts +0 -7
- package/dist/types/const/deployments/optimism.d.ts.map +0 -1
- package/dist/types/const/deployments/optimismgoerli.d.ts +0 -7
- package/dist/types/const/deployments/optimismgoerli.d.ts.map +0 -1
- package/dist/types/const/deployments/peaq.d.ts +0 -7
- package/dist/types/const/deployments/peaq.d.ts.map +0 -1
- package/dist/types/const/deployments/polygon.d.ts +0 -7
- package/dist/types/const/deployments/polygon.d.ts.map +0 -1
- package/dist/types/const/deployments/polyzkevm.d.ts +0 -7
- package/dist/types/const/deployments/polyzkevm.d.ts.map +0 -1
- package/dist/types/const/deployments/pyzkevm.d.ts +0 -7
- package/dist/types/const/deployments/pyzkevm.d.ts.map +0 -1
- package/dist/types/const/deployments/ronin.d.ts +0 -7
- package/dist/types/const/deployments/ronin.d.ts.map +0 -1
- package/dist/types/const/deployments/rootstock.d.ts +0 -7
- package/dist/types/const/deployments/rootstock.d.ts.map +0 -1
- package/dist/types/const/deployments/saga.d.ts +0 -7
- package/dist/types/const/deployments/saga.d.ts.map +0 -1
- package/dist/types/const/deployments/scroll.d.ts +0 -7
- package/dist/types/const/deployments/scroll.d.ts.map +0 -1
- package/dist/types/const/deployments/sei.d.ts +0 -7
- package/dist/types/const/deployments/sei.d.ts.map +0 -1
- package/dist/types/const/deployments/soneium.d.ts +0 -7
- package/dist/types/const/deployments/soneium.d.ts.map +0 -1
- package/dist/types/const/deployments/sonic.d.ts +0 -7
- package/dist/types/const/deployments/sonic.d.ts.map +0 -1
- package/dist/types/const/deployments/taiko.d.ts +0 -7
- package/dist/types/const/deployments/taiko.d.ts.map +0 -1
- package/dist/types/const/deployments/tataratestnet.d.ts +0 -7
- package/dist/types/const/deployments/tataratestnet.d.ts.map +0 -1
- package/dist/types/const/deployments/telos.d.ts +0 -7
- package/dist/types/const/deployments/telos.d.ts.map +0 -1
- package/dist/types/const/deployments/thundercore.d.ts +0 -7
- package/dist/types/const/deployments/thundercore.d.ts.map +0 -1
- package/dist/types/const/deployments/uni.d.ts +0 -7
- package/dist/types/const/deployments/uni.d.ts.map +0 -1
- package/dist/types/const/deployments/xlayer.d.ts +0 -7
- package/dist/types/const/deployments/xlayer.d.ts.map +0 -1
- package/dist/types/const/deployments/zeta.d.ts +0 -7
- package/dist/types/const/deployments/zeta.d.ts.map +0 -1
- package/dist/types/const/deployments/zircuit.d.ts +0 -7
- package/dist/types/const/deployments/zircuit.d.ts.map +0 -1
- package/dist/types/const/deployments/zklinknova.d.ts +0 -7
- package/dist/types/const/deployments/zklinknova.d.ts.map +0 -1
- package/dist/types/const/index.d.ts +0 -13
- package/dist/types/const/index.d.ts.map +0 -1
- package/dist/types/const/network.d.ts +0 -120
- package/dist/types/const/network.d.ts.map +0 -1
- package/dist/types/const/protocol.d.ts +0 -124
- package/dist/types/const/protocol.d.ts.map +0 -1
- package/dist/types/const/quoter.d.ts +0 -456
- package/dist/types/const/quoter.d.ts.map +0 -1
- package/dist/types/const/stabilityVaults/index.d.ts +0 -2
- package/dist/types/const/stabilityVaults/index.d.ts.map +0 -1
- package/dist/types/const/stabilityVaults/stabilityVaultsConfig.d.ts +0 -25
- package/dist/types/const/stabilityVaults/stabilityVaultsConfig.d.ts.map +0 -1
- package/dist/types/const/subgraph.d.ts +0 -39
- package/dist/types/const/subgraph.d.ts.map +0 -1
- package/dist/types/const/thegraph.d.ts +0 -2
- package/dist/types/const/thegraph.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -78
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/scripts/processDeployments.d.ts +0 -2
- package/dist/types/scripts/processDeployments.d.ts.map +0 -1
- package/dist/types/types.d.ts +0 -219
- package/dist/types/types.d.ts.map +0 -1
- package/dist/types/utils/PoolQueryAdapter.d.ts +0 -114
- package/dist/types/utils/PoolQueryAdapter.d.ts.map +0 -1
- package/dist/types/utils/SubgraphVaultClient.d.ts +0 -35
- package/dist/types/utils/SubgraphVaultClient.d.ts.map +0 -1
- package/dist/types/utils/subgraph-types.d.ts +0 -109
- package/dist/types/utils/subgraph-types.d.ts.map +0 -1
- package/src/__tests__/base/FeeManagerClient.test.ts +0 -706
- package/src/__tests__/base/PoolClient.test.ts +0 -542
- package/src/__tests__/base/SmartRewards.test.ts +0 -465
- package/src/__tests__/base/StakingClient.test.ts +0 -772
- package/src/__tests__/base/SubgraphClient.test.ts +0 -99
- package/src/__tests__/base/VaultClient.protocol-filter.test.ts +0 -179
- package/src/__tests__/base/VaultClient.test.ts +0 -1012
- package/src/__tests__/base/vault/single-asset/calculateLimitPrice.test.ts +0 -324
- package/src/__tests__/base/vault/single-asset/calculateSwapAmount.test.ts +0 -322
- package/src/__tests__/base/vault/single-asset/estimateLpTokens.test.ts +0 -612
- package/src/__tests__/base/vault/single-asset/simulateSwap.test.ts +0 -467
- package/src/__tests__/base/vault/single-asset/singleAssetDepositClient.test.ts +0 -400
- package/src/__tests__/client.test.ts +0 -48
- package/src/__tests__/const/capabilities.test.ts +0 -24
- package/src/base/FeeManagerClient.ts +0 -711
- package/src/base/PoolClient.ts +0 -678
- package/src/base/SmartRewardClient.ts +0 -57
- package/src/base/SmartRewards.ts +0 -783
- package/src/base/StakingClient.ts +0 -917
- package/src/base/SubgraphClient.ts +0 -93
- package/src/base/VaultClient.ts +0 -2127
- package/src/base/vault/deposit/index.ts +0 -705
- package/src/base/vault/deposit/types.ts +0 -49
- package/src/base/vault/single-asset/README.md +0 -541
- package/src/base/vault/single-asset/calculateLimitPrice.ts +0 -279
- package/src/base/vault/single-asset/calculateSwapAmount.ts +0 -74
- package/src/base/vault/single-asset/estimateLpTokens.ts +0 -393
- package/src/base/vault/single-asset/index.ts +0 -85
- package/src/base/vault/single-asset/readmes/API_REFERENCE.md +0 -478
- package/src/base/vault/single-asset/readmes/calculateLimitPrice.md +0 -455
- package/src/base/vault/single-asset/readmes/calculateSwapAmount.md +0 -345
- package/src/base/vault/single-asset/readmes/estimateLpTokens.md +0 -585
- package/src/base/vault/single-asset/readmes/index.md +0 -174
- package/src/base/vault/single-asset/readmes/simulateSwap.md +0 -612
- package/src/base/vault/single-asset/simulateSwap.ts +0 -451
- package/src/base/vault/single-asset/singleAssetDeposit.ts +0 -411
- package/src/base/vault/single-asset/types.ts +0 -186
- package/src/base/vault/utils.ts +0 -633
- package/src/base/vault/withdraw/index.ts +0 -187
- package/src/base/vault/withdraw/types.ts +0 -14
- package/src/client.ts +0 -161
- package/src/const/abis/UniswapPool.ts +0 -1
- package/src/const/abis/erc1155.ts +0 -314
- package/src/const/abis/erc20.ts +0 -224
- package/src/const/abis/erc721.ts +0 -346
- package/src/const/abis/feeManager.ts +0 -672
- package/src/const/abis/index.ts +0 -8
- package/src/const/abis/quoter.ts +0 -1585
- package/src/const/abis/singleTokenDeposit.ts +0 -921
- package/src/const/abis/vaultFees.ts +0 -40
- package/src/const/amm/configs/ammConfig.ts +0 -133
- package/src/const/amm/configs/protocols/aerodrome-v2.ts +0 -18
- package/src/const/amm/configs/protocols/aerodrome.ts +0 -18
- package/src/const/amm/configs/protocols/arthswap.ts +0 -21
- package/src/const/amm/configs/protocols/baseswap.ts +0 -17
- package/src/const/amm/configs/protocols/basex.ts +0 -20
- package/src/const/amm/configs/protocols/beam.ts +0 -16
- package/src/const/amm/configs/protocols/beamswap.ts +0 -17
- package/src/const/amm/configs/protocols/blackhole.ts +0 -22
- package/src/const/amm/configs/protocols/camelot.ts +0 -26
- package/src/const/amm/configs/protocols/crust.ts +0 -16
- package/src/const/amm/configs/protocols/cypher.ts +0 -20
- package/src/const/amm/configs/protocols/dodo.ts +0 -17
- package/src/const/amm/configs/protocols/dragonswap.ts +0 -16
- package/src/const/amm/configs/protocols/eddy.ts +0 -17
- package/src/const/amm/configs/protocols/equilibre.ts +0 -17
- package/src/const/amm/configs/protocols/fenix.ts +0 -17
- package/src/const/amm/configs/protocols/forge.ts +0 -22
- package/src/const/amm/configs/protocols/fusionx.ts +0 -21
- package/src/const/amm/configs/protocols/glyph.ts +0 -22
- package/src/const/amm/configs/protocols/henjin.ts +0 -17
- package/src/const/amm/configs/protocols/hercules.ts +0 -16
- package/src/const/amm/configs/protocols/horiza.ts +0 -23
- package/src/const/amm/configs/protocols/index.ts +0 -40
- package/src/const/amm/configs/protocols/katana.ts +0 -15
- package/src/const/amm/configs/protocols/katanaIntegral.ts +0 -15
- package/src/const/amm/configs/protocols/kim.ts +0 -24
- package/src/const/amm/configs/protocols/kinetix.ts +0 -23
- package/src/const/amm/configs/protocols/kodiak.ts +0 -21
- package/src/const/amm/configs/protocols/kyo.ts +0 -20
- package/src/const/amm/configs/protocols/linehub.ts +0 -17
- package/src/const/amm/configs/protocols/lynex.ts +0 -23
- package/src/const/amm/configs/protocols/machinex.ts +0 -22
- package/src/const/amm/configs/protocols/maia.ts +0 -22
- package/src/const/amm/configs/protocols/metavault.ts +0 -23
- package/src/const/amm/configs/protocols/nest.ts +0 -19
- package/src/const/amm/configs/protocols/novaswap.ts +0 -16
- package/src/const/amm/configs/protocols/ocelex.ts +0 -17
- package/src/const/amm/configs/protocols/pancakeswap.ts +0 -26
- package/src/const/amm/configs/protocols/poolshark.ts +0 -17
- package/src/const/amm/configs/protocols/quickswap-algebra.ts +0 -20
- package/src/const/amm/configs/protocols/quickswap-integral.ts +0 -29
- package/src/const/amm/configs/protocols/quickswap-univ3.ts +0 -29
- package/src/const/amm/configs/protocols/quickswap.ts +0 -29
- package/src/const/amm/configs/protocols/retro.ts +0 -23
- package/src/const/amm/configs/protocols/sailor.ts +0 -16
- package/src/const/amm/configs/protocols/shadow.ts +0 -18
- package/src/const/amm/configs/protocols/silverswap.ts +0 -22
- package/src/const/amm/configs/protocols/spark-integral.ts +0 -19
- package/src/const/amm/configs/protocols/spark.ts +0 -17
- package/src/const/amm/configs/protocols/spark32.ts +0 -17
- package/src/const/amm/configs/protocols/spookyswap.ts +0 -16
- package/src/const/amm/configs/protocols/stellaswap.ts +0 -23
- package/src/const/amm/configs/protocols/supswap.ts +0 -17
- package/src/const/amm/configs/protocols/sushi.ts +0 -86
- package/src/const/amm/configs/protocols/swapmode.ts +0 -17
- package/src/const/amm/configs/protocols/swapsicle.ts +0 -17
- package/src/const/amm/configs/protocols/thena.ts +0 -22
- package/src/const/amm/configs/protocols/thick.ts +0 -19
- package/src/const/amm/configs/protocols/thickv2.ts +0 -17
- package/src/const/amm/configs/protocols/thruster.ts +0 -19
- package/src/const/amm/configs/protocols/uniswap.ts +0 -98
- package/src/const/amm/configs/protocols/uniswapv4.ts +0 -31
- package/src/const/amm/configs/protocols/wasabee.ts +0 -16
- package/src/const/amm/index.ts +0 -3
- package/src/const/amm/utils/beacon.ts +0 -222
- package/src/const/amm/utils/contracts.ts +0 -162
- package/src/const/amm/utils/index.ts +0 -127
- package/src/const/amm/utils/protocol.ts +0 -171
- package/src/const/api.ts +0 -27
- package/src/const/capabilities.ts +0 -115
- package/src/const/chain.ts +0 -249
- package/src/const/deployments/abis.ts +0 -6752
- package/src/const/deployments/apechain.ts +0 -17
- package/src/const/deployments/arbitrum.ts +0 -26
- package/src/const/deployments/arbitrumgoerli.ts +0 -16
- package/src/const/deployments/astar.ts +0 -16
- package/src/const/deployments/astarzkevm.ts +0 -16
- package/src/const/deployments/avalanche.ts +0 -45
- package/src/const/deployments/bartiotest.ts +0 -16
- package/src/const/deployments/base.ts +0 -24
- package/src/const/deployments/bera.ts +0 -16
- package/src/const/deployments/berachainbartio.ts +0 -40
- package/src/const/deployments/blast.ts +0 -16
- package/src/const/deployments/bsc.ts +0 -16
- package/src/const/deployments/celo.ts +0 -16
- package/src/const/deployments/core.ts +0 -16
- package/src/const/deployments/eth.ts +0 -22
- package/src/const/deployments/evmos.ts +0 -16
- package/src/const/deployments/fantom.ts +0 -16
- package/src/const/deployments/filecoin.ts +0 -16
- package/src/const/deployments/flare.ts +0 -16
- package/src/const/deployments/goerli.ts +0 -16
- package/src/const/deployments/hemi.ts +0 -16
- package/src/const/deployments/hyperevm.ts +0 -49
- package/src/const/deployments/index.ts +0 -49
- package/src/const/deployments/katana.ts +0 -48
- package/src/const/deployments/kava.ts +0 -16
- package/src/const/deployments/linea.ts +0 -16
- package/src/const/deployments/localhost.ts +0 -8
- package/src/const/deployments/manta.ts +0 -16
- package/src/const/deployments/mantle.ts +0 -16
- package/src/const/deployments/metis.ts +0 -16
- package/src/const/deployments/mode.ts +0 -16
- package/src/const/deployments/moonbeam.ts +0 -16
- package/src/const/deployments/mumbai.ts +0 -16
- package/src/const/deployments/nibiru.ts +0 -49
- package/src/const/deployments/okxtestnet.ts +0 -16
- package/src/const/deployments/optimism.ts +0 -16
- package/src/const/deployments/optimismgoerli.ts +0 -16
- package/src/const/deployments/peaq.ts +0 -25
- package/src/const/deployments/polygon.ts +0 -25
- package/src/const/deployments/polyzkevm.ts +0 -16
- package/src/const/deployments/pyzkevm.ts +0 -9
- package/src/const/deployments/ronin.ts +0 -17
- package/src/const/deployments/rootstock.ts +0 -16
- package/src/const/deployments/saga.ts +0 -49
- package/src/const/deployments/scroll.ts +0 -16
- package/src/const/deployments/sei.ts +0 -16
- package/src/const/deployments/soneium.ts +0 -16
- package/src/const/deployments/sonic.ts +0 -16
- package/src/const/deployments/taiko.ts +0 -16
- package/src/const/deployments/tataratestnet.ts +0 -16
- package/src/const/deployments/telos.ts +0 -16
- package/src/const/deployments/thundercore.ts +0 -16
- package/src/const/deployments/uni.ts +0 -16
- package/src/const/deployments/xlayer.ts +0 -16
- package/src/const/deployments/zeta.ts +0 -16
- package/src/const/deployments/zircuit.ts +0 -16
- package/src/const/deployments/zklinknova.ts +0 -21
- package/src/const/index.ts +0 -12
- package/src/const/network.ts +0 -635
- package/src/const/protocol.ts +0 -260
- package/src/const/quoter.ts +0 -571
- package/src/const/stabilityVaults/index.ts +0 -2
- package/src/const/stabilityVaults/stabilityVaultsConfig.ts +0 -41
- package/src/const/subgraph.ts +0 -157
- package/src/const/thegraph.ts +0 -3
- package/src/index.ts +0 -78
- package/src/scripts/processDeployments.ts +0 -174
- package/src/types.ts +0 -206
- package/src/utils/PoolQueryAdapter.ts +0 -943
- package/src/utils/SubgraphVaultClient.ts +0 -490
- package/src/utils/subgraph-types.ts +0 -118
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FeeManagerClient.js","sourceRoot":"","sources":["../../../src/base/FeeManagerClient.ts"],"names":[],"mappings":";;;AAAA,+BAMc;AAUd,+DAA8D;AAC9D,6DAA4D;AAC5D,2DAAqD;AAErD,MAAa,gBAAiB,SAAQ,kCAAc;IAKlD,YACE,iBAA0B,EAC1B,YAA0B,EAC1B,YAA0B;QAE1B,KAAK,CAAC,YAA2C,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CAAC,OAAgB;QAC1C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,KAAc;QACjC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBAChD,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,KAAK,CAAC;aACd,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAa;gBACnB,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,KAAc;QACtC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACrD,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,gBAAgB;gBAC9B,IAAI,EAAE,CAAC,KAAK,CAAC;aACd,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,SAAmB;gBACzB,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,KAAc,EACd,aAAqB;QAErB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACtD,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,uBAAuB;gBACrC,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC;aAC7B,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,UAAqB;gBAC3B,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,uBAAuB;QAClC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACjD,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,OAAO;aACtB,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAA,qBAAc,EAAC,KAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,4BAA4B,CACvC,KAAc,EACd,aAAqB;QAErB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;gBACtD,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,uBAAuB;gBACrC,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC;aAC7B,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAA,qBAAc,EAAC,UAAqB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACxD,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,6BAA6B,CACxC,MAA8B;QAE9B,IAAI,CAAC;YACH,IACE,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;gBACxD,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,WAAW,CAAC,MAAM,EAC1D,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,sEAAsE;iBAC9E,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,gCAAgC;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,+BAA+B;gBAC7C,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC;gBACjF,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,oCAAoC,CAC/C,MAAqC;QAErC,IAAI,CAAC;YACH,IACE,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;gBACxD,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,WAAW,CAAC,MAAM,EAC1D,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,sEAAsE;iBAC9E,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,gCAAgC;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,sCAAsC;gBACpD,IAAI,EAAE;oBACJ,MAAM,CAAC,KAAK;oBACZ,MAAM,CAAC,cAAc;oBACrB,MAAM,CAAC,cAAc;oBACrB,MAAM,CAAC,SAAS;oBAChB,MAAM,CAAC,WAAW;iBACnB;gBACD,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,0CAA0C;QACrD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,gCAAgC;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,4CAA4C;gBAC1D,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,KAAc,EAAE,YAAoB;QAC5D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,gCAAgC;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,cAAc;gBAC5B,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;gBAC3B,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAC9B,KAAc,EACd,aAAqB,EACrB,aAAsB;QAEtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,gCAAgC;iBACxC,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,qBAAqB;gBACnC,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,CAAC;gBAC3C,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,MAA2B;QAClD,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,4BAA4B,CACzD,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,aAAa,CACrB,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBACtB,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,qCAAqC;iBAC7C,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,aAAa;gBAC3B,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;gBAC1E,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAC/B,MAAmC;QAEnC,IAAI,CAAC;YACH,IACE,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM;gBACvD,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,EACvD,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,kEAAkE;iBAC1E,CAAC;YACJ,CAAC;YAED,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAClD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBACzF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;gBACjE,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;oBACtB,OAAO;wBACL,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,2CAA2C,aAAa,EAAE;qBAClE,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,sBAAsB;gBACpC,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;gBAC7E,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,8BAA8B,CACzC,MAAqC;QAErC,IAAI,CAAC;YACH,IACE,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,cAAc,CAAC,MAAM;gBACrD,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM;gBAC/C,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,EAC/C,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,0EAA0E;iBAClF,CAAC;YACJ,CAAC;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;gBAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAEnC,IAAI,WAAW,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnF,OAAO;wBACL,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,2EAA2E;qBACnF,CAAC;gBACJ,CAAC;gBAED,KAAK,MAAM,aAAa,IAAI,WAAW,EAAE,CAAC;oBACxC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;oBAClF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;wBACzB,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAC;oBACjE,CAAC;oBACD,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;wBACtB,OAAO;4BACL,IAAI,EAAE,IAAI;4BACV,MAAM,EAAE,GAAG;4BACX,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,2CAA2C,aAAa,EAAE;yBAClE,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;YACxD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACtC,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,iBAAiB;gBAC/B,GAAG,EAAE,+BAAe;gBACpB,YAAY,EAAE,gCAAgC;gBAC9C,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;gBAC9E,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;aACrB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAE5D,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,iBAAiB,CAC5B,KAAc,EACd,aAAqB;QAErB,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC3C,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;oBAC7B,OAAO,EAAE,KAAK;oBACd,GAAG,EAAE,6BAAc;oBACnB,YAAY,EAAE,cAAc;oBAC5B,IAAI,EAAE,CAAC,aAAa,CAAC;iBACtB,CAAC;gBACF,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;oBAC7B,OAAO,EAAE,KAAK;oBACd,GAAG,EAAE,6BAAc;oBACnB,YAAY,EAAE,cAAc;oBAC5B,IAAI,EAAE,CAAC,aAAa,CAAC;iBACtB,CAAC;aACH,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;gBAC1B,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,sBAAsB,CACjC,KAAc;QAEd,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,0CAA0C,CAAC,CAAC;YACpF,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBAClC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;gBACvE,OAAO;oBACL,aAAa,EAAE,GAAG,CAAC,aAAa;oBAChC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE;oBACpC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE;iBACrC,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;YAEF,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAlrBD,4CAkrBC","sourcesContent":["import {\n type Address,\n type Hash,\n type PublicClient,\n type WalletClient,\n isAddressEqual,\n} from 'viem';\nimport type {\n DefaultFeeManagerConfigParams,\n Fee,\n FeeManagerConfigParams,\n FeeWithdrawalParams,\n MultipleFeeWithdrawalParams,\n MultiVaultFeeWithdrawalParams,\n SteerResponse,\n} from '../types.js';\nimport { FEE_MANAGER_ABI } from '../const/abis/feeManager.js';\nimport { VAULT_FEES_ABI } from '../const/abis/vaultFees.js';\nimport { SubgraphClient } from './SubgraphClient.js';\n\nexport class FeeManagerClient extends SubgraphClient {\n protected readonly publicClient: PublicClient;\n protected readonly walletClient: WalletClient;\n protected feeManagerAddress: Address;\n\n public constructor(\n feeManagerAddress: Address,\n publicClient: PublicClient,\n walletClient: WalletClient\n ) {\n super(publicClient as PublicClient & WalletClient);\n this.publicClient = publicClient;\n this.walletClient = walletClient;\n this.feeManagerAddress = feeManagerAddress;\n }\n\n /**\n * Overrides the FeeManager contract address.\n * Useful when deployment addresses are not yet hardcoded or need custom targeting.\n * @param address The new FeeManager contract address\n */\n public setFeeManagerAddress(address: Address): void {\n this.feeManagerAddress = address;\n }\n\n public async getFees(vault: Address): Promise<SteerResponse<Fee[]>> {\n try {\n const fees = await this.publicClient.readContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'getFees',\n args: [vault],\n });\n\n return {\n data: fees as Fee[],\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async getTotalFees(vault: Address): Promise<SteerResponse<bigint>> {\n try {\n const totalFees = await this.publicClient.readContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'vaultTotalFees',\n args: [vault],\n });\n\n return {\n data: totalFees as bigint,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async getWithdrawer(\n vault: Address,\n feeIdentifier: string\n ): Promise<SteerResponse<Address>> {\n try {\n const withdrawer = await this.publicClient.readContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'withdrawalPermissions',\n args: [vault, feeIdentifier],\n });\n\n return {\n data: withdrawer as Address,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async validateAdminPermission(): Promise<SteerResponse<boolean>> {\n try {\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const owner = await this.publicClient.readContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'owner',\n });\n\n return {\n data: isAddressEqual(owner as Address, accounts[0]),\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async validateWithdrawerPermission(\n vault: Address,\n feeIdentifier: string\n ): Promise<SteerResponse<boolean>> {\n try {\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const withdrawer = await this.publicClient.readContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'withdrawalPermissions',\n args: [vault, feeIdentifier],\n });\n\n return {\n data: isAddressEqual(withdrawer as Address, accounts[0]),\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async setFeeAndWithdrawalPermission(\n params: FeeManagerConfigParams\n ): Promise<SteerResponse<Hash>> {\n try {\n if (\n params.feeIdentifiers.length !== params.feeValues.length ||\n params.feeIdentifiers.length !== params.withdrawers.length\n ) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'feeIdentifiers, feeValues, and withdrawers must have the same length',\n };\n }\n\n const isAdmin = await this.validateAdminPermission();\n if (!isAdmin.success) {\n throw new Error(isAdmin.error ?? 'Unknown error occurred');\n }\n if (!isAdmin.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'Caller is not FeeManager owner',\n };\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'setFeeAndWithdrawalPermission',\n args: [params.vault, params.feeIdentifiers, params.feeValues, params.withdrawers],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async setDefaultFeeAndWithdrawalPermission(\n params: DefaultFeeManagerConfigParams\n ): Promise<SteerResponse<Hash>> {\n try {\n if (\n params.feeIdentifiers.length !== params.feeValues.length ||\n params.feeIdentifiers.length !== params.withdrawers.length\n ) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'feeIdentifiers, feeValues, and withdrawers must have the same length',\n };\n }\n\n const isAdmin = await this.validateAdminPermission();\n if (!isAdmin.success) {\n throw new Error(isAdmin.error ?? 'Unknown error occurred');\n }\n if (!isAdmin.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'Caller is not FeeManager owner',\n };\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'setDefaultFeeAndWithdrawalPermission',\n args: [\n params.vault,\n params.totalVaultFees,\n params.feeIdentifiers,\n params.feeValues,\n params.withdrawers,\n ],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async setMigratedVaultFeeAndWithdrawalPermission(): Promise<SteerResponse<Hash>> {\n try {\n const isAdmin = await this.validateAdminPermission();\n if (!isAdmin.success) {\n throw new Error(isAdmin.error ?? 'Unknown error occurred');\n }\n if (!isAdmin.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'Caller is not FeeManager owner',\n };\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'setMigratedVaultFeeAndWithdrawalPermission',\n args: [],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async setTotalFees(vault: Address, newTotalFees: bigint): Promise<SteerResponse<Hash>> {\n try {\n const isAdmin = await this.validateAdminPermission();\n if (!isAdmin.success) {\n throw new Error(isAdmin.error ?? 'Unknown error occurred');\n }\n if (!isAdmin.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'Caller is not FeeManager owner',\n };\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'setTotalFees',\n args: [vault, newTotalFees],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async changeFeeWithdrawer(\n vault: Address,\n feeIdentifier: string,\n newWithdrawer: Address\n ): Promise<SteerResponse<Hash>> {\n try {\n const isAdmin = await this.validateAdminPermission();\n if (!isAdmin.success) {\n throw new Error(isAdmin.error ?? 'Unknown error occurred');\n }\n if (!isAdmin.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'Caller is not FeeManager owner',\n };\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'changeFeeWithdrawer',\n args: [vault, feeIdentifier, newWithdrawer],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async withdrawFee(params: FeeWithdrawalParams): Promise<SteerResponse<Hash>> {\n try {\n const canWithdraw = await this.validateWithdrawerPermission(\n params.vault,\n params.feeIdentifier\n );\n if (!canWithdraw.success) {\n throw new Error(canWithdraw.error ?? 'Unknown error occurred');\n }\n if (!canWithdraw.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'Caller is not authorized withdrawer',\n };\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'withdrawFee',\n args: [params.vault, params.feeIdentifier, params.amount0, params.amount1],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async withdrawMultipleFees(\n params: MultipleFeeWithdrawalParams\n ): Promise<SteerResponse<Hash>> {\n try {\n if (\n params.feeIdentifiers.length !== params.amounts0.length ||\n params.feeIdentifiers.length !== params.amounts1.length\n ) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'feeIdentifiers, amounts0, and amounts1 must have the same length',\n };\n }\n\n for (const feeIdentifier of params.feeIdentifiers) {\n const canWithdraw = await this.validateWithdrawerPermission(params.vault, feeIdentifier);\n if (!canWithdraw.success) {\n throw new Error(canWithdraw.error ?? 'Unknown error occurred');\n }\n if (!canWithdraw.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: `Caller is not authorized withdrawer for ${feeIdentifier}`,\n };\n }\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'withdrawMultipleFees',\n args: [params.vault, params.feeIdentifiers, params.amounts0, params.amounts1],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n public async withdrawFeesFromMultipleVaults(\n params: MultiVaultFeeWithdrawalParams\n ): Promise<SteerResponse<Hash>> {\n try {\n if (\n params.vaults.length !== params.feeIdentifiers.length ||\n params.vaults.length !== params.amounts0.length ||\n params.vaults.length !== params.amounts1.length\n ) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'vaults, feeIdentifiers, amounts0, and amounts1 must have the same length',\n };\n }\n\n for (let i = 0; i < params.vaults.length; i++) {\n const vault = params.vaults[i];\n const identifiers = params.feeIdentifiers[i];\n const amount0 = params.amounts0[i];\n const amount1 = params.amounts1[i];\n\n if (identifiers.length !== amount0.length || identifiers.length !== amount1.length) {\n return {\n data: null,\n status: 400,\n success: false,\n error: 'feeIdentifiers[i], amounts0[i], and amounts1[i] must have the same length',\n };\n }\n\n for (const feeIdentifier of identifiers) {\n const canWithdraw = await this.validateWithdrawerPermission(vault, feeIdentifier);\n if (!canWithdraw.success) {\n throw new Error(canWithdraw.error ?? 'Unknown error occurred');\n }\n if (!canWithdraw.data) {\n return {\n data: null,\n status: 400,\n success: false,\n error: `Caller is not authorized withdrawer for ${feeIdentifier}`,\n };\n }\n }\n }\n\n const accounts = await this.walletClient.getAddresses();\n if (!accounts[0]) {\n throw new Error('No account found');\n }\n\n const { request } = await this.publicClient.simulateContract({\n address: this.feeManagerAddress,\n abi: FEE_MANAGER_ABI,\n functionName: 'withdrawFeesFromMultipleVaults',\n args: [params.vaults, params.feeIdentifiers, params.amounts0, params.amounts1],\n account: accounts[0],\n });\n\n const hash = await this.walletClient.writeContract(request);\n\n return {\n data: hash,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Gets the accrued revenue for a specific fee identifier in a vault\n * @param vault The vault address\n * @param feeIdentifier The fee identifier (e.g., 'STEER_FEES', 'STRATEGIST_FEES')\n * @returns Promise resolving to the accrued amounts for token0 and token1\n */\n public async getAccruedRevenue(\n vault: Address,\n feeIdentifier: string\n ): Promise<SteerResponse<{ amount0: bigint; amount1: bigint }>> {\n try {\n const [amount0, amount1] = await Promise.all([\n this.publicClient.readContract({\n address: vault,\n abi: VAULT_FEES_ABI,\n functionName: 'accruedFees0',\n args: [feeIdentifier],\n }),\n this.publicClient.readContract({\n address: vault,\n abi: VAULT_FEES_ABI,\n functionName: 'accruedFees1',\n args: [feeIdentifier],\n }),\n ]);\n\n return {\n data: { amount0, amount1 },\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Gets a summary of accrued revenue for all configured fee identifiers in a vault\n * @param vault The vault address\n * @returns Promise resolving to a list of fee identifiers and their accrued amounts\n */\n public async getVaultRevenueSummary(\n vault: Address\n ): Promise<SteerResponse<{ feeIdentifier: string; amount0: bigint; amount1: bigint }[]>> {\n try {\n const feesResponse = await this.getFees(vault);\n if (!feesResponse.success || !feesResponse.data) {\n throw new Error(feesResponse.error || 'Failed to fetch vault fees configuration');\n }\n\n const summary = await Promise.all(\n feesResponse.data.map(async (fee) => {\n const revenue = await this.getAccruedRevenue(vault, fee.feeIdentifier);\n return {\n feeIdentifier: fee.feeIdentifier,\n amount0: revenue.data?.amount0 ?? 0n,\n amount1: revenue.data?.amount1 ?? 0n,\n };\n })\n );\n\n return {\n data: summary,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n}\n"]}
|
|
@@ -1,455 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PoolClient = void 0;
|
|
4
|
-
const SubgraphClient_js_1 = require("./SubgraphClient.js");
|
|
5
|
-
const index_js_1 = require("../const/index.js");
|
|
6
|
-
const protocol_js_1 = require("../const/protocol.js");
|
|
7
|
-
const PoolQueryAdapter_js_1 = require("../utils/PoolQueryAdapter.js");
|
|
8
|
-
/**
|
|
9
|
-
* Client for fetching pool data from various DEX protocol subgraphs
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```typescript
|
|
13
|
-
* import { createPublicClient, createWalletClient, http } from 'viem';
|
|
14
|
-
* import { mainnet } from 'viem/chains';
|
|
15
|
-
* import { PoolClient } from '@steerprotocol/sdk';
|
|
16
|
-
*
|
|
17
|
-
* const client = createPublicClient({
|
|
18
|
-
* chain: mainnet,
|
|
19
|
-
* transport: http()
|
|
20
|
-
* }) as PublicClient & WalletClient;
|
|
21
|
-
*
|
|
22
|
-
* const poolClient = new PoolClient(client, 'your-subgraph-studio-key');
|
|
23
|
-
*
|
|
24
|
-
* // Fetch top pools
|
|
25
|
-
* const topPools = await poolClient.getTopPools(100, Protocol.UniswapV3, 1);
|
|
26
|
-
* ```
|
|
27
|
-
*
|
|
28
|
-
* @extends SubgraphClient
|
|
29
|
-
* @group Pool
|
|
30
|
-
*/
|
|
31
|
-
class PoolClient extends SubgraphClient_js_1.SubgraphClient {
|
|
32
|
-
/**
|
|
33
|
-
* Creates a new PoolClient instance
|
|
34
|
-
*
|
|
35
|
-
* @param client - Combined public and wallet client for blockchain interactions
|
|
36
|
-
* @param subgraphStudioKey - Optional Subgraph Studio API key for higher rate limits
|
|
37
|
-
*
|
|
38
|
-
* @example
|
|
39
|
-
* ```typescript
|
|
40
|
-
* const poolClient = new PoolClient(client, 'your-api-key');
|
|
41
|
-
* ```
|
|
42
|
-
*/
|
|
43
|
-
constructor(client, subgraphStudioKey = '') {
|
|
44
|
-
super(client);
|
|
45
|
-
/** Default timeout for GraphQL queries in milliseconds */
|
|
46
|
-
this.defaultTimeout = 60000;
|
|
47
|
-
/** Counter for tracking API call metrics */
|
|
48
|
-
this.apiCallCount = 0;
|
|
49
|
-
this.publicClient = client;
|
|
50
|
-
this.subgraphStudioKey = subgraphStudioKey;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Resets the API call counter for metrics tracking
|
|
54
|
-
*
|
|
55
|
-
* @example
|
|
56
|
-
* ```typescript
|
|
57
|
-
* poolClient.resetMetrics();
|
|
58
|
-
* ```
|
|
59
|
-
*/
|
|
60
|
-
resetMetrics() {
|
|
61
|
-
this.apiCallCount = 0;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Gets current metrics for monitoring API usage
|
|
65
|
-
*
|
|
66
|
-
* @returns Object containing current metrics
|
|
67
|
-
*
|
|
68
|
-
* @example
|
|
69
|
-
* ```typescript
|
|
70
|
-
* const metrics = poolClient.getMetrics();
|
|
71
|
-
* console.log(`API calls made: ${metrics.apiCallCount}`);
|
|
72
|
-
* ```
|
|
73
|
-
*/
|
|
74
|
-
getMetrics() {
|
|
75
|
-
return {
|
|
76
|
-
apiCallCount: this.apiCallCount,
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Fetches data from GraphQL endpoint with retry logic for rate limits
|
|
81
|
-
*
|
|
82
|
-
* @param query - GraphQL query string
|
|
83
|
-
* @param variables - Variables for the GraphQL query
|
|
84
|
-
* @param protocol - Protocol to query
|
|
85
|
-
* @param chainId - Chain ID to query
|
|
86
|
-
* @returns Promise containing the response data
|
|
87
|
-
*
|
|
88
|
-
* @throws {Error} When subgraph endpoint is not available
|
|
89
|
-
* @throws {Error} When rate limit is exceeded after max retries
|
|
90
|
-
* @throws {Error} When GraphQL query times out
|
|
91
|
-
*
|
|
92
|
-
* @internal
|
|
93
|
-
*/
|
|
94
|
-
async fetchFromGraph(query, variables, protocol, chainId) {
|
|
95
|
-
try {
|
|
96
|
-
const chainName = (0, index_js_1.chainIdToName)(chainId);
|
|
97
|
-
const endpoint = (0, index_js_1.getProtocolSubgraphURL)(protocol, chainName, this.subgraphStudioKey);
|
|
98
|
-
if (!endpoint) {
|
|
99
|
-
throw new Error(`No subgraph endpoint available for protocol ${protocol} on chain ${chainName}`);
|
|
100
|
-
}
|
|
101
|
-
const MAX_RETRIES = 3;
|
|
102
|
-
const RETRY_DELAY_MS = 11000;
|
|
103
|
-
const fetchWithRetry = async (retries = 0) => {
|
|
104
|
-
const response = await fetch(endpoint, {
|
|
105
|
-
method: "POST",
|
|
106
|
-
headers: {
|
|
107
|
-
"Content-Type": "application/json",
|
|
108
|
-
},
|
|
109
|
-
body: JSON.stringify({ query, variables }),
|
|
110
|
-
});
|
|
111
|
-
const data = await response.json();
|
|
112
|
-
if (data.error && typeof data.error === "string" && data.error.includes("surpassed your query allowance")) {
|
|
113
|
-
if (retries < MAX_RETRIES) {
|
|
114
|
-
console.warn(`Rate limit hit for ${endpoint}, retrying in ${RETRY_DELAY_MS / 1000}s (attempt ${retries + 1})`);
|
|
115
|
-
await new Promise(res => setTimeout(res, RETRY_DELAY_MS));
|
|
116
|
-
return fetchWithRetry(retries + 1);
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
throw new Error(`Rate limit exceeded after ${MAX_RETRIES} retries: ${data.error}`);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
if (data.error) {
|
|
123
|
-
throw new Error(`GraphQL endpoint error: ${data.error}`);
|
|
124
|
-
}
|
|
125
|
-
if (data.errors) {
|
|
126
|
-
throw new Error(`GraphQL errors: ${JSON.stringify(data.errors)}`);
|
|
127
|
-
}
|
|
128
|
-
return data.data;
|
|
129
|
-
};
|
|
130
|
-
this.apiCallCount++;
|
|
131
|
-
console.log("Total API calls:", this.apiCallCount);
|
|
132
|
-
const timeoutPromise = new Promise((_, reject) => {
|
|
133
|
-
setTimeout(() => reject(new Error("GraphQL query timeout")), this.defaultTimeout);
|
|
134
|
-
});
|
|
135
|
-
const data = await Promise.race([fetchWithRetry(), timeoutPromise]);
|
|
136
|
-
return {
|
|
137
|
-
data: data,
|
|
138
|
-
status: 200,
|
|
139
|
-
success: true,
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
catch (error) {
|
|
143
|
-
return {
|
|
144
|
-
data: null,
|
|
145
|
-
status: 500,
|
|
146
|
-
success: false,
|
|
147
|
-
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Fetches the top pools for a specific protocol by trading volume
|
|
153
|
-
*
|
|
154
|
-
* @param count - Number of pools to fetch (default: 500)
|
|
155
|
-
* @param protocol - Protocol to fetch pools from
|
|
156
|
-
* @param chainId - Chain ID to fetch pools from
|
|
157
|
-
* @returns Promise containing an array of top pools
|
|
158
|
-
*
|
|
159
|
-
* @example
|
|
160
|
-
* ```typescript
|
|
161
|
-
* // Get top 100 Uniswap V3 pools on Ethereum
|
|
162
|
-
* const topPools = await poolClient.getTopPools(100, Protocol.UniswapV3, 1);
|
|
163
|
-
* if (topPools.success) {
|
|
164
|
-
* console.log(`Found ${topPools.data.length} pools`);
|
|
165
|
-
* }
|
|
166
|
-
* ```
|
|
167
|
-
*
|
|
168
|
-
* @throws {Error} When failed to fetch pools from subgraph
|
|
169
|
-
*/
|
|
170
|
-
async getTopPools(count = 500, protocol, chainId) {
|
|
171
|
-
try {
|
|
172
|
-
const isAlgebraPool = (0, protocol_js_1.isAlgebraProtocol)(protocol);
|
|
173
|
-
const query = (0, PoolQueryAdapter_js_1.getTopPoolsQuery)(protocol, isAlgebraPool);
|
|
174
|
-
console.log(`[Chain ${chainId}] [Protocol ${protocol}] š Fetching top ${count} pools from the subgraph...`);
|
|
175
|
-
const response = await this.fetchFromGraph(query, { limit: count }, protocol, chainId);
|
|
176
|
-
if (!response.success || !response.data) {
|
|
177
|
-
throw new Error(response.error || 'Failed to fetch pools');
|
|
178
|
-
}
|
|
179
|
-
const pools = response.data.pools || response.data.limitPools || response.data.clPools || [];
|
|
180
|
-
console.log(`[Chain ${chainId}] [Protocol ${protocol}] ā
Received ${pools.length} pools from the subgraph`);
|
|
181
|
-
// Filter out pools with invalid volumeUSD
|
|
182
|
-
const validPools = pools.filter(pool => {
|
|
183
|
-
const volumeUSD = parseFloat(pool.volumeUSD || pool.volumeUsd || "0");
|
|
184
|
-
return !isNaN(volumeUSD) && volumeUSD > 0;
|
|
185
|
-
});
|
|
186
|
-
console.log(`[Chain ${chainId}] [Protocol ${protocol}] ā
Found ${validPools.length} valid pools with positive volumeUSD`);
|
|
187
|
-
return {
|
|
188
|
-
data: validPools,
|
|
189
|
-
status: 200,
|
|
190
|
-
success: true,
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
catch (error) {
|
|
194
|
-
console.error(`[Chain ${chainId}] [Protocol ${protocol}] Error in getTopPools:`, error);
|
|
195
|
-
return {
|
|
196
|
-
data: null,
|
|
197
|
-
status: 500,
|
|
198
|
-
success: false,
|
|
199
|
-
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Fetches detailed information for a specific pool by its ID
|
|
205
|
-
*
|
|
206
|
-
* @param poolId - Pool contract address to fetch
|
|
207
|
-
* @param protocol - Protocol the pool belongs to
|
|
208
|
-
* @param chainId - Chain ID where the pool exists
|
|
209
|
-
* @returns Promise containing pool details or null if not found
|
|
210
|
-
*
|
|
211
|
-
* @example
|
|
212
|
-
* ```typescript
|
|
213
|
-
* // Get specific pool details
|
|
214
|
-
* const poolDetails = await poolClient.getPoolById(
|
|
215
|
-
* '0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640',
|
|
216
|
-
* Protocol.UniswapV3,
|
|
217
|
-
* 1
|
|
218
|
-
* );
|
|
219
|
-
* if (poolDetails.success && poolDetails.data) {
|
|
220
|
-
* console.log(`Pool: ${poolDetails.data.token0.symbol}/${poolDetails.data.token1.symbol}`);
|
|
221
|
-
* }
|
|
222
|
-
* ```
|
|
223
|
-
*
|
|
224
|
-
* @throws {Error} When failed to fetch pool from subgraph
|
|
225
|
-
*/
|
|
226
|
-
async getPoolById(poolId, protocol, chainId) {
|
|
227
|
-
try {
|
|
228
|
-
const isAlgebraPool = (0, protocol_js_1.isAlgebraProtocol)(protocol);
|
|
229
|
-
const query = (0, PoolQueryAdapter_js_1.getPoolDetailsQuery)(isAlgebraPool, protocol);
|
|
230
|
-
const response = await this.fetchFromGraph(query, { pool: poolId }, protocol, chainId);
|
|
231
|
-
if (!response.success || !response.data) {
|
|
232
|
-
throw new Error(response.error || 'Failed to fetch pool');
|
|
233
|
-
}
|
|
234
|
-
const pool = response.data.pool || response.data.clPool || response.data.limitPool || null;
|
|
235
|
-
return {
|
|
236
|
-
data: pool,
|
|
237
|
-
status: 200,
|
|
238
|
-
success: true,
|
|
239
|
-
};
|
|
240
|
-
}
|
|
241
|
-
catch (error) {
|
|
242
|
-
console.error(`Error fetching pool ${poolId}:`, error);
|
|
243
|
-
return {
|
|
244
|
-
data: null,
|
|
245
|
-
status: 500,
|
|
246
|
-
success: false,
|
|
247
|
-
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
248
|
-
};
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
/**
|
|
252
|
-
* Fetches pools containing multiple tokens in batches for better performance
|
|
253
|
-
*
|
|
254
|
-
* @param tokenAddresses - Array of token contract addresses
|
|
255
|
-
* @param protocol - Protocol to fetch pools from
|
|
256
|
-
* @param chainId - Chain ID to fetch pools from
|
|
257
|
-
* @param batchSize - Number of tokens to process in each batch (default: 10)
|
|
258
|
-
* @returns Promise containing all pools found for the tokens
|
|
259
|
-
*
|
|
260
|
-
* @example
|
|
261
|
-
* ```typescript
|
|
262
|
-
* // Get pools for multiple tokens
|
|
263
|
-
* const tokenAddresses = [
|
|
264
|
-
* '0xa0b86a33e6f8b07b71c3a39ef77a6b6e8f1b7b7e', // USDC
|
|
265
|
-
* '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' // WETH
|
|
266
|
-
* ];
|
|
267
|
-
* const pools = await poolClient.fetchPoolsForTokensBatch(
|
|
268
|
-
* tokenAddresses,
|
|
269
|
-
* Protocol.UniswapV3,
|
|
270
|
-
* 1,
|
|
271
|
-
* 5
|
|
272
|
-
* );
|
|
273
|
-
* ```
|
|
274
|
-
*
|
|
275
|
-
* @throws {Error} When batch processing fails
|
|
276
|
-
*/
|
|
277
|
-
async fetchPoolsForTokensBatch(tokenAddresses, protocol, chainId, batchSize = 10) {
|
|
278
|
-
try {
|
|
279
|
-
if (tokenAddresses.length === 0) {
|
|
280
|
-
return {
|
|
281
|
-
data: [],
|
|
282
|
-
status: 200,
|
|
283
|
-
success: true,
|
|
284
|
-
};
|
|
285
|
-
}
|
|
286
|
-
console.log(`\nš Batch Pool Fetch Summary:`);
|
|
287
|
-
console.log(`š„ Total tokens to process: ${tokenAddresses.length}`);
|
|
288
|
-
const isAlgebraPool = (0, protocol_js_1.isAlgebraProtocol)(protocol);
|
|
289
|
-
const normalizedAddresses = tokenAddresses.map(addr => addr.toLowerCase());
|
|
290
|
-
// Split into chunks
|
|
291
|
-
const chunkSize = batchSize;
|
|
292
|
-
const addressChunks = [];
|
|
293
|
-
for (let i = 0; i < normalizedAddresses.length; i += chunkSize) {
|
|
294
|
-
addressChunks.push(normalizedAddresses.slice(i, i + chunkSize));
|
|
295
|
-
}
|
|
296
|
-
console.log(`š¦ Processing ${addressChunks.length} chunks of max ${chunkSize} tokens each`);
|
|
297
|
-
const allPools = [];
|
|
298
|
-
// Process chunks in parallel
|
|
299
|
-
const results = await Promise.all(addressChunks.map(async (chunk, chunkIndex) => {
|
|
300
|
-
console.log(`\nš Processing chunk ${chunkIndex + 1}/${addressChunks.length} with ${chunk.length} tokens`);
|
|
301
|
-
const chunkResults = await Promise.all(chunk.map(async (token) => {
|
|
302
|
-
try {
|
|
303
|
-
const query = (0, PoolQueryAdapter_js_1.getTokenPoolsQueryByAddress)(isAlgebraPool, protocol);
|
|
304
|
-
const queryStartTime = performance.now();
|
|
305
|
-
const response = await this.fetchFromGraph(query, { token }, protocol, chainId);
|
|
306
|
-
const queryTime = performance.now() - queryStartTime;
|
|
307
|
-
console.log(`ā±ļø GraphQL query for token ${token.slice(0, 6)}... completed in ${queryTime.toFixed(2)}ms`);
|
|
308
|
-
if (!response.success || !response.data) {
|
|
309
|
-
console.error(`ā No pools found for token: ${token} on chainId: ${chainId}`);
|
|
310
|
-
return [];
|
|
311
|
-
}
|
|
312
|
-
// Extract pools from different possible response structures
|
|
313
|
-
let pools = [];
|
|
314
|
-
if (response.data.pools) {
|
|
315
|
-
pools = response.data.pools;
|
|
316
|
-
}
|
|
317
|
-
else if (response.data.clPools) {
|
|
318
|
-
pools = response.data.clPools;
|
|
319
|
-
}
|
|
320
|
-
else if (response.data.limitPools) {
|
|
321
|
-
pools = response.data.limitPools;
|
|
322
|
-
}
|
|
323
|
-
else if (response.data.tokenPools) {
|
|
324
|
-
pools = response.data.tokenPools;
|
|
325
|
-
}
|
|
326
|
-
if (pools.length === 0) {
|
|
327
|
-
console.error(`ā No pools found for token: ${token} on chainId: ${chainId}`);
|
|
328
|
-
return [];
|
|
329
|
-
}
|
|
330
|
-
return pools;
|
|
331
|
-
}
|
|
332
|
-
catch (error) {
|
|
333
|
-
console.error(`ā Error fetching pools for token: ${token} on chainId: ${chainId}`, error);
|
|
334
|
-
return [];
|
|
335
|
-
}
|
|
336
|
-
}));
|
|
337
|
-
return chunkResults.flat();
|
|
338
|
-
}));
|
|
339
|
-
// Flatten all results
|
|
340
|
-
allPools.push(...results.flat());
|
|
341
|
-
return {
|
|
342
|
-
data: allPools,
|
|
343
|
-
status: 200,
|
|
344
|
-
success: true,
|
|
345
|
-
};
|
|
346
|
-
}
|
|
347
|
-
catch (error) {
|
|
348
|
-
console.error("Error in fetchPoolsForTokensBatch:", error);
|
|
349
|
-
return {
|
|
350
|
-
data: null,
|
|
351
|
-
status: 500,
|
|
352
|
-
success: false,
|
|
353
|
-
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
354
|
-
};
|
|
355
|
-
}
|
|
356
|
-
}
|
|
357
|
-
/**
|
|
358
|
-
* Fetches all pools containing a specific token
|
|
359
|
-
*
|
|
360
|
-
* @param tokenAddress - Token contract address
|
|
361
|
-
* @param protocol - Protocol to fetch pools from
|
|
362
|
-
* @param chainId - Chain ID to fetch pools from
|
|
363
|
-
* @returns Promise containing pools that include the specified token
|
|
364
|
-
*
|
|
365
|
-
* @example
|
|
366
|
-
* ```typescript
|
|
367
|
-
* // Get all USDC pools on Uniswap V3
|
|
368
|
-
* const usdcPools = await poolClient.fetchPoolsForToken(
|
|
369
|
-
* '0xa0b86a33e6f8b07b71c3a39ef77a6b6e8f1b7b7e',
|
|
370
|
-
* Protocol.UniswapV3,
|
|
371
|
-
* 1
|
|
372
|
-
* );
|
|
373
|
-
* if (usdcPools.success) {
|
|
374
|
-
* console.log(`Found ${usdcPools.data.length} USDC pools`);
|
|
375
|
-
* }
|
|
376
|
-
* ```
|
|
377
|
-
*
|
|
378
|
-
* @throws {Error} When failed to fetch pools for token
|
|
379
|
-
*/
|
|
380
|
-
async fetchPoolsForToken(tokenAddress, protocol, chainId) {
|
|
381
|
-
try {
|
|
382
|
-
const isAlgebraPool = (0, protocol_js_1.isAlgebraProtocol)(protocol);
|
|
383
|
-
const query = (0, PoolQueryAdapter_js_1.getTokenPoolsQueryByAddress)(isAlgebraPool, protocol);
|
|
384
|
-
const response = await this.fetchFromGraph(query, { token: tokenAddress.toLowerCase() }, protocol, chainId);
|
|
385
|
-
if (!response.success || !response.data) {
|
|
386
|
-
throw new Error(response.error || 'Failed to fetch pools for token');
|
|
387
|
-
}
|
|
388
|
-
// Extract pools from different possible response structures
|
|
389
|
-
let pools = [];
|
|
390
|
-
if (response.data.pools) {
|
|
391
|
-
pools = response.data.pools;
|
|
392
|
-
}
|
|
393
|
-
else if (response.data.limitPools) {
|
|
394
|
-
pools = response.data.limitPools;
|
|
395
|
-
}
|
|
396
|
-
else if (response.data.tokenPools) {
|
|
397
|
-
pools = response.data.tokenPools;
|
|
398
|
-
}
|
|
399
|
-
else if (response.data.clPools) {
|
|
400
|
-
pools = response.data.clPools;
|
|
401
|
-
}
|
|
402
|
-
return {
|
|
403
|
-
data: pools,
|
|
404
|
-
status: 200,
|
|
405
|
-
success: true,
|
|
406
|
-
};
|
|
407
|
-
}
|
|
408
|
-
catch (error) {
|
|
409
|
-
console.error(`Error fetching pools for token ${tokenAddress}:`, error);
|
|
410
|
-
return {
|
|
411
|
-
data: null,
|
|
412
|
-
status: 500,
|
|
413
|
-
success: false,
|
|
414
|
-
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
415
|
-
};
|
|
416
|
-
}
|
|
417
|
-
}
|
|
418
|
-
/**
|
|
419
|
-
* Filters pools based on validity criteria such as tick range and liquidity
|
|
420
|
-
*
|
|
421
|
-
* @param pools - Array of pools to filter
|
|
422
|
-
* @returns Array of valid pools that meet the criteria
|
|
423
|
-
*
|
|
424
|
-
* @example
|
|
425
|
-
* ```typescript
|
|
426
|
-
* const validPools = poolClient.filterValidPools(allPools);
|
|
427
|
-
* console.log(`Filtered down to ${validPools.length} valid pools`);
|
|
428
|
-
* ```
|
|
429
|
-
*/
|
|
430
|
-
filterValidPools(pools) {
|
|
431
|
-
return pools.filter(pool => {
|
|
432
|
-
// Check for required fields
|
|
433
|
-
if (!pool.id || !pool.tick || !pool.liquidity) {
|
|
434
|
-
return false;
|
|
435
|
-
}
|
|
436
|
-
// Parse values
|
|
437
|
-
const tick = parseInt(pool.tick);
|
|
438
|
-
const liquidity = parseFloat(pool.liquidity);
|
|
439
|
-
// Check for valid tick range and liquidity
|
|
440
|
-
const TICK_MIN = -887272;
|
|
441
|
-
const TICK_MAX = 887272;
|
|
442
|
-
const TICK_EDGE_THRESHOLD = 1;
|
|
443
|
-
if (isNaN(tick) ||
|
|
444
|
-
isNaN(liquidity) ||
|
|
445
|
-
liquidity <= 0 ||
|
|
446
|
-
tick <= TICK_MIN + TICK_EDGE_THRESHOLD ||
|
|
447
|
-
tick >= TICK_MAX - TICK_EDGE_THRESHOLD) {
|
|
448
|
-
return false;
|
|
449
|
-
}
|
|
450
|
-
return true;
|
|
451
|
-
});
|
|
452
|
-
}
|
|
453
|
-
}
|
|
454
|
-
exports.PoolClient = PoolClient;
|
|
455
|
-
//# sourceMappingURL=PoolClient.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PoolClient.js","sourceRoot":"","sources":["../../../src/base/PoolClient.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PublicClient, WalletClient } from 'viem';\nimport { PoolData, SteerResponse } from '../types.js';\nimport { SubgraphClient } from './SubgraphClient.js';\nimport { \n Protocol, \n Chain\n} from '../const/chain.js';\nimport { \n chainIdToName, \n getProtocolSubgraphURL\n} from '../const/index.js';\nimport { isAlgebraProtocol } from '../const/protocol.js';\nimport { getTopPoolsQuery, getTokenPoolsQueryByAddress, getPoolDetailsQuery } from '../utils/PoolQueryAdapter.js';\n\n/**\n * GraphQL token data interface representing token information from subgraph responses\n * @interface GraphQLTokenData\n */\nexport interface GraphQLTokenData {\n /** Token symbol (e.g., \"ETH\", \"USDC\") */\n symbol: string;\n /** Token contract address */\n id: string;\n /** Number of decimal places for the token */\n decimals: string;\n /** Human-readable token name */\n name: string;\n}\n\n/**\n * GraphQL pool data interface representing pool information from subgraph responses\n * @interface GraphQLPoolData\n */\nexport interface GraphQLPoolData {\n /** Pool contract address */\n id: string;\n /** First token in the pool */\n token0: GraphQLTokenData;\n /** Second token in the pool */\n token1: GraphQLTokenData;\n /** 24-hour trading volume in USD */\n volumeUSD: string;\n /** Current tick of the pool */\n tick: string;\n /** Total liquidity in the pool */\n liquidity: string;\n /** Fee tier for the pool (optional) */\n feeTier?: string;\n /** 24-hour volume of token0 (optional) */\n volumeToken0?: string;\n /** 24-hour volume of token1 (optional) */\n volumeToken1?: string;\n /** Total value locked in ETH (optional) */\n totalValueLockedETH?: string;\n /** Alternative field name for volume USD (optional) */\n volumeUsd?: string;\n /** Alternative field name for TVL in ETH (optional) */\n totalValueLockedEth?: string;\n}\n\n/**\n * Filter criteria for querying pools\n * @interface PoolFilter\n */\nexport interface PoolFilter {\n /** Chain ID to filter pools by */\n chainId?: number;\n /** Protocol to filter pools by */\n protocol?: Protocol;\n /** Minimum volume in USD to filter pools */\n minVolumeUSD?: number;\n /** Token address to find pools containing this token */\n tokenAddress?: string;\n /** Maximum number of pools to return */\n limit?: number;\n}\n\n// GraphQL response interfaces (currently unused but kept for future use)\n// interface GraphQLResponse<T> {\n// data: T;\n// errors?: Array<{ message: string }>;\n// }\n\n/**\n * Response interface for top pools query\n * @interface TopPoolsResponse\n * @internal\n */\ninterface TopPoolsResponse {\n /** Standard pools array */\n pools: GraphQLPoolData[];\n /** Limit pools array (used by some protocols) */\n limitPools?: GraphQLPoolData[];\n /** CL pools array (used by some protocols) */\n clPools?: GraphQLPoolData[];\n}\n\n/**\n * Response interface for pool details query\n * @interface PoolDetailsResponse\n * @internal\n */\ninterface PoolDetailsResponse {\n /** Single pool data */\n pool: GraphQLPoolData;\n /** Single limit pool data (used by some protocols) */\n limitPool?: GraphQLPoolData;\n /** Single CL pool data (used by some protocols) */\n clPool?: GraphQLPoolData;\n}\n\n/**\n * Response interface for pools by token query\n * @interface PoolsByTokenResponse\n * @internal\n */\ninterface PoolsByTokenResponse {\n /** Standard pools array */\n pools?: GraphQLPoolData[];\n /** Limit pools array (used by some protocols) */\n limitPools?: GraphQLPoolData[];\n /** Token pools array (used by some protocols) */\n tokenPools?: GraphQLPoolData[];\n /** CL pools array (used by some protocols) */\n clPools?: GraphQLPoolData[];\n}\n\n/**\n * Client for fetching pool data from various DEX protocol subgraphs\n * \n * @example\n * ```typescript\n * import { createPublicClient, createWalletClient, http } from 'viem';\n * import { mainnet } from 'viem/chains';\n * import { PoolClient } from '@steerprotocol/sdk';\n * \n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http()\n * }) as PublicClient & WalletClient;\n * \n * const poolClient = new PoolClient(client, 'your-subgraph-studio-key');\n * \n * // Fetch top pools\n * const topPools = await poolClient.getTopPools(100, Protocol.UniswapV3, 1);\n * ```\n * \n * @extends SubgraphClient\n * @group Pool\n */\nexport class PoolClient extends SubgraphClient {\n /** Public client for blockchain interactions */\n protected readonly publicClient: PublicClient;\n /** Default timeout for GraphQL queries in milliseconds */\n private readonly defaultTimeout: number = 60000;\n /** Counter for tracking API call metrics */\n private apiCallCount: number = 0;\n /** Subgraph Studio API key for rate limiting */\n private readonly subgraphStudioKey: string;\n\n /**\n * Creates a new PoolClient instance\n * \n * @param client - Combined public and wallet client for blockchain interactions\n * @param subgraphStudioKey - Optional Subgraph Studio API key for higher rate limits\n * \n * @example\n * ```typescript\n * const poolClient = new PoolClient(client, 'your-api-key');\n * ```\n */\n constructor(\n client: PublicClient & WalletClient,\n subgraphStudioKey: string = ''\n ) {\n super(client);\n this.publicClient = client;\n this.subgraphStudioKey = subgraphStudioKey;\n }\n\n /**\n * Resets the API call counter for metrics tracking\n * \n * @example\n * ```typescript\n * poolClient.resetMetrics();\n * ```\n */\n public resetMetrics(): void {\n this.apiCallCount = 0;\n }\n\n /**\n * Gets current metrics for monitoring API usage\n * \n * @returns Object containing current metrics\n * \n * @example\n * ```typescript\n * const metrics = poolClient.getMetrics();\n * console.log(`API calls made: ${metrics.apiCallCount}`);\n * ```\n */\n public getMetrics(): { apiCallCount: number } {\n return {\n apiCallCount: this.apiCallCount,\n };\n }\n\n /**\n * Fetches data from GraphQL endpoint with retry logic for rate limits\n * \n * @param query - GraphQL query string\n * @param variables - Variables for the GraphQL query\n * @param protocol - Protocol to query\n * @param chainId - Chain ID to query\n * @returns Promise containing the response data\n * \n * @throws {Error} When subgraph endpoint is not available\n * @throws {Error} When rate limit is exceeded after max retries\n * @throws {Error} When GraphQL query times out\n * \n * @internal\n */\n private async fetchFromGraph<T>(\n query: string,\n variables: Record<string, unknown>,\n protocol: Protocol,\n chainId: number\n ): Promise<SteerResponse<T>> {\n try {\n const chainName = chainIdToName(chainId);\n const endpoint = getProtocolSubgraphURL(protocol, chainName as Chain, this.subgraphStudioKey);\n\n if (!endpoint) {\n throw new Error(`No subgraph endpoint available for protocol ${protocol} on chain ${chainName}`);\n }\n\n const MAX_RETRIES = 3;\n const RETRY_DELAY_MS = 11000;\n\n const fetchWithRetry = async (retries = 0): Promise<T> => {\n const response = await fetch(endpoint, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({ query, variables }),\n });\n\n const data = await response.json() as { data: T; error?: string; errors?: Array<{ message: string }> };\n\n if (data.error && typeof data.error === \"string\" && data.error.includes(\"surpassed your query allowance\")) {\n if (retries < MAX_RETRIES) {\n console.warn(`Rate limit hit for ${endpoint}, retrying in ${RETRY_DELAY_MS / 1000}s (attempt ${retries + 1})`);\n await new Promise(res => setTimeout(res, RETRY_DELAY_MS));\n return fetchWithRetry(retries + 1);\n } else {\n throw new Error(`Rate limit exceeded after ${MAX_RETRIES} retries: ${data.error}`);\n }\n }\n\n if (data.error) {\n throw new Error(`GraphQL endpoint error: ${data.error}`);\n }\n\n if (data.errors) {\n throw new Error(`GraphQL errors: ${JSON.stringify(data.errors)}`);\n }\n\n return data.data;\n };\n\n this.apiCallCount++;\n console.log(\"Total API calls:\", this.apiCallCount);\n\n const timeoutPromise = new Promise<never>((_, reject) => {\n setTimeout(\n () => reject(new Error(\"GraphQL query timeout\")),\n this.defaultTimeout\n );\n });\n\n const data = await Promise.race([fetchWithRetry(), timeoutPromise]);\n\n return {\n data: data as T,\n status: 200,\n success: true,\n };\n } catch (error) {\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Fetches the top pools for a specific protocol by trading volume\n * \n * @param count - Number of pools to fetch (default: 500)\n * @param protocol - Protocol to fetch pools from\n * @param chainId - Chain ID to fetch pools from\n * @returns Promise containing an array of top pools\n * \n * @example\n * ```typescript\n * // Get top 100 Uniswap V3 pools on Ethereum\n * const topPools = await poolClient.getTopPools(100, Protocol.UniswapV3, 1);\n * if (topPools.success) {\n * console.log(`Found ${topPools.data.length} pools`);\n * }\n * ```\n * \n * @throws {Error} When failed to fetch pools from subgraph\n */\n public async getTopPools(\n count: number = 500,\n protocol: Protocol,\n chainId: number\n ): Promise<SteerResponse<GraphQLPoolData[]>> {\n try {\n const isAlgebraPool = isAlgebraProtocol(protocol);\n const query = getTopPoolsQuery(protocol, isAlgebraPool);\n\n console.log(`[Chain ${chainId}] [Protocol ${protocol}] š Fetching top ${count} pools from the subgraph...`);\n\n const response = await this.fetchFromGraph<TopPoolsResponse>(\n query,\n { limit: count },\n protocol,\n chainId\n );\n\n if (!response.success || !response.data) {\n throw new Error(response.error || 'Failed to fetch pools');\n }\n\n const pools = response.data.pools || response.data.limitPools || response.data.clPools || [];\n \n console.log(`[Chain ${chainId}] [Protocol ${protocol}] ā
Received ${pools.length} pools from the subgraph`);\n\n // Filter out pools with invalid volumeUSD\n const validPools = pools.filter(pool => {\n const volumeUSD = parseFloat(pool.volumeUSD || pool.volumeUsd || \"0\");\n return !isNaN(volumeUSD) && volumeUSD > 0;\n });\n\n console.log(`[Chain ${chainId}] [Protocol ${protocol}] ā
Found ${validPools.length} valid pools with positive volumeUSD`);\n\n return {\n data: validPools,\n status: 200,\n success: true,\n };\n } catch (error) {\n console.error(`[Chain ${chainId}] [Protocol ${protocol}] Error in getTopPools:`, error);\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Fetches detailed information for a specific pool by its ID\n * \n * @param poolId - Pool contract address to fetch\n * @param protocol - Protocol the pool belongs to\n * @param chainId - Chain ID where the pool exists\n * @returns Promise containing pool details or null if not found\n * \n * @example\n * ```typescript\n * // Get specific pool details\n * const poolDetails = await poolClient.getPoolById(\n * '0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640',\n * Protocol.UniswapV3,\n * 1\n * );\n * if (poolDetails.success && poolDetails.data) {\n * console.log(`Pool: ${poolDetails.data.token0.symbol}/${poolDetails.data.token1.symbol}`);\n * }\n * ```\n * \n * @throws {Error} When failed to fetch pool from subgraph\n */\n public async getPoolById(\n poolId: string,\n protocol: Protocol,\n chainId: number\n ): Promise<SteerResponse<GraphQLPoolData | null>> {\n try {\n\n const isAlgebraPool = isAlgebraProtocol(protocol);\n const query = getPoolDetailsQuery(isAlgebraPool, protocol);\n\n \n const response = await this.fetchFromGraph<PoolDetailsResponse>(\n query,\n { pool: poolId },\n protocol,\n chainId\n );\n\n if (!response.success || !response.data) {\n throw new Error(response.error || 'Failed to fetch pool');\n }\n\n const pool = response.data.pool || response.data.clPool || response.data.limitPool || null;\n\n\n return {\n data: pool,\n status: 200,\n success: true,\n };\n } catch (error) {\n console.error(`Error fetching pool ${poolId}:`, error);\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Fetches pools containing multiple tokens in batches for better performance\n * \n * @param tokenAddresses - Array of token contract addresses\n * @param protocol - Protocol to fetch pools from\n * @param chainId - Chain ID to fetch pools from\n * @param batchSize - Number of tokens to process in each batch (default: 10)\n * @returns Promise containing all pools found for the tokens\n * \n * @example\n * ```typescript\n * // Get pools for multiple tokens\n * const tokenAddresses = [\n * '0xa0b86a33e6f8b07b71c3a39ef77a6b6e8f1b7b7e', // USDC\n * '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' // WETH\n * ];\n * const pools = await poolClient.fetchPoolsForTokensBatch(\n * tokenAddresses,\n * Protocol.UniswapV3,\n * 1,\n * 5\n * );\n * ```\n * \n * @throws {Error} When batch processing fails\n */\n public async fetchPoolsForTokensBatch(\n tokenAddresses: string[],\n protocol: Protocol,\n chainId: number,\n batchSize: number = 10\n ): Promise<SteerResponse<GraphQLPoolData[]>> {\n try {\n if (tokenAddresses.length === 0) {\n return {\n data: [],\n status: 200,\n success: true,\n };\n }\n\n console.log(`\\nš Batch Pool Fetch Summary:`);\n console.log(`š„ Total tokens to process: ${tokenAddresses.length}`);\n\n const isAlgebraPool = isAlgebraProtocol(protocol);\n const normalizedAddresses = tokenAddresses.map(addr => addr.toLowerCase());\n\n // Split into chunks\n const chunkSize = batchSize;\n const addressChunks = [];\n for (let i = 0; i < normalizedAddresses.length; i += chunkSize) {\n addressChunks.push(normalizedAddresses.slice(i, i + chunkSize));\n }\n\n console.log(`š¦ Processing ${addressChunks.length} chunks of max ${chunkSize} tokens each`);\n\n const allPools: GraphQLPoolData[] = [];\n\n // Process chunks in parallel\n const results = await Promise.all(\n addressChunks.map(async (chunk, chunkIndex) => {\n console.log(`\\nš Processing chunk ${chunkIndex + 1}/${addressChunks.length} with ${chunk.length} tokens`);\n\n const chunkResults = await Promise.all(\n chunk.map(async (token) => {\n try {\n const query = getTokenPoolsQueryByAddress(isAlgebraPool, protocol);\n const queryStartTime = performance.now();\n \n const response = await this.fetchFromGraph<PoolsByTokenResponse>(\n query,\n { token },\n protocol,\n chainId\n );\n\n const queryTime = performance.now() - queryStartTime;\n console.log(`ā±ļø GraphQL query for token ${token.slice(0, 6)}... completed in ${queryTime.toFixed(2)}ms`);\n\n if (!response.success || !response.data) {\n console.error(`ā No pools found for token: ${token} on chainId: ${chainId}`);\n return [];\n }\n\n // Extract pools from different possible response structures\n let pools: GraphQLPoolData[] = [];\n if (response.data.pools) {\n pools = response.data.pools;\n } else if (response.data.clPools) {\n pools = response.data.clPools;\n } else if (response.data.limitPools) {\n pools = response.data.limitPools;\n } else if (response.data.tokenPools) {\n pools = response.data.tokenPools;\n }\n\n if (pools.length === 0) {\n console.error(`ā No pools found for token: ${token} on chainId: ${chainId}`);\n return [];\n }\n\n return pools;\n } catch (error) {\n console.error(`ā Error fetching pools for token: ${token} on chainId: ${chainId}`, error);\n return [];\n }\n })\n );\n\n return chunkResults.flat();\n })\n );\n\n // Flatten all results\n allPools.push(...results.flat());\n\n return {\n data: allPools,\n status: 200,\n success: true,\n };\n } catch (error) {\n console.error(\"Error in fetchPoolsForTokensBatch:\", error);\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Fetches all pools containing a specific token\n * \n * @param tokenAddress - Token contract address\n * @param protocol - Protocol to fetch pools from\n * @param chainId - Chain ID to fetch pools from\n * @returns Promise containing pools that include the specified token\n * \n * @example\n * ```typescript\n * // Get all USDC pools on Uniswap V3\n * const usdcPools = await poolClient.fetchPoolsForToken(\n * '0xa0b86a33e6f8b07b71c3a39ef77a6b6e8f1b7b7e',\n * Protocol.UniswapV3,\n * 1\n * );\n * if (usdcPools.success) {\n * console.log(`Found ${usdcPools.data.length} USDC pools`);\n * }\n * ```\n * \n * @throws {Error} When failed to fetch pools for token\n */\n public async fetchPoolsForToken(\n tokenAddress: string,\n protocol: Protocol,\n chainId: number\n ): Promise<SteerResponse<GraphQLPoolData[]>> {\n try {\n const isAlgebraPool = isAlgebraProtocol(protocol);\n const query = getTokenPoolsQueryByAddress(isAlgebraPool, protocol);\n\n const response = await this.fetchFromGraph<PoolsByTokenResponse>(\n query,\n { token: tokenAddress.toLowerCase() },\n protocol,\n chainId\n );\n\n if (!response.success || !response.data) {\n throw new Error(response.error || 'Failed to fetch pools for token');\n }\n\n // Extract pools from different possible response structures\n let pools: GraphQLPoolData[] = [];\n if (response.data.pools) {\n pools = response.data.pools;\n } else if (response.data.limitPools) {\n pools = response.data.limitPools;\n } else if (response.data.tokenPools) {\n pools = response.data.tokenPools;\n } else if (response.data.clPools) {\n pools = response.data.clPools;\n }\n\n return {\n data: pools,\n status: 200,\n success: true,\n };\n } catch (error) {\n console.error(`Error fetching pools for token ${tokenAddress}:`, error);\n return {\n data: null,\n status: 500,\n success: false,\n error: error instanceof Error ? error.message : 'Unknown error occurred',\n };\n }\n }\n\n /**\n * Filters pools based on validity criteria such as tick range and liquidity\n * \n * @param pools - Array of pools to filter\n * @returns Array of valid pools that meet the criteria\n * \n * @example\n * ```typescript\n * const validPools = poolClient.filterValidPools(allPools);\n * console.log(`Filtered down to ${validPools.length} valid pools`);\n * ```\n */\n public filterValidPools(pools: PoolData[]): PoolData[] {\n return pools.filter(pool => {\n // Check for required fields\n if (!pool.id || !pool.tick || !pool.liquidity) {\n return false;\n }\n\n // Parse values\n const tick = parseInt(pool.tick);\n const liquidity = parseFloat(pool.liquidity);\n\n // Check for valid tick range and liquidity\n const TICK_MIN = -887272;\n const TICK_MAX = 887272;\n const TICK_EDGE_THRESHOLD = 1;\n\n if (\n isNaN(tick) ||\n isNaN(liquidity) ||\n liquidity <= 0 ||\n tick <= TICK_MIN + TICK_EDGE_THRESHOLD ||\n tick >= TICK_MAX - TICK_EDGE_THRESHOLD\n ) {\n return false;\n }\n\n return true;\n });\n }\n} "]}
|