import { OrthographicCamera, PerspectiveCamera, Texture, WebGLRenderer } from 'three';
import { PassOptions, ProgressiveGPass } from './GPass.js';
/**
 * SAO implementation inspired from bhouston previous SAO work
 */
export interface ProgressiveAOPassOptions extends PassOptions {
    intensity?: number;
    kernelRadius?: number;
    kernelSize?: number;
    bias?: number;
}
export declare const DefaultProgressiveAOPassOptions: Required<ProgressiveAOPassOptions>;
export declare class ProgressiveAOPass extends ProgressiveGPass {
    private generationMaterial;
    private accumulateMaterial;
    private _generationBuffer;
    _options: Required<ProgressiveAOPassOptions>;
    private fsQuad;
    private kernels;
    private noiseTextures;
    setTexture(uName: string, texture: Texture | undefined): void;
    get displayName(): string;
    set options(value: ProgressiveAOPassOptions);
    constructor();
    update(camera: PerspectiveCamera | OrthographicCamera): void;
    render(renderer: WebGLRenderer): boolean;
    setSize(width: number, height: number): void;
    protected generateSampleKernel(frameIndex: number): void;
    protected generateRandomKernelRotations(frameIndex: number): void;
}
