Как установить тип строки в зависимости значения/наличия props?
Есть компонент таблицы который в одном из параметров принимает данные для строк и описан следующим интерфейсом
interface ITableProps {
columns: Array<IHeadCell>;
model: Array<IRowData>;
getRowId?: (row: IRowData) => string | number;
striped?: boolean;
useCheckbox?: boolean;
}
Массив строк описан интерфейсом
interface IRowData {
[key: string]: any;
}
Необходимо чтоб при проверке типов, компилятор требовал наличие свойства selected у IRowData в случае если свойство таблицы useCheckbox установлено true. Если свойство useCheckbox не установлено или false то selected требоваться не должно