export declare class UITreeModel {
    private maxNodes;
    children: UITreeNode[];
    nodes: UITreeNode[];
    private autoSort;
    constructor(children: KeyValue[], maxNodes?: number, autoCheckable?: boolean, autoSort?: boolean | ((nodeA: UITreeNode, nodeB: UITreeNode) => number));
    private applyAutoSort;
    filter(query: string): void;
    expandNode(nodeId: string): void;
    private findNodeHierarchy;
    toggleExpand(index: number): void;
    toggleMore(index: number): void;
    getChecked(): UITreeNode[];
    private getCheckedNodes;
    private getExpandedTree;
    private filterNodes;
    private nodeMatchesQuery;
    private getChildren;
}
export declare class UITreeNode {
    parent?: UITreeNode;
    get nodeIcon(): string;
    get checkIcon(): "tree-check-half" | "tree-check-on" | "tree-check-off";
    get expandIcon(): "digi-move-line-down" | "digi-move-line";
    id: string;
    icon: string;
    label: string;
    model: KeyValue;
    iconOpen: string;
    iconClosed: string;
    childNodes: UITreeNode[];
    filtered: UITreeNode[];
    leaf: boolean;
    parentId: string;
    level: number;
    checked: number;
    expanded: boolean;
    selected: boolean;
    isSelectable: boolean;
    isExpandable: boolean;
    disabled: boolean;
    showingMore: boolean;
    muted: boolean;
    actions: UITreeAction[];
    constructor(node: KeyValue, parent?: UITreeNode, autoCheckable?: boolean);
    get children(): UITreeNode[];
    hasSelectedChild(): any;
    toggleCheck(isInitial?: boolean, autoCheckable?: boolean): void;
    private updateCheckedPartial;
    private updateChild;
    private mainActionsLength;
    private get _mainActions();
    get mainActions(): UITreeAction[];
    private dropdownActionsLength;
    private get _dropdownActions();
    get dropdownActions(): UITreeAction[];
    assignActions(actions: UITreeAction[]): UITreeNode;
}
export declare class UITreeAction {
    label: string;
    generateLabel: (node: UITreeNode) => string;
    icon: string;
    iconColor: string;
    color: string;
    classes: string;
    asDropdown: boolean;
    this: any;
    fn: (node: UITreeNode) => void;
    display: boolean | ((node: UITreeNode) => boolean);
    getLabel(node: UITreeNode): string;
    constructor(init?: Partial<UITreeAction>);
}
