/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { Bytes, Crypto } from "#general";
import { Certificate } from "./Certificate.js";
import { AttestationCertificate } from "./definitions/attestation.js";
import { MatterCertificate } from "./definitions/base.js";
/**
 * Base class for Attestation Certificates (PAA, PAI, DAC).
 */
export declare abstract class AttestationBaseCertificate<CT extends MatterCertificate> extends Certificate<CT> {
    /**
     * Sign the certificate using the provided crypto and key.
     * If the certificate is already signed, it throws a CertificateError.
     */
    sign(crypto: Crypto, key: JsonWebKey): Promise<void>;
}
/** PAA (Product Attestation Authority) Certificate. */
export declare class Paa extends AttestationBaseCertificate<AttestationCertificate.Paa> {
    /** Construct the class from an ASN.1/DER encoded certificate */
    static fromAsn1(asn1: Bytes): Paa;
}
/** PAI (Product Attestation Intermediate) Certificate. */
export declare class Pai extends AttestationBaseCertificate<AttestationCertificate.Pai> {
}
/** DAC (Device Attestation Certificate) Certificate. */
export declare class Dac extends AttestationBaseCertificate<AttestationCertificate.Dac> {
}
//# sourceMappingURL=AttestationCertificates.d.ts.map