beta-parity-react
Version:
Beta Parity React Components
28 lines • 1.18 kB
TypeScript
/// <reference types="react" />
export type UseHoverFocus = ReturnType<typeof useHoverFocus>;
export type EventHandlers = {
onMouseEnter?: (event: React.MouseEvent) => void;
onMouseLeave?: (event: React.MouseEvent) => void;
onTouchStart?: (event: React.TouchEvent) => void;
onTouchEnd?: (event: React.TouchEvent) => void;
onFocus?: (event: React.MouseEvent) => void;
onBlur?: (event: React.MouseEvent) => void;
};
/**
* Custom hook to handle hover and focus events for both desktop and mobile devices.
* @returns {object} - Object containing hover, focus states, and combined event handlers.
*/
declare const useHoverFocus: () => {
isHovered: boolean;
isFocused: boolean;
getEventHandlers: (customHandlers: EventHandlers) => {
onMouseEnter: (event: React.MouseEvent) => void;
onMouseLeave: (event: React.MouseEvent) => void;
onTouchStart: (event: React.MouseEvent) => void;
onTouchEnd: (event: React.MouseEvent) => void;
onFocus: (event: React.MouseEvent) => void;
onBlur: (event: React.MouseEvent) => void;
};
};
export default useHoverFocus;
//# sourceMappingURL=useHoverFocus.d.ts.map