import { useCallback } from 'react'; import { useRefCopy } from './useRefCopy'; export const useStableHandler = any>( handler: T ) => { const handlerRef = useRefCopy(handler); // eslint-disable-next-line react-hooks/exhaustive-deps return useCallback(((...args) => handlerRef.current(...args)) as T, [ handlerRef, ]); };