/**
 * Функция debounce (устранение дребезга) для отложенного выполнения функции.
 * Позволяет откладывать вызов функции до тех пор, пока не пройдет указанное время `wait`
 * с момента последнего вызова. Если `immediate` равно `true`, функция выполняется сразу
 * при первом вызове, а затем откладывается на указанное время.
 *
 * @template T - Тип функции, которую нужно отложить.
 * @param func - Функция, которую нужно отложить.
 * @param wait - Время задержки в миллисекундах.
 * @param immediate - Если `true`, функция выполняется сразу при первом вызове.
 * @returns Возвращает новую функцию, которая откладывает вызов оригинальной функции.
 */
export declare const debounce: <T extends (...args: any[]) => any>(func: T, wait: number, immediate?: boolean) => ((...args: Parameters<T>) => void);
