import * as rayPicking from '../picking/rayPicking'; import type Renderer from '../Renderer'; import type ClayNode from '../Node'; import Scene from '../Scene'; import Camera from '../Camera'; type ClayEventType = 'click' | 'dblclick' | 'wheel' | 'pointerdown' | 'pointermove' | 'pointerup' | 'pointerover' | 'pointerout'; export type EventTriggers = 'hover' | 'click' | 'wheel'; export interface ClayMouseEvent extends Partial { target: ClayNode; type: ClayEventType; offsetX: number; offsetY: number; wheelDelta?: number; button?: number; cancelBubble?: boolean; shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean; raw: MouseEvent | TouchEvent; } export declare class EventManager { private _renderer?; private _container; private _scene; private _camera; private _listenedEvents; constructor(container: HTMLElement, renderer?: Renderer, scene?: Scene, camera?: Camera); setCamera(camera?: Camera): void; setScene(scene?: Scene): void; enable(enabledTriggers?: EventTriggers[]): void; disable(): void; dispose(): void; } export {};