import { Camera, Scene } from 'three'; /** * * A plugin to integrate Three.js scenes into a Maplibre map. * * It syncs the projection matrix of a mapbibre-gl camera to a THREE.Camera in order to render objects * from the perspective of the map viewer. The camera is set to look at the current center of the visible map. * * It also manages the position of any THREE.Object3D that has a `userData.lngLat` property. The position * is determined by calculating the difference of the map's center lng,lat and the object's lng,lat and then * making an approximate transform to an x,z plane offset in meters. * * The userData.lngLat property must be a maplibre LngLat object, or in the case of a THREE.Line, a LngLat[]. * * @param scene A THREE.Scene instance. * @param cameraSignal This should only be a THREE.Camera instance. Perspective and Orthographic cameras make projection defaults that will not work with Maplibre. * @param renderFn A callback that runs on each map draw. Use it to render your scene. */ export declare const useMapLibreThreeRenderer: (scene: Scene, cameraSignal: { current: Camera; }, renderFn: (scene: Scene, camera: Camera) => void) => void;