//#region src/event-emitter.d.mts type EventsConfig = { [event: string]: any[]; }; type EventsNames = Exclude; type EventsArgs> = Events[Name] extends any[] ? Events[Name] : []; declare class EventEmitter { private listeners; on, Args extends EventsArgs>(event: E, listener: (...args: Args) => void | Promise): () => void; off, Args extends EventsArgs>(event: E, listener: (...args: Args) => void | Promise): void; once, Args extends EventsArgs>(event: E, listener: (...args: Args) => void | Promise): () => void; emit, Args extends EventsArgs>(event: E, ...args: Args): Promise; } //#endregion export { EventEmitter, EventsArgs, EventsConfig, EventsNames }; //# sourceMappingURL=event-emitter.d.mts.map