import { Service } from '../../../Service';
import BigNumber from 'bignumber.js';
import { Tx } from '../../../interfaces/Tx';
import { IOlympusIndexPartial, IUnlockTime } from '../../../interfaces/IOlympusIndexPartial';
export declare class OlympusIndexPartial extends Service implements IOlympusIndexPartial {
    static create(productAddress: string): Promise<OlympusIndexPartial>;
    private lockerService;
    private derivative;
    private constructor();
    getTokenWithWeights(): Promise<{
        tokenAddresses: string[];
        weights: BigNumber[];
    }>;
    getTokensWithBalance(): Promise<{
        tokenAddresses: string[];
        balances: BigNumber[];
    }>;
    configFrequency(index: {
        buyTokensFrequencyInDays: number;
        redeemFrequencyInDays: number;
        rebalanceFrequencyInDays: number;
    }, gasPrice?: number): Promise<Tx>;
    getUnlockTime(): Promise<IUnlockTime | null>;
    initializeIndex(address: string, index: {
        rebalanceDeltaPercentage: number;
        managementFee: number;
    }, initialEth: number, gasPrice?: number): Promise<Tx>;
}
