@angelineuniverse/design
Version:
Angeline Design UI Library
49 lines (48 loc) • 1.57 kB
text/typescript
export interface ModelTable{
className?: string;
classNameTable?: string;
useBack?: boolean;
useCreate: boolean;
notUseNumberRow?: boolean;
useHeadline: boolean;
createTitle?: string;
title?: string;
description?: string;
skeletonRow?: number;
create?: React.MouseEventHandler<HTMLButtonElement>;
onBack?: React.MouseEventHandler<HTMLOrSVGElement>;
loadingCreate?: boolean;
column: Array<ResponseColumn>;
property?: Object;
data?: Array<any>;
delete?: (e: any) => void;
add?: (e: any) => void;
show?: (e: any) => void;
edit?: (e: any) => void;
onSort?: (type: string, key: string) => void;
onEvent?: (e: any, key: string) => void;
lastPage?: React.MouseEventHandler<HTMLButtonElement>;
firstPage?: React.MouseEventHandler<HTMLButtonElement>;
changePage?: (event: number) => void;
custom?: any;
extraHeader?: React.ReactNode;
isCompact?: boolean // BELUM BERHASIL
}
type TypeColumn = "listtag" |"string" | "datetime" | "object" | "array" | "currency" | "action" | "date" | 'status' | "custom" | 'action_status' | "date-prefix"| "file" | "date-prefix-custom";
export interface ResponseColumn{
key: string;
name?: string;
type: TypeColumn;
classNameprefix?: string;
prefix?: string;
dateFormat?: string;
child?: Array<ResponseColumn>;
ability?: any;
currency?: string;
localecurrency?: string;
minimumFractionDigits?: number;
className?: string;
classNameRow?: string;
useSort?: boolean;
color?: string;
}