# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/firestore_v1beta1/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
from google.protobuf import descriptor_pb2
# @@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_v1beta1.proto import common_pb2 as google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2
from google.cloud.firestore_v1beta1.proto import document_pb2 as google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2
from google.cloud.firestore_v1beta1.proto import query_pb2 as google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_query__pb2
from google.cloud.firestore_v1beta1.proto import write_pb2 as google_dot_cloud_dot_firestore__v1beta1_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


DESCRIPTOR = _descriptor.FileDescriptor(
  name='google/cloud/firestore_v1beta1/proto/firestore.proto',
  package='google.firestore.v1beta1',
  syntax='proto3',
  serialized_pb=_b('\n4google/cloud/firestore_v1beta1/proto/firestore.proto\x12\x18google.firestore.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x31google/cloud/firestore_v1beta1/proto/common.proto\x1a\x33google/cloud/firestore_v1beta1/proto/document.proto\x1a\x30google/cloud/firestore_v1beta1/proto/query.proto\x1a\x30google/cloud/firestore_v1beta1/proto/write.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\xb8\x01\n\x12GetDocumentRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x34\n\x04mask\x18\x02 \x01(\x0b\x32&.google.firestore.v1beta1.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\"\xa2\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\x34\n\x04mask\x18\x07 \x01(\x0b\x32&.google.firestore.v1beta1.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\"g\n\x15ListDocumentsResponse\x12\x35\n\tdocuments\x18\x01 \x03(\x0b\x32\".google.firestore.v1beta1.Document\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xbf\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\x34\n\x08\x64ocument\x18\x04 \x01(\x0b\x32\".google.firestore.v1beta1.Document\x12\x34\n\x04mask\x18\x05 \x01(\x0b\x32&.google.firestore.v1beta1.DocumentMask\"\x82\x02\n\x15UpdateDocumentRequest\x12\x34\n\x08\x64ocument\x18\x01 \x01(\x0b\x32\".google.firestore.v1beta1.Document\x12;\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32&.google.firestore.v1beta1.DocumentMask\x12\x34\n\x04mask\x18\x03 \x01(\x0b\x32&.google.firestore.v1beta1.DocumentMask\x12@\n\x10\x63urrent_document\x18\x04 \x01(\x0b\x32&.google.firestore.v1beta1.Precondition\"g\n\x15\x44\x65leteDocumentRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12@\n\x10\x63urrent_document\x18\x02 \x01(\x0b\x32&.google.firestore.v1beta1.Precondition\"\x9e\x02\n\x18\x42\x61tchGetDocumentsRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x11\n\tdocuments\x18\x02 \x03(\t\x12\x34\n\x04mask\x18\x03 \x01(\x0b\x32&.google.firestore.v1beta1.DocumentMask\x12\x15\n\x0btransaction\x18\x04 \x01(\x0cH\x00\x12G\n\x0fnew_transaction\x18\x05 \x01(\x0b\x32,.google.firestore.v1beta1.TransactionOptionsH\x00\x12/\n\tread_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x42\x16\n\x14\x63onsistency_selector\"\xb1\x01\n\x19\x42\x61tchGetDocumentsResponse\x12\x33\n\x05\x66ound\x18\x01 \x01(\x0b\x32\".google.firestore.v1beta1.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\"j\n\x17\x42\x65ginTransactionRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12=\n\x07options\x18\x02 \x01(\x0b\x32,.google.firestore.v1beta1.TransactionOptions\"/\n\x18\x42\x65ginTransactionResponse\x12\x13\n\x0btransaction\x18\x01 \x01(\x0c\"g\n\rCommitRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12/\n\x06writes\x18\x02 \x03(\x0b\x32\x1f.google.firestore.v1beta1.Write\x12\x13\n\x0btransaction\x18\x03 \x01(\x0c\"\x7f\n\x0e\x43ommitResponse\x12<\n\rwrite_results\x18\x01 \x03(\x0b\x32%.google.firestore.v1beta1.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\"\x9f\x02\n\x0fRunQueryRequest\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x45\n\x10structured_query\x18\x02 \x01(\x0b\x32).google.firestore.v1beta1.StructuredQueryH\x00\x12\x15\n\x0btransaction\x18\x05 \x01(\x0cH\x01\x12G\n\x0fnew_transaction\x18\x06 \x01(\x0b\x32,.google.firestore.v1beta1.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\"\xa5\x01\n\x10RunQueryResponse\x12\x13\n\x0btransaction\x18\x02 \x01(\x0c\x12\x34\n\x08\x64ocument\x18\x01 \x01(\x0b\x32\".google.firestore.v1beta1.Document\x12-\n\tread_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\x0fskipped_results\x18\x04 \x01(\x05\"\xed\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\x1f.google.firestore.v1beta1.Write\x12\x14\n\x0cstream_token\x18\x04 \x01(\x0c\x12\x42\n\x06labels\x18\x05 \x03(\x0b\x32\x32.google.firestore.v1beta1.WriteRequest.LabelsEntry\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa7\x01\n\rWriteResponse\x12\x11\n\tstream_id\x18\x01 \x01(\t\x12\x14\n\x0cstream_token\x18\x02 \x01(\x0c\x12<\n\rwrite_results\x18\x03 \x03(\x0b\x32%.google.firestore.v1beta1.WriteResult\x12/\n\x0b\x63ommit_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xf7\x01\n\rListenRequest\x12\x10\n\x08\x64\x61tabase\x18\x01 \x01(\t\x12\x36\n\nadd_target\x18\x02 \x01(\x0b\x32 .google.firestore.v1beta1.TargetH\x00\x12\x17\n\rremove_target\x18\x03 \x01(\x05H\x00\x12\x43\n\x06labels\x18\x04 \x03(\x0b\x32\x33.google.firestore.v1beta1.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\"\xee\x02\n\x0eListenResponse\x12?\n\rtarget_change\x18\x02 \x01(\x0b\x32&.google.firestore.v1beta1.TargetChangeH\x00\x12\x43\n\x0f\x64ocument_change\x18\x03 \x01(\x0b\x32(.google.firestore.v1beta1.DocumentChangeH\x00\x12\x43\n\x0f\x64ocument_delete\x18\x04 \x01(\x0b\x32(.google.firestore.v1beta1.DocumentDeleteH\x00\x12\x43\n\x0f\x64ocument_remove\x18\x06 \x01(\x0b\x32(.google.firestore.v1beta1.DocumentRemoveH\x00\x12;\n\x06\x66ilter\x18\x05 \x01(\x0b\x32).google.firestore.v1beta1.ExistenceFilterH\x00\x42\x0f\n\rresponse_type\"\xb0\x03\n\x06Target\x12=\n\x05query\x18\x02 \x01(\x0b\x32,.google.firestore.v1beta1.Target.QueryTargetH\x00\x12\x45\n\tdocuments\x18\x03 \x01(\x0b\x32\x30.google.firestore.v1beta1.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\x1ar\n\x0bQueryTarget\x12\x0e\n\x06parent\x18\x01 \x01(\t\x12\x45\n\x10structured_query\x18\x02 \x01(\x0b\x32).google.firestore.v1beta1.StructuredQueryH\x00\x42\x0c\n\nquery_typeB\r\n\x0btarget_typeB\r\n\x0bresume_type\"\xaf\x02\n\x0cTargetChange\x12S\n\x12target_change_type\x18\x01 \x01(\x0e\x32\x37.google.firestore.v1beta1.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\xad\x12\n\tFirestore\x12\x9e\x01\n\x0bGetDocument\x12,.google.firestore.v1beta1.GetDocumentRequest\x1a\".google.firestore.v1beta1.Document\"=\x82\xd3\xe4\x93\x02\x37\x12\x35/v1beta1/{name=projects/*/databases/*/documents/*/**}\x12\xc1\x01\n\rListDocuments\x12..google.firestore.v1beta1.ListDocumentsRequest\x1a/.google.firestore.v1beta1.ListDocumentsResponse\"O\x82\xd3\xe4\x93\x02I\x12G/v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}\x12\xbe\x01\n\x0e\x43reateDocument\x12/.google.firestore.v1beta1.CreateDocumentRequest\x1a\".google.firestore.v1beta1.Document\"W\x82\xd3\xe4\x93\x02Q\"E/v1beta1/{parent=projects/*/databases/*/documents/**}/{collection_id}:\x08\x64ocument\x12\xb7\x01\n\x0eUpdateDocument\x12/.google.firestore.v1beta1.UpdateDocumentRequest\x1a\".google.firestore.v1beta1.Document\"P\x82\xd3\xe4\x93\x02J2>/v1beta1/{document.name=projects/*/databases/*/documents/*/**}:\x08\x64ocument\x12\x98\x01\n\x0e\x44\x65leteDocument\x12/.google.firestore.v1beta1.DeleteDocumentRequest\x1a\x16.google.protobuf.Empty\"=\x82\xd3\xe4\x93\x02\x37*5/v1beta1/{name=projects/*/databases/*/documents/*/**}\x12\xc8\x01\n\x11\x42\x61tchGetDocuments\x12\x32.google.firestore.v1beta1.BatchGetDocumentsRequest\x1a\x33.google.firestore.v1beta1.BatchGetDocumentsResponse\"H\x82\xd3\xe4\x93\x02\x42\"=/v1beta1/{database=projects/*/databases/*}/documents:batchGet:\x01*0\x01\x12\xcb\x01\n\x10\x42\x65ginTransaction\x12\x31.google.firestore.v1beta1.BeginTransactionRequest\x1a\x32.google.firestore.v1beta1.BeginTransactionResponse\"P\x82\xd3\xe4\x93\x02J\"E/v1beta1/{database=projects/*/databases/*}/documents:beginTransaction:\x01*\x12\xa3\x01\n\x06\x43ommit\x12\'.google.firestore.v1beta1.CommitRequest\x1a(.google.firestore.v1beta1.CommitResponse\"F\x82\xd3\xe4\x93\x02@\";/v1beta1/{database=projects/*/databases/*}/documents:commit:\x01*\x12\x97\x01\n\x08Rollback\x12).google.firestore.v1beta1.RollbackRequest\x1a\x16.google.protobuf.Empty\"H\x82\xd3\xe4\x93\x02\x42\"=/v1beta1/{database=projects/*/databases/*}/documents:rollback:\x01*\x12\xab\x01\n\x08RunQuery\x12).google.firestore.v1beta1.RunQueryRequest\x1a*.google.firestore.v1beta1.RunQueryResponse\"F\x82\xd3\xe4\x93\x02@\";/v1beta1/{parent=projects/*/databases/*/documents}:runQuery:\x01*0\x01\x12\xa3\x01\n\x05Write\x12&.google.firestore.v1beta1.WriteRequest\x1a\'.google.firestore.v1beta1.WriteResponse\"E\x82\xd3\xe4\x93\x02?\":/v1beta1/{database=projects/*/databases/*}/documents:write:\x01*(\x01\x30\x01\x12\xa7\x01\n\x06Listen\x12\'.google.firestore.v1beta1.ListenRequest\x1a(.google.firestore.v1beta1.ListenResponse\"F\x82\xd3\xe4\x93\x02@\";/v1beta1/{database=projects/*/databases/*}/documents:listen:\x01*(\x01\x30\x01\x12\xcd\x01\n\x11ListCollectionIds\x12\x32.google.firestore.v1beta1.ListCollectionIdsRequest\x1a\x33.google.firestore.v1beta1.ListCollectionIdsResponse\"O\x82\xd3\xe4\x93\x02I\"D/v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds:\x01*B\x9b\x01\n\x1c\x63om.google.firestore.v1beta1B\x0e\x46irestoreProtoP\x01ZAgoogle.golang.org/genproto/googleapis/firestore/v1beta1;firestore\xa2\x02\x04GCFS\xaa\x02\x1eGoogle.Cloud.Firestore.V1Beta1b\x06proto3')
  ,
  dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2.DESCRIPTOR,google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.DESCRIPTOR,google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_query__pb2.DESCRIPTOR,google_dot_cloud_dot_firestore__v1beta1_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,])



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


