import { IArrakisV2 } from '../../typechain';
import { IChain } from '../constants';
import { Signer } from 'ethers';
import { RebalanceStruct } from '../../typechain/src/market-maker/src/interfaces/arrakis/IArrakisV2';
import { UniV3MMOptions } from './types';
import { UniV3Range } from '../marketMaker/uniV3Range';
import { uniV3MMMaxLp } from './uniV3MMMaxLp';
export declare class UniV3MMArrakis extends uniV3MMMaxLp {
    vault: IArrakisV2;
    wallet: Signer;
    feeTier: number;
    chain: IChain;
    useMovingAvg: boolean;
    constructor(vault: IArrakisV2, wallet: Signer, feeTier: number, // uniswap fee tier
    chain: IChain, options?: UniV3MMOptions, useMovingAvg?: boolean);
    updateRanges(): Promise<void>;
    getBalances(): Promise<{
        totals: [number, number];
        allocated: [number, number];
    }>;
    getRebalanceParams(burnRanges: UniV3Range[]): Promise<RebalanceStruct>;
    getUniV3Pool: () => Promise<import("../../typechain").IUniswapV3Pool>;
    executeRebalance(rebalanceParams: RebalanceStruct): Promise<boolean>;
}
