import { NumberRange } from "../../../../Core/NumberRange";
import type { TSciChart } from "../../../../types/TSciChart";
import type { TSciChart3D } from "../../../../types/TSciChart3D";
import { EDatePrecision } from "../LabelProvider/SmartDateLabelProvider";
import { NumericDeltaCalculator } from "./NumericDeltaCalculator";
export interface IDeltaCalculatorOptions {
    possibleDeltas?: number[];
    minTicks?: number;
    datePrecision?: EDatePrecision;
}
/**
 * The DateTimeDeltaCalculator is respinsible for calculating {@link AxisCore.minorDelta} and {@link AxisCore.majorDelta} on
 * {@link NumericAxis} types.
 */
export declare class DateTimeDeltaCalculator extends NumericDeltaCalculator {
    private possibleDeltasProperty;
    private datePrecisionProperty;
    private minTicksProperty;
    private prevIndex;
    private currIndex;
    constructor(webAssemblyContext: TSciChart | TSciChart3D, options?: IDeltaCalculatorOptions);
    /**
     * Gets or sets the date precision
     */
    get datePrecisionValue(): EDatePrecision;
    set datePrecisionValue(value: EDatePrecision);
    /**
     * Gets or sets deltas array
     */
    get possibleDeltas(): number[];
    set possibleDeltas(value: number[]);
    get minTicks(): number;
    set minTicks(value: number);
    /**
     * @inheritDoc
     */
    getDeltaFromRange(min: number, max: number, minorsPerMajor: number, maxTicks: number): NumberRange;
}
