import { GMLRender } from "./GMLRender";
import { AffineMatrix } from "../math";
import { GraphicNode } from "../graphics";
import { Point, RectNode } from "../common";
import { GridType } from "@/app/docState/GridType";
/**
 * 主管渲染的GMLApp
 */
export declare class CanvasRender implements GMLRender {
    globalTransform: AffineMatrix;
    canvas: HTMLCanvasElement | null;
    glCtx: CanvasRenderingContext2D | null;
    constructor();
    init(element: HTMLCanvasElement): void;
    setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
    reset(): void;
    scale(sx: number, sy: number, globalPoint?: Point): void;
    translation(dx: number, dy: number): void;
    resetTransform(): void;
    transformToLocal(point: Point): Point;
    transformToGlobal(p: Point): Point;
    dirtyDraw(bounds: RectNode, graphicList: GraphicNode[], gridType?: GridType): void;
    private drawGrid;
    getViewPortBounds(): RectNode;
    getGlobalPoint(event: PointerEvent): Point;
    getScale(): number;
    scaleToCenter(scaleNumber: number): void;
}
//# sourceMappingURL=CanvasRender.d.ts.map