export type EventMap = object; /** A small typed event emitter, with no dependency on Node's `events`. */ export declare class TypedEventEmitter { private readonly listeners; /** Subscribes to an event. Returns a function that unsubscribes. */ on(event: Event, listener: (payload: Events[Event]) => void): () => void; /** Subscribes to the next occurrence of an event only. Returns a function that unsubscribes. */ once(event: Event, listener: (payload: Events[Event]) => void): () => void; /** Removes a listener. */ off(event: Event, listener: (payload: Events[Event]) => void): void; /** Calls every listener of an event, in the order they subscribed. */ emit(event: Event, payload: Events[Event]): void; /** Removes every listener of an event, or of every event. */ removeAllListeners(event?: keyof Events): void; /** Listeners of an event. */ listenerCount(event: keyof Events): number; }