import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
import { DropdownItem } from "@hpe/angular-toolkit/model";
import { Menu } from "@hpe/angular-toolkit/model";
import { ListTableColumn } from "@hpe/angular-toolkit/model";
import { MenuSelector } from "@hpe/angular-toolkit/model";
import { FilterChangeEvent } from "@hpe/angular-toolkit/model";
import { RowSelectedEvent } from "@hpe/angular-toolkit/model";
import { RowUnselectedEvent } from "@hpe/angular-toolkit/model";
import { AbstractSubscriber } from "@hpe/angular-toolkit/service";
import { EventBusService } from "@hpe/angular-toolkit/service";
import { LabelService } from "@hpe/angular-toolkit/service";
export declare class ListTable extends AbstractSubscriber implements OnChanges {
    private labelService;
    rowId: any;
    columns: ListTableColumn[];
    data: any[];
    visibleColumns: string[];
    multiSelection: boolean;
    rowsPerPage: number;
    rowSet: number[];
    loading: boolean;
    labelGroup: string;
    contextMenu: Menu[];
    menuSelector: MenuSelector;
    onFilterChange: EventEmitter<FilterChangeEvent>;
    onRowSelected: EventEmitter<RowSelectedEvent>;
    onRowUnselected: EventEmitter<RowUnselectedEvent>;
    private pTable;
    private pContextMenu;
    selectedRow: any;
    displayColumns: ListTableColumn[];
    displayData: any[];
    activeMenu: Menu[];
    columnValues: Map<string, DropdownItem[]>;
    private colToIndex;
    private alignMap;
    constructor(eventBusService: EventBusService, labelService: LabelService);
    exportAll(): void;
    exportSelected(): void;
    readonly allValue: string;
    readonly noRecords: string;
    ngOnChanges(changes: SimpleChanges): void;
    onRowSelect(event: any): void;
    onRowUnselect(event: any): void;
    onContextMenuSelect(event: any): void;
    onFilter(event: any): void;
    filter(value: any, col: ListTableColumn): void;
    private initColumns();
    private calcHeader(col);
    private calcFilterMatchMode(col);
    private initData();
    private calcDisplayValue(row, col, value);
    private calcDisplayStyle(row, col, value);
    private initVisibleColumns();
    private initColumnValues();
    private getColumnValues(col);
    private getFilteredSize();
    private restoreRow(data);
    private calcSelectedRows(rows);
    private selectMenuItems(menu, rse, parentId);
    private fireEvent(code, event);
}