_GETDOCUMENTREQUEST = _descriptor.Descriptor(
  name='GetDocumentRequest',
  full_name='google.firestore.v1beta1.GetDocumentRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='mask', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='consistency_selector', full_name='google.firestore.v1beta1.GetDocumentRequest.consistency_selector',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=404,
  serialized_end=588,
)


_LISTDOCUMENTSREQUEST = _descriptor.Descriptor(
  name='ListDocumentsRequest',
  full_name='google.firestore.v1beta1.ListDocumentsRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='parent', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='collection_id', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='page_size', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='page_token', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='order_by', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='mask', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='show_missing', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='consistency_selector', full_name='google.firestore.v1beta1.ListDocumentsRequest.consistency_selector',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=591,
  serialized_end=881,
)


_LISTDOCUMENTSRESPONSE = _descriptor.Descriptor(
  name='ListDocumentsResponse',
  full_name='google.firestore.v1beta1.ListDocumentsResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='documents', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='next_page_token', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=883,
  serialized_end=986,
)


_CREATEDOCUMENTREQUEST = _descriptor.Descriptor(
  name='CreateDocumentRequest',
  full_name='google.firestore.v1beta1.CreateDocumentRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='parent', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='collection_id', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='document_id', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='document', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='mask', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=989,
  serialized_end=1180,
)


_UPDATEDOCUMENTREQUEST = _descriptor.Descriptor(
  name='UpdateDocumentRequest',
  full_name='google.firestore.v1beta1.UpdateDocumentRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='document', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='update_mask', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='mask', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='current_document', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1183,
  serialized_end=1441,
)


_DELETEDOCUMENTREQUEST = _descriptor.Descriptor(
  name='DeleteDocumentRequest',
  full_name='google.firestore.v1beta1.DeleteDocumentRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='current_document', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1443,
  serialized_end=1546,
)


