import { Camera, Material, Plane, Scene, Side, Texture } from 'three';
import { BaseSpecklePass, SpecklePass } from './SpecklePass';
export declare enum DepthType {
    PERSPECTIVE_DEPTH = 0,
    LINEAR_DEPTH = 1
}
export declare enum DepthSize {
    FULL = 0,
    HALF = 1
}
export declare class DepthPass extends BaseSpecklePass implements SpecklePass {
    private renderTarget;
    private renderTargetHalf;
    private depthMaterial;
    private depthBufferSize;
    private scene;
    private camera;
    private colorBuffer;
    onBeforeRender: () => void;
    onAfterRender: () => void;
    get displayName(): string;
    get material(): Material;
    get outputTexture(): Texture;
    get outputTextureHalf(): Texture;
    set depthType(value: DepthType);
    set depthSize(value: DepthSize);
    set depthSide(value: Side);
    constructor();
    setClippingPlanes(planes: Plane[]): void;
    update(scene: Scene, camera: Camera): void;
    render(renderer: any, writeBuffer: any, readBuffer: any): void;
    setSize(width: number, height: number): void;
}
