import { ReactElement } from 'react'; import { FC } from 'react'; import { TableProps, ColumnType } from 'antd/lib/table'; import { PaginationProps } from 'antd/lib/pagination'; import { IFilterProps } from '../filter/index'; import './style'; interface ITableColProps extends ColumnType { defaultShow?: boolean; customize?: boolean; } interface IExtraButtonsProps { text?: string; onClick?: (options?: any) => void; icon?: any; render?: () => ReactElement; } interface IActionButtonsProps { text: string; onClick: (params: any) => void; } export interface ITableProps extends Omit, 'pagination'> { total: number; page: number; pageSize: number; columns: ITableColProps[]; onPagination: PaginationProps['onChange']; noPagination?: boolean; locale?: {}; noCustomize?: boolean; pageSizeOptions?: number[]; className?: string; extraButtons?: IExtraButtonsProps[]; actionButtons?: IActionButtonsProps[]; actionButtonsFilter?: (params: any, allButtons: IActionButtonsProps[]) => IActionButtonsProps[] | []; colMax?: number | null; filterConfig?: IFilterProps; onClickRow?: (record: any, index?: number) => any; colDisable?: boolean; bottomExtra?: any; } declare const IglooTable: FC; export default IglooTable;