import { ElementRef, OnInit, NgZone } from '@angular/core';
import { Command } from 'ng2-qgrid/core/command/command';
import { RootService } from '../../infrastructure/component/root.service';
import { NgComponent } from '../../infrastructure/component/ng.component';
export interface DropEventArg {
    path: HTMLElement[];
    dragData: any;
    dropData: any;
    action: string;
    inAreaY(element: HTMLElement): boolean;
    inAreaX(element: HTMLElement): boolean;
}
export declare class DropDirective extends NgComponent implements OnInit {
    private root;
    private elementRef;
    private zone;
    area: string;
    dropData: any;
    drop: Command<DropEventArg>;
    dragOver: Command<DropEventArg>;
    dragDirection: 'x' | 'y';
    constructor(root: RootService, elementRef: ElementRef, zone: NgZone);
    ngOnInit(): void;
    onDrop(e: DragEvent): boolean;
    onEnter(e: DragEvent): boolean;
    onOver(e: DragEvent): boolean;
    onLeave(): void;
    private getPosition(e);
    private getPath({x, y});
    private inAreaFactory(e, direction);
}
