UNPKG

redis-workflow

Version:

Simple Promise based multi-channel workflow rules engine using Redis backing

33 lines (32 loc) 1.13 kB
import IAction from "./IAction"; import IRule from "./IRule"; import ITrigger from "./ITrigger"; import IWorkflow from "./IWorkflow"; export default class Workflow implements IWorkflow { protected id: string; protected name: string; protected trigger: ITrigger; protected rules: IRule[]; protected actions: IAction[]; protected evaluator: any; constructor(name?: string, trigger?: ITrigger, rules?: IRule[], actions?: IAction[], id?: string); getId(): string; setId(id: string): void; getName(): string; setName(name: string): void; getTrigger(): ITrigger; setTrigger(trigger: ITrigger): void; getRules(): IRule[]; setRules(rules: IRule[]): void; addRule(rule: IRule): void; removeRule(name: string): void; getActions(): IAction[]; setActions(actions: IAction[]): void; addAction(action: IAction): void; removeAction(name: string): void; getEvaluator(): any; setEvaluator(evaluator: any): void; getActionsForContext(context: Dictionary): Promise<IAction[]>; fromDict(dict: Dictionary): IWorkflow; toDict(): Dictionary; }