import { type RenderDevice, type RenderTarget } from "./RenderDevice";
import { ToneMappingPass, type BloomOptions } from "./PostProcessPass";
import { type A3DColorManagementPolicy } from "./ColorManagement";
import { type ExternalParityToneMappingIntent, type ExternalParityToneMappingPolicy } from "./ToneMapping";
export type ExternalParityHdrRenderTargetFormat = "rgba16f" | "rgba32f" | "rgba8";
export type ExternalParityHdrPipelineMode = "hdr" | "ldr-fallback";
export interface ExternalParityHdrPipelineDescriptor {
    readonly width: number;
    readonly height: number;
    readonly intent?: ExternalParityToneMappingIntent;
    readonly preferredFormat?: Extract<ExternalParityHdrRenderTargetFormat, "rgba16f" | "rgba32f">;
    readonly allowLdrFallback?: boolean;
    readonly bloom?: BloomOptions | false;
}
export interface ExternalParityHdrPipeline {
    readonly mode: ExternalParityHdrPipelineMode;
    readonly format: ExternalParityHdrRenderTargetFormat;
    readonly colorTarget: RenderTarget;
    readonly displayTarget: RenderTarget;
    readonly colorManagement: A3DColorManagementPolicy;
    readonly toneMapping: ExternalParityToneMappingPolicy;
    readonly bloom: BloomOptions | false;
    readonly warnings: readonly string[];
}
export declare function createExternalParityHdrPipeline(device: RenderDevice, descriptor: ExternalParityHdrPipelineDescriptor): ExternalParityHdrPipeline;
export declare function executeExternalParityToneMapPass(device: RenderDevice, pipeline: ExternalParityHdrPipeline): ToneMappingPass;
//# sourceMappingURL=HDRRenderPipeline.d.ts.map