UNPKG

@lifaon/rx-js-light

Version:

Blazing fast Observables

10 lines (9 loc) 948 B
import { IGenericObservable, IObservable } from '../../observable/type/observable.type'; import { IObserver, IGenericObserver } from '../../observer/type/observer.type'; export interface IObserverObservablePair<GObserverValue, GObservableValue> { readonly emit: IObserver<GObserverValue>; readonly subscribe: IObservable<GObservableValue>; } export declare type IGenericObserverObservablePair = IObserverObservablePair<IGenericObserver, IGenericObservable>; export declare type IInferObserverObservablePairGObserverValue<GObserverObservablePair extends IGenericObserverObservablePair> = GObserverObservablePair extends IObserverObservablePair<infer GObserverValue, any> ? GObserverValue : never; export declare type IInferObserverObservablePairGObservableValue<GObserverObservablePair extends IGenericObserverObservablePair> = GObserverObservablePair extends IObserverObservablePair<any, infer GObservableValue> ? GObservableValue : never;