import { Ref } from 'vue'; import { CodeLayoutDragDropReferencePosition, CodeLayoutPanelInternal } from '../CodeLayout'; export declare function checkDropPanelDefault(dragPanel: CodeLayoutPanelInternal, referencePanel: CodeLayoutPanelInternal, dragOverState: Ref): boolean; export declare function getCurrentDragPanel(): CodeLayoutPanelInternal; export declare function getCurrentDragExternalPanels(): CodeLayoutPanelInternal[] | null; export declare const FLAG_CODE_LAYOUT = "CodeLayout"; export declare const FLAG_SPLIT_LAYOUT = "SplitLayout"; export declare const SYMBOL_DRAG_FLAG: unique symbol; export declare function usePanelDraggerRoot(key: string): void; export declare function usePanelDragger(config?: { onBeforeDragAddPanels?: () => CodeLayoutPanelInternal[]; onDragEnd?: () => void; }): { dragSelfState: Ref; handleDragStart: (panel: CodeLayoutPanelInternal, ev: DragEvent) => void; handleDragEnd: (ev: DragEvent) => void; }; export declare function usePanelDragOverDetector(container: Ref, selfPanel: Ref | undefined, horizontal: Ref | 'four' | 'center', focusPanel: (dragPanel: CodeLayoutPanelInternal) => void, dragCustomHandler: (e: DragEvent) => boolean, dragoverChecking?: ((dragPanel: CodeLayoutPanelInternal) => boolean) | undefined, tag?: string): { dragPanelState: Ref; dragEnterState: Ref; dragLightBoxState: import('vue').ComputedRef; dragOverState: Ref; handleDropPreCheck(e: DragEvent): boolean; handleDragOver: (e: DragEvent) => void; handleDragEnter: (e: DragEvent) => void; handleDragLeave: (e: DragEvent) => void; resetDragOverState: () => void; resetDragState: () => void; };