import { useState, useLayoutEffect } from 'react'; const useGetElementSize = (ref: React.RefObject) => { const [size, setSize] = useState({ width: 0, height: 0, }); useLayoutEffect(() => { if (ref.current) { setSize({ width: ref.current.offsetWidth, height: ref.current.offsetHeight, }); } }, [ref]); return size; }; export default useGetElementSize;