import { AvailableGeometricShape } from './../constants/available-geometric-shapes';
export declare class CanvasManagerService {
    private canvas;
    private cropRectangle;
    private mouse;
    private pos;
    constructor();
    readonly backgroundImage: any;
    emptyCanvas(): void;
    loadNewImage(backgroundImageURL?: string): void;
    renderCanvas(): void;
    addGeometricShape(strokeColor: string, fillColor: string, shape: AvailableGeometricShape): void;
    private addRectangle(strokeColor, fillColor);
    private addCircle(strokeColor, fillColor);
    private addTriangle(strokeColor, fillColor);
    private addHorizontalLine(strokeColor, fillColor);
    private createHorizontalLine(strokeColor);
    private createVerticalLine(strokeColor);
    private addCross(strokeColor, fillColor);
    toggleFreeDrawing(): void;
    setFreeDrawingBrushColor(color: string): void;
    addText(color: string, inputText: string): void;
    addImage(imageURL: string): Promise<void>;
    setBackgroundFromURL(backgroundImageURL: string): Promise<void>;
    private resizeCanvasAndComputeScaleFactor(f_img, canvas);
    changeSelectedObjectsFillColor(color: string): void;
    changeSelectedObjectsStrokeColor(color: string): void;
    deleteSelectedObjects(): void;
    bringSelectedObjectsToFront(): void;
    sendSelectedObjectsToBack(): void;
    exportImageAsDataURL(): string;
    readonly canvasObjects: any;
    readonly canvasBackgroundImage: any;
    selectItem(itemNumber: number): void;
    readonly activeObject: any;
    getIndexOf(activeObject: any): number;
    jsonFromCanvas(): JSON;
    loadfromJson(json: JSON): Promise<void>;
    private selectLastObject();
    private markSelectedObjectsDirty();
    addSelectionRectangle(): void;
    ajustCropRectanglFromMouse(event: MouseEvent): boolean;
    startSelectingCropRectangleFromMouse(event: MouseEvent): void;
    cropImage(): void;
    ajustCropRectangle(event: any): boolean;
    startSelectingCropRectangle(event: any): void;
    disableSelection(): void;
    private moveAllObjectsInCanvas(x, y, scaleFactor);
    groupSelectedObjects(): void;
}
