UNPKG

@web/dev-server-core

Version:
15 lines 698 B
type EventMap = Record<string, any>; type EventKey<T extends EventMap> = string & keyof T; type EventReceiver<T> = (params: T) => void; interface Emitter<T extends EventMap> { on<K extends EventKey<T>>(eventName: K, fn: EventReceiver<T[K]>): void; emit<K extends EventKey<T>>(eventName: K, params: T[K]): void; } export declare class EventEmitter<T extends EventMap> implements Emitter<T> { private __emitter; on<K extends EventKey<T>>(eventName: K, fn: EventReceiver<T[K]>): void; off<K extends EventKey<T>>(eventName: K, fn: EventReceiver<T[K]>): void; emit<K extends EventKey<T>>(eventName: K, params?: T[K]): void; } export {}; //# sourceMappingURL=EventEmitter.d.ts.map