import * as React from 'react'; export enum ColumnType { text, numeric, custom } type CustomControl = { rowData: TData } export type ColumnModel = { title?: string; disablePadding?: boolean; width?: string | number; disableSorting?: boolean; disableFilter?: boolean; } & ({ property: string; type: ColumnType.custom; customControl: React.ComponentType>; } | { property: keyof TData; type?: ColumnType.numeric | ColumnType.text; });