/**
 * SSL Manager for Onebox
 *
 * Manages SSL certificates via Let's Encrypt (using smartacme)
 */
export declare class OneboxSslManager {
    private oneboxRef;
    private database;
    private smartacme;
    private certManager;
    private acmeEmail;
    constructor(oneboxRef: any);
    /**
     * Initialize SSL manager
     */
    init(): Promise<void>;
    /**
     * Check if SSL manager is configured
     */
    isConfigured(): boolean;
    /**
     * Acquire certificate and return certificate data (for CertRequirementManager)
     * Returns certificate PEM content and expiry information
     */
    acquireCertificate(domain: string, includeWildcard?: boolean): Promise<{
        certPem: string;
        keyPem: string;
        fullchainPem: string;
        expiryDate: number;
        issuer: string;
    }>;
    /**
     * Obtain SSL certificate for a domain using SmartACME
     */
    obtainCertificate(domain: string, includeWildcard?: boolean): Promise<void>;
    /**
     * Obtain certificate using certbot
     */
    private obtainCertificateWithCertbot;
    /**
     * Renew certificate for a domain using SmartACME
     */
    renewCertificate(domain: string): Promise<void>;
    /**
     * List all certificates
     */
    listCertificates(): Promise<import("../types.js").ISslCertificate[]>;
    /**
     * Get certificate info for a domain
     */
    getCertificate(domain: string): Promise<import("../types.js").ISslCertificate | null>;
    /**
     * Check certificates that are expiring soon and renew them
     */
    renewExpiring(): Promise<void>;
    /**
     * Force renewal of all certificates
     */
    renewAll(): Promise<void>;
    /**
     * Check if certbot is installed
     */
    isCertbotInstalled(): Promise<boolean>;
    /**
     * Get certificate expiry date from file
     */
    getCertificateExpiry(domain: string): Promise<Date | null>;
}
