import type { MapProvider, LayerUpdate, LayerErrorCallback } from '../../types/mapprovider'; import type { ProviderOptions } from '../../types/provideroptions'; import type { LayerConfig } from '../../types/layerconfig'; import type { LonLat } from '../../types/lonlat'; import * as L from 'leaflet'; export declare class LeafletProvider implements MapProvider { private map?; private layers; private baseLayers; private hiddenLayerGroups; private googleLogoAdded; private unsubscribeResize; private shadowRoot; private injectedStyle; private layerErrorCallbacks; private layerErrorCleanups; init(options: ProviderOptions): Promise; updateLayer(layerId: string, update: LayerUpdate): Promise; addLayerToGroup(layerConfig: LayerConfig): Promise; addBaseLayer(layerConfig: LayerConfig, basemapid: string, layerElementId: string): Promise; setBaseLayer(groupId: string, layerElementId: string): Promise; private getLayerId; private normalizeAttribution; private _getLayerById; private createLayer; private updateGeoJSONLayer; private createGeoJSONLayer; private createXYZLayer; private updateOSMLayer; private createOSMLayer; private createWMSLayer; private buildArcGISUrl; private createArcGISLayer; private updateArcGISLayer; private createGoogleLayer; private tryParseStyles; destroy(): Promise; setView([lon, lat]: LonLat, zoom: number): Promise; getView(): { center: LonLat; zoom: number; } | null; onViewChange(callback: (view: { center: LonLat; zoom: number; }) => void): () => void; onLayerError(layerId: string, callback: LayerErrorCallback): void; offLayerError(layerId: string): void; removeLayer(layerId: string): Promise; setZIndex(layerId: string, zIndex: number): Promise; setOpacity(layerId: string, opacity: number): Promise; private setOpacityByLayer; setVisible(layerId: string, visible: boolean): Promise; private setVisibleByLayer; private setLayerOpacity; ensureGroup(groupId: string, visible: boolean, _opts?: { basemapid?: string; }): Promise; private _ensureGroup; private _getLayerGroupById; setGroupVisible(groupId: string, visible: boolean): Promise; private updateWKTLayer; private createWKTLayer; private wktToGeoJSON; private createGeoTIFFLayer; private updateGeoTIFFLayer; private createWCSLayer; private updateWCSLayer; /** * Convert a Geostyler style to Leaflet GeoJSON options */ private createGeostylerLeafletOptions; private createLeafletStyle; private createLeafletPoint; private bindLeafletPopup; private createWFSLayer; private updateWFSLayer; private fetchWFSFromUrl; private appendParams; getMap(): L.Map; }