import type { ICommonStyleParams, IContext2d, ISetCommonStyleParams, ISetStrokeStyleParams, IStrokeStyleParams, ITextStyleParams, IConicalGradientData, EnvType } from '@visactor/vrender-core';
import { BrowserContext2d } from '../browser';
interface ITTContext {
    setFillStyle: (c: string | CanvasGradient) => void;
    setStrokeStyle: (c: string | CanvasGradient) => void;
    setGlobalAlpha: (alpha: number) => void;
    setLineWidth: (width: number) => void;
    setMiterLimit: (limit: number) => void;
    setLineJoin: (lineJoin: string) => void;
    setLineCap: (lineCap: string) => void;
    setTextAlign: (align: string) => void;
    setTextBaseline: (baseline: string) => void;
    setLineDash: (lineDash: number[]) => void;
    setFontSize: ((size: number) => void) & ((fontSize: number) => void);
    font: string;
}
export declare class TaroContext2d extends BrowserContext2d implements IContext2d {
    static env: EnvType;
    nativeContext: ITTContext;
    _globalAlpha: number;
    get globalAlpha(): number;
    set globalAlpha(ga: number);
    draw(): void;
    strokeText(text: string, x: number, y: number): void;
    _setCommonStyle(params: ISetCommonStyleParams, attribute: ICommonStyleParams, offsetX: number, offsetY: number, defaultParams?: ICommonStyleParams): void;
    _setStrokeStyle(params: ISetStrokeStyleParams, attribute: IStrokeStyleParams, offsetX: number, offsetY: number, defaultParams?: IStrokeStyleParams): void;
    setTextStyleWithoutAlignBaseline(params: Partial<ITextStyleParams>, defaultParams?: ITextStyleParams): void;
    setTextStyle(params: Partial<ITextStyleParams>, defaultParams?: ITextStyleParams): void;
    createConicGradient(x: number, y: number, startAngle: number, endAngle: number): IConicalGradientData;
    createPattern(image: HTMLImageElement | HTMLCanvasElement | HTMLVideoElement, repetition: string): CanvasPattern;
    getImageData(sx: number, sy: number, sw: number, sh: number): any;
    createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
}
export {};
