import { ElementRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core'; import { IButtonVW } from '../button/button.component'; import { TableColumnDefinition as TableColumnDefinitionVW, TableColumnSource as TableColumnSourceVW } from './table-common'; import * as i0 from "@angular/core"; type SortDirectionVW = 'asc' | 'desc' | ''; type SortStateVW = { active: string; direction: SortDirectionVW; }; type TableSearchPayloadVW = { text: string; columns: string[]; sort: SortStateVW; }; type TablePageEventVW = { pageIndex: number; pageSize: number; }; interface RenderedTableRowVW { row: any; index: number; } declare class SimpleSelectionModel { private readonly rows; get selected(): T[]; hasValue(): boolean; isSelected(row: T): boolean; select(row: T): void; deselect(row: T): void; toggle(row: T): void; clear(): void; } export declare class TableGlobalComponent implements OnChanges, OnDestroy { tableTitle: string; searchVisible: boolean; hideHeaders: boolean; buttonsTable: IButtonVW[]; changeHeader: boolean; changeHeaderPosition: 'r' | 'l'; exportable: boolean; exportFileName: string; allColumns: any; actionsColumn: any; columnsChange: EventEmitter; columnSource: TableColumnSourceVW; emptyMessage: string; actionTemplate: TemplateRef; actionTemplateContext: any; isCollapssable: boolean; stickyHeader: boolean; centerHeaders: boolean; gridBorders: boolean; disableEvents: boolean; minWidth: string; collapseRow: boolean; titleCollapse: string; rowClass: (row: any) => string; dataSource: any[]; mode: string; selectable: boolean; selectedItem: any; multiSelectDisabled: boolean; selectAllPages: boolean; resetSelection: number; loading: boolean; optimization: boolean; selectedItemChange: EventEmitter; clickbtn: EventEmitter; checkboxSelectionChange: EventEmitter; sortChange: EventEmitter; searchChange: EventEmitter; Object: ObjectConstructor; selection: SimpleSelectionModel; private readonly tableMutations; private readonly tableSelection; private visibleColumns; private lastSelectedIndex; private lastSortState; private frontFilteredRows; private searchDebounceTimeout; readonly searchText: import("@angular/core").WritableSignal; readonly loadingRows: import("@angular/core").WritableSignal; readonly sortState: import("@angular/core").WritableSignal; readonly hasHorizontalOverflow: import("@angular/core").WritableSignal; readonly renderedRows: import("@angular/core").WritableSignal; readonly virtualTopSpacerHeight: import("@angular/core").WritableSignal; readonly virtualBottomSpacerHeight: import("@angular/core").WritableSignal; private tableResizeObserver?; private automaticPageSizeTimeout?; private pageChangeTimeout?; private loadingRowsTimeout?; private tableScrollWrapperElement?; private readonly virtualizationThreshold; private readonly virtualizationOverscan; private readonly textCollator; set tableScrollWrapper(wrapper: ElementRef | undefined); displayedColumns: string[]; displayedColumnEntries: Array<{ key: string; value: TableColumnDefinitionVW; }>; allPossibleColumnEntries: Array<{ key: string; value: TableColumnDefinitionVW; }>; selectableColumns: TableColumnSourceVW; buttonsTableProperties: IButtonVW[]; sizeTable: 'xxs' | 'xs' | 'md'; private pageSizeWasProvided; private internalPageSize; set pageSize(value: number | null | undefined); get pageSize(): number; currentPage: number; totalItems: number; allRows: any[]; private readonly defaultPageSizeOptions; private configuredPageSizeOptions; private automaticPageSize?; private internalPageSizeOptions; set pageSizeOptions(value: number[] | null | undefined); get pageSizeOptions(): number[]; get minConfiguredPageSize(): number; paginator: boolean; paginatorFront: boolean; stickyPaginator: boolean; paginatorData: EventEmitter<{ currentPage: number; rowsPerPage: number; }>; deleteItem: any; updateItem: any; findItemKeys: string | string[]; paintRows: boolean; private readonly maxFrontPageSize; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; updateHorizontalOverflow(wrapper: HTMLElement): void; onTableScroll(event: Event): void; get totalPages(): number; getRowTrackKey(index: number, row: any): string | number; handlePageEvent(e: TablePageEventVW): void; goFirst(): void; goPrev(): void; goNext(): void; goLast(): void; onPageSizeChange(newSize: number): void; getRangeLabel(): string; loadingPageSize(length: number | any[]): void; paginatorFrontFn(dataPage: any, rows?: any[]): any[]; getContext(element: any, index: number): any; onExportExcel(): Promise; isAllSelected(): boolean; toggleAllRows(): void; toggleRow(element: any): void; selectRange(startIndex: number, endIndex: number): void; resetMultipleSelection(): void; getDisplayedColumns(): string[]; getColumnMinWidth(column: { value: TableColumnDefinitionVW; }): string; shouldDisableRowEvents(): boolean; isSelected(row: any, event?: MouseEvent): void; checkboxLabel(row?: any): string; onSortClick(key: string): void; sortData(sortData: SortStateVW): void; getCellClasses(element: any, column: any): string; onColumnsSelected(columns: any): void; onSearchTextChange(value: string): void; getColumnSource(): { [key: string]: TableColumnDefinitionVW; }; getSelectableColumns(): any; getAllPossibleColumns(): { [key: string]: TableColumnDefinitionVW; }; private sortRows; private compareNumericValues; private parseNumericValue; private syncSelectionWithData; private emitBackendSearch; private applyFrontSearchAndRepaginate; private recomputeFrontFilteredRows; private getVisibleSearchableColumnKeys; private getCurrentSortState; private getSelectionUniverseRows; private handleRowMutationChanges; private initializeVisibleColumns; private refreshTemplateCaches; private refreshColumnCaches; private buildColumnSource; private buildAllPossibleColumns; private getActionsColumnDefinition; private buildSelectableColumns; private resetPaginatorOnAllRowsChange; private refreshFrontPaginatorData; private refreshDatasource; private refreshRenderedRows; private getVirtualRowHeight; private scheduleAutomaticPageSize; private applyAutomaticPageSize; private refreshPageSizeOptions; private isActionCellClick; private hasActionsColumn; private handleMultiSelection; private handleSingleSelection; private adjustCurrentPageAfterDelete; private confirmOnlyVisibleColumns; private downloadExcel; private escapeHtml; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_optimization: unknown; } export {};