Obvody/www/locate/L.Control.Locate.d.ts

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;
}