denwa-react-shared
Version:
31 lines (30 loc) • 893 B
TypeScript
import { ReactNode } from 'react';
import { PaginationProps, TableProps } from 'antd';
import { IPaginate } from '../../types';
export type CustomActionItem = {
key: string;
icon?: ReactNode;
label: ReactNode;
onClick?: () => void;
danger?: boolean;
disabled?: boolean;
};
export interface BaseTableProps extends TableProps {
viewText: string;
actionsText: string;
editText: string;
deleteText: string;
serverPagination?: IPaginate;
isCanRead: boolean;
isCanUpdate: boolean;
isCanDelete: boolean;
isHiddenUpdate?: boolean;
isHiddenActions?: boolean;
isFixedActions?: boolean;
renderActions?: (record: object) => CustomActionItem[];
onView: (id: string) => void;
onDropdownClick: (id: string) => void;
onEdit: () => void;
onDelete?: () => void;
onShowSizeChange: PaginationProps['onShowSizeChange'];
}