import { EventEmitter, OnChanges, OnInit, TemplateRef } from '@angular/core'; import { FormGroup } from '@angular/forms'; import { MatDialog } from '@angular/material/dialog'; import { AccordionComponentConfig } from '../accordion/accordion.model'; import { SelectComponentConfig } from '../select/select.component'; import { DataTableComponentConfig, DataTableComponentConfigHeader, DataTableLine } from './data-table.model'; import { ButtonComponentConfig } from '../button/button.model'; import { FormService } from '../../services/form.service'; import * as i0 from "@angular/core"; export declare class DataTableComponent implements OnInit, OnChanges { dialog: MatDialog; private formService; config: DataTableComponentConfig; lineHeaderTemplate: TemplateRef; lineBodyTemplate: TemplateRef; onLineFormCreation: EventEmitter; onUpdate: EventEmitter; onPaginationUpdate: EventEmitter; onExport: EventEmitter; onAdd: EventEmitter; onSortUpdate: EventEmitter; onLineSelected: EventEmitter; onLineOpen: EventEmitter; onLineClose: EventEmitter; onAction: EventEmitter; accordionConfig: AccordionComponentConfig; pageSizeSelect: SelectComponentConfig; exportIcon: ButtonComponentConfig; addIcon: ButtonComponentConfig; results: { [key: string]: any; }; formGroups: { [key: string]: FormGroup; }; pages: { page: number; lines: DataTableLine[]; }[]; pageSize: number; selectLineButton: ButtonComponentConfig; selectLineButtonSmall: ButtonComponentConfig; openDetailsButton: ButtonComponentConfig; closeDetailsButton: ButtonComponentConfig; sortSelect: SelectComponentConfig; constructor(dialog: MatDialog, formService: FormService); ngOnInit(): void; setupPages(): void; updatePageSize(size: string): void; ngOnChanges(): void; lineFormCreation(event: FormGroup, line: DataTableLine): void; sendUpdates(): void; previousPage(): void; nextPage(): void; goToPage(page: number): void; export(): void; add(): void; sort(event: any): void; sortAsc(header: DataTableComponentConfigHeader): void; sortDesc(header: DataTableComponentConfigHeader): void; selectLine(line: DataTableLine): void; updateSortSelect(): void; handleAction(line: DataTableLine): void; changeLineOpen(line: DataTableLine): void; changeAccordionOpen(data: any): void; changeAccordionClose(data: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }