UNPKG

nestjs-temporal-core

Version:

Complete NestJS integration for Temporal.io with auto-discovery, declarative scheduling, enhanced monitoring, and enterprise-ready features

49 lines (48 loc) 3.78 kB
import { OnModuleInit } from '@nestjs/common'; import { Client, WorkflowHandle, WorkflowUpdateHandle, FullActivityId, ActivityOptions as StandaloneActivityOptions, ActivityHandle, ActivityExecutionInfo, CountActivityExecutions } from '@temporalio/client'; import { TemporalOptions, WorkflowStartOptions, WorkflowHandleWithMetadata, ClientServiceStatus, ClientHealthStatus } from '../interfaces'; export declare class TemporalClientService implements OnModuleInit { private readonly temporalClient; private readonly options; private readonly logger; private client; private isInitialized; private lastHealthCheck; private healthCheckInterval; constructor(temporalClient: Client | null, options: TemporalOptions); onModuleInit(): Promise<void>; startWorkflow(workflowType: string, args?: readonly unknown[], options?: WorkflowStartOptions): Promise<WorkflowHandleWithMetadata>; getWorkflowHandle(workflowId: string, runId?: string): Promise<WorkflowHandle>; terminateWorkflow(workflowId: string, reason?: string, runId?: string): Promise<void>; cancelWorkflow(workflowId: string, runId?: string): Promise<void>; signalWorkflow(workflowId: string, signalName: string, args?: readonly unknown[], runId?: string): Promise<void>; signalWorkflowHandle(handle: WorkflowHandle, signalName: string, args?: readonly unknown[]): Promise<void>; signalWithStart(workflowType: string, signalName: string, signalArgs: readonly unknown[], workflowArgs: readonly unknown[], options?: WorkflowStartOptions): Promise<WorkflowHandleWithMetadata>; queryWorkflow<T = unknown>(workflowId: string, queryName: string, args?: readonly unknown[], runId?: string): Promise<T>; queryWorkflowHandle<T = unknown>(handle: WorkflowHandle, queryName: string, args?: readonly unknown[]): Promise<T>; updateWorkflow<T = unknown>(workflowId: string, updateName: string, args?: readonly unknown[], runId?: string): Promise<T>; updateWorkflowHandle<T = unknown>(handle: WorkflowHandle, updateName: string, args?: readonly unknown[]): Promise<T>; startUpdateWorkflow<T = unknown>(workflowId: string, updateName: string, args?: readonly unknown[], runId?: string): Promise<WorkflowUpdateHandle<T>>; startUpdateWorkflowHandle<T = unknown>(handle: WorkflowHandle, updateName: string, args?: readonly unknown[]): Promise<WorkflowUpdateHandle<T>>; completeActivity(taskTokenOrFullActivityId: Uint8Array | FullActivityId, result: unknown): Promise<void>; failActivity(taskTokenOrFullActivityId: Uint8Array | FullActivityId, err: unknown): Promise<void>; heartbeatActivity(taskTokenOrFullActivityId: Uint8Array | FullActivityId, details?: unknown): Promise<void>; reportActivityCancellation(taskTokenOrFullActivityId: Uint8Array | FullActivityId, details?: unknown): Promise<void>; startStandaloneActivity<R = unknown>(activityType: string, options: StandaloneActivityOptions): Promise<ActivityHandle<R>>; executeStandaloneActivity<R = unknown>(activityType: string, options: StandaloneActivityOptions): Promise<R>; getStandaloneActivityHandle<R = unknown>(activityId: string, runId?: string): ActivityHandle<R>; listStandaloneActivities(query: string): AsyncIterable<ActivityExecutionInfo>; countStandaloneActivities(query: string): Promise<CountActivityExecutions>; getWorkflowResult<T = unknown>(workflowId: string, runId?: string): Promise<T>; isHealthy(): boolean; getHealth(): ClientHealthStatus; getStatus(): ClientServiceStatus; getRawClient(): Client | null; private performHealthCheck; private ensureClientAvailable; private generateWorkflowId; private validateWorkflowId; private extractErrorMessage; private isRetryableError; private sleep; }