Interface IColumn<FilterData, RowData, Payload>

Represents a column in a table.

interface IColumn<
    FilterData extends {} = IAnything,
    RowData extends IRowData = IAnything,
    Payload = IAnything,
> {
    avatar?: boolean;
    columnMenu?: IListActionOption<any, any>[];
    compute?: (
        row: RowData & { _payload: Payload },
        payload: Payload,
    ) => Value | Promise<Value>;
    description?: string;
    desktopHidden?: boolean;
    desktopOrder?: number;
    element?: any;
    field?: string;
    fullName?: string;
    fullWidth?: boolean;
    headerName?: string;
    isVisible?: (
        params: {
            chips: Partial<Record<keyof RowData, boolean>>;
            filterData: FilterData;
            pagination: ListHandlerPagination;
            payload: Payload;
            search: string;
            sortModel: ListHandlerSortModel<RowData>;
        },
    ) => boolean;
    minHeight?: string
    | number;
    phoneHidden?: boolean;
    phoneOrder?: number;
    pin?: boolean;
    primary?: boolean;
    secondary?: boolean;
    serialize?: (
        row: RowData & { _payload: Payload },
        payload: Payload,
    ) => Value | Promise<Value>;
    sortable?: boolean;
    sx?: any;
    tabletHidden?: boolean;
    tabletOrder?: number;
    type: ColumnType;
    width: string | (width: number) => string | number;
}

Type Parameters

  • FilterData extends {} = IAnything

    The type of filter data that can be used with the column.

  • RowData extends IRowData = IAnything

    The type of row data used in the table.

  • Payload = IAnything

    The type of payload used with the column.

Properties

avatar?: boolean
columnMenu?: IListActionOption<any, any>[]
compute?: (
    row: RowData & { _payload: Payload },
    payload: Payload,
) => Value | Promise<Value>
description?: string
desktopHidden?: boolean
desktopOrder?: number
element?: any
field?: string
fullName?: string
fullWidth?: boolean
headerName?: string
isVisible?: (
    params: {
        chips: Partial<Record<keyof RowData, boolean>>;
        filterData: FilterData;
        pagination: ListHandlerPagination;
        payload: Payload;
        search: string;
        sortModel: ListHandlerSortModel<RowData>;
    },
) => boolean
minHeight?: string | number
phoneHidden?: boolean
phoneOrder?: number
pin?: boolean
primary?: boolean
secondary?: boolean
serialize?: (
    row: RowData & { _payload: Payload },
    payload: Payload,
) => Value | Promise<Value>
sortable?: boolean
sx?: any
tabletHidden?: boolean
tabletOrder?: number
width: string | (width: number) => string | number

Represents the width of an element.