vue3-maplibre-gl
Version:
Vue 3 components and composables for MapLibre GL JS - Build interactive maps with ease
39 lines (38 loc) • 1.49 kB
TypeScript
import { Nullable } from '../../types';
import { MaybeRef } from 'vue';
import { Map, EaseToOptions, LngLatLike, CameraOptions } from 'maplibre-gl';
/**
* Ease animation status enum for better state management
*/
export declare enum EaseStatus {
NotStarted = "not-started",
Easing = "easing",
Completed = "completed",
Error = "error"
}
interface EaseToProps {
map: MaybeRef<Nullable<Map>>;
options?: EaseToOptions;
debug?: boolean;
}
interface EaseToActions {
easeTo: (options?: EaseToOptions) => Promise<void>;
easeToCenter: (center: LngLatLike, options?: Omit<EaseToOptions, 'center'>) => Promise<void>;
easeToZoom: (zoom: number, options?: Omit<EaseToOptions, 'zoom'>) => Promise<void>;
easeToBearing: (bearing: number, options?: Omit<EaseToOptions, 'bearing'>) => Promise<void>;
easeToPitch: (pitch: number, options?: Omit<EaseToOptions, 'pitch'>) => Promise<void>;
stopEasing: () => void;
getCurrentCamera: () => CameraOptions | null;
easeStatus: Readonly<EaseStatus>;
isEasing: boolean;
}
/**
* Composable for managing smooth map camera transitions with enhanced error handling
* Provides reactive ease-to animations with validation and debugging capabilities
*
* @param props - Configuration options for ease-to animations
* @returns Enhanced actions and state for camera animations
*/
export declare function useEaseTo(props: EaseToProps): EaseToActions;
export {};
//# sourceMappingURL=useEaseTo.d.ts.map