import { BigNumber } from "bignumber.js";
export type Range = {
    initial: BigNumber;
    min: BigNumber;
    max: BigNumber;
    step: BigNumber;
    steps: number;
};
export type RangeRaw = {
    initial: string;
    min: string;
    max: string;
    step: string;
    steps: number;
};
export declare function fromRangeRaw(r: RangeRaw): Range;
export declare function toRangeRaw(r: Range): RangeRaw;
export type InferDynamicRangeOpts = {
    minMult: number;
    maxMult: number;
    targetSteps: number;
    minValue?: BigNumber | null;
    maxValue?: BigNumber | null;
};
export declare function inferDynamicRange(amount: BigNumber, opts?: Partial<InferDynamicRangeOpts>): Range;
export declare function projectRangeIndex(range: Range, index: number): BigNumber;
export declare function reverseRangeIndex(range: Range, n: BigNumber): number;
//# sourceMappingURL=range.d.ts.map