import { MenuItem } from 'primeng/api'; import { ListItem } from './list-item.model'; import { Status } from './status.enum'; export type DataTableBaseItem = { actions?: MenuItem[]; }; export declare enum TableColumnType { TEXT = "TEXT", BOOLEAN = "BOOLEAN", DATE = "DATE", DATETIME = "DATETIME", ENUM = "ENUM", STATUS_BADGE = "STATUS_BADGE", ACTIVE_BOOLEAN_BADGE = "ACTIVE_BOOLEAN_BADGE", BUTTON = "BUTTON", CUSTOM_STYLE = "CUSTOM_STYLE", MASK = "MASK", TEXT_BADGE = "TEXT_BADGE", STACK_BADGE = "STACK_BADGE", CURRENCY = "CURRENCY", SCORE = "SCORE" } export type TableColumn = { header: string; field: string; width?: string; type?: TableColumnType; textFieldClass?: string; getEnumTranslated?: (enumVal: any) => string; getStatus?: (value: any) => Status; clickFunction?: Function; icon?: string | ((rowData: any) => string); notSortable?: boolean; mask?: string; currencyType?: 'USD' | 'BRL'; hidden?: boolean; cellEdit?: CellEditConfig; }; export type CellEditConfig = { editType?: 'number' | 'text'; editMin?: number; editMax?: number; editSuffix?: string; editMaxFractionDigits?: number; }; export type DataTableLazyLoadEvent = { start: number; length: number; draw: number; page: number; order: { column: number; dir: 'asc' | 'desc'; }[]; columns: { data: string; name: string; orderable: boolean; search: { value: string; regex: boolean; }; searchable: boolean; }[]; search: { value: string; regex: boolean; }; tab: ListItem; }; export declare enum SelectionType { CHECKBOX = "checkbox", RADIOBUTTON = "radiobutton" }