# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/firestore_v1/proto/firestore.proto

import sys

_b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode("latin1"))
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.cloud.firestore_v1.proto import (
    common_pb2 as google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2,
)
from google.cloud.firestore_v1.proto import (
    document_pb2 as google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2,
)
from google.cloud.firestore_v1.proto import (
    query_pb2 as google_dot_cloud_dot_firestore__v1_dot_proto_dot_query__pb2,
)
from google.cloud.firestore_v1.proto import (
    write_pb2 as google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2,
)
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
from google.rpc import status_pb2 as google_dot_rpc_dot_status__pb2
from google.api import client_pb2 as google_dot_api_dot_client__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="google/cloud/firestore_v1/proto/firestore.proto",
    package="google.firestore.v1",
    syntax="proto3",
    serialized_options=_b(
        "\n\027com.google.firestore.v1B\016FirestoreProtoP\001Z<google.golang.org/genproto/googleapis/firestore/v1;firestore\242\002\004GCFS\252\002\031Google.Cloud.Firestore.V1\312\002\031Google\\Cloud\\Firestore\\V1"
    ),
    serialized_pb=_b(
        '\n/google/cloud/firestore_v1/proto/firestore.proto\x12\x13google.firestore.v1\x1a\x1cgoogle/api/annotations.proto\x1a,google/cloud/firestore_v1/proto/common.proto\x1a.google/cloud/firestore_v1/proto/document.proto\x1a+google/cloud/firestore_v1/proto/query.proto\x1a+google/cloud/firestore_v1/proto/write.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\x1a\x17google/api/client.proto"\xb3\x01\n\x12GetDocumentRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12/\n\x04mask\x18\x02 \x01(\x0b\x32!.google.firestore.v1.DocumentMask\x12\x15\n\x0btransaction\x18\x03 \x01(\x0cH\x00\x12/\n\tread_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x42\x16\n\x14\x63onsistency_selector"\x9d\x02\n\x14ListDocumentsRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x15\n\rcollection_id\x18\x02 \x01(\t\x12\x11\n\tpage_size\x18\x03 \x01(\x05\x12\x12\n\npage_token\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x06 \x01(\t\x12/\n\x04mask\x18\x07 \x01(\x0b\x32!.google.firestore.v1.DocumentMask\x12\x15\n\x0btransaction\x18\x08 \x01(\x0cH\x00\x12/\n\tread_time\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x12\x14\n\x0cshow_missing\x18\x0c \x01(\x08\x42\x16\n\x14\x63onsistency_selector"b\n\x15ListDocumentsResponse\x12\x30\n\tdocuments\x18\x01 \x03(\x0b\x32\x1d.google.firestore.v1.Document\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t"\xb5\x01\n\x15\x43reateDocumentRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x15\n\rcollection_id\x18\x02 \x01(\t\x12\x13\n\x0b\x64ocument_id\x18\x03 \x01(\t\x12/\n\x08\x64ocument\x18\x04 \x01(\x0b\x32\x1d.google.firestore.v1.Document\x12/\n\x04mask\x18\x05 \x01(\x0b\x32!.google.firestore.v1.DocumentMask"\xee\x01\n\x15UpdateDocumentRequest\x12/\n\x08\x64ocument\x18\x01 \x01(\x0b\x32\x1d.google.firestore.v1.Document\x12\x36\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32!.google.firestore.v1.DocumentMask\x12/\n\x04mask\x18\x03 \x01(\x0b\x32!.google.firestore.v1.DocumentMask\x12;\n\x10\x63urrent_document\x18\x04 \x01(\x0b\x32!.google.firestore.v1.Precondition"b\n\x15\x44\x65leteDocumentRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12;\n\x10\x63urrent_document\x18\x02 \x01(\x0b\x32!.google.firestore.v1.Precondition"\x94\x02\n\x18\x42\x61tchGetDocumentsRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x11\n\tdocuments\x18\x02 \x03(\t\x12/\n\x04mask\x18\x03 \x01(\x0b\x32!.google.firestore.v1.DocumentMask\x12\x15\n\x0btransaction\x18\x04 \x01(\x0cH\x00\x12\x42\n\x0fnew_transaction\x18\x05 \x01(\x0b\x32\'.google.firestore.v1.TransactionOptionsH\x00\x12/\n\tread_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x42\x16\n\x14\x63onsistency_selector"\xac\x01\n\x19\x42\x61tchGetDocumentsResponse\x12.\n\x05\x66ound\x18\x01 \x01(\x0b\x32\x1d.google.firestore.v1.DocumentH\x00\x12\x11\n\x07missing\x18\x02 \x01(\tH\x00\x12\x13\n\x0btransaction\x18\x03 \x01(\x0c\x12-\n\tread_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x08\n\x06result"e\n\x17\x42\x65ginTransactionRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x38\n\x07options\x18\x02 \x01(\x0b\x32\'.google.firestore.v1.TransactionOptions"/\n\x18\x42\x65ginTransactionResponse\x12\x13\n\x0btransaction\x18\x01 \x01(\x0c"b\n\rCommitRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12*\n\x06writes\x18\x02 \x03(\x0b\x32\x1a.google.firestore.v1.Write\x12\x13\n\x0btransaction\x18\x03 \x01(\x0c"z\n\x0e\x43ommitResponse\x12\x37\n\rwrite_results\x18\x01 \x03(\x0b\x32 .google.firestore.v1.WriteResult\x12/\n\x0b\x63ommit_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"8\n\x0fRollbackRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x13\n\x0btransaction\x18\x02 \x01(\x0c"\x95\x02\n\x0fRunQueryRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12@\n\x10structured_query\x18\x02 \x01(\x0b\x32$.google.firestore.v1.StructuredQueryH\x00\x12\x15\n\x0btransaction\x18\x05 \x01(\x0cH\x01\x12\x42\n\x0fnew_transaction\x18\x06 \x01(\x0b\x32\'.google.firestore.v1.TransactionOptionsH\x01\x12/\n\tread_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x42\x0c\n\nquery_typeB\x16\n\x14\x63onsistency_selector"\xa0\x01\n\x10RunQueryResponse\x12\x13\n\x0btransaction\x18\x02 \x01(\x0c\x12/\n\x08\x64ocument\x18\x01 \x01(\x0b\x32\x1d.google.firestore.v1.Document\x12-\n\tread_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\x0fskipped_results\x18\x04 \x01(\x05"\xe3\x01\n\x0cWriteRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x11\n\tstream_id\x18\x02 \x01(\t\x12*\n\x06writes\x18\x03 \x03(\x0b\x32\x1a.google.firestore.v1.Write\x12\x14\n\x0cstream_token\x18\x04 \x01(\x0c\x12=\n\x06labels\x18\x05 \x03(\x0b\x32-.google.firestore.v1.WriteRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"\xa2\x01\n\rWriteResponse\x12\x11\n\tstream_id\x18\x01 \x01(\t\x12\x14\n\x0cstream_token\x18\x02 \x01(\x0c\x12\x37\n\rwrite_results\x18\x03 \x03(\x0b\x32 .google.firestore.v1.WriteResult\x12/\n\x0b\x63ommit_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"\xed\x01\n\rListenRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x31\n\nadd_target\x18\x02 \x01(\x0b\x32\x1b.google.firestore.v1.TargetH\x00\x12\x17\n\rremove_target\x18\x03 \x01(\x05H\x00\x12>\n\x06labels\x18\x04 \x03(\x0b\x32..google.firestore.v1.ListenRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\rtarget_change"\xd5\x02\n\x0eListenResponse\x12:\n\rtarget_change\x18\x02 \x01(\x0b\x32!.google.firestore.v1.TargetChangeH\x00\x12>\n\x0f\x64ocument_change\x18\x03 \x01(\x0b\x32#.google.firestore.v1.DocumentChangeH\x00\x12>\n\x0f\x64ocument_delete\x18\x04 \x01(\x0b\x32#.google.firestore.v1.DocumentDeleteH\x00\x12>\n\x0f\x64ocument_remove\x18\x06 \x01(\x0b\x32#.google.firestore.v1.DocumentRemoveH\x00\x12\x36\n\x06\x66ilter\x18\x05 \x01(\x0b\x32$.google.firestore.v1.ExistenceFilterH\x00\x42\x0f\n\rresponse_type"\xa1\x03\n\x06Target\x12\x38\n\x05query\x18\x02 \x01(\x0b\x32\'.google.firestore.v1.Target.QueryTargetH\x00\x12@\n\tdocuments\x18\x03 \x01(\x0b\x32+.google.firestore.v1.Target.DocumentsTargetH\x00\x12\x16\n\x0cresume_token\x18\x04 \x01(\x0cH\x01\x12/\n\tread_time\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x12\x11\n\ttarget_id\x18\x05 \x01(\x05\x12\x0c\n\x04once\x18\x06 \x01(\x08\x1a$\n\x0f\x44ocumentsTarget\x12\x11\n\tdocuments\x18\x02 \x03(\t\x1am\n\x0bQueryTarget\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12@\n\x10structured_query\x18\x02 \x01(\x0b\x32$.google.firestore.v1.StructuredQueryH\x00\x42\x0c\n\nquery_typeB\r\n\x0btarget_typeB\r\n\x0bresume_type"\xaa\x02\n\x0cTargetChange\x12N\n\x12target_change_type\x18\x01 \x01(\x0e\x32\x32.google.firestore.v1.TargetChange.TargetChangeType\x12\x12\n\ntarget_ids\x18\x02 \x03(\x05\x12!\n\x05\x63\x61use\x18\x03 \x01(\x0b\x32\x12.google.rpc.Status\x12\x14\n\x0cresume_token\x18\x04 \x01(\x0c\x12-\n\tread_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"N\n\x10TargetChangeType\x12\r\n\tNO_CHANGE\x10\x00\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06REMOVE\x10\x02\x12\x0b\n\x07\x43URRENT\x10\x03\x12\t\n\x05RESET\x10\x04"Q\n\x18ListCollectionIdsRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t"L\n\x19ListCollectionIdsResponse\x12\x16\n\x0e\x63ollection_ids\x18\x01 \x03(\t\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\xfc\x12\n\tFirestore\x12\x8f\x01\n\x0bGetDocument\x12\'.google.firestore.v1.GetDocumentRequest\x1a\x1d.google.firestore.v1.Document"8\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/databases/*/documents/*/**}\x12\xb2\x01\n\rListDocuments\x12).google.firestore.v1.ListDocumentsRequest\x1a*.google.firestore.v1.ListDocumentsResponse"J\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}\x12\xaf\x01\n\x0e\x43reateDocument\x12*.google.firestore.v1.CreateDocumentRequest\x1a\x1d.google.firestore.v1.Document"R\x82\xd3\xe4\x93\x02L"@/v1/{parent=projects/*/databases/*/documents/**}/{collection_id}:\x08\x64ocument\x12\xa8\x01\n\x0eUpdateDocument\x12*.google.firestore.v1.UpdateDocumentRequest\x1a\x1d.google.firestore.v1.Document"K\x82\xd3\xe4\x93\x02\x45\x32\x39/v1/{document.name=projects/*/databases/*/documents/*/**}:\x08\x64ocument\x12\x8e\x01\n\x0e\x44\x65leteDocument\x12*.google.firestore.v1.DeleteDocumentRequest\x1a\x16.google.protobuf.Empty"8\x82\xd3\xe4\x93\x02\x32*0/v1/{name=projects/*/databases/*/documents/*/**}\x12\xb9\x01\n\x11\x42\x61tchGetDocuments\x12-.google.firestore.v1.BatchGetDocumentsRequest\x1a..google.firestore.v1.BatchGetDocumentsResponse"C\x82\xd3\xe4\x93\x02="8/v1/{database=projects/*/databases/*}/documents:batchGet:\x01*0\x01\x12\xbc\x01\n\x10\x42\x65ginTransaction\x12,.google.firestore.v1.BeginTransactionRequest\x1a-.google.firestore.v1.BeginTransactionResponse"K\x82\xd3\xe4\x93\x02\x45"@/v1/{database=projects/*/databases/*}/documents:beginTransaction:\x01*\x12\x94\x01\n\x06\x43ommit\x12".google.firestore.v1.CommitRequest\x1a#.google.firestore.v1.CommitResponse"A\x82\xd3\xe4\x93\x02;"6/v1/{database=projects/*/databases/*}/documents:commit:\x01*\x12\x8d\x01\n\x08Rollback\x12$.google.firestore.v1.RollbackRequest\x1a\x16.google.protobuf.Empty"C\x82\xd3\xe4\x93\x02="8/v1/{database=projects/*/databases/*}/documents:rollback:\x01*\x12\xdf\x01\n\x08RunQuery\x12$.google.firestore.v1.RunQueryRequest\x1a%.google.firestore.v1.RunQueryResponse"\x83\x01\x82\xd3\xe4\x93\x02}"6/v1/{parent=projects/*/databases/*/documents}:runQuery:\x01*Z@";/v1/{parent=projects/*/databases/*/documents/*/**}:runQuery:\x01*0\x01\x12\x94\x01\n\x05Write\x12!.google.firestore.v1.WriteRequest\x1a".google.firestore.v1.WriteResponse"@\x82\xd3\xe4\x93\x02:"5/v1/{database=projects/*/databases/*}/documents:write:\x01*(\x01\x30\x01\x12\x98\x01\n\x06Listen\x12".google.firestore.v1.ListenRequest\x1a#.google.firestore.v1.ListenResponse"A\x82\xd3\xe4\x93\x02;"6/v1/{database=projects/*/databases/*}/documents:listen:\x01*(\x01\x30\x01\x12\x8b\x02\n\x11ListCollectionIds\x12-.google.firestore.v1.ListCollectionIdsRequest\x1a..google.firestore.v1.ListCollectionIdsResponse"\x96\x01\x82\xd3\xe4\x93\x02\x8f\x01"?/v1/{parent=projects/*/databases/*/documents}:listCollectionIds:\x01*ZI"D/v1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds:\x01*\x1av\xca\x41\x18\x66irestore.googleapis.com\xd2\x41Xhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastoreB\xa8\x01\n\x17\x63om.google.firestore.v1B\x0e\x46irestoreProtoP\x01Z<google.golang.org/genproto/googleapis/firestore/v1;firestore\xa2\x02\x04GCFS\xaa\x02\x19Google.Cloud.Firestore.V1\xca\x02\x19Google\\Cloud\\Firestore\\V1b\x06proto3'
    ),
    dependencies=[
        google_dot_api_dot_annotations__pb2.DESCRIPTOR,
        google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2.DESCRIPTOR,
        google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2.DESCRIPTOR,
        google_dot_cloud_dot_firestore__v1_dot_proto_dot_query__pb2.DESCRIPTOR,
        google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,
        google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
        google_dot_rpc_dot_status__pb2.DESCRIPTOR,
        google_dot_api_dot_client__pb2.DESCRIPTOR,
    ],
)


