ngx-open-map-wrapper/lib/adapters/map-adapter.interface.d.ts

41 lines
921 B
TypeScript

export interface MapOptions {
center: LatLng;
zoom: number;
styleUrl: string;
tileUrl: string;
}
export interface GeoPoint {
x: number;
y: number;
}
export interface Zone {
id: string;
name?: string;
color?: string;
opacity?: number;
polygon: GeoPoint[];
shippingFee?: number;
deliverySchedule?: string;
}
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?: { id?: string; color?: string }): void;
removeMarker(id?: string): void;
destroy(): void;
addZone(zone: Zone[]): void;
updateZone(zone: Zone[]): void;
openZonePopup(zone: Zone) : void
closePopup(): void;
on(
type: string,
event: (e: any) => void,
): void;
}