import { Ref, SetupContext } from 'vue';
import { TreeEmitEventsType } from './constant';
import { TreeDataChangePayload, TreeNode, TreePropTypes } from './props';
import { IFlatData } from './util';
type TreeContext = {
    emit: SetupContext<typeof TreeEmitEventsType>['emit'];
};
type TreeRoot = {
    $el: HTMLElement;
};
type UseNodeDragOptions = {
    getTreeData?: () => TreeNode[];
    onTreeDataChange?: (payload: TreeDataChangePayload) => void;
};
declare const _default: (props: TreePropTypes, ctx: TreeContext, root: Ref<TreeRoot>, flatData: IFlatData, options?: UseNodeDragOptions) => {
    isDragging: Ref<boolean, boolean>;
};
export default _default;
