import { DataTree } from '../../../types/data-structures';
import { MindMapError, DataNode } from '../mind-map-types';
interface UseMindMapStateProps {
    data: DataTree;
    defaultExpanded?: boolean;
    controlledSelectedId?: string;
    onError?: (error: MindMapError) => void;
    onNodeExpand?: (node: DataNode) => void;
    onSelectionChange?: (node: DataNode | null) => void;
    onNodeClick?: (node: DataNode) => void;
}
export declare function useMindMapState({ data, defaultExpanded, controlledSelectedId, onError, onNodeExpand, onSelectionChange, onNodeClick, }: UseMindMapStateProps): {
    isValid: boolean;
    error: string | null;
    expandedNodeIds: Set<string>;
    selectedId: string | null;
    handleNodeToggle: (nodeId: string) => void;
    handleNodeClick: (node: DataNode) => void;
    childrenCountMap: Map<string, number>;
};
export {};
//# sourceMappingURL=useMindMapState.d.ts.map