UNPKG

n8n

Version:

n8n Workflow Automation Tool

21 lines (20 loc) 1.31 kB
import { Logger } from '@n8n/backend-common'; import type { User, WorkflowEntity } from '@n8n/db'; import { ProjectRepository } from '@n8n/db'; import { ProjectService } from '../../../../services/project.service.ee'; import { WorkflowService } from '../../../../workflows/workflow.service'; import type { PersistedWorkflowPlanItem } from './workflow-import.types'; import { WorkflowPublishingPolicy, type WorkflowPublishingBlockedReason, type WorkflowPublishingOutcome } from './workflow-publishing-policy.types'; export interface WorkflowPublishingResult { workflow: WorkflowEntity; publishing: WorkflowPublishingOutcome; } export declare class WorkflowPublisher { private readonly logger; private readonly projectRepository; private readonly projectService; private readonly workflowService; constructor(logger: Logger, projectRepository: ProjectRepository, projectService: ProjectService, workflowService: WorkflowService); assertCanPublish(user: User, projectId: string, policy: WorkflowPublishingPolicy, projectPendingCreation?: boolean): Promise<void>; apply(user: User, item: PersistedWorkflowPlanItem, workflow: WorkflowEntity, policy: WorkflowPublishingPolicy, publishBlocked: ReadonlyMap<string, WorkflowPublishingBlockedReason>): Promise<WorkflowPublishingResult>; }