--- 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 ```