import { AfterViewInit, ChangeDetectorRef, ElementRef, NgZone, OnDestroy, OnInit } from '@angular/core';
import { Subscription } from 'rxjs';
import { Table } from 'tn-custom-primeng/table';
import { TreeTable } from 'tn-custom-primeng/treetable';
import { CrudListComponent } from '../../components/crud/crud-list/crud-list.component';
import { TreeTableComponent } from '../../components/crud/tree-table/tree-table.component';
export declare class TnReorderableColumnDirective implements AfterViewInit, OnDestroy {
    crudList: CrudListComponent;
    el: ElementRef;
    zone: NgZone;
    tnReorderableColumnDisabled: boolean;
    dt: Table;
    dragStartListener: any;
    dragOverListener: any;
    dragEnterListener: any;
    dragLeaveListener: any;
    mouseDownListener: any;
    constructor(crudList: CrudListComponent, el: ElementRef, zone: NgZone);
    ngAfterViewInit(): void;
    bindEvents(): void;
    unbindEvents(): void;
    onMouseDown(event: any): void;
    onDragStart(event: any): void;
    onDragOver(event: any): void;
    onDragEnter(event: any): void;
    onDragLeave(event: any): void;
    onDrop(event: any): void;
    isEnabled(): boolean;
    ngOnDestroy(): void;
}
export declare class TnReorderableRowDirective implements AfterViewInit {
    crudList: CrudListComponent;
    el: ElementRef;
    zone: NgZone;
    index: number;
    tnReorderableRowDisabled: boolean;
    dt: Table;
    mouseDownListener: any;
    dragStartListener: any;
    dragEndListener: any;
    dragOverListener: any;
    dragLeaveListener: any;
    dropListener: any;
    constructor(crudList: CrudListComponent, el: ElementRef, zone: NgZone);
    ngAfterViewInit(): void;
    bindEvents(): void;
    unbindEvents(): void;
    onMouseDown(event: any): void;
    onDragStart(event: any): void;
    onDragEnd(event: any): void;
    onDragOver(event: any): void;
    onDragLeave(event: any): void;
    isEnabled(): boolean;
    onDrop(event: any): void;
}
export declare class TnSortableColumnDirective implements OnInit, OnDestroy {
    crudList: CrudListComponent;
    field: string;
    tnSortableColumnDisabled: boolean;
    dt: Table;
    sorted: boolean;
    sortOrder: string;
    subscription: Subscription;
    subscriptionTableReady: Subscription;
    constructor(crudList: CrudListComponent);
    ngOnInit(): void;
    updateSortState(): void;
    onClick(event: MouseEvent): void;
    onEnterKey(event: MouseEvent): void;
    isEnabled(): boolean;
    isFilterElement(element: HTMLElement): boolean;
    ngOnDestroy(): void;
}
export declare class TnSortIcon implements OnInit, OnDestroy {
    crudList: CrudListComponent;
    cd: ChangeDetectorRef;
    field: string;
    dt: Table;
    subscription: Subscription;
    sortOrder: number;
    constructor(crudList: CrudListComponent, cd: ChangeDetectorRef);
    ngOnInit(): void;
    onClick(event: any): void;
    updateSortState(): void;
    ngOnDestroy(): void;
}
export declare class TnTreeTableToggler {
    ttb: TreeTableComponent;
    rowNode: any;
    tt: TreeTable;
    constructor(ttb: TreeTableComponent);
    onClick(event: Event): void;
}
//# sourceMappingURL=tn-table.directive.d.ts.map