import { Transaction, TransactionResult } from '@mysten/sui/transactions'; import { BigintIsh, Coin, Percent } from '../../../core'; import { Swap, SwapConstructorOptions } from '../Swap'; import { Protocol } from '../../constants'; export interface CetusProtocolConfig { wrappedRouterPackageId: string; globalConfigObjectId: string; } export interface CetusSwapOptions extends SwapConstructorOptions { xForY: boolean; sqrtPriceX64Limit: BigintIsh; minSqrtPriceX64HasLiquidity: BigintIsh; maxSqrtPriceX64HasLiquidity: BigintIsh; } export declare class CetusSwap extends Swap> { readonly xForY: boolean; readonly sqrtPriceX64Limit: BigintIsh; readonly minSqrtPriceX64HasLiquidity: BigintIsh; readonly maxSqrtPriceX64HasLiquidity: BigintIsh; constructor(options: CetusSwapOptions); protocol(): Protocol; swap: (routeObject: TransactionResult, slippage: Percent) => (tx: Transaction) => void; }