export interface CertificateInfo {
    domain: string;
    validFrom: Date;
    validTo: Date;
    issuer: string;
    isValid: boolean;
    certFilePath?: string;
    keyFilePath?: string;
}
export declare class CertificateManager {
    private certsDir;
    private caDir;
    private hasOpenSSL;
    constructor(certsDir?: string);
    /**
     * Check if OpenSSL is installed on the system
     */
    private checkOpenSSLInstalled;
    /**
     * Initialize the certificate directory and validate OpenSSL
     */
    initialize(): Promise<void>;
    /**
     * Initialize a local CA to sign certificates
     */
    private initLocalCA;
    /**
     * Create a certificate for a domain using OpenSSL
     */
    createCertificate(domain: string): Promise<CertificateInfo>;
    /**
     * Generate an OpenSSL configuration file for the certificate
     */
    private generateOpenSSLConfig;
    /**
     * Delete a certificate for a domain
     */
    deleteCertificate(domain: string): Promise<boolean>;
    /**
     * Verify if a valid certificate exists for the domain
     */
    verifyCertificate(domain: string): Promise<CertificateInfo | null>;
    /**
     * Parse an existing certificate to get its information
     */
    private parseCertificate;
    /**
     * List all certificates created by the application
     */
    listCertificates(): Promise<CertificateInfo[]>;
}
//# sourceMappingURL=certificates.d.ts.map