import { ChartType, ZoomType, axisPosition } from '../../../../../constants';
import ChartStyleService, { IChartStyleOption, IChartStyleInitOption } from '../base';
export interface ITimeLineChartStyle extends IChartStyleOption {
    labelField: string;
    startField: string;
    durationField: string;
    axisPosition: axisPosition;
    maxZoom: ZoomType;
    minZoom: ZoomType;
    eventBackGround: string;
    dataSize: number;
}
export default abstract class TimeLineStyleService extends ChartStyleService<ITimeLineChartStyle> {
    static getChartInitStyle(option: IChartStyleInitOption, initFirst?: boolean): IChartStyleInitOption;
    chartType: ChartType;
    labelField: string;
    startField: string;
    durationField: string;
    axisPosition: axisPosition;
    maxZoom: ZoomType;
    minZoom: ZoomType;
    eventBackGround: string;
    dataSize: number;
    get contextOption(): {
        buckets: never[];
        metrics: never[];
    };
    getOptions(): {
        chartType: ChartType;
        labelField: string;
        startField: string;
        durationField: string;
        axisPosition: axisPosition;
        maxZoom: ZoomType;
        minZoom: ZoomType;
        eventBackGround: string;
        dataSize: number;
    };
    setLabelField(labelField: string): void;
    setStartField(startField: string): void;
    setDurationField(durationField: string): void;
    setAxisPosition(axisPosition: axisPosition): void;
    setMaxZoom(maxZoom: ZoomType): void;
    setMinZoom(minZoom: ZoomType): void;
    setEventBackGround(eventBackGround: string): void;
    setDataSize(dataSize?: number): void;
    constructor(chart: ITimeLineChartStyle);
}
