@n8n-plus/n8n-plus
Version:
n8n Workflow Automation Tool (plus edition)
34 lines (33 loc) • 1.78 kB
TypeScript
import { DatabaseConfig, ExecutionsConfig } from '@n8n/config';
import type { CreateExecutionPayload, ExecutionDataStorageLocation, ExecutionDeletionCriteria, IExecutionResponse, UpdateExecutionConditions } from '@n8n/db';
import { ExecutionRepository } from '@n8n/db';
import { BinaryDataService, StorageConfig } from 'n8n-core';
import { DbStore } from './execution-data/db-store';
import { FsStore } from './execution-data/fs-store';
import type { ExecutionRef } from './execution-data/types';
type DeletionTarget = ExecutionRef & {
storedAt: ExecutionDataStorageLocation;
};
export declare class ExecutionPersistence {
private readonly executionRepository;
private readonly binaryDataService;
private readonly fsStore;
private readonly dbStore;
private readonly storageConfig;
private readonly executionsConfig;
private readonly databaseConfig;
constructor(executionRepository: ExecutionRepository, binaryDataService: BinaryDataService, fsStore: FsStore, dbStore: DbStore, storageConfig: StorageConfig, executionsConfig: ExecutionsConfig, databaseConfig: DatabaseConfig);
create(payload: CreateExecutionPayload): Promise<string>;
updateExistingExecution(executionId: string, execution: Partial<IExecutionResponse>, conditions?: UpdateExecutionConditions): Promise<boolean>;
deleteInFlightExecution(target: DeletionTarget): Promise<void>;
hardDelete(target: DeletionTarget | DeletionTarget[]): Promise<void>;
hardDeleteBy(criteria: ExecutionDeletionCriteria): Promise<void>;
private updateEntityOnly;
private applyDataUpdate;
private pickUpdatableEntityColumns;
private buildEntityWhereCondition;
private getStoreFor;
private toWorkflowSnapshot;
private isDuplicateExecutionError;
}
export {};