import type { GpuImageEncodeFormat, GpuImage as IGpuImage } from "./gpuImage"; import type { ImageChannels } from "./imageTypes"; import type { ImageValue } from "./imageValue"; export interface ApplyParams { shader: string; uniforms: ArrayBuffer | undefined; outSize?: { width: number; height: number; }; } export declare class WebGpuImage implements IGpuImage { private device; private texture; readonly width: number; readonly height: number; readonly backend: "webgpu"; readonly channels: ImageChannels; private constructor(); static from(value: ImageValue): Promise; apply(params: ApplyParams): WebGpuImage; /** Synchronous transfer to ImageBitmap via OffscreenCanvas. The transfer * drains the texture; this image is disposed afterward. */ transferToImageBitmap(): Promise; toImageValue(previewScale: number): Promise; /** Encode the image to a compressed format. Single-use: the underlying * texture is disposed during encoding (via `transferToImageBitmap`); a * second call on the same instance throws. */ encode(format: GpuImageEncodeFormat, quality?: number): Promise; dispose(): void; } //# sourceMappingURL=webGpuImage.browser.d.ts.map