/** * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import type {Config} from '@jest/types'; import type {ModuleMocker} from 'jest-mock'; import {StackTraceConfig} from 'jest-message-util'; declare type Callback = (...args: Array) => void; export declare class LegacyFakeTimers { private _cancelledTicks; private _config; private _disposed?; private _fakeTimerAPIs; private _global; private _immediates; private _maxLoops; private _moduleMocker; private _now; private _ticks; private _timerAPIs; private _timers; private _uuidCounter; private _timerConfig; constructor({ global, moduleMocker, timerConfig, config, maxLoops, }: { global: typeof globalThis; moduleMocker: ModuleMocker; timerConfig: TimerConfig; config: StackTraceConfig; maxLoops?: number; }); clearAllTimers(): void; dispose(): void; reset(): void; runAllTicks(): void; runAllImmediates(): void; private _runImmediate; runAllTimers(): void; runOnlyPendingTimers(): void; advanceTimersToNextTimer(steps?: number): void; advanceTimersByTime(msToRun: number): void; runWithRealTimers(cb: Callback): void; useRealTimers(): void; useFakeTimers(): void; getTimerCount(): number; private _checkFakeTimers; private _createMocks; private _fakeClearTimer; private _fakeClearImmediate; private _fakeNextTick; private _fakeRequestAnimationFrame; private _fakeSetImmediate; private _fakeSetInterval; private _fakeSetTimeout; private _getNextTimerHandle; private _runTimerHandle; } export declare class ModernFakeTimers { private _clock; private _config; private _fakingTime; private _global; private _fakeTimers; constructor({ global, config, }: { global: typeof globalThis; config: Config.ProjectConfig; }); clearAllTimers(): void; dispose(): void; runAllTimers(): void; runOnlyPendingTimers(): void; advanceTimersToNextTimer(steps?: number): void; advanceTimersByTime(msToRun: number): void; runAllTicks(): void; useRealTimers(): void; useFakeTimers(fakeTimersConfig?: Config.FakeTimersConfig): void; reset(): void; setSystemTime(now?: number | Date): void; getRealSystemTime(): number; getTimerCount(): number; private _checkFakeTimers; private _toSinonFakeTimersConfig; } declare type TimerConfig = { idToRef: (id: number) => Ref; refToId: (ref: Ref) => number | void; }; export {};