import { ComputedRef, MaybeRefOrGetter } from 'vue'; import { TimerVariant, TimeFormat, ILap } from '@wolf-tui/shared'; export interface IUseTimerStateProps { /** * Timer variant. Accepts plain value, ref, or getter for reactivity. * * @default 'timer' */ variant?: MaybeRefOrGetter; /** * Start automatically on mount. * * @default true */ autoStart?: boolean; /** * Tick interval in milliseconds. * * @default 1000 */ interval?: MaybeRefOrGetter; /** * Time display format. * * @default 'digital' */ format?: MaybeRefOrGetter; /** * Duration for countdown variant (ms). */ durationMs?: MaybeRefOrGetter; /** * Callback on each tick. */ onTick?: (elapsedMs: number) => void; /** * Callback when countdown completes. */ onComplete?: () => void; /** * Callback on lap. */ onLap?: (lap: ILap) => void; } export interface ITimerState { formattedTime: ComputedRef; isRunning: ComputedRef; isPaused: ComputedRef; isComplete: ComputedRef; elapsedMs: ComputedRef; laps: ComputedRef; variant: TimerVariant; start: () => void; stop: () => void; toggle: () => void; reset: () => void; restart: () => void; lap: () => void; } export declare const useTimerState: ({ variant: variantProp, autoStart, interval: intervalProp, format: formatProp, durationMs: durationMsProp, onTick, onComplete, onLap, }: IUseTimerStateProps) => ITimerState; //# sourceMappingURL=use-timer-state.d.ts.map