import { IFormattedTime } from '../lib/time-format'; export type TimerVariant = 'timer' | 'countdown' | 'stopwatch'; export type ILap = { number: number; durationMs: number; cumulativeMs: number; formatted: IFormattedTime; }; export type TimerState = { variant: TimerVariant; isRunning: boolean; elapsedMs: number; durationMs: number; isComplete: boolean; laps: readonly ILap[]; previousLapMs: number; }; export type TimerAction = { type: 'tick'; deltaMs: number; } | { type: 'start'; } | { type: 'stop'; } | { type: 'reset'; } | { type: 'toggle'; } | { type: 'lap'; } | { type: 'restart'; }; export declare function timerReducer(state: TimerState, action: TimerAction): TimerState; export declare function createInitialTimerState(options: { variant?: TimerVariant; durationMs?: number; autoStart?: boolean; }): TimerState; //# sourceMappingURL=timer.d.ts.map