UNPKG

vue-maplibre-gl

Version:

Vue 3 plugin for maplibre-gl

31 lines (30 loc) 1.41 kB
import { DrawPlugin } from './plugin.ts'; import { DrawFeatureProperties, DrawModel } from './types.ts'; import { Feature, FeatureCollection, MultiPoint, Polygon, Position } from 'geojson'; import { GeoJSONSource, Map, MapLayerMouseEvent, MapLayerTouchEvent } from 'maplibre-gl'; export declare abstract class AbstractDrawMode { isTouchEventSupported: boolean; plugin: DrawPlugin; map: Map; source: GeoJSONSource; collection: FeatureCollection<Polygon | MultiPoint, DrawFeatureProperties> | undefined; protected constructor(plugin: DrawPlugin, map: Map, source: GeoJSONSource); hasPolygon(): boolean; getPolygon(): Feature<Polygon, DrawFeatureProperties>; clonePolygon(): Position[]; isNearby(a: Position, b: { x: number; y: number; }, isTouch: boolean): boolean; getMidpoint(a: Position, b: Position): Position; clear(): void; render(): void; emitOnUpdate(feature?: Feature<Polygon, DrawFeatureProperties>): void; createCircle(center: Position, radius: number, steps?: number): Feature<Polygon, DrawFeatureProperties>; getAreaSize(model: Feature<Polygon, DrawFeatureProperties>): number; isTouchEvent(e: MapLayerMouseEvent | MapLayerTouchEvent): boolean; abstract register(): void; abstract unregister(): void; abstract setModel(model: DrawModel | undefined): void; abstract onOptionsUpdate(): void; }