import type { InjectionKey } from 'vue'; import type Node from '../store/node'; interface TreeNode { node: Node; $el?: HTMLElement; } interface DragOptions { event: DragEvent; treeNode: TreeNode; } export interface DragEvents { treeNodeDragStart: (options: DragOptions) => void; treeNodeDragOver: (options: DragOptions) => void; treeNodeDragEnd: (event: DragEvent) => void; } export declare const dragEventsKey: InjectionKey; export declare function useDragNodeHandler({ props, ctx, treeRef, dropIndicator, store, }: { props: any; ctx: any; treeRef: any; dropIndicator: any; store: any; }): { dragState: { showDropIndicator: boolean; draggingStartNode: any; dropNode: any; allowDrop: boolean; dropType: any; }; }; export {};