import { Transaction, TransactionResult } from '@mysten/sui/transactions'; import { SuiClient } from '@mysten/sui/client'; import { BigintIsh, NETWORK } from '../core'; import { ClmmPosition, PriceProvider } from './entities'; import { Protocol } from '../universal-router'; interface RebalancerConstructorArgs { network: NETWORK; } interface RebalanceOptions { slippageTolerance?: number; priceImpactPercentThreshold?: number; minZapAmounts?: { amountX: BigintIsh; amountY: BigintIsh; }; includeSources?: Protocol[]; excludeSources?: Protocol[]; priceProvider?: PriceProvider; client?: SuiClient; commission?: { address: string; fee: number; }; } export declare class Rebalancer { private quoter; private positionManager; readonly network: NETWORK; constructor(options: RebalancerConstructorArgs); private checkPriceImpact; private decreaseLiquidityAndCollect; rebalance: (position: ClmmPosition, tickLower: number, tickUpper: number, options?: RebalanceOptions) => (tx: Transaction) => Promise; } export {};