/** @internal NOTE: Internal APIs. Subject to change. Use of these APIs in production applications is not supported. */ /** */
import { TwinfinityCameraBehavior } from '../camera/TwinfinityCameraBehavior';
import { Camera, Vector3 } from '../loader/babylonjs-import';
/**
 * Creates an instance of of the Outline effect postprocess, should be created using createOutlinePipeline from PostProcessEffects
 */
export declare class OutlinePipeline implements TwinfinityCameraBehavior {
    private readonly _renderScale;
    private readonly _unifiedOutline;
    private readonly _outlineColor;
    private _outlineCalculator;
    private _outlineApplier;
    private _horizontalBlur;
    private _verticalBlur;
    private _screenBlit;
    private _engine;
    private _scene;
    private _outlineTexture;
    attach(camera: Camera): boolean;
    detach(camera: Camera): boolean;
    /**
     * Creates a render target that for every frame draws all outlines object into a framebuffer
     *
     * @returns The render target texture
     */
    private createOutlineRenderTarget;
    constructor(_renderScale: number, _unifiedOutline: boolean, _outlineColor: Vector3);
    private includeMesh;
}
//# sourceMappingURL=OutlinePipeline.d.ts.map