export class OutlineRenderer {
    /**
     *
     * @type {WebGLRenderer}
     */
    renderer: WebGLRenderer;
    /**
     *
     * @type {Camera}
     */
    camera: Camera;
    /**
     *
     * @type {Scene}
     */
    scene: Scene;
    /**
     *
     * @type {HashMap<HighlightDefinition>}
     * @private
     */
    private __definition_dictionary;
    __ss_camera: OrthographicCamera;
    __ss_scene: Scene;
    __material_decode: ShaderMaterial;
    __material_dilate: ShaderMaterial;
    __material_blur: ShaderMaterial;
    __ss_mesh: Mesh<PlaneBufferGeometry, ShaderMaterial>;
    __id_scene: Scene;
    /**
     *
     * @type {boolean}
     */
    isTargetClear: boolean;
    __textureParametersColor: DataTexture;
    __renderTargetObjectId_t0: WebGLRenderTarget;
    __renderTargetObjectId_t1: WebGLRenderTarget;
    __renderTargetObjectId_t2: WebGLRenderTarget;
    __renderTargetColor: WebGLRenderTarget;
    __renderTargetFinal: WebGLRenderTarget;
    /**
     * Mask will be dilated by this number of pixels before being blurred
     * @type {number}
     * @private
     */
    private __outline_offset;
    /**
     *
     * @type {number}
     * @private
     */
    private __resolution_scale;
    /**
     *
     * @type {HighlightDefinition|null}
     * @private
     */
    private __active_definition;
    setScene(scene: any): void;
    /**
     *
     * @param {WebGLRenderer} renderer
     */
    setWebGLRenderer(renderer: WebGLRenderer): void;
    /**
     *
     * @param {number} x
     * @param {number} y
     */
    resize(x: number, y: number): void;
    /**
     *
     * @param {PerspectiveCamera|OrthographicCamera} camera
     */
    setCamera(camera: PerspectiveCamera | OrthographicCamera): void;
    /**
     *
     * @param {HighlightRenderGroup} group
     * @private
     */
    private __build_definition_dictionary;
    /**
     *
     * @param {Object3D} object
     * @private
     */
    private __append_to_id_scene;
    /**
     *
     * @param {HighlightRenderGroup} group
     */
    renderObjectIDs(group: HighlightRenderGroup): void;
    __current_group: HighlightRenderGroup;
    /**
     *
     * @param {number} thickness
     */
    dilateObjectIDs(thickness: number): void;
    /**
     *
     * @param {Material} material
     * @param {WebGLRenderTarget} target
     * @private
     */
    private __ss_render_to_target;
    renderColorPass(): void;
    /**
     * Requires object ID texture as input, produces rendering of outlines
     */
    renderMainPass(): void;
    /**
     *
     * @param {number} id
     * @param {HighlightDefinition} definition
     * @private
     */
    private __write_parameters_for_definition;
    writeParameters(): void;
    /**
     *
     * @param {HighlightRenderGroup} group
     */
    render(group: HighlightRenderGroup): void;
    clearRenderTarget(): void;
}
import { Scene } from "three";
import { OrthographicCamera } from "three";
import { ShaderMaterial } from "three";
import { PlaneBufferGeometry } from "three";
import { Mesh } from "three";
import { DataTexture } from "three";
import { WebGLRenderTarget } from "three";
//# sourceMappingURL=OutlineRenderer.d.ts.map