import { ElementRef, EventEmitter } from '@angular/core';
import { Position } from './model/position.model';
import * as i0 from "@angular/core";
export declare class DraggableElementDirective {
    private el;
    originalPosition: Position;
    private pointerDown;
    rotate: number;
    coordinates: EventEmitter<Position>;
    stopped: EventEmitter<any>;
    constructor(el: ElementRef);
    onPointerDown(event: PointerEvent): void;
    onPointerUp(): void;
    onPointerMove(event: PointerEvent): void;
    onWindowPointerUp(): void;
    onPanStart(event: any): void;
    onPanEnd(): void;
    onPanMove(event: any): void;
    onWindowPanEnd(): void;
    private setOriginalPosition;
    private setNewPosition;
    static ɵfac: i0.ɵɵFactoryDeclaration<DraggableElementDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<DraggableElementDirective, "[draggable]", never, { "rotate": { "alias": "rotate"; "required": false; }; }, { "coordinates": "coordinates"; "stopped": "stopped"; }, never, never, false, never>;
}
