/** * An event emitter that supports typed events and asynchronous event handling. * @template E - The type of events and their corresponding arguments. */ export declare class TypedAwaitEventEmitter { #private; /** * Asynchronously emits an event with the specified arguments. * @param event - The event to emit. * @param arg - The argument associated with the event. * @returns A promise that resolves to a boolean indicating whether any listeners were called. */ emit(event: T, arg: E[T]): Promise; /** * Synchronously emits an event with the specified arguments. * @param event - The event to emit. * @param arg - The argument associated with the event. * @returns A boolean indicating whether any listeners were called. */ emitSync(event: T, arg: E[T]): boolean; /** * Adds a listener for the specified event. * @param event - The event to listen for. * @param listener - The listener function to be called when the event is emitted. * @returns The instance of the `TypedAwaitEventEmitter` class. */ on(event: T, listener: (arg: E[T]) => Promise | void): this; }