Skip to main content

Function: createWorkflowProvider()

createWorkflowProvider<T>(token, config): FactoryProvider

Defined in: src/utils/workflow-token.ts:59

Create a NestJS FactoryProvider that resolves to a typed IWorkflowProxy<T>.

Add the returned provider to your feature module's providers array and export the token so other modules can inject the proxy.

Requires TemporalModule to be imported (globally or in the same module) so that WorkflowProxyFactory is available for injection.

Type Parameters​

T​

T extends Workflow

The workflow function type (e.g. typeof orderWorkflow)

Parameters​

token​

InjectionToken

Injection token created with createWorkflowToken

config​

WorkflowProxyConfig

Workflow type name and optional task queue override

Returns​

FactoryProvider

Example​

// constants.ts
export const ORDER_WORKFLOW = createWorkflowToken('orderWorkflow');

// order.module.ts
@Module({
providers: [
createWorkflowProvider<typeof orderWorkflow>(ORDER_WORKFLOW, {
workflowType: 'orderWorkflow',
taskQueue: 'orders',
}),
],
exports: [ORDER_WORKFLOW],
})
export class OrderModule {}

// order.service.ts
constructor(
@Inject(ORDER_WORKFLOW)
private readonly orderProxy: IWorkflowProxy<typeof orderWorkflow>,
) {}