toosoon-events
Version:
Project providing services implemented as singleton class instances
15 lines (14 loc) • 702 B
TypeScript
export declare abstract class EventManager<EventListener extends Function> {
protected abstract listeners: EventListener[];
on(listener: EventListener): () => void;
off(listener: EventListener): void;
protected abstract bind(): void;
protected abstract unbind(): void;
}
export declare abstract class EventsManager<EventKey extends string, EventListener extends Function> {
protected abstract listeners: Record<EventKey, EventListener[]>;
on(eventKey: EventKey, listener: EventListener): () => void;
off(eventKey: EventKey, listener: EventListener): void;
protected abstract bind(eventKey: EventKey): void;
protected abstract unbind(eventKey: EventKey): void;
}