import { type ProjectionLike } from 'ol/proj.js'; import { type MapEventDetail } from './type.js'; import { LatLngBounds } from './models/LatLngBounds.js'; import { LatLng } from './models/LatLng.js'; type MapOptions = { projection?: ProjectionLike; zoom?: number; minZoom?: number; maxZoom?: number; showGraticule?: boolean; showBoundingBoxSelection?: boolean; showPolygonSelection?: boolean; showPointSelection?: boolean; showCircleSelection?: boolean; noWorldWrap?: boolean; value?: string; fitToValue?: boolean; getGeoJson?: (shapeId: string) => Promise; onShapeLoading?: (loading: boolean) => void; onMouseMove?: (coordinate: [number, number]) => void; onDraw?: (detail: MapEventDetail) => void; }; export declare class MapService { #private; constructor(el: HTMLElement, options: MapOptions); toggleLayerVisibility(name: string, show: boolean): void; setZoom(zoom: number): void; setValue(value: string): void; /** * takes a string and parses it into a point, bounding box * TODO: support parsing circle and polygon */ parseLocationString(location: string): LatLng | LatLngBounds; updateDrawToolbarVisibility(options: { showBoundingBoxSelection?: boolean; showPolygonSelection?: boolean; showPointSelection?: boolean; showCircleSelection?: boolean; }): void; handleShapeSelect(event: Event): Promise; } export {};