_TARGETCHANGE_TARGETCHANGETYPE = _descriptor.EnumDescriptor(
    name="TargetChangeType",
    full_name="google.firestore.v1.TargetChange.TargetChangeType",
    filename=None,
    file=DESCRIPTOR,
    values=[
        _descriptor.EnumValueDescriptor(
            name="NO_CHANGE", index=0, number=0, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="ADD", index=1, number=1, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="REMOVE", index=2, number=2, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="CURRENT", index=3, number=3, serialized_options=None, type=None
        ),
        _descriptor.EnumValueDescriptor(
            name="RESET", index=4, number=4, serialized_options=None, type=None
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=4444,
    serialized_end=4522,
)
_sym_db.RegisterEnumDescriptor(_TARGETCHANGE_TARGETCHANGETYPE)


_GETDOCUMENTREQUEST = _descriptor.Descriptor(
    name="GetDocumentRequest",
    full_name="google.firestore.v1.GetDocumentRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.firestore.v1.GetDocumentRequest.name",
            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="mask",
            full_name="google.firestore.v1.GetDocumentRequest.mask",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="transaction",
            full_name="google.firestore.v1.GetDocumentRequest.transaction",
            index=2,
            number=3,
            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="read_time",
            full_name="google.firestore.v1.GetDocumentRequest.read_time",
            index=3,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="consistency_selector",
            full_name="google.firestore.v1.GetDocumentRequest.consistency_selector",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=399,
    serialized_end=578,
)


_LISTDOCUMENTSREQUEST = _descriptor.Descriptor(
    name="ListDocumentsRequest",
    full_name="google.firestore.v1.ListDocumentsRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.firestore.v1.ListDocumentsRequest.parent",
            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="collection_id",
            full_name="google.firestore.v1.ListDocumentsRequest.collection_id",
            index=1,
            number=2,
            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="page_size",
            full_name="google.firestore.v1.ListDocumentsRequest.page_size",
            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="page_token",
            full_name="google.firestore.v1.ListDocumentsRequest.page_token",
            index=3,
            number=4,
            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="order_by",
            full_name="google.firestore.v1.ListDocumentsRequest.order_by",
            index=4,
            number=6,
            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="mask",
            full_name="google.firestore.v1.ListDocumentsRequest.mask",
            index=5,
            number=7,
            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="transaction",
            full_name="google.firestore.v1.ListDocumentsRequest.transaction",
            index=6,
            number=8,
            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="read_time",
            full_name="google.firestore.v1.ListDocumentsRequest.read_time",
            index=7,
            number=10,
            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="show_missing",
            full_name="google.firestore.v1.ListDocumentsRequest.show_missing",
            index=8,
            number=12,
            type=8,
            cpp_type=7,
            label=1,
            has_default_value=False,
            default_value=False,
            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=[
        _descriptor.OneofDescriptor(
            name="consistency_selector",
            full_name="google.firestore.v1.ListDocumentsRequest.consistency_selector",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=581,
    serialized_end=866,
)


_LISTDOCUMENTSRESPONSE = _descriptor.Descriptor(
    name="ListDocumentsResponse",
    full_name="google.firestore.v1.ListDocumentsResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="documents",
            full_name="google.firestore.v1.ListDocumentsResponse.documents",
            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="next_page_token",
            full_name="google.firestore.v1.ListDocumentsResponse.next_page_token",
            index=1,
            number=2,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=868,
    serialized_end=966,
)


_CREATEDOCUMENTREQUEST = _descriptor.Descriptor(
    name="CreateDocumentRequest",
    full_name="google.firestore.v1.CreateDocumentRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.firestore.v1.CreateDocumentRequest.parent",
            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="collection_id",
            full_name="google.firestore.v1.CreateDocumentRequest.collection_id",
            index=1,
            number=2,
            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="document_id",
            full_name="google.firestore.v1.CreateDocumentRequest.document_id",
            index=2,
            number=3,
            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="document",
            full_name="google.firestore.v1.CreateDocumentRequest.document",
            index=3,
            number=4,
            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="mask",
            full_name="google.firestore.v1.CreateDocumentRequest.mask",
            index=4,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=969,
    serialized_end=1150,
)


_UPDATEDOCUMENTREQUEST = _descriptor.Descriptor(
    name="UpdateDocumentRequest",
    full_name="google.firestore.v1.UpdateDocumentRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="document",
            full_name="google.firestore.v1.UpdateDocumentRequest.document",
            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="update_mask",
            full_name="google.firestore.v1.UpdateDocumentRequest.update_mask",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="mask",
            full_name="google.firestore.v1.UpdateDocumentRequest.mask",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="current_document",
            full_name="google.firestore.v1.UpdateDocumentRequest.current_document",
            index=3,
            number=4,
            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=1153,
    serialized_end=1391,
)


_DELETEDOCUMENTREQUEST = _descriptor.Descriptor(
    name="DeleteDocumentRequest",
    full_name="google.firestore.v1.DeleteDocumentRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="google.firestore.v1.DeleteDocumentRequest.name",
            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="current_document",
            full_name="google.firestore.v1.DeleteDocumentRequest.current_document",
            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=1393,
    serialized_end=1491,
)


_BATCHGETDOCUMENTSREQUEST = _descriptor.Descriptor(
    name="BatchGetDocumentsRequest",
    full_name="google.firestore.v1.BatchGetDocumentsRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.database",
            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="documents",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.documents",
            index=1,
            number=2,
            type=9,
            cpp_type=9,
            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="mask",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.mask",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="transaction",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.transaction",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="new_transaction",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.new_transaction",
            index=4,
            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="read_time",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.read_time",
            index=5,
            number=7,
            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=[
        _descriptor.OneofDescriptor(
            name="consistency_selector",
            full_name="google.firestore.v1.BatchGetDocumentsRequest.consistency_selector",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=1494,
    serialized_end=1770,
)


_BATCHGETDOCUMENTSRESPONSE = _descriptor.Descriptor(
    name="BatchGetDocumentsResponse",
    full_name="google.firestore.v1.BatchGetDocumentsResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="found",
            full_name="google.firestore.v1.BatchGetDocumentsResponse.found",
            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="missing",
            full_name="google.firestore.v1.BatchGetDocumentsResponse.missing",
            index=1,
            number=2,
            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="transaction",
            full_name="google.firestore.v1.BatchGetDocumentsResponse.transaction",
            index=2,
            number=3,
            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="read_time",
            full_name="google.firestore.v1.BatchGetDocumentsResponse.read_time",
            index=3,
            number=4,
            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=[
        _descriptor.OneofDescriptor(
            name="result",
            full_name="google.firestore.v1.BatchGetDocumentsResponse.result",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=1773,
    serialized_end=1945,
)


_BEGINTRANSACTIONREQUEST = _descriptor.Descriptor(
    name="BeginTransactionRequest",
    full_name="google.firestore.v1.BeginTransactionRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.firestore.v1.BeginTransactionRequest.database",
            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="options",
            full_name="google.firestore.v1.BeginTransactionRequest.options",
            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=1947,
    serialized_end=2048,
)


_BEGINTRANSACTIONRESPONSE = _descriptor.Descriptor(
    name="BeginTransactionResponse",
    full_name="google.firestore.v1.BeginTransactionResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="transaction",
            full_name="google.firestore.v1.BeginTransactionResponse.transaction",
            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=2050,
    serialized_end=2097,
)


_COMMITREQUEST = _descriptor.Descriptor(
    name="CommitRequest",
    full_name="google.firestore.v1.CommitRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.firestore.v1.CommitRequest.database",
            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="writes",
            full_name="google.firestore.v1.CommitRequest.writes",
            index=1,
            number=2,
            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="transaction",
            full_name="google.firestore.v1.CommitRequest.transaction",
            index=2,
            number=3,
            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=2099,
    serialized_end=2197,
)


_COMMITRESPONSE = _descriptor.Descriptor(
    name="CommitResponse",
    full_name="google.firestore.v1.CommitResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="write_results",
            full_name="google.firestore.v1.CommitResponse.write_results",
            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="commit_time",
            full_name="google.firestore.v1.CommitResponse.commit_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=2199,
    serialized_end=2321,
)


_ROLLBACKREQUEST = _descriptor.Descriptor(
    name="RollbackRequest",
    full_name="google.firestore.v1.RollbackRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.firestore.v1.RollbackRequest.database",
            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="transaction",
            full_name="google.firestore.v1.RollbackRequest.transaction",
            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=2323,
    serialized_end=2379,
)


_RUNQUERYREQUEST = _descriptor.Descriptor(
    name="RunQueryRequest",
    full_name="google.firestore.v1.RunQueryRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.firestore.v1.RunQueryRequest.parent",
            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="structured_query",
            full_name="google.firestore.v1.RunQueryRequest.structured_query",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="transaction",
            full_name="google.firestore.v1.RunQueryRequest.transaction",
            index=2,
            number=5,
            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="new_transaction",
            full_name="google.firestore.v1.RunQueryRequest.new_transaction",
            index=3,
            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="read_time",
            full_name="google.firestore.v1.RunQueryRequest.read_time",
            index=4,
            number=7,
            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=[
        _descriptor.OneofDescriptor(
            name="query_type",
            full_name="google.firestore.v1.RunQueryRequest.query_type",
            index=0,
            containing_type=None,
            fields=[],
        ),
        _descriptor.OneofDescriptor(
            name="consistency_selector",
            full_name="google.firestore.v1.RunQueryRequest.consistency_selector",
            index=1,
            containing_type=None,
            fields=[],
        ),
    ],
    serialized_start=2382,
    serialized_end=2659,
)


_RUNQUERYRESPONSE = _descriptor.Descriptor(
    name="RunQueryResponse",
    full_name="google.firestore.v1.RunQueryResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="transaction",
            full_name="google.firestore.v1.RunQueryResponse.transaction",
            index=0,
            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="document",
            full_name="google.firestore.v1.RunQueryResponse.document",
            index=1,
            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="read_time",
            full_name="google.firestore.v1.RunQueryResponse.read_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,
        ),
        _descriptor.FieldDescriptor(
            name="skipped_results",
            full_name="google.firestore.v1.RunQueryResponse.skipped_results",
            index=3,
            number=4,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2662,
    serialized_end=2822,
)


_WRITEREQUEST_LABELSENTRY = _descriptor.Descriptor(
    name="LabelsEntry",
    full_name="google.firestore.v1.WriteRequest.LabelsEntry",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="key",
            full_name="google.firestore.v1.WriteRequest.LabelsEntry.key",
            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="value",
            full_name="google.firestore.v1.WriteRequest.LabelsEntry.value",
            index=1,
            number=2,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=_b("8\001"),
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=3007,
    serialized_end=3052,
)

_WRITEREQUEST = _descriptor.Descriptor(
    name="WriteRequest",
    full_name="google.firestore.v1.WriteRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.firestore.v1.WriteRequest.database",
            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="stream_id",
            full_name="google.firestore.v1.WriteRequest.stream_id",
            index=1,
            number=2,
            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="writes",
            full_name="google.firestore.v1.WriteRequest.writes",
            index=2,
            number=3,
            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="stream_token",
            full_name="google.firestore.v1.WriteRequest.stream_token",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="labels",
            full_name="google.firestore.v1.WriteRequest.labels",
            index=4,
            number=5,
            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,
        ),
    ],
    extensions=[],
    nested_types=[_WRITEREQUEST_LABELSENTRY],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=2825,
    serialized_end=3052,
)


_WRITERESPONSE = _descriptor.Descriptor(
    name="WriteResponse",
    full_name="google.firestore.v1.WriteResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="stream_id",
            full_name="google.firestore.v1.WriteResponse.stream_id",
            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="stream_token",
            full_name="google.firestore.v1.WriteResponse.stream_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="write_results",
            full_name="google.firestore.v1.WriteResponse.write_results",
            index=2,
            number=3,
            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="commit_time",
            full_name="google.firestore.v1.WriteResponse.commit_time",
            index=3,
            number=4,
            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=3055,
    serialized_end=3217,
)


_LISTENREQUEST_LABELSENTRY = _descriptor.Descriptor(
    name="LabelsEntry",
    full_name="google.firestore.v1.ListenRequest.LabelsEntry",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="key",
            full_name="google.firestore.v1.ListenRequest.LabelsEntry.key",
            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="value",
            full_name="google.firestore.v1.ListenRequest.LabelsEntry.value",
            index=1,
            number=2,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=_b("8\001"),
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=3007,
    serialized_end=3052,
)

_LISTENREQUEST = _descriptor.Descriptor(
    name="ListenRequest",
    full_name="google.firestore.v1.ListenRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="database",
            full_name="google.firestore.v1.ListenRequest.database",
            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="add_target",
            full_name="google.firestore.v1.ListenRequest.add_target",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="remove_target",
            full_name="google.firestore.v1.ListenRequest.remove_target",
            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="labels",
            full_name="google.firestore.v1.ListenRequest.labels",
            index=3,
            number=4,
            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,
        ),
    ],
    extensions=[],
    nested_types=[_LISTENREQUEST_LABELSENTRY],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="target_change",
            full_name="google.firestore.v1.ListenRequest.target_change",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=3220,
    serialized_end=3457,
)


_LISTENRESPONSE = _descriptor.Descriptor(
    name="ListenResponse",
    full_name="google.firestore.v1.ListenResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="target_change",
            full_name="google.firestore.v1.ListenResponse.target_change",
            index=0,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="document_change",
            full_name="google.firestore.v1.ListenResponse.document_change",
            index=1,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="document_delete",
            full_name="google.firestore.v1.ListenResponse.document_delete",
            index=2,
            number=4,
            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="document_remove",
            full_name="google.firestore.v1.ListenResponse.document_remove",
            index=3,
            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="filter",
            full_name="google.firestore.v1.ListenResponse.filter",
            index=4,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="response_type",
            full_name="google.firestore.v1.ListenResponse.response_type",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=3460,
    serialized_end=3801,
)


_TARGET_DOCUMENTSTARGET = _descriptor.Descriptor(
    name="DocumentsTarget",
    full_name="google.firestore.v1.Target.DocumentsTarget",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="documents",
            full_name="google.firestore.v1.Target.DocumentsTarget.documents",
            index=0,
            number=2,
            type=9,
            cpp_type=9,
            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=4044,
    serialized_end=4080,
)

_TARGET_QUERYTARGET = _descriptor.Descriptor(
    name="QueryTarget",
    full_name="google.firestore.v1.Target.QueryTarget",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.firestore.v1.Target.QueryTarget.parent",
            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="structured_query",
            full_name="google.firestore.v1.Target.QueryTarget.structured_query",
            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=[
        _descriptor.OneofDescriptor(
            name="query_type",
            full_name="google.firestore.v1.Target.QueryTarget.query_type",
            index=0,
            containing_type=None,
            fields=[],
        )
    ],
    serialized_start=4082,
    serialized_end=4191,
)

_TARGET = _descriptor.Descriptor(
    name="Target",
    full_name="google.firestore.v1.Target",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="query",
            full_name="google.firestore.v1.Target.query",
            index=0,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="documents",
            full_name="google.firestore.v1.Target.documents",
            index=1,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="resume_token",
            full_name="google.firestore.v1.Target.resume_token",
            index=2,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="read_time",
            full_name="google.firestore.v1.Target.read_time",
            index=3,
            number=11,
            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="target_id",
            full_name="google.firestore.v1.Target.target_id",
            index=4,
            number=5,
            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="once",
            full_name="google.firestore.v1.Target.once",
            index=5,
            number=6,
            type=8,
            cpp_type=7,
            label=1,
            has_default_value=False,
            default_value=False,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
        ),
    ],
    extensions=[],
    nested_types=[_TARGET_DOCUMENTSTARGET, _TARGET_QUERYTARGET],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[
        _descriptor.OneofDescriptor(
            name="target_type",
            full_name="google.firestore.v1.Target.target_type",
            index=0,
            containing_type=None,
            fields=[],
        ),
        _descriptor.OneofDescriptor(
            name="resume_type",
            full_name="google.firestore.v1.Target.resume_type",
            index=1,
            containing_type=None,
            fields=[],
        ),
    ],
    serialized_start=3804,
    serialized_end=4221,
)


_TARGETCHANGE = _descriptor.Descriptor(
    name="TargetChange",
    full_name="google.firestore.v1.TargetChange",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="target_change_type",
            full_name="google.firestore.v1.TargetChange.target_change_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="target_ids",
            full_name="google.firestore.v1.TargetChange.target_ids",
            index=1,
            number=2,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="cause",
            full_name="google.firestore.v1.TargetChange.cause",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="resume_token",
            full_name="google.firestore.v1.TargetChange.resume_token",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="read_time",
            full_name="google.firestore.v1.TargetChange.read_time",
            index=4,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[_TARGETCHANGE_TARGETCHANGETYPE],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=4224,
    serialized_end=4522,
)


_LISTCOLLECTIONIDSREQUEST = _descriptor.Descriptor(
    name="ListCollectionIdsRequest",
    full_name="google.firestore.v1.ListCollectionIdsRequest",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="parent",
            full_name="google.firestore.v1.ListCollectionIdsRequest.parent",
            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="page_size",
            full_name="google.firestore.v1.ListCollectionIdsRequest.page_size",
            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="page_token",
            full_name="google.firestore.v1.ListCollectionIdsRequest.page_token",
            index=2,
            number=3,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=4524,
    serialized_end=4605,
)


_LISTCOLLECTIONIDSRESPONSE = _descriptor.Descriptor(
    name="ListCollectionIdsResponse",
    full_name="google.firestore.v1.ListCollectionIdsResponse",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    fields=[
        _descriptor.FieldDescriptor(
            name="collection_ids",
            full_name="google.firestore.v1.ListCollectionIdsResponse.collection_ids",
            index=0,
            number=1,
            type=9,
            cpp_type=9,
            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="next_page_token",
            full_name="google.firestore.v1.ListCollectionIdsResponse.next_page_token",
            index=1,
            number=2,
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=4607,
    serialized_end=4683,
)

_GETDOCUMENTREQUEST.fields_by_name[
    "mask"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._DOCUMENTMASK
)
_GETDOCUMENTREQUEST.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_GETDOCUMENTREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _GETDOCUMENTREQUEST.fields_by_name["transaction"]
)
_GETDOCUMENTREQUEST.fields_by_name[
    "transaction"
].containing_oneof = _GETDOCUMENTREQUEST.oneofs_by_name["consistency_selector"]
_GETDOCUMENTREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _GETDOCUMENTREQUEST.fields_by_name["read_time"]
)
_GETDOCUMENTREQUEST.fields_by_name[
    "read_time"
].containing_oneof = _GETDOCUMENTREQUEST.oneofs_by_name["consistency_selector"]
_LISTDOCUMENTSREQUEST.fields_by_name[
    "mask"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._DOCUMENTMASK
)
_LISTDOCUMENTSREQUEST.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_LISTDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _LISTDOCUMENTSREQUEST.fields_by_name["transaction"]
)
_LISTDOCUMENTSREQUEST.fields_by_name[
    "transaction"
].containing_oneof = _LISTDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"]
_LISTDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _LISTDOCUMENTSREQUEST.fields_by_name["read_time"]
)
_LISTDOCUMENTSREQUEST.fields_by_name[
    "read_time"
].containing_oneof = _LISTDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"]
_LISTDOCUMENTSRESPONSE.fields_by_name[
    "documents"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT
)
_CREATEDOCUMENTREQUEST.fields_by_name[
    "document"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT
)
_CREATEDOCUMENTREQUEST.fields_by_name[
    "mask"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._DOCUMENTMASK
)
_UPDATEDOCUMENTREQUEST.fields_by_name[
    "document"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT
)
_UPDATEDOCUMENTREQUEST.fields_by_name[
    "update_mask"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._DOCUMENTMASK
)
_UPDATEDOCUMENTREQUEST.fields_by_name[
    "mask"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._DOCUMENTMASK
)
_UPDATEDOCUMENTREQUEST.fields_by_name[
    "current_document"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._PRECONDITION
)
_DELETEDOCUMENTREQUEST.fields_by_name[
    "current_document"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._PRECONDITION
)
_BATCHGETDOCUMENTSREQUEST.fields_by_name[
    "mask"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._DOCUMENTMASK
)
_BATCHGETDOCUMENTSREQUEST.fields_by_name[
    "new_transaction"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._TRANSACTIONOPTIONS
)
_BATCHGETDOCUMENTSREQUEST.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_BATCHGETDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _BATCHGETDOCUMENTSREQUEST.fields_by_name["transaction"]
)
_BATCHGETDOCUMENTSREQUEST.fields_by_name[
    "transaction"
].containing_oneof = _BATCHGETDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"]
_BATCHGETDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _BATCHGETDOCUMENTSREQUEST.fields_by_name["new_transaction"]
)
_BATCHGETDOCUMENTSREQUEST.fields_by_name[
    "new_transaction"
].containing_oneof = _BATCHGETDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"]
_BATCHGETDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _BATCHGETDOCUMENTSREQUEST.fields_by_name["read_time"]
)
_BATCHGETDOCUMENTSREQUEST.fields_by_name[
    "read_time"
].containing_oneof = _BATCHGETDOCUMENTSREQUEST.oneofs_by_name["consistency_selector"]
_BATCHGETDOCUMENTSRESPONSE.fields_by_name[
    "found"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT
)
_BATCHGETDOCUMENTSRESPONSE.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_BATCHGETDOCUMENTSRESPONSE.oneofs_by_name["result"].fields.append(
    _BATCHGETDOCUMENTSRESPONSE.fields_by_name["found"]
)
_BATCHGETDOCUMENTSRESPONSE.fields_by_name[
    "found"
].containing_oneof = _BATCHGETDOCUMENTSRESPONSE.oneofs_by_name["result"]
_BATCHGETDOCUMENTSRESPONSE.oneofs_by_name["result"].fields.append(
    _BATCHGETDOCUMENTSRESPONSE.fields_by_name["missing"]
)
_BATCHGETDOCUMENTSRESPONSE.fields_by_name[
    "missing"
].containing_oneof = _BATCHGETDOCUMENTSRESPONSE.oneofs_by_name["result"]
_BEGINTRANSACTIONREQUEST.fields_by_name[
    "options"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._TRANSACTIONOPTIONS
)
_COMMITREQUEST.fields_by_name[
    "writes"
].message_type = google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._WRITE
_COMMITRESPONSE.fields_by_name[
    "write_results"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._WRITERESULT
)
_COMMITRESPONSE.fields_by_name[
    "commit_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_RUNQUERYREQUEST.fields_by_name[
    "structured_query"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_query__pb2._STRUCTUREDQUERY
)
_RUNQUERYREQUEST.fields_by_name[
    "new_transaction"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_common__pb2._TRANSACTIONOPTIONS
)
_RUNQUERYREQUEST.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_RUNQUERYREQUEST.oneofs_by_name["query_type"].fields.append(
    _RUNQUERYREQUEST.fields_by_name["structured_query"]
)
_RUNQUERYREQUEST.fields_by_name[
    "structured_query"
].containing_oneof = _RUNQUERYREQUEST.oneofs_by_name["query_type"]
_RUNQUERYREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _RUNQUERYREQUEST.fields_by_name["transaction"]
)
_RUNQUERYREQUEST.fields_by_name[
    "transaction"
].containing_oneof = _RUNQUERYREQUEST.oneofs_by_name["consistency_selector"]
_RUNQUERYREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _RUNQUERYREQUEST.fields_by_name["new_transaction"]
)
_RUNQUERYREQUEST.fields_by_name[
    "new_transaction"
].containing_oneof = _RUNQUERYREQUEST.oneofs_by_name["consistency_selector"]
_RUNQUERYREQUEST.oneofs_by_name["consistency_selector"].fields.append(
    _RUNQUERYREQUEST.fields_by_name["read_time"]
)
_RUNQUERYREQUEST.fields_by_name[
    "read_time"
].containing_oneof = _RUNQUERYREQUEST.oneofs_by_name["consistency_selector"]
_RUNQUERYRESPONSE.fields_by_name[
    "document"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT
)
_RUNQUERYRESPONSE.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_WRITEREQUEST_LABELSENTRY.containing_type = _WRITEREQUEST
_WRITEREQUEST.fields_by_name[
    "writes"
].message_type = google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._WRITE
_WRITEREQUEST.fields_by_name["labels"].message_type = _WRITEREQUEST_LABELSENTRY
_WRITERESPONSE.fields_by_name[
    "write_results"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._WRITERESULT
)
_WRITERESPONSE.fields_by_name[
    "commit_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_LISTENREQUEST_LABELSENTRY.containing_type = _LISTENREQUEST
_LISTENREQUEST.fields_by_name["add_target"].message_type = _TARGET
_LISTENREQUEST.fields_by_name["labels"].message_type = _LISTENREQUEST_LABELSENTRY
_LISTENREQUEST.oneofs_by_name["target_change"].fields.append(
    _LISTENREQUEST.fields_by_name["add_target"]
)
_LISTENREQUEST.fields_by_name[
    "add_target"
].containing_oneof = _LISTENREQUEST.oneofs_by_name["target_change"]
_LISTENREQUEST.oneofs_by_name["target_change"].fields.append(
    _LISTENREQUEST.fields_by_name["remove_target"]
)
_LISTENREQUEST.fields_by_name[
    "remove_target"
].containing_oneof = _LISTENREQUEST.oneofs_by_name["target_change"]
_LISTENRESPONSE.fields_by_name["target_change"].message_type = _TARGETCHANGE
_LISTENRESPONSE.fields_by_name[
    "document_change"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._DOCUMENTCHANGE
)
_LISTENRESPONSE.fields_by_name[
    "document_delete"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._DOCUMENTDELETE
)
_LISTENRESPONSE.fields_by_name[
    "document_remove"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._DOCUMENTREMOVE
)
_LISTENRESPONSE.fields_by_name[
    "filter"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_write__pb2._EXISTENCEFILTER
)
_LISTENRESPONSE.oneofs_by_name["response_type"].fields.append(
    _LISTENRESPONSE.fields_by_name["target_change"]
)
_LISTENRESPONSE.fields_by_name[
    "target_change"
].containing_oneof = _LISTENRESPONSE.oneofs_by_name["response_type"]
_LISTENRESPONSE.oneofs_by_name["response_type"].fields.append(
    _LISTENRESPONSE.fields_by_name["document_change"]
)
_LISTENRESPONSE.fields_by_name[
    "document_change"
].containing_oneof = _LISTENRESPONSE.oneofs_by_name["response_type"]
_LISTENRESPONSE.oneofs_by_name["response_type"].fields.append(
    _LISTENRESPONSE.fields_by_name["document_delete"]
)
_LISTENRESPONSE.fields_by_name[
    "document_delete"
].containing_oneof = _LISTENRESPONSE.oneofs_by_name["response_type"]
_LISTENRESPONSE.oneofs_by_name["response_type"].fields.append(
    _LISTENRESPONSE.fields_by_name["document_remove"]
)
_LISTENRESPONSE.fields_by_name[
    "document_remove"
].containing_oneof = _LISTENRESPONSE.oneofs_by_name["response_type"]
_LISTENRESPONSE.oneofs_by_name["response_type"].fields.append(
    _LISTENRESPONSE.fields_by_name["filter"]
)
_LISTENRESPONSE.fields_by_name[
    "filter"
].containing_oneof = _LISTENRESPONSE.oneofs_by_name["response_type"]
_TARGET_DOCUMENTSTARGET.containing_type = _TARGET
_TARGET_QUERYTARGET.fields_by_name[
    "structured_query"
].message_type = (
    google_dot_cloud_dot_firestore__v1_dot_proto_dot_query__pb2._STRUCTUREDQUERY
)
_TARGET_QUERYTARGET.containing_type = _TARGET
_TARGET_QUERYTARGET.oneofs_by_name["query_type"].fields.append(
    _TARGET_QUERYTARGET.fields_by_name["structured_query"]
)
_TARGET_QUERYTARGET.fields_by_name[
    "structured_query"
].containing_oneof = _TARGET_QUERYTARGET.oneofs_by_name["query_type"]
_TARGET.fields_by_name["query"].message_type = _TARGET_QUERYTARGET
_TARGET.fields_by_name["documents"].message_type = _TARGET_DOCUMENTSTARGET
_TARGET.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_TARGET.oneofs_by_name["target_type"].fields.append(_TARGET.fields_by_name["query"])
_TARGET.fields_by_name["query"].containing_oneof = _TARGET.oneofs_by_name["target_type"]
_TARGET.oneofs_by_name["target_type"].fields.append(_TARGET.fields_by_name["documents"])
_TARGET.fields_by_name["documents"].containing_oneof = _TARGET.oneofs_by_name[
    "target_type"
]
_TARGET.oneofs_by_name["resume_type"].fields.append(
    _TARGET.fields_by_name["resume_token"]
)
_TARGET.fields_by_name["resume_token"].containing_oneof = _TARGET.oneofs_by_name[
    "resume_type"
]
_TARGET.oneofs_by_name["resume_type"].fields.append(_TARGET.fields_by_name["read_time"])
_TARGET.fields_by_name["read_time"].containing_oneof = _TARGET.oneofs_by_name[
    "resume_type"
]
_TARGETCHANGE.fields_by_name[
    "target_change_type"
].enum_type = _TARGETCHANGE_TARGETCHANGETYPE
_TARGETCHANGE.fields_by_name[
    "cause"
].message_type = google_dot_rpc_dot_status__pb2._STATUS
_TARGETCHANGE.fields_by_name[
    "read_time"
].message_type = google_dot_protobuf_dot_timestamp__pb2._TIMESTAMP
_TARGETCHANGE_TARGETCHANGETYPE.containing_type = _TARGETCHANGE
DESCRIPTOR.message_types_by_name["GetDocumentRequest"] = _GETDOCUMENTREQUEST
DESCRIPTOR.message_types_by_name["ListDocumentsRequest"] = _LISTDOCUMENTSREQUEST
DESCRIPTOR.message_types_by_name["ListDocumentsResponse"] = _LISTDOCUMENTSRESPONSE
DESCRIPTOR.message_types_by_name["CreateDocumentRequest"] = _CREATEDOCUMENTREQUEST
DESCRIPTOR.message_types_by_name["UpdateDocumentRequest"] = _UPDATEDOCUMENTREQUEST
DESCRIPTOR.message_types_by_name["DeleteDocumentRequest"] = _DELETEDOCUMENTREQUEST
DESCRIPTOR.message_types_by_name["BatchGetDocumentsRequest"] = _BATCHGETDOCUMENTSREQUEST
DESCRIPTOR.message_types_by_name[
    "BatchGetDocumentsResponse"
] = _BATCHGETDOCUMENTSRESPONSE
DESCRIPTOR.message_types_by_name["BeginTransactionRequest"] = _BEGINTRANSACTIONREQUEST
DESCRIPTOR.message_types_by_name["BeginTransactionResponse"] = _BEGINTRANSACTIONRESPONSE
DESCRIPTOR.message_types_by_name["CommitRequest"] = _COMMITREQUEST
DESCRIPTOR.message_types_by_name["CommitResponse"] = _COMMITRESPONSE
DESCRIPTOR.message_types_by_name["RollbackRequest"] = _ROLLBACKREQUEST
DESCRIPTOR.message_types_by_name["RunQueryRequest"] = _RUNQUERYREQUEST
DESCRIPTOR.message_types_by_name["RunQueryResponse"] = _RUNQUERYRESPONSE
DESCRIPTOR.message_types_by_name["WriteRequest"] = _WRITEREQUEST
DESCRIPTOR.message_types_by_name["WriteResponse"] = _WRITERESPONSE
DESCRIPTOR.message_types_by_name["ListenRequest"] = _LISTENREQUEST
DESCRIPTOR.message_types_by_name["ListenResponse"] = _LISTENRESPONSE
DESCRIPTOR.message_types_by_name["Target"] = _TARGET
DESCRIPTOR.message_types_by_name["TargetChange"] = _TARGETCHANGE
DESCRIPTOR.message_types_by_name["ListCollectionIdsRequest"] = _LISTCOLLECTIONIDSREQUEST
DESCRIPTOR.message_types_by_name[
    "ListCollectionIdsResponse"
] = _LISTCOLLECTIONIDSRESPONSE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

GetDocumentRequest = _reflection.GeneratedProtocolMessageType(
    "GetDocumentRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_GETDOCUMENTREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.GetDocument][google.firestore.v1.Firestore.GetDocument].
  
  
  Attributes:
      name:
          The resource name of the Document to get. In the format: ``pro
          jects/{project_id}/databases/{database_id}/documents/{document
          _path}``.
      mask:
          The fields to return. If not set, returns all fields.  If the
          document has a field that is not present in this mask, that
          field will not be returned in the response.
      consistency_selector:
          The consistency mode for this transaction. If not set,
          defaults to strong consistency.
      transaction:
          Reads the document in a transaction.
      read_time:
          Reads the version of the document at the given time. This may
          not be older than 60 seconds.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.GetDocumentRequest)
    ),
)
_sym_db.RegisterMessage(GetDocumentRequest)

