import { OnDestroy } from "@angular/core";
import { Observable, ReplaySubject, Subject, Subscription } from "rxjs";
import { IEventDefinition } from "./public-api";
/**
 * @ignore
 */
export declare class EventBus<T> implements OnDestroy {
    streamAdded: ReplaySubject<string>;
    private streams;
    getStream(event: IEventDefinition<T>): Subject<T | any>;
    ngOnDestroy(): void;
    subscribe(event: IEventDefinition<T>, next: (value: T) => void, error?: (error: any) => void, complete?: () => void): Subscription;
    subscribeUntil(event: IEventDefinition<T>, until: Observable<any>, next: (value: T) => void, error?: (error: any) => void, complete?: () => void): Subscription;
    next(event: IEventDefinition<T>, value?: T): void;
}
