import { EDHOC, EdhocCredentialManager, EdhocCredentials, EdhocCredentialsFormat } from './edhoc';
import { X509Certificate } from 'crypto';
export declare class X509CertificateCredentialManager implements EdhocCredentialManager {
    private certificates;
    private peerCertificates;
    private trustedCAs;
    private cryptoKeyID;
    fetchFormat: EdhocCredentialsFormat;
    constructor(credentials: X509Certificate[] | Buffer[], cryptoKeyID: Buffer);
    addPeerCertificate(certificate: X509Certificate | Buffer): void;
    addTrustedCA(certificate: X509Certificate | Buffer): void;
    private convertAndValidateCredentials;
    private convertAndValidateSingleCredential;
    fetch(_edhoc: EDHOC): Promise<EdhocCredentials>;
    verify(edhoc: EDHOC, credentials: EdhocCredentials): Promise<EdhocCredentials>;
    private verifyCertificateChain;
    private verifyAgainstTrustRoots;
    private extractPublicKey;
}
//# sourceMappingURL=x509credentials.d.ts.map