33 lines
818 B
TypeScript
33 lines
818 B
TypeScript
import * as maplibregl from 'maplibre-gl';
|
|
import * as L from 'leaflet';
|
|
export interface MapOptions {
|
|
center: LatLng;
|
|
zoom: number;
|
|
styleUrl: string;
|
|
tileUrl: string;
|
|
}
|
|
export interface GeoPoint {
|
|
x: number;
|
|
y: number;
|
|
}
|
|
export interface DeliveryZone {
|
|
id: string;
|
|
name?: string;
|
|
color?: string;
|
|
polygon: GeoPoint[];
|
|
}
|
|
|
|
export type LatLng = [number, number];
|
|
export declare function getLngLat(latLng: LatLng): [number, number];
|
|
export interface IMapAdapter {
|
|
init(container: HTMLElement, options: MapOptions): void;
|
|
setCenter(latLng: LatLng): void;
|
|
setZoom(zoom: number): void;
|
|
addMarker(latLng: LatLng, options?: {
|
|
color?: string;
|
|
}): void;
|
|
destroy(): void;
|
|
addZone(zone: DeliveryZone[]): void;
|
|
updateZone(one: DeliveryZone[]): void;
|
|
}
|