import type { IModelInitOption } from '../../model/interface';
import type { BoxPlotShaftShape, IOutlierMarkSpec, Datum, DirectionType } from '../../typings';
import { CartesianSeries } from '../cartesian/cartesian';
import type { SeriesMarkMap } from '../interface';
import { SeriesTypeEnum } from '../interface/type';
import type { IBoxPlotSeriesSpec } from './interface';
import { DataView } from '@visactor/vdataset';
import type { IMark, ITextMark } from '../../mark/interface';
import type { ICompilableData } from '../../compile/data';
import { BoxPlotSeriesSpecTransformer } from './box-plot-transformer';
export declare const DEFAULT_FILL_COLOR = "#FFF";
export declare const DEFAULT_STROKE_COLOR = "#000";
export declare class BoxPlotSeries<T extends IBoxPlotSeriesSpec = IBoxPlotSeriesSpec> extends CartesianSeries<T> {
    static readonly type: string;
    type: SeriesTypeEnum;
    static readonly builtInTheme: {
        boxPlot: import("./interface").IBoxPlotSeriesTheme;
    };
    static readonly mark: SeriesMarkMap;
    static readonly transformerConstructor: any;
    readonly transformerConstructor: typeof BoxPlotSeriesSpecTransformer;
    protected _bandPosition: number;
    protected _minField: string;
    getMinField(): string;
    protected _maxField: string;
    getMaxField(): string;
    protected _q1Field: string;
    getQ1Field(): string;
    protected _medianField: string;
    getMedianField(): string;
    protected _q3Field: string;
    getQ3Field(): string;
    protected _outliersField: string;
    getOutliersField(): string;
    protected _lineWidth: number;
    protected _boxWidth: number;
    protected _shaftShape: BoxPlotShaftShape;
    getShaftShape(): BoxPlotShaftShape;
    protected _shaftWidth: number;
    protected _boxFillColor: string;
    getBoxFillColor(): string;
    protected _strokeColor: string;
    getStrokeColor(): string;
    protected _shaftFillOpacity: number;
    protected _outliersStyle: IOutlierMarkSpec;
    getOutliersStyle(): IOutlierMarkSpec;
    protected _outlierData: ICompilableData;
    private _autoBoxWidth;
    setAttrFromSpec(): void;
    private _boxPlotMark?;
    private _outlierMark?;
    initMark(): void;
    initMarkStyle(): void;
    initBoxPlotMarkStyle(): void;
    initLabelMarkStyle(textMark: ITextMark): void;
    initData(): void;
    compileData(): void;
    viewDataUpdate(d: DataView): void;
    init(option: IModelInitOption): void;
    private _getMarkWidth;
    protected _getPosition(direction: DirectionType, datum: Datum): number;
    onLayoutEnd(): void;
    private _initAnimationSpec;
    initAnimation(): void;
    protected initTooltip(): void;
    getStatisticFields(): {
        key: string;
        operations: import("../../data/transforms/interface").StatisticOperations;
    }[];
    getDefaultShapeType(): string;
    getActiveMarks(): IMark[];
}
export declare const registerBoxplotSeries: () => void;
