/** * 防抖函数的类型定义 * @template T - 原始函数的类型 */ interface DebouncedFunction any> { /** * 防抖后的函数,参数类型与原函数一致 */ (...args: Parameters): void; /** * 取消防抖函数的未执行部分 */ cancel: () => void; } /** * 创建一个防抖函数。 * 防抖函数的作用是限制一个函数在短时间内频繁触发的次数,直到指定的延迟时间结束后才执行。 * @param {T} callback - 需要防抖的函数 * @param {number} delay - 防抖的延迟时间(毫秒) * @returns {DebouncedFunction} 防抖后的函数,包含原函数的参数类型和取消方法 */ declare function debounce any>(callback: T, delay: number): DebouncedFunction; export default debounce;