/** * SSH Deploy Helper * * Utility for deploying secrets to remote servers via SSH. * Used by the `factiii secrets deploy` command to write .env files * directly from the dev laptop to staging/prod servers. */ export interface SSHDeployConfig { host: string; user: string; privateKey: string; repoName: string; } export interface DeploySecretsResult { success: boolean; message?: string; error?: string; } /** * SSH Deploy - handles secure deployment of secrets to remote servers */ export declare class SSHDeploy { private host; private user; private privateKey; private repoName; private keyPath; constructor(config: SSHDeployConfig); /** * Write SSH key to temp file and return path */ private setupSSHKey; /** * Clean up temporary SSH key file */ private cleanupSSHKey; /** * Execute SSH command */ private sshExec; /** * Test SSH connection to server */ testConnection(): Promise; /** * Convert environment variables to .env file format */ private envToFileContent; /** * Write .env file to server */ writeEnvFile(stage: 'staging' | 'prod', envVars: Record): Promise; /** * Restart container on server */ restartContainer(containerName: string): Promise; /** * Check if env file exists on server */ checkEnvFileExists(stage: 'staging' | 'prod'): Promise; /** * Get last modified time of env file on server */ getEnvFileInfo(stage: 'staging' | 'prod'): Promise<{ exists: boolean; modified?: Date; }>; } export default SSHDeploy; //# sourceMappingURL=ssh-deploy.d.ts.map