# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/webrisk_v1beta1/proto/webrisk.proto

import sys

_b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode("latin1"))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database

# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="google/cloud/webrisk_v1beta1/proto/webrisk.proto",
    package="google.cloud.webrisk.v1beta1",
    syntax="proto3",
    serialized_options=_b(
        "\n\032com.google.webrisk.v1beta1B\014WebRiskProtoP\001ZCgoogle.golang.org/genproto/googleapis/cloud/webrisk/v1beta1;webrisk\242\002\004GCWR\252\002\034Google.Cloud.WebRisk.V1Beta1\312\002\034Google\\Cloud\\WebRisk\\V1beta1"
    ),
    serialized_pb=_b(
        '\n0google/cloud/webrisk_v1beta1/proto/webrisk.proto\x12\x1cgoogle.cloud.webrisk.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xe8\x02\n\x1c\x43omputeThreatListDiffRequest\x12=\n\x0bthreat_type\x18\x01 \x01(\x0e\x32(.google.cloud.webrisk.v1beta1.ThreatType\x12\x15\n\rversion_token\x18\x02 \x01(\x0c\x12[\n\x0b\x63onstraints\x18\x03 \x01(\x0b\x32\x46.google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.Constraints\x1a\x94\x01\n\x0b\x43onstraints\x12\x18\n\x10max_diff_entries\x18\x01 \x01(\x05\x12\x1c\n\x14max_database_entries\x18\x02 \x01(\x05\x12M\n\x16supported_compressions\x18\x03 \x03(\x0e\x32-.google.cloud.webrisk.v1beta1.CompressionType"\x9a\x04\n\x1d\x43omputeThreatListDiffResponse\x12_\n\rresponse_type\x18\x04 \x01(\x0e\x32H.google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.ResponseType\x12\x45\n\tadditions\x18\x05 \x01(\x0b\x32\x32.google.cloud.webrisk.v1beta1.ThreatEntryAdditions\x12\x43\n\x08removals\x18\x06 \x01(\x0b\x32\x31.google.cloud.webrisk.v1beta1.ThreatEntryRemovals\x12\x19\n\x11new_version_token\x18\x07 \x01(\x0c\x12V\n\x08\x63hecksum\x18\x08 \x01(\x0b\x32\x44.google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum\x12\x39\n\x15recommended_next_diff\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x1a\n\x08\x43hecksum\x12\x0e\n\x06sha256\x18\x01 \x01(\x0c"B\n\x0cResponseType\x12\x1d\n\x19RESPONSE_TYPE_UNSPECIFIED\x10\x00\x12\x08\n\x04\x44IFF\x10\x01\x12\t\n\x05RESET\x10\x02"`\n\x11SearchUrisRequest\x12\x0b\n\x03uri\x18\x01 \x01(\t\x12>\n\x0cthreat_types\x18\x02 \x03(\x0e\x32(.google.cloud.webrisk.v1beta1.ThreatType"\xde\x01\n\x12SearchUrisResponse\x12J\n\x06threat\x18\x01 \x01(\x0b\x32:.google.cloud.webrisk.v1beta1.SearchUrisResponse.ThreatUri\x1a|\n\tThreatUri\x12>\n\x0cthreat_types\x18\x01 \x03(\x0e\x32(.google.cloud.webrisk.v1beta1.ThreatType\x12/\n\x0b\x65xpire_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"j\n\x13SearchHashesRequest\x12\x13\n\x0bhash_prefix\x18\x01 \x01(\x0c\x12>\n\x0cthreat_types\x18\x02 \x03(\x0e\x32(.google.cloud.webrisk.v1beta1.ThreatType"\xae\x02\n\x14SearchHashesResponse\x12N\n\x07threats\x18\x01 \x03(\x0b\x32=.google.cloud.webrisk.v1beta1.SearchHashesResponse.ThreatHash\x12\x38\n\x14negative_expire_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x8b\x01\n\nThreatHash\x12>\n\x0cthreat_types\x18\x01 \x03(\x0e\x32(.google.cloud.webrisk.v1beta1.ThreatType\x12\x0c\n\x04hash\x18\x02 \x01(\x0c\x12/\n\x0b\x65xpire_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"\x99\x01\n\x14ThreatEntryAdditions\x12;\n\nraw_hashes\x18\x01 \x03(\x0b\x32\'.google.cloud.webrisk.v1beta1.RawHashes\x12\x44\n\x0brice_hashes\x18\x02 \x01(\x0b\x32/.google.cloud.webrisk.v1beta1.RiceDeltaEncoding"\x9b\x01\n\x13ThreatEntryRemovals\x12=\n\x0braw_indices\x18\x01 \x01(\x0b\x32(.google.cloud.webrisk.v1beta1.RawIndices\x12\x45\n\x0crice_indices\x18\x02 \x01(\x0b\x32/.google.cloud.webrisk.v1beta1.RiceDeltaEncoding"\x1d\n\nRawIndices\x12\x0f\n\x07indices\x18\x01 \x03(\x05"4\n\tRawHashes\x12\x13\n\x0bprefix_size\x18\x01 \x01(\x05\x12\x12\n\nraw_hashes\x18\x02 \x01(\x0c"k\n\x11RiceDeltaEncoding\x12\x13\n\x0b\x66irst_value\x18\x01 \x01(\x03\x12\x16\n\x0erice_parameter\x18\x02 \x01(\x05\x12\x13\n\x0b\x65ntry_count\x18\x03 \x01(\x05\x12\x14\n\x0c\x65ncoded_data\x18\x04 \x01(\x0c*e\n\nThreatType\x12\x1b\n\x17THREAT_TYPE_UNSPECIFIED\x10\x00\x12\x0b\n\x07MALWARE\x10\x01\x12\x16\n\x12SOCIAL_ENGINEERING\x10\x02\x12\x15\n\x11UNWANTED_SOFTWARE\x10\x03*F\n\x0f\x43ompressionType\x12 \n\x1c\x43OMPRESSION_TYPE_UNSPECIFIED\x10\x00\x12\x07\n\x03RAW\x10\x01\x12\x08\n\x04RICE\x10\x02\x32\xfc\x03\n\x15WebRiskServiceV1Beta1\x12\xba\x01\n\x15\x43omputeThreatListDiff\x12:.google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest\x1a;.google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse"(\x82\xd3\xe4\x93\x02"\x12 /v1beta1/threatLists:computeDiff\x12\x8d\x01\n\nSearchUris\x12/.google.cloud.webrisk.v1beta1.SearchUrisRequest\x1a\x30.google.cloud.webrisk.v1beta1.SearchUrisResponse"\x1c\x82\xd3\xe4\x93\x02\x16\x12\x14/v1beta1/uris:search\x12\x95\x01\n\x0cSearchHashes\x12\x31.google.cloud.webrisk.v1beta1.SearchHashesRequest\x1a\x32.google.cloud.webrisk.v1beta1.SearchHashesResponse"\x1e\x82\xd3\xe4\x93\x02\x18\x12\x16/v1beta1/hashes:searchB\xb6\x01\n\x1a\x63om.google.webrisk.v1beta1B\x0cWebRiskProtoP\x01ZCgoogle.golang.org/genproto/googleapis/cloud/webrisk/v1beta1;webrisk\xa2\x02\x04GCWR\xaa\x02\x1cGoogle.Cloud.WebRisk.V1Beta1\xca\x02\x1cGoogle\\Cloud\\WebRisk\\V1beta1b\x06proto3'
    ),
    dependencies=[
        google_dot_api_dot_annotations__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
    ],
)

