import { ColumnProps, PaginationConfig, SorterResult, TableCurrentDataSource } from "antd/es/table"; import * as PropTypes from "prop-types"; export interface TableListItem { key: number; disabled?: boolean; href: string; avatar: string; name: string; title: string; owner: string; desc: string; callNo: number; status: number; updatedAt: Date; createdAt: Date; progress: number; } export interface TableListPagination { total: number; pageSize: number; current: number; } export interface TableListDate { list: TableListItem[]; pagination: Partial; } export interface TableListParams { sorter: string; status: string; name: string; pageSize: number; currentPage: number; } export type Filters = Record export type Sorter = SorterResult export interface TableProps { columns: any; onSelectRow?: (row: any) => void; dataSource: object[]; rowKey?: string; selectedRows?: any[]; onChange?: ( pagination: PaginationConfig, filters: Filters, sorter: Sorter, extra?: TableCurrentDataSource ) => void; loading?: boolean; pagination?: PaginationConfig prefixCls?: string, onCleanSelectedKeys: () => void } export type TableColumnProps = ColumnProps & { needTotal?: boolean; total?: number; }; export interface TableState { selectedRowKeys: object[], needTotalList: object[] }