import { Logger } from '@n8n/backend-common'; import { ExecutionsConfig } from '@n8n/config'; import { ExecutionRepository } from '@n8n/db'; import type { IDeferredPromise, IExecuteResponsePromiseData, IRun, ExecutionStatus, IWorkflowExecutionDataProcess, StructuredChunk, WebhookResponseMode } from 'n8n-workflow'; import { ExecutionCancelledError } from 'n8n-workflow'; import type PCancelable from 'p-cancelable'; import { ExecutionPersistence } from './executions/execution-persistence'; import type { IExecutingWorkflowData, IExecutionsCurrentSummary } from './interfaces'; import { ConcurrencyControlService } from './concurrency/concurrency-control.service'; import { EventService } from './events/event.service'; export declare class ActiveExecutions { private readonly logger; private readonly executionRepository; private readonly executionPersistence; private readonly concurrencyControl; private readonly eventService; private readonly executionsConfig; private activeExecutions; private responseModes; constructor(logger: Logger, executionRepository: ExecutionRepository, executionPersistence: ExecutionPersistence, concurrencyControl: ConcurrencyControlService, eventService: EventService, executionsConfig: ExecutionsConfig); has(executionId: string): boolean; add(executionData: IWorkflowExecutionDataProcess, maybeExecutionId?: string): Promise; attachWorkflowExecution(executionId: string, workflowExecution: PCancelable): void; attachResponsePromise(executionId: string, responsePromise: IDeferredPromise): void; resolveResponsePromise(executionId: string, response: IExecuteResponsePromiseData): void; sendChunk(executionId: string, chunkText: StructuredChunk): void; stopExecution(executionId: string, cancellationError: ExecutionCancelledError): void; finalizeExecution(executionId: string, fullRunData?: IRun): void; resolveExecutionResponsePromise(executionId: string): void; getPostExecutePromise(executionId: string): Promise; getActiveExecutions(): IExecutionsCurrentSummary[]; setStatus(executionId: string, status: ExecutionStatus): void; getStatus(executionId: string): ExecutionStatus; setResponseMode(executionId: string, responseMode: WebhookResponseMode): void; getResponseMode(executionId: string): WebhookResponseMode | undefined; shutdown(cancelAll?: boolean): Promise; getExecutionOrFail(executionId: string): IExecutingWorkflowData; }