/** * Функция throttled, которая будет задержана на заданное * `threshold` миллисекунд от последнего вызова. Если метод будет вызван снова * до истечения тайм-аута, предыдущий вызов будет прерван. */ export interface ThrottledFunction { (...a: T) : void; /** * Отменяет вызов функции */ cancel(): void; } /** * Возвращает throttled функцию, которая задерживает вызов `fn` на * `threshold` миллисекунд от последнего вызова. Если метод вызывается снова до * выполнения предыдущего, предыдущий вызов будет прерван. * * @param fn Функция, которую надо вызывать * @param threshold Длительность в миллисекундах * @param scope Контекст, с которым будет совершен вызов функции */ export declare function throttle(fn: (...args: T) => unknown, threshold?: number, scope?: (Window & typeof globalThis) | undefined): ThrottledFunction;