_THREATTYPE = _descriptor.EnumDescriptor(
    name="ThreatType",
    full_name="google.cloud.webrisk.v1beta1.ThreatType",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="THREAT_TYPE_UNSPECIFIED",
            index=0,
            number=0,
            serialized_options=None,
            type=None,
        ),
        _descriptor.EnumValueDescriptor(
            name="MALWARE", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="SOCIAL_ENGINEERING",
            index=2,
            number=2,
            serialized_options=None,
            type=None,
        ),
        _descriptor.EnumValueDescriptor(
            name="UNWANTED_SOFTWARE",
            index=3,
            number=3,
            serialized_options=None,
            type=None,
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=2293,
    serialized_end=2394,
)
_sym_db.RegisterEnumDescriptor(_THREATTYPE)

ThreatType = enum_type_wrapper.EnumTypeWrapper(_THREATTYPE)
_COMPRESSIONTYPE = _descriptor.EnumDescriptor(
    name="CompressionType",
    full_name="google.cloud.webrisk.v1beta1.CompressionType",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="COMPRESSION_TYPE_UNSPECIFIED",
            index=0,
            number=0,
            serialized_options=None,
            type=None,
        ),
        _descriptor.EnumValueDescriptor(
            name="RAW", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="RICE", index=2, number=2, serialized_options=None, type=None
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=2396,
    serialized_end=2466,
)
_sym_db.RegisterEnumDescriptor(_COMPRESSIONTYPE)

