import type { IColumnDefinition, IServerChangeResponse, ISortChangeResponse, IDataTableProps } from './types'; declare var __VLS_18: string, __VLS_19: { value: Record; }, __VLS_21: {}, __VLS_39: {}, __VLS_41: {}, __VLS_43: {}, __VLS_45: {}; type __VLS_Slots = {} & { [K in NonNullable]?: (props: typeof __VLS_19) => any; } & { noData?: (props: typeof __VLS_21) => any; } & { firstArrow?: (props: typeof __VLS_39) => any; } & { previousArrow?: (props: typeof __VLS_41) => any; } & { nextArrow?: (props: typeof __VLS_43) => any; } & { lastArrow?: (props: typeof __VLS_45) => any; }; declare const __VLS_base: import("vue").DefineComponent void; getSelectedRows: () => Array>; getColumnFilters: () => IColumnDefinition[]; clearSelectedRows: () => void; selectRow: (index: number) => void; unselectRow: (index: number) => void; isRowSelected: (index: number) => boolean; getFilteredRows: () => Record[]; getVisibleRows: () => Record[]; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { reset: () => any; sortChange: (payload: ISortChangeResponse) => any; changeServer: (payload: IServerChangeResponse) => any; searchChange: (search: string) => any; pageChange: (page: number) => any; pageSizeChange: (pageSize: number) => any; rowSelect: (rows: Record[]) => any; filterChange: (columns: IColumnDefinition[]) => any; rowClick: (row: Record) => any; rowDBClick: (row: Record) => any; }, string, import("vue").PublicProps, Readonly & Readonly<{ onReset?: (() => any) | undefined; onSortChange?: ((payload: ISortChangeResponse) => any) | undefined; onChangeServer?: ((payload: IServerChangeResponse) => any) | undefined; onSearchChange?: ((search: string) => any) | undefined; onPageChange?: ((page: number) => any) | undefined; onPageSizeChange?: ((pageSize: number) => any) | undefined; onRowSelect?: ((rows: Record[]) => any) | undefined; onFilterChange?: ((columns: IColumnDefinition[]) => any) | undefined; onRowClick?: ((row: Record) => any) | undefined; onRowDBClick?: ((row: Record) => any) | undefined; }>, { columnFilterLang: Record | null; search: string; height: string; hasCheckbox: boolean; stickyHeader: boolean; stickyFirstColumn: boolean; sortable: boolean; columnFilter: boolean; columns: Array; loading: boolean; isServerMode: boolean; skin: string; totalRows: number; rows: Array>; page: number; pageSize: number; pageSizeOptions: Array; showPageSize: boolean; rowClass: string | string[] | ((row: Record) => string); cellClass: string | string[] | ((row: Record) => string); sortColumn: string; sortDirection: "asc" | "desc"; pagination: boolean; showNumbers: boolean; showNumbersCount: number; showFirstPage: boolean; showLastPage: boolean; paginationInfo: string; noDataContent: string; skeletonRowCount: number; cloneHeaderInFooter: boolean; selectRowOnClick: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>; declare const __VLS_export: __VLS_WithSlots; declare const _default: typeof __VLS_export; export default _default; type __VLS_WithSlots = T & { new (): { $slots: S; }; };