@idiosync/react-observable
Version:
State management control layer for React projects
17 lines (16 loc) • 895 B
TypeScript
import { InferNullable, Observable, ObservableStackItem } from '../types/observable';
import { Store } from '../types/store';
interface Props<NullableInferredReturnT> {
onError?: (err: Error, stack?: ObservableStackItem[]) => void;
initialValue?: NullableInferredReturnT;
singleFlight?: boolean;
}
type ExecuteReturnType<NullableInferredT> = [NullableInferredT, undefined] | [undefined, Error];
export declare const createCommandStream: <ReturnT, InputT = undefined, IsNullable extends boolean = true>(initialise: ({ $, store, }: {
$: Observable<InputT>;
store: Store;
}) => Observable<InferNullable<ReturnT, IsNullable>>, { onError, initialValue, singleFlight, }?: Props<InferNullable<ReturnT, IsNullable>>) => {
(payload?: InputT): Promise<ExecuteReturnType<InferNullable<ReturnT, IsNullable>>>;
exit$: Observable<InferNullable<ReturnT, IsNullable>>;
};
export {};