import type { TVpnPlatform, IVpnServiceUnit } from './smartvpn.interfaces.js';
/**
 * Install the smartvpn daemon as a system service.
 */
export declare class VpnInstaller {
    /**
     * Detect the current platform.
     */
    static detectPlatform(): TVpnPlatform;
    /**
     * Generate a systemd unit file for Linux.
     */
    static generateSystemdUnit(options: {
        binaryPath: string;
        socketPath: string;
        mode: 'client' | 'server';
        configPath?: string;
        description?: string;
    }): IVpnServiceUnit;
    /**
     * Generate a launchd plist for macOS.
     */
    static generateLaunchdPlist(options: {
        binaryPath: string;
        socketPath: string;
        mode: 'client' | 'server';
        description?: string;
    }): IVpnServiceUnit;
    /**
     * Generate the appropriate service unit for the current platform.
     */
    static generateServiceUnit(options: {
        binaryPath: string;
        socketPath: string;
        mode: 'client' | 'server';
    }): IVpnServiceUnit;
}
