import * as d3Scale from 'd3-scale';
import { DvScatterData } from './type';
import type Chart from '../../../core/Chart';
import { Option } from '../../../core/option';
export declare const axisTypeScaleMap: {
    category: typeof d3Scale.scaleLinear;
    value: typeof d3Scale.scaleLinear;
    time: typeof d3Scale.scaleLinear;
    log: typeof d3Scale.scaleLog;
};
export declare class DvScatterModel {
    protected _chart: Chart;
    protected _index: number;
    protected _data: DvScatterData[];
    protected _option: Option;
    protected _common: {
        xOffset: number;
        yOffset: number;
    };
    constructor(chart: Chart, index: number, option: Option);
    init(): void;
    protected _prepareOption(option: Option): Option;
    /**
     * @rule if has log axis, the min value of axis should be greater than 0
     */
    protected _prepareData(data: DvScatterData[]): DvScatterData[];
    protected _parse(): void;
    protected _parseSeries(): void;
    protected _parseAxisPointer(): void;
    protected dvEnableXOffsetHandle(): void;
    protected _logAxisHandle(axis: string, axisComponent: Option['xAxis'] | Option['yAxis']): void;
    protected _autoLabelLayout(): void;
    protected _renderItemHandle(): void;
    protected _getRScale(): d3Scale.ScaleLinear<number, number, never>;
    protected _getXScale(): any;
    protected _getYScale(): any;
}
