UNPKG

state-hooks

Version:

Essential set of React Hooks for convenient state management.

24 lines (23 loc) 799 B
/// <reference types="react" /> /** * Wraps a state hook to add boolean toggle functionality. * * @param useStateResult Return value of a state hook. * @param useStateResult.0 Current state. * @param useStateResult.1 State updater function. * @returns State hook result extended with a `toggle` function. * * @example * function Component() { * const [isPressed, setPressed, togglePressed] = useToggle( * useState<boolean>(false), * ); * // ... * return ( * <button type="button" aria-pressed={isPressed} onClick={togglePressed}> * Toggle state * </button> * ); * } */ export default function useToggle([value, setValue]: [boolean, React.Dispatch<React.SetStateAction<boolean>>]): [boolean, React.Dispatch<React.SetStateAction<boolean>>, () => void];