import { AnyNumber } from '@aptos-labs/ts-sdk'; declare enum LiquidityType { SingleAsset = 0, Imbalance = 1, Ratio = 2 } interface PositionToRemove { positionAddr: string; mintedShare: AnyNumber; minAmount0: AnyNumber; minAmount1: AnyNumber; } interface RemoveSingleAMMLiquidityParams extends PositionToRemove { poolId: string; } interface RemoveMultipleAMMLiquidityParams { poolId: string; positions: PositionToRemove[]; } interface RemoveSingleCLMMLiquidityParams extends PositionToRemove { poolId: string; } interface RemoveMultipleCLMMLiquidityParams { poolId: string; positions: PositionToRemove[]; } interface DefaultWithdrawalParams { positionAddr: string; mintedShare: AnyNumber; amounts: AnyNumber[]; } interface SingleAssetWithdrawalParams { positionAddr: string; mintedShare: AnyNumber; tokenOutIndex: AnyNumber; amount: number; } interface ImbalancedWithdrawalParams { positionAddr: string; maxMintedShare: AnyNumber; amounts: AnyNumber[]; } interface RemoveSingleStableLiquidityParams { poolId: string; liquidityType: LiquidityType; position: DefaultWithdrawalParams | SingleAssetWithdrawalParams | ImbalancedWithdrawalParams; } interface RemoveMultipleStableLiquidityParams { poolId: string; liquidityType: LiquidityType; positions: DefaultWithdrawalParams[] | SingleAssetWithdrawalParams[] | ImbalancedWithdrawalParams[]; } interface AddAMMLiquidityParams { poolId: string; amountA: number; amountB: number; } interface AddCLMMLiquidityParams { poolId: string; minPrice: number; maxPrice: number; amountA: number; amountB: number; fee: number; isMaxAmountB: boolean; } interface AddStableLiquidityParams { poolId: string; amounts: number[]; } interface CreateAMMPoolAndAddLiquidityParams { tokenAddress: string[]; fee: number; amounts: number[]; } interface CreateCLMMPoolAndAddLiquidityParams { tokenAddress: string[]; fee: number; amounts: number[]; initialPrice: number; minPrice: number; maxPrice: number; isMaxAmountB: boolean; } interface CreateStablePoolAndAddLiquidityParams { tokenAddress: string[]; fee: number; amounts: number[]; amplificationFactor: number; offpeg_fee_multiplier?: number; } interface CollectFeeParams { poolId: string; positionAddr: string; } interface GetPositionParams { userAddr: string; page?: number; size?: number; } interface GetPositions { apr: PositionApr; collectedFees: string; estimatedCollectFees: PositionToken[]; estimatedIncentives: PositionToken[]; estimatedWithdrawals: PositionToken[]; feeTier: string; initialDeposits: PositionToken[]; max: string; min: string; mintedShare: string; poolId: string; poolType: string; positionAddr: string; positionIdx: string; shareOfPool: string; sqrtPrice: string; totalEarnings: PositionToken[]; tvl: string; userAddr: string; volume24h: string; } interface PositionApr { boostedAprPercentage: string; campaignAprs: PositionCampaignApr[]; feeAprPercentage: string; totalAprPercentage: string; } interface PositionCampaignApr { apr_percentage: number; campaign_id: string; token_address: string; token_symbol: string; img: string; } interface PositionToken { addr: string; amount: string; decimals: number; idx: number; img: string; symbol: string; usd: string; verified: boolean; } export { type AddAMMLiquidityParams, type AddCLMMLiquidityParams, type AddStableLiquidityParams, type CollectFeeParams, type CreateAMMPoolAndAddLiquidityParams, type CreateCLMMPoolAndAddLiquidityParams, type CreateStablePoolAndAddLiquidityParams, type DefaultWithdrawalParams, type GetPositionParams, type GetPositions, type ImbalancedWithdrawalParams, LiquidityType, type PositionApr, type PositionToken, type RemoveMultipleAMMLiquidityParams, type RemoveMultipleCLMMLiquidityParams, type RemoveMultipleStableLiquidityParams, type RemoveSingleAMMLiquidityParams, type RemoveSingleCLMMLiquidityParams, type RemoveSingleStableLiquidityParams, type SingleAssetWithdrawalParams };