redux-automata
Version:
Finite state automata for Redux.
22 lines (21 loc) • 1.14 kB
TypeScript
import { ActionDefinition, Automata, StateDefinition, TransitionMethod } from "../core";
import { Task, TaskComplete, TaskState } from "./common";
export declare class TaskAutomata<TResult, TInput = void, TError extends Error = Error, TState extends TaskState<TResult, TError> = TaskState<TResult, TError>> extends Automata<TState> {
readonly Name: string;
private Process;
private OnSuccess?;
private OnFailure?;
Idle: StateDefinition<TState>;
Processing: StateDefinition<TState, TInput>;
Completed: StateDefinition<TState, TResult>;
Failure: StateDefinition<TState, TError>;
Start: ActionDefinition<TInput>;
Restart: ActionDefinition<TInput>;
Cancel: ActionDefinition;
End: ActionDefinition<TResult>;
Fail: ActionDefinition<TError>;
BeginProcessing: TransitionMethod<TState, TInput>;
constructor(Name: string, Process: Task<TResult, TInput>, OnSuccess?: TaskComplete<TResult, TInput> | undefined, OnFailure?: TaskComplete<TError, TInput> | undefined);
setupProcessIn(state: StateDefinition<TState>): void;
protected getDefaultState(): TState;
}