UNPKG

vue3-maplibre-gl

Version:

Vue 3 components and composables for MapLibre GL JS - Build interactive maps with ease

37 lines (36 loc) 1.38 kB
import { Nullable } from '../../types'; import { MaybeRef } from 'vue'; import { Map, MapLayerEventType, LayerSpecification } from 'maplibre-gl'; /** * Layer event listener status enum for better state management */ export declare enum LayerEventListenerStatus { NotAttached = "not-attached", Attached = "attached", Error = "error" } interface LayerEventListenerProps<T extends keyof MapLayerEventType> { map: MaybeRef<Nullable<Map>>; layer: MaybeRef<Nullable<LayerSpecification | string>>; event: keyof MapLayerEventType; on: (e: MapLayerEventType[T]) => void; debug?: boolean; once?: boolean; } interface LayerEventListenerActions { removeListener: () => void; attachListener: () => void; isListenerAttached: boolean; listenerStatus: Readonly<LayerEventListenerStatus>; layerId: string | null; } /** * Composable for managing MapLibre GL Layer Event Listeners * Provides reactive layer event listener with error handling, performance optimizations, and enhanced API * * @param props - Configuration options for the layer event listener * @returns Enhanced actions and state for the layer event listener */ export declare function useLayerEventListener<T extends keyof MapLayerEventType>(props: LayerEventListenerProps<T>): LayerEventListenerActions; export {}; //# sourceMappingURL=useLayerEventListener.d.ts.map