export declare type StreamUpdateCallback = (value: T) => void; export interface Stream { (callback: StreamUpdateCallback): StreamSubscription; invalidate(): void; } export interface Subject extends Stream { next(value: T): void; } export interface StreamSubscription { unsubscribe(): void; invalidate(): void; }