import { OnInit, Injector, ElementRef, OnDestroy, AfterViewInit, EventEmitter, SimpleChange, QueryList } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { TreeModel, Ng2TreeSettings, TreeComponent, Tree, NodeSelectedEvent, NodeCollapsedEvent, NodeExpandedEvent, NodeMovedEvent, NodeCreatedEvent, NodeRemovedEvent, NodeRenamedEvent } from 'ng2-tree';
import { LoadNextLevelEvent } from 'ng2-tree/src/tree.events';
import { Subscription } from 'rxjs/Subscription';
import { LocalStorageService, DialogService, OServiceBaseComponent, ISQLOrder, OFormComponent, OTranslateService, OSearchInputComponent } from 'ontimize-web-ngx';
import { OTreeNodeComponent } from './o-tree-node.component';
export declare const DEFAULT_BASIC_INPUTS_O_TREE: string[];
export declare const DEFAULT_INPUTS_O_TREE: string[];
export declare const DEFAULT_OUTPUTS_O_TREE: string[];
export declare class OTreeComponent extends OServiceBaseComponent implements OnInit, AfterViewInit, OnDestroy {
    protected elRef: ElementRef;
    protected form: OFormComponent;
    static DEFAULT_INPUTS_O_TREE: string[];
    static DEFAULT_BASIC_INPUTS_O_TREE: string[];
    static DEFAULT_OUTPUTS_O_TREE: string[];
    static DEFAULT_ROOT_ROUTE: string;
    protected sortColumns: string;
    protected descriptionColumns: string;
    protected separator: string;
    protected parentColumn: string;
    showRoot: boolean;
    protected rootTitle: string;
    recursive: boolean;
    recursiveLevels: number;
    translate: boolean;
    protected route: string;
    controls: boolean;
    static: boolean;
    rightMenu: boolean;
    refreshButton: boolean;
    quickFilter: boolean;
    quickFilterColumns: string;
    filterCaseSensitive: boolean;
    protected sortColArray: Array<ISQLOrder>;
    protected descriptionColArray: Array<string>;
    protected quickFilterColArray: string[];
    protected dataResponseArray: any[];
    protected expandedNodesIds: any[];
    oTitle: string;
    treeNodes: OTreeNodeComponent[];
    onNodeSelected: EventEmitter<any>;
    onNodeExpanded: EventEmitter<any>;
    onNodeCollapsed: EventEmitter<any>;
    onLoadNextLevel: EventEmitter<any>;
    treeComponent: TreeComponent;
    rootTreeModel: TreeModel;
    settings: Ng2TreeSettings;
    selectedNode: Tree;
    protected localStorageService: LocalStorageService;
    protected dialogService: DialogService;
    protected router: Router;
    protected actRoute: ActivatedRoute;
    protected translating: boolean;
    protected translateService: OTranslateService;
    protected onLanguageChangeSubscription: Subscription;
    searchInput: QueryList<OSearchInputComponent>;
    protected filteringTree: boolean;
    resetingTree: boolean;
    constructor(injector: Injector, elRef: ElementRef, form: OFormComponent);
    getComponentKey(): string;
    getDataToStore(): {};
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: {
        [propName: string]: SimpleChange;
    }): void;
    initialize(): void;
    onLanguageChangeCallback(): void;
    protected translateChildren(treeModel: TreeModel): void;
    setDataArray(data: any): void;
    registerTreeNode(oTreeNode: OTreeNodeComponent): void;
    getComponentFilter(existingFilter?: any): any;
    getRecursiveChildren(id: any, callback: any): void;
    getTreeNodesChildren(itemdata: any, callback: any): void;
    protected doChildQuery(queryMethodName: string, queryArguments: any[], callback: any): void;
    protected mapTreeNode(itemdata?: any, treeNodeComponent?: OTreeComponent): TreeModel;
    protected getNodeId(item?: any): string;
    protected getNodeDescription(item?: any): string;
    reloadData(): void;
    protected setData(treeArray: any[]): void;
    protected resetTree(): void;
    onSearch(textValue: string): void;
    nodeSelected(event: NodeSelectedEvent): void;
    protected innerNodeSelected(data: any, node: Tree): void;
    nodeMoved(event: NodeMovedEvent): void;
    nodeCreated(event: NodeCreatedEvent): void;
    nodeRemoved(event: NodeRemovedEvent): void;
    nodeRenamed(event: NodeRenamedEvent): void;
    nodeExpanded(event: NodeExpandedEvent): void;
    nodeCollapsed(event: NodeCollapsedEvent): void;
    nextLevelLoaded(event: LoadNextLevelEvent): void;
    executeNodeActionById(id: number | string, action: string): void;
    hasTitle(): boolean;
    useQuickFilter(): boolean;
    protected filterTreeUsingFilter(filter: any): void;
    protected filterNodesUsingFilter(item: TreeModel, filter: string): void;
    protected filterBranch(item: TreeModel, filter: string): void;
    protected filterLeaf(item: TreeModel, filter: string): void;
    protected getStringForSearch(item: TreeModel): string;
}
export declare class OTreeComponentModule {
}
