n8n
Version:
n8n Workflow Automation Tool
49 lines (48 loc) • 3.38 kB
TypeScript
import { BinaryDataService } from 'n8n-core';
import type { User } from '../databases/entities/User';
import type { WorkflowEntity } from '../databases/entities/WorkflowEntity';
import { SharedWorkflowRepository } from '../databases/repositories/sharedWorkflow.repository';
import { WorkflowTagMappingRepository } from '../databases/repositories/workflowTagMapping.repository';
import { WorkflowRepository } from '../databases/repositories/workflow.repository';
import { ActiveWorkflowManager } from '../ActiveWorkflowManager';
import { ExternalHooks } from '../ExternalHooks';
import { type ListQuery } from '../requests';
import { TagService } from '../services/tag.service';
import { OwnershipService } from '../services/ownership.service';
import { WorkflowHistoryService } from './workflowHistory/workflowHistory.service.ee';
import { Logger } from '../Logger';
import { OrchestrationService } from '../services/orchestration.service';
import { RoleService } from '../services/role.service';
import { WorkflowSharingService } from './workflowSharing.service';
import { ProjectService } from '../services/project.service';
import { ExecutionRepository } from '../databases/repositories/execution.repository';
import type { Scope } from '@n8n/permissions';
import type { EntityManager } from '@n8n/typeorm';
import { EventService } from '../events/event.service';
export declare class WorkflowService {
private readonly logger;
private readonly sharedWorkflowRepository;
private readonly workflowRepository;
private readonly workflowTagMappingRepository;
private readonly binaryDataService;
private readonly ownershipService;
private readonly tagService;
private readonly workflowHistoryService;
private readonly orchestrationService;
private readonly externalHooks;
private readonly activeWorkflowManager;
private readonly roleService;
private readonly workflowSharingService;
private readonly projectService;
private readonly executionRepository;
private readonly eventService;
constructor(logger: Logger, sharedWorkflowRepository: SharedWorkflowRepository, workflowRepository: WorkflowRepository, workflowTagMappingRepository: WorkflowTagMappingRepository, binaryDataService: BinaryDataService, ownershipService: OwnershipService, tagService: TagService, workflowHistoryService: WorkflowHistoryService, orchestrationService: OrchestrationService, externalHooks: ExternalHooks, activeWorkflowManager: ActiveWorkflowManager, roleService: RoleService, workflowSharingService: WorkflowSharingService, projectService: ProjectService, executionRepository: ExecutionRepository, eventService: EventService);
getMany(user: User, options?: ListQuery.Options, includeScopes?: boolean): Promise<{
workflows: (Pick<WorkflowEntity, "id"> & Partial<Pick<WorkflowEntity, "name" | "tags" | "createdAt" | "updatedAt" | "active" | "versionId">>)[] | ListQuery.Workflow.WithSharing[];
count: number;
}>;
update(user: User, workflowUpdateData: WorkflowEntity, workflowId: string, tagIds?: string[], forceSave?: boolean): Promise<WorkflowEntity>;
delete(user: User, workflowId: string): Promise<WorkflowEntity | undefined>;
getWorkflowScopes(user: User, workflowId: string): Promise<Scope[]>;
transferAll(fromProjectId: string, toProjectId: string, trx?: EntityManager): Promise<void>;
}