n8n
Version:
n8n Workflow Automation Tool
43 lines (42 loc) • 2.39 kB
TypeScript
import type { AutoIncludedWorkflow } from './auto-included-workflow-resolver';
import { WorkflowSerializer } from './workflow.serializer';
import type { PackageWriter } from '../../io/package-writer';
import type { ManifestEntry } from '../../spec/manifest.schema';
import { CredentialRequirementsExtractor } from '../credential/credential-requirements.extractor';
import { DataTableRequirementsExtractor } from '../data-table/data-table-requirements.extractor';
import { FolderSerializer } from '../folder/folder.serializer';
import { ProjectSerializer } from '../project/project.serializer';
import type { WorkflowExportRequirements } from '../requirements.types';
import { TagRequirementsExtractor } from '../tag/tag-requirements.extractor';
import { VariableRequirementsExtractor } from '../variable/variable-requirements.extractor';
export interface AutoIncludedWorkflowExportRequest {
writer: PackageWriter;
workflows: AutoIncludedWorkflow[];
existingWorkflowEntries: ManifestEntry[];
existingFolderEntries: ManifestEntry[];
existingProjectEntries: ManifestEntry[];
includeTags: boolean;
projectTargetsById?: Map<string, string>;
}
export interface AutoIncludedWorkflowExportResult {
workflowEntries: ManifestEntry[];
folderEntries: ManifestEntry[];
projectEntries: ManifestEntry[];
requirements: WorkflowExportRequirements;
projectTargetsById: Map<string, string>;
}
export declare class AutoIncludedWorkflowExporter {
private readonly workflowSerializer;
private readonly folderSerializer;
private readonly projectSerializer;
private readonly credentialRequirementsExtractor;
private readonly dataTableRequirementsExtractor;
private readonly variableRequirementsExtractor;
private readonly tagRequirementsExtractor;
constructor(workflowSerializer: WorkflowSerializer, folderSerializer: FolderSerializer, projectSerializer: ProjectSerializer, credentialRequirementsExtractor: CredentialRequirementsExtractor, dataTableRequirementsExtractor: DataTableRequirementsExtractor, variableRequirementsExtractor: VariableRequirementsExtractor, tagRequirementsExtractor: TagRequirementsExtractor);
export(request: AutoIncludedWorkflowExportRequest): AutoIncludedWorkflowExportResult;
private resolveWorkflowBaseDir;
private ensureProjectShell;
private ensureFolderChain;
private writeWorkflow;
}