import { useEffect } from 'react'; import { useMap } from './use-map.utils'; import { MapEvent } from '../types'; export const useMapEvent = (event: MapEvent, cb: (d: T) => void) => { const { isReady, addListener } = useMap(); useEffect(() => { if (isReady) { const unsub = addListener(event, cb); return () => { unsub?.(); }; } return () => {}; }, [isReady, event, addListener, cb]); };