UNPKG

redux-automata

Version:
11 lines (10 loc) 808 B
import * as Redux from "redux"; import { ActionDefinition } from "../core"; import { Task, TaskComplete, TaskState } from "./common"; export interface TaskAutomation<TResult, TInput = void, TError extends Error = Error, TState extends TaskState<TResult, TError> = TaskState<TResult, TError>> { reducer: Redux.Reducer<TState>; start: ActionDefinition<TInput>; restart: ActionDefinition<TInput>; cancel: ActionDefinition; } export declare function createTaskAutomation<TResult, TInput = void, TError extends Error = Error, TState extends TaskState<TResult, TError> = TaskState<TResult, TError>>(dataName: string, processTask: Task<TResult, TInput>, onSuccess?: TaskComplete<TResult, TInput>, onFailure?: TaskComplete<TError, TInput>): TaskAutomation<TResult, TInput, TError, TState>;