Loop Engine

Packages

Runtime

@loop-engine/runtime

Execution engine and runtime interfaces.

Install

1npm install @loop-engine/runtime

API reference

createLoopEngine

1createLoopEngine(options: LoopEngineOptions): LoopEngine

LoopEngine.start

1start(options: StartOptions): Promise<LoopInstance>

LoopEngine.transition

1transition(options: TransitionOptions): Promise<TransitionResult>

LoopEngine.getState

1getState(aggregateId: AggregateId): Promise<LoopInstance | null>

LoopEngine.getHistory

1getHistory(aggregateId: AggregateId): Promise<TransitionRecord[]>

LoopStore interface

1interface LoopStore {
2 getInstance(aggregateId: AggregateId): Promise<LoopInstance | null>
3 saveInstance(instance: LoopInstance): Promise<void>
4 getTransitionHistory(aggregateId: AggregateId): Promise<TransitionRecord[]>
5 saveTransitionRecord(record: TransitionRecord): Promise<void>
6 listOpenInstances(loopId: LoopId, orgId: string): Promise<LoopInstance[]>
7}
  • Depends on core, actors, guards, events, dsl
  • Usually consumed via @loop-engine/sdk