import { Camera, Controls, Vector2 } from "three";
interface FlyControlsEventMap {
    change: {
        type: "change";
    };
    flyspeedchange: {
        type: "flyspeedchange";
        data: number;
    };
}
export declare class FlyControls extends Controls<FlyControlsEventMap> {
    movementSpeed: number;
    lookSpeed: number;
    multiplier: number;
    private moveKeys;
    private moveWheel;
    private moveClock;
    private quaternion;
    private downPosition;
    private mouseDragOn;
    rotateDelta: Vector2;
    constructor(camera: Camera, canvas: HTMLElement);
    dispose(): void;
    onPointerDown: (event: PointerEvent) => void;
    onPointerMove: (event: PointerEvent) => void;
    onPointerUp: (event: PointerEvent) => void;
    onPointerCancel: (event: PointerEvent) => void;
    onWheel: (event: WheelEvent) => void;
    onKeyDown: (event: KeyboardEvent) => void;
    onKeyUp: (event: KeyboardEvent) => void;
    update(): void;
    rotateCamera(delta: Vector2): void;
}
export {};
