import { ElementRef } from '@angular/core'; import { Destroy } from '@deja-js/component/core'; import { Observable } from 'rxjs'; import { IDragCursorInfos } from './mouse-drag-cursor-infos.interface'; import { DejaMouseDragDropService } from './mouse-dragdrop.service'; import { IDragDropContext } from './mouse-dragdrop-context.interface'; import { IDropCursorInfos } from './mouse-drop-cursor-infos.interface'; import * as i0 from "@angular/core"; export declare class DejaMouseDroppableDirective extends Destroy { private _context; private _dragContext; set context(value: IDejaMouseDroppableContext); get context(): IDejaMouseDroppableContext; constructor(elementRef: ElementRef, dragDropService: DejaMouseDragDropService); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } export interface IDejaMouseDroppableContext { dragEnter?: (dragContext: IDragDropContext, dragCursor: IDragCursorInfos) => IDropCursorInfos | Observable; dragOver?: (dragContext: IDragDropContext, dragCursor: IDragCursorInfos) => IDropCursorInfos; dragLeave?: (dragContext: IDragDropContext) => void; drop?: (dragContext: IDragDropContext, dragCursor: IDragCursorInfos) => void; }