import type { User } from '@n8n/db';
import { WorkflowFinderService } from '../../../../workflows/workflow-finder.service';
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 type { WorkflowCredentialRequirement } from '../credential/credential.types';
export interface WorkflowExportRequest {
    user: User;
    workflowIds: string[];
    writer: PackageWriter;
}
export interface WorkflowExportRequirements {
    credentials: WorkflowCredentialRequirement[];
}
export interface WorkflowExportResult {
    entries: ManifestEntry[];
    requirements: WorkflowExportRequirements;
}
export declare class WorkflowExporter {
    private readonly workflowFinder;
    private readonly workflowSerializer;
    private readonly credentialRequirementsExtractor;
    constructor(workflowFinder: WorkflowFinderService, workflowSerializer: WorkflowSerializer, credentialRequirementsExtractor: CredentialRequirementsExtractor);
    export(request: WorkflowExportRequest): Promise<WorkflowExportResult>;
    private assertAllRequestedWorkflowsFound;
}
