import React from 'react';
import { IAction, ISeparator, ISortBy, OnCollapse, OnSort, TableProps, TdProps, ThProps } from '@patternfly/react-table';
import { WithTestID } from '../../types';
import './HostsTable.css';
export type ActionsResolver<R> = (obj: R) => (IAction | ISeparator)[];
type TableMemoRowType = {
    cells: {
        title: string | React.ReactNode;
        props?: Omit<TdProps, 'ref'>;
    }[];
    actions: IAction[];
    nestedComponent?: React.ReactNode;
    isOpen?: boolean;
};
export type TableMemoColType = {
    title: string | React.ReactNode;
    props?: Omit<ThProps, 'ref'>;
    sort?: boolean;
};
export type TableMemoProps = {
    rows: TableMemoRowType[];
    cols: TableMemoColType[];
    sortBy: ISortBy;
    onSort: OnSort;
    onCollapse?: OnCollapse;
    className: TableProps['className'];
    variant?: TableProps['variant'];
} & WithTestID;
export declare const AITableMemo: React.MemoExoticComponent<({ rows, cols, onCollapse, className, variant, onSort, sortBy, testId }: TableMemoProps) => React.JSX.Element>;
export {};
//# sourceMappingURL=AITableMemo.d.ts.map