awesome-gcl
Version:
React component library
29 lines (28 loc) • 1.17 kB
TypeScript
/// <reference types="react" />
import { HeaderAdditionalClasses, HeaderPropTypes } from "./Components/Headers/types";
import { DataPropTypes, RowAdditionalClassesPropTypes } from "./Components/Rows/types";
export type TableAdditionalClassesPropTypes = HeaderAdditionalClasses & RowAdditionalClassesPropTypes & {
table?: string[];
tableHead?: string[];
headerRow?: string[];
hiddenIconRep?: string[];
};
export type TableConstructorPropTypes = {
additionalClasses?: TableAdditionalClassesPropTypes;
};
export type TableComponentsEnum = 'table' | 'tableHead' | 'headerRow' | 'hiddenIconRep';
export type TablePropTypes = {
headers: HeaderPropTypes[];
data: DataPropTypes[];
onRowClick?: (row: DataPropTypes) => void;
checkedArray: DataPropTypes[];
details?: (row: DataPropTypes) => React.ReactNode;
additionalClasses?: TableAdditionalClassesPropTypes;
};
export type UseTablePropTypes = Pick<TablePropTypes, 'data'> & {
setList: React.Dispatch<React.SetStateAction<DataPropTypes[]>>;
};
export type UseHeaderCheckPropTypes = {
headerCheck: boolean;
setHeaderCheck: React.Dispatch<React.SetStateAction<boolean>>;
};