import SeriesModel from '../../model/Series.js';
import { SeriesOption, SeriesOnCartesianOptionMixin, LayoutOrient, ItemStyleOption, ColorString, SeriesLabelOption, SeriesLargeOptionMixin, StatesOptionMixin, SeriesEncodeOptionMixin, DefaultEmphasisFocus, OptionDataValue } from '../../util/types.js';
import Cartesian2D from '../../coord/cartesian/Cartesian2D.js';
import { PathState } from 'tvrender/lib/graphic/Path.js';
declare type BarPlotDataValue = OptionDataValue[];
interface BarPlotItemStyleOption extends ItemStyleOption {
    color0?: ColorString;
}
export interface BarPlotStateOption {
    itemStyle?: BarPlotItemStyleOption;
    label?: SeriesLabelOption;
}
export interface BarPlotDataItemOption extends BarPlotStateOption, StatesOptionMixin<BarPlotStateOption, ExtraStateOption> {
    value: BarPlotDataValue;
}
interface ExtraStateOption {
    emphasis?: {
        focus?: DefaultEmphasisFocus;
        scale?: boolean;
        emphasisState?: PathState;
    };
}
export interface BarPlotSeriesOption extends SeriesOption<BarPlotStateOption, ExtraStateOption>, BarPlotStateOption, SeriesOnCartesianOptionMixin, SeriesLargeOptionMixin, SeriesEncodeOptionMixin {
    type?: 'barPlot';
    coordinateSystem?: 'cartesian2d';
    signByPrev?: boolean;
    isSmall?: boolean;
    ishlc?: boolean;
    layout?: LayoutOrient;
    clip?: boolean;
    barMaxWidth?: number | string;
    barMinWidth?: number | string;
    barWidth?: number | string;
    data?: (BarPlotDataValue | BarPlotDataItemOption)[];
    ignoreParentColor: boolean;
}
declare class BarPlotSeriesModel extends SeriesModel<BarPlotSeriesOption> {
    static readonly type = "series.barPlot";
    readonly type = "series.barPlot";
    static readonly dependencies: string[];
    notAddOrdinal: boolean;
    ignoreStyleOnData: boolean;
    coordinateSystem: Cartesian2D;
    dimensions: string[];
    defaultValueDimensions: {
        name: string;
        defaultTooltip: boolean;
    }[];
    static defaultOption: BarPlotSeriesOption;
    /**
     * Get dimension for shadow in dataZoom
     * @return dimension name
     */
    getShadowDim(): string;
}
export default BarPlotSeriesModel;
