UNPKG

n8n

Version:

n8n Workflow Automation Tool

43 lines (42 loc) 2.37 kB
import type { CreateFolderDto, DeleteFolderDto, UpdateFolderDto } from '@n8n/api-types'; import type { EntityManager } from '@n8n/typeorm'; import { Folder } from '../databases/entities/folder'; import { FolderTagMappingRepository } from '../databases/repositories/folder-tag-mapping.repository'; import { FolderRepository } from '../databases/repositories/folder.repository'; import { WorkflowRepository } from '../databases/repositories/workflow.repository'; import type { ListQuery } from '../requests'; export interface SimpleFolderNode { id: string; name: string; children: SimpleFolderNode[]; } export declare class FolderService { private readonly folderRepository; private readonly folderTagMappingRepository; private readonly workflowRepository; constructor(folderRepository: FolderRepository, folderTagMappingRepository: FolderTagMappingRepository, workflowRepository: WorkflowRepository); createFolder({ parentFolderId, name }: CreateFolderDto, projectId: string): Promise<{ name: string; parentFolderId: string | null; parentFolder: Folder | null; subFolders: Folder[]; workflows: import("../databases/entities/workflow-entity").WorkflowEntity[]; tags: import("../databases/entities/tag-entity").TagEntity[]; id: string; createdAt: Date; updatedAt: Date; workflowCount: boolean; subFolderCount: number; }>; updateFolder(folderId: string, projectId: string, { name, tagIds, parentFolderId }: UpdateFolderDto): Promise<void>; findFolderInProjectOrFail(folderId: string, projectId: string, em?: EntityManager): Promise<Folder>; getFolderTree(folderId: string, projectId: string): Promise<SimpleFolderNode[]>; deleteFolder(folderId: string, projectId: string, { transferToFolderId }: DeleteFolderDto): Promise<void>; transferAllFoldersToProject(fromProjectId: string, toProjectId: string, tx?: EntityManager): Promise<import("@n8n/typeorm").UpdateResult>; private transformFolderPathToTree; getFolderAndWorkflowCount(folderId: string, projectId: string): Promise<{ totalSubFolders: number; totalWorkflows: number; }>; getManyAndCount(projectId: string, options: ListQuery.Options): Promise<[import("../databases/entities/folder").FolderWithWorkflowAndSubFolderCount[], number]>; }