export interface Emitter<T> extends AsyncIterable<T> {
    emit(value: T): void;
    throw(error: any): void;
    cancel(): void;
    return(): void;
}
export declare namespace Emitter {
    const CANCELLED = "EMIT_CANCELLED";
}
export declare function createEmitter<T>(): Emitter<T>;
