import { ReplaySubject } from 'rxjs';
declare type NetworkMessages<N = any, F = any, T = any> = ReplaySubject<N | FlowMessages<F, T>>;
declare type FlowMessages<F = any, T = any> = ReplaySubject<F | ReplaySubject<T>>;
export declare function flattenReplaySubject(toFlat: ReplaySubject<NetworkMessages> | ReplaySubject<FlowMessages>): any;
export declare function flattenNestedMap<N = any, F = any, T = any>(isRecursive?: boolean): any;
export declare function toReplaySubject<N, F, T>(toSubject: N | F | ReplaySubject<FlowMessages<F, T>>): ReplaySubject<any> | ReplaySubject<FlowMessages<F, T>>;
export {};
