/// <reference types="lodash" />
declare type noop = (...args: any) => any;
export interface DebounceOptions {
    wait?: number;
    leading?: boolean;
    trailing?: boolean;
    maxWait?: number;
}
declare const useDebounceFn: <T extends noop>(fn: T, options?: DebounceOptions) => {
    run: import("lodash").DebouncedFunc<(...args: Parameters<T>) => ReturnType<T>>;
    cancel: () => void;
    flush: () => ReturnType<T>;
};
export default useDebounceFn;
