import { Map } from '../core/map';
import { Plot } from '../core/plot';
import { L7PlotOptions, IPlotLayer } from '../types';
import { LayerGroup } from '../core/layer/layer-group';
import { LayerConfigType, PlotConfigType } from './types';
export declare class L7Plot extends Map<L7PlotOptions> {
    /**
     * 默认的 options 配置项
     */
    static DefaultOptions: Partial<L7PlotOptions>;
    /**
     * 图表实例
     */
    plots: Plot<PlotConfigType>[];
    constructor(container: string | HTMLDivElement, options: L7PlotOptions);
    /**
     * 获取默认配置
     */
    protected getDefaultOptions(): Partial<L7PlotOptions>;
    /**
     * 创建所有图层
     */
    protected createLayers(): LayerGroup;
    /**
     * 创建图层实例
     */
    private createLayer;
    /**
     * 添加图层
     */
    addLayer(layer: LayerConfigType | IPlotLayer): void;
    /**
     * 移除图层
     */
    removeLayerByName(name: string): boolean;
    /**
     * 更新图层
     */
    protected updateLayers(layers: LayerConfigType[]): void;
    /**
     * 更新 Plot
     */
    protected updatePlots(plots: PlotConfigType[]): void;
    /**
     * 渲染
     */
    render(): void;
    /**
     * scene 加载成功回调
     */
    private onSceneLoaded;
    /**
     * 图层加载成功回调
     */
    private onLayersLoaded;
    /**
     * 渲染 plots
     */
    private renderPlots;
    /**
     * 创建 plot
     */
    private createPlot;
    /**
     * 添加图表
     */
    addPlot(plotConfig: PlotConfigType): void;
    /**
     * 获取所有图表
     */
    getPlots(): Plot<PlotConfigType>[];
    /**
     * 根据图表名称获取图表
     */
    getPlotByName(name: string): Plot<PlotConfigType> | undefined;
    /**
     * 根据图表名称移除图表
     */
    removePlotByName(name: string): boolean;
    /**
     * 移除所有的图表
     */
    removeAllPlot(): void;
}
