nestjs-temporal-core
    Preparing search index...

    Interface TemporalOptions

    Main configuration options for Temporal module initialization. Supports both client-only and worker configurations. Now supports multiple workers via the workers array property.

    const options: TemporalOptions = {
    connection: {
    address: 'localhost:7233',
    namespace: 'default'
    },
    taskQueue: 'my-task-queue',
    worker: {
    workflowsPath: './dist/workflows',
    activityClasses: [MyActivityClass],
    autoStart: true,
    autoRestart: true,
    maxRestarts: 5
    }
    };
    const options: TemporalOptions = {
    connection: {
    address: 'localhost:7233',
    namespace: 'default'
    },
    autoRestart: true, // Global default for all workers
    maxRestarts: 3, // Global default for all workers
    workers: [
    {
    taskQueue: 'payments-queue',
    workflowsPath: './dist/workflows/payments',
    activityClasses: [PaymentActivity],
    maxRestarts: 5 // Override for this worker
    },
    {
    taskQueue: 'notifications-queue',
    workflowsPath: './dist/workflows/notifications',
    activityClasses: [EmailActivity]
    }
    ]
    };
    const clientOptions: TemporalOptions = {
    connection: {
    address: 'localhost:7233',
    namespace: 'default'
    },
    // Omit worker configuration for client-only mode
    isGlobal: true
    };
    interface TemporalOptions {
        allowConnectionFailure?: boolean;
        autoRestart?: boolean;
        connection?: {
            address: string;
            apiKey?: string;
            metadata?: Record<string, string>;
            namespace?: string;
            tls?: boolean | TLSConfig;
        };
        enableLogger?: boolean;
        enableShutdownHooks?: boolean;
        isGlobal?: boolean;
        logLevel?: LogLevel;
        maxRestarts?: number;
        shutdownTimeout?: number;
        taskQueue?: string;
        worker?: {
            activityClasses?: Type<object>[];
            autoRestart?: boolean;
            autoStart?: boolean;
            maxRestarts?: number;
            workerOptions?: WorkerCreateOptions;
            workflowBundle?: Record<string, unknown>;
            workflowsPath?: string;
        };
        workers?: WorkerDefinition[];
    }

    Hierarchy (View Summary)

    Index

    Properties

    allowConnectionFailure?: boolean
    autoRestart?: boolean

    Enable auto-restart on worker failure for all workers (default: true)

    connection?: {
        address: string;
        apiKey?: string;
        metadata?: Record<string, string>;
        namespace?: string;
        tls?: boolean | TLSConfig;
    }
    enableLogger?: boolean
    enableShutdownHooks?: boolean

    Enable NestJS shutdown hooks to properly handle SIGTERM/SIGINT signals. When enabled, the module will register shutdown hooks to ensure graceful worker termination.

    true
    
    isGlobal?: boolean
    logLevel?: LogLevel
    maxRestarts?: number

    Maximum restart attempts before giving up for all workers (default: 3)

    shutdownTimeout?: number

    Maximum time in milliseconds to wait for graceful worker shutdown. After this timeout, the shutdown process will complete anyway to prevent hanging.

    30000 (30 seconds)
    
    taskQueue?: string
    worker?: {
        activityClasses?: Type<object>[];
        autoRestart?: boolean;
        autoStart?: boolean;
        maxRestarts?: number;
        workerOptions?: WorkerCreateOptions;
        workflowBundle?: Record<string, unknown>;
        workflowsPath?: string;
    }

    Type Declaration

    • OptionalactivityClasses?: Type<object>[]
    • OptionalautoRestart?: boolean

      Enable auto-restart on worker failure (default: inherits from global autoRestart)

    • OptionalautoStart?: boolean
    • OptionalmaxRestarts?: number

      Maximum restart attempts before giving up (default: 3)

    • OptionalworkerOptions?: WorkerCreateOptions
    • OptionalworkflowBundle?: Record<string, unknown>
    • OptionalworkflowsPath?: string
    workers?: WorkerDefinition[]