import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, QueryList, SimpleChanges, TemplateRef } from '@angular/core';
import { I18nInterface, I18nService } from 'ng-devui/i18n';
import { DevConfigService } from 'ng-devui/utils';
import { Subject, Subscription } from 'rxjs';
import { Dictionary, ITreeItem, TreeFactory, TreeNode } from './tree-factory.class';
import * as i0 from "@angular/core";
export declare class TreeComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy {
    private i18n;
    private devConfigService;
    treeFactory: TreeFactory;
    tree: Array<ITreeItem>;
    treeNodesRef: TemplateRef<any>;
    treeNodeIdKey: string;
    treeNodeChildrenKey: string;
    iconParentOpen: string;
    iconParentClose: string;
    iconLeaf: string;
    loadingTemplateRef: TemplateRef<any>;
    treeNodeTitleKey: string;
    checkboxDisabledKey: string;
    selectDisabledKey: string;
    toggleDisabledKey: string;
    virtualScroll: boolean;
    virtualScrollHeight: string;
    showAnimation: boolean;
    minBufferPx: number;
    maxBufferPx: number;
    itemSize: number;
    nodeSelected: EventEmitter<TreeNode>;
    nodeDblClicked: EventEmitter<TreeNode>;
    nodeRightClicked: EventEmitter<{
        node: TreeNode;
        event: MouseEvent;
    }>;
    nodeToggled: EventEmitter<TreeNode>;
    afterTreeInit: EventEmitter<Dictionary<TreeNode>>;
    treeNodeContent: QueryList<ElementRef>;
    viewPort: CdkVirtualScrollViewport;
    i18nCommonText: I18nInterface['common'];
    i18nSubscription: Subscription;
    treeNodes: any[];
    destroy$: Subject<void>;
    afterInitAnimate: boolean;
    constructor(i18n: I18nService, devConfigService: DevConfigService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    initTree(): void;
    ngAfterViewInit(): void;
    contextmenuEvent(event: any, node: any): void;
    selectNode(event: any, treeNode: TreeNode): void;
    toggleNode(event: any, treeNode: TreeNode): void;
    scrollToIndex(index: number): void;
    appendTreeItems(treeItems: Array<ITreeItem>, parentId: any): void;
    nodeDblClick(event: any, node: any): void;
    isSelectableRegion(ele: any): boolean;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TreeComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TreeComponent, "d-tree", never, { "tree": "tree"; "treeNodesRef": "treeNodesRef"; "treeNodeIdKey": "treeNodeIdKey"; "treeNodeChildrenKey": "treeNodeChildrenKey"; "iconParentOpen": "iconParentOpen"; "iconParentClose": "iconParentClose"; "iconLeaf": "iconLeaf"; "loadingTemplateRef": "loadingTemplateRef"; "treeNodeTitleKey": "treeNodeTitleKey"; "checkboxDisabledKey": "checkboxDisabledKey"; "selectDisabledKey": "selectDisabledKey"; "toggleDisabledKey": "toggleDisabledKey"; "virtualScroll": "virtualScroll"; "virtualScrollHeight": "virtualScrollHeight"; "showAnimation": "showAnimation"; "minBufferPx": "minBufferPx"; "maxBufferPx": "maxBufferPx"; "itemSize": "itemSize"; }, { "nodeSelected": "nodeSelected"; "nodeDblClicked": "nodeDblClicked"; "nodeRightClicked": "nodeRightClicked"; "nodeToggled": "nodeToggled"; "afterTreeInit": "afterTreeInit"; }, never, never, false>;
}
