import { TreeNode } from "./type"; /** * 将树转换成列表 * @param treeData * @returns */ export declare function flatTreeData(treeData: TreeNode[], sorter?: (treeNodes: TreeNode[]) => TreeNode[]): TreeNode[]; /** * 计算层级 * @param uri * @param rootUri * @returns */ export declare function calcLevel(uri: string, rootUri: string): number; /** * 根据uri获取文件名 * @param uri * @returns */ export declare function getFileName(uri: string): string; /** * 根据uri获取节点路径 * @param tree * @param uri * @returns */ export declare function getTreeNodePath(tree: TreeNode, uri: string): number[] | null; /** * 根据uri查询节点 * @param tree * @param uri * @returns */ export declare function getTreeNodeByUri(tree: TreeNode | undefined, uri: string): TreeNode<{}, never> | null | undefined; /** * 获取父节点 * @param tree * @param uri * @returns */ export declare function getParentNode(tree: TreeNode | undefined, uri: string): TreeNode<{}, never> | null; export declare function isParentUri(curUri: string, parentUri: string): boolean; /** * 更新节点属性,并返回新的树 * @param tree * @param uri * @param newProps * @returns */ export declare function assignTreeNode(tree: TreeNode | undefined, uri: string, newProps: Partial): TreeNode | undefined; /** * 为节点增加子节点 * @param tree * @param parentUri * @param node * @returns */ export declare function appendTreeNode(tree: TreeNode | undefined, parentUri: string, node: TreeNode): TreeNode<{}, never> | undefined; /** * 从树中删除某节点 * @param tree * @param uri * @returns */ export declare function removeTreeNode(tree: TreeNode | undefined, uri: string): TreeNode<{}, never> | undefined; /** * 遍历树,生成新的树,叶子节点优先遍历 * @param tree * @param fn * @returns */ export declare function treeMap(tree: TreeNode, fn: (treeNode: TreeNode) => TreeNode): TreeNode; export declare const replaceTreeNode: (tree: TreeNode | undefined, uri: string, newTreeNode: TreeNode) => TreeNode<{}, never> | undefined; declare type Assert = (condition: unknown, message?: string) => asserts condition; export declare const assert: Assert; export {};