import type { Ref } from 'vue';
import type { Tree2FlattenedNode, Tree2Node, Tree2NodeValue } from '../types';
export interface UseTreeKeyboardOptions {
    containerRef: Ref<HTMLElement | null>;
    data: Ref<Tree2Node[]>;
    expandedValues: Ref<Tree2NodeValue[]>;
    activeNodeValue: Ref<Tree2NodeValue | null>;
    isNodeExpanded: (value: Tree2NodeValue) => boolean;
    toggleExpand: (value: Tree2NodeValue) => void;
    selectNode: (node: Tree2Node) => void;
}
export declare function useTreeKeyboard(options: UseTreeKeyboardOptions): {
    flattenedNodes: import("vue").ComputedRef<Tree2FlattenedNode[]>;
    navigableNodes: import("vue").ComputedRef<Tree2FlattenedNode[]>;
    currentIndex: import("vue").ComputedRef<number>;
    moveDown: () => void;
    moveUp: () => void;
    moveToFirst: () => void;
    moveToLast: () => void;
    handleLeft: () => void;
    handleRight: () => void;
    handleSelect: () => void;
};
