diff --git a/types/three/examples/jsm/controls/Controls.d.ts b/types/three/examples/jsm/controls/Controls.d.ts index 5558269ea..79c72a757 100644 --- a/types/three/examples/jsm/controls/Controls.d.ts +++ b/types/three/examples/jsm/controls/Controls.d.ts @@ -48,7 +48,7 @@ declare abstract class Controls extends EventDispatcher { - constructor(object: Camera, domElement?: HTMLElement); - - autoForward: boolean; - domElement: HTMLElement | Document; - dragToLook: boolean; - enabled: boolean; +/** + * {@link FlyControls} enables a navigation similar to fly modes in DCC tools like Blender. You can arbitrarily + * transform the camera in 3D space without any limitations (e.g. focus on a specific target). + */ +declare class FlyControls extends Controls { + /** + * The movement speed. Default is `1`. + */ movementSpeed: number; - object: Camera; + + /** + * The rotation speed. Default is `0.005`. + */ rollSpeed: number; - dispose(): void; - update(delta: number): void; + /** + * If set to `true`, you can only look around by performing a drag interaction. Default is `false`. + */ + dragToLook: boolean; + + /** + * If set to `true`, the camera automatically moves forward (and does not stop) when initially translated. Default + * is `false`. + */ + autoForward: boolean; + + /** + * Creates a new instance of {@link FlyControls}. + * @param object The camera to be controlled. + * @param domElement The HTML element used for event listeners. + */ + constructor(object: Camera, domElement?: HTMLElement | null); } + +export { FlyControls };