import { useEffect, useRef } from 'react' export function useInterval(callback: () => void, delay: number | false) { const savedCallback = useRef(callback) useEffect(() => { savedCallback.current = callback }, [callback]) useEffect(() => { if (delay === false) { return } const id = setInterval(() => { savedCallback.current() }, delay) return () => { clearInterval(id) } }, [delay]) }