import type { NavigationMode } from './NavigationModes';
import type { RenderControllerProxy } from '../controllers/RenderControllerProxy';
import type { MouseControl, WheelControl, KeyboardControl } from './types';
export declare class NavigationManager {
    private renderControllerProxy;
    private canvas;
    private isMoved;
    private wheeling?;
    private _selectedNavigationMode;
    private _mouseControls;
    private _wheelControls;
    keyboardControls: KeyboardControl;
    private static DEBUG;
    private debugEl?;
    private modifierKeys;
    private lastMousemoveEvent?;
    constructor(params: {
        renderWrapperController: RenderControllerProxy;
        canvas: HTMLCanvasElement;
    });
    get mouseControls(): MouseControl;
    private set mouseControls(value);
    get wheelControls(): WheelControl;
    private set wheelControls(value);
    get selectedNavigationMode(): NavigationMode;
    private set selectedNavigationMode(value);
    private updateDebugEl;
    private setWheelControls;
    private setKeyboardControls;
    setNavigationMode(navigationMode: NavigationMode): void;
    dispose(): void;
    private setMouseControls;
    private updateModifierKeys;
    private onKeyDown;
    private onKeyUp;
    private onMouseDown;
    private onMouseUp;
    private onMouseMove;
    private onWheel;
    private wheelDetect;
    private onSelectTool;
}