CompressionType = enum_type_wrapper.EnumTypeWrapper(_COMPRESSIONTYPE)
THREAT_TYPE_UNSPECIFIED = 0
MALWARE = 1
SOCIAL_ENGINEERING = 2
UNWANTED_SOFTWARE = 3
COMPRESSION_TYPE_UNSPECIFIED = 0
RAW = 1
RICE = 2


_COMPUTETHREATLISTDIFFRESPONSE_RESPONSETYPE = _descriptor.EnumDescriptor(
    name="ResponseType",
    full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.ResponseType",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="RESPONSE_TYPE_UNSPECIFIED",
            index=0,
            number=0,
            serialized_options=None,
            type=None,
        ),
        _descriptor.EnumValueDescriptor(
            name="DIFF", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="RESET", index=2, number=2, serialized_options=None, type=None
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=981,
    serialized_end=1047,
)
_sym_db.RegisterEnumDescriptor(_COMPUTETHREATLISTDIFFRESPONSE_RESPONSETYPE)


_COMPUTETHREATLISTDIFFREQUEST_CONSTRAINTS = _descriptor.Descriptor(
    name="Constraints",
    full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.Constraints",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="max_diff_entries",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.Constraints.max_diff_entries",
            index=0,
            number=1,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="max_database_entries",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.Constraints.max_database_entries",
            index=1,
            number=2,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="supported_compressions",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.Constraints.supported_compressions",
            index=2,
            number=3,
            type=14,
            cpp_type=8,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=358,
    serialized_end=506,
)

_COMPUTETHREATLISTDIFFREQUEST = _descriptor.Descriptor(
    name="ComputeThreatListDiffRequest",
    full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="threat_type",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.threat_type",
            index=0,
            number=1,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="version_token",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.version_token",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="constraints",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.constraints",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[_COMPUTETHREATLISTDIFFREQUEST_CONSTRAINTS],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=146,
    serialized_end=506,
)


_COMPUTETHREATLISTDIFFRESPONSE_CHECKSUM = _descriptor.Descriptor(
    name="Checksum",
    full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="sha256",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum.sha256",
            index=0,
            number=1,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=953,
    serialized_end=979,
)

_COMPUTETHREATLISTDIFFRESPONSE = _descriptor.Descriptor(
    name="ComputeThreatListDiffResponse",
    full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="response_type",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.response_type",
            index=0,
            number=4,
            type=14,
            cpp_type=8,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="additions",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.additions",
            index=1,
            number=5,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="removals",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.removals",
            index=2,
            number=6,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="new_version_token",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.new_version_token",
            index=3,
            number=7,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="checksum",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.checksum",
            index=4,
            number=8,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="recommended_next_diff",
            full_name="google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.recommended_next_diff",
            index=5,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[_COMPUTETHREATLISTDIFFRESPONSE_CHECKSUM],
    enum_types=[_COMPUTETHREATLISTDIFFRESPONSE_RESPONSETYPE],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=509,
    serialized_end=1047,
)


_SEARCHURISREQUEST = _descriptor.Descriptor(
    name="SearchUrisRequest",
    full_name="google.cloud.webrisk.v1beta1.SearchUrisRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="uri",
            full_name="google.cloud.webrisk.v1beta1.SearchUrisRequest.uri",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b("").decode("utf-8"),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="threat_types",
            full_name="google.cloud.webrisk.v1beta1.SearchUrisRequest.threat_types",
            index=1,
            number=2,
            type=14,
            cpp_type=8,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1049,
    serialized_end=1145,
)


_SEARCHURISRESPONSE_THREATURI = _descriptor.Descriptor(
    name="ThreatUri",
    full_name="google.cloud.webrisk.v1beta1.SearchUrisResponse.ThreatUri",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="threat_types",
            full_name="google.cloud.webrisk.v1beta1.SearchUrisResponse.ThreatUri.threat_types",
            index=0,
            number=1,
            type=14,
            cpp_type=8,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="expire_time",
            full_name="google.cloud.webrisk.v1beta1.SearchUrisResponse.ThreatUri.expire_time",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1246,
    serialized_end=1370,
)