ListDocumentsRequest = _reflection.GeneratedProtocolMessageType(
    "ListDocumentsRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTDOCUMENTSREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.ListDocuments][google.firestore.v1.Firestore.ListDocuments].
  
  
  Attributes:
      parent:
          The parent resource name. In the format:
          ``projects/{project_id}/databases/{database_id}/documents`` or
          ``projects/{project_id}/databases/{database_id}/documents/{doc
          ument_path}``. For example: ``projects/my-
          project/databases/my-database/documents`` or ``projects/my-
          project/databases/my-database/documents/chatrooms/my-
          chatroom``
      collection_id:
          The collection ID, relative to ``parent``, to list. For
          example: ``chatrooms`` or ``messages``.
      page_size:
          The maximum number of documents to return.
      page_token:
          The ``next_page_token`` value returned from a previous List
          request, if any.
      order_by:
          The order to sort results by. For example: ``priority desc,
          name``.
      mask:
          The fields to return. If not set, returns all fields.  If a
          document has a field that is not present in this mask, that
          field will not be returned in the response.
      consistency_selector:
          The consistency mode for this transaction. If not set,
          defaults to strong consistency.
      transaction:
          Reads documents in a transaction.
      read_time:
          Reads documents as they were at the given time. This may not
          be older than 60 seconds.
      show_missing:
          If the list should show missing documents. A missing document
          is a document that does not exist but has sub-documents. These
          documents will be returned with a key but will not have
          fields, [Document.create\_time][google.firestore.v1.Document.c
          reate\_time], or [Document.update\_time][google.firestore.v1.D
          ocument.update\_time] set.  Requests with ``show_missing`` may
          not specify ``where`` or ``order_by``.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.ListDocumentsRequest)
    ),
)
_sym_db.RegisterMessage(ListDocumentsRequest)

