import { SelectionHandler } from "./SelectionHandler";
import { RotatedRectangleF, PointF } from "@aurigma/design-atoms-model/Math";
import { SnapLinesHandler } from "../../Viewer/SnapLinesHandler";
import { Canvas } from "../../Canvas";
import { ISelectionProcessModifier, IMoveData, IResizeData, IRotateData } from "./ISelectionProcessModifier";
export declare class SelectionProcessModifier implements ISelectionProcessModifier {
    private _selectionHandler;
    private _canvas;
    private _snapLinesHandler;
    private readonly _minDpiResizeConstraint;
    private _ignoreSnapLines;
    constructor(_selectionHandler: SelectionHandler, _canvas: Canvas, _snapLinesHandler: SnapLinesHandler);
    set ignoreSnapLines(value: boolean);
    beforeMovePerformed(data: IMoveData): PointF;
    beforeResizePerformed(data: IResizeData): RotatedRectangleF;
    beforeRotatePerformed(data: IRotateData): RotatedRectangleF;
    getRectWithFrames(rectangle: RotatedRectangleF): RotatedRectangleF;
    getRectangleWithBorder(rectangle: RotatedRectangleF): RotatedRectangleF;
    private get _region();
    private _validateRectRelativeToRegion;
    private _constrainMoveDataToRegion;
    private _constrainMoveDataToPlaceholderCover;
    private _constrainResizeDataToPlaceholderCover;
    private _getMinSizeConstraintConfiguration;
    private _constrainResizeDataToMinSize;
    private _calculateMinWidthAndHeight;
    private _alignRectangleWithStartRectangle;
    private _constrainResizeDataToSnapLines;
}
