import { CertificateProvider } from '../enums/certificate-provider.enum';
import { DnsProvider } from '../enums/dns-provider.enum';
import { ICertificateProvider, CertificateIssuerConfig, CertificateManifestConfig } from '../interfaces/certificate-provider.interface';
interface Dns01WebhookConfig {
    groupName: string;
    solverName: string;
    secretName: string;
    secretKey: string;
}
export declare class AcmeCertificateService implements ICertificateProvider {
    generateClusterIssuerManifest(config: CertificateIssuerConfig): string;
    generateCertificateManifest(config: CertificateManifestConfig): string;
    validateConfiguration(config: CertificateIssuerConfig): {
        valid: boolean;
        errors: string[];
    };
    getAcmeServerUrl(provider: CertificateProvider): string;
    getIssuerName(server: string): string;
    getWildcardIssuerName(server: string): string;
    generateCombinedClusterIssuerManifest(config: CertificateIssuerConfig & {
        zoneName: string;
        dnsProvider: DnsProvider;
    }): string;
    generateDns01ClusterIssuerManifest(config: CertificateIssuerConfig & {
        zoneName: string;
        dnsProvider: DnsProvider;
    }): string;
    generateWildcardCertificateManifest(config: {
        name: string;
        namespace: string;
        secretName: string;
        issuerName: string;
        zoneName: string;
    }): string;
    generateDnsTokenSecretManifest(token: string, dnsProvider: DnsProvider): string;
    getDns01WebhookConfig(dnsProvider: DnsProvider): Dns01WebhookConfig;
}
export {};