ListDocumentsResponse = _reflection.GeneratedProtocolMessageType(
    "ListDocumentsResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTDOCUMENTSRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response for
  [Firestore.ListDocuments][google.firestore.v1.Firestore.ListDocuments].
  
  
  Attributes:
      documents:
          The Documents found.
      next_page_token:
          The next page token.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.ListDocumentsResponse)
    ),
)
_sym_db.RegisterMessage(ListDocumentsResponse)

CreateDocumentRequest = _reflection.GeneratedProtocolMessageType(
    "CreateDocumentRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_CREATEDOCUMENTREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.CreateDocument][google.firestore.v1.Firestore.CreateDocument].
  
  
  Attributes:
      parent:
          The parent resource. For example:
          ``projects/{project_id}/databases/{database_id}/documents`` or
          ``projects/{project_id}/databases/{database_id}/documents/chat
          rooms/{chatroom_id}``
      collection_id:
          The collection ID, relative to ``parent``, to list. For
          example: ``chatrooms``.
      document_id:
          The client-assigned document ID to use for this document.
          Optional. If not specified, an ID will be assigned by the
          service.
      document:
          The document to create. ``name`` must not be set.
      mask:
          The fields to return. If not set, returns all fields.  If the
          document has a field that is not present in this mask, that
          field will not be returned in the response.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.CreateDocumentRequest)
    ),
)
_sym_db.RegisterMessage(CreateDocumentRequest)

