import { IView, DragOverPosition } from '../typing'; /** * 处理分屏(Split)逻辑 * @param view 原始分屏数据 * @param targetViewKey 从哪个view拖拽的 * @param targetViewKey 拖拽到哪个view去 * @param position 分屏方向 * @param dragNode 拖拽的节点 */ export declare function handleViewSplit(view: IView, sourceViewKey: string, targetViewKey: string, position: DragOverPosition, dragNode: any): { parentViewKey: string; isRoot?: boolean; viewKey: string; items: import("../typing").ViewData[]; v?: IView[]; h?: IView[]; }; /** * 从原始view数据中寻找目标view * @param view 原始view数据 * @param key 需要寻找的目标View的key * @returns 返回目标view */ export declare function findViewByKey(view: IView, key: string): IView; /** 获取全部 view items */ export declare function getAllViewItems(view: IView | IView[]): IView['items']; /** 获取 item 的直接父视图 */ export declare function getParentView(rootView: IView, item: IView['items'][number]): IView; /** 从source view中删除拖拽节点 */ export declare function removeDragNodeSourceView(sourceView: IView, dragNode: any, view: IView): void; /** 从view的父亲中删除该view */ export declare function removeViewFromParent(sourceView: IView, view: IView): void; /** * 更新 viewKey 对应的视图中的 items,并返回更新后的视图数据 * @param view 原始分栏数据 * @param view 需要更新的目标view * @param children 需要更新的目标 view 的 children */ export declare function createViewData(view: IView, viewKey: string, children: any): { parentViewKey: string; isRoot?: boolean; viewKey: string; items: import("../typing").ViewData[]; v?: IView[]; h?: IView[]; }; export declare function addClass(element: HTMLElement, className: string): void; export declare function removeClass(element: HTMLElement, className: string): void; export declare function decorateDragOverElement(element: HTMLElement, position: DragOverPosition): void; export declare function removeDecorateDragOverElement(element: HTMLElement): void; export declare function getDragOverPosition(e: DragEvent, element: HTMLElement): DragOverPosition;