/// import type { Vec2 } from "../math/Vec2"; import type { Vec4 } from "../math/Vec4"; import type { Lookups } from "../font/types"; import type { Settings } from "../consts"; import type { Renderer } from "./Renderer"; import { type TextAlign } from "../layout/styling"; export declare class WebGPURenderer implements Renderer { private readonly device; private readonly context; private readonly colorTextureView; private readonly settings; readonly fontLookups: Lookups; private drawingMode; private drawingIndices; private rectangleData; private rectangleCount; private glyphData; private glyphCount; private readonly vertexBuffer; private readonly rectangleBuffer; private readonly textBuffer; private readonly textBindGroupLayout; private readonly rectangleBindGroup; private readonly textBindGroup; private readonly rectanglePipeline; private readonly textPipeline; private readonly sampler; constructor(device: GPUDevice, context: GPUCanvasContext, colorTextureView: GPUTextureView, settings: Settings, fontLookups: Lookups, fontAtlasTexture: ImageBitmap); rectangle(color: Vec4, position: Vec2, size: Vec2, corners: Vec4, borderWidth: Vec4, borderColor: Vec4, clipStart: Vec2, clipSize: Vec2, clipCorners: Vec4): void; text(text: string, position: Vec2, fontName: string, fontSize: number, color: Vec4, textAlign: TextAlign, clipStart: Vec2, clipSize: Vec2, options?: { lineHeight?: number; maxWidth?: number; noWrap?: boolean; }): void; render(commandEncoder: GPUCommandEncoder): void; }