import type { AsyncTimer, SyncTimer, Timer } from '@gibme/timer'; declare global { interface JQueryStatic { /** * A helper class that performs an async function at the given interval and emits the result on a regular basis * * @param func * @param interval * @param autoStart */ asyncTimer(func: () => Promise, interval: number, autoStart?: boolean): AsyncTimer; /** * A helper class that performs a sync function at the given interval and emits the result on a regular basis * * @param func * @param interval * @param autoStart */ syncTimer(func: () => T, interval: number, autoStart?: boolean): SyncTimer; /** * Creates a new timer instance * * @param interval * @param autostart * @param args are emitted with each tick event */ timer(interval: number, autostart?: boolean, ...args: any[]): Timer; } interface Window { AsyncTimer: typeof AsyncTimer; SyncTimer: typeof SyncTimer; Timer: typeof Timer; } } export {};