import SeriesModel from '../../model/Series.js';
import { SeriesOnCartesianOptionMixin, SeriesOption, SeriesOnPolarOptionMixin, SeriesStackOptionMixin, SeriesLabelOption, LineStyleOption, AreaStyleOption, SymbolOptionMixin, SeriesSamplingOptionMixin, StatesOptionMixin, SeriesEncodeOptionMixin, CallbackDataParams, DefaultEmphasisFocus } from '../../util/types.js';
import SeriesData from '../../data/SeriesData.js';
import type Cartesian2D from '../../coord/cartesian/Cartesian2D.js';
import { PathState } from 'tvrender/lib/graphic/Path.js';
interface LineStateOptionMixin {
    emphasis?: {
        focus?: DefaultEmphasisFocus;
        scale?: boolean | number;
        emphasisState?: PathState;
    };
}
export interface LineStateOption<TCbParams = never> {
    lineStyle?: LineStyleOption;
}
export interface FillsDataItemOption extends SymbolOptionMixin, LineStateOption, StatesOptionMixin<LineStateOption, LineStateOptionMixin> {
    name?: string;
    value: (number | string)[];
    plot1?: number;
    plot2?: number;
    color?: string;
    topColor?: string;
    bottomColor?: string;
    topValue?: number;
    bottomValue?: number;
}
export interface LineEndLabelOption extends SeriesLabelOption {
    valueAnimation?: boolean;
}
export interface FillsSeriesOption extends SeriesOption<LineStateOption<CallbackDataParams>, LineStateOptionMixin & {
    emphasis?: {
        lineStyle?: Omit<LineStyleOption, 'width'> & {
            width?: LineStyleOption['width'] | 'bolder';
        };
        areaStyle?: AreaStyleOption;
    };
    blur?: {
        lineStyle?: LineStyleOption;
        areaStyle?: AreaStyleOption;
    };
}>, LineStateOption<CallbackDataParams>, SeriesOnCartesianOptionMixin, SeriesOnPolarOptionMixin, SeriesStackOptionMixin, SeriesSamplingOptionMixin, SymbolOptionMixin<CallbackDataParams>, SeriesEncodeOptionMixin {
    type?: 'fills';
    coordinateSystem?: 'cartesian2d' | 'polar';
    clip?: boolean;
    fillgaps?: boolean;
    isMonoHline?: boolean;
    data?: FillsDataItemOption[];
    triggerLineEvent?: boolean;
    z2?: number;
}
declare class FillsSeriesModel extends SeriesModel<FillsSeriesOption> {
    static readonly type = "series.fills";
    type: string;
    static readonly dependencies: string[];
    coordinateSystem: Cartesian2D;
    ignoreStyleOnData: boolean;
    getInitialData(option: FillsSeriesOption): SeriesData;
    static defaultOption: FillsSeriesOption;
}
export default FillsSeriesModel;