UpdateDocumentRequest = _reflection.GeneratedProtocolMessageType(
    "UpdateDocumentRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_UPDATEDOCUMENTREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.UpdateDocument][google.firestore.v1.Firestore.UpdateDocument].
  
  
  Attributes:
      document:
          The updated document. Creates the document if it does not
          already exist.
      update_mask:
          The fields to update. None of the field paths in the mask may
          contain a reserved name.  If the document exists on the server
          and has fields not referenced in the mask, they are left
          unchanged. Fields referenced in the mask, but not present in
          the input document, are deleted from the document on the
          server.
      mask:
          The fields to return. If not set, returns all fields.  If the
          document has a field that is not present in this mask, that
          field will not be returned in the response.
      current_document:
          An optional precondition on the document. The request will
          fail if this is set and not met by the target document.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.UpdateDocumentRequest)
    ),
)
_sym_db.RegisterMessage(UpdateDocumentRequest)

DeleteDocumentRequest = _reflection.GeneratedProtocolMessageType(
    "DeleteDocumentRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_DELETEDOCUMENTREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.DeleteDocument][google.firestore.v1.Firestore.DeleteDocument].
  
  
  Attributes:
      name:
          The resource name of the Document to delete. In the format: ``
          projects/{project_id}/databases/{database_id}/documents/{docum
          ent_path}``.
      current_document:
          An optional precondition on the document. The request will
          fail if this is set and not met by the target document.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.DeleteDocumentRequest)
    ),
)
_sym_db.RegisterMessage(DeleteDocumentRequest)

