import { ArgOf, EmitEvent } from "../repositories/event.repository";
export declare class PendingEvents<T extends {
    [T in EmitEvent]: ArgOf<T> extends {
        error?: string;
    } ? T : never;
}[EmitEvent]> {
    private pending;
    private timeoutMs;
    constructor({ timeoutMs }: {
        timeoutMs: number;
    });
    wait(key: string): Promise<ArgOf<T>>;
    complete(key: string, value: ArgOf<T> | {
        error: string;
    }): void;
    rejectByPrefix(prefix: string, error: string): void;
}
