UNPKG

dockview-core

Version:

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

36 lines (35 loc) 1.7 kB
import { IDisposable } from '../lifecycle'; import { Event } from '../events'; import { DroptargetEvent, DropTargetTargetModel, Position, WillShowOverlayEvent } from '../dnd/droptarget'; import { DockviewComponentOptions } from './options'; export interface IRootDropTargetHost { readonly id: string; readonly element: HTMLElement; readonly options: DockviewComponentOptions; isGridEmpty(): boolean; rootDropTargetOverrideTarget(): DropTargetTargetModel | undefined; /** * Build, fire, and return the verdict for an unhandled-drag-over event. * Implemented on the component side so the service stays free of * circular imports with the event class declared in dockviewComponent. */ dispatchUnhandledDragOver(nativeEvent: DragEvent | PointerEvent, position: Position): boolean; } export interface IRootDropTargetService extends IDisposable { /** Merged stream from both DnD backends. */ readonly onWillShowOverlay: Event<WillShowOverlayEvent>; /** Merged stream from both DnD backends. */ readonly onDrop: Event<DroptargetEvent>; /** Apply changed options (dndEdges). */ setOptions(options: Partial<DockviewComponentOptions>): void; } export declare class RootDropTargetService implements IRootDropTargetService { private readonly _html5Target; private readonly _pointerTarget; readonly onWillShowOverlay: Event<WillShowOverlayEvent>; readonly onDrop: Event<DroptargetEvent>; constructor(host: IRootDropTargetHost); setOptions(options: Partial<DockviewComponentOptions>): void; dispose(): void; } export declare const RootDropTargetModule: import("./modules").DockviewModule<IRootDropTargetHost>;