import type { unknownFunction, DebouncedFunction } from '../../../types/global';
declare type Options<TT> = {
    isImmediate?: boolean;
    maxWait?: number;
    callback?: (data: TT) => void;
};
/**
 *
 *
 *
 */
export default function debounce<originalFunction extends unknownFunction>(func: originalFunction, waitMilliseconds?: number, options?: Options<ReturnType<originalFunction>>): DebouncedFunction<originalFunction>;
export {};
