import { Layer } from 'ol/layer';
import { default as VectorSource } from 'ol/source/Vector';
import { BaseLayer } from './BaseLayer';
import { LayerFilter, FilterOperator } from '../../types';

/**
 * 热力图图层处理器
 */
export declare class HeatmapLayerHandler extends BaseLayer {
    private currentFilters;
    private originalFeatures;
    private weightProperty;
    createLayer(): Layer<VectorSource>;
    /**
     * 创建矢量数据源
     */
    private createVectorSource;
    /**
     * 应用过滤器（实现基类的抽象方法）
     */
    protected applyFilters(): void;
    /**
     * 检查要素是否符合过滤条件
     */
    private checkFeatureAgainstFilter;
    /**
     * 检查属性过滤条件
     */
    private checkAttributeFilter;
    /**
     * 根据属性过滤要素（便捷方法）
     */
    filterFeaturesByProperty(property: string, value: any, operator?: FilterOperator): void;
    /**
     * 清除所有过滤器
     */
    clearAllFeatureFilters(): void;
    /**
     * 获取当前应用的过滤器
     */
    getCurrentFilters(): LayerFilter[];
    /**
     * 获取原始要素数量（未过滤的）
     */
    getOriginalFeatureCount(): number;
    /**
     * 获取过滤后的要素数量
     */
    getFilteredFeatureCount(): number;
    /**
     * 获取权重函数
     */
    private getWeightFunction;
    /**
     * 设置模糊半径
     */
    setBlur(blur: number): void;
    /**
     * 设置热点半径
     */
    setRadius(radius: number): void;
    /**
     * 设置渐变色
     */
    setGradient(gradient: string[]): void;
    /**
     * 设置权重属性
     */
    setWeightProperty(property: string): void;
    /**
     * 添加热点数据
     */
    addHeatPoints(points: Array<{
        coordinates: number[];
        weight?: number;
        properties?: any;
    }>): void;
    /**
     * 清空热点数据
     */
    clearHeatPoints(): void;
    /**
     * 获取热点数量
     */
    getHeatPointCount(): number;
}
//# sourceMappingURL=HeatmapLayerHandler.d.ts.map