UNPKG

@jescrich/nestjs-workflow

Version:
47 lines (46 loc) 1.41 kB
import { OnModuleInit } from '@nestjs/common'; import { WorkflowDefinition } from './definition'; import { EntityService } from './entity.service'; export interface Workflow<T, E> { emit(params: { event: E; urn: string; payload?: object; }): Promise<T>; } export interface Workflow<T, E> { emit(params: { event: E; urn: string; payload?: object; }): Promise<T>; } export declare class WorkflowService<T, P, E, S> implements Workflow<T, E>, OnModuleInit { private readonly definition; private readonly kafkaClient; private readonly logger; private readonly actionsOnStatusChanged; private readonly actionsOnEvent; private entityService; private readonly moduleRef; constructor(definition: WorkflowDefinition<T, P, E, S>, injectedEntityService?: EntityService<T, S>); onModuleInit(): Promise<void>; emit(params: { event: E; urn: string; payload?: T | P | object | string; }): Promise<T>; private transition; private executeInlineActions; private nextEvent; private isInIdleStatus; private isInFailedStatus; private configureActions; private configureConditions; private initializeKakfaConsumers; private validateActionMethod; private loadEntity; private getEntityStatus; private updateEntityStatus; private getEntityUrn; }