import { ctor, Point, Vector } from '../types';
export interface WebFont {
    name: string;
    style: string;
    size: number;
    bold: boolean;
    italic: boolean;
}
export declare class WebMask {
    static create(canvas: HTMLCanvasElement | OffscreenCanvas): WebMask;
    private static getLineCap;
    private static getLineJoin;
    protected canvas: HTMLCanvasElement | OffscreenCanvas;
    private context;
    constructor(canvas: HTMLCanvasElement | OffscreenCanvas);
    updateCanvas(canvas: HTMLCanvasElement | OffscreenCanvas): void;
    fillPath(path: Path2D, fillType: ctor): void;
    fillText(webFont: WebFont, texts: Vector<string>, positions: Vector<Point>, matrixWasmIns: any): void;
    strokeText(webFont: WebFont, stroke: {
        width: number;
        cap: ctor;
        join: ctor;
        miterLimit: number;
    }, texts: Vector<string>, positions: Vector<Point>, matrixWasmIns: any): void;
    clear(): void;
}
