UNPKG

dockview-core

Version:

Zero dependency layout manager supporting tabs, groups, grids and splitviews for vanilla TypeScript

40 lines (39 loc) 1.71 kB
import { Event } from '../../events'; import { CompositeDisposable } from '../../lifecycle'; import { CanDisplayOverlay, DropTargetTargetModel, DroptargetEvent, DroptargetOverlayModel, IDropTarget, Position, WillShowOverlayEvent } from '../droptarget'; export interface PointerDropTargetOptions { canDisplayOverlay: CanDisplayOverlay; acceptedTargetZones: Position[]; overlayModel?: DroptargetOverlayModel; /** Render into an external anchor container (floating groups, layout root). */ getOverrideTarget?: () => DropTargetTargetModel | undefined; /** Outline element for positioning; falls back to the drop element. */ getOverlayOutline?: () => HTMLElement | null; className?: string; } /** Pointer-driven counterpart to `Droptarget` with identical visual output. */ export declare class PointerDropTarget extends CompositeDisposable implements IDropTarget { private readonly element; private readonly options; private _targetElement; private _overlayElement; private _state; private _acceptedTargetZonesSet; private readonly _onDrop; readonly onDrop: Event<DroptargetEvent>; private readonly _onWillShowOverlay; readonly onWillShowOverlay: Event<WillShowOverlayEvent>; private _disabled; get disabled(): boolean; set disabled(value: boolean); get state(): Position | undefined; constructor(element: HTMLElement, options: PointerDropTargetOptions); setTargetZones(zones: Position[]): void; setOverlayModel(model: DroptargetOverlayModel): void; dispose(): void; private _onDragOver; private _onDragLeave; private _onDropEvent; private _calculateQuadrant; private _removeOverlay; }