/**
 * Backup and restore manager for MCP configurations
 */
import { BackupResult, RestoreResult, DeleteResult, BackupListItem } from "../types/index.js";
export declare class BackupManager {
    private basePath;
    private backupDir;
    private registry;
    private fs;
    constructor(basePath?: string);
    /**
     * Get current platform (for testing support)
     */
    private getCurrentPlatform;
    /**
     * Copy directory recursively (for test mode)
     */
    private copyDirectory;
    /**
     * Get current working directory (for testing support)
     */
    private getCurrentWorkingDirectory;
    /**
     * Create a comprehensive backup of all MCP configurations
     */
    createBackup(): Promise<BackupResult>;
    /**
     * Backup a single application's configuration
     */
    private backupApplication;
    /**
     * List available backups
     */
    listBackups(): Promise<BackupListItem[]>;
    /**
     * Get a specific backup by ID
     */
    getBackup(backupId: string): Promise<BackupListItem | null>;
    /**
     * Extract metadata from a backup without full extraction
     */
    private extractMetadata;
    /**
     * Restore configurations from a backup
     */
    restoreBackup(backupId: string, options?: {
        applications?: string[];
    }): Promise<RestoreResult>;
    /**
     * Delete a backup by ID
     */
    deleteBackup(backupId: string): Promise<DeleteResult>;
    /**
     * Restore a single application's configuration
     */
    private restoreApplication;
    /**
     * Get HyperTool version from package.json
     */
    private getHypertoolVersion;
    /**
     * Export database contents for backup
     */
    private exportDatabase;
    /**
     * Restore database from backup
     */
    private restoreDatabase;
}
//# sourceMappingURL=manager.d.ts.map