_SEARCHURISRESPONSE = _descriptor.Descriptor(
    name="SearchUrisResponse",
    full_name="google.cloud.webrisk.v1beta1.SearchUrisResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="threat",
            full_name="google.cloud.webrisk.v1beta1.SearchUrisResponse.threat",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[_SEARCHURISRESPONSE_THREATURI],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1148,
    serialized_end=1370,
)


_SEARCHHASHESREQUEST = _descriptor.Descriptor(
    name="SearchHashesRequest",
    full_name="google.cloud.webrisk.v1beta1.SearchHashesRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="hash_prefix",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesRequest.hash_prefix",
            index=0,
            number=1,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="threat_types",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesRequest.threat_types",
            index=1,
            number=2,
            type=14,
            cpp_type=8,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1372,
    serialized_end=1478,
)


_SEARCHHASHESRESPONSE_THREATHASH = _descriptor.Descriptor(
    name="ThreatHash",
    full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse.ThreatHash",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="threat_types",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse.ThreatHash.threat_types",
            index=0,
            number=1,
            type=14,
            cpp_type=8,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="hash",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse.ThreatHash.hash",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="expire_time",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse.ThreatHash.expire_time",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1644,
    serialized_end=1783,
)

_SEARCHHASHESRESPONSE = _descriptor.Descriptor(
    name="SearchHashesResponse",
    full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="threats",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse.threats",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="negative_expire_time",
            full_name="google.cloud.webrisk.v1beta1.SearchHashesResponse.negative_expire_time",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[_SEARCHHASHESRESPONSE_THREATHASH],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1481,
    serialized_end=1783,
)


_THREATENTRYADDITIONS = _descriptor.Descriptor(
    name="ThreatEntryAdditions",
    full_name="google.cloud.webrisk.v1beta1.ThreatEntryAdditions",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="raw_hashes",
            full_name="google.cloud.webrisk.v1beta1.ThreatEntryAdditions.raw_hashes",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="rice_hashes",
            full_name="google.cloud.webrisk.v1beta1.ThreatEntryAdditions.rice_hashes",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1786,
    serialized_end=1939,
)


_THREATENTRYREMOVALS = _descriptor.Descriptor(
    name="ThreatEntryRemovals",
    full_name="google.cloud.webrisk.v1beta1.ThreatEntryRemovals",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="raw_indices",
            full_name="google.cloud.webrisk.v1beta1.ThreatEntryRemovals.raw_indices",
            index=0,
            number=1,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="rice_indices",
            full_name="google.cloud.webrisk.v1beta1.ThreatEntryRemovals.rice_indices",
            index=1,
            number=2,
            type=11,
            cpp_type=10,
            label=1,
            has_default_value=False,
            default_value=None,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1942,
    serialized_end=2097,
)


_RAWINDICES = _descriptor.Descriptor(
    name="RawIndices",
    full_name="google.cloud.webrisk.v1beta1.RawIndices",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="indices",
            full_name="google.cloud.webrisk.v1beta1.RawIndices.indices",
            index=0,
            number=1,
            type=5,
            cpp_type=1,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        )
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2099,
    serialized_end=2128,
)


_RAWHASHES = _descriptor.Descriptor(
    name="RawHashes",
    full_name="google.cloud.webrisk.v1beta1.RawHashes",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="prefix_size",
            full_name="google.cloud.webrisk.v1beta1.RawHashes.prefix_size",
            index=0,
            number=1,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="raw_hashes",
            full_name="google.cloud.webrisk.v1beta1.RawHashes.raw_hashes",
            index=1,
            number=2,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2130,
    serialized_end=2182,
)


