import { ReactElement } from 'react';
import { GridBaseRow } from './types';
export interface GridPopoverHookProps<TData> {
    className: string | undefined;
    invalid?: () => Promise<ReactElement | boolean | string | null | undefined> | ReactElement | boolean | string | null | undefined;
    save?: (selectedRows: TData[]) => Promise<boolean>;
    dontSaveOnExternalClick?: boolean;
}
export declare const CancelPromise: () => Promise<boolean>;
export declare const useGridPopoverHook: <TData extends GridBaseRow>({ className, save, invalid, dontSaveOnExternalClick, }: GridPopoverHookProps<TData>) => {
    popoverWrapper: (children: ReactElement) => import("react").JSX.Element;
    triggerSave: (reason?: string) => Promise<void>;
};
