def __init__(self, key: typing.Optional[PRIVATE_KEY_TYPES], cert: typing.Optional[PKCS12Certificate], additional_certs: typing.List[PKCS12Certificate]):
    if ((key is not None) and (not isinstance(key, (rsa.RSAPrivateKey, dsa.DSAPrivateKey, ec.EllipticCurvePrivateKey, ed25519.Ed25519PrivateKey, ed448.Ed448PrivateKey)))):
        raise TypeError('Key must be RSA, DSA, EllipticCurve, ED25519, or ED448 private key, or None.')
    if ((cert is not None) and (not isinstance(cert, PKCS12Certificate))):
        raise TypeError('cert must be a PKCS12Certificate object or None')
    if (not all((isinstance(add_cert, PKCS12Certificate) for add_cert in additional_certs))):
        raise TypeError('all values in additional_certs must be PKCS12Certificate objects')
    self._key = key
    self._cert = cert
    self._additional_certs = additional_certs
def __init__(self, key: typing.Optional[PRIVATE_KEY_TYPES], cert: typing.Optional[PKCS12Certificate], additional_certs: typing.List[PKCS12Certificate]):
    if ((key is not None) and (not isinstance(key, (rsa.RSAPrivateKey, dsa.DSAPrivateKey, ec.EllipticCurvePrivateKey, ed25519.Ed25519PrivateKey, ed448.Ed448PrivateKey)))):
        raise TypeError('Key must be RSA, DSA, EllipticCurve, ED25519, or ED448 private key, or None.')
    if ((cert is not None) and (not isinstance(cert, PKCS12Certificate))):
        raise TypeError('cert must be a PKCS12Certificate object or None')
    if (not all((isinstance(add_cert, PKCS12Certificate) for add_cert in additional_certs))):
        raise TypeError('all values in additional_certs must be PKCS12Certificate objects')
    self._key = key
    self._cert = cert
    self._additional_certs = additional_certs