_RICEDELTAENCODING = _descriptor.Descriptor(
    name="RiceDeltaEncoding",
    full_name="google.cloud.webrisk.v1beta1.RiceDeltaEncoding",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="first_value",
            full_name="google.cloud.webrisk.v1beta1.RiceDeltaEncoding.first_value",
            index=0,
            number=1,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="rice_parameter",
            full_name="google.cloud.webrisk.v1beta1.RiceDeltaEncoding.rice_parameter",
            index=1,
            number=2,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="entry_count",
            full_name="google.cloud.webrisk.v1beta1.RiceDeltaEncoding.entry_count",
            index=2,
            number=3,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
        _descriptor.FieldDescriptor(
            name="encoded_data",
            full_name="google.cloud.webrisk.v1beta1.RiceDeltaEncoding.encoded_data",
            index=3,
            number=4,
            type=12,
            cpp_type=9,
            label=1,
            has_default_value=False,
            default_value=_b(""),
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2184,
    serialized_end=2291,
)

_COMPUTETHREATLISTDIFFREQUEST_CONSTRAINTS.fields_by_name[
    "supported_compressions"
].enum_type = _COMPRESSIONTYPE
_COMPUTETHREATLISTDIFFREQUEST_CONSTRAINTS.containing_type = (
    _COMPUTETHREATLISTDIFFREQUEST
)
_COMPUTETHREATLISTDIFFREQUEST.fields_by_name["threat_type"].enum_type = _THREATTYPE
_COMPUTETHREATLISTDIFFREQUEST.fields_by_name[
    "constraints"
].message_type = _COMPUTETHREATLISTDIFFREQUEST_CONSTRAINTS
_COMPUTETHREATLISTDIFFRESPONSE_CHECKSUM.containing_type = _COMPUTETHREATLISTDIFFRESPONSE
_COMPUTETHREATLISTDIFFRESPONSE.fields_by_name[
    "response_type"
].enum_type = _COMPUTETHREATLISTDIFFRESPONSE_RESPONSETYPE
_COMPUTETHREATLISTDIFFRESPONSE.fields_by_name[
    "additions"
].message_type = _THREATENTRYADDITIONS
_COMPUTETHREATLISTDIFFRESPONSE.fields_by_name[
    "removals"
].message_type = _THREATENTRYREMOVALS
_COMPUTETHREATLISTDIFFRESPONSE.fields_by_name[
    "checksum"
].message_type = _COMPUTETHREATLISTDIFFRESPONSE_CHECKSUM
_COMPUTETHREATLISTDIFFRESPONSE.fields_by_name[
    "recommended_next_diff"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_COMPUTETHREATLISTDIFFRESPONSE_RESPONSETYPE.containing_type = (
    _COMPUTETHREATLISTDIFFRESPONSE
)
_SEARCHURISREQUEST.fields_by_name["threat_types"].enum_type = _THREATTYPE
_SEARCHURISRESPONSE_THREATURI.fields_by_name["threat_types"].enum_type = _THREATTYPE
_SEARCHURISRESPONSE_THREATURI.fields_by_name[
    "expire_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_SEARCHURISRESPONSE_THREATURI.containing_type = _SEARCHURISRESPONSE
_SEARCHURISRESPONSE.fields_by_name[
    "threat"
].message_type = _SEARCHURISRESPONSE_THREATURI
_SEARCHHASHESREQUEST.fields_by_name["threat_types"].enum_type = _THREATTYPE
_SEARCHHASHESRESPONSE_THREATHASH.fields_by_name["threat_types"].enum_type = _THREATTYPE
_SEARCHHASHESRESPONSE_THREATHASH.fields_by_name[
    "expire_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_SEARCHHASHESRESPONSE_THREATHASH.containing_type = _SEARCHHASHESRESPONSE
_SEARCHHASHESRESPONSE.fields_by_name[
    "threats"
].message_type = _SEARCHHASHESRESPONSE_THREATHASH
_SEARCHHASHESRESPONSE.fields_by_name[
    "negative_expire_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_THREATENTRYADDITIONS.fields_by_name["raw_hashes"].message_type = _RAWHASHES
_THREATENTRYADDITIONS.fields_by_name["rice_hashes"].message_type = _RICEDELTAENCODING
_THREATENTRYREMOVALS.fields_by_name["raw_indices"].message_type = _RAWINDICES
_THREATENTRYREMOVALS.fields_by_name["rice_indices"].message_type = _RICEDELTAENCODING
DESCRIPTOR.message_types_by_name[
    "ComputeThreatListDiffRequest"
] = _COMPUTETHREATLISTDIFFREQUEST
DESCRIPTOR.message_types_by_name[
    "ComputeThreatListDiffResponse"
] = _COMPUTETHREATLISTDIFFRESPONSE
DESCRIPTOR.message_types_by_name["SearchUrisRequest"] = _SEARCHURISREQUEST
DESCRIPTOR.message_types_by_name["SearchUrisResponse"] = _SEARCHURISRESPONSE
DESCRIPTOR.message_types_by_name["SearchHashesRequest"] = _SEARCHHASHESREQUEST
DESCRIPTOR.message_types_by_name["SearchHashesResponse"] = _SEARCHHASHESRESPONSE
DESCRIPTOR.message_types_by_name["ThreatEntryAdditions"] = _THREATENTRYADDITIONS
DESCRIPTOR.message_types_by_name["ThreatEntryRemovals"] = _THREATENTRYREMOVALS
DESCRIPTOR.message_types_by_name["RawIndices"] = _RAWINDICES
DESCRIPTOR.message_types_by_name["RawHashes"] = _RAWHASHES
DESCRIPTOR.message_types_by_name["RiceDeltaEncoding"] = _RICEDELTAENCODING
DESCRIPTOR.enum_types_by_name["ThreatType"] = _THREATTYPE
DESCRIPTOR.enum_types_by_name["CompressionType"] = _COMPRESSIONTYPE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

ComputeThreatListDiffRequest = _reflection.GeneratedProtocolMessageType(
    "ComputeThreatListDiffRequest",
    (_message.Message,),
    dict(
        Constraints=_reflection.GeneratedProtocolMessageType(
            "Constraints",
            (_message.Message,),
            dict(
                DESCRIPTOR=_COMPUTETHREATLISTDIFFREQUEST_CONSTRAINTS,
                __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
                __doc__="""The constraints for this diff.
    
    
    Attributes:
        max_diff_entries:
            The maximum size in number of entries. The diff will not
            contain more entries than this value. This should be a power
            of 2 between 2\ **10 and 2**\ 20. If zero, no diff size limit
            is set.
        max_database_entries:
            Sets the maximum number of entries that the client is willing
            to have in the local database. This should be a power of 2
            between 2\ **10 and 2**\ 20. If zero, no database size limit
            is set.
        supported_compressions:
            The compression types supported by the client.
    """,
                # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest.Constraints)
            ),
        ),
        DESCRIPTOR=_COMPUTETHREATLISTDIFFREQUEST,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""Describes an API diff request.
  
  
  Attributes:
      threat_type:
          Required. The ThreatList to update.
      version_token:
          The current version token of the client for the requested list
          (the client version that was received from the last successful
          diff).
      constraints:
          The constraints associated with this request.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.ComputeThreatListDiffRequest)
    ),
)
_sym_db.RegisterMessage(ComputeThreatListDiffRequest)
_sym_db.RegisterMessage(ComputeThreatListDiffRequest.Constraints)

ComputeThreatListDiffResponse = _reflection.GeneratedProtocolMessageType(
    "ComputeThreatListDiffResponse",
    (_message.Message,),
    dict(
        Checksum=_reflection.GeneratedProtocolMessageType(
            "Checksum",
            (_message.Message,),
            dict(
                DESCRIPTOR=_COMPUTETHREATLISTDIFFRESPONSE_CHECKSUM,
                __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
                __doc__="""The expected state of a client's local database.
    
    
    Attributes:
        sha256:
            The SHA256 hash of the client state; that is, of the sorted
            list of all hashes present in the database.
    """,
                # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum)
            ),
        ),
        DESCRIPTOR=_COMPUTETHREATLISTDIFFRESPONSE,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""
    Attributes:
      response_type:
          The type of response. This may indicate that an action is
          required by the client when the response is received.
      additions:
          A set of entries to add to a local threat type's list.
      removals:
          A set of entries to remove from a local threat type's list.
          This field may be empty.
      new_version_token:
          The new opaque client version token.
      checksum:
          The expected SHA256 hash of the client state; that is, of the
          sorted list of all hashes present in the database after
          applying the provided diff. If the client state doesn't match
          the expected state, the client must disregard this diff and
          retry later.
      recommended_next_diff:
          The soonest the client should wait before issuing any diff
          request. Querying sooner is unlikely to produce a meaningful
          diff. Waiting longer is acceptable considering the use case.
          If this field is not set clients may update as soon as they
          want.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse)
    ),
)
_sym_db.RegisterMessage(ComputeThreatListDiffResponse)
_sym_db.RegisterMessage(ComputeThreatListDiffResponse.Checksum)

SearchUrisRequest = _reflection.GeneratedProtocolMessageType(
    "SearchUrisRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_SEARCHURISREQUEST,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""Request to check URI entries against threatLists.
  
  
  Attributes:
      uri:
          The URI to be checked for matches.
      threat_types:
          Required. The ThreatLists to search in.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.SearchUrisRequest)
    ),
)
_sym_db.RegisterMessage(SearchUrisRequest)

SearchUrisResponse = _reflection.GeneratedProtocolMessageType(
    "SearchUrisResponse",
    (_message.Message,),
    dict(
        ThreatUri=_reflection.GeneratedProtocolMessageType(
            "ThreatUri",
            (_message.Message,),
            dict(
                DESCRIPTOR=_SEARCHURISRESPONSE_THREATURI,
                __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
                __doc__="""Contains threat information on a matching uri.
    
    
    Attributes:
        threat_types:
            The ThreatList this threat belongs to.
        expire_time:
            The cache lifetime for the returned match. Clients must not
            cache this response past this timestamp to avoid false
            positives.
    """,
                # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.SearchUrisResponse.ThreatUri)
            ),
        ),
        DESCRIPTOR=_SEARCHURISRESPONSE,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""
    Attributes:
      threat:
          The threat list matches. This may be empty if the URI is on no
          list.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.SearchUrisResponse)
    ),
)
_sym_db.RegisterMessage(SearchUrisResponse)
_sym_db.RegisterMessage(SearchUrisResponse.ThreatUri)

