import { Chart, View, Types, BaseChartConfig, ChartData, Colors } from '../common/types';
import Base, { ChartProps } from "../common/Base";
import { DataAdapterData } from '../common/dataAdapter';
import { GuideConfig } from '../common/guide';
import { XAxisConfig } from '../common/rectXAxis';
import { YAxisConfig } from '../common/rectYAxis';
import { TooltipConfig } from '../common/rectTooltip';
import { LegendConfig } from '../common/rectLegend';
import { LabelConfig } from '../common/label';
import { GeomSizeConfig } from '../common/geomSize';
import { GeomStyleConfig } from '../common/geomStyle';
import './index.scss';
interface WlinescatterConfig extends BaseChartConfig, ScatterConfig, LineConfig {
    xAxis?: Types.ScaleOption & XAxisConfig | false;
    yAxis?: Types.ScaleOption & YAxisConfig | false;
    legend?: LegendConfig | boolean;
    tooltip?: TooltipConfig | boolean;
    guide?: GuideConfig;
    grid?: boolean;
}
export declare class Linescatter extends Base<WlinescatterConfig> {
    chartName: string;
    convertData: boolean;
    getDefaultConfig(): WlinescatterConfig;
    beforeInit(props: ChartProps<WlinescatterConfig>): ChartProps<WlinescatterConfig>;
    rawLineData: DataAdapterData[];
    lineView: View;
    rawScatterData: DataAdapterData[];
    scatterView: View;
    init(chart: Chart, config: WlinescatterConfig, data: ChartData): void;
    changeData(chart: Chart, config: WlinescatterConfig, data: ChartData): void;
}
declare const Wlinescatter: typeof Linescatter;
export default Wlinescatter;
interface ScatterConfig {
    scatterColors?: Colors;
    scatterSize?: GeomSizeConfig;
    scatterLabel?: LabelConfig | boolean;
    scatterGeomStyle?: GeomStyleConfig;
}
interface LineConfig {
    areaColors?: string[];
    lineColors?: Colors;
    area?: boolean | {
        geomStyle?: GeomStyleConfig;
    };
    stack?: boolean;
    spline?: boolean;
    step?: string | boolean;
    symbol?: {
        size?: GeomSizeConfig;
        geomStyle?: GeomStyleConfig;
    } | boolean;
    lineLabel?: LabelConfig | boolean;
    lineWidth?: number;
    lineGeomStyle?: GeomStyleConfig;
}
