import { Subject } from "rxjs";
import StiRectangleGeometryLayout from "../computed/StiRectangleGeometryLayout";
import { StiFormElement } from "../elements/base/StiFormElement";
import { StiModelService } from "./model.service";
import { StiMouseService } from "./mouse.service";
import { StiBarcodeService } from "./sti-barcode.service";
import * as i0 from "@angular/core";
export declare class StiComponentResizerService {
    model: StiModelService;
    mouseService: StiMouseService;
    render: StiRectangleGeometryLayout;
    barcodeService: StiBarcodeService;
    isResizing: boolean;
    startFromRight: boolean;
    startFromLeft: boolean;
    startFromBottom: boolean;
    startFromBottomLeft: boolean;
    startFromBottomRight: boolean;
    private startMouseX;
    private startMouseY;
    private startHeight;
    private startWidth;
    private startElementX;
    private startCanvasWidth;
    private startCanvasHeight;
    element: StiFormElement;
    private currentPage;
    private currentPanel;
    private maxWidth;
    private minWidth;
    private columnWidth;
    private gridVerticalStep;
    private freeAreaHeight;
    private elementsToUpdate;
    StartResizeSubj: Subject<any>;
    EndResizeSubj: Subject<any>;
    constructor(model: StiModelService, mouseService: StiMouseService, render: StiRectangleGeometryLayout, barcodeService: StiBarcodeService);
    private updateElements;
    initResize(element: StiFormElement, e: MouseEvent, startPosition: string): void;
    resizeFromBottomRight(event: MouseEvent): void;
    resizeFromBottomLeft(event: MouseEvent): void;
    resizeFromRight(event: MouseEvent): void;
    resizeFromLeft(event: MouseEvent): void;
    resizeFromBottom(event: MouseEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<StiComponentResizerService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<StiComponentResizerService>;
}