SearchHashesRequest = _reflection.GeneratedProtocolMessageType(
    "SearchHashesRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_SEARCHHASHESREQUEST,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""Request to return full hashes matched by the provided hash prefixes.
  
  
  Attributes:
      hash_prefix:
          A hash prefix, consisting of the most significant 4-32 bytes
          of a SHA256 hash. For JSON requests, this field is
          base64-encoded.
      threat_types:
          Required. The ThreatLists to search in.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.SearchHashesRequest)
    ),
)
_sym_db.RegisterMessage(SearchHashesRequest)

SearchHashesResponse = _reflection.GeneratedProtocolMessageType(
    "SearchHashesResponse",
    (_message.Message,),
    dict(
        ThreatHash=_reflection.GeneratedProtocolMessageType(
            "ThreatHash",
            (_message.Message,),
            dict(
                DESCRIPTOR=_SEARCHHASHESRESPONSE_THREATHASH,
                __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
                __doc__="""Contains threat information on a matching hash.
    
    
    Attributes:
        threat_types:
            The ThreatList this threat belongs to. This must contain at
            least one entry.
        hash:
            A 32 byte SHA256 hash. This field is in binary format. For
            JSON requests, hashes are base64-encoded.
        expire_time:
            The cache lifetime for the returned match. Clients must not
            cache this response past this timestamp to avoid false
            positives.
    """,
                # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.SearchHashesResponse.ThreatHash)
            ),
        ),
        DESCRIPTOR=_SEARCHHASHESRESPONSE,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""
    Attributes:
      threats:
          The full hashes that matched the requested prefixes. The hash
          will be populated in the key.
      negative_expire_time:
          For requested entities that did not match the threat list, how
          long to cache the response until.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.SearchHashesResponse)
    ),
)
_sym_db.RegisterMessage(SearchHashesResponse)
_sym_db.RegisterMessage(SearchHashesResponse.ThreatHash)

