import { ReactNode } from 'react'; declare type RenderType = { value: string | { [key: string]: string; }; item: { [key: string]: string; } | { [key: string]: { [key: string]: string; }; }; }; declare type HeaderType = { label: string; dataIndex: string; sort?: string | null; visible?: boolean; render?: (data: RenderType) => ReactNode; align?: 'left' | 'right'; }; declare type ActionType = { label: string; type?: string; onClick: (item: { [key: string]: string; } | { [key: string]: { [key: string]: string; }; }) => void; }; declare type SortType = { direction: string; dataIndex: string; }; interface TableProps { headers: HeaderType[]; data: { [key: string]: any; }[] | { [key: string]: { [key: string]: any; }; }[]; footer?: { [key: string]: string; }; actions?: ActionType[]; totalCount?: number; currentPage?: number; onPageChange?: (page: number) => void; perPage?: number; perPageChange?: (amount: number) => void; sort?: SortType; onSort?: (sort: SortType) => void; exports?: () => void; isLoading?: boolean; } export declare function Table({ headers, data, footer, actions, totalCount, currentPage, onPageChange, perPage, perPageChange, sort, onSort, exports, isLoading, }: TableProps): JSX.Element; export {};