import { LookupStates } from "./use-state";
import { CascadeEnum, SearchInfo } from "./types";
export interface TreeNode {
    id: string;
    parent?: TreeNode;
    children?: TreeNode[];
    data: any;
    parents?: any[];
    leaf?: boolean;
}
export declare function useTreeNode(lookupStates: LookupStates, useCheckPropsComposition: any): {
    flattenTreeNodes: (treeNodes: any[], parentNode?: TreeNode, parentIds?: any[]) => any[];
    getParents: (nodeId: string) => any;
    getChildren: (parentNodeId: string) => any[];
    getParentsAndChildren: (nodeId: string) => any[];
    getTreeNodeWithCascadeValue: (nodeId: string, cascadeValue: CascadeEnum, isChecked?: boolean) => any;
    buildGetChildrenQueryParams: (treeNode: any, searchInfo?: SearchInfo, isNavigation?: boolean) => any;
    needGetAllChildNodes: (node?: TreeNode, isNavigation?: boolean) => any;
    buildGetAllChildrenQueryParams: (node: TreeNode) => {
        searchValue: string;
        parentsIds: any[];
        customData: any;
    };
    loadChildNodes: (childItems: TreeNode[], parentId: string, gridRef: any) => void;
};
