import { ReactNode } from 'react';
import type { MenuValue } from '../type';
export declare class MenuTree {
    private menuMap;
    private expandedSet;
    private expandMutex;
    constructor(children: ReactNode, expandMutex?: boolean);
    /**
     * 构建菜单树结构
     */
    private buildTree;
    private traverseChildren;
    /**
     * 更新当前展开的菜单列表
     */
    setExpanded(expandedList: MenuValue[]): void;
    /**
     * 获取当前展开的菜单列表
     */
    getExpanded(): MenuValue[];
    /**
     * 检查节点是否展开
     */
    isExpanded(value: MenuValue): boolean;
    /**
     * 获取所有祖先节点
     */
    getAncestors(value: MenuValue): MenuValue[];
    /**
     * 获取所有子孙节点
     */
    getDescendants(value: MenuValue): MenuValue[];
    /**
     * 获取所有同级节点
     */
    getSiblings(value: MenuValue): MenuValue[];
    /**
     * 更新节点的展开状态
     */
    expandNode(value: MenuValue): void;
}
