import type { DataTableProps } from 'primevue'; import type { VirtualScrollerLazyEvent } from 'primevue/virtualscroller'; import type { WtTableHeader } from './types/WtTable'; interface Props extends DataTableProps { /** * 'Accepts list of header objects. Draws text depending on "text" property, looks for data values through "value", "show" boolean controls visibility of a column (if undefined, all visible by default). ' Column width is calculated by "width" param. By default, sets 140px. ' */ headers?: WtTableHeader[]; /** * 'List of data, represented by table. ' */ data?: Array; /** * 'If true, draws sorting arrows and sends sorting events at header click. Draws a sorting arrow by "sort": "asc"/"desc" header value. ' */ sortable?: boolean; /** * 'If true, draws row selection checkboxes. Checkbox toggles data object _isSelected property. It's IMPORTANT to set this property before sending data to table. ' */ selectable?: boolean; selected?: Array; /** * 'If true, reserves space for 3 icon actions in the last column. Accessible by "actions" slot. ' */ gridActions?: boolean; /** * 'If true, 3 icon actions in the last column have position:sticky and fixed on the right' */ fixedActions?: boolean; /** * 'If true, displays table without header.' */ headless?: boolean; /** * 'If true, allows to reorder rows.' */ rowReorder?: boolean; /** * @author @Oleksandr Palonnyi * * [WTEL-8629](https://webitel.atlassian.net/browse/WTEL-8629) * * Unique field name used to identify a row. * Required for selection, expansion, and virtual scrolling to work correctly. * The value must be stable and unique across all rows. */ dataKey?: string; /** * 'If true, restrict sprecific row reorder.' */ isRowReorderDisabled?: (row: any) => boolean; rowExpansion?: boolean; rowClass?: () => string; rowStyle?: () => { [key: string]: string; }; resizableColumns?: boolean; reorderableColumns?: boolean; rowExpansionDisabled?: (row: object) => boolean; lazy?: boolean; onLoading?: (event: VirtualScrollerLazyEvent) => Promise; loading?: boolean; itemSize?: number | undefined; } declare var __VLS_71: `header-${string}`, __VLS_72: { index: number; header: WtTableHeader; }, __VLS_86: string, __VLS_87: { index: any; item: any; }, __VLS_92: `${string}-footer`, __VLS_93: {}, __VLS_102: {}, __VLS_105: { index: any; item: any; }, __VLS_108: { item: any; }, __VLS_111: {}; type __VLS_Slots = {} & { [K in NonNullable]?: (props: typeof __VLS_72) => any; } & { [K in NonNullable]?: (props: typeof __VLS_87) => any; } & { [K in NonNullable]?: (props: typeof __VLS_93) => any; } & { 'actions-header'?: (props: typeof __VLS_102) => any; } & { actions?: (props: typeof __VLS_105) => any; } & { expansion?: (props: typeof __VLS_108) => any; } & { footer?: (props: typeof __VLS_111) => any; }; declare const __VLS_base: import("vue").DefineComponent void; "update:selected": (...args: any[]) => void; "reorder:row": (...args: any[]) => void; "column-resize": (...args: any[]) => void; "column-reorder": (...args: any[]) => void; }, string, import("vue").PublicProps, Readonly & Readonly<{ onSort?: (...args: any[]) => any; "onUpdate:selected"?: (...args: any[]) => any; "onReorder:row"?: (...args: any[]) => any; "onColumn-resize"?: (...args: any[]) => any; "onColumn-reorder"?: (...args: any[]) => any; }>, { headers: WtTableHeader[]; data: Array; sortable: boolean; selectable: boolean; gridActions: boolean; fixedActions: boolean; headless: boolean; rowReorder: boolean; dataKey: string; isRowReorderDisabled: (row: any) => boolean; rowExpansion: boolean; rowClass: () => string; rowStyle: () => { [key: string]: string; }; resizableColumns: boolean; reorderableColumns: boolean; rowExpansionDisabled: (row: object) => boolean; lazy: boolean; itemSize: number | undefined; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; declare const __VLS_export: __VLS_WithSlots; declare const _default: typeof __VLS_export; export default _default; type __VLS_WithSlots = T & { new (): { $slots: S; }; };