import { RectangleF, Transform, PointF, Path } from "@aurigma/design-atoms-model/Math";
import * as TextWhizz from "@aurigma/text-whizz/TextWhizzJS";
import { CanvasElementHandler } from "../CanvasElementHandler";
import { ITextSelectionStyleConfig, TextRenderer } from "./TextRenderer";
import { IViewportHandler } from "../Viewer/Interfaces/IViewportHandler";
import { IRgbColorParser } from "../Serialization/Color";
export declare class WebGLTextRenderer extends TextRenderer {
    static staticCanvasMargin: number;
    private _currentCanvas;
    private _needWorkaroundForIOs;
    constructor(staticCanvas: HTMLCanvasElement, activeCanvas: HTMLCanvasElement, textWhizz: typeof TextWhizz, zoom: number, offset: PointF, viewportHandler: IViewportHandler, selectionStyle: ITextSelectionStyleConfig, rgbColorParser: IRgbColorParser, canvasElementHandler: CanvasElementHandler);
    drawText(handler: TextWhizz.TextHandler, transform: Transform, center: PointF, previewScale: number, opacity: number, clippingPath: Path): void;
    transformText(handler: TextWhizz.TextHandler, transform: Transform, center: PointF, previewScale: number, opacity: number, clippingPath: Path): void;
    clearText(): void;
    drawSelection(handler: TextWhizz.TextHandler, selection: TextWhizz.TextRange, transform: Transform, center: PointF, previewScale: number): void;
    getTextImage(handler: TextWhizz.TextHandler, bounds: RectangleF, previewScale: number): HTMLCanvasElement;
    private _isSelectionEmpty;
    private _setCurrentCanvas;
    private _getTextTransform;
    private _getFullClippingPath;
    private _getSurfaceClippingPath;
}
