import { SelectionModel } from '@angular/cdk/collections'; import { EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core'; import { MatAccordion } from '@angular/material/expansion'; export declare class ExpandableTableComponent implements OnChanges { dataSource: any[]; columns: any[]; groupByKey: string; groupByKeyLabel?: string; subtitle?: string; selectable: boolean; rowClickable: boolean; selection?: any[]; startExpanded: boolean; rowClick: EventEmitter; selectionChange: EventEmitter; tableButtonsCallBack: EventEmitter; tableHeaderCallBack: EventEmitter; dataLength: number; groupInfo: any; expandedElement: any; visibleColumns: any[]; _columns: any[]; _dataSource: any[]; selectionModel: SelectionModel; primaryKey: string; accordion?: MatAccordion; templateHeaderButtons: TemplateRef; templateTableButtons: TemplateRef; templateHeaderSubtitle: TemplateRef; chain: (input: any) => any; constructor(); ngOnChanges(changes: SimpleChanges): void; generateData(): void; generateColumns(): void; groupBy(groupId: string, collection: any[]): GroupedValues[]; toggleAll(): void; isAllSelected(): boolean; toggleRow(row: GroupedValues): void; selectionHasRowValue(row: GroupedValues): boolean; isRowAllSelected(row: GroupedValues): boolean; getSelectionByRow(row: GroupedValues): any[]; collapseAll(): void; getSelectedKeys(row: any): any[]; onTableSelectionChange(tableSelectionEvent: any, row: any): void; onSelectionChanged(): void; onRowClicked(event: any): void; } interface GroupedValues { id: any; label: string; values: any[]; expanded?: boolean; } export {};