interface SlugPackedTexture { data: Float32Array | Uint32Array; width: number; height: number; } interface SlugGPUData { curveTexture: SlugPackedTexture & { data: Float32Array; }; bandTexture: SlugPackedTexture & { data: Uint32Array; }; vertices: Float32Array; indices: Uint16Array; shapeCount: number; } interface WebGPUVectorRenderer { setGeometry(data: SlugGPUData): void; render(passEncoder: GPURenderPassEncoder, mvp: Float32Array, color: Float32Array, viewportWidth?: number, viewportHeight?: number): void; dispose(): void; } interface WebGPUVectorRendererOptions { sampleCount?: number; } declare function createWebGPUVectorRenderer(device: GPUDevice, format: GPUTextureFormat, options?: WebGPUVectorRendererOptions): WebGPUVectorRenderer; export { SlugGPUData, WebGPUVectorRenderer, WebGPUVectorRendererOptions, createWebGPUVectorRenderer };