Function: SignalMethod()
SignalMethod(
signalName?):MethodDecorator
Defined in: src/decorators/workflow.decorator.ts:54
Marks a method as a signal handler for the workflow. Signals are external events that can be sent to running workflows to change their state or trigger specific behaviors. Signal methods can be asynchronous.
This decorator works in v8 isolated environments by registering signal handlers at runtime without relying on dependency injection or external services.
Parameters
signalName?
string
Optional custom signal name (defaults to method name)
Returns
MethodDecorator
Examples
Basic Signal Handler
// In function-based workflow
const signals = wf.defineSignal<[string]>('updateStatus');
const cancelSignal = wf.defineSignal('cancel');
export async function orderWorkflow(): Promise<void> {
let orderStatus = 'pending';
wf.setHandler(signals, (newStatus) => {
orderStatus = newStatus;
});
wf.setHandler(cancelSignal, () => {
orderStatus = 'cancelled';
});
}
Signal with Complex Data
@SignalMethod('addItem')
async handleAddItem(item: OrderItem): Promise<void> {
this.orderItems.push(item);
this.recalculateTotal();
}
See
QueryMethod for querying workflow state