BatchGetDocumentsRequest = _reflection.GeneratedProtocolMessageType(
    "BatchGetDocumentsRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_BATCHGETDOCUMENTSREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.BatchGetDocuments][google.firestore.v1.Firestore.BatchGetDocuments].
  
  
  Attributes:
      database:
          The database name. In the format:
          ``projects/{project_id}/databases/{database_id}``.
      documents:
          The names of the documents to retrieve. In the format: ``proje
          cts/{project_id}/databases/{database_id}/documents/{document_p
          ath}``. The request will fail if any of the document is not a
          child resource of the given ``database``. Duplicate names will
          be elided.
      mask:
          The fields to return. If not set, returns all fields.  If a
          document has a field that is not present in this mask, that
          field will not be returned in the response.
      consistency_selector:
          The consistency mode for this transaction. If not set,
          defaults to strong consistency.
      transaction:
          Reads documents in a transaction.
      new_transaction:
          Starts a new transaction and reads the documents. Defaults to
          a read-only transaction. The new transaction ID will be
          returned as the first response in the stream.
      read_time:
          Reads documents as they were at the given time. This may not
          be older than 60 seconds.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.BatchGetDocumentsRequest)
    ),
)
_sym_db.RegisterMessage(BatchGetDocumentsRequest)

BatchGetDocumentsResponse = _reflection.GeneratedProtocolMessageType(
    "BatchGetDocumentsResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_BATCHGETDOCUMENTSRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The streamed response for
  [Firestore.BatchGetDocuments][google.firestore.v1.Firestore.BatchGetDocuments].
  
  
  Attributes:
      result:
          A single result. This can be empty if the server is just
          returning a transaction.
      found:
          A document that was requested.
      missing:
          A document name that was requested but does not exist. In the
          format: ``projects/{project_id}/databases/{database_id}/docume
          nts/{document_path}``.
      transaction:
          The transaction that was started as part of this request. Will
          only be set in the first response, and only if [BatchGetDocume
          ntsRequest.new\_transaction][google.firestore.v1.BatchGetDocum
          entsRequest.new\_transaction] was set in the request.
      read_time:
          The time at which the document was read. This may be
          monotically increasing, in this case the previous documents in
          the result stream are guaranteed not to have changed between
          their read\_time and this one.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.BatchGetDocumentsResponse)
    ),
)
_sym_db.RegisterMessage(BatchGetDocumentsResponse)

BeginTransactionRequest = _reflection.GeneratedProtocolMessageType(
    "BeginTransactionRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_BEGINTRANSACTIONREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.BeginTransaction][google.firestore.v1.Firestore.BeginTransaction].
  
  
  Attributes:
      database:
          The database name. In the format:
          ``projects/{project_id}/databases/{database_id}``.
      options:
          The options for the transaction. Defaults to a read-write
          transaction.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.BeginTransactionRequest)
    ),
)
_sym_db.RegisterMessage(BeginTransactionRequest)

BeginTransactionResponse = _reflection.GeneratedProtocolMessageType(
    "BeginTransactionResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_BEGINTRANSACTIONRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response for
  [Firestore.BeginTransaction][google.firestore.v1.Firestore.BeginTransaction].
  
  
  Attributes:
      transaction:
          The transaction that was started.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.BeginTransactionResponse)
    ),
)
_sym_db.RegisterMessage(BeginTransactionResponse)

