import { PlotLayer } from '../../core/layer/plot-layer';
import { AreaLayerOptions, AreaLayerSourceOptions } from './types';
import { ILayer, Scene, Source } from '../../types';
export type { AreaLayerOptions };
export declare class AreaLayer extends PlotLayer<AreaLayerOptions> {
    /**
     * 默认配置项
     */
    static DefaultOptions: {
        visible: boolean;
        state: {
            active: boolean;
            select: boolean;
        };
        enabledMultiSelect: boolean;
    };
    /**
     * 图层配置项 Keys
     */
    static LayerOptionsKeys: string[];
    /**
     * 图层名称
     */
    name: string;
    /**
     * 填充面图层实例
     */
    layer: ILayer;
    /**
     * 描边图层
     */
    strokeLayer: ILayer;
    /**
     * 高亮描边图层
     */
    highlightLayer: ILayer;
    /**
     * 高亮描边数据
     */
    private highlightLayerData;
    /**
     * 选中填充面图层
     */
    selectFillLayer: ILayer;
    /**
     * 选中描边图层
     */
    selectStrokeLayer: ILayer;
    /**
     * 选中数据
     */
    private selectData;
    /**
     * 图层类型
     */
    type: import("../../types").LayerType;
    /**
     * 图层是否具有交互属性
     */
    interaction: boolean;
    constructor(options: AreaLayerOptions);
    /**
     * 获取默认配置
     */
    getDefaultOptions(): Partial<AreaLayerOptions>;
    private mappingLayer;
    protected setSource(source: AreaLayerSourceOptions | Source): void;
    protected setStrokeLayerSource(): void;
    protected setHighlightLayerSource(feature?: any, featureId?: number): void;
    protected setSelectLayerSource(selectData?: any[]): void;
    private initEvent;
    private onHighlighHandle;
    private onUnhighlighHandle;
    private onSelectHandle;
    addTo(scene: Scene): void;
    remove(scene: Scene): void;
    update(options: Partial<AreaLayerOptions>): void;
    private updateHighlightLayer;
    setIndex(zIndex: number): void;
    setMinZoom(minZoom: number): void;
    setMaxZoom(maxZoom: number): void;
    show(): void;
    hide(): void;
    getColorLegendItems(): import("@antv/l7plot-component").CategoryLegendListItem[];
    setActive(id: number): void;
    setSelect(id: number): void;
}
