import { XyNginCDomainConfig } from "../types"; /** * Installs system requirements using the binary in interactive mode. * * @param binaryPath - Path to the xynginc binary. * @param sudoCmd - Sudo prefix to use. */ export declare function installRequirementsHandler(binaryPath: string, sudoCmd: string): Promise; /** * Applies the configuration using the xynginc binary. * * @param binaryPath - Path to the xynginc binary. * @param config - The configuration object. * @param sudoCmd - Sudo prefix to use. */ export declare function applyConfig(binaryPath: string, config: { domains: XyNginCDomainConfig[]; auto_reload: boolean; auto_fix_firewall: boolean; }, sudoCmd: string): Promise; /** * Adds a new domain configuration using the binary. * * @param binaryPath - Path to the xynginc binary. * @param domain - The domain name. * @param port - The backend port. * @param ssl - Whether to enable SSL. * @param email - Optional email for SSL. * @param maxBodySize - Optional maximum body size. * @param sudoCmd - Sudo prefix to use. */ export declare function addDomain(binaryPath: string, domain: string, port: number, ssl: boolean, email?: string, maxBodySize?: string, sudoCmd?: string): Promise; /** * Removes a domain configuration using the binary. * * @param binaryPath - Path to the xynginc binary. * @param domain - The domain name to remove. * @param sudoCmd - Sudo prefix to use. */ export declare function removeDomain(binaryPath: string, domain: string, sudoCmd?: string): Promise; /** * Lists all configured domains. * * @param binaryPath - Path to the xynginc binary. * @param sudoCmd - Sudo prefix to use. * @returns A list of domain names. */ export declare function listDomains(binaryPath: string, sudoCmd?: string): Promise; /** * Reloads the Nginx service using the binary. * * @param binaryPath - Path to the xynginc binary. * @param sudoCmd - Sudo prefix to use. */ export declare function reloadNginx(binaryPath: string, sudoCmd?: string): Promise; /** * Tests the Nginx configuration validity using the binary. * * @param binaryPath - Path to the xynginc binary. * @param sudoCmd - Sudo prefix to use. * @returns True if the configuration is valid. */ export declare function testNginx(binaryPath: string, sudoCmd?: string): Promise; /** * Gets the status of managed sites using the binary. * * @param binaryPath - Path to the xynginc binary. * @param sudoCmd - Sudo prefix to use. * @returns The status output. */ export declare function getStatus(binaryPath: string, sudoCmd?: string): Promise; /** * Checks if system requirements (Nginx, Certbot) are satisfied using the binary. * * @param binaryPath - Path to the xynginc binary. * @param sudoCmd - Sudo prefix to use. * @returns True if requirements are met, false otherwise. */ export declare function checkRequirements(binaryPath: string, sudoCmd?: string): Promise; /** * Executes a shell command and streams its stdout/stderr line-by-line in real-time, * preserving ANSI color codes printed by the Go binary. */ export declare function execStream(command: string): Promise;