CommitRequest = _reflection.GeneratedProtocolMessageType(
    "CommitRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_COMMITREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.Commit][google.firestore.v1.Firestore.Commit].
  
  
  Attributes:
      database:
          The database name. In the format:
          ``projects/{project_id}/databases/{database_id}``.
      writes:
          The writes to apply.  Always executed atomically and in order.
      transaction:
          If set, applies all writes in this transaction, and commits
          it.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.CommitRequest)
    ),
)
_sym_db.RegisterMessage(CommitRequest)

CommitResponse = _reflection.GeneratedProtocolMessageType(
    "CommitResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_COMMITRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response for
  [Firestore.Commit][google.firestore.v1.Firestore.Commit].
  
  
  Attributes:
      write_results:
          The result of applying the writes.  This i-th write result
          corresponds to the i-th write in the request.
      commit_time:
          The time at which the commit occurred.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.CommitResponse)
    ),
)
_sym_db.RegisterMessage(CommitResponse)

RollbackRequest = _reflection.GeneratedProtocolMessageType(
    "RollbackRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_ROLLBACKREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.Rollback][google.firestore.v1.Firestore.Rollback].
  
  
  Attributes:
      database:
          The database name. In the format:
          ``projects/{project_id}/databases/{database_id}``.
      transaction:
          The transaction to roll back.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.RollbackRequest)
    ),
)
_sym_db.RegisterMessage(RollbackRequest)

RunQueryRequest = _reflection.GeneratedProtocolMessageType(
    "RunQueryRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RUNQUERYREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.RunQuery][google.firestore.v1.Firestore.RunQuery].
  
  
  Attributes:
      parent:
          The parent resource name. In the format:
          ``projects/{project_id}/databases/{database_id}/documents`` or
          ``projects/{project_id}/databases/{database_id}/documents/{doc
          ument_path}``. For example: ``projects/my-
          project/databases/my-database/documents`` or ``projects/my-
          project/databases/my-database/documents/chatrooms/my-
          chatroom``
      query_type:
          The query to run.
      structured_query:
          A structured query.
      consistency_selector:
          The consistency mode for this transaction. If not set,
          defaults to strong consistency.
      transaction:
          Reads documents in a transaction.
      new_transaction:
          Starts a new transaction and reads the documents. Defaults to
          a read-only transaction. The new transaction ID will be
          returned as the first response in the stream.
      read_time:
          Reads documents as they were at the given time. This may not
          be older than 60 seconds.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.RunQueryRequest)
    ),
)
_sym_db.RegisterMessage(RunQueryRequest)

RunQueryResponse = _reflection.GeneratedProtocolMessageType(
    "RunQueryResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_RUNQUERYRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response for
  [Firestore.RunQuery][google.firestore.v1.Firestore.RunQuery].
  
  
  Attributes:
      transaction:
          The transaction that was started as part of this request. Can
          only be set in the first response, and only if [RunQueryReques
          t.new\_transaction][google.firestore.v1.RunQueryRequest.new\_t
          ransaction] was set in the request. If set, no other fields
          will be set in this response.
      document:
          A query result. Not set when reporting partial progress.
      read_time:
          The time at which the document was read. This may be
          monotonically increasing; in this case, the previous documents
          in the result stream are guaranteed not to have changed
          between their ``read_time`` and this one.  If the query
          returns no results, a response with ``read_time`` and no
          ``document`` will be sent, and this represents the time at
          which the query was run.
      skipped_results:
          The number of results that have been skipped due to an offset
          between the last response and the current response.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.RunQueryResponse)
    ),
)
_sym_db.RegisterMessage(RunQueryResponse)

WriteRequest = _reflection.GeneratedProtocolMessageType(
    "WriteRequest",
    (_message.Message,),
    dict(
        LabelsEntry=_reflection.GeneratedProtocolMessageType(
            "LabelsEntry",
            (_message.Message,),
            dict(
                DESCRIPTOR=_WRITEREQUEST_LABELSENTRY,
                __module__="google.cloud.firestore_v1.proto.firestore_pb2"
                # @@protoc_insertion_point(class_scope:google.firestore.v1.WriteRequest.LabelsEntry)
            ),
        ),
        DESCRIPTOR=_WRITEREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for [Firestore.Write][google.firestore.v1.Firestore.Write].
  
  The first request creates a stream, or resumes an existing one from a
  token.
  
  When creating a new stream, the server replies with a response
  containing only an ID and a token, to use in the next request.
  
  When resuming a stream, the server first streams any responses later
  than the given token, then a response containing only an up-to-date
  token, to use in the next request.
  
  
  Attributes:
      database:
          The database name. In the format:
          ``projects/{project_id}/databases/{database_id}``. This is
          only required in the first message.
      stream_id:
          The ID of the write stream to resume. This may only be set in
          the first message. When left empty, a new write stream will be
          created.
      writes:
          The writes to apply.  Always executed atomically and in order.
          This must be empty on the first request. This may be empty on
          the last request. This must not be empty on all other
          requests.
      stream_token:
          A stream token that was previously sent by the server.  The
          client should set this field to the token from the most recent
          [WriteResponse][google.firestore.v1.WriteResponse] it has
          received. This acknowledges that the client has received
          responses up to this token. After sending this token, earlier
          tokens may not be used anymore.  The server may close the
          stream if there are too many unacknowledged responses.  Leave
          this field unset when creating a new stream. To resume a
          stream at a specific point, set this field and the
          ``stream_id`` field.  Leave this field unset when creating a
          new stream.
      labels:
          Labels associated with this write request.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.WriteRequest)
    ),
)
_sym_db.RegisterMessage(WriteRequest)
_sym_db.RegisterMessage(WriteRequest.LabelsEntry)

WriteResponse = _reflection.GeneratedProtocolMessageType(
    "WriteResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_WRITERESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response for [Firestore.Write][google.firestore.v1.Firestore.Write].
  
  
  Attributes:
      stream_id:
          The ID of the stream. Only set on the first message, when a
          new stream was created.
      stream_token:
          A token that represents the position of this response in the
          stream. This can be used by a client to resume the stream at
          this point.  This field is always set.
      write_results:
          The result of applying the writes.  This i-th write result
          corresponds to the i-th write in the request.
      commit_time:
          The time at which the commit occurred.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.WriteResponse)
    ),
)
_sym_db.RegisterMessage(WriteResponse)

ListenRequest = _reflection.GeneratedProtocolMessageType(
    "ListenRequest",
    (_message.Message,),
    dict(
        LabelsEntry=_reflection.GeneratedProtocolMessageType(
            "LabelsEntry",
            (_message.Message,),
            dict(
                DESCRIPTOR=_LISTENREQUEST_LABELSENTRY,
                __module__="google.cloud.firestore_v1.proto.firestore_pb2"
                # @@protoc_insertion_point(class_scope:google.firestore.v1.ListenRequest.LabelsEntry)
            ),
        ),
        DESCRIPTOR=_LISTENREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""A request for [Firestore.Listen][google.firestore.v1.Firestore.Listen]
  
  
  Attributes:
      database:
          The database name. In the format:
          ``projects/{project_id}/databases/{database_id}``.
      target_change:
          The supported target changes.
      add_target:
          A target to add to this stream.
      remove_target:
          The ID of a target to remove from this stream.
      labels:
          Labels associated with this target change.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.ListenRequest)
    ),
)
_sym_db.RegisterMessage(ListenRequest)
_sym_db.RegisterMessage(ListenRequest.LabelsEntry)

ListenResponse = _reflection.GeneratedProtocolMessageType(
    "ListenResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTENRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response for
  [Firestore.Listen][google.firestore.v1.Firestore.Listen].
  
  
  Attributes:
      response_type:
          The supported responses.
      target_change:
          Targets have changed.
      document_change:
          A [Document][google.firestore.v1.Document] has changed.
      document_delete:
          A [Document][google.firestore.v1.Document] has been deleted.
      document_remove:
          A [Document][google.firestore.v1.Document] has been removed
          from a target (because it is no longer relevant to that
          target).
      filter:
          A filter to apply to the set of documents previously returned
          for the given target.  Returned when documents may have been
          removed from the given target, but the exact documents are
          unknown.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.ListenResponse)
    ),
)
_sym_db.RegisterMessage(ListenResponse)

Target = _reflection.GeneratedProtocolMessageType(
    "Target",
    (_message.Message,),
    dict(
        DocumentsTarget=_reflection.GeneratedProtocolMessageType(
            "DocumentsTarget",
            (_message.Message,),
            dict(
                DESCRIPTOR=_TARGET_DOCUMENTSTARGET,
                __module__="google.cloud.firestore_v1.proto.firestore_pb2",
                __doc__="""A target specified by a set of documents names.
    
    
    Attributes:
        documents:
            The names of the documents to retrieve. In the format: ``proje
            cts/{project_id}/databases/{database_id}/documents/{document_p
            ath}``. The request will fail if any of the document is not a
            child resource of the given ``database``. Duplicate names will
            be elided.
    """,
                # @@protoc_insertion_point(class_scope:google.firestore.v1.Target.DocumentsTarget)
            ),
        ),
        QueryTarget=_reflection.GeneratedProtocolMessageType(
            "QueryTarget",
            (_message.Message,),
            dict(
                DESCRIPTOR=_TARGET_QUERYTARGET,
                __module__="google.cloud.firestore_v1.proto.firestore_pb2",
                __doc__="""A target specified by a query.
    
    
    Attributes:
        parent:
            The parent resource name. In the format:
            ``projects/{project_id}/databases/{database_id}/documents`` or
            ``projects/{project_id}/databases/{database_id}/documents/{doc
            ument_path}``. For example: ``projects/my-
            project/databases/my-database/documents`` or ``projects/my-
            project/databases/my-database/documents/chatrooms/my-
            chatroom``
        query_type:
            The query to run.
        structured_query:
            A structured query.
    """,
                # @@protoc_insertion_point(class_scope:google.firestore.v1.Target.QueryTarget)
            ),
        ),
        DESCRIPTOR=_TARGET,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""A specification of a set of documents to listen to.
  
  
  Attributes:
      target_type:
          The type of target to listen to.
      query:
          A target specified by a query.
      documents:
          A target specified by a set of document names.
      resume_type:
          When to start listening.  If not specified, all matching
          Documents are returned before any subsequent changes.
      resume_token:
          A resume token from a prior
          [TargetChange][google.firestore.v1.TargetChange] for an
          identical target.  Using a resume token with a different
          target is unsupported and may fail.
      read_time:
          Start listening after a specific ``read_time``.  The client
          must know the state of matching documents at this time.
      target_id:
          The target ID that identifies the target on the stream. Must
          be a positive number and non-zero.
      once:
          If the target should be removed once it is current and
          consistent.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.Target)
    ),
)
_sym_db.RegisterMessage(Target)
_sym_db.RegisterMessage(Target.DocumentsTarget)
_sym_db.RegisterMessage(Target.QueryTarget)

