import { VaultProvider, VaultProviderParams } from './vaultProvider';
import { DefiedgeTwapStrategy, IAlgebraPool } from '../../../typechain';
export type DefiEdgeVaultProviderParams = Omit<VaultProviderParams, 'feeTier'> & {
    vaultContract: DefiedgeTwapStrategy;
};
type DefiedgeRebalanceParams = Parameters<DefiedgeTwapStrategy['rebalance']>;
export declare class DefiEdgeVaultProvider extends VaultProvider<DefiedgeTwapStrategy, 'rebalance'> {
    poolContract: IAlgebraPool;
    private constructor();
    static create(params: DefiEdgeVaultProviderParams): Promise<DefiEdgeVaultProvider>;
    init({ baseToken, price, }: Omit<DefiEdgeVaultProviderParams, 'vaultContract'>): Promise<void>;
    updateRanges(): Promise<void>;
    getBalances(): Promise<{
        totals: [number, number];
        allocated: [number, number];
    }>;
    getRebalanceParams(): Promise<DefiedgeRebalanceParams>;
    getTickSpacing(): Promise<number>;
    getPrice(twapInterval: number): Promise<number>;
}
export {};
