import { MouseEvent, MouseEventHandler } from 'react';
/**
 * A click handler that supports:
 * - Standard MouseEventHandler (receives event, returns void)
 * - Async handlers (receives event, returns Promise)
 * - Parameterless handlers (no event parameter)
 */
export type ClickHandler<T = HTMLButtonElement> = MouseEventHandler<T> | ((event: MouseEvent<T>) => Promise<void>) | (() => void) | (() => Promise<void>);
export declare const useClickWithLoading: (handler?: ClickHandler<HTMLButtonElement>) => {
    isLoading: boolean;
    handleClick: (event: MouseEvent<HTMLButtonElement>) => Promise<void>;
};
//# sourceMappingURL=useClickWithLoading.d.ts.map