import { BlendFunction, Effect } from 'postprocessing'; import { Matrix4, Uniform, Camera, Texture, WebGLRenderer, WebGLRenderTarget } from 'three'; import { UniformMap } from '@takram/three-geospatial'; export interface NormalEffectOptions { blendFunction?: BlendFunction; normalBuffer?: Texture | null; octEncoded?: boolean; reconstructFromDepth?: boolean; } export interface NormalEffectUniforms { normalBuffer: Uniform; projectionMatrix: Uniform; inverseProjectionMatrix: Uniform; } export declare const normalEffectOptionsDefaults: { blendFunction: BlendFunction; octEncoded: false; reconstructFromDepth: false; }; export declare class NormalEffect extends Effect { private camera; uniforms: UniformMap; constructor(camera: Camera, options?: NormalEffectOptions); get mainCamera(): Camera; set mainCamera(value: Camera); update(renderer: WebGLRenderer, inputBuffer: WebGLRenderTarget, deltaTime?: number): void; get normalBuffer(): Texture | null; set normalBuffer(value: Texture | null); octEncoded: boolean; reconstructFromDepth: boolean; }