import { orientationType } from "../../responsive"; import { Direction } from "./dragDropTypes"; export declare type MeasuredDropTarget = { currentIndex: number; dataIndex?: number; element: HTMLElement; index: number; isDraggedElement: boolean; isOverflowIndicator?: boolean; start: number; end: number; mid: number; size: number; }; export declare type targetType = { element: HTMLElement | null; index: number; isLast?: boolean; }; declare type Dimension = keyof Pick; export declare const measureElementSizeAndPosition: (element: HTMLElement, dimension?: Dimension, includeAutoMargin?: boolean) => number[]; export declare const dimensions: (orientation: orientationType) => { CLIENT_SIZE: "scrollHeight" | "scrollWidth" | "clientHeight" | "clientWidth" | "scrollTop" | "scrollLeft"; CONTRA: "width" | "height" | "left" | "right" | "bottom" | "top" | "x" | "y"; CONTRA_POS: "clientX" | "clientY"; DIMENSION: "width" | "height"; END: "width" | "height" | "left" | "right" | "bottom" | "top" | "x" | "y"; POS: "clientX" | "clientY"; SCROLL_POS: "scrollHeight" | "scrollWidth" | "clientHeight" | "clientWidth" | "scrollTop" | "scrollLeft"; SCROLL_SIZE: "scrollHeight" | "scrollWidth" | "clientHeight" | "clientWidth" | "scrollTop" | "scrollLeft"; START: "width" | "height" | "left" | "right" | "bottom" | "top" | "x" | "y"; } | { CLIENT_SIZE: "scrollHeight" | "scrollWidth" | "clientHeight" | "clientWidth" | "scrollTop" | "scrollLeft"; CONTRA: "width" | "height" | "left" | "right" | "bottom" | "top" | "x" | "y"; CONTRA_POS: "clientX" | "clientY"; DIMENSION: "width" | "height"; END: "width" | "height" | "left" | "right" | "bottom" | "top" | "x" | "y"; POS: "clientX" | "clientY"; SCROLL_POS: "scrollHeight" | "scrollWidth" | "clientHeight" | "clientWidth" | "scrollTop" | "scrollLeft"; SCROLL_SIZE: "scrollHeight" | "scrollWidth" | "clientHeight" | "clientWidth" | "scrollTop" | "scrollLeft"; START: "width" | "height" | "left" | "right" | "bottom" | "top" | "x" | "y"; }; export declare const getDraggedItem: (measuredItems: MeasuredDropTarget[]) => MeasuredDropTarget; export declare const moveDragItem: (measuredItems: MeasuredDropTarget[], dropTarget: MeasuredDropTarget) => MeasuredDropTarget[]; export declare const isDraggedElement: (item: MeasuredDropTarget) => boolean; export declare const measureDropTargets: (container: HTMLElement, orientation: orientationType, draggedItem: HTMLElement, itemQuery?: string | undefined) => MeasuredDropTarget[]; export declare const getNextDropTarget: (dropTargets: MeasuredDropTarget[], pos: number, direction: Direction) => MeasuredDropTarget | null; export {};