_BATCHGETDOCUMENTSREQUEST = _descriptor.Descriptor(
  name='BatchGetDocumentsRequest',
  full_name='google.firestore.v1beta1.BatchGetDocumentsRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='database', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='documents', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='mask', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='new_transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='consistency_selector', full_name='google.firestore.v1beta1.BatchGetDocumentsRequest.consistency_selector',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=1549,
  serialized_end=1835,
)


_BATCHGETDOCUMENTSRESPONSE = _descriptor.Descriptor(
  name='BatchGetDocumentsResponse',
  full_name='google.firestore.v1beta1.BatchGetDocumentsResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='found', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='missing', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='result', full_name='google.firestore.v1beta1.BatchGetDocumentsResponse.result',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=1838,
  serialized_end=2015,
)


_BEGINTRANSACTIONREQUEST = _descriptor.Descriptor(
  name='BeginTransactionRequest',
  full_name='google.firestore.v1beta1.BeginTransactionRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='database', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='options', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2017,
  serialized_end=2123,
)


_BEGINTRANSACTIONRESPONSE = _descriptor.Descriptor(
  name='BeginTransactionResponse',
  full_name='google.firestore.v1beta1.BeginTransactionResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2125,
  serialized_end=2172,
)


_COMMITREQUEST = _descriptor.Descriptor(
  name='CommitRequest',
  full_name='google.firestore.v1beta1.CommitRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='database', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='writes', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2174,
  serialized_end=2277,
)


_COMMITRESPONSE = _descriptor.Descriptor(
  name='CommitResponse',
  full_name='google.firestore.v1beta1.CommitResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='write_results', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='commit_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2279,
  serialized_end=2406,
)


_ROLLBACKREQUEST = _descriptor.Descriptor(
  name='RollbackRequest',
  full_name='google.firestore.v1beta1.RollbackRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='database', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2408,
  serialized_end=2464,
)


_RUNQUERYREQUEST = _descriptor.Descriptor(
  name='RunQueryRequest',
  full_name='google.firestore.v1beta1.RunQueryRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='parent', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='structured_query', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='new_transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='query_type', full_name='google.firestore.v1beta1.RunQueryRequest.query_type',
      index=0, containing_type=None, fields=[]),
    _descriptor.OneofDescriptor(
      name='consistency_selector', full_name='google.firestore.v1beta1.RunQueryRequest.consistency_selector',
      index=1, containing_type=None, fields=[]),
  ],
  serialized_start=2467,
  serialized_end=2754,
)


_RUNQUERYRESPONSE = _descriptor.Descriptor(
  name='RunQueryResponse',
  full_name='google.firestore.v1beta1.RunQueryResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='transaction', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='document', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='skipped_results', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2757,
  serialized_end=2922,
)


_WRITEREQUEST_LABELSENTRY = _descriptor.Descriptor(
  name='LabelsEntry',
  full_name='google.firestore.v1beta1.WriteRequest.LabelsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3117,
  serialized_end=3162,
)

_WRITEREQUEST = _descriptor.Descriptor(
  name='WriteRequest',
  full_name='google.firestore.v1beta1.WriteRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='database', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='stream_id', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='writes', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='stream_token', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='labels', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_WRITEREQUEST_LABELSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2925,
  serialized_end=3162,
)


_WRITERESPONSE = _descriptor.Descriptor(
  name='WriteResponse',
  full_name='google.firestore.v1beta1.WriteResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='stream_id', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='stream_token', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='write_results', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='commit_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3165,
  serialized_end=3332,
)


_LISTENREQUEST_LABELSENTRY = _descriptor.Descriptor(
  name='LabelsEntry',
  full_name='google.firestore.v1beta1.ListenRequest.LabelsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3117,
  serialized_end=3162,
)

_LISTENREQUEST = _descriptor.Descriptor(
  name='ListenRequest',
  full_name='google.firestore.v1beta1.ListenRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='database', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='add_target', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='remove_target', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='labels', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_LISTENREQUEST_LABELSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='target_change', full_name='google.firestore.v1beta1.ListenRequest.target_change',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=3335,
  serialized_end=3582,
)


_LISTENRESPONSE = _descriptor.Descriptor(
  name='ListenResponse',
  full_name='google.firestore.v1beta1.ListenResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='target_change', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='document_change', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='document_delete', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='document_remove', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='filter', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='response_type', full_name='google.firestore.v1beta1.ListenResponse.response_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=3585,
  serialized_end=3951,
)


_TARGET_DOCUMENTSTARGET = _descriptor.Descriptor(
  name='DocumentsTarget',
  full_name='google.firestore.v1beta1.Target.DocumentsTarget',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='documents', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4204,
  serialized_end=4240,
)

_TARGET_QUERYTARGET = _descriptor.Descriptor(
  name='QueryTarget',
  full_name='google.firestore.v1beta1.Target.QueryTarget',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='parent', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='structured_query', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='query_type', full_name='google.firestore.v1beta1.Target.QueryTarget.query_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=4242,
  serialized_end=4356,
)

_TARGET = _descriptor.Descriptor(
  name='Target',
  full_name='google.firestore.v1beta1.Target',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='query', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='documents', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='resume_token', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='target_id', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='once', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_TARGET_DOCUMENTSTARGET, _TARGET_QUERYTARGET, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='target_type', full_name='google.firestore.v1beta1.Target.target_type',
      index=0, containing_type=None, fields=[]),
    _descriptor.OneofDescriptor(
      name='resume_type', full_name='google.firestore.v1beta1.Target.resume_type',
      index=1, containing_type=None, fields=[]),
  ],
  serialized_start=3954,
  serialized_end=4386,
)


_TARGETCHANGE = _descriptor.Descriptor(
  name='TargetChange',
  full_name='google.firestore.v1beta1.TargetChange',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='target_change_type', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='target_ids', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='cause', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='resume_token', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='read_time', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _TARGETCHANGE_TARGETCHANGETYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4389,
  serialized_end=4692,
)


_LISTCOLLECTIONIDSREQUEST = _descriptor.Descriptor(
  name='ListCollectionIdsRequest',
  full_name='google.firestore.v1beta1.ListCollectionIdsRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='parent', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='page_size', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='page_token', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4694,
  serialized_end=4775,
)


_LISTCOLLECTIONIDSRESPONSE = _descriptor.Descriptor(
  name='ListCollectionIdsResponse',
  full_name='google.firestore.v1beta1.ListCollectionIdsResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='collection_ids', full_name='google.firestore.v1beta1.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,
      options=None),
    _descriptor.FieldDescriptor(
      name='next_page_token', full_name='google.firestore.v1beta1.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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4777,
  serialized_end=4853,
)

