import { ColDef } from 'ag-grid-community';
import { CellContextMenuEvent } from 'ag-grid-community';
import { ReactElement } from 'react';
import { GridBaseRow } from '../Grid';
export interface GridContextMenuComponentProps<TData extends GridBaseRow> {
    selectedRows: TData[];
    clickedRow: TData;
    colDef: ColDef;
    close: () => void;
}
export type GridContextMenuComponent<TData extends GridBaseRow> = (props: GridContextMenuComponentProps<TData>) => ReactElement | null;
export declare const useGridContextMenu: <TData extends GridBaseRow>({ contextMenuSelectRow, contextMenu: ContextMenu, }: {
    contextMenuSelectRow: boolean;
    contextMenu?: GridContextMenuComponent<TData>;
}) => {
    openMenu: (e: PointerEvent | null | undefined) => void;
    cellContextMenu: (event: CellContextMenuEvent) => void;
    component: import("react/jsx-runtime").JSX.Element | null;
};
