import { useCallback } from "react"; type TUseDropdownKeyDown = { (onEnterKeyDown: () => void, onEscKeyDown: () => void): (event: React.KeyboardEvent) => void; }; export const useDropdownKeyDown: TUseDropdownKeyDown = (onEnterKeyDown, onEscKeyDown) => { const handleKeyDown = useCallback( (event: React.KeyboardEvent) => { if (event.key === "Enter") { event.stopPropagation(); event.preventDefault(); onEnterKeyDown(); } else if (event.key === "Escape") { event.stopPropagation(); event.preventDefault(); onEscKeyDown(); } }, [onEnterKeyDown, onEscKeyDown] ); return handleKeyDown; };