import { Subject, Observable } from 'rxjs'; import { DragBackendEvent } from './drag-backend-event'; import { Unsubscribe } from './unsubscribe'; import { DragMonitor } from '../drag-monitor'; export declare abstract class DragBackend { protected readonly monitor: DragMonitor; protected readonly eventStream: Subject>; readonly eventStream$: Observable; abstract connectDragSource(sourceId: string, node: any): Unsubscribe; abstract connectDropTarget(targetId: string, node: any): Unsubscribe; constructor(monitor: DragMonitor); }