n8n
Version:
n8n Workflow Automation Tool
35 lines (34 loc) • 1.45 kB
TypeScript
import type { User } from '@n8n/db';
import { FolderFinderService } from '../../../../services/folder-finder.service';
import { WorkflowFinderService } from '../../../../workflows/workflow-finder.service';
import { FolderSerializer } from './folder.serializer';
import type { PackageWriter } from '../../io/package-writer';
import type { ManifestEntry } from '../../spec/manifest.schema';
import type { WorkflowExportRequirements } from '../requirements.types';
import { WorkflowExporter } from '../workflow/workflow.exporter';
export interface FolderExportRequest {
user: User;
folderIds: string[];
writer: PackageWriter;
basePrefix?: string;
}
export interface FolderExportResult {
entries: ManifestEntry[];
workflowEntries: ManifestEntry[];
requirements: WorkflowExportRequirements;
}
export declare class FolderExporter {
private readonly folderFinder;
private readonly folderSerializer;
private readonly workflowFinder;
private readonly workflowExporter;
constructor(folderFinder: FolderFinderService, folderSerializer: FolderSerializer, workflowFinder: WorkflowFinderService, workflowExporter: WorkflowExporter);
export(request: FolderExportRequest): Promise<FolderExportResult>;
private buildForest;
private exportLevel;
private exportFolder;
private exportFolderShell;
private exportContainedWorkflows;
private mergeFolderExportResults;
private orderedByCreation;
}