import * as THREE from 'three'; export type FisheyeProps = { zoom?: number; segments?: number; resolution?: number; }; export declare class Fisheye { resolution: number; segments: number; zoom: number; renderTarget: THREE.WebGLCubeRenderTarget; sphereMesh: THREE.Mesh; orthoCamera: THREE.OrthographicCamera; cubeCamera: THREE.CubeCamera; temp: { t: THREE.Vector3; r: THREE.Quaternion; s: THREE.Vector3; e: THREE.Euler; sphere: THREE.Sphere; normal: THREE.Vector3; normalMatrix: THREE.Matrix3; }; constructor({ resolution, segments, zoom }?: FisheyeProps); createRenderTarget(resolution: number): THREE.WebGLCubeRenderTarget; updateResolution(resolution: number): void; onResize(width: number, height: number): void; computeRaycastRayDirection(raycaster: THREE.Raycaster, pointer: THREE.Vector2): void; render(renderer: THREE.WebGLRenderer, scene: THREE.Scene, camera: THREE.Camera): void; }