import { type LatLng } from "./geo.js"; import type { Layer } from "./layer.js"; import { Orihon } from "./map.js"; import { GraticuleLayer, graticuleLayer } from "./layers/graticule-layer.js"; import { Polyline, Rectangle, type PathOptions } from "./layers/vector.js"; import { Tooltip } from "./overlays/div-overlay.js"; import { Control, type ControlOptions } from "./ui/control.js"; export interface FullscreenControlOptions extends ControlOptions { title?: string; exitTitle?: string; } export declare class FullscreenControl extends Control { #private; button: HTMLButtonElement | null; fallbackActive: boolean; private readonly fullscreenChange; onAdd(map: Orihon): void; onRemove(): void; isFullscreen(): boolean; toggle(): Promise; render(): void; } export interface MeasureControlOptions extends ControlOptions, PathOptions { title?: string; units?: "metric" | "imperial" | "map"; geodesic?: boolean; } export declare class MeasureControl extends Control { #private; button: HTMLButtonElement | null; active: boolean; readonly points: LatLng[]; line: Polyline | null; tip: Tooltip | null; private preview; private readonly priorBehaviors; private readonly keyDown; private readonly mapClick; onAdd(map: Orihon): void; onRemove(): void; start(): this; finish(): this; clear(): this; getPoints(): LatLng[]; getDistance(includePreview?: boolean): number; } export interface MiniMapControlOptions extends ControlOptions { zoomOffset?: number; width?: number; height?: number; } export declare class MiniMapControl extends Control { #private; readonly layer: Layer; miniMap: Orihon | null; viewportBounds: Rectangle | null; private readonly sync; constructor(layer: Layer, options?: MiniMapControlOptions); onAdd(map: Orihon): void; onRemove(): void; } export declare function fullscreenControl(options?: FullscreenControlOptions): FullscreenControl; export declare function measureControl(options?: MeasureControlOptions): MeasureControl; export declare function miniMap(layer: Layer, options?: MiniMapControlOptions): MiniMapControl; export { GraticuleLayer, graticuleLayer }; export type { GraticuleLayerOptions, GraticuleUnits } from "./layers/graticule-layer.js"; //# sourceMappingURL=controls.d.ts.map