import { Map as OLMap, Feature } from 'ol';
import { default as VectorLayer } from 'ol/layer/Vector';
import { default as VectorSource } from 'ol/source/Vector';
import { Geometry } from 'ol/geom';
import { LayerConfig } from '../../types';
import { BaseLayer } from './BaseLayer';

/**
 * GML图层处理器
 * 支持加载和显示GML格式的矢量数据
 */
export declare class GMLLayerHandler extends BaseLayer {
    private vectorSource;
    private gmlFormat;
    constructor(config: LayerConfig, map?: OLMap);
    /**
     * 初始化GML格式处理器
     */
    private initializeGMLFormat;
    /**
     * 创建图层
     */
    createLayer(): VectorLayer<VectorSource>;
    /**
     * 创建样式
     */
    private createStyle;
    /**
     * 获取要素文本
     */
    private getFeatureText;
    /**
     * 设置事件监听器
     */
    private setupEventListeners;
    /**
     * 要素加载完成后的处理
     */
    private onFeaturesLoaded;
    /**
     * 刷新图层数据
     */
    refresh(): void;
    /**
     * 设置GML URL
     */
    setUrl(url: string): void;
    /**
     * 设置GML版本
     */
    setGMLVersion(version: string): void;
    /**
     * 设置坐标系
     */
    setSrsName(srsName: string): void;
    /**
     * 获取要素数量
     */
    getFeatureCount(): number;
    /**
     * 获取图层范围
     */
    getExtent(): number[] | null;
    /**
     * 根据属性筛选要素
     */
    filterFeatures(property: string, value: any): void;
    /**
     * 清除筛选
     */
    clearFilter(): void;
    /**
     * 应用过滤器（实现基类的抽象方法）
     */
    protected applyFilters(): void;
    /**
     * 检查要素是否符合过滤器条件
     */
    private checkFeatureAgainstFilter;
    /**
     * 检查属性过滤器
     */
    private checkAttributeFilter;
    /**
     * 便捷方法：按属性值过滤（保持向后兼容）
     * @deprecated 建议使用 addAttributeFilter 方法
     */
    filterFeaturesByProperty(property: string, value: any): void;
    /**
     * 便捷方法：清除所有过滤器（保持向后兼容）
     * @deprecated 建议使用 clearAllFilters 方法
     */
    clearAllFeatureFilters(): void;
    /**
     * 获取要素属性信息
     */
    getFeatureProperties(feature: Feature<Geometry>): Record<string, any>;
    /**
     * 获取GML配置信息
     */
    getGMLConfig(): any;
    /**
     * 销毁图层
     */
    destroy(): void;
}
//# sourceMappingURL=GMLLayerHandler.d.ts.map