import { Amount } from "../../model/primitives.js"; import { PoolPosition } from "../../model/positions.js"; import "../../model/index.js"; import { AddLiquidityProps, DepositMetadata, IPoolsService, ListPoolPositionsProps, PoolServiceCallResult, PoolSimulation, RemoveLiquidityProps, SimulatePoolOperationProps, WithdrawalMetadata } from "./types.js"; import { SDKConstruct } from "../base/SDKConstruct.js"; import "../base/index.js"; import { Address } from "viem"; //#region src/onchain/pools/PoolService.d.ts export declare class PoolService extends SDKConstruct implements IPoolsService { #private; /** * {@inheritDoc IPoolsService.getDepositTokensIn} */ getDepositTokensIn(pool: Address): Address[]; /** * {@inheritDoc IPoolsService.getDepositTokensOut} */ getDepositTokensOut(pool: Address, tokenIn: Address): Address[]; /** * {@inheritDoc IPoolsService.getDepositMetadata} */ getDepositMetadata(pool: Address, tokenIn: Address, tokenOut?: Address): DepositMetadata; /** * {@inheritDoc IPoolsService.addLiquidity} */ addLiquidity(props: AddLiquidityProps): PoolServiceCallResult | undefined; /** * {@inheritDoc IPoolsService.getWithdrawalTokensIn} */ getWithdrawalTokensIn(pool: Address): Address[]; /** * {@inheritDoc IPoolsService.getWithdrawalTokensOut} */ getWithdrawalTokensOut(pool: Address, tokenIn: Address): Address[]; /** * {@inheritDoc IPoolsService.simulateDeposit} */ simulateDeposit(props: SimulatePoolOperationProps): PoolSimulation; /** * {@inheritDoc IPoolsService.simulateWithdraw} */ simulateWithdraw(props: SimulatePoolOperationProps): PoolSimulation; /** * {@inheritDoc IPoolsService.simulateRedeem} */ simulateRedeem(props: SimulatePoolOperationProps): PoolSimulation; /** * {@inheritDoc IPoolsService.removeLiquidity} */ removeLiquidity(props: RemoveLiquidityProps): PoolServiceCallResult; /** * {@inheritDoc IPoolsService.getWithdrawalMetadata} */ getWithdrawalMetadata(pool: Address, tokenIn: Address, tokenOut?: Address): WithdrawalMetadata; /** * {@inheritDoc IPoolsService.listPositions} */ listPositions(props: ListPoolPositionsProps): Promise; /** * {@inheritDoc IPoolsService.withdrawableLiquidity} */ withdrawableLiquidity(pool: Address): Amount; } //#endregion