import { IPoint } from '@foblex/2d';
import { IFDragHandler } from '../f-drag-handler';
import { FNodeBase } from '../../f-node';
import { BaseConnectionDragHandler } from '../f-node-move';
import { Injector } from '@angular/core';
export declare class FNodeRotateDragHandler implements IFDragHandler {
    private _fNode;
    private _fSourceHandlers;
    private _fTargetHandlers;
    private readonly _fComponentsStore;
    private readonly _fMediator;
    private readonly _fDraggableDataContext;
    fEventType: string;
    fData: any;
    private _initialRotationToX;
    private readonly _startRotation;
    private _onDownPoint;
    private _fNodeRect;
    private get _transform();
    constructor(_injector: Injector, _fNode: FNodeBase, _fSourceHandlers: {
        connection: BaseConnectionDragHandler;
        connector: IPoint;
    }[], _fTargetHandlers: {
        connection: BaseConnectionDragHandler;
        connector: IPoint;
    }[]);
    prepareDragSequence(): void;
    private _getOriginalNodeRect;
    private _calculateDownPoint;
    private _calculateAngleBetweenVectors;
    onPointerMove(difference: IPoint): void;
    private _updateNodeRendering;
    private _calculateDifferenceAfterRotation;
    onPointerUp(): void;
}
