Skip to main content
It is exposed through the global variable std and has everything needed to interact with the runtime and other helpers.

resolve

Takes a class reference and gets its instance from the DI container.
Class
required
A reference to a class participating in Dependency Injection
Example To retreive an instance of a class called LoadBalancer, you’d write:
If the param is a class that is not decorated with @Injectable then this will throw an error!

flow

Helper to create flows.
string
required
Name of the flow
Object
required
An instance of a class
Object
This param enables you to create Scheduled Flows

log

Equivalent of console.log. Halts the execution.
...any[]
You can pass any number of messages of any type.
Example

lambda

This is experimental
Wrapper to skip higher order functions getting transformed by compiler. See this.
Function
required
The function you want to pass around.

currentTick

Equivalent to System.currentTimeMillis() or Date.now() but follows temporal rules of runtime.
number
Returns the current tick/time.

sleep

Halts the flow for given number of ticks.
number
required
Number of ticks the flow should halt for.

awaitAll

Suspends the current flow till all the given flows complete. See here.
FlowExecutor[]
required
The flows you want to await on.

awaitRace

Suspends the current flow till one of the given flows complete. See here.
FlowExecutor[]
required
The flows you want to race.

createChannelEmitter

Creates a channel emitter which lets you push events for given topic. See this.
string
required
A dedicated channel will be created for the topic.

registerChannelListener

Lets you susbscribe to topics. See this.
string
required
The topic to listen.
(data: T) => FlowExecutor
required
The function to invoke whenever there’s an event pushed for given topic.