/**
 * The `Timer` class.
 *
 * @public
 */
export declare class Timer {
    private readonly _callback;
    private _timerId;
    private _startTime;
    private _duration;
    private _remaining;
    /**
     * Constructs a new instance of the `Timer` class.
     *
     * @public
     */
    constructor(callback: Function, duration: number);
    static empty(callback: Function): Timer;
    setDuration(duration: number): void;
    /**
     * Starts the timer.
     */
    start(): void;
    /**
     * Restarts the timer by setting remaining time to duration.
     */
    restart(): void;
    pause(): void;
    resume(): void;
    destroy(): void;
}
//# sourceMappingURL=Timer.d.ts.map