UNPKG

@carbon/react

Version:

React components for the Carbon Design System

20 lines (19 loc) 826 B
/** * Copyright IBM Corp. 2016, 2023 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ import { SetStateAction } from 'react'; /** * `useDelayedState` mirrors `useState` but also allows you to add a delay to * when your state updates. You can provide a second argument to `setState`, * `delayMs`, which will be the time in milliseconds after which the state is * updated. * * This hook will clean up pending timers in `useEffect` and will cancel any * pending timers when a `setState` is called before the state is updated from * a previous call */ export type DispatchWithDelay<A> = (value: A, delayMS?: number) => void; export declare function useDelayedState<S>(initialState: S): [S, DispatchWithDelay<SetStateAction<S>>];