import { Observable } from 'rxjs';
import { Directionality } from '@angular/cdk/bidi';
import { Platform } from '@angular/cdk/platform';
import { CdkTable } from '@angular/cdk/table';
import { AfterContentInit, ChangeDetectorRef, ElementRef, EventEmitter, IterableDiffers, NgZone, OnChanges, QueryList, SimpleChanges } from '@angular/core';
import { NtColumnDirective, NtColumnSortChange } from './cell.directive';
export declare class NtTableComponent<T> extends CdkTable<T> implements AfterContentInit, OnChanges {
    private _ngZone;
    protected _differs: IterableDiffers;
    protected _changeDetectorRef: ChangeDetectorRef;
    protected _elementRef: ElementRef;
    protected readonly _dir: Directionality;
    private _selectionModel;
    private _multiSortable;
    private _selectable;
    private readonly _destroy;
    readonly columSortChanges: Observable<NtColumnSortChange>;
    set selectable(value: boolean);
    get selectable(): boolean;
    get isAllSelected(): boolean;
    get selected(): T[];
    _contentColumns: QueryList<NtColumnDirective>;
    readonly selectedChange: EventEmitter<T | T[]>;
    readonly sortChange: EventEmitter<NtColumnSortChange | NtColumnSortChange[]>;
    constructor(_ngZone: NgZone, _differs: IterableDiffers, _changeDetectorRef: ChangeDetectorRef, _elementRef: ElementRef, role: string, _dir: Directionality, _document: any, _platform: Platform);
    ngAfterContentInit(): void;
    selectAll(): void;
    select(item: T): void;
    ngOnChanges(change: SimpleChanges): void;
    checkSelected(item: T): boolean;
    private _clearSort;
    private _resetOptions;
    ngOnDestroy(): void;
}
