import { NodeTypes } from '../../../node-types'; import { CredentialImporter } from '../entities/credential/credential-importer'; import type { CredentialApplyResult, CredentialBindingRequest, CredentialResolution } from '../entities/credential/credential.types'; import { DataTableImporter } from '../entities/data-table/data-table-importer'; import type { DataTableImportPlan, DataTableImportRequest } from '../entities/data-table/data-table.types'; import type { FolderImportContext, FolderImportPlan, PreparedFolder } from '../entities/folder/folder-import.types'; import { FolderImporter } from '../entities/folder/folder-importer'; import { VariableImporter } from '../entities/variable/variable-importer'; import type { VariableImportPlan, VariableImportRequest } from '../entities/variable/variable.types'; import { type MissingNodeTypeRequirement } from '../entities/workflow/missing-node-type-mode'; import type { PreparedWorkflow, WorkflowImportOutcome, WorkflowImportPlan } from '../entities/workflow/workflow-import.types'; import { WorkflowImporter } from '../entities/workflow/workflow-importer'; import { WorkflowPublisher } from '../entities/workflow/workflow-publisher'; import type { BlockingIssue, ImportContext, ImportedFolderSummary, ImportFolderProperties, ImportWorkflowProperties, PackageImportBindings } from '../n8n-packages.types'; export interface ImportOrchestrationInput { context: ImportContext; folders: PreparedFolder[]; workflows: PreparedWorkflow[]; credentialRequest: CredentialBindingRequest; dataTableRequest: DataTableImportRequest; variableRequest: VariableImportRequest; options: ImportWorkflowProperties & ImportFolderProperties; projectPendingCreation?: boolean; } export interface ImportOrchestrationResult { workflowOutcomes: WorkflowImportOutcome[]; folderSummaries: ImportedFolderSummary[]; bindings: PackageImportBindings; credentialResult: CredentialApplyResult; dataTablePlan: DataTableImportPlan; variablePlan: VariableImportPlan; } export interface ImportPlan { input: ImportOrchestrationInput; folderContext: FolderImportContext; credentialPlan: CredentialResolution; workflowPlan: WorkflowImportPlan; folderPlan: FolderImportPlan; dataTablePlan: DataTableImportPlan; variablePlan: VariableImportPlan; missingNodeTypes: MissingNodeTypeRequirement[]; blockingIssues: BlockingIssue[]; } export declare class ImportOrchestrator { private readonly credentialImporter; private readonly dataTableImporter; private readonly variableImporter; private readonly folderImporter; private readonly workflowImporter; private readonly workflowPublisher; private readonly nodeTypes; constructor(credentialImporter: CredentialImporter, dataTableImporter: DataTableImporter, variableImporter: VariableImporter, folderImporter: FolderImporter, workflowImporter: WorkflowImporter, workflowPublisher: WorkflowPublisher, nodeTypes: NodeTypes); import(input: ImportOrchestrationInput): Promise; plan(input: ImportOrchestrationInput): Promise; apply(plan: ImportPlan): Promise; private collectBlockingIssues; }