import type { RefCallback, RefObject } from "react";
import type { Callback } from "../Types";
export declare const useClickOutside: <T extends HTMLElement, R extends boolean | undefined>({ callback, open, refCallback, }: IUseClickOutsideOptions<R>) => ClickOutsideRef<T, R>;
export type ClickOutsideRef<T extends HTMLElement, R extends boolean | undefined> = R extends true ? RefCallback<T> : RefObject<T>;
export interface IUseClickOutsideOptions<R extends boolean | undefined> {
    open?: boolean;
    refCallback?: R;
    callback: Callback<[e: MouseEvent | FocusEvent]>;
}
