import type { User } from '@n8n/db';
import type { PackageWriter } from '../../io/package-writer';
import type { ManifestEntry } from '../../spec/manifest.schema';
import type { PackageVariableRequirement } from '../../spec/requirements.schema';
import type { VariableMissingMode } from '../../n8n-packages.types';
export interface WorkflowVariableRequirement {
    workflowId: string;
    variableName: string;
}
export interface VariableExportRequest {
    user: User;
    requirements: WorkflowVariableRequirement[];
    writer: PackageWriter;
    includeVariableValues: boolean;
    projectTargetsById?: Map<string, string>;
}
export interface VariableExportResult {
    entries: ManifestEntry[];
    requirements: PackageVariableRequirement[];
}
export interface VariableImportRequest {
    requirements: PackageVariableRequirement[] | undefined;
    missingMode: VariableMissingMode;
}
export interface VariableResolutionFailure {
    name: string;
    usedByWorkflows: string[];
}
export declare function createFailure(requirement: PackageVariableRequirement): VariableResolutionFailure;
export interface VariableImportPlan {
    matched: string[];
    missing: VariableResolutionFailure[];
}
