--- category: Animation --- # useTimeout Update value after a given time with controls. ## Usage ```ts import { useTimeout } from '@vueuse/core'; const ready = useTimeout(1000); ``` ```ts import { useTimeout } from '@vueuse/core'; // ---cut--- const { ready, start, stop } = useTimeout(1000, { controls: true }); ``` ```ts import { promiseTimeout } from '@vueuse/core'; console.log(ready.value); // false await promiseTimeout(1200); console.log(ready.value); // true ``` ## Type Declarations ```ts export interface UseTimeoutOptions extends UseTimeoutFnOptions { /** * Expose more controls * * @default false */ controls?: Controls; /** * Callback on timeout */ callback?: Fn; } export type UseTimeoutReturn = | ComputedRef | ({ readonly ready: ComputedRef; } & Stoppable); /** * @deprecated use UseTimeoutReturn instead */ export type UseTimoutReturn = UseTimeoutReturn; /** * Update value after a given time with controls. * * @see {@link https://vueuse.org/useTimeout} * @param interval * @param options */ export declare function useTimeout( interval?: MaybeRefOrGetter, options?: UseTimeoutOptions, ): ComputedRef; export declare function useTimeout( interval: MaybeRefOrGetter, options: UseTimeoutOptions, ): { ready: ComputedRef; } & Stoppable; ```