"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ...

class CertificateSigningRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    class _KeyType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[KeyType.V], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
        RSA = CertificateSigningRequest.KeyType.V(0)
        DSA = CertificateSigningRequest.KeyType.V(1)
        EC = CertificateSigningRequest.KeyType.V(2)
    class KeyType(metaclass=_KeyType):
        V = typing.NewType('V', builtins.int)
    RSA = CertificateSigningRequest.KeyType.V(0)
    DSA = CertificateSigningRequest.KeyType.V(1)
    EC = CertificateSigningRequest.KeyType.V(2)

    class _Curve(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Curve.V], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
        SECP256R1 = CertificateSigningRequest.Curve.V(0)
        SECP384R1 = CertificateSigningRequest.Curve.V(1)
        SECP521R1 = CertificateSigningRequest.Curve.V(2)
        SECP192R1 = CertificateSigningRequest.Curve.V(3)
        SECP256K1 = CertificateSigningRequest.Curve.V(4)
        BrainpoolP256R1 = CertificateSigningRequest.Curve.V(5)
        BrainpoolP384R1 = CertificateSigningRequest.Curve.V(6)
        BrainpoolP512R1 = CertificateSigningRequest.Curve.V(7)
        SECT571K1 = CertificateSigningRequest.Curve.V(8)
        SECT409K1 = CertificateSigningRequest.Curve.V(9)
        SECT283K1 = CertificateSigningRequest.Curve.V(10)
        SECT233K1 = CertificateSigningRequest.Curve.V(11)
        SECT163K1 = CertificateSigningRequest.Curve.V(12)
        SECT571R1 = CertificateSigningRequest.Curve.V(13)
        SECT409R1 = CertificateSigningRequest.Curve.V(14)
        SECT283R1 = CertificateSigningRequest.Curve.V(15)
        SECT233R1 = CertificateSigningRequest.Curve.V(16)
        SECT163R2 = CertificateSigningRequest.Curve.V(17)
    class Curve(metaclass=_Curve):
        V = typing.NewType('V', builtins.int)
    SECP256R1 = CertificateSigningRequest.Curve.V(0)
    SECP384R1 = CertificateSigningRequest.Curve.V(1)
    SECP521R1 = CertificateSigningRequest.Curve.V(2)
    SECP192R1 = CertificateSigningRequest.Curve.V(3)
    SECP256K1 = CertificateSigningRequest.Curve.V(4)
    BrainpoolP256R1 = CertificateSigningRequest.Curve.V(5)
    BrainpoolP384R1 = CertificateSigningRequest.Curve.V(6)
    BrainpoolP512R1 = CertificateSigningRequest.Curve.V(7)
    SECT571K1 = CertificateSigningRequest.Curve.V(8)
    SECT409K1 = CertificateSigningRequest.Curve.V(9)
    SECT283K1 = CertificateSigningRequest.Curve.V(10)
    SECT233K1 = CertificateSigningRequest.Curve.V(11)
    SECT163K1 = CertificateSigningRequest.Curve.V(12)
    SECT571R1 = CertificateSigningRequest.Curve.V(13)
    SECT409R1 = CertificateSigningRequest.Curve.V(14)
    SECT283R1 = CertificateSigningRequest.Curve.V(15)
    SECT233R1 = CertificateSigningRequest.Curve.V(16)
    SECT163R2 = CertificateSigningRequest.Curve.V(17)

    class _HashType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[HashType.V], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
        SHA256 = CertificateSigningRequest.HashType.V(0)
        SHA224 = CertificateSigningRequest.HashType.V(1)
        SHA384 = CertificateSigningRequest.HashType.V(2)
        SHA512 = CertificateSigningRequest.HashType.V(3)
        SHA512_224 = CertificateSigningRequest.HashType.V(4)
        SHA512_256 = CertificateSigningRequest.HashType.V(5)
        BLAKE2b = CertificateSigningRequest.HashType.V(6)
        BLAKE2s = CertificateSigningRequest.HashType.V(7)
        SHA3_224 = CertificateSigningRequest.HashType.V(8)
        SHA3_256 = CertificateSigningRequest.HashType.V(9)
        SHA3_384 = CertificateSigningRequest.HashType.V(10)
        SHA3_512 = CertificateSigningRequest.HashType.V(11)
        SHAKE128 = CertificateSigningRequest.HashType.V(12)
        SHAKE256 = CertificateSigningRequest.HashType.V(13)
    class HashType(metaclass=_HashType):
        V = typing.NewType('V', builtins.int)
    SHA256 = CertificateSigningRequest.HashType.V(0)
    SHA224 = CertificateSigningRequest.HashType.V(1)
    SHA384 = CertificateSigningRequest.HashType.V(2)
    SHA512 = CertificateSigningRequest.HashType.V(3)
    SHA512_224 = CertificateSigningRequest.HashType.V(4)
    SHA512_256 = CertificateSigningRequest.HashType.V(5)
    BLAKE2b = CertificateSigningRequest.HashType.V(6)
    BLAKE2s = CertificateSigningRequest.HashType.V(7)
    SHA3_224 = CertificateSigningRequest.HashType.V(8)
    SHA3_256 = CertificateSigningRequest.HashType.V(9)
    SHA3_384 = CertificateSigningRequest.HashType.V(10)
    SHA3_512 = CertificateSigningRequest.HashType.V(11)
    SHAKE128 = CertificateSigningRequest.HashType.V(12)
    SHAKE256 = CertificateSigningRequest.HashType.V(13)

    class Subject(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        COMMON_NAME_FIELD_NUMBER: builtins.int
        COUNTRY_NAME_FIELD_NUMBER: builtins.int
        STATE_OR_PROVINCE_NAME_FIELD_NUMBER: builtins.int
        LOCALITY_NAME_FIELD_NUMBER: builtins.int
        ORGANIZATION_NAME_FIELD_NUMBER: builtins.int
        ORGANIZATIONAL_UNIT_NAME_FIELD_NUMBER: builtins.int
        EMAIL_ADDRESS_FIELD_NUMBER: builtins.int
        common_name: typing.Text = ...
        country_name: typing.Text = ...
        state_or_province_name: typing.Text = ...
        locality_name: typing.Text = ...
        organization_name: typing.Text = ...
        organizational_unit_name: typing.Text = ...
        email_address: typing.Text = ...

        def __init__(self,
            *,
            common_name : typing.Text = ...,
            country_name : typing.Text = ...,
            state_or_province_name : typing.Text = ...,
            locality_name : typing.Text = ...,
            organization_name : typing.Text = ...,
            organizational_unit_name : typing.Text = ...,
            email_address : typing.Text = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal[u"_country_name",b"_country_name",u"_email_address",b"_email_address",u"_locality_name",b"_locality_name",u"_organization_name",b"_organization_name",u"_organizational_unit_name",b"_organizational_unit_name",u"_state_or_province_name",b"_state_or_province_name",u"country_name",b"country_name",u"email_address",b"email_address",u"locality_name",b"locality_name",u"organization_name",b"organization_name",u"organizational_unit_name",b"organizational_unit_name",u"state_or_province_name",b"state_or_province_name"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"_country_name",b"_country_name",u"_email_address",b"_email_address",u"_locality_name",b"_locality_name",u"_organization_name",b"_organization_name",u"_organizational_unit_name",b"_organizational_unit_name",u"_state_or_province_name",b"_state_or_province_name",u"common_name",b"common_name",u"country_name",b"country_name",u"email_address",b"email_address",u"locality_name",b"locality_name",u"organization_name",b"organization_name",u"organizational_unit_name",b"organizational_unit_name",u"state_or_province_name",b"state_or_province_name"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_country_name",b"_country_name"]) -> typing_extensions.Literal["country_name"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_email_address",b"_email_address"]) -> typing_extensions.Literal["email_address"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_locality_name",b"_locality_name"]) -> typing_extensions.Literal["locality_name"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_organization_name",b"_organization_name"]) -> typing_extensions.Literal["organization_name"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_organizational_unit_name",b"_organizational_unit_name"]) -> typing_extensions.Literal["organizational_unit_name"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_state_or_province_name",b"_state_or_province_name"]) -> typing_extensions.Literal["state_or_province_name"]: ...

    class KeyInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        KEY_PATH_FIELD_NUMBER: builtins.int
        CREATE_FIELD_NUMBER: builtins.int
        KEY_TYPE_FIELD_NUMBER: builtins.int
        KEY_SIZE_FIELD_NUMBER: builtins.int
        PUBLIC_EXPONENT_FIELD_NUMBER: builtins.int
        CURVE_FIELD_NUMBER: builtins.int
        key_path: typing.Text = ...
        create: builtins.bool = ...
        key_type: global___CertificateSigningRequest.KeyType.V = ...
        key_size: builtins.int = ...
        public_exponent: builtins.int = ...
        curve: global___CertificateSigningRequest.Curve.V = ...

        def __init__(self,
            *,
            key_path : typing.Text = ...,
            create : builtins.bool = ...,
            key_type : global___CertificateSigningRequest.KeyType.V = ...,
            key_size : builtins.int = ...,
            public_exponent : builtins.int = ...,
            curve : global___CertificateSigningRequest.Curve.V = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal[u"_create",b"_create",u"_curve",b"_curve",u"_key_size",b"_key_size",u"_key_type",b"_key_type",u"_public_exponent",b"_public_exponent",u"create",b"create",u"curve",b"curve",u"key_size",b"key_size",u"key_type",b"key_type",u"public_exponent",b"public_exponent"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"_create",b"_create",u"_curve",b"_curve",u"_key_size",b"_key_size",u"_key_type",b"_key_type",u"_public_exponent",b"_public_exponent",u"create",b"create",u"curve",b"curve",u"key_path",b"key_path",u"key_size",b"key_size",u"key_type",b"key_type",u"public_exponent",b"public_exponent"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_create",b"_create"]) -> typing_extensions.Literal["create"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_curve",b"_curve"]) -> typing_extensions.Literal["curve"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_key_size",b"_key_size"]) -> typing_extensions.Literal["key_size"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_key_type",b"_key_type"]) -> typing_extensions.Literal["key_type"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_public_exponent",b"_public_exponent"]) -> typing_extensions.Literal["public_exponent"]: ...

    class SoftHsm(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        TOKEN_LABEL_FIELD_NUMBER: builtins.int
        KEY_LABEL_FIELD_NUMBER: builtins.int
        USER_PIN_FIELD_NUMBER: builtins.int
        SO_FILE_FIELD_NUMBER: builtins.int
        token_label: typing.Text = ...
        key_label: typing.Text = ...
        user_pin: typing.Text = ...
        so_file: typing.Text = ...

        def __init__(self,
            *,
            token_label : typing.Text = ...,
            key_label : typing.Text = ...,
            user_pin : typing.Text = ...,
            so_file : typing.Text = ...,
            ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"key_label",b"key_label",u"so_file",b"so_file",u"token_label",b"token_label",u"user_pin",b"user_pin"]) -> None: ...

    class HsmInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        SOFTHSM_FIELD_NUMBER: builtins.int
        KEY_TYPE_FIELD_NUMBER: builtins.int
        KEY_SIZE_FIELD_NUMBER: builtins.int
        PUBLIC_EXPONENT_FIELD_NUMBER: builtins.int
        CURVE_FIELD_NUMBER: builtins.int
        key_type: global___CertificateSigningRequest.KeyType.V = ...
        key_size: builtins.int = ...
        public_exponent: builtins.int = ...
        curve: global___CertificateSigningRequest.Curve.V = ...

        @property
        def softhsm(self) -> global___CertificateSigningRequest.SoftHsm: ...

        def __init__(self,
            *,
            softhsm : typing.Optional[global___CertificateSigningRequest.SoftHsm] = ...,
            key_type : global___CertificateSigningRequest.KeyType.V = ...,
            key_size : builtins.int = ...,
            public_exponent : builtins.int = ...,
            curve : global___CertificateSigningRequest.Curve.V = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal[u"_curve",b"_curve",u"_key_size",b"_key_size",u"_public_exponent",b"_public_exponent",u"curve",b"curve",u"hsm",b"hsm",u"key_size",b"key_size",u"public_exponent",b"public_exponent",u"softhsm",b"softhsm"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"_curve",b"_curve",u"_key_size",b"_key_size",u"_public_exponent",b"_public_exponent",u"curve",b"curve",u"hsm",b"hsm",u"key_size",b"key_size",u"key_type",b"key_type",u"public_exponent",b"public_exponent",u"softhsm",b"softhsm"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_curve",b"_curve"]) -> typing_extensions.Literal["curve"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_key_size",b"_key_size"]) -> typing_extensions.Literal["key_size"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_public_exponent",b"_public_exponent"]) -> typing_extensions.Literal["public_exponent"]: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"hsm",b"hsm"]) -> typing_extensions.Literal["softhsm"]: ...

    class Attribute(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        OID_FIELD_NUMBER: builtins.int
        B64_VALUE_FIELD_NUMBER: builtins.int
        oid: typing.Text = ...
        b64_value: typing.Text = ...

        def __init__(self,
            *,
            oid : typing.Text = ...,
            b64_value : typing.Text = ...,
            ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"b64_value",b"b64_value",u"oid",b"oid"]) -> None: ...

    class Extension(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
        class _ExtensionType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ExtensionType.V], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
            OCSPNoCheck = CertificateSigningRequest.Extension.ExtensionType.V(0)
            PrecertPoison = CertificateSigningRequest.Extension.ExtensionType.V(1)
        class ExtensionType(metaclass=_ExtensionType):
            V = typing.NewType('V', builtins.int)
        OCSPNoCheck = CertificateSigningRequest.Extension.ExtensionType.V(0)
        PrecertPoison = CertificateSigningRequest.Extension.ExtensionType.V(1)

        class _TLSFeatureType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[TLSFeatureType.V], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
            unused = CertificateSigningRequest.Extension.TLSFeatureType.V(0)
            status_request = CertificateSigningRequest.Extension.TLSFeatureType.V(5)
            status_request_v2 = CertificateSigningRequest.Extension.TLSFeatureType.V(17)
        class TLSFeatureType(metaclass=_TLSFeatureType):
            V = typing.NewType('V', builtins.int)
        unused = CertificateSigningRequest.Extension.TLSFeatureType.V(0)
        status_request = CertificateSigningRequest.Extension.TLSFeatureType.V(5)
        status_request_v2 = CertificateSigningRequest.Extension.TLSFeatureType.V(17)

        class _ReasonFlags(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ReasonFlags.V], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
            unspecified = CertificateSigningRequest.Extension.ReasonFlags.V(0)
            key_compromise = CertificateSigningRequest.Extension.ReasonFlags.V(1)
            ca_compromise = CertificateSigningRequest.Extension.ReasonFlags.V(2)
            affiliation_changed = CertificateSigningRequest.Extension.ReasonFlags.V(3)
            superseded = CertificateSigningRequest.Extension.ReasonFlags.V(4)
            cessation_of_operation = CertificateSigningRequest.Extension.ReasonFlags.V(5)
            certificate_hold = CertificateSigningRequest.Extension.ReasonFlags.V(6)
            privilege_withdrawn = CertificateSigningRequest.Extension.ReasonFlags.V(7)
            aa_compromise = CertificateSigningRequest.Extension.ReasonFlags.V(8)
            remove_from_crl = CertificateSigningRequest.Extension.ReasonFlags.V(9)
        class ReasonFlags(metaclass=_ReasonFlags):
            V = typing.NewType('V', builtins.int)
        unspecified = CertificateSigningRequest.Extension.ReasonFlags.V(0)
        key_compromise = CertificateSigningRequest.Extension.ReasonFlags.V(1)
        ca_compromise = CertificateSigningRequest.Extension.ReasonFlags.V(2)
        affiliation_changed = CertificateSigningRequest.Extension.ReasonFlags.V(3)
        superseded = CertificateSigningRequest.Extension.ReasonFlags.V(4)
        cessation_of_operation = CertificateSigningRequest.Extension.ReasonFlags.V(5)
        certificate_hold = CertificateSigningRequest.Extension.ReasonFlags.V(6)
        privilege_withdrawn = CertificateSigningRequest.Extension.ReasonFlags.V(7)
        aa_compromise = CertificateSigningRequest.Extension.ReasonFlags.V(8)
        remove_from_crl = CertificateSigningRequest.Extension.ReasonFlags.V(9)

        class CRLNumber(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            CRL_NUMBER_FIELD_NUMBER: builtins.int
            crl_number: builtins.int = ...

            def __init__(self,
                *,
                crl_number : builtins.int = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"crl_number",b"crl_number"]) -> None: ...

        class SubjectKeyIdentifier(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            B64_DIGEST_FIELD_NUMBER: builtins.int
            b64_digest: typing.Text = ...

            def __init__(self,
                *,
                b64_digest : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"b64_digest",b"b64_digest"]) -> None: ...

        class BasicConstraints(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            CA_FIELD_NUMBER: builtins.int
            PATH_LENGTH_FIELD_NUMBER: builtins.int
            ca: builtins.bool = ...
            path_length: builtins.int = ...

            def __init__(self,
                *,
                ca : builtins.bool = ...,
                path_length : builtins.int = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_path_length",b"_path_length",u"path_length",b"path_length"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_path_length",b"_path_length",u"ca",b"ca",u"path_length",b"path_length"]) -> None: ...
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_path_length",b"_path_length"]) -> typing_extensions.Literal["path_length"]: ...

        class DeltaCRLIndicator(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            CRL_NUMBER_FIELD_NUMBER: builtins.int
            crl_number: builtins.int = ...

            def __init__(self,
                *,
                crl_number : builtins.int = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"crl_number",b"crl_number"]) -> None: ...

        class PolicyConstraints(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            REQUIRE_EXPLICIT_POLICY_FIELD_NUMBER: builtins.int
            INHIBIT_POLICY_MAPPING_FIELD_NUMBER: builtins.int
            require_explicit_policy: builtins.int = ...
            inhibit_policy_mapping: builtins.int = ...

            def __init__(self,
                *,
                require_explicit_policy : builtins.int = ...,
                inhibit_policy_mapping : builtins.int = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_inhibit_policy_mapping",b"_inhibit_policy_mapping",u"_require_explicit_policy",b"_require_explicit_policy",u"inhibit_policy_mapping",b"inhibit_policy_mapping",u"require_explicit_policy",b"require_explicit_policy"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_inhibit_policy_mapping",b"_inhibit_policy_mapping",u"_require_explicit_policy",b"_require_explicit_policy",u"inhibit_policy_mapping",b"inhibit_policy_mapping",u"require_explicit_policy",b"require_explicit_policy"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_inhibit_policy_mapping",b"_inhibit_policy_mapping"]) -> typing_extensions.Literal["inhibit_policy_mapping"]: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_require_explicit_policy",b"_require_explicit_policy"]) -> typing_extensions.Literal["require_explicit_policy"]: ...

        class NoticeReference(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            ORGANIZATION_FIELD_NUMBER: builtins.int
            NOTICE_NUMBERS_FIELD_NUMBER: builtins.int
            organization: typing.Text = ...
            notice_numbers: google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int] = ...

            def __init__(self,
                *,
                organization : typing.Text = ...,
                notice_numbers : typing.Optional[typing.Iterable[builtins.int]] = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_organization",b"_organization",u"organization",b"organization"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_organization",b"_organization",u"notice_numbers",b"notice_numbers",u"organization",b"organization"]) -> None: ...
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_organization",b"_organization"]) -> typing_extensions.Literal["organization"]: ...

        class UserNotice(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            NOTICE_REFERENCE_FIELD_NUMBER: builtins.int
            EXPLICIT_TEXT_FIELD_NUMBER: builtins.int
            explicit_text: typing.Text = ...

            @property
            def notice_reference(self) -> global___CertificateSigningRequest.Extension.NoticeReference: ...

            def __init__(self,
                *,
                notice_reference : typing.Optional[global___CertificateSigningRequest.Extension.NoticeReference] = ...,
                explicit_text : typing.Text = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_explicit_text",b"_explicit_text",u"_notice_reference",b"_notice_reference",u"explicit_text",b"explicit_text",u"notice_reference",b"notice_reference"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_explicit_text",b"_explicit_text",u"_notice_reference",b"_notice_reference",u"explicit_text",b"explicit_text",u"notice_reference",b"notice_reference"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_explicit_text",b"_explicit_text"]) -> typing_extensions.Literal["explicit_text"]: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_notice_reference",b"_notice_reference"]) -> typing_extensions.Literal["notice_reference"]: ...

        class PolicyInformation(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            POLICY_IDENTIFIER_FIELD_NUMBER: builtins.int
            STRING_QUALIFIERS_FIELD_NUMBER: builtins.int
            USER_QUALIFIERS_FIELD_NUMBER: builtins.int
            policy_identifier: typing.Text = ...
            string_qualifiers: google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text] = ...

            @property
            def user_qualifiers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.UserNotice]: ...

            def __init__(self,
                *,
                policy_identifier : typing.Text = ...,
                string_qualifiers : typing.Optional[typing.Iterable[typing.Text]] = ...,
                user_qualifiers : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.UserNotice]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"policy_identifier",b"policy_identifier",u"string_qualifiers",b"string_qualifiers",u"user_qualifiers",b"user_qualifiers"]) -> None: ...

        class CertificatePolicies(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            POLICIES_FIELD_NUMBER: builtins.int

            @property
            def policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.PolicyInformation]: ...

            def __init__(self,
                *,
                policies : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.PolicyInformation]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"policies",b"policies"]) -> None: ...

        class ExtendedKeyUsage(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            USAGES_FIELD_NUMBER: builtins.int
            usages: google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text] = ...

            def __init__(self,
                *,
                usages : typing.Optional[typing.Iterable[typing.Text]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"usages",b"usages"]) -> None: ...

        class TLSFeature(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            FEATURES_FIELD_NUMBER: builtins.int
            features: google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___CertificateSigningRequest.Extension.TLSFeatureType.V] = ...

            def __init__(self,
                *,
                features : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.TLSFeatureType.V]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"features",b"features"]) -> None: ...

        class InhibitAnyPolicy(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            SKIP_CERTS_FIELD_NUMBER: builtins.int
            skip_certs: builtins.int = ...

            def __init__(self,
                *,
                skip_certs : builtins.int = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"skip_certs",b"skip_certs"]) -> None: ...

        class KeyUsage(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            DIGITAL_SIGNATURE_FIELD_NUMBER: builtins.int
            CONTENT_COMMITMENT_FIELD_NUMBER: builtins.int
            KEY_ENCIPHERMENT_FIELD_NUMBER: builtins.int
            DATA_ENCIPHERMENT_FIELD_NUMBER: builtins.int
            KEY_AGREEMENT_FIELD_NUMBER: builtins.int
            KEY_CERT_SIGN_FIELD_NUMBER: builtins.int
            CRL_SIGN_FIELD_NUMBER: builtins.int
            ENCIPHER_ONLY_FIELD_NUMBER: builtins.int
            DECIPHER_ONLY_FIELD_NUMBER: builtins.int
            digital_signature: builtins.bool = ...
            content_commitment: builtins.bool = ...
            key_encipherment: builtins.bool = ...
            data_encipherment: builtins.bool = ...
            key_agreement: builtins.bool = ...
            key_cert_sign: builtins.bool = ...
            crl_sign: builtins.bool = ...
            encipher_only: builtins.bool = ...
            decipher_only: builtins.bool = ...

            def __init__(self,
                *,
                digital_signature : builtins.bool = ...,
                content_commitment : builtins.bool = ...,
                key_encipherment : builtins.bool = ...,
                data_encipherment : builtins.bool = ...,
                key_agreement : builtins.bool = ...,
                key_cert_sign : builtins.bool = ...,
                crl_sign : builtins.bool = ...,
                encipher_only : builtins.bool = ...,
                decipher_only : builtins.bool = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"content_commitment",b"content_commitment",u"crl_sign",b"crl_sign",u"data_encipherment",b"data_encipherment",u"decipher_only",b"decipher_only",u"digital_signature",b"digital_signature",u"encipher_only",b"encipher_only",u"key_agreement",b"key_agreement",u"key_cert_sign",b"key_cert_sign",u"key_encipherment",b"key_encipherment"]) -> None: ...

        class CRLReason(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            REASON_FIELD_NUMBER: builtins.int
            reason: global___CertificateSigningRequest.Extension.ReasonFlags.V = ...

            def __init__(self,
                *,
                reason : global___CertificateSigningRequest.Extension.ReasonFlags.V = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"reason",b"reason"]) -> None: ...

        class InvalidityDate(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            INVALIDITY_DATE_FIELD_NUMBER: builtins.int
            invalidity_date: typing.Text = ...

            def __init__(self,
                *,
                invalidity_date : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"invalidity_date",b"invalidity_date"]) -> None: ...

        class SignedCertificateTimestamp(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            class _Version(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Version.V], builtins.type):
                DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
                v1 = CertificateSigningRequest.Extension.SignedCertificateTimestamp.Version.V(0)
            class Version(metaclass=_Version):
                V = typing.NewType('V', builtins.int)
            v1 = CertificateSigningRequest.Extension.SignedCertificateTimestamp.Version.V(0)

            class _LogEntryType(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[LogEntryType.V], builtins.type):
                DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor = ...
                X509_CERTIFICATE = CertificateSigningRequest.Extension.SignedCertificateTimestamp.LogEntryType.V(0)
                PRE_CERTIFICATE = CertificateSigningRequest.Extension.SignedCertificateTimestamp.LogEntryType.V(1)
            class LogEntryType(metaclass=_LogEntryType):
                V = typing.NewType('V', builtins.int)
            X509_CERTIFICATE = CertificateSigningRequest.Extension.SignedCertificateTimestamp.LogEntryType.V(0)
            PRE_CERTIFICATE = CertificateSigningRequest.Extension.SignedCertificateTimestamp.LogEntryType.V(1)

            VERSION_FIELD_NUMBER: builtins.int
            B64_LOG_ID_FIELD_NUMBER: builtins.int
            TIMESTAMP_FIELD_NUMBER: builtins.int
            ENTRY_TYPE_FIELD_NUMBER: builtins.int
            version: global___CertificateSigningRequest.Extension.SignedCertificateTimestamp.Version.V = ...
            b64_log_id: typing.Text = ...
            timestamp: typing.Text = ...
            entry_type: global___CertificateSigningRequest.Extension.SignedCertificateTimestamp.LogEntryType.V = ...

            def __init__(self,
                *,
                version : global___CertificateSigningRequest.Extension.SignedCertificateTimestamp.Version.V = ...,
                b64_log_id : typing.Text = ...,
                timestamp : typing.Text = ...,
                entry_type : global___CertificateSigningRequest.Extension.SignedCertificateTimestamp.LogEntryType.V = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"b64_log_id",b"b64_log_id",u"entry_type",b"entry_type",u"timestamp",b"timestamp",u"version",b"version"]) -> None: ...

        class PrecertificateSignedCerticateTimestamps(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            SIGNED_CERTIFICATE_TIMESTAMPS_FIELD_NUMBER: builtins.int

            @property
            def signed_certificate_timestamps(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.SignedCertificateTimestamp]: ...

            def __init__(self,
                *,
                signed_certificate_timestamps : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.SignedCertificateTimestamp]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"signed_certificate_timestamps",b"signed_certificate_timestamps"]) -> None: ...

        class SignedCertificateTimestamps(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            SIGNED_CERTIFICATE_TIMESTAMPS_FIELD_NUMBER: builtins.int

            @property
            def signed_certificate_timestamps(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.SignedCertificateTimestamp]: ...

            def __init__(self,
                *,
                signed_certificate_timestamps : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.SignedCertificateTimestamp]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"signed_certificate_timestamps",b"signed_certificate_timestamps"]) -> None: ...

        class OCSPNonce(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            B64_NONCE_FIELD_NUMBER: builtins.int
            b64_nonce: typing.Text = ...

            def __init__(self,
                *,
                b64_nonce : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"b64_nonce",b"b64_nonce"]) -> None: ...

        class NameAttribute(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            OID_FIELD_NUMBER: builtins.int
            VALUE_FIELD_NUMBER: builtins.int
            oid: typing.Text = ...
            value: typing.Text = ...

            def __init__(self,
                *,
                oid : typing.Text = ...,
                value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"oid",b"oid",u"value",b"value"]) -> None: ...

        class Name(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            ATTRIBUTES_FIELD_NUMBER: builtins.int

            @property
            def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.NameAttribute]: ...

            def __init__(self,
                *,
                attributes : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.NameAttribute]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"attributes",b"attributes"]) -> None: ...

        class RFC822Name(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            VALUE_FIELD_NUMBER: builtins.int
            value: typing.Text = ...

            def __init__(self,
                *,
                value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"value",b"value"]) -> None: ...

        class DNSName(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            VALUE_FIELD_NUMBER: builtins.int
            value: typing.Text = ...

            def __init__(self,
                *,
                value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"value",b"value"]) -> None: ...

        class UniformResourceIdentifier(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            VALUE_FIELD_NUMBER: builtins.int
            value: typing.Text = ...

            def __init__(self,
                *,
                value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"value",b"value"]) -> None: ...

        class DirectoryName(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            VALUE_FIELD_NUMBER: builtins.int

            @property
            def value(self) -> global___CertificateSigningRequest.Extension.Name: ...

            def __init__(self,
                *,
                value : typing.Optional[global___CertificateSigningRequest.Extension.Name] = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"value",b"value"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"value",b"value"]) -> None: ...

        class RegisteredID(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            OID_FIELD_NUMBER: builtins.int
            oid: typing.Text = ...

            def __init__(self,
                *,
                oid : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"oid",b"oid"]) -> None: ...

        class IPAddress(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            VALUE_FIELD_NUMBER: builtins.int
            value: typing.Text = ...

            def __init__(self,
                *,
                value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"value",b"value"]) -> None: ...

        class OtherName(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            OID_FIELD_NUMBER: builtins.int
            B64_VALUE_FIELD_NUMBER: builtins.int
            oid: typing.Text = ...
            b64_value: typing.Text = ...

            def __init__(self,
                *,
                oid : typing.Text = ...,
                b64_value : typing.Text = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"b64_value",b"b64_value",u"oid",b"oid"]) -> None: ...

        class GeneralName(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            RFC_822_NAME_FIELD_NUMBER: builtins.int
            DNS_NAME_FIELD_NUMBER: builtins.int
            UNIFORM_RESOURCE_IDENTIFIER_FIELD_NUMBER: builtins.int
            DIRECTORY_NAME_FIELD_NUMBER: builtins.int
            REGISTERED_ID_FIELD_NUMBER: builtins.int
            IP_ADDRESS_FIELD_NUMBER: builtins.int
            OTHER_NAME_FIELD_NUMBER: builtins.int

            @property
            def rfc_822_name(self) -> global___CertificateSigningRequest.Extension.RFC822Name: ...

            @property
            def dns_name(self) -> global___CertificateSigningRequest.Extension.DNSName: ...

            @property
            def uniform_resource_identifier(self) -> global___CertificateSigningRequest.Extension.UniformResourceIdentifier: ...

            @property
            def directory_name(self) -> global___CertificateSigningRequest.Extension.DirectoryName: ...

            @property
            def registered_id(self) -> global___CertificateSigningRequest.Extension.RegisteredID: ...

            @property
            def ip_address(self) -> global___CertificateSigningRequest.Extension.IPAddress: ...

            @property
            def other_name(self) -> global___CertificateSigningRequest.Extension.OtherName: ...

            def __init__(self,
                *,
                rfc_822_name : typing.Optional[global___CertificateSigningRequest.Extension.RFC822Name] = ...,
                dns_name : typing.Optional[global___CertificateSigningRequest.Extension.DNSName] = ...,
                uniform_resource_identifier : typing.Optional[global___CertificateSigningRequest.Extension.UniformResourceIdentifier] = ...,
                directory_name : typing.Optional[global___CertificateSigningRequest.Extension.DirectoryName] = ...,
                registered_id : typing.Optional[global___CertificateSigningRequest.Extension.RegisteredID] = ...,
                ip_address : typing.Optional[global___CertificateSigningRequest.Extension.IPAddress] = ...,
                other_name : typing.Optional[global___CertificateSigningRequest.Extension.OtherName] = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"directory_name",b"directory_name",u"dns_name",b"dns_name",u"ip_address",b"ip_address",u"name",b"name",u"other_name",b"other_name",u"registered_id",b"registered_id",u"rfc_822_name",b"rfc_822_name",u"uniform_resource_identifier",b"uniform_resource_identifier"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"directory_name",b"directory_name",u"dns_name",b"dns_name",u"ip_address",b"ip_address",u"name",b"name",u"other_name",b"other_name",u"registered_id",b"registered_id",u"rfc_822_name",b"rfc_822_name",u"uniform_resource_identifier",b"uniform_resource_identifier"]) -> None: ...
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"name",b"name"]) -> typing_extensions.Literal["rfc_822_name","dns_name","uniform_resource_identifier","directory_name","registered_id","ip_address","other_name"]: ...

        class AuthorityKeyIdentifier(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            KEY_IDENTIFIER_FIELD_NUMBER: builtins.int
            AUTHORITY_CERT_ISSUER_FIELD_NUMBER: builtins.int
            AUTHORITY_CERT_SERIAL_NUMBER_FIELD_NUMBER: builtins.int
            key_identifier: typing.Text = ...
            authority_cert_serial_number: builtins.int = ...

            @property
            def authority_cert_issuer(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            def __init__(self,
                *,
                key_identifier : typing.Text = ...,
                authority_cert_issuer : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                authority_cert_serial_number : builtins.int = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_authority_cert_serial_number",b"_authority_cert_serial_number",u"_key_identifier",b"_key_identifier",u"authority_cert_serial_number",b"authority_cert_serial_number",u"key_identifier",b"key_identifier"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_authority_cert_serial_number",b"_authority_cert_serial_number",u"_key_identifier",b"_key_identifier",u"authority_cert_issuer",b"authority_cert_issuer",u"authority_cert_serial_number",b"authority_cert_serial_number",u"key_identifier",b"key_identifier"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_authority_cert_serial_number",b"_authority_cert_serial_number"]) -> typing_extensions.Literal["authority_cert_serial_number"]: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_key_identifier",b"_key_identifier"]) -> typing_extensions.Literal["key_identifier"]: ...

        class NameConstraints(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            PERMITTED_SUBTREES_FIELD_NUMBER: builtins.int
            EXCLUDED_SUBTREES_FIELD_NUMBER: builtins.int

            @property
            def permitted_subtrees(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            @property
            def excluded_subtrees(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            def __init__(self,
                *,
                permitted_subtrees : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                excluded_subtrees : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"excluded_subtrees",b"excluded_subtrees",u"permitted_subtrees",b"permitted_subtrees"]) -> None: ...

        class SubjectAlternativeName(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            GENERAL_NAMES_FIELD_NUMBER: builtins.int

            @property
            def general_names(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            def __init__(self,
                *,
                general_names : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"general_names",b"general_names"]) -> None: ...

        class IssuerAlternativeName(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            GENERAL_NAMES_FIELD_NUMBER: builtins.int

            @property
            def general_names(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            def __init__(self,
                *,
                general_names : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"general_names",b"general_names"]) -> None: ...

        class CertificateIssuer(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            GENERAL_NAMES_FIELD_NUMBER: builtins.int

            @property
            def general_names(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            def __init__(self,
                *,
                general_names : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"general_names",b"general_names"]) -> None: ...

        class AccessDescription(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            ACCESS_METHOD_FIELD_NUMBER: builtins.int
            ACCESS_LOCATION_FIELD_NUMBER: builtins.int
            access_method: typing.Text = ...

            @property
            def access_location(self) -> global___CertificateSigningRequest.Extension.GeneralName: ...

            def __init__(self,
                *,
                access_method : typing.Text = ...,
                access_location : typing.Optional[global___CertificateSigningRequest.Extension.GeneralName] = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"access_location",b"access_location"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"access_location",b"access_location",u"access_method",b"access_method"]) -> None: ...

        class AuthorityInformationAccess(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            DESCRIPTIONS_FIELD_NUMBER: builtins.int

            @property
            def descriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.AccessDescription]: ...

            def __init__(self,
                *,
                descriptions : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.AccessDescription]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"descriptions",b"descriptions"]) -> None: ...

        class SubjectInformationAccess(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            DESCRIPTIONS_FIELD_NUMBER: builtins.int

            @property
            def descriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.AccessDescription]: ...

            def __init__(self,
                *,
                descriptions : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.AccessDescription]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"descriptions",b"descriptions"]) -> None: ...

        class DistributionPoint(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            FULL_NAME_FIELD_NUMBER: builtins.int
            RELATIVE_NAME_FIELD_NUMBER: builtins.int
            REASONS_FIELD_NUMBER: builtins.int
            CRL_ISSUER_FIELD_NUMBER: builtins.int
            reasons: google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___CertificateSigningRequest.Extension.ReasonFlags.V] = ...

            @property
            def full_name(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            @property
            def relative_name(self) -> global___CertificateSigningRequest.Extension.Name: ...

            @property
            def crl_issuer(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            def __init__(self,
                *,
                full_name : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                relative_name : typing.Optional[global___CertificateSigningRequest.Extension.Name] = ...,
                reasons : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.ReasonFlags.V]] = ...,
                crl_issuer : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_relative_name",b"_relative_name",u"relative_name",b"relative_name"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_relative_name",b"_relative_name",u"crl_issuer",b"crl_issuer",u"full_name",b"full_name",u"reasons",b"reasons",u"relative_name",b"relative_name"]) -> None: ...
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_relative_name",b"_relative_name"]) -> typing_extensions.Literal["relative_name"]: ...

        class CRLDistributionPoints(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            DISTRIBUTION_POINTS_FIELD_NUMBER: builtins.int

            @property
            def distribution_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.DistributionPoint]: ...

            def __init__(self,
                *,
                distribution_points : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.DistributionPoint]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"distribution_points",b"distribution_points"]) -> None: ...

        class FreshestCRL(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            DISTRIBUTION_POINTS_FIELD_NUMBER: builtins.int

            @property
            def distribution_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.DistributionPoint]: ...

            def __init__(self,
                *,
                distribution_points : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.DistributionPoint]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"distribution_points",b"distribution_points"]) -> None: ...

        class IssuingDistributionPoint(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
            FULL_NAME_FIELD_NUMBER: builtins.int
            RELATIVE_NAME_FIELD_NUMBER: builtins.int
            ONLY_CONTAINS_USER_CERTS_FIELD_NUMBER: builtins.int
            ONLY_CONTAINS_CA_CERTS_FIELD_NUMBER: builtins.int
            ONLY_SOME_REASONS_FIELD_NUMBER: builtins.int
            INDIRECT_CRL_FIELD_NUMBER: builtins.int
            ONLY_CONTAINS_ATTRIBUTE_CERTS_FIELD_NUMBER: builtins.int
            only_contains_user_certs: builtins.bool = ...
            only_contains_ca_certs: builtins.bool = ...
            only_some_reasons: google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___CertificateSigningRequest.Extension.ReasonFlags.V] = ...
            indirect_crl: builtins.bool = ...
            only_contains_attribute_certs: builtins.bool = ...

            @property
            def full_name(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension.GeneralName]: ...

            @property
            def relative_name(self) -> global___CertificateSigningRequest.Extension.Name: ...

            def __init__(self,
                *,
                full_name : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.GeneralName]] = ...,
                relative_name : typing.Optional[global___CertificateSigningRequest.Extension.Name] = ...,
                only_contains_user_certs : builtins.bool = ...,
                only_contains_ca_certs : builtins.bool = ...,
                only_some_reasons : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension.ReasonFlags.V]] = ...,
                indirect_crl : builtins.bool = ...,
                only_contains_attribute_certs : builtins.bool = ...,
                ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal[u"_relative_name",b"_relative_name",u"relative_name",b"relative_name"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal[u"_relative_name",b"_relative_name",u"full_name",b"full_name",u"indirect_crl",b"indirect_crl",u"only_contains_attribute_certs",b"only_contains_attribute_certs",u"only_contains_ca_certs",b"only_contains_ca_certs",u"only_contains_user_certs",b"only_contains_user_certs",u"only_some_reasons",b"only_some_reasons",u"relative_name",b"relative_name"]) -> None: ...
            def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_relative_name",b"_relative_name"]) -> typing_extensions.Literal["relative_name"]: ...

        CRITICAL_FIELD_NUMBER: builtins.int
        EXTENSION_TYPE_FIELD_NUMBER: builtins.int
        CRL_NUMBER_FIELD_NUMBER: builtins.int
        SUBJECT_KEY_IDENTIFIER_FIELD_NUMBER: builtins.int
        BASIC_CONSTRAINTS_FIELD_NUMBER: builtins.int
        DELTA_CRL_INDICATOR_FIELD_NUMBER: builtins.int
        POLICY_CONSTRAINTS_FIELD_NUMBER: builtins.int
        CERTIFICATE_POLICIES_FIELD_NUMBER: builtins.int
        EXTENDED_KEY_USAGE_FIELD_NUMBER: builtins.int
        TLS_FEATURE_FIELD_NUMBER: builtins.int
        INHIBIT_ANY_POLICY_FIELD_NUMBER: builtins.int
        KEY_USAGE_FIELD_NUMBER: builtins.int
        CRL_REASON_FIELD_NUMBER: builtins.int
        INVALIDITY_DATE_FIELD_NUMBER: builtins.int
        PRECERTIFICATE_SIGNED_CERTIFICATE_TIMESTAMPS_FIELD_NUMBER: builtins.int
        SIGNED_CERTIFICATE_TIMESTAMPS_FIELD_NUMBER: builtins.int
        OCSP_NONCE_FIELD_NUMBER: builtins.int
        AUTHORITY_KEY_IDENTIFIER_FIELD_NUMBER: builtins.int
        AUTHORITY_INFORMATION_ACCESS_FIELD_NUMBER: builtins.int
        SUBJECT_INFORMATION_ACCESS_FIELD_NUMBER: builtins.int
        CRL_DISTRIBUTION_POINTS_FIELD_NUMBER: builtins.int
        FRESHEST_CRL_FIELD_NUMBER: builtins.int
        NAME_CONSTRAINTS_FIELD_NUMBER: builtins.int
        SUBJECT_ALTERNATIVE_NAME_FIELD_NUMBER: builtins.int
        ISSUER_ALTERNATIVE_NAME_FIELD_NUMBER: builtins.int
        CERTIFICATE_ISSUER_FIELD_NUMBER: builtins.int
        ISSUING_DISTRIBUTION_POINT_FIELD_NUMBER: builtins.int
        critical: builtins.bool = ...
        extension_type: global___CertificateSigningRequest.Extension.ExtensionType.V = ...

        @property
        def crl_number(self) -> global___CertificateSigningRequest.Extension.CRLNumber: ...

        @property
        def subject_key_identifier(self) -> global___CertificateSigningRequest.Extension.SubjectKeyIdentifier: ...

        @property
        def basic_constraints(self) -> global___CertificateSigningRequest.Extension.BasicConstraints: ...

        @property
        def delta_crl_indicator(self) -> global___CertificateSigningRequest.Extension.DeltaCRLIndicator: ...

        @property
        def policy_constraints(self) -> global___CertificateSigningRequest.Extension.PolicyConstraints: ...

        @property
        def certificate_policies(self) -> global___CertificateSigningRequest.Extension.CertificatePolicies: ...

        @property
        def extended_key_usage(self) -> global___CertificateSigningRequest.Extension.ExtendedKeyUsage: ...

        @property
        def tls_feature(self) -> global___CertificateSigningRequest.Extension.TLSFeature: ...

        @property
        def inhibit_any_policy(self) -> global___CertificateSigningRequest.Extension.InhibitAnyPolicy: ...

        @property
        def key_usage(self) -> global___CertificateSigningRequest.Extension.KeyUsage: ...

        @property
        def crl_reason(self) -> global___CertificateSigningRequest.Extension.CRLReason: ...

        @property
        def invalidity_date(self) -> global___CertificateSigningRequest.Extension.InvalidityDate: ...

        @property
        def precertificate_signed_certificate_timestamps(self) -> global___CertificateSigningRequest.Extension.PrecertificateSignedCerticateTimestamps: ...

        @property
        def signed_certificate_timestamps(self) -> global___CertificateSigningRequest.Extension.SignedCertificateTimestamps: ...

        @property
        def ocsp_nonce(self) -> global___CertificateSigningRequest.Extension.OCSPNonce: ...

        @property
        def authority_key_identifier(self) -> global___CertificateSigningRequest.Extension.AuthorityKeyIdentifier: ...

        @property
        def authority_information_access(self) -> global___CertificateSigningRequest.Extension.AuthorityInformationAccess: ...

        @property
        def subject_information_access(self) -> global___CertificateSigningRequest.Extension.SubjectInformationAccess: ...

        @property
        def crl_distribution_points(self) -> global___CertificateSigningRequest.Extension.CRLDistributionPoints: ...

        @property
        def freshest_crl(self) -> global___CertificateSigningRequest.Extension.FreshestCRL: ...

        @property
        def name_constraints(self) -> global___CertificateSigningRequest.Extension.NameConstraints: ...

        @property
        def subject_alternative_name(self) -> global___CertificateSigningRequest.Extension.SubjectAlternativeName: ...

        @property
        def issuer_alternative_name(self) -> global___CertificateSigningRequest.Extension.IssuerAlternativeName: ...

        @property
        def certificate_issuer(self) -> global___CertificateSigningRequest.Extension.CertificateIssuer: ...

        @property
        def issuing_distribution_point(self) -> global___CertificateSigningRequest.Extension.IssuingDistributionPoint: ...

        def __init__(self,
            *,
            critical : builtins.bool = ...,
            extension_type : global___CertificateSigningRequest.Extension.ExtensionType.V = ...,
            crl_number : typing.Optional[global___CertificateSigningRequest.Extension.CRLNumber] = ...,
            subject_key_identifier : typing.Optional[global___CertificateSigningRequest.Extension.SubjectKeyIdentifier] = ...,
            basic_constraints : typing.Optional[global___CertificateSigningRequest.Extension.BasicConstraints] = ...,
            delta_crl_indicator : typing.Optional[global___CertificateSigningRequest.Extension.DeltaCRLIndicator] = ...,
            policy_constraints : typing.Optional[global___CertificateSigningRequest.Extension.PolicyConstraints] = ...,
            certificate_policies : typing.Optional[global___CertificateSigningRequest.Extension.CertificatePolicies] = ...,
            extended_key_usage : typing.Optional[global___CertificateSigningRequest.Extension.ExtendedKeyUsage] = ...,
            tls_feature : typing.Optional[global___CertificateSigningRequest.Extension.TLSFeature] = ...,
            inhibit_any_policy : typing.Optional[global___CertificateSigningRequest.Extension.InhibitAnyPolicy] = ...,
            key_usage : typing.Optional[global___CertificateSigningRequest.Extension.KeyUsage] = ...,
            crl_reason : typing.Optional[global___CertificateSigningRequest.Extension.CRLReason] = ...,
            invalidity_date : typing.Optional[global___CertificateSigningRequest.Extension.InvalidityDate] = ...,
            precertificate_signed_certificate_timestamps : typing.Optional[global___CertificateSigningRequest.Extension.PrecertificateSignedCerticateTimestamps] = ...,
            signed_certificate_timestamps : typing.Optional[global___CertificateSigningRequest.Extension.SignedCertificateTimestamps] = ...,
            ocsp_nonce : typing.Optional[global___CertificateSigningRequest.Extension.OCSPNonce] = ...,
            authority_key_identifier : typing.Optional[global___CertificateSigningRequest.Extension.AuthorityKeyIdentifier] = ...,
            authority_information_access : typing.Optional[global___CertificateSigningRequest.Extension.AuthorityInformationAccess] = ...,
            subject_information_access : typing.Optional[global___CertificateSigningRequest.Extension.SubjectInformationAccess] = ...,
            crl_distribution_points : typing.Optional[global___CertificateSigningRequest.Extension.CRLDistributionPoints] = ...,
            freshest_crl : typing.Optional[global___CertificateSigningRequest.Extension.FreshestCRL] = ...,
            name_constraints : typing.Optional[global___CertificateSigningRequest.Extension.NameConstraints] = ...,
            subject_alternative_name : typing.Optional[global___CertificateSigningRequest.Extension.SubjectAlternativeName] = ...,
            issuer_alternative_name : typing.Optional[global___CertificateSigningRequest.Extension.IssuerAlternativeName] = ...,
            certificate_issuer : typing.Optional[global___CertificateSigningRequest.Extension.CertificateIssuer] = ...,
            issuing_distribution_point : typing.Optional[global___CertificateSigningRequest.Extension.IssuingDistributionPoint] = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal[u"authority_information_access",b"authority_information_access",u"authority_key_identifier",b"authority_key_identifier",u"basic_constraints",b"basic_constraints",u"certificate_issuer",b"certificate_issuer",u"certificate_policies",b"certificate_policies",u"crl_distribution_points",b"crl_distribution_points",u"crl_number",b"crl_number",u"crl_reason",b"crl_reason",u"delta_crl_indicator",b"delta_crl_indicator",u"extended_key_usage",b"extended_key_usage",u"extension",b"extension",u"extension_type",b"extension_type",u"freshest_crl",b"freshest_crl",u"inhibit_any_policy",b"inhibit_any_policy",u"invalidity_date",b"invalidity_date",u"issuer_alternative_name",b"issuer_alternative_name",u"issuing_distribution_point",b"issuing_distribution_point",u"key_usage",b"key_usage",u"name_constraints",b"name_constraints",u"ocsp_nonce",b"ocsp_nonce",u"policy_constraints",b"policy_constraints",u"precertificate_signed_certificate_timestamps",b"precertificate_signed_certificate_timestamps",u"signed_certificate_timestamps",b"signed_certificate_timestamps",u"subject_alternative_name",b"subject_alternative_name",u"subject_information_access",b"subject_information_access",u"subject_key_identifier",b"subject_key_identifier",u"tls_feature",b"tls_feature"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal[u"authority_information_access",b"authority_information_access",u"authority_key_identifier",b"authority_key_identifier",u"basic_constraints",b"basic_constraints",u"certificate_issuer",b"certificate_issuer",u"certificate_policies",b"certificate_policies",u"critical",b"critical",u"crl_distribution_points",b"crl_distribution_points",u"crl_number",b"crl_number",u"crl_reason",b"crl_reason",u"delta_crl_indicator",b"delta_crl_indicator",u"extended_key_usage",b"extended_key_usage",u"extension",b"extension",u"extension_type",b"extension_type",u"freshest_crl",b"freshest_crl",u"inhibit_any_policy",b"inhibit_any_policy",u"invalidity_date",b"invalidity_date",u"issuer_alternative_name",b"issuer_alternative_name",u"issuing_distribution_point",b"issuing_distribution_point",u"key_usage",b"key_usage",u"name_constraints",b"name_constraints",u"ocsp_nonce",b"ocsp_nonce",u"policy_constraints",b"policy_constraints",u"precertificate_signed_certificate_timestamps",b"precertificate_signed_certificate_timestamps",u"signed_certificate_timestamps",b"signed_certificate_timestamps",u"subject_alternative_name",b"subject_alternative_name",u"subject_information_access",b"subject_information_access",u"subject_key_identifier",b"subject_key_identifier",u"tls_feature",b"tls_feature"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal[u"extension",b"extension"]) -> typing_extensions.Literal["extension_type","crl_number","subject_key_identifier","basic_constraints","delta_crl_indicator","policy_constraints","certificate_policies","extended_key_usage","tls_feature","inhibit_any_policy","key_usage","crl_reason","invalidity_date","precertificate_signed_certificate_timestamps","signed_certificate_timestamps","ocsp_nonce","authority_key_identifier","authority_information_access","subject_information_access","crl_distribution_points","freshest_crl","name_constraints","subject_alternative_name","issuer_alternative_name","certificate_issuer","issuing_distribution_point"]: ...

    SUBJECT_FIELD_NUMBER: builtins.int
    KEY_INFO_FIELD_NUMBER: builtins.int
    HSM_INFO_FIELD_NUMBER: builtins.int
    OUTPUT_PATH_FIELD_NUMBER: builtins.int
    HASH_TYPE_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    EXTENSIONS_FIELD_NUMBER: builtins.int
    output_path: typing.Text = ...
    hash_type: global___CertificateSigningRequest.HashType.V = ...

    @property
    def subject(self) -> global___CertificateSigningRequest.Subject: ...

    @property
    def key_info(self) -> global___CertificateSigningRequest.KeyInfo: ...

    @property
    def hsm_info(self) -> global___CertificateSigningRequest.HsmInfo: ...

    @property
    def attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Attribute]: ...

    @property
    def extensions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CertificateSigningRequest.Extension]: ...

    def __init__(self,
        *,
        subject : typing.Optional[global___CertificateSigningRequest.Subject] = ...,
        key_info : typing.Optional[global___CertificateSigningRequest.KeyInfo] = ...,
        hsm_info : typing.Optional[global___CertificateSigningRequest.HsmInfo] = ...,
        output_path : typing.Text = ...,
        hash_type : global___CertificateSigningRequest.HashType.V = ...,
        attributes : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Attribute]] = ...,
        extensions : typing.Optional[typing.Iterable[global___CertificateSigningRequest.Extension]] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal[u"_hash_type",b"_hash_type",u"hash_type",b"hash_type",u"hsm_info",b"hsm_info",u"key",b"key",u"key_info",b"key_info",u"subject",b"subject"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal[u"_hash_type",b"_hash_type",u"attributes",b"attributes",u"extensions",b"extensions",u"hash_type",b"hash_type",u"hsm_info",b"hsm_info",u"key",b"key",u"key_info",b"key_info",u"output_path",b"output_path",u"subject",b"subject"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal[u"_hash_type",b"_hash_type"]) -> typing_extensions.Literal["hash_type"]: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal[u"key",b"key"]) -> typing_extensions.Literal["key_info","hsm_info"]: ...
global___CertificateSigningRequest = CertificateSigningRequest
