/**
 * This interface holds all fragments that describe a certificate object
 */
export interface ITrustedCertificate {
    /**
     * Certificate validity end date and time
     */
    notAfter?: string;
    /**
     * Certificate validity start date and time
     */
    notBefore?: string;
    /**
     * Which X.509 version applies to the certificate
     */
    version?: any;
    /**
     * The algorithm used by the issuer to sign the certificate
     */
    algorithmName?: string;
    /**
     * The owner of the certificate
     */
    subject?: string;
    /**
     * Certificate serial number
     */
    serialNumber?: string;
    /**
     * The name of the entity issuing the certificate
     */
    issuer?: string;
    /**
     * Certificate fingerprint
     * A unique identifier
     */
    fingerprint: string;
    /**
     * Certificate status
     */
    status: 'ENABLED' | 'DISABLED';
    /**
     * Certificate name
     */
    name: string;
    /**
     * Auto-registration flag
     * All devices with credentials signed by this certificate will be able to communicate with the platform without a prior registration.
     */
    autoRegistrationEnabled?: boolean;
    /**
     * Certificate in PEM format
     */
    certInPemFormat: string;
    /**
     * True if user has proved to own the certificate.
     */
    proofOfPossessionValid?: boolean;
    /**
     * A random string which should be encrypted with the private key to prove the certificate's ownership.
     */
    proofOfPossessionUnsignedVerificationCode?: string;
    /**
     * A date until the unsigned verification code can be used to prove the certificate's ownership. After this date the code needs to be regenerated.
     */
    proofOfPossessionVerificationCodeUsableUntil?: string;
    /**
     * Certificate authority flag.
     * Only one certificate authority can be set for tenant. This certificate is used for EST device registration.
     */
    tenantCertificateAuthority?: boolean;
}
//# sourceMappingURL=ITrustedCertificate.d.ts.map