nestjs-temporal-core
Version:
Complete NestJS integration for Temporal.io with auto-discovery, declarative scheduling, enhanced monitoring, and enterprise-ready features
36 lines (35 loc) • 1.68 kB
TypeScript
import { OnModuleInit } from '@nestjs/common';
import { Client, WorkflowClient, WorkflowHandle } from '@temporalio/client';
import { StartWorkflowOptions } from '../interfaces';
export declare class TemporalClientService implements OnModuleInit {
private readonly client;
private readonly options;
private readonly logger;
private readonly workflowClient;
constructor(client: Client | null, options: Record<string, unknown>);
onModuleInit(): Promise<void>;
startWorkflow<T, A extends unknown[]>(workflowType: string, args: A, options: StartWorkflowOptions): Promise<{
result: Promise<T>;
workflowId: string;
firstExecutionRunId: string;
handle: WorkflowHandle;
}>;
signalWorkflow(workflowId: string, signalName: string, args?: unknown[]): Promise<void>;
queryWorkflow<T>(workflowId: string, queryName: string, args?: unknown[]): Promise<T>;
terminateWorkflow(workflowId: string, reason?: string): Promise<void>;
cancelWorkflow(workflowId: string): Promise<void>;
getWorkflowHandle(workflowId: string, runId?: string): Promise<WorkflowHandle>;
describeWorkflow(workflowId: string, runId?: string): Promise<import("@temporalio/client").WorkflowExecutionDescription>;
listWorkflows(query: string, pageSize?: number): import("@temporalio/client").AsyncWorkflowListIterable;
getWorkflowClient(): WorkflowClient | null;
getRawClient(): Client | null;
isHealthy(): boolean;
getStatus(): {
available: boolean;
healthy: boolean;
connection?: string;
namespace?: string;
};
private ensureClientInitialized;
private generateWorkflowId;
}