/**
 * .env File Management Utilities
 *
 * Atomic updates, backup management, and project list merging
 *
 * NEW (v0.24.0): Supports import command .env updates
 *
 * @module utils/env-manager
 */
import type { Logger } from './logger.js';
export interface EnvUpdateOptions {
    key: string;
    value: string;
    projectRoot: string;
    logger?: Logger;
    createBackup?: boolean;
}
export interface EnvMergeOptions {
    key: string;
    newValues: string[];
    projectRoot: string;
    logger?: Logger;
    createBackup?: boolean;
}
/**
 * Parse .env file content into key-value pairs
 */
export declare function parseEnvContent(content: string): Map<string, string>;
/**
 * Serialize env map to .env file format
 */
export declare function serializeEnvContent(envMap: Map<string, string>): string;
/**
 * Update single key in .env file (atomic write with backup)
 *
 * TC-075: Atomic .env Update
 *
 * @param options - Update options
 */
export declare function updateEnvFile(options: EnvUpdateOptions): Promise<void>;
/**
 * Merge new values with existing comma-separated list (no duplicates)
 *
 * TC-076: Merge Project Lists (No Duplicates)
 *
 * Example:
 * - Existing: JIRA_PROJECTS=BACKEND,FRONTEND
 * - New: [MOBILE, INFRA, BACKEND]
 * - Result: JIRA_PROJECTS=BACKEND,FRONTEND,MOBILE,INFRA
 *
 * @param options - Merge options
 */
export declare function mergeEnvList(options: EnvMergeOptions): Promise<void>;
/**
 * Merge two project lists without duplicates
 *
 * Preserves existing order, appends new projects
 *
 * @param existing - Existing project list
 * @param newProjects - New projects to add
 * @returns Merged list without duplicates
 */
export declare function mergeProjectList(existing: string[], newProjects: string[]): string[];
/**
 * Get value from .env file
 *
 * @param projectRoot - Project root path
 * @param key - Environment variable key
 * @returns Value or null if not found
 */
export declare function getEnvValue(projectRoot: string, key: string): Promise<string | null>;
/**
 * Check if .env file exists
 *
 * @param projectRoot - Project root path
 * @returns True if .env exists
 */
export declare function envFileExists(projectRoot: string): boolean;
/**
 * Restore .env from backup
 *
 * @param projectRoot - Project root path
 * @param logger - Logger instance
 */
export declare function restoreEnvBackup(projectRoot: string, logger?: Logger): Promise<void>;
//# sourceMappingURL=env-manager.d.ts.map