import { type RenderDevice, type RenderDeviceDiagnostics, type RenderTarget } from "./RenderDevice";
export interface WebGPURenderToTextureProofOptions {
    readonly width?: number;
    readonly height?: number;
    readonly label?: string;
    readonly clearColor?: readonly [number, number, number, number];
    readonly triangleColor?: readonly [number, number, number, number];
    readonly disposeResources?: boolean;
}
export interface WebGPURenderToTextureProof {
    readonly backend: "webgpu";
    readonly width: number;
    readonly height: number;
    readonly label: string;
    readonly renderTargetFormat: "rgba8";
    readonly hasDepthTexture: boolean;
    readonly drawCalls: number;
    readonly targetPixel: readonly number[];
    readonly presentedPixel: readonly number[];
    readonly readbackMatchesPresentation: boolean;
    readonly targetPixels: Uint8Array;
    readonly diagnosticsBeforeDispose: RenderDeviceDiagnostics;
    readonly diagnosticsAfterDispose: RenderDeviceDiagnostics;
    readonly disposedRenderTargets: number;
    readonly disposedTextures: number;
}
export declare function runWebGPURenderToTextureProof(device: RenderDevice, options?: WebGPURenderToTextureProofOptions): WebGPURenderToTextureProof;
export declare function isWebGPURenderTarget(target: RenderTarget): boolean;
//# sourceMappingURL=WebGPURenderToTextureProof.d.ts.map