import { PlainTextItem, BaseTextItem } from "@aurigma/design-atoms-model/Product/Items";
import { ITextEditorControllerFactory, NewBaseTextItemHandler } from "./NewBaseTextItemHandler";
import { Transform, PointF, RectangleF } from "@aurigma/design-atoms-model/Math";
import * as TextWhizz from "@aurigma/text-whizz/TextWhizzJS";
import { IPermissions } from "../Permission";
import { ITextFrameData, IWrappingPathData } from "@aurigma/design-atoms-text/TextEditor/Interfaces";
import { IDesignAtomsApiClient } from "../Services/IDesignAtomsApiClient";
import { IListenableColorPreviewService } from "../Services/IColorPreviewService";
import { FontRegistry } from "../InPlace";
import { IColorParser } from "../Serialization/Color";
export declare class NewPlainTextItemHandler extends NewBaseTextItemHandler {
    static readonly typeName: string;
    constructor(fontRegistry: FontRegistry, textEditorControllerFactory: ITextEditorControllerFactory, item?: PlainTextItem, textWhizz?: typeof TextWhizz, apiClient?: IDesignAtomsApiClient, colorPreviewServce?: IListenableColorPreviewService, colorParser?: IColorParser);
    get item(): PlainTextItem;
    set item(item: PlainTextItem);
    getFramesData(): ITextFrameData;
    setTextWhizzWrappingPath(handler: TextWhizz.TextHandler): void;
    getWrappingPathData(): IWrappingPathData;
    updateTextWhizzFrames(handler: TextWhizz.TextHandler): void;
    protected _addTextWhizzFrames(handler: TextWhizz.TextHandler): void;
    protected _onItemPropertyChanged(sender: PlainTextItem, propertyName: string): Promise<void>;
    protected waitInitFrontEndRendering(): Promise<void>;
    protected _getDefaultPermissions(): IPermissions;
    protected _getEndTransformTrigger(resized: boolean): string;
    protected _applyTransform(item: BaseTextItem, transform: Transform, center: PointF): Promise<void>;
    protected _updateRectangleAfterTextScale(item: PlainTextItem, transform: Transform): Promise<void>;
    protected _getPreviewScaleLimits(): {
        min: number;
        max: number;
    };
    private _calculateTransformedRect;
    private _correctBaselineLocation;
    private _resetPreviewScale;
    private _scaleFontSizes;
    private _scaleFontSizesInMarkup;
    private _scaleFontSizesInItem;
    private _scaleTextModelStyles;
    private _createTextWhizzFrame;
    updateRectangle(rectangle: RectangleF, updateFromTextEdit: boolean): Promise<void>;
}