ThreatEntryAdditions = _reflection.GeneratedProtocolMessageType(
    "ThreatEntryAdditions",
    (_message.Message,),
    dict(
        DESCRIPTOR=_THREATENTRYADDITIONS,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""Contains the set of entries to add to a local database. May contain a
  combination of compressed and raw data in a single response.
  
  
  Attributes:
      raw_hashes:
          The raw SHA256-formatted entries. Repeated to allow returning
          sets of hashes with different prefix sizes.
      rice_hashes:
          The encoded 4-byte prefixes of SHA256-formatted entries, using
          a Golomb-Rice encoding. The hashes are converted to uint32,
          sorted in ascending order, then delta encoded and stored as
          encoded\_data.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.ThreatEntryAdditions)
    ),
)
_sym_db.RegisterMessage(ThreatEntryAdditions)

ThreatEntryRemovals = _reflection.GeneratedProtocolMessageType(
    "ThreatEntryRemovals",
    (_message.Message,),
    dict(
        DESCRIPTOR=_THREATENTRYREMOVALS,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""Contains the set of entries to remove from a local database.
  
  
  Attributes:
      raw_indices:
          The raw removal indices for a local list.
      rice_indices:
          The encoded local, lexicographically-sorted list indices,
          using a Golomb-Rice encoding. Used for sending compressed
          removal indices. The removal indices (uint32) are sorted in
          ascending order, then delta encoded and stored as
          encoded\_data.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.ThreatEntryRemovals)
    ),
)
_sym_db.RegisterMessage(ThreatEntryRemovals)

