import { Nullable } from '../../types'; import { ComputedRef, MaybeRef } from 'vue'; import { Map, AnimationOptions, CameraOptions } from 'maplibre-gl'; export declare enum ZoomStatus { NotStarted = "not-started", Zooming = "zooming", Completed = "completed", Error = "error" } interface ZoomToProps { map: MaybeRef>; zoom?: number; options?: AnimationOptions; debug?: boolean; autoZoom?: boolean; } interface ZoomToActions { zoomTo: (zoom: number, options?: AnimationOptions) => Promise; stopZooming: () => void; getCurrentZoom: () => number | null; getCurrentCamera: () => CameraOptions | null; validateZoomLevel: (zoom: number) => boolean; zoomStatus: ComputedRef; isZooming: ComputedRef; } interface ZoomInProps { map: MaybeRef>; options?: AnimationOptions; debug?: boolean; autoZoom?: boolean; } interface ZoomInActions { zoomIn: (options?: AnimationOptions) => Promise; stopZooming: () => void; getCurrentZoom: () => number | null; getCurrentCamera: () => CameraOptions | null; zoomStatus: ComputedRef; isZooming: ComputedRef; } interface ZoomOutProps { map: MaybeRef>; options?: AnimationOptions; debug?: boolean; autoZoom?: boolean; } interface ZoomOutActions { zoomOut: (options?: AnimationOptions) => Promise; stopZooming: () => void; getCurrentZoom: () => number | null; getCurrentCamera: () => CameraOptions | null; zoomStatus: ComputedRef; isZooming: ComputedRef; } export declare function useZoomTo(props: ZoomToProps): ZoomToActions; export declare function useZoomTo(map: MaybeRef>, options?: AnimationOptions & { zoom: number; }): { zoomTo: (zoomVal: number, options?: AnimationOptions) => void; }; export declare function useZoomIn(props: ZoomInProps): ZoomInActions; export declare function useZoomIn(map: MaybeRef>, options?: AnimationOptions): { zoomIn: (options?: AnimationOptions) => void; }; export declare function useZoomOut(props: ZoomOutProps): ZoomOutActions; export declare function useZoomOut(map: MaybeRef>, options?: AnimationOptions): { zoomOut: (options?: AnimationOptions) => void; }; export {};