_GETDOCUMENTREQUEST.fields_by_name['mask'].message_type = google_dot_cloud_dot_firestore__v1beta1_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__v1beta1_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__v1beta1_dot_proto_dot_document__pb2._DOCUMENT
_CREATEDOCUMENTREQUEST.fields_by_name['document'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2._DOCUMENT
_CREATEDOCUMENTREQUEST.fields_by_name['mask'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2._DOCUMENTMASK
_UPDATEDOCUMENTREQUEST.fields_by_name['document'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2._DOCUMENT
_UPDATEDOCUMENTREQUEST.fields_by_name['update_mask'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2._DOCUMENTMASK
_UPDATEDOCUMENTREQUEST.fields_by_name['mask'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2._DOCUMENTMASK
_UPDATEDOCUMENTREQUEST.fields_by_name['current_document'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2._PRECONDITION
_DELETEDOCUMENTREQUEST.fields_by_name['current_document'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2._PRECONDITION
_BATCHGETDOCUMENTSREQUEST.fields_by_name['mask'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_common__pb2._DOCUMENTMASK
_BATCHGETDOCUMENTSREQUEST.fields_by_name['new_transaction'].message_type = google_dot_cloud_dot_firestore__v1beta1_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__v1beta1_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__v1beta1_dot_proto_dot_common__pb2._TRANSACTIONOPTIONS
_COMMITREQUEST.fields_by_name['writes'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_write__pb2._WRITE
_COMMITRESPONSE.fields_by_name['write_results'].message_type = google_dot_cloud_dot_firestore__v1beta1_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__v1beta1_dot_proto_dot_query__pb2._STRUCTUREDQUERY
_RUNQUERYREQUEST.fields_by_name['new_transaction'].message_type = google_dot_cloud_dot_firestore__v1beta1_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__v1beta1_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__v1beta1_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__v1beta1_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__v1beta1_dot_proto_dot_write__pb2._DOCUMENTCHANGE
_LISTENRESPONSE.fields_by_name['document_delete'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_write__pb2._DOCUMENTDELETE
_LISTENRESPONSE.fields_by_name['document_remove'].message_type = google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_write__pb2._DOCUMENTREMOVE
_LISTENRESPONSE.fields_by_name['filter'].message_type = google_dot_cloud_dot_firestore__v1beta1_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__v1beta1_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_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.GetDocument][google.firestore.v1beta1.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.v1beta1.GetDocumentRequest)
  ))
_sym_db.RegisterMessage(GetDocumentRequest)

ListDocumentsRequest = _reflection.GeneratedProtocolMessageType('ListDocumentsRequest', (_message.Message,), dict(
  DESCRIPTOR = _LISTDOCUMENTSREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.ListDocuments][google.firestore.v1beta1.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.v1beta1.Docum
          ent.create\_time], or [Document.update\_time][google.firestore
          .v1beta1.Document.update\_time] set.  Requests with
          ``show_missing`` may not specify ``where`` or ``order_by``.
  """,
  # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.ListDocumentsRequest)
  ))
_sym_db.RegisterMessage(ListDocumentsRequest)

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

CreateDocumentRequest = _reflection.GeneratedProtocolMessageType('CreateDocumentRequest', (_message.Message,), dict(
  DESCRIPTOR = _CREATEDOCUMENTREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.CreateDocument][google.firestore.v1beta1.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.v1beta1.CreateDocumentRequest)
  ))
_sym_db.RegisterMessage(CreateDocumentRequest)

UpdateDocumentRequest = _reflection.GeneratedProtocolMessageType('UpdateDocumentRequest', (_message.Message,), dict(
  DESCRIPTOR = _UPDATEDOCUMENTREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.UpdateDocument][google.firestore.v1beta1.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.v1beta1.UpdateDocumentRequest)
  ))
_sym_db.RegisterMessage(UpdateDocumentRequest)

DeleteDocumentRequest = _reflection.GeneratedProtocolMessageType('DeleteDocumentRequest', (_message.Message,), dict(
  DESCRIPTOR = _DELETEDOCUMENTREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.DeleteDocument][google.firestore.v1beta1.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.v1beta1.DeleteDocumentRequest)
  ))
_sym_db.RegisterMessage(DeleteDocumentRequest)

BatchGetDocumentsRequest = _reflection.GeneratedProtocolMessageType('BatchGetDocumentsRequest', (_message.Message,), dict(
  DESCRIPTOR = _BATCHGETDOCUMENTSREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.BatchGetDocuments][google.firestore.v1beta1.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.v1beta1.BatchGetDocumentsRequest)
  ))
_sym_db.RegisterMessage(BatchGetDocumentsRequest)

BatchGetDocumentsResponse = _reflection.GeneratedProtocolMessageType('BatchGetDocumentsResponse', (_message.Message,), dict(
  DESCRIPTOR = _BATCHGETDOCUMENTSRESPONSE,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The streamed response for
  [Firestore.BatchGetDocuments][google.firestore.v1beta1.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.v1beta1.BatchGet
          DocumentsRequest.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.v1beta1.BatchGetDocumentsResponse)
  ))
_sym_db.RegisterMessage(BatchGetDocumentsResponse)

BeginTransactionRequest = _reflection.GeneratedProtocolMessageType('BeginTransactionRequest', (_message.Message,), dict(
  DESCRIPTOR = _BEGINTRANSACTIONREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.BeginTransaction][google.firestore.v1beta1.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.v1beta1.BeginTransactionRequest)
  ))
_sym_db.RegisterMessage(BeginTransactionRequest)

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

CommitRequest = _reflection.GeneratedProtocolMessageType('CommitRequest', (_message.Message,), dict(
  DESCRIPTOR = _COMMITREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.Commit][google.firestore.v1beta1.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.v1beta1.CommitRequest)
  ))
_sym_db.RegisterMessage(CommitRequest)

CommitResponse = _reflection.GeneratedProtocolMessageType('CommitResponse', (_message.Message,), dict(
  DESCRIPTOR = _COMMITRESPONSE,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The response for
  [Firestore.Commit][google.firestore.v1beta1.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.v1beta1.CommitResponse)
  ))
_sym_db.RegisterMessage(CommitResponse)

RollbackRequest = _reflection.GeneratedProtocolMessageType('RollbackRequest', (_message.Message,), dict(
  DESCRIPTOR = _ROLLBACKREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.Rollback][google.firestore.v1beta1.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.v1beta1.RollbackRequest)
  ))
_sym_db.RegisterMessage(RollbackRequest)

RunQueryRequest = _reflection.GeneratedProtocolMessageType('RunQueryRequest', (_message.Message,), dict(
  DESCRIPTOR = _RUNQUERYREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.RunQuery][google.firestore.v1beta1.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.v1beta1.RunQueryRequest)
  ))
_sym_db.RegisterMessage(RunQueryRequest)

RunQueryResponse = _reflection.GeneratedProtocolMessageType('RunQueryResponse', (_message.Message,), dict(
  DESCRIPTOR = _RUNQUERYRESPONSE,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The response for
  [Firestore.RunQuery][google.firestore.v1beta1.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.v1beta1.RunQueryRequest.n
          ew\_transaction] 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.v1beta1.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_v1beta1.proto.firestore_pb2'
    # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.WriteRequest.LabelsEntry)
    ))
  ,
  DESCRIPTOR = _WRITEREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.Write][google.firestore.v1beta1.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.v1beta1.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.v1beta1.WriteRequest)
  ))
_sym_db.RegisterMessage(WriteRequest)
_sym_db.RegisterMessage(WriteRequest.LabelsEntry)

WriteResponse = _reflection.GeneratedProtocolMessageType('WriteResponse', (_message.Message,), dict(
  DESCRIPTOR = _WRITERESPONSE,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The response for
  [Firestore.Write][google.firestore.v1beta1.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.v1beta1.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_v1beta1.proto.firestore_pb2'
    # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.ListenRequest.LabelsEntry)
    ))
  ,
  DESCRIPTOR = _LISTENREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """A request for
  [Firestore.Listen][google.firestore.v1beta1.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.v1beta1.ListenRequest)
  ))
_sym_db.RegisterMessage(ListenRequest)
_sym_db.RegisterMessage(ListenRequest.LabelsEntry)

ListenResponse = _reflection.GeneratedProtocolMessageType('ListenResponse', (_message.Message,), dict(
  DESCRIPTOR = _LISTENRESPONSE,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The response for
  [Firestore.Listen][google.firestore.v1beta1.Firestore.Listen].
  
  
  Attributes:
      response_type:
          The supported responses.
      target_change:
          Targets have changed.
      document_change:
          A [Document][google.firestore.v1beta1.Document] has changed.
      document_delete:
          A [Document][google.firestore.v1beta1.Document] has been
          deleted.
      document_remove:
          A [Document][google.firestore.v1beta1.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.v1beta1.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_v1beta1.proto.firestore_pb2'
    ,
    __doc__ = """A target specified by a set of documents names.
    """,
    # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.Target.DocumentsTarget)
    ))
  ,

  QueryTarget = _reflection.GeneratedProtocolMessageType('QueryTarget', (_message.Message,), dict(
    DESCRIPTOR = _TARGET_QUERYTARGET,
    __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
    ,
    __doc__ = """A target specified by a query.
    """,
    # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.Target.QueryTarget)
    ))
  ,
  DESCRIPTOR = _TARGET,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """A specification of a set of documents to listen to.
  
  
  Attributes:
      documents:
          A target specified by a set of document names.
      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.
      target_type:
          The type of target to listen to.
      query:
          A target specified by a query.
      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.v1beta1.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:
          A client provided target ID.  If not set, the server will
          assign an ID for the target.  Used for resuming a target
          without changing IDs. The IDs can either be client-assigned or
          be server-assigned in a previous stream. All targets with
          client provided IDs must be added before adding a target that
          needs a server-assigned id.
      once:
          If the target should be removed once it is current and
          consistent.
  """,
  # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.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_v1beta1.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.  For
          ``target_change_type=ADD``, the order of the target IDs
          matches the order of the requests to add the targets. This
          allows clients to unambiguously associate server-assigned
          target IDs with added targets.  For other states, 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.v1beta1.TargetChange)
  ))
_sym_db.RegisterMessage(TargetChange)

ListCollectionIdsRequest = _reflection.GeneratedProtocolMessageType('ListCollectionIdsRequest', (_message.Message,), dict(
  DESCRIPTOR = _LISTCOLLECTIONIDSREQUEST,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The request for
  [Firestore.ListCollectionIds][google.firestore.v1beta1.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.v1beta1.ListCollectionIdsResponse].
  """,
  # @@protoc_insertion_point(class_scope:google.firestore.v1beta1.ListCollectionIdsRequest)
  ))
_sym_db.RegisterMessage(ListCollectionIdsRequest)

ListCollectionIdsResponse = _reflection.GeneratedProtocolMessageType('ListCollectionIdsResponse', (_message.Message,), dict(
  DESCRIPTOR = _LISTCOLLECTIONIDSRESPONSE,
  __module__ = 'google.cloud.firestore_v1beta1.proto.firestore_pb2'
  ,
  __doc__ = """The response from
  [Firestore.ListCollectionIds][google.firestore.v1beta1.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.v1beta1.ListCollectionIdsResponse)
  ))
_sym_db.RegisterMessage(ListCollectionIdsResponse)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\034com.google.firestore.v1beta1B\016FirestoreProtoP\001ZAgoogle.golang.org/genproto/googleapis/firestore/v1beta1;firestore\242\002\004GCFS\252\002\036Google.Cloud.Firestore.V1Beta1'))
_WRITEREQUEST_LABELSENTRY.has_options = True
_WRITEREQUEST_LABELSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_LISTENREQUEST_LABELSENTRY.has_options = True
_LISTENREQUEST_LABELSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))

_FIRESTORE = _descriptor.ServiceDescriptor(
  name='Firestore',
  full_name='google.firestore.v1beta1.Firestore',
  file=DESCRIPTOR,
  index=0,
  options=None,
  serialized_start=4856,
  serialized_end=7205,
  methods=[
  _descriptor.MethodDescriptor(
    name='GetDocument',
    full_name='google.firestore.v1beta1.Firestore.GetDocument',
    index=0,
    containing_service=None,
    input_type=_GETDOCUMENTREQUEST,
    output_type=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2._DOCUMENT,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027\0225/v1beta1/{name=projects/*/databases/*/documents/*/**}')),
  ),
  _descriptor.MethodDescriptor(
    name='ListDocuments',
    full_name='google.firestore.v1beta1.Firestore.ListDocuments',
    index=1,
    containing_service=None,
    input_type=_LISTDOCUMENTSREQUEST,
    output_type=_LISTDOCUMENTSRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002I\022G/v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}')),
  ),
  _descriptor.MethodDescriptor(
    name='CreateDocument',
    full_name='google.firestore.v1beta1.Firestore.CreateDocument',
    index=2,
    containing_service=None,
    input_type=_CREATEDOCUMENTREQUEST,
    output_type=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2._DOCUMENT,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002Q\"E/v1beta1/{parent=projects/*/databases/*/documents/**}/{collection_id}:\010document')),
  ),
  _descriptor.MethodDescriptor(
    name='UpdateDocument',
    full_name='google.firestore.v1beta1.Firestore.UpdateDocument',
    index=3,
    containing_service=None,
    input_type=_UPDATEDOCUMENTREQUEST,
    output_type=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2._DOCUMENT,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002J2>/v1beta1/{document.name=projects/*/databases/*/documents/*/**}:\010document')),
  ),
  _descriptor.MethodDescriptor(
    name='DeleteDocument',
    full_name='google.firestore.v1beta1.Firestore.DeleteDocument',
    index=4,
    containing_service=None,
    input_type=_DELETEDOCUMENTREQUEST,
    output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\0027*5/v1beta1/{name=projects/*/databases/*/documents/*/**}')),
  ),
  _descriptor.MethodDescriptor(
    name='BatchGetDocuments',
    full_name='google.firestore.v1beta1.Firestore.BatchGetDocuments',
    index=5,
    containing_service=None,
    input_type=_BATCHGETDOCUMENTSREQUEST,
    output_type=_BATCHGETDOCUMENTSRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002B\"=/v1beta1/{database=projects/*/databases/*}/documents:batchGet:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='BeginTransaction',
    full_name='google.firestore.v1beta1.Firestore.BeginTransaction',
    index=6,
    containing_service=None,
    input_type=_BEGINTRANSACTIONREQUEST,
    output_type=_BEGINTRANSACTIONRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002J\"E/v1beta1/{database=projects/*/databases/*}/documents:beginTransaction:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='Commit',
    full_name='google.firestore.v1beta1.Firestore.Commit',
    index=7,
    containing_service=None,
    input_type=_COMMITREQUEST,
    output_type=_COMMITRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002@\";/v1beta1/{database=projects/*/databases/*}/documents:commit:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='Rollback',
    full_name='google.firestore.v1beta1.Firestore.Rollback',
    index=8,
    containing_service=None,
    input_type=_ROLLBACKREQUEST,
    output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002B\"=/v1beta1/{database=projects/*/databases/*}/documents:rollback:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='RunQuery',
    full_name='google.firestore.v1beta1.Firestore.RunQuery',
    index=9,
    containing_service=None,
    input_type=_RUNQUERYREQUEST,
    output_type=_RUNQUERYRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002@\";/v1beta1/{parent=projects/*/databases/*/documents}:runQuery:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='Write',
    full_name='google.firestore.v1beta1.Firestore.Write',
    index=10,
    containing_service=None,
    input_type=_WRITEREQUEST,
    output_type=_WRITERESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002?\":/v1beta1/{database=projects/*/databases/*}/documents:write:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='Listen',
    full_name='google.firestore.v1beta1.Firestore.Listen',
    index=11,
    containing_service=None,
    input_type=_LISTENREQUEST,
    output_type=_LISTENRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002@\";/v1beta1/{database=projects/*/databases/*}/documents:listen:\001*')),
  ),
  _descriptor.MethodDescriptor(
    name='ListCollectionIds',
    full_name='google.firestore.v1beta1.Firestore.ListCollectionIds',
    index=12,
    containing_service=None,
    input_type=_LISTCOLLECTIONIDSREQUEST,
    output_type=_LISTCOLLECTIONIDSRESPONSE,
    options=_descriptor._ParseOptions(descriptor_pb2.MethodOptions(), _b('\202\323\344\223\002I\"D/v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds:\001*')),
  ),
])
_sym_db.RegisterServiceDescriptor(_FIRESTORE)

DESCRIPTOR.services_by_name['Firestore'] = _FIRESTORE

try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities


  class FirestoreStub(object):
    """Specification of the Firestore API.

    The Cloud Firestore service.

    This service exposes several types of comparable timestamps:

    *    `create_time` - The time at which a document was created. Changes only
    when a document is deleted, then re-created. Increases in a strict
    monotonic fashion.
    *    `update_time` - The time at which a document was last updated. Changes
    every time a document is modified. Does not change when a write results
    in no modifications. Increases in a strict monotonic fashion.
    *    `read_time` - The time at which a particular state was observed. Used
    to denote a consistent snapshot of the database or the time at which a
    Document was observed to not exist.
    *    `commit_time` - The time at which the writes in a transaction were
    committed. Any read with an equal or greater `read_time` is guaranteed
    to see the effects of the transaction.
    """

    def __init__(self, channel):
      """Constructor.

      Args:
        channel: A grpc.Channel.
      """
      self.GetDocument = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/GetDocument',
          request_serializer=GetDocumentRequest.SerializeToString,
          response_deserializer=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.FromString,
          )
      self.ListDocuments = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/ListDocuments',
          request_serializer=ListDocumentsRequest.SerializeToString,
          response_deserializer=ListDocumentsResponse.FromString,
          )
      self.CreateDocument = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/CreateDocument',
          request_serializer=CreateDocumentRequest.SerializeToString,
          response_deserializer=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.FromString,
          )
      self.UpdateDocument = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/UpdateDocument',
          request_serializer=UpdateDocumentRequest.SerializeToString,
          response_deserializer=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.FromString,
          )
      self.DeleteDocument = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/DeleteDocument',
          request_serializer=DeleteDocumentRequest.SerializeToString,
          response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
          )
      self.BatchGetDocuments = channel.unary_stream(
          '/google.firestore.v1beta1.Firestore/BatchGetDocuments',
          request_serializer=BatchGetDocumentsRequest.SerializeToString,
          response_deserializer=BatchGetDocumentsResponse.FromString,
          )
      self.BeginTransaction = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/BeginTransaction',
          request_serializer=BeginTransactionRequest.SerializeToString,
          response_deserializer=BeginTransactionResponse.FromString,
          )
      self.Commit = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/Commit',
          request_serializer=CommitRequest.SerializeToString,
          response_deserializer=CommitResponse.FromString,
          )
      self.Rollback = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/Rollback',
          request_serializer=RollbackRequest.SerializeToString,
          response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
          )
      self.RunQuery = channel.unary_stream(
          '/google.firestore.v1beta1.Firestore/RunQuery',
          request_serializer=RunQueryRequest.SerializeToString,
          response_deserializer=RunQueryResponse.FromString,
          )
      self.Write = channel.stream_stream(
          '/google.firestore.v1beta1.Firestore/Write',
          request_serializer=WriteRequest.SerializeToString,
          response_deserializer=WriteResponse.FromString,
          )
      self.Listen = channel.stream_stream(
          '/google.firestore.v1beta1.Firestore/Listen',
          request_serializer=ListenRequest.SerializeToString,
          response_deserializer=ListenResponse.FromString,
          )
      self.ListCollectionIds = channel.unary_unary(
          '/google.firestore.v1beta1.Firestore/ListCollectionIds',
          request_serializer=ListCollectionIdsRequest.SerializeToString,
          response_deserializer=ListCollectionIdsResponse.FromString,
          )


  class FirestoreServicer(object):
    """Specification of the Firestore API.

    The Cloud Firestore service.

    This service exposes several types of comparable timestamps:

    *    `create_time` - The time at which a document was created. Changes only
    when a document is deleted, then re-created. Increases in a strict
    monotonic fashion.
    *    `update_time` - The time at which a document was last updated. Changes
    every time a document is modified. Does not change when a write results
    in no modifications. Increases in a strict monotonic fashion.
    *    `read_time` - The time at which a particular state was observed. Used
    to denote a consistent snapshot of the database or the time at which a
    Document was observed to not exist.
    *    `commit_time` - The time at which the writes in a transaction were
    committed. Any read with an equal or greater `read_time` is guaranteed
    to see the effects of the transaction.
    """

    def GetDocument(self, request, context):
      """Gets a single document.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def ListDocuments(self, request, context):
      """Lists documents.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def CreateDocument(self, request, context):
      """Creates a new document.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def UpdateDocument(self, request, context):
      """Updates or inserts a document.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def DeleteDocument(self, request, context):
      """Deletes a document.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def BatchGetDocuments(self, request, context):
      """Gets multiple documents.

      Documents returned by this method are not guaranteed to be returned in the
      same order that they were requested.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def BeginTransaction(self, request, context):
      """Starts a new transaction.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Commit(self, request, context):
      """Commits a transaction, while optionally updating documents.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Rollback(self, request, context):
      """Rolls back a transaction.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def RunQuery(self, request, context):
      """Runs a query.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Write(self, request_iterator, context):
      """Streams batches of document updates and deletes, in order.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Listen(self, request_iterator, context):
      """Listens to changes.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def ListCollectionIds(self, request, context):
      """Lists all the collection IDs underneath a document.
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')


  def add_FirestoreServicer_to_server(servicer, server):
    rpc_method_handlers = {
        'GetDocument': grpc.unary_unary_rpc_method_handler(
            servicer.GetDocument,
            request_deserializer=GetDocumentRequest.FromString,
            response_serializer=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.SerializeToString,
        ),
        'ListDocuments': grpc.unary_unary_rpc_method_handler(
            servicer.ListDocuments,
            request_deserializer=ListDocumentsRequest.FromString,
            response_serializer=ListDocumentsResponse.SerializeToString,
        ),
        'CreateDocument': grpc.unary_unary_rpc_method_handler(
            servicer.CreateDocument,
            request_deserializer=CreateDocumentRequest.FromString,
            response_serializer=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.SerializeToString,
        ),
        'UpdateDocument': grpc.unary_unary_rpc_method_handler(
            servicer.UpdateDocument,
            request_deserializer=UpdateDocumentRequest.FromString,
            response_serializer=google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.SerializeToString,
        ),
        'DeleteDocument': grpc.unary_unary_rpc_method_handler(
            servicer.DeleteDocument,
            request_deserializer=DeleteDocumentRequest.FromString,
            response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
        ),
        'BatchGetDocuments': grpc.unary_stream_rpc_method_handler(
            servicer.BatchGetDocuments,
            request_deserializer=BatchGetDocumentsRequest.FromString,
            response_serializer=BatchGetDocumentsResponse.SerializeToString,
        ),
        'BeginTransaction': grpc.unary_unary_rpc_method_handler(
            servicer.BeginTransaction,
            request_deserializer=BeginTransactionRequest.FromString,
            response_serializer=BeginTransactionResponse.SerializeToString,
        ),
        'Commit': grpc.unary_unary_rpc_method_handler(
            servicer.Commit,
            request_deserializer=CommitRequest.FromString,
            response_serializer=CommitResponse.SerializeToString,
        ),
        'Rollback': grpc.unary_unary_rpc_method_handler(
            servicer.Rollback,
            request_deserializer=RollbackRequest.FromString,
            response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
        ),
        'RunQuery': grpc.unary_stream_rpc_method_handler(
            servicer.RunQuery,
            request_deserializer=RunQueryRequest.FromString,
            response_serializer=RunQueryResponse.SerializeToString,
        ),
        'Write': grpc.stream_stream_rpc_method_handler(
            servicer.Write,
            request_deserializer=WriteRequest.FromString,
            response_serializer=WriteResponse.SerializeToString,
        ),
        'Listen': grpc.stream_stream_rpc_method_handler(
            servicer.Listen,
            request_deserializer=ListenRequest.FromString,
            response_serializer=ListenResponse.SerializeToString,
        ),
        'ListCollectionIds': grpc.unary_unary_rpc_method_handler(
            servicer.ListCollectionIds,
            request_deserializer=ListCollectionIdsRequest.FromString,
            response_serializer=ListCollectionIdsResponse.SerializeToString,
        ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
        'google.firestore.v1beta1.Firestore', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


  class BetaFirestoreServicer(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    """Specification of the Firestore API.

    The Cloud Firestore service.

    This service exposes several types of comparable timestamps:

    *    `create_time` - The time at which a document was created. Changes only
    when a document is deleted, then re-created. Increases in a strict
    monotonic fashion.
    *    `update_time` - The time at which a document was last updated. Changes
    every time a document is modified. Does not change when a write results
    in no modifications. Increases in a strict monotonic fashion.
    *    `read_time` - The time at which a particular state was observed. Used
    to denote a consistent snapshot of the database or the time at which a
    Document was observed to not exist.
    *    `commit_time` - The time at which the writes in a transaction were
    committed. Any read with an equal or greater `read_time` is guaranteed
    to see the effects of the transaction.
    """
    def GetDocument(self, request, context):
      """Gets a single document.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def ListDocuments(self, request, context):
      """Lists documents.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def CreateDocument(self, request, context):
      """Creates a new document.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def UpdateDocument(self, request, context):
      """Updates or inserts a document.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def DeleteDocument(self, request, context):
      """Deletes a document.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def BatchGetDocuments(self, request, context):
      """Gets multiple documents.

      Documents returned by this method are not guaranteed to be returned in the
      same order that they were requested.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def BeginTransaction(self, request, context):
      """Starts a new transaction.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Commit(self, request, context):
      """Commits a transaction, while optionally updating documents.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Rollback(self, request, context):
      """Rolls back a transaction.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def RunQuery(self, request, context):
      """Runs a query.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Write(self, request_iterator, context):
      """Streams batches of document updates and deletes, in order.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Listen(self, request_iterator, context):
      """Listens to changes.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def ListCollectionIds(self, request, context):
      """Lists all the collection IDs underneath a document.
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)


  class BetaFirestoreStub(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    """Specification of the Firestore API.

    The Cloud Firestore service.

    This service exposes several types of comparable timestamps:

    *    `create_time` - The time at which a document was created. Changes only
    when a document is deleted, then re-created. Increases in a strict
    monotonic fashion.
    *    `update_time` - The time at which a document was last updated. Changes
    every time a document is modified. Does not change when a write results
    in no modifications. Increases in a strict monotonic fashion.
    *    `read_time` - The time at which a particular state was observed. Used
    to denote a consistent snapshot of the database or the time at which a
    Document was observed to not exist.
    *    `commit_time` - The time at which the writes in a transaction were
    committed. Any read with an equal or greater `read_time` is guaranteed
    to see the effects of the transaction.
    """
    def GetDocument(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Gets a single document.
      """
      raise NotImplementedError()
    GetDocument.future = None
    def ListDocuments(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Lists documents.
      """
      raise NotImplementedError()
    ListDocuments.future = None
    def CreateDocument(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Creates a new document.
      """
      raise NotImplementedError()
    CreateDocument.future = None
    def UpdateDocument(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Updates or inserts a document.
      """
      raise NotImplementedError()
    UpdateDocument.future = None
    def DeleteDocument(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Deletes a document.
      """
      raise NotImplementedError()
    DeleteDocument.future = None
    def BatchGetDocuments(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Gets multiple documents.

      Documents returned by this method are not guaranteed to be returned in the
      same order that they were requested.
      """
      raise NotImplementedError()
    def BeginTransaction(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Starts a new transaction.
      """
      raise NotImplementedError()
    BeginTransaction.future = None
    def Commit(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Commits a transaction, while optionally updating documents.
      """
      raise NotImplementedError()
    Commit.future = None
    def Rollback(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Rolls back a transaction.
      """
      raise NotImplementedError()
    Rollback.future = None
    def RunQuery(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Runs a query.
      """
      raise NotImplementedError()
    def Write(self, request_iterator, timeout, metadata=None, with_call=False, protocol_options=None):
      """Streams batches of document updates and deletes, in order.
      """
      raise NotImplementedError()
    def Listen(self, request_iterator, timeout, metadata=None, with_call=False, protocol_options=None):
      """Listens to changes.
      """
      raise NotImplementedError()
    def ListCollectionIds(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Lists all the collection IDs underneath a document.
      """
      raise NotImplementedError()
    ListCollectionIds.future = None


  def beta_create_Firestore_server(servicer, pool=None, pool_size=None, default_timeout=None, maximum_timeout=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_deserializers = {
      ('google.firestore.v1beta1.Firestore', 'BatchGetDocuments'): BatchGetDocumentsRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'BeginTransaction'): BeginTransactionRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'Commit'): CommitRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'CreateDocument'): CreateDocumentRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'DeleteDocument'): DeleteDocumentRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'GetDocument'): GetDocumentRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'ListCollectionIds'): ListCollectionIdsRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'ListDocuments'): ListDocumentsRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'Listen'): ListenRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'Rollback'): RollbackRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'RunQuery'): RunQueryRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'UpdateDocument'): UpdateDocumentRequest.FromString,
      ('google.firestore.v1beta1.Firestore', 'Write'): WriteRequest.FromString,
    }
    response_serializers = {
      ('google.firestore.v1beta1.Firestore', 'BatchGetDocuments'): BatchGetDocumentsResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'BeginTransaction'): BeginTransactionResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Commit'): CommitResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'CreateDocument'): google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'DeleteDocument'): google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'GetDocument'): google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'ListCollectionIds'): ListCollectionIdsResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'ListDocuments'): ListDocumentsResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Listen'): ListenResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Rollback'): google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'RunQuery'): RunQueryResponse.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'UpdateDocument'): google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Write'): WriteResponse.SerializeToString,
    }
    method_implementations = {
      ('google.firestore.v1beta1.Firestore', 'BatchGetDocuments'): face_utilities.unary_stream_inline(servicer.BatchGetDocuments),
      ('google.firestore.v1beta1.Firestore', 'BeginTransaction'): face_utilities.unary_unary_inline(servicer.BeginTransaction),
      ('google.firestore.v1beta1.Firestore', 'Commit'): face_utilities.unary_unary_inline(servicer.Commit),
      ('google.firestore.v1beta1.Firestore', 'CreateDocument'): face_utilities.unary_unary_inline(servicer.CreateDocument),
      ('google.firestore.v1beta1.Firestore', 'DeleteDocument'): face_utilities.unary_unary_inline(servicer.DeleteDocument),
      ('google.firestore.v1beta1.Firestore', 'GetDocument'): face_utilities.unary_unary_inline(servicer.GetDocument),
      ('google.firestore.v1beta1.Firestore', 'ListCollectionIds'): face_utilities.unary_unary_inline(servicer.ListCollectionIds),
      ('google.firestore.v1beta1.Firestore', 'ListDocuments'): face_utilities.unary_unary_inline(servicer.ListDocuments),
      ('google.firestore.v1beta1.Firestore', 'Listen'): face_utilities.stream_stream_inline(servicer.Listen),
      ('google.firestore.v1beta1.Firestore', 'Rollback'): face_utilities.unary_unary_inline(servicer.Rollback),
      ('google.firestore.v1beta1.Firestore', 'RunQuery'): face_utilities.unary_stream_inline(servicer.RunQuery),
      ('google.firestore.v1beta1.Firestore', 'UpdateDocument'): face_utilities.unary_unary_inline(servicer.UpdateDocument),
      ('google.firestore.v1beta1.Firestore', 'Write'): face_utilities.stream_stream_inline(servicer.Write),
    }
    server_options = beta_implementations.server_options(request_deserializers=request_deserializers, response_serializers=response_serializers, thread_pool=pool, thread_pool_size=pool_size, default_timeout=default_timeout, maximum_timeout=maximum_timeout)
    return beta_implementations.server(method_implementations, options=server_options)


  def beta_create_Firestore_stub(channel, host=None, metadata_transformer=None, pool=None, pool_size=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_serializers = {
      ('google.firestore.v1beta1.Firestore', 'BatchGetDocuments'): BatchGetDocumentsRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'BeginTransaction'): BeginTransactionRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Commit'): CommitRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'CreateDocument'): CreateDocumentRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'DeleteDocument'): DeleteDocumentRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'GetDocument'): GetDocumentRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'ListCollectionIds'): ListCollectionIdsRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'ListDocuments'): ListDocumentsRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Listen'): ListenRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Rollback'): RollbackRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'RunQuery'): RunQueryRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'UpdateDocument'): UpdateDocumentRequest.SerializeToString,
      ('google.firestore.v1beta1.Firestore', 'Write'): WriteRequest.SerializeToString,
    }
    response_deserializers = {
      ('google.firestore.v1beta1.Firestore', 'BatchGetDocuments'): BatchGetDocumentsResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'BeginTransaction'): BeginTransactionResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'Commit'): CommitResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'CreateDocument'): google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.FromString,
      ('google.firestore.v1beta1.Firestore', 'DeleteDocument'): google_dot_protobuf_dot_empty__pb2.Empty.FromString,
      ('google.firestore.v1beta1.Firestore', 'GetDocument'): google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.FromString,
      ('google.firestore.v1beta1.Firestore', 'ListCollectionIds'): ListCollectionIdsResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'ListDocuments'): ListDocumentsResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'Listen'): ListenResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'Rollback'): google_dot_protobuf_dot_empty__pb2.Empty.FromString,
      ('google.firestore.v1beta1.Firestore', 'RunQuery'): RunQueryResponse.FromString,
      ('google.firestore.v1beta1.Firestore', 'UpdateDocument'): google_dot_cloud_dot_firestore__v1beta1_dot_proto_dot_document__pb2.Document.FromString,
      ('google.firestore.v1beta1.Firestore', 'Write'): WriteResponse.FromString,
    }
    cardinalities = {
      'BatchGetDocuments': cardinality.Cardinality.UNARY_STREAM,
      'BeginTransaction': cardinality.Cardinality.UNARY_UNARY,
      'Commit': cardinality.Cardinality.UNARY_UNARY,
      'CreateDocument': cardinality.Cardinality.UNARY_UNARY,
      'DeleteDocument': cardinality.Cardinality.UNARY_UNARY,
      'GetDocument': cardinality.Cardinality.UNARY_UNARY,
      'ListCollectionIds': cardinality.Cardinality.UNARY_UNARY,
      'ListDocuments': cardinality.Cardinality.UNARY_UNARY,
      'Listen': cardinality.Cardinality.STREAM_STREAM,
      'Rollback': cardinality.Cardinality.UNARY_UNARY,
      'RunQuery': cardinality.Cardinality.UNARY_STREAM,
      'UpdateDocument': cardinality.Cardinality.UNARY_UNARY,
      'Write': cardinality.Cardinality.STREAM_STREAM,
    }
    stub_options = beta_implementations.stub_options(host=host, metadata_transformer=metadata_transformer, request_serializers=request_serializers, response_deserializers=response_deserializers, thread_pool=pool, thread_pool_size=pool_size)
    return beta_implementations.dynamic_stub(channel, 'google.firestore.v1beta1.Firestore', cardinalities, options=stub_options)
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
