import type { AbstractEngine, Camera, EffectWrapperCreationOptions, FrameGraph, FrameGraphRenderPass, FrameGraphTextureHandle, Nullable } from "../../../index.js";
import { Vector3 } from "../../../Maths/math.vector.js";
import { ThinPassPostProcess } from "../../../PostProcesses/thinPassPostProcess.js";
import { FrameGraphPostProcessTask } from "./postProcessTask.js";
import "../../../Shaders/volumetricLightingBlendVolume.fragment.js";
import "../../../ShadersWGSL/volumetricLightingBlendVolume.fragment.js";
/**
 * @internal
 */
declare class VolumetricLightingBlendVolumeThinPostProcess extends ThinPassPostProcess {
    camera: Camera;
    outputTextureWidth: number;
    outputTextureHeight: number;
    extinction: Vector3;
    enableExtinction: boolean;
    private _invProjection;
    constructor(name: string, engine?: Nullable<AbstractEngine>, enableExtinction?: boolean, options?: EffectWrapperCreationOptions);
    bind(noDefaultBindings?: boolean): void;
}
/**
 * @internal
 */
export declare class FrameGraphVolumetricLightingBlendVolumeTask extends FrameGraphPostProcessTask {
    readonly postProcess: VolumetricLightingBlendVolumeThinPostProcess;
    depthTexture: FrameGraphTextureHandle;
    camera: Camera;
    constructor(name: string, frameGraph: FrameGraph, enableExtinction?: boolean);
    getClassName(): string;
    record(skipCreationOfDisabledPasses?: boolean): FrameGraphRenderPass;
}
export {};
