import { FlatTreeControl } from '@angular/cdk/tree';
import { EventEmitter, OnChanges } from '@angular/core';
import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree';
interface TreeNode {
    id: string;
    name: string;
    children?: TreeNode[];
}
interface TreeFlatNode {
    id: string;
    name: string;
    level: number;
    expandable: boolean;
    hasChild: boolean;
    disabled: boolean;
}
export declare class QMSCKEditorTreeComponent implements OnChanges {
    rawData: Array<any>;
    treeData: Array<any>;
    useExpandFeature: boolean;
    docType: number;
    allowSelectFolder: boolean;
    selectNodeEvent: EventEmitter<string>;
    selectFolderEvent: EventEmitter<string>;
    listParentObj: any;
    arrIndex: string[];
    areaOfCurrentProcess: string;
    treeControl: FlatTreeControl<TreeFlatNode, TreeFlatNode>;
    ngOnChanges(): void;
    private transformer;
    treeFlattener: MatTreeFlattener<TreeNode, {
        expandable: boolean;
        name: string;
        level: number;
        id: string;
        hasChild: boolean;
    }, {
        expandable: boolean;
        name: string;
        level: number;
        id: string;
        hasChild: boolean;
    }>;
    dataSource: MatTreeFlatDataSource<TreeNode, {
        expandable: boolean;
        name: string;
        level: number;
        id: string;
        hasChild: boolean;
    }, {
        expandable: boolean;
        name: string;
        level: number;
        id: string;
        hasChild: boolean;
    }>;
    hasChild: (_: number, node: TreeFlatNode) => boolean;
    selectNode(node: TreeFlatNode): void;
    selectFolder(node: TreeFlatNode): void;
    onExpandNode(node: TreeFlatNode, isExpandNode?: boolean): void;
    removeChildren(parentElement?: TreeNode): void;
    addChildren(parentElement?: TreeNode, childrenList?: TreeNode[]): void;
    getNodeIndex(id: string, level?: number, data?: any[]): number;
    getChildNode(rootId: string, data: any): TreeNode;
    findParentNode(id: string, data: TreeNode[]): any;
    refreshTreeData(): void;
}
export {};
