///
import { EventEmitter, AfterContentInit } from "@angular/core";
import { LazyPageData, LazyLoadEvent } from "../pagination/pagination.component";
export declare class DataTable implements AfterContentInit {
pageSize: number;
lazy: boolean;
data: Array | LazyPageData;
selectionMode: string;
selection: Array;
availablePageSizes: number[];
tableClasses: string;
onLazy: EventEmitter;
rowSelection: EventEmitter;
rowEdit: EventEmitter;
private columns;
private header;
private footer;
private paginator;
private currentSortedColumn;
ngAfterContentInit(): any;
private filterFunction;
private sortFunction;
private sort(restraints, column);
private alphabeticalCompare(value1, value2, order);
private valueOf(root, path);
private handleRowClick(row);
private handleRowDblClick(row);
private select(row);
private edit(event, column, row);
private handleLazyLoading(event);
private isSingleSelectionMode();
private isMultiSelectionMode();
private isDoubleClickSelectionMode();
private isSelectionMode();
private isOneClickSelectionMode();
private getTableClass();
private getSortClass(column);
private isSelected(row);
}
export declare class Column {
header: string;
content: string;
sortBy: string;
filterBy: string;
editable: boolean;
order: number;
}
export interface SelectionEvent {
selected?: any;
unselected?: any;
}
export interface EditEvent {
editedRow: any;
editedField: string;
oldValue: any;
newValue: any;
}