import type { TimerId } from "./types"; export declare enum TimerWorkerCommandName { PING = "ping", SET = "set", CLEAR = "clear" } export declare enum TimerWorkerMessageName { READY = "ready", TICK = "tick" } export type TimerWorkerCommand = { type: TimerWorkerCommandName.PING; } | { type: TimerWorkerCommandName.SET; id: TimerId; delay: number; repeat: boolean; } | { type: TimerWorkerCommandName.CLEAR; id: TimerId; }; export type TimerWorkerMessage = { type: TimerWorkerMessageName.READY; } | { type: TimerWorkerMessageName.TICK; id: TimerId; }; export type TimerWorkerScope = { onmessage: ((event: { data: TimerWorkerCommand; }) => void) | null; postMessage: (message: TimerWorkerMessage) => void; setTimeout: (handler: VoidFunction, delay: number) => number; setInterval: (handler: VoidFunction, delay: number) => number; clearTimeout: (id: number) => void; clearInterval: (id: number) => void; }; export declare function timerWorker(): void;