UNPKG

dockview

Version:

Zero dependency layout manager supporting tabs, grids and splitviews with ReactJS support

41 lines (40 loc) 1.61 kB
import { CompositeDisposable, IDisposable } from '../lifecycle'; export interface IDragAndDropObserverCallbacks { onDragEnter: (e: DragEvent) => void; onDragLeave: (e: DragEvent) => void; onDrop: (e: DragEvent) => void; onDragEnd: (e: DragEvent) => void; onDragOver?: (e: DragEvent) => void; } export declare class DragAndDropObserver extends CompositeDisposable { private element; private callbacks; private counter; constructor(element: HTMLElement, callbacks: IDragAndDropObserverCallbacks); private registerListeners; } export interface IDraggedCompositeData { eventData: DragEvent; dragAndDropData: any; } export interface ICompositeDragAndDropObserverCallbacks { onDragEnter?: (e: IDraggedCompositeData) => void; onDragLeave?: (e: IDraggedCompositeData) => void; onDrop?: (e: IDraggedCompositeData) => void; onDragOver?: (e: IDraggedCompositeData) => void; onDragStart?: (e: IDraggedCompositeData) => void; onDragEnd?: (e: IDraggedCompositeData) => void; } export declare class DragAndDrop extends CompositeDisposable { private _onDragStart; private _onDragEnd; private static _instance; static get INSTANCE(): DragAndDrop; private transferData; private constructor(); registerTarget(element: HTMLElement, callbacks: ICompositeDragAndDropObserverCallbacks): IDisposable; registerDraggable(element: HTMLElement, draggedItemProvider: () => { type: string; id: string; }, callbacks: ICompositeDragAndDropObserverCallbacks): IDisposable; }