jorum
Version:
Model layer with rx.js for React applications.
29 lines (28 loc) • 1.02 kB
TypeScript
import { Component, ReactNode } from 'react';
import { Observable, Subscribable, Subscription } from 'rxjs';
interface PropsMulti {
to: Observable<any>[];
children: (...listOfData: any[]) => ReactNode;
}
interface PropsSingle<T> {
to: Observable<T>;
children: (data: T) => ReactNode;
}
declare class State {
data: any[];
}
export declare class Subscribe<T> extends Component<PropsSingle<T> | PropsMulti, State> {
state: State;
subscriptions: Subscription[];
constructor(props: PropsMulti);
componentDidMount(): void;
componentWillReceiveProps(nextProps: PropsMulti): void;
componentWillUnmount(): void;
handleObservable(observable: Observable<any>, index: number): void;
subscribeTo(to: Observable<any> | Observable<any>[]): void;
unsubscribe(): void;
render(): any;
}
export declare function useStream<T>(stream: Subscribable<T>, initialValue?: T): T;
export declare function useSubscription<T>(stream: Subscribable<T>, next: (value: T) => void): void;
export {};