import { ComputedRef } from 'vue'; export interface UseElapsedOptions { /** Wall-clock origin in epoch ms. Omit (or return undefined) to count from mount. */ startedAt?: () => number | undefined; /** Stops the interval when false — a hidden readout should not schedule work. @default true */ active?: () => boolean; /** @default 100 */ intervalMs?: number; } /** * `12.3s` below a minute, `2m 3.0s` above it. * * Milliseconds are floored to deciseconds before the branch, so the tenth * that reads `60.0s` under a naive `toFixed(1)` cannot occur. */ export declare function formatElapsed(ms: number): string; /** * Elapsed milliseconds since an origin, refreshed on an interval. * * The reading is always `Date.now() - origin` rather than a self-incrementing * counter: a background tab throttles timers, and a counter that adds a fixed * step per fire drifts behind wall clock for as long as the tab stays hidden. */ export declare function useElapsed(options?: UseElapsedOptions): ComputedRef;