67 lines
2.3 KiB
TypeScript
67 lines
2.3 KiB
TypeScript
import { Control, Layer, Map, ControlOptions, PathOptions, MarkerOptions, LocationEvent, LatLngBounds, LocateOptions as LeafletLocateOptions } from "leaflet";
|
|
|
|
export type SetView = false | "once" | "always" | "untilPan" | "untilPanOrZoom";
|
|
export type ClickBehavior = "stop" | "setView";
|
|
|
|
export interface StringsOptions {
|
|
title?: string | undefined;
|
|
metersUnit?: string | undefined;
|
|
feetUnit?: string | undefined;
|
|
popup?: string | undefined;
|
|
outsideMapBoundsMsg?: string | undefined;
|
|
}
|
|
|
|
export interface ClickBehaviorOptions {
|
|
inView?: ClickBehavior | undefined;
|
|
outOfView?: ClickBehavior | undefined;
|
|
inViewNotFollowing?: ClickBehavior | "inView" | undefined;
|
|
}
|
|
|
|
export interface LocateOptions extends ControlOptions {
|
|
layer?: Layer | undefined;
|
|
setView?: SetView | undefined;
|
|
keepCurrentZoomLevel?: boolean | undefined;
|
|
initialZoomLevel?: number | boolean | undefined;
|
|
getLocationBounds?: ((locationEvent: LocationEvent) => LatLngBounds) | undefined;
|
|
flyTo?: boolean | undefined;
|
|
clickBehavior?: ClickBehaviorOptions | undefined;
|
|
returnToPrevBounds?: boolean | undefined;
|
|
cacheLocation?: boolean | undefined;
|
|
drawCircle?: boolean | undefined;
|
|
drawMarker?: boolean | undefined;
|
|
showCompass?: boolean | undefined;
|
|
markerClass?: any;
|
|
compassClass?: any;
|
|
circleStyle?: PathOptions | undefined;
|
|
markerStyle?: PathOptions | MarkerOptions | undefined;
|
|
compassStyle?: PathOptions | undefined;
|
|
followCircleStyle?: PathOptions | undefined;
|
|
followMarkerStyle?: PathOptions | undefined;
|
|
icon?: string | undefined;
|
|
iconLoading?: string | undefined;
|
|
iconElementTag?: string | undefined;
|
|
textElementTag?: string | undefined;
|
|
circlePadding?: number[] | undefined;
|
|
metric?: boolean | undefined;
|
|
createButtonCallback?: ((container: HTMLDivElement, options: LocateOptions) => { link: HTMLAnchorElement; icon: HTMLElement }) | undefined;
|
|
onLocationError?: ((event: ErrorEvent, control: LocateControl) => void) | undefined;
|
|
onLocationOutsideMapBounds?: ((control: LocateControl) => void) | undefined;
|
|
showPopup?: boolean | undefined;
|
|
strings?: StringsOptions | undefined;
|
|
locateOptions?: LeafletLocateOptions | undefined;
|
|
}
|
|
|
|
export class LocateControl extends Control {
|
|
constructor(locateOptions?: LocateOptions);
|
|
|
|
onAdd(map: Map): HTMLElement;
|
|
|
|
start(): void;
|
|
|
|
stop(): void;
|
|
|
|
stopFollowing(): void;
|
|
|
|
setView(): void;
|
|
}
|