import { SubTypeSelectorsColumnForms } from '../../enums/columns/SubTypeSelectorsColumnForms.enum'; import { ColumnForms } from './column'; import { SubTypeReturnData } from './subTypeReturnData'; /** * Column general Selectors */ export interface SelectorsColumnForms extends ColumnForms { /** * subtype of column selector */ subType?: SubTypeSelectorsColumnForms | (({ data, column }: SubTypeReturnData) => SubTypeSelectorsColumnForms); } /** * Switch column */ export interface SwitchColumn extends SelectorsColumnForms { /** * Selector type * @default * yes/no labels */ selectorsType?: SelectorsType; } /** * Radio column */ export interface RadioColumn extends SelectorsColumnForms { values?: ValueType[]; } /** * CheckBox column */ export interface CheckBoxColumn extends SelectorsColumnForms { values?: ValueTypeCheckbox[]; } export interface SelectorsType { true: ValueType; false: ValueType; } export interface ValueType { title: string; value: any; } export interface ValueTypeCheckbox { title: string; value: any; checked?: boolean; } export declare type TypeSelectors = SwitchColumn | RadioColumn | CheckBoxColumn;