TargetChange = _reflection.GeneratedProtocolMessageType(
    "TargetChange",
    (_message.Message,),
    dict(
        DESCRIPTOR=_TARGETCHANGE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""Targets being watched have changed.
  
  
  Attributes:
      target_change_type:
          The type of change that occurred.
      target_ids:
          The target IDs of targets that have changed.  If empty, the
          change applies to all targets.  The order of the target IDs is
          not defined.
      cause:
          The error that resulted in this change, if applicable.
      resume_token:
          A token that can be used to resume the stream for the given
          ``target_ids``, or all targets if ``target_ids`` is empty.
          Not set on every target change.
      read_time:
          The consistent ``read_time`` for the given ``target_ids``
          (omitted when the target\_ids are not at a consistent
          snapshot).  The stream is guaranteed to send a ``read_time``
          with ``target_ids`` empty whenever the entire stream reaches a
          new consistent snapshot. ADD, CURRENT, and RESET messages are
          guaranteed to (eventually) result in a new consistent snapshot
          (while NO\_CHANGE and REMOVE messages are not).  For a given
          stream, ``read_time`` is guaranteed to be monotonically
          increasing.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.TargetChange)
    ),
)
_sym_db.RegisterMessage(TargetChange)

ListCollectionIdsRequest = _reflection.GeneratedProtocolMessageType(
    "ListCollectionIdsRequest",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTCOLLECTIONIDSREQUEST,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The request for
  [Firestore.ListCollectionIds][google.firestore.v1.Firestore.ListCollectionIds].
  
  
  Attributes:
      parent:
          The parent document. In the format: ``projects/{project_id}/da
          tabases/{database_id}/documents/{document_path}``. For
          example: ``projects/my-project/databases/my-
          database/documents/chatrooms/my-chatroom``
      page_size:
          The maximum number of results to return.
      page_token:
          A page token. Must be a value from [ListCollectionIdsResponse]
          [google.firestore.v1.ListCollectionIdsResponse].
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.ListCollectionIdsRequest)
    ),
)
_sym_db.RegisterMessage(ListCollectionIdsRequest)

ListCollectionIdsResponse = _reflection.GeneratedProtocolMessageType(
    "ListCollectionIdsResponse",
    (_message.Message,),
    dict(
        DESCRIPTOR=_LISTCOLLECTIONIDSRESPONSE,
        __module__="google.cloud.firestore_v1.proto.firestore_pb2",
        __doc__="""The response from
  [Firestore.ListCollectionIds][google.firestore.v1.Firestore.ListCollectionIds].
  
  
  Attributes:
      collection_ids:
          The collection ids.
      next_page_token:
          A page token that may be used to continue the list.
  """,
        # @@protoc_insertion_point(class_scope:google.firestore.v1.ListCollectionIdsResponse)
    ),
)
_sym_db.RegisterMessage(ListCollectionIdsResponse)


DESCRIPTOR._options = None
_WRITEREQUEST_LABELSENTRY._options = None
_LISTENREQUEST_LABELSENTRY._options = None

_FIRESTORE = _descriptor.ServiceDescriptor(
    name="Firestore",
    full_name="google.firestore.v1.Firestore",
    file=DESCRIPTOR,
    index=0,
    serialized_options=_b(
        "\312A\030firestore.googleapis.com\322AXhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"
    ),
    serialized_start=4686,
    serialized_end=7114,
    methods=[
        _descriptor.MethodDescriptor(
            name="GetDocument",
            full_name="google.firestore.v1.Firestore.GetDocument",
            index=0,
            containing_service=None,
            input_type=_GETDOCUMENTREQUEST,
            output_type=google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT,
            serialized_options=_b(
                "\202\323\344\223\0022\0220/v1/{name=projects/*/databases/*/documents/*/**}"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="ListDocuments",
            full_name="google.firestore.v1.Firestore.ListDocuments",
            index=1,
            containing_service=None,
            input_type=_LISTDOCUMENTSREQUEST,
            output_type=_LISTDOCUMENTSRESPONSE,
            serialized_options=_b(
                "\202\323\344\223\002D\022B/v1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="CreateDocument",
            full_name="google.firestore.v1.Firestore.CreateDocument",
            index=2,
            containing_service=None,
            input_type=_CREATEDOCUMENTREQUEST,
            output_type=google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT,
            serialized_options=_b(
                '\202\323\344\223\002L"@/v1/{parent=projects/*/databases/*/documents/**}/{collection_id}:\010document'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="UpdateDocument",
            full_name="google.firestore.v1.Firestore.UpdateDocument",
            index=3,
            containing_service=None,
            input_type=_UPDATEDOCUMENTREQUEST,
            output_type=google_dot_cloud_dot_firestore__v1_dot_proto_dot_document__pb2._DOCUMENT,
            serialized_options=_b(
                "\202\323\344\223\002E29/v1/{document.name=projects/*/databases/*/documents/*/**}:\010document"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="DeleteDocument",
            full_name="google.firestore.v1.Firestore.DeleteDocument",
            index=4,
            containing_service=None,
            input_type=_DELETEDOCUMENTREQUEST,
            output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
            serialized_options=_b(
                "\202\323\344\223\0022*0/v1/{name=projects/*/databases/*/documents/*/**}"
            ),
        ),
        _descriptor.MethodDescriptor(
            name="BatchGetDocuments",
            full_name="google.firestore.v1.Firestore.BatchGetDocuments",
            index=5,
            containing_service=None,
            input_type=_BATCHGETDOCUMENTSREQUEST,
            output_type=_BATCHGETDOCUMENTSRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002="8/v1/{database=projects/*/databases/*}/documents:batchGet:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="BeginTransaction",
            full_name="google.firestore.v1.Firestore.BeginTransaction",
            index=6,
            containing_service=None,
            input_type=_BEGINTRANSACTIONREQUEST,
            output_type=_BEGINTRANSACTIONRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002E"@/v1/{database=projects/*/databases/*}/documents:beginTransaction:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="Commit",
            full_name="google.firestore.v1.Firestore.Commit",
            index=7,
            containing_service=None,
            input_type=_COMMITREQUEST,
            output_type=_COMMITRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002;"6/v1/{database=projects/*/databases/*}/documents:commit:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="Rollback",
            full_name="google.firestore.v1.Firestore.Rollback",
            index=8,
            containing_service=None,
            input_type=_ROLLBACKREQUEST,
            output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
            serialized_options=_b(
                '\202\323\344\223\002="8/v1/{database=projects/*/databases/*}/documents:rollback:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="RunQuery",
            full_name="google.firestore.v1.Firestore.RunQuery",
            index=9,
            containing_service=None,
            input_type=_RUNQUERYREQUEST,
            output_type=_RUNQUERYRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002}"6/v1/{parent=projects/*/databases/*/documents}:runQuery:\001*Z@";/v1/{parent=projects/*/databases/*/documents/*/**}:runQuery:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="Write",
            full_name="google.firestore.v1.Firestore.Write",
            index=10,
            containing_service=None,
            input_type=_WRITEREQUEST,
            output_type=_WRITERESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002:"5/v1/{database=projects/*/databases/*}/documents:write:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="Listen",
            full_name="google.firestore.v1.Firestore.Listen",
            index=11,
            containing_service=None,
            input_type=_LISTENREQUEST,
            output_type=_LISTENRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002;"6/v1/{database=projects/*/databases/*}/documents:listen:\001*'
            ),
        ),
        _descriptor.MethodDescriptor(
            name="ListCollectionIds",
            full_name="google.firestore.v1.Firestore.ListCollectionIds",
            index=12,
            containing_service=None,
            input_type=_LISTCOLLECTIONIDSREQUEST,
            output_type=_LISTCOLLECTIONIDSRESPONSE,
            serialized_options=_b(
                '\202\323\344\223\002\217\001"?/v1/{parent=projects/*/databases/*/documents}:listCollectionIds:\001*ZI"D/v1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds:\001*'
            ),
        ),
    ],
)
_sym_db.RegisterServiceDescriptor(_FIRESTORE)

DESCRIPTOR.services_by_name["Firestore"] = _FIRESTORE

# @@protoc_insertion_point(module_scope)
