export declare const waitForDuration: (duration: number) => Promise<void>;
export declare const waitForTick: () => Promise<void>;
export declare function debounce<A, R>(fn: (x: A) => R, duration: number, immediate?: boolean): (x: A) => R;
export declare function debounce<A, B, R>(fn: (x: A, y: B) => R, duration: number, immediate?: boolean): (x: A) => R;
export declare function debounce<A, B, C, R>(fn: (x: A, y: B, z: C) => R, duration: number, immediate?: boolean): (x: A) => R;
export declare function throttle<A, R>(fn: (x: A) => R, duration: number): (x: A) => R;
export declare function throttle<A, B, R>(fn: (x: A, y: B) => R, duration: number): (x: A) => R;
export declare function throttle<A, B, C, R>(fn: (x: A, y: B, z: C) => R, duration: number): (x: A) => R;
