import { InsertNodeParams, KeyType, FieldNames, TreeItem } from '../types'; import { Ref, ComputedRef } from 'vue'; import { TreeDataItem } from 'ant-design-vue/es/tree/Tree'; /** * 创建树操作工具集 * 提供树形数据的常用操作方法,包括节点增删改查、键值获取等功能 * * @param treeDataRef - 响应式树数据引用,存储树形结构数据 * @param getFieldNames - 计算属性,提供树节点字段映射配置(key/children等字段名) * * @returns 包含树操作方法的对象 */ export declare function useTree(treeDataRef: Ref, getFieldNames: ComputedRef): { deleteNodeByKey: (key: string, list?: TreeDataItem[]) => void; insertNodeByKey: ({ parentKey, node, push }: InsertNodeParams) => void; insertNodesByKey: ({ parentKey, list, push }: InsertNodeParams) => void; filterByLevel: (level?: number, list?: TreeDataItem[], currentLevel?: number) => string[] | number[]; updateNodeByKey: (key: string, node: TreeDataItem, list?: TreeDataItem[]) => void; getAllKeys: (list?: TreeDataItem[]) => KeyType[]; getChildrenKeys: (nodeKey: string | number, list?: TreeDataItem[]) => KeyType[]; getEnabledKeys: (list?: TreeDataItem[]) => KeyType[]; getSelectedNode: (key: KeyType, list?: TreeItem[], selectedNode?: TreeItem | null) => TreeItem | null; };