/**
 * A Minimal Event Emitter used for requests
 * @example
 * ```
 * const emitter = new MiniEventEmitter(...)
 * ```
 * @since 7.7.0
*/ export default class MiniEventEmitter<Events extends Record<string, (...args: any) => any>> {
    protected listeners: Record<keyof Events, Function[]>;
    /**
     * Listen for an Event
     * @since 7.7.0
    */ listen<Event extends keyof Events>(event: Event, callback: Events[Event]): this;
    /**
     * Remove a listener
     * @since 7.7.0
    */ unlist<Event extends keyof Events>(event: Event, callback: Events[Event]): this;
    /**
     * Send (Emit) an Event
     * @since 7.7.0
    */ send<Event extends keyof Events>(event: Event, ...args: Parameters<Events[Event]>): Promise<(Awaited<ReturnType<Events[Event]>> | Error)[]>;
}
