leaflet
Version:
JavaScript library for mobile-friendly interactive maps
42 lines (41 loc) • 1.5 kB
TypeScript
import { Handler } from '../../core/Handler.js';
import * as DomEvent from '../../dom/DomEvent.js';
import { LatLngBounds } from '../../geo/LatLngBounds.js';
export type BoxZoomEventProps = {
/**
* The geographical bounds of the box the map zooms to.
*/
boxZoomBounds: LatLngBounds;
};
import type { Point } from '../../geometry/Point.js';
/**
* @typedef {Object} BoxZoomEventProps
* @property {LatLngBounds} boxZoomBounds The geographical bounds of the box the map zooms to.
*/
/** @import {Point} from '../../geometry/Point.js' */
export declare class BoxZoomHandler extends Handler {
_moved: boolean | undefined;
/** @type {Point} */
_startPoint: Point;
/** @type {HTMLDivElement} */
_box: HTMLDivElement;
/** @type {Point} */
_point: Point;
_resetStateTimeout: number | undefined;
addHooks(): void;
removeHooks(): void;
/** Returns `true` if a box is being drawn or was just drawn, e.g. to ignore the click that ends it. */
moved(): boolean | undefined;
_resetState(): void;
/** @param {typeof DomEvent.on} onOff */
_toggleListeners(onOff: typeof DomEvent.on): void;
/** @param {PointerEvent} e */
_onPointerDown(e: PointerEvent): false | undefined;
/** @param {PointerEvent} e */
_onPointerMove(e: PointerEvent): void;
_finish(): void;
/** @param {PointerEvent} e */
_onPointerUp(e: PointerEvent): void;
/** @param {KeyboardEvent} e */
_onKeyDown(e: KeyboardEvent): void;
}