import { Camera, Controls, Object3D } from "three";
interface JoyStickControlsEventMap {
    change: {
        type: "change";
    };
}
export declare class JoyStickControls extends Controls<JoyStickControlsEventMap> {
    readonly EYE_HEIGHT = 1.7;
    readonly FAILING_DISTANCE = 2;
    readonly GROUND_FOLLOWING_SPEED = 0.05;
    readonly WALK_SPEED_DELIMITER = 4;
    movementSpeed: number;
    multiplier: number;
    private raycaster;
    private groundObjects;
    private canvas;
    private overlayElement;
    private joyStickCanvas;
    private context;
    private moveClock;
    private camera;
    private joyStickPosition;
    private isActive;
    private readonly MAX_JOYSTICK_DISTANCE;
    private readonly INTERNAL_RADIUS;
    private readonly MAX_MOVE_STICK;
    private readonly EXTERNAL_RADIUS;
    private readonly CANVAS_SIZE;
    private centerX;
    private centerY;
    private pressed;
    constructor(camera: Camera, domElement: HTMLElement, canvasElement: HTMLCanvasElement, groundObjects: Object3D[]);
    dispose(): void;
    private onPointerDown;
    private onPointerMove;
    private onPointerUp;
    private onResize;
    private updateVisibility;
    private updatePosition;
    private draw;
    private updateGroundFollowing;
    update(): void;
}
export {};
