import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy, QueryList } from '@angular/core'; import { MatDialog, MatDialogRef } from '@angular/material/dialog'; import { Subscription } from 'rxjs'; import { FilterGroupDialogComponent } from './filter-group-dialog/filter-group-dialog.component'; import { UxgFilter } from './filter.directive'; import { UXGFilterChanges } from './filter.models'; import { MatExpansionPanel } from '@angular/material/expansion'; export interface FilterGroupComponentData { title: string; selectedData: any[]; } export interface SavedFilter { filterName: string; isSelected: boolean; filterState: FilterGroupComponentData[]; } export declare class FilterGroupComponent implements AfterViewInit, OnDestroy { dialog: MatDialog; private cd; changes: EventEmitter>; filterInstances: QueryList; expansionPanel: MatExpansionPanel; expanded: boolean; divideAtIndex: number[]; showActions: boolean; autoApply: boolean; subscriptions: Subscription[]; dialogRef: MatDialogRef | undefined; selectedData: FilterGroupComponentData[]; savedFilters: SavedFilter[]; existingFilterNames: string[]; initialState: FilterGroupComponentData[]; activeFilter: FilterGroupComponentData[]; isActive: boolean; headerHeight: string; constructor(dialog: MatDialog, cd: ChangeDetectorRef); ngAfterViewInit(): void; ngOnDestroy(): void; openDialog(): void; selectFilter(filter: SavedFilter): void; applyFilters(): void; updateFilter(): void; removeFilter(filter: any): void; clearSelection(): void; resetSelection(): void; getFilterStates(): any; getState(): FilterGroupComponentData[]; setState(data: FilterGroupComponentData[]): void; open(): void; close(): void; getSelectedFilterState(): FilterGroupComponentData[]; checkIsActive(): boolean; checkListEquality(listA: FilterGroupComponentData[], listB: FilterGroupComponentData[]): boolean; checkDivider(index: number): boolean; handleOutsideClick(): void; }