import { type DropListRef } from './dropListRef'; import type { DragConfig, DragRefEvents } from './type'; export declare class DragRef { private rootElement; private context; private previewContainer; private previewTemplate?; private placeholderTemplate?; private readonly dragConfig; private _disabled; private previewInstance?; private previewElement; private previewClientRect?; private placeholderElement; private placeholderInstance?; private dragBoundaryElement?; private dragBoundaryClientRect?; private viewportDispose; private anchor?; /** * 触发元素 */ private handlerElement?; /** * 是否监听过事件 */ private isListening; /** * 全局拖拽事件 */ private registry; private dragPositionTrack; /** * 缓存元素是否位于拖拽样式 */ private elementEnable; private parentDragRef?; private lastTouchEventTime; private hasStartedDragging; private hasMoved; private initialTransform?; private initialRootElementClientRect?; private pickUpPositionOnPage; private pickupPositionOnElement; private lastPointPosition; private pointerDirectionDelta; private pointerPositionAtLastDirectionChange; private dragStartTime; private dropContainer?; /** * 拖拽中的位移信息 */ private activeTransform; /** * 拖拽结束之后的位移信息 * * @remark * 这个主要是针对自由拖拽 */ private passiveTransform; private moveEvents; private startedEvents; private releaseEvents; private endedEvents; private exitedEvents; private enterEvents; private droppedEvents; private document; private initialContainer?; private initialIndex; /** * 拖拽进其他容器时传输的对象 */ private _data; private registrySubscription; constructor(rootElement: HTMLElement, context: any, previewContainer: HTMLElement, previewTemplate?: (() => HTMLElement) | undefined, placeholderTemplate?: (() => HTMLElement) | undefined, _dragConfig?: Partial); get disabled(): boolean | undefined; get data(): any; withData(data: any): void; getPreviewEle(): HTMLElement | null; getPlaceholderEle(): HTMLElement | null; disableDrag(): void; enableDrag(): void; destroy(): void; withRootElement(element: HTMLElement): void; isDragging(): boolean; withHandlerElement(ele: HTMLElement): void; withParentDragRef(parentDragRef: DragRef): void; withDropContainer(dropContainer: DropListRef): void; withDragBoundary(element?: HTMLElement): void; forwardSubscribeToEmit(emits: (key: K, ...args: Parameters) => void, eventNames?: K[]): () => void; subscribe(eventName: K, handler: DragRefEvents[K]): (...args: any[]) => any; /** * 当位于拖拽容器发生顺序变换时所执行的更新方法 * * @internal */ updatePositionOnResort(): void; getVisibleElement(): HTMLElement; private toggleDragStyle; reset: () => void; /** * 窗口大小变更之后 我们需要判断下拖拽对象是否还位于范围之内 并做一些处理 */ private handlerBoundaryOnResize; private setDragPosition; private removePreviewInstance; private addListener; private removeListener; private dragStartHandler; private pointerDown; private initializeDrag; private scrollHandler; private pointUpHandler; private mouseMoveHandler; private startDrag; private endDrag; private cleanupDragArtifacts; private waitPreviewAnimateToPlaceholder; private applyPreviewElementTransform; private cleanPositionTrackCache; private executerEvent; private applyRootElementTransform; private updateActiveDropContainer; private updatePointerDirectionDelta; private getPointerPosition; private getDragDistance; private getPointerPositionOnPage; /** * 根据当前鼠标位置获取预览元素的位置 * @param point */ private getPreviewPositionOnPage; private getPreviewRect; private getScrollPosition; private createPlaceholderElement; private destroyPlaceHolder; private createPreviewElement; private destroyPreview; } //# sourceMappingURL=dragRef.d.ts.map