RawIndices = _reflection.GeneratedProtocolMessageType(
    "RawIndices",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RAWINDICES,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""A set of raw indices to remove from a local list.
  
  
  Attributes:
      indices:
          The indices to remove from a lexicographically-sorted local
          list.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.RawIndices)
    ),
)
_sym_db.RegisterMessage(RawIndices)

RawHashes = _reflection.GeneratedProtocolMessageType(
    "RawHashes",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RAWHASHES,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""The uncompressed threat entries in hash format. Hashes can be anywhere
  from 4 to 32 bytes in size. A large majority are 4 bytes, but some
  hashes are lengthened if they collide with the hash of a popular URI.
  
  Used for sending ThreatEntryAdditons to clients that do not support
  compression, or when sending non-4-byte hashes to clients that do
  support compression.
  
  
  Attributes:
      prefix_size:
          The number of bytes for each prefix encoded below. This field
          can be anywhere from 4 (shortest prefix) to 32 (full SHA256
          hash).
      raw_hashes:
          The hashes, in binary format, concatenated into one long
          string. Hashes are sorted in lexicographic order. For JSON API
          users, hashes are base64-encoded.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.RawHashes)
    ),
)
_sym_db.RegisterMessage(RawHashes)

RiceDeltaEncoding = _reflection.GeneratedProtocolMessageType(
    "RiceDeltaEncoding",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RICEDELTAENCODING,
        __module__="google.cloud.webrisk_v1beta1.proto.webrisk_pb2",
        __doc__="""The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes
  or compressed removal indices.
  
  
  Attributes:
      first_value:
          The offset of the first entry in the encoded data, or, if only
          a single integer was encoded, that single integer's value. If
          the field is empty or missing, assume zero.
      rice_parameter:
          The Golomb-Rice parameter, which is a number between 2 and 28.
          This field is missing (that is, zero) if ``num_entries`` is
          zero.
      entry_count:
          The number of entries that are delta encoded in the encoded
          data. If only a single integer was encoded, this will be zero
          and the single value will be stored in ``first_value``.
      encoded_data:
          The encoded deltas that are encoded using the Golomb-Rice
          coder.
  """,
        # @@protoc_insertion_point(class_scope:google.cloud.webrisk.v1beta1.RiceDeltaEncoding)
    ),
)
_sym_db.RegisterMessage(RiceDeltaEncoding)


DESCRIPTOR._options = None

_WEBRISKSERVICEV1BETA1 = _descriptor.ServiceDescriptor(
    name="WebRiskServiceV1Beta1",
    full_name="google.cloud.webrisk.v1beta1.WebRiskServiceV1Beta1",
    file=DESCRIPTOR,
    index=0,
    serialized_options=None,
    serialized_start=2469,
    serialized_end=2977,
    methods=[
        _descriptor.MethodDescriptor(
            name="ComputeThreatListDiff",
            full_name="google.cloud.webrisk.v1beta1.WebRiskServiceV1Beta1.ComputeThreatListDiff",
            index=0,
            containing_service=None,
            input_type=_COMPUTETHREATLISTDIFFREQUEST,
            output_type=_COMPUTETHREATLISTDIFFRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002"\022 /v1beta1/threatLists:computeDiff'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="SearchUris",
            full_name="google.cloud.webrisk.v1beta1.WebRiskServiceV1Beta1.SearchUris",
            index=1,
            containing_service=None,
            input_type=_SEARCHURISREQUEST,
            output_type=_SEARCHURISRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002\026\022\024/v1beta1/uris:search"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="SearchHashes",
            full_name="google.cloud.webrisk.v1beta1.WebRiskServiceV1Beta1.SearchHashes",
            index=2,
            containing_service=None,
            input_type=_SEARCHHASHESREQUEST,
            output_type=_SEARCHHASHESRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002\030\022\026/v1beta1/hashes:search"
            ),
        ),
    ],
)
_sym_db.RegisterServiceDescriptor(_WEBRISKSERVICEV1BETA1)

DESCRIPTOR.services_by_name["WebRiskServiceV1Beta1"] = _WEBRISKSERVICEV1BETA1

# @@protoc_insertion_point(module_scope)
