/**
 * @module vim-loader/materials
 */
import * as THREE from 'three';
/** Outline Material based on edge detection. */
export declare class OutlineMaterial {
    material: THREE.ShaderMaterial;
    private _camera;
    private _resolution;
    constructor(options?: Partial<{
        sceneBuffer: THREE.Texture;
        resolution: THREE.Vector2;
        camera: THREE.PerspectiveCamera | THREE.OrthographicCamera;
    }>);
    get resolution(): THREE.Vector2;
    set resolution(value: THREE.Vector2);
    get camera(): THREE.PerspectiveCamera | THREE.OrthographicCamera | undefined;
    set camera(value: THREE.PerspectiveCamera | THREE.OrthographicCamera | undefined);
    get strokeBlur(): number;
    set strokeBlur(value: number);
    get strokeBias(): number;
    set strokeBias(value: number);
    get strokeMultiplier(): number;
    set strokeMultiplier(value: number);
    get color(): THREE.Color;
    set color(value: THREE.Color);
    get sceneBuffer(): THREE.Texture;
    set sceneBuffer(value: THREE.Texture);
    get depthBuffer(): THREE.Texture;
    set depthBuffer(value: THREE.Texture);
    dispose(): void;
}
/**
 * This material =computes outline using the depth buffer and combines it with the scene buffer to create a final scene.
 */
export declare function createOutlineMaterial(): THREE.ShaderMaterial;
