export declare class ListenableGenerator<T> {
    private readonly onError;
    private _source;
    private _buffer;
    private _listeners;
    private _isEnded;
    constructor(source: AsyncGenerator<T>, onError: (e: any) => void);
    cancel(): void;
    private _start;
    listen(listener: (value: T) => void): void;
    tee(): AsyncGenerator<T>;
}
export declare class GeneratorReuseManager {
    private readonly onError;
    currentGenerator: ListenableGenerator<string> | undefined;
    pendingGeneratorPrefix: string | undefined;
    pendingCompletion: string;
    constructor(onError: (err: any) => void);
    private _createListenableGenerator;
    getGenerator(prefix: string, newGenerator: () => AsyncGenerator<string>, multiline: boolean): AsyncGenerator<string>;
}
//# sourceMappingURL=util.d.ts.map