UNPKG

@react-slate/core

Version:

Write interactive CLI apps with React

30 lines 1.21 kB
export declare enum EventTypes { MOUSE_LEFT_BUTTON_PRESSED = "MOUSE_LEFT_BUTTON_PRESSED", MOUSE_WHEEL = "MOUSE_WHEEL", MOUSE_MOTION = "MOUSE_MOTION" } export declare class EventManager<E> { private propagate; propagateEvent(name: EventTypes, eventData: E, rootListener: EventListener<E>): boolean; } export declare type EventHandler<E> = (eventData: E) => boolean; export declare type EventValidator<E> = (eventName: EventTypes, eventData: E) => boolean; export declare class EventListener<E> { parent?: EventListener<E>; children: EventListener<E>[]; listeners: { [eventName: string]: EventHandler<E> | undefined; }; validator: EventValidator<E> | undefined; listenerCount: number; private updateListenerCount; addChild(child: EventListener<E>): void; findChild(child: EventListener<E>): number; removeChild(child: EventListener<E>): void; private setListener; setOnClickListener(listener?: EventHandler<E>): void; setValidator(validator?: EventValidator<E>): void; setOnWheelListener(listener?: EventHandler<E>): void; setOnMouseMoveListener(listener?: EventHandler<E>): void; } //# sourceMappingURL=events.d.ts.map