import React, { ReactNode } from 'react';
import { ColumnDef } from '@tanstack/react-table';
import { Identifiable } from '@custis/common';
import { NewGridStore } from './NewGridStore';
interface Props<TItem extends Identifiable, TFilter, TSorting, TResultAdditionalInfo = undefined> {
    columns: ColumnDef<TItem>[];
    store: NewGridStore<TItem, TFilter, TSorting>;
    hasSelection?: boolean;
    paginationHidden?: boolean;
    hasReorderingRows?: boolean;
    hasExpand?: boolean;
    rowClassName?: string;
    getRowId?: (row: TItem) => string;
    getSubRows?: (row: TItem) => TItem[];
    rowCanBeSelected?: (row: TItem) => boolean;
    actionAddon?: (row: TItem) => ReactNode;
    onRowClick?(row: TItem): void;
}
export declare const NewGrid: <TItem extends Identifiable & {
    children?: TItem[] | undefined;
}, TFilter, TSorting, TResultAdditionalInfo = undefined>({ columns, store, getRowId, hasSelection, rowCanBeSelected, actionAddon, paginationHidden, hasReorderingRows, onRowClick, hasExpand, getSubRows, rowClassName, }: Props<TItem, TFilter, TSorting, undefined>) => React.JSX.Element;
export {};
