import { Source } from '@antv/l7';
import { Plot } from '../../core/plot';
import { ChoroplethOptions, ChoroplethSourceOptions, DrillStack, ViewLevel, DrillStepConfig, FeatureCollection } from './types';
import { AreaLayer } from '../../layers/area-layer';
import { PathLayer } from '../../layers/path-layer';
import { TextLayer } from '../../layers/text-layer';
import type { LabelOptions, LegendOptions } from '../../types';
import { LayerGroup } from '../../core/layer/layer-group';
export type { ChoroplethOptions };
export declare class Choropleth extends Plot<ChoroplethOptions> {
    /**
     * 默认配置项
     */
    static DefaultOptions: Partial<ChoroplethOptions>;
    /**
     * 地理数据地址
     */
    static GeoDataUrl: string;
    /**
     * 行政数据地址
     */
    static GeoAreaUrl: string;
    /**
     * 图表类型
     */
    type: import("../../types").PlotType;
    /**
     * 国界数据
     */
    private chinaBoundaryData;
    /**
     * 当前行政数据数据
     */
    private currentDistrictData;
    /**
     * 国界图层
     */
    chinaBoundaryLayer: PathLayer | undefined;
    /**
     * 港澳界图层
     */
    chinaHkmBoundaryLayer: PathLayer | undefined;
    /**
     * 国界争议图层
     */
    chinaDisputeBoundaryLayer: PathLayer | undefined;
    /**
     * 填充面图层
     */
    fillAreaLayer: AreaLayer;
    /**
     * 标注图层
     */
    labelLayer: TextLayer | undefined;
    /**
     * 数据钻取路径
     */
    private drillSteps;
    /**
     * 钻取栈数据
     */
    private drillStacks;
    /**
     * 初始化数据
     */
    protected initSource(): void;
    /**
     * 渲染
     */
    render(): void;
    /**
     * 更新: 更新配置且重新渲染
     */
    update(options: Partial<ChoroplethOptions>): void;
    /**
     * 获取默认配置
     */
    protected getDefaultOptions(): Partial<ChoroplethOptions>;
    /**
     * 解析 source 配置
     */
    protected parserSourceConfig(source: ChoroplethSourceOptions): {
        data: FeatureCollection | undefined;
        sourceCFG: {
            transforms?: import("@antv/l7").ITransform[] | undefined;
        };
    };
    /**
     * 创建 source 实例
     */
    protected createSource(): Source;
    /**
     * 更新: 更新数据
     */
    changeData(data: any[], cfg?: Partial<Omit<ChoroplethSourceOptions, 'data'>>): void;
    /**
     * 创建图层
     */
    protected createLayers(source: Source): LayerGroup;
    /**
     * 创建中国国界线图层
     */
    private createCountryBoundaryLayer;
    /**
     * 创建数据标签图层
     */
    protected createLabelLayer(source: Source, label: LabelOptions): TextLayer;
    /**
     * 更新图层
     */
    protected updateLayers(options: Partial<ChoroplethOptions>): void;
    /**
     * 初始化图层事件
     */
    protected initLayersEvent(): void;
    /**
     * 初始化钻取事件
     */
    private initDrillEvent;
    /**
     * 重置钻取缓存数据
     */
    private drillReset;
    /**
     * 获取当前已钻取层级数据
     */
    getCurrentDrillSteps(): Required<ViewLevel>[];
    /**
     * 实现 legend 配置项
     */
    getLegendOptions(): LegendOptions;
    /**
     * 请求数据
     */
    private fetchData;
    /**
     * 请求初始化区域数据
     */
    private getInitDistrictData;
    /**
     * 请求区域数据
     */
    private getDistrictData;
    /**
     * 向下钻取事件回调
     */
    private onDrillDownHander;
    /**
     * 向上钻取事件回调
     */
    private onDrillUpHander;
    /**
     * 向下钻取方法
     */
    drillDown(view: ViewLevel, config?: DrillStepConfig): void;
    /**
     * 向上钻取方法
     */
    drillUp(config?: DrillStepConfig, level?: ViewLevel['level']): void;
    /**
     * 更新显示区域
     */
    changeView(view: ViewLevel, config?: DrillStepConfig): Promise<DrillStack | undefined>;
}
