import { ChangeDetectorRef, EventEmitter, OnDestroy, OnInit, QueryList } from '@angular/core'; import { ColumnFilter, Table, TableLazyLoadEvent } from "primeng/table"; import { GDataTableService } from "../service/GDataTableService"; import { GTableProperties } from "../model/GTableProperties"; import { FilterCriteria } from "./dataTableModel/FilterCriteria"; import { SortCriteria } from "./dataTableModel/SortCriteria"; import { ColumnTypEnum } from "./dataTableModel/enum/ColumnTypEnum"; import { ColumnDefinition } from "./dataTableModel/ColumnDefinition"; import { GenericCondition } from "./dataTableModel/GenericCondition"; import { ManualValidatorService } from "../validators/manual-validator.service"; import { GMessagesService } from "../../service/g-messages.service"; import { DropdownService } from "../../service/dropdown.service"; import { DatePipe } from "@angular/common"; import { TranslateService } from "@ngx-translate/core"; import { ActionListDet } from "./dataTableModel/ActionListDet"; import { TranslationService } from "../../directive/translation/translation.service"; import { HijriFormatPipe } from "../../pipe/HijriDateFormat/HijriFormatPipe"; import { DomSanitizer } from "@angular/platform-browser"; import * as i0 from "@angular/core"; export declare class GDatatableComponent implements OnInit, OnDestroy { private _dataService; private _manualValidatorService; private _gMessagesService; private _dropdownService; private _gTranslateService; private translateService; private _hijriFormatPipe; private _datePipe; private cdr; private _domSanitizer; dataTable: Table; private columnFilters; set columnFilterElement(columnFilters: QueryList); tableProperties: GTableProperties; onStartLazyLoadEvent: EventEmitter; onDataFetchedLazyLoadEvent: EventEmitter; onPreparedRequestLazyLoadEvent: EventEmitter; onSelectAllEvent: EventEmitter; onRowSelectEvent: EventEmitter; onRowUnselectEvent: EventEmitter; filtersCriteriaArr: FilterCriteria[]; sortCriteriaArr: SortCriteria[]; isReloadAction: boolean; currentLangCode: string | null; private static sortOrder; readonly ColumnTypEnum: typeof ColumnTypEnum; protected readonly eval: typeof eval; private subscription; dropdownFilterOptionLabel: string; hasFilterValue: boolean; lastUnSelectedColumn: ColumnDefinition; constructor(_dataService: GDataTableService, _manualValidatorService: ManualValidatorService, _gMessagesService: GMessagesService, _dropdownService: DropdownService, _gTranslateService: TranslationService, translateService: TranslateService, _hijriFormatPipe: HijriFormatPipe, _datePipe: DatePipe, cdr: ChangeDetectorRef, _domSanitizer: DomSanitizer); ngOnInit(isReloadAction?: boolean): void; configDataTableProps(): void; prepareFiltersData(): void; private checkResetStoreOnReload; buildTableActions(): void; lazyLoadData(event: TableLazyLoadEvent): void; private restoreTableData; resetTableFilters(): void; setupFilterData(filterValue: any, filterField: string): void; private prepareAllFilterCriteria; private handleSortActions; private prepareAllSortCriteria; showHideColumnChange(selectedColumns: ColumnDefinition[]): void; cellValue(rowData: any, colField: string, colmDef?: ColumnDefinition): any; isNumber(value: any): boolean; private initDefaultCriteriaFilters; clearGlobalSearch(table: Table): void; filterGlobal($event: any, table: Table): void; hideFilterPopup(filterElement: ColumnFilter): void; hideChildFiltersPopup(): void; private reloadGDataTable; refreshGDataTableData: () => void; clearAllSelectedRows: () => void; pushToAllSelectedRows: (rowOrRows: any | any[]) => void; refreshAllSelectedRows: () => void; onChangePageSize(event: any): void; onPageChange(event: any): void; drawBadgeSeverity(value: any, col: ColumnDefinition): string | undefined; evalConditionV2(rowData: any, renderConditions: GenericCondition[]): boolean; evalCondition(rowData: any, renderConditions: GenericCondition[]): any; onHeaderCheckboxToggle(event: any): void; onRowSelect(event: any): void; onRowUnselect(event: any): void; updateCachedSelectedRows(): void; syncPageSelectionWithCache(): void; syncPageSelectedRowsToAllSelectedRows: () => void; initializeAllSelectedRowsFromCache(): void; onExportPdf: () => void; exportPdf(data: any[]): void; exportRTLPdf(data: any[]): void; onExportExcel: () => void; buildExportJsonData(dataArr: any[]): any[]; exportExcel(data: any[]): void; saveAsExcelFile(buffer: any, fileName: string): void; buildExportHeaders(): void; getAllKeys(obj: any, parentKey?: string): string[]; isSeverityClass(color: string): boolean; ngOnDestroy(): void; checkHasPermission(rowData: any, action: ActionListDet, actionDropdown: HTMLElement, actionDropdownItems: HTMLElement, last: boolean): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }