...

Source file src/google.golang.org/genproto/googleapis/firestore/v1beta1/firestore.pb.go

Documentation: google.golang.org/genproto/googleapis/firestore/v1beta1

     1  // Copyright 2021 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.26.0
    18  // 	protoc        v3.12.2
    19  // source: google/firestore/v1beta1/firestore.proto
    20  
    21  package firestore
    22  
    23  import (
    24  	context "context"
    25  	reflect "reflect"
    26  	sync "sync"
    27  
    28  	_ "google.golang.org/genproto/googleapis/api/annotations"
    29  	status "google.golang.org/genproto/googleapis/rpc/status"
    30  	grpc "google.golang.org/grpc"
    31  	codes "google.golang.org/grpc/codes"
    32  	status1 "google.golang.org/grpc/status"
    33  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    34  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    35  	emptypb "google.golang.org/protobuf/types/known/emptypb"
    36  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    37  )
    38  
    39  const (
    40  	// Verify that this generated code is sufficiently up-to-date.
    41  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    42  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    43  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    44  )
    45  
    46  // The type of change.
    47  type TargetChange_TargetChangeType int32
    48  
    49  const (
    50  	// No change has occurred. Used only to send an updated `resume_token`.
    51  	TargetChange_NO_CHANGE TargetChange_TargetChangeType = 0
    52  	// The targets have been added.
    53  	TargetChange_ADD TargetChange_TargetChangeType = 1
    54  	// The targets have been removed.
    55  	TargetChange_REMOVE TargetChange_TargetChangeType = 2
    56  	// The targets reflect all changes committed before the targets were added
    57  	// to the stream.
    58  	//
    59  	// This will be sent after or with a `read_time` that is greater than or
    60  	// equal to the time at which the targets were added.
    61  	//
    62  	// Listeners can wait for this change if read-after-write semantics
    63  	// are desired.
    64  	TargetChange_CURRENT TargetChange_TargetChangeType = 3
    65  	// The targets have been reset, and a new initial state for the targets
    66  	// will be returned in subsequent changes.
    67  	//
    68  	// After the initial state is complete, `CURRENT` will be returned even
    69  	// if the target was previously indicated to be `CURRENT`.
    70  	TargetChange_RESET TargetChange_TargetChangeType = 4
    71  )
    72  
    73  // Enum value maps for TargetChange_TargetChangeType.
    74  var (
    75  	TargetChange_TargetChangeType_name = map[int32]string{
    76  		0: "NO_CHANGE",
    77  		1: "ADD",
    78  		2: "REMOVE",
    79  		3: "CURRENT",
    80  		4: "RESET",
    81  	}
    82  	TargetChange_TargetChangeType_value = map[string]int32{
    83  		"NO_CHANGE": 0,
    84  		"ADD":       1,
    85  		"REMOVE":    2,
    86  		"CURRENT":   3,
    87  		"RESET":     4,
    88  	}
    89  )
    90  
    91  func (x TargetChange_TargetChangeType) Enum() *TargetChange_TargetChangeType {
    92  	p := new(TargetChange_TargetChangeType)
    93  	*p = x
    94  	return p
    95  }
    96  
    97  func (x TargetChange_TargetChangeType) String() string {
    98  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    99  }
   100  
   101  func (TargetChange_TargetChangeType) Descriptor() protoreflect.EnumDescriptor {
   102  	return file_google_firestore_v1beta1_firestore_proto_enumTypes[0].Descriptor()
   103  }
   104  
   105  func (TargetChange_TargetChangeType) Type() protoreflect.EnumType {
   106  	return &file_google_firestore_v1beta1_firestore_proto_enumTypes[0]
   107  }
   108  
   109  func (x TargetChange_TargetChangeType) Number() protoreflect.EnumNumber {
   110  	return protoreflect.EnumNumber(x)
   111  }
   112  
   113  // Deprecated: Use TargetChange_TargetChangeType.Descriptor instead.
   114  func (TargetChange_TargetChangeType) EnumDescriptor() ([]byte, []int) {
   115  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{22, 0}
   116  }
   117  
   118  // The request for [Firestore.GetDocument][google.firestore.v1beta1.Firestore.GetDocument].
   119  type GetDocumentRequest struct {
   120  	state         protoimpl.MessageState
   121  	sizeCache     protoimpl.SizeCache
   122  	unknownFields protoimpl.UnknownFields
   123  
   124  	// Required. The resource name of the Document to get. In the format:
   125  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
   126  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   127  	// The fields to return. If not set, returns all fields.
   128  	//
   129  	// If the document has a field that is not present in this mask, that field
   130  	// will not be returned in the response.
   131  	Mask *DocumentMask `protobuf:"bytes,2,opt,name=mask,proto3" json:"mask,omitempty"`
   132  	// The consistency mode for this transaction.
   133  	// If not set, defaults to strong consistency.
   134  	//
   135  	// Types that are assignable to ConsistencySelector:
   136  	//	*GetDocumentRequest_Transaction
   137  	//	*GetDocumentRequest_ReadTime
   138  	ConsistencySelector isGetDocumentRequest_ConsistencySelector `protobuf_oneof:"consistency_selector"`
   139  }
   140  
   141  func (x *GetDocumentRequest) Reset() {
   142  	*x = GetDocumentRequest{}
   143  	if protoimpl.UnsafeEnabled {
   144  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[0]
   145  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   146  		ms.StoreMessageInfo(mi)
   147  	}
   148  }
   149  
   150  func (x *GetDocumentRequest) String() string {
   151  	return protoimpl.X.MessageStringOf(x)
   152  }
   153  
   154  func (*GetDocumentRequest) ProtoMessage() {}
   155  
   156  func (x *GetDocumentRequest) ProtoReflect() protoreflect.Message {
   157  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[0]
   158  	if protoimpl.UnsafeEnabled && x != nil {
   159  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   160  		if ms.LoadMessageInfo() == nil {
   161  			ms.StoreMessageInfo(mi)
   162  		}
   163  		return ms
   164  	}
   165  	return mi.MessageOf(x)
   166  }
   167  
   168  // Deprecated: Use GetDocumentRequest.ProtoReflect.Descriptor instead.
   169  func (*GetDocumentRequest) Descriptor() ([]byte, []int) {
   170  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{0}
   171  }
   172  
   173  func (x *GetDocumentRequest) GetName() string {
   174  	if x != nil {
   175  		return x.Name
   176  	}
   177  	return ""
   178  }
   179  
   180  func (x *GetDocumentRequest) GetMask() *DocumentMask {
   181  	if x != nil {
   182  		return x.Mask
   183  	}
   184  	return nil
   185  }
   186  
   187  func (m *GetDocumentRequest) GetConsistencySelector() isGetDocumentRequest_ConsistencySelector {
   188  	if m != nil {
   189  		return m.ConsistencySelector
   190  	}
   191  	return nil
   192  }
   193  
   194  func (x *GetDocumentRequest) GetTransaction() []byte {
   195  	if x, ok := x.GetConsistencySelector().(*GetDocumentRequest_Transaction); ok {
   196  		return x.Transaction
   197  	}
   198  	return nil
   199  }
   200  
   201  func (x *GetDocumentRequest) GetReadTime() *timestamppb.Timestamp {
   202  	if x, ok := x.GetConsistencySelector().(*GetDocumentRequest_ReadTime); ok {
   203  		return x.ReadTime
   204  	}
   205  	return nil
   206  }
   207  
   208  type isGetDocumentRequest_ConsistencySelector interface {
   209  	isGetDocumentRequest_ConsistencySelector()
   210  }
   211  
   212  type GetDocumentRequest_Transaction struct {
   213  	// Reads the document in a transaction.
   214  	Transaction []byte `protobuf:"bytes,3,opt,name=transaction,proto3,oneof"`
   215  }
   216  
   217  type GetDocumentRequest_ReadTime struct {
   218  	// Reads the version of the document at the given time.
   219  	// This may not be older than 270 seconds.
   220  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=read_time,json=readTime,proto3,oneof"`
   221  }
   222  
   223  func (*GetDocumentRequest_Transaction) isGetDocumentRequest_ConsistencySelector() {}
   224  
   225  func (*GetDocumentRequest_ReadTime) isGetDocumentRequest_ConsistencySelector() {}
   226  
   227  // The request for [Firestore.ListDocuments][google.firestore.v1beta1.Firestore.ListDocuments].
   228  type ListDocumentsRequest struct {
   229  	state         protoimpl.MessageState
   230  	sizeCache     protoimpl.SizeCache
   231  	unknownFields protoimpl.UnknownFields
   232  
   233  	// Required. The parent resource name. In the format:
   234  	// `projects/{project_id}/databases/{database_id}/documents` or
   235  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
   236  	// For example:
   237  	// `projects/my-project/databases/my-database/documents` or
   238  	// `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`
   239  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
   240  	// Required. The collection ID, relative to `parent`, to list. For example: `chatrooms`
   241  	// or `messages`.
   242  	CollectionId string `protobuf:"bytes,2,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"`
   243  	// The maximum number of documents to return.
   244  	PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
   245  	// The `next_page_token` value returned from a previous List request, if any.
   246  	PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
   247  	// The order to sort results by. For example: `priority desc, name`.
   248  	OrderBy string `protobuf:"bytes,6,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
   249  	// The fields to return. If not set, returns all fields.
   250  	//
   251  	// If a document has a field that is not present in this mask, that field
   252  	// will not be returned in the response.
   253  	Mask *DocumentMask `protobuf:"bytes,7,opt,name=mask,proto3" json:"mask,omitempty"`
   254  	// The consistency mode for this transaction.
   255  	// If not set, defaults to strong consistency.
   256  	//
   257  	// Types that are assignable to ConsistencySelector:
   258  	//	*ListDocumentsRequest_Transaction
   259  	//	*ListDocumentsRequest_ReadTime
   260  	ConsistencySelector isListDocumentsRequest_ConsistencySelector `protobuf_oneof:"consistency_selector"`
   261  	// If the list should show missing documents. A missing document is a
   262  	// document that does not exist but has sub-documents. These documents will
   263  	// be returned with a key but will not have fields, [Document.create_time][google.firestore.v1beta1.Document.create_time],
   264  	// or [Document.update_time][google.firestore.v1beta1.Document.update_time] set.
   265  	//
   266  	// Requests with `show_missing` may not specify `where` or
   267  	// `order_by`.
   268  	ShowMissing bool `protobuf:"varint,12,opt,name=show_missing,json=showMissing,proto3" json:"show_missing,omitempty"`
   269  }
   270  
   271  func (x *ListDocumentsRequest) Reset() {
   272  	*x = ListDocumentsRequest{}
   273  	if protoimpl.UnsafeEnabled {
   274  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[1]
   275  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   276  		ms.StoreMessageInfo(mi)
   277  	}
   278  }
   279  
   280  func (x *ListDocumentsRequest) String() string {
   281  	return protoimpl.X.MessageStringOf(x)
   282  }
   283  
   284  func (*ListDocumentsRequest) ProtoMessage() {}
   285  
   286  func (x *ListDocumentsRequest) ProtoReflect() protoreflect.Message {
   287  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[1]
   288  	if protoimpl.UnsafeEnabled && x != nil {
   289  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   290  		if ms.LoadMessageInfo() == nil {
   291  			ms.StoreMessageInfo(mi)
   292  		}
   293  		return ms
   294  	}
   295  	return mi.MessageOf(x)
   296  }
   297  
   298  // Deprecated: Use ListDocumentsRequest.ProtoReflect.Descriptor instead.
   299  func (*ListDocumentsRequest) Descriptor() ([]byte, []int) {
   300  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{1}
   301  }
   302  
   303  func (x *ListDocumentsRequest) GetParent() string {
   304  	if x != nil {
   305  		return x.Parent
   306  	}
   307  	return ""
   308  }
   309  
   310  func (x *ListDocumentsRequest) GetCollectionId() string {
   311  	if x != nil {
   312  		return x.CollectionId
   313  	}
   314  	return ""
   315  }
   316  
   317  func (x *ListDocumentsRequest) GetPageSize() int32 {
   318  	if x != nil {
   319  		return x.PageSize
   320  	}
   321  	return 0
   322  }
   323  
   324  func (x *ListDocumentsRequest) GetPageToken() string {
   325  	if x != nil {
   326  		return x.PageToken
   327  	}
   328  	return ""
   329  }
   330  
   331  func (x *ListDocumentsRequest) GetOrderBy() string {
   332  	if x != nil {
   333  		return x.OrderBy
   334  	}
   335  	return ""
   336  }
   337  
   338  func (x *ListDocumentsRequest) GetMask() *DocumentMask {
   339  	if x != nil {
   340  		return x.Mask
   341  	}
   342  	return nil
   343  }
   344  
   345  func (m *ListDocumentsRequest) GetConsistencySelector() isListDocumentsRequest_ConsistencySelector {
   346  	if m != nil {
   347  		return m.ConsistencySelector
   348  	}
   349  	return nil
   350  }
   351  
   352  func (x *ListDocumentsRequest) GetTransaction() []byte {
   353  	if x, ok := x.GetConsistencySelector().(*ListDocumentsRequest_Transaction); ok {
   354  		return x.Transaction
   355  	}
   356  	return nil
   357  }
   358  
   359  func (x *ListDocumentsRequest) GetReadTime() *timestamppb.Timestamp {
   360  	if x, ok := x.GetConsistencySelector().(*ListDocumentsRequest_ReadTime); ok {
   361  		return x.ReadTime
   362  	}
   363  	return nil
   364  }
   365  
   366  func (x *ListDocumentsRequest) GetShowMissing() bool {
   367  	if x != nil {
   368  		return x.ShowMissing
   369  	}
   370  	return false
   371  }
   372  
   373  type isListDocumentsRequest_ConsistencySelector interface {
   374  	isListDocumentsRequest_ConsistencySelector()
   375  }
   376  
   377  type ListDocumentsRequest_Transaction struct {
   378  	// Reads documents in a transaction.
   379  	Transaction []byte `protobuf:"bytes,8,opt,name=transaction,proto3,oneof"`
   380  }
   381  
   382  type ListDocumentsRequest_ReadTime struct {
   383  	// Reads documents as they were at the given time.
   384  	// This may not be older than 270 seconds.
   385  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=read_time,json=readTime,proto3,oneof"`
   386  }
   387  
   388  func (*ListDocumentsRequest_Transaction) isListDocumentsRequest_ConsistencySelector() {}
   389  
   390  func (*ListDocumentsRequest_ReadTime) isListDocumentsRequest_ConsistencySelector() {}
   391  
   392  // The response for [Firestore.ListDocuments][google.firestore.v1beta1.Firestore.ListDocuments].
   393  type ListDocumentsResponse struct {
   394  	state         protoimpl.MessageState
   395  	sizeCache     protoimpl.SizeCache
   396  	unknownFields protoimpl.UnknownFields
   397  
   398  	// The Documents found.
   399  	Documents []*Document `protobuf:"bytes,1,rep,name=documents,proto3" json:"documents,omitempty"`
   400  	// The next page token.
   401  	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
   402  }
   403  
   404  func (x *ListDocumentsResponse) Reset() {
   405  	*x = ListDocumentsResponse{}
   406  	if protoimpl.UnsafeEnabled {
   407  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[2]
   408  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   409  		ms.StoreMessageInfo(mi)
   410  	}
   411  }
   412  
   413  func (x *ListDocumentsResponse) String() string {
   414  	return protoimpl.X.MessageStringOf(x)
   415  }
   416  
   417  func (*ListDocumentsResponse) ProtoMessage() {}
   418  
   419  func (x *ListDocumentsResponse) ProtoReflect() protoreflect.Message {
   420  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[2]
   421  	if protoimpl.UnsafeEnabled && x != nil {
   422  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   423  		if ms.LoadMessageInfo() == nil {
   424  			ms.StoreMessageInfo(mi)
   425  		}
   426  		return ms
   427  	}
   428  	return mi.MessageOf(x)
   429  }
   430  
   431  // Deprecated: Use ListDocumentsResponse.ProtoReflect.Descriptor instead.
   432  func (*ListDocumentsResponse) Descriptor() ([]byte, []int) {
   433  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{2}
   434  }
   435  
   436  func (x *ListDocumentsResponse) GetDocuments() []*Document {
   437  	if x != nil {
   438  		return x.Documents
   439  	}
   440  	return nil
   441  }
   442  
   443  func (x *ListDocumentsResponse) GetNextPageToken() string {
   444  	if x != nil {
   445  		return x.NextPageToken
   446  	}
   447  	return ""
   448  }
   449  
   450  // The request for [Firestore.CreateDocument][google.firestore.v1beta1.Firestore.CreateDocument].
   451  type CreateDocumentRequest struct {
   452  	state         protoimpl.MessageState
   453  	sizeCache     protoimpl.SizeCache
   454  	unknownFields protoimpl.UnknownFields
   455  
   456  	// Required. The parent resource. For example:
   457  	// `projects/{project_id}/databases/{database_id}/documents` or
   458  	// `projects/{project_id}/databases/{database_id}/documents/chatrooms/{chatroom_id}`
   459  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
   460  	// Required. The collection ID, relative to `parent`, to list. For example: `chatrooms`.
   461  	CollectionId string `protobuf:"bytes,2,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"`
   462  	// The client-assigned document ID to use for this document.
   463  	//
   464  	// Optional. If not specified, an ID will be assigned by the service.
   465  	DocumentId string `protobuf:"bytes,3,opt,name=document_id,json=documentId,proto3" json:"document_id,omitempty"`
   466  	// Required. The document to create. `name` must not be set.
   467  	Document *Document `protobuf:"bytes,4,opt,name=document,proto3" json:"document,omitempty"`
   468  	// The fields to return. If not set, returns all fields.
   469  	//
   470  	// If the document has a field that is not present in this mask, that field
   471  	// will not be returned in the response.
   472  	Mask *DocumentMask `protobuf:"bytes,5,opt,name=mask,proto3" json:"mask,omitempty"`
   473  }
   474  
   475  func (x *CreateDocumentRequest) Reset() {
   476  	*x = CreateDocumentRequest{}
   477  	if protoimpl.UnsafeEnabled {
   478  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[3]
   479  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   480  		ms.StoreMessageInfo(mi)
   481  	}
   482  }
   483  
   484  func (x *CreateDocumentRequest) String() string {
   485  	return protoimpl.X.MessageStringOf(x)
   486  }
   487  
   488  func (*CreateDocumentRequest) ProtoMessage() {}
   489  
   490  func (x *CreateDocumentRequest) ProtoReflect() protoreflect.Message {
   491  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[3]
   492  	if protoimpl.UnsafeEnabled && x != nil {
   493  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   494  		if ms.LoadMessageInfo() == nil {
   495  			ms.StoreMessageInfo(mi)
   496  		}
   497  		return ms
   498  	}
   499  	return mi.MessageOf(x)
   500  }
   501  
   502  // Deprecated: Use CreateDocumentRequest.ProtoReflect.Descriptor instead.
   503  func (*CreateDocumentRequest) Descriptor() ([]byte, []int) {
   504  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{3}
   505  }
   506  
   507  func (x *CreateDocumentRequest) GetParent() string {
   508  	if x != nil {
   509  		return x.Parent
   510  	}
   511  	return ""
   512  }
   513  
   514  func (x *CreateDocumentRequest) GetCollectionId() string {
   515  	if x != nil {
   516  		return x.CollectionId
   517  	}
   518  	return ""
   519  }
   520  
   521  func (x *CreateDocumentRequest) GetDocumentId() string {
   522  	if x != nil {
   523  		return x.DocumentId
   524  	}
   525  	return ""
   526  }
   527  
   528  func (x *CreateDocumentRequest) GetDocument() *Document {
   529  	if x != nil {
   530  		return x.Document
   531  	}
   532  	return nil
   533  }
   534  
   535  func (x *CreateDocumentRequest) GetMask() *DocumentMask {
   536  	if x != nil {
   537  		return x.Mask
   538  	}
   539  	return nil
   540  }
   541  
   542  // The request for [Firestore.UpdateDocument][google.firestore.v1beta1.Firestore.UpdateDocument].
   543  type UpdateDocumentRequest struct {
   544  	state         protoimpl.MessageState
   545  	sizeCache     protoimpl.SizeCache
   546  	unknownFields protoimpl.UnknownFields
   547  
   548  	// Required. The updated document.
   549  	// Creates the document if it does not already exist.
   550  	Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"`
   551  	// The fields to update.
   552  	// None of the field paths in the mask may contain a reserved name.
   553  	//
   554  	// If the document exists on the server and has fields not referenced in the
   555  	// mask, they are left unchanged.
   556  	// Fields referenced in the mask, but not present in the input document, are
   557  	// deleted from the document on the server.
   558  	UpdateMask *DocumentMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
   559  	// The fields to return. If not set, returns all fields.
   560  	//
   561  	// If the document has a field that is not present in this mask, that field
   562  	// will not be returned in the response.
   563  	Mask *DocumentMask `protobuf:"bytes,3,opt,name=mask,proto3" json:"mask,omitempty"`
   564  	// An optional precondition on the document.
   565  	// The request will fail if this is set and not met by the target document.
   566  	CurrentDocument *Precondition `protobuf:"bytes,4,opt,name=current_document,json=currentDocument,proto3" json:"current_document,omitempty"`
   567  }
   568  
   569  func (x *UpdateDocumentRequest) Reset() {
   570  	*x = UpdateDocumentRequest{}
   571  	if protoimpl.UnsafeEnabled {
   572  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[4]
   573  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   574  		ms.StoreMessageInfo(mi)
   575  	}
   576  }
   577  
   578  func (x *UpdateDocumentRequest) String() string {
   579  	return protoimpl.X.MessageStringOf(x)
   580  }
   581  
   582  func (*UpdateDocumentRequest) ProtoMessage() {}
   583  
   584  func (x *UpdateDocumentRequest) ProtoReflect() protoreflect.Message {
   585  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[4]
   586  	if protoimpl.UnsafeEnabled && x != nil {
   587  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   588  		if ms.LoadMessageInfo() == nil {
   589  			ms.StoreMessageInfo(mi)
   590  		}
   591  		return ms
   592  	}
   593  	return mi.MessageOf(x)
   594  }
   595  
   596  // Deprecated: Use UpdateDocumentRequest.ProtoReflect.Descriptor instead.
   597  func (*UpdateDocumentRequest) Descriptor() ([]byte, []int) {
   598  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{4}
   599  }
   600  
   601  func (x *UpdateDocumentRequest) GetDocument() *Document {
   602  	if x != nil {
   603  		return x.Document
   604  	}
   605  	return nil
   606  }
   607  
   608  func (x *UpdateDocumentRequest) GetUpdateMask() *DocumentMask {
   609  	if x != nil {
   610  		return x.UpdateMask
   611  	}
   612  	return nil
   613  }
   614  
   615  func (x *UpdateDocumentRequest) GetMask() *DocumentMask {
   616  	if x != nil {
   617  		return x.Mask
   618  	}
   619  	return nil
   620  }
   621  
   622  func (x *UpdateDocumentRequest) GetCurrentDocument() *Precondition {
   623  	if x != nil {
   624  		return x.CurrentDocument
   625  	}
   626  	return nil
   627  }
   628  
   629  // The request for [Firestore.DeleteDocument][google.firestore.v1beta1.Firestore.DeleteDocument].
   630  type DeleteDocumentRequest struct {
   631  	state         protoimpl.MessageState
   632  	sizeCache     protoimpl.SizeCache
   633  	unknownFields protoimpl.UnknownFields
   634  
   635  	// Required. The resource name of the Document to delete. In the format:
   636  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
   637  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   638  	// An optional precondition on the document.
   639  	// The request will fail if this is set and not met by the target document.
   640  	CurrentDocument *Precondition `protobuf:"bytes,2,opt,name=current_document,json=currentDocument,proto3" json:"current_document,omitempty"`
   641  }
   642  
   643  func (x *DeleteDocumentRequest) Reset() {
   644  	*x = DeleteDocumentRequest{}
   645  	if protoimpl.UnsafeEnabled {
   646  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[5]
   647  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   648  		ms.StoreMessageInfo(mi)
   649  	}
   650  }
   651  
   652  func (x *DeleteDocumentRequest) String() string {
   653  	return protoimpl.X.MessageStringOf(x)
   654  }
   655  
   656  func (*DeleteDocumentRequest) ProtoMessage() {}
   657  
   658  func (x *DeleteDocumentRequest) ProtoReflect() protoreflect.Message {
   659  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[5]
   660  	if protoimpl.UnsafeEnabled && x != nil {
   661  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   662  		if ms.LoadMessageInfo() == nil {
   663  			ms.StoreMessageInfo(mi)
   664  		}
   665  		return ms
   666  	}
   667  	return mi.MessageOf(x)
   668  }
   669  
   670  // Deprecated: Use DeleteDocumentRequest.ProtoReflect.Descriptor instead.
   671  func (*DeleteDocumentRequest) Descriptor() ([]byte, []int) {
   672  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{5}
   673  }
   674  
   675  func (x *DeleteDocumentRequest) GetName() string {
   676  	if x != nil {
   677  		return x.Name
   678  	}
   679  	return ""
   680  }
   681  
   682  func (x *DeleteDocumentRequest) GetCurrentDocument() *Precondition {
   683  	if x != nil {
   684  		return x.CurrentDocument
   685  	}
   686  	return nil
   687  }
   688  
   689  // The request for [Firestore.BatchGetDocuments][google.firestore.v1beta1.Firestore.BatchGetDocuments].
   690  type BatchGetDocumentsRequest struct {
   691  	state         protoimpl.MessageState
   692  	sizeCache     protoimpl.SizeCache
   693  	unknownFields protoimpl.UnknownFields
   694  
   695  	// Required. The database name. In the format:
   696  	// `projects/{project_id}/databases/{database_id}`.
   697  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
   698  	// The names of the documents to retrieve. In the format:
   699  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
   700  	// The request will fail if any of the document is not a child resource of the
   701  	// given `database`. Duplicate names will be elided.
   702  	Documents []string `protobuf:"bytes,2,rep,name=documents,proto3" json:"documents,omitempty"`
   703  	// The fields to return. If not set, returns all fields.
   704  	//
   705  	// If a document has a field that is not present in this mask, that field will
   706  	// not be returned in the response.
   707  	Mask *DocumentMask `protobuf:"bytes,3,opt,name=mask,proto3" json:"mask,omitempty"`
   708  	// The consistency mode for this transaction.
   709  	// If not set, defaults to strong consistency.
   710  	//
   711  	// Types that are assignable to ConsistencySelector:
   712  	//	*BatchGetDocumentsRequest_Transaction
   713  	//	*BatchGetDocumentsRequest_NewTransaction
   714  	//	*BatchGetDocumentsRequest_ReadTime
   715  	ConsistencySelector isBatchGetDocumentsRequest_ConsistencySelector `protobuf_oneof:"consistency_selector"`
   716  }
   717  
   718  func (x *BatchGetDocumentsRequest) Reset() {
   719  	*x = BatchGetDocumentsRequest{}
   720  	if protoimpl.UnsafeEnabled {
   721  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[6]
   722  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   723  		ms.StoreMessageInfo(mi)
   724  	}
   725  }
   726  
   727  func (x *BatchGetDocumentsRequest) String() string {
   728  	return protoimpl.X.MessageStringOf(x)
   729  }
   730  
   731  func (*BatchGetDocumentsRequest) ProtoMessage() {}
   732  
   733  func (x *BatchGetDocumentsRequest) ProtoReflect() protoreflect.Message {
   734  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[6]
   735  	if protoimpl.UnsafeEnabled && x != nil {
   736  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   737  		if ms.LoadMessageInfo() == nil {
   738  			ms.StoreMessageInfo(mi)
   739  		}
   740  		return ms
   741  	}
   742  	return mi.MessageOf(x)
   743  }
   744  
   745  // Deprecated: Use BatchGetDocumentsRequest.ProtoReflect.Descriptor instead.
   746  func (*BatchGetDocumentsRequest) Descriptor() ([]byte, []int) {
   747  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{6}
   748  }
   749  
   750  func (x *BatchGetDocumentsRequest) GetDatabase() string {
   751  	if x != nil {
   752  		return x.Database
   753  	}
   754  	return ""
   755  }
   756  
   757  func (x *BatchGetDocumentsRequest) GetDocuments() []string {
   758  	if x != nil {
   759  		return x.Documents
   760  	}
   761  	return nil
   762  }
   763  
   764  func (x *BatchGetDocumentsRequest) GetMask() *DocumentMask {
   765  	if x != nil {
   766  		return x.Mask
   767  	}
   768  	return nil
   769  }
   770  
   771  func (m *BatchGetDocumentsRequest) GetConsistencySelector() isBatchGetDocumentsRequest_ConsistencySelector {
   772  	if m != nil {
   773  		return m.ConsistencySelector
   774  	}
   775  	return nil
   776  }
   777  
   778  func (x *BatchGetDocumentsRequest) GetTransaction() []byte {
   779  	if x, ok := x.GetConsistencySelector().(*BatchGetDocumentsRequest_Transaction); ok {
   780  		return x.Transaction
   781  	}
   782  	return nil
   783  }
   784  
   785  func (x *BatchGetDocumentsRequest) GetNewTransaction() *TransactionOptions {
   786  	if x, ok := x.GetConsistencySelector().(*BatchGetDocumentsRequest_NewTransaction); ok {
   787  		return x.NewTransaction
   788  	}
   789  	return nil
   790  }
   791  
   792  func (x *BatchGetDocumentsRequest) GetReadTime() *timestamppb.Timestamp {
   793  	if x, ok := x.GetConsistencySelector().(*BatchGetDocumentsRequest_ReadTime); ok {
   794  		return x.ReadTime
   795  	}
   796  	return nil
   797  }
   798  
   799  type isBatchGetDocumentsRequest_ConsistencySelector interface {
   800  	isBatchGetDocumentsRequest_ConsistencySelector()
   801  }
   802  
   803  type BatchGetDocumentsRequest_Transaction struct {
   804  	// Reads documents in a transaction.
   805  	Transaction []byte `protobuf:"bytes,4,opt,name=transaction,proto3,oneof"`
   806  }
   807  
   808  type BatchGetDocumentsRequest_NewTransaction struct {
   809  	// Starts a new transaction and reads the documents.
   810  	// Defaults to a read-only transaction.
   811  	// The new transaction ID will be returned as the first response in the
   812  	// stream.
   813  	NewTransaction *TransactionOptions `protobuf:"bytes,5,opt,name=new_transaction,json=newTransaction,proto3,oneof"`
   814  }
   815  
   816  type BatchGetDocumentsRequest_ReadTime struct {
   817  	// Reads documents as they were at the given time.
   818  	// This may not be older than 270 seconds.
   819  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=read_time,json=readTime,proto3,oneof"`
   820  }
   821  
   822  func (*BatchGetDocumentsRequest_Transaction) isBatchGetDocumentsRequest_ConsistencySelector() {}
   823  
   824  func (*BatchGetDocumentsRequest_NewTransaction) isBatchGetDocumentsRequest_ConsistencySelector() {}
   825  
   826  func (*BatchGetDocumentsRequest_ReadTime) isBatchGetDocumentsRequest_ConsistencySelector() {}
   827  
   828  // The streamed response for [Firestore.BatchGetDocuments][google.firestore.v1beta1.Firestore.BatchGetDocuments].
   829  type BatchGetDocumentsResponse struct {
   830  	state         protoimpl.MessageState
   831  	sizeCache     protoimpl.SizeCache
   832  	unknownFields protoimpl.UnknownFields
   833  
   834  	// A single result.
   835  	// This can be empty if the server is just returning a transaction.
   836  	//
   837  	// Types that are assignable to Result:
   838  	//	*BatchGetDocumentsResponse_Found
   839  	//	*BatchGetDocumentsResponse_Missing
   840  	Result isBatchGetDocumentsResponse_Result `protobuf_oneof:"result"`
   841  	// The transaction that was started as part of this request.
   842  	// Will only be set in the first response, and only if
   843  	// [BatchGetDocumentsRequest.new_transaction][google.firestore.v1beta1.BatchGetDocumentsRequest.new_transaction] was set in the request.
   844  	Transaction []byte `protobuf:"bytes,3,opt,name=transaction,proto3" json:"transaction,omitempty"`
   845  	// The time at which the document was read.
   846  	// This may be monotically increasing, in this case the previous documents in
   847  	// the result stream are guaranteed not to have changed between their
   848  	// read_time and this one.
   849  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=read_time,json=readTime,proto3" json:"read_time,omitempty"`
   850  }
   851  
   852  func (x *BatchGetDocumentsResponse) Reset() {
   853  	*x = BatchGetDocumentsResponse{}
   854  	if protoimpl.UnsafeEnabled {
   855  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[7]
   856  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   857  		ms.StoreMessageInfo(mi)
   858  	}
   859  }
   860  
   861  func (x *BatchGetDocumentsResponse) String() string {
   862  	return protoimpl.X.MessageStringOf(x)
   863  }
   864  
   865  func (*BatchGetDocumentsResponse) ProtoMessage() {}
   866  
   867  func (x *BatchGetDocumentsResponse) ProtoReflect() protoreflect.Message {
   868  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[7]
   869  	if protoimpl.UnsafeEnabled && x != nil {
   870  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   871  		if ms.LoadMessageInfo() == nil {
   872  			ms.StoreMessageInfo(mi)
   873  		}
   874  		return ms
   875  	}
   876  	return mi.MessageOf(x)
   877  }
   878  
   879  // Deprecated: Use BatchGetDocumentsResponse.ProtoReflect.Descriptor instead.
   880  func (*BatchGetDocumentsResponse) Descriptor() ([]byte, []int) {
   881  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{7}
   882  }
   883  
   884  func (m *BatchGetDocumentsResponse) GetResult() isBatchGetDocumentsResponse_Result {
   885  	if m != nil {
   886  		return m.Result
   887  	}
   888  	return nil
   889  }
   890  
   891  func (x *BatchGetDocumentsResponse) GetFound() *Document {
   892  	if x, ok := x.GetResult().(*BatchGetDocumentsResponse_Found); ok {
   893  		return x.Found
   894  	}
   895  	return nil
   896  }
   897  
   898  func (x *BatchGetDocumentsResponse) GetMissing() string {
   899  	if x, ok := x.GetResult().(*BatchGetDocumentsResponse_Missing); ok {
   900  		return x.Missing
   901  	}
   902  	return ""
   903  }
   904  
   905  func (x *BatchGetDocumentsResponse) GetTransaction() []byte {
   906  	if x != nil {
   907  		return x.Transaction
   908  	}
   909  	return nil
   910  }
   911  
   912  func (x *BatchGetDocumentsResponse) GetReadTime() *timestamppb.Timestamp {
   913  	if x != nil {
   914  		return x.ReadTime
   915  	}
   916  	return nil
   917  }
   918  
   919  type isBatchGetDocumentsResponse_Result interface {
   920  	isBatchGetDocumentsResponse_Result()
   921  }
   922  
   923  type BatchGetDocumentsResponse_Found struct {
   924  	// A document that was requested.
   925  	Found *Document `protobuf:"bytes,1,opt,name=found,proto3,oneof"`
   926  }
   927  
   928  type BatchGetDocumentsResponse_Missing struct {
   929  	// A document name that was requested but does not exist. In the format:
   930  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
   931  	Missing string `protobuf:"bytes,2,opt,name=missing,proto3,oneof"`
   932  }
   933  
   934  func (*BatchGetDocumentsResponse_Found) isBatchGetDocumentsResponse_Result() {}
   935  
   936  func (*BatchGetDocumentsResponse_Missing) isBatchGetDocumentsResponse_Result() {}
   937  
   938  // The request for [Firestore.BeginTransaction][google.firestore.v1beta1.Firestore.BeginTransaction].
   939  type BeginTransactionRequest struct {
   940  	state         protoimpl.MessageState
   941  	sizeCache     protoimpl.SizeCache
   942  	unknownFields protoimpl.UnknownFields
   943  
   944  	// Required. The database name. In the format:
   945  	// `projects/{project_id}/databases/{database_id}`.
   946  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
   947  	// The options for the transaction.
   948  	// Defaults to a read-write transaction.
   949  	Options *TransactionOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
   950  }
   951  
   952  func (x *BeginTransactionRequest) Reset() {
   953  	*x = BeginTransactionRequest{}
   954  	if protoimpl.UnsafeEnabled {
   955  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[8]
   956  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   957  		ms.StoreMessageInfo(mi)
   958  	}
   959  }
   960  
   961  func (x *BeginTransactionRequest) String() string {
   962  	return protoimpl.X.MessageStringOf(x)
   963  }
   964  
   965  func (*BeginTransactionRequest) ProtoMessage() {}
   966  
   967  func (x *BeginTransactionRequest) ProtoReflect() protoreflect.Message {
   968  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[8]
   969  	if protoimpl.UnsafeEnabled && x != nil {
   970  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   971  		if ms.LoadMessageInfo() == nil {
   972  			ms.StoreMessageInfo(mi)
   973  		}
   974  		return ms
   975  	}
   976  	return mi.MessageOf(x)
   977  }
   978  
   979  // Deprecated: Use BeginTransactionRequest.ProtoReflect.Descriptor instead.
   980  func (*BeginTransactionRequest) Descriptor() ([]byte, []int) {
   981  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{8}
   982  }
   983  
   984  func (x *BeginTransactionRequest) GetDatabase() string {
   985  	if x != nil {
   986  		return x.Database
   987  	}
   988  	return ""
   989  }
   990  
   991  func (x *BeginTransactionRequest) GetOptions() *TransactionOptions {
   992  	if x != nil {
   993  		return x.Options
   994  	}
   995  	return nil
   996  }
   997  
   998  // The response for [Firestore.BeginTransaction][google.firestore.v1beta1.Firestore.BeginTransaction].
   999  type BeginTransactionResponse struct {
  1000  	state         protoimpl.MessageState
  1001  	sizeCache     protoimpl.SizeCache
  1002  	unknownFields protoimpl.UnknownFields
  1003  
  1004  	// The transaction that was started.
  1005  	Transaction []byte `protobuf:"bytes,1,opt,name=transaction,proto3" json:"transaction,omitempty"`
  1006  }
  1007  
  1008  func (x *BeginTransactionResponse) Reset() {
  1009  	*x = BeginTransactionResponse{}
  1010  	if protoimpl.UnsafeEnabled {
  1011  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[9]
  1012  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1013  		ms.StoreMessageInfo(mi)
  1014  	}
  1015  }
  1016  
  1017  func (x *BeginTransactionResponse) String() string {
  1018  	return protoimpl.X.MessageStringOf(x)
  1019  }
  1020  
  1021  func (*BeginTransactionResponse) ProtoMessage() {}
  1022  
  1023  func (x *BeginTransactionResponse) ProtoReflect() protoreflect.Message {
  1024  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[9]
  1025  	if protoimpl.UnsafeEnabled && x != nil {
  1026  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1027  		if ms.LoadMessageInfo() == nil {
  1028  			ms.StoreMessageInfo(mi)
  1029  		}
  1030  		return ms
  1031  	}
  1032  	return mi.MessageOf(x)
  1033  }
  1034  
  1035  // Deprecated: Use BeginTransactionResponse.ProtoReflect.Descriptor instead.
  1036  func (*BeginTransactionResponse) Descriptor() ([]byte, []int) {
  1037  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{9}
  1038  }
  1039  
  1040  func (x *BeginTransactionResponse) GetTransaction() []byte {
  1041  	if x != nil {
  1042  		return x.Transaction
  1043  	}
  1044  	return nil
  1045  }
  1046  
  1047  // The request for [Firestore.Commit][google.firestore.v1beta1.Firestore.Commit].
  1048  type CommitRequest struct {
  1049  	state         protoimpl.MessageState
  1050  	sizeCache     protoimpl.SizeCache
  1051  	unknownFields protoimpl.UnknownFields
  1052  
  1053  	// Required. The database name. In the format:
  1054  	// `projects/{project_id}/databases/{database_id}`.
  1055  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
  1056  	// The writes to apply.
  1057  	//
  1058  	// Always executed atomically and in order.
  1059  	Writes []*Write `protobuf:"bytes,2,rep,name=writes,proto3" json:"writes,omitempty"`
  1060  	// If set, applies all writes in this transaction, and commits it.
  1061  	Transaction []byte `protobuf:"bytes,3,opt,name=transaction,proto3" json:"transaction,omitempty"`
  1062  }
  1063  
  1064  func (x *CommitRequest) Reset() {
  1065  	*x = CommitRequest{}
  1066  	if protoimpl.UnsafeEnabled {
  1067  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[10]
  1068  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1069  		ms.StoreMessageInfo(mi)
  1070  	}
  1071  }
  1072  
  1073  func (x *CommitRequest) String() string {
  1074  	return protoimpl.X.MessageStringOf(x)
  1075  }
  1076  
  1077  func (*CommitRequest) ProtoMessage() {}
  1078  
  1079  func (x *CommitRequest) ProtoReflect() protoreflect.Message {
  1080  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[10]
  1081  	if protoimpl.UnsafeEnabled && x != nil {
  1082  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1083  		if ms.LoadMessageInfo() == nil {
  1084  			ms.StoreMessageInfo(mi)
  1085  		}
  1086  		return ms
  1087  	}
  1088  	return mi.MessageOf(x)
  1089  }
  1090  
  1091  // Deprecated: Use CommitRequest.ProtoReflect.Descriptor instead.
  1092  func (*CommitRequest) Descriptor() ([]byte, []int) {
  1093  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{10}
  1094  }
  1095  
  1096  func (x *CommitRequest) GetDatabase() string {
  1097  	if x != nil {
  1098  		return x.Database
  1099  	}
  1100  	return ""
  1101  }
  1102  
  1103  func (x *CommitRequest) GetWrites() []*Write {
  1104  	if x != nil {
  1105  		return x.Writes
  1106  	}
  1107  	return nil
  1108  }
  1109  
  1110  func (x *CommitRequest) GetTransaction() []byte {
  1111  	if x != nil {
  1112  		return x.Transaction
  1113  	}
  1114  	return nil
  1115  }
  1116  
  1117  // The response for [Firestore.Commit][google.firestore.v1beta1.Firestore.Commit].
  1118  type CommitResponse struct {
  1119  	state         protoimpl.MessageState
  1120  	sizeCache     protoimpl.SizeCache
  1121  	unknownFields protoimpl.UnknownFields
  1122  
  1123  	// The result of applying the writes.
  1124  	//
  1125  	// This i-th write result corresponds to the i-th write in the
  1126  	// request.
  1127  	WriteResults []*WriteResult `protobuf:"bytes,1,rep,name=write_results,json=writeResults,proto3" json:"write_results,omitempty"`
  1128  	// The time at which the commit occurred. Any read with an equal or greater
  1129  	// `read_time` is guaranteed to see the effects of the commit.
  1130  	CommitTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=commit_time,json=commitTime,proto3" json:"commit_time,omitempty"`
  1131  }
  1132  
  1133  func (x *CommitResponse) Reset() {
  1134  	*x = CommitResponse{}
  1135  	if protoimpl.UnsafeEnabled {
  1136  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[11]
  1137  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1138  		ms.StoreMessageInfo(mi)
  1139  	}
  1140  }
  1141  
  1142  func (x *CommitResponse) String() string {
  1143  	return protoimpl.X.MessageStringOf(x)
  1144  }
  1145  
  1146  func (*CommitResponse) ProtoMessage() {}
  1147  
  1148  func (x *CommitResponse) ProtoReflect() protoreflect.Message {
  1149  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[11]
  1150  	if protoimpl.UnsafeEnabled && x != nil {
  1151  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1152  		if ms.LoadMessageInfo() == nil {
  1153  			ms.StoreMessageInfo(mi)
  1154  		}
  1155  		return ms
  1156  	}
  1157  	return mi.MessageOf(x)
  1158  }
  1159  
  1160  // Deprecated: Use CommitResponse.ProtoReflect.Descriptor instead.
  1161  func (*CommitResponse) Descriptor() ([]byte, []int) {
  1162  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{11}
  1163  }
  1164  
  1165  func (x *CommitResponse) GetWriteResults() []*WriteResult {
  1166  	if x != nil {
  1167  		return x.WriteResults
  1168  	}
  1169  	return nil
  1170  }
  1171  
  1172  func (x *CommitResponse) GetCommitTime() *timestamppb.Timestamp {
  1173  	if x != nil {
  1174  		return x.CommitTime
  1175  	}
  1176  	return nil
  1177  }
  1178  
  1179  // The request for [Firestore.Rollback][google.firestore.v1beta1.Firestore.Rollback].
  1180  type RollbackRequest struct {
  1181  	state         protoimpl.MessageState
  1182  	sizeCache     protoimpl.SizeCache
  1183  	unknownFields protoimpl.UnknownFields
  1184  
  1185  	// Required. The database name. In the format:
  1186  	// `projects/{project_id}/databases/{database_id}`.
  1187  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
  1188  	// Required. The transaction to roll back.
  1189  	Transaction []byte `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
  1190  }
  1191  
  1192  func (x *RollbackRequest) Reset() {
  1193  	*x = RollbackRequest{}
  1194  	if protoimpl.UnsafeEnabled {
  1195  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[12]
  1196  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1197  		ms.StoreMessageInfo(mi)
  1198  	}
  1199  }
  1200  
  1201  func (x *RollbackRequest) String() string {
  1202  	return protoimpl.X.MessageStringOf(x)
  1203  }
  1204  
  1205  func (*RollbackRequest) ProtoMessage() {}
  1206  
  1207  func (x *RollbackRequest) ProtoReflect() protoreflect.Message {
  1208  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[12]
  1209  	if protoimpl.UnsafeEnabled && x != nil {
  1210  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1211  		if ms.LoadMessageInfo() == nil {
  1212  			ms.StoreMessageInfo(mi)
  1213  		}
  1214  		return ms
  1215  	}
  1216  	return mi.MessageOf(x)
  1217  }
  1218  
  1219  // Deprecated: Use RollbackRequest.ProtoReflect.Descriptor instead.
  1220  func (*RollbackRequest) Descriptor() ([]byte, []int) {
  1221  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{12}
  1222  }
  1223  
  1224  func (x *RollbackRequest) GetDatabase() string {
  1225  	if x != nil {
  1226  		return x.Database
  1227  	}
  1228  	return ""
  1229  }
  1230  
  1231  func (x *RollbackRequest) GetTransaction() []byte {
  1232  	if x != nil {
  1233  		return x.Transaction
  1234  	}
  1235  	return nil
  1236  }
  1237  
  1238  // The request for [Firestore.RunQuery][google.firestore.v1beta1.Firestore.RunQuery].
  1239  type RunQueryRequest struct {
  1240  	state         protoimpl.MessageState
  1241  	sizeCache     protoimpl.SizeCache
  1242  	unknownFields protoimpl.UnknownFields
  1243  
  1244  	// Required. The parent resource name. In the format:
  1245  	// `projects/{project_id}/databases/{database_id}/documents` or
  1246  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
  1247  	// For example:
  1248  	// `projects/my-project/databases/my-database/documents` or
  1249  	// `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`
  1250  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
  1251  	// The query to run.
  1252  	//
  1253  	// Types that are assignable to QueryType:
  1254  	//	*RunQueryRequest_StructuredQuery
  1255  	QueryType isRunQueryRequest_QueryType `protobuf_oneof:"query_type"`
  1256  	// The consistency mode for this transaction.
  1257  	// If not set, defaults to strong consistency.
  1258  	//
  1259  	// Types that are assignable to ConsistencySelector:
  1260  	//	*RunQueryRequest_Transaction
  1261  	//	*RunQueryRequest_NewTransaction
  1262  	//	*RunQueryRequest_ReadTime
  1263  	ConsistencySelector isRunQueryRequest_ConsistencySelector `protobuf_oneof:"consistency_selector"`
  1264  }
  1265  
  1266  func (x *RunQueryRequest) Reset() {
  1267  	*x = RunQueryRequest{}
  1268  	if protoimpl.UnsafeEnabled {
  1269  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[13]
  1270  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1271  		ms.StoreMessageInfo(mi)
  1272  	}
  1273  }
  1274  
  1275  func (x *RunQueryRequest) String() string {
  1276  	return protoimpl.X.MessageStringOf(x)
  1277  }
  1278  
  1279  func (*RunQueryRequest) ProtoMessage() {}
  1280  
  1281  func (x *RunQueryRequest) ProtoReflect() protoreflect.Message {
  1282  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[13]
  1283  	if protoimpl.UnsafeEnabled && x != nil {
  1284  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1285  		if ms.LoadMessageInfo() == nil {
  1286  			ms.StoreMessageInfo(mi)
  1287  		}
  1288  		return ms
  1289  	}
  1290  	return mi.MessageOf(x)
  1291  }
  1292  
  1293  // Deprecated: Use RunQueryRequest.ProtoReflect.Descriptor instead.
  1294  func (*RunQueryRequest) Descriptor() ([]byte, []int) {
  1295  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{13}
  1296  }
  1297  
  1298  func (x *RunQueryRequest) GetParent() string {
  1299  	if x != nil {
  1300  		return x.Parent
  1301  	}
  1302  	return ""
  1303  }
  1304  
  1305  func (m *RunQueryRequest) GetQueryType() isRunQueryRequest_QueryType {
  1306  	if m != nil {
  1307  		return m.QueryType
  1308  	}
  1309  	return nil
  1310  }
  1311  
  1312  func (x *RunQueryRequest) GetStructuredQuery() *StructuredQuery {
  1313  	if x, ok := x.GetQueryType().(*RunQueryRequest_StructuredQuery); ok {
  1314  		return x.StructuredQuery
  1315  	}
  1316  	return nil
  1317  }
  1318  
  1319  func (m *RunQueryRequest) GetConsistencySelector() isRunQueryRequest_ConsistencySelector {
  1320  	if m != nil {
  1321  		return m.ConsistencySelector
  1322  	}
  1323  	return nil
  1324  }
  1325  
  1326  func (x *RunQueryRequest) GetTransaction() []byte {
  1327  	if x, ok := x.GetConsistencySelector().(*RunQueryRequest_Transaction); ok {
  1328  		return x.Transaction
  1329  	}
  1330  	return nil
  1331  }
  1332  
  1333  func (x *RunQueryRequest) GetNewTransaction() *TransactionOptions {
  1334  	if x, ok := x.GetConsistencySelector().(*RunQueryRequest_NewTransaction); ok {
  1335  		return x.NewTransaction
  1336  	}
  1337  	return nil
  1338  }
  1339  
  1340  func (x *RunQueryRequest) GetReadTime() *timestamppb.Timestamp {
  1341  	if x, ok := x.GetConsistencySelector().(*RunQueryRequest_ReadTime); ok {
  1342  		return x.ReadTime
  1343  	}
  1344  	return nil
  1345  }
  1346  
  1347  type isRunQueryRequest_QueryType interface {
  1348  	isRunQueryRequest_QueryType()
  1349  }
  1350  
  1351  type RunQueryRequest_StructuredQuery struct {
  1352  	// A structured query.
  1353  	StructuredQuery *StructuredQuery `protobuf:"bytes,2,opt,name=structured_query,json=structuredQuery,proto3,oneof"`
  1354  }
  1355  
  1356  func (*RunQueryRequest_StructuredQuery) isRunQueryRequest_QueryType() {}
  1357  
  1358  type isRunQueryRequest_ConsistencySelector interface {
  1359  	isRunQueryRequest_ConsistencySelector()
  1360  }
  1361  
  1362  type RunQueryRequest_Transaction struct {
  1363  	// Reads documents in a transaction.
  1364  	Transaction []byte `protobuf:"bytes,5,opt,name=transaction,proto3,oneof"`
  1365  }
  1366  
  1367  type RunQueryRequest_NewTransaction struct {
  1368  	// Starts a new transaction and reads the documents.
  1369  	// Defaults to a read-only transaction.
  1370  	// The new transaction ID will be returned as the first response in the
  1371  	// stream.
  1372  	NewTransaction *TransactionOptions `protobuf:"bytes,6,opt,name=new_transaction,json=newTransaction,proto3,oneof"`
  1373  }
  1374  
  1375  type RunQueryRequest_ReadTime struct {
  1376  	// Reads documents as they were at the given time.
  1377  	// This may not be older than 270 seconds.
  1378  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=read_time,json=readTime,proto3,oneof"`
  1379  }
  1380  
  1381  func (*RunQueryRequest_Transaction) isRunQueryRequest_ConsistencySelector() {}
  1382  
  1383  func (*RunQueryRequest_NewTransaction) isRunQueryRequest_ConsistencySelector() {}
  1384  
  1385  func (*RunQueryRequest_ReadTime) isRunQueryRequest_ConsistencySelector() {}
  1386  
  1387  // The response for [Firestore.RunQuery][google.firestore.v1beta1.Firestore.RunQuery].
  1388  type RunQueryResponse struct {
  1389  	state         protoimpl.MessageState
  1390  	sizeCache     protoimpl.SizeCache
  1391  	unknownFields protoimpl.UnknownFields
  1392  
  1393  	// The transaction that was started as part of this request.
  1394  	// Can only be set in the first response, and only if
  1395  	// [RunQueryRequest.new_transaction][google.firestore.v1beta1.RunQueryRequest.new_transaction] was set in the request.
  1396  	// If set, no other fields will be set in this response.
  1397  	Transaction []byte `protobuf:"bytes,2,opt,name=transaction,proto3" json:"transaction,omitempty"`
  1398  	// A query result.
  1399  	// Not set when reporting partial progress.
  1400  	Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"`
  1401  	// The time at which the document was read. This may be monotonically
  1402  	// increasing; in this case, the previous documents in the result stream are
  1403  	// guaranteed not to have changed between their `read_time` and this one.
  1404  	//
  1405  	// If the query returns no results, a response with `read_time` and no
  1406  	// `document` will be sent, and this represents the time at which the query
  1407  	// was run.
  1408  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=read_time,json=readTime,proto3" json:"read_time,omitempty"`
  1409  	// The number of results that have been skipped due to an offset between
  1410  	// the last response and the current response.
  1411  	SkippedResults int32 `protobuf:"varint,4,opt,name=skipped_results,json=skippedResults,proto3" json:"skipped_results,omitempty"`
  1412  }
  1413  
  1414  func (x *RunQueryResponse) Reset() {
  1415  	*x = RunQueryResponse{}
  1416  	if protoimpl.UnsafeEnabled {
  1417  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[14]
  1418  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1419  		ms.StoreMessageInfo(mi)
  1420  	}
  1421  }
  1422  
  1423  func (x *RunQueryResponse) String() string {
  1424  	return protoimpl.X.MessageStringOf(x)
  1425  }
  1426  
  1427  func (*RunQueryResponse) ProtoMessage() {}
  1428  
  1429  func (x *RunQueryResponse) ProtoReflect() protoreflect.Message {
  1430  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[14]
  1431  	if protoimpl.UnsafeEnabled && x != nil {
  1432  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1433  		if ms.LoadMessageInfo() == nil {
  1434  			ms.StoreMessageInfo(mi)
  1435  		}
  1436  		return ms
  1437  	}
  1438  	return mi.MessageOf(x)
  1439  }
  1440  
  1441  // Deprecated: Use RunQueryResponse.ProtoReflect.Descriptor instead.
  1442  func (*RunQueryResponse) Descriptor() ([]byte, []int) {
  1443  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{14}
  1444  }
  1445  
  1446  func (x *RunQueryResponse) GetTransaction() []byte {
  1447  	if x != nil {
  1448  		return x.Transaction
  1449  	}
  1450  	return nil
  1451  }
  1452  
  1453  func (x *RunQueryResponse) GetDocument() *Document {
  1454  	if x != nil {
  1455  		return x.Document
  1456  	}
  1457  	return nil
  1458  }
  1459  
  1460  func (x *RunQueryResponse) GetReadTime() *timestamppb.Timestamp {
  1461  	if x != nil {
  1462  		return x.ReadTime
  1463  	}
  1464  	return nil
  1465  }
  1466  
  1467  func (x *RunQueryResponse) GetSkippedResults() int32 {
  1468  	if x != nil {
  1469  		return x.SkippedResults
  1470  	}
  1471  	return 0
  1472  }
  1473  
  1474  // The request for [Firestore.PartitionQuery][google.firestore.v1beta1.Firestore.PartitionQuery].
  1475  type PartitionQueryRequest struct {
  1476  	state         protoimpl.MessageState
  1477  	sizeCache     protoimpl.SizeCache
  1478  	unknownFields protoimpl.UnknownFields
  1479  
  1480  	// Required. The parent resource name. In the format:
  1481  	// `projects/{project_id}/databases/{database_id}/documents`.
  1482  	// Document resource names are not supported; only database resource names
  1483  	// can be specified.
  1484  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
  1485  	// The query to partition.
  1486  	//
  1487  	// Types that are assignable to QueryType:
  1488  	//	*PartitionQueryRequest_StructuredQuery
  1489  	QueryType isPartitionQueryRequest_QueryType `protobuf_oneof:"query_type"`
  1490  	// The desired maximum number of partition points.
  1491  	// The partitions may be returned across multiple pages of results.
  1492  	// The number must be positive. The actual number of partitions
  1493  	// returned may be fewer.
  1494  	//
  1495  	// For example, this may be set to one fewer than the number of parallel
  1496  	// queries to be run, or in running a data pipeline job, one fewer than the
  1497  	// number of workers or compute instances available.
  1498  	PartitionCount int64 `protobuf:"varint,3,opt,name=partition_count,json=partitionCount,proto3" json:"partition_count,omitempty"`
  1499  	// The `next_page_token` value returned from a previous call to
  1500  	// PartitionQuery that may be used to get an additional set of results.
  1501  	// There are no ordering guarantees between sets of results. Thus, using
  1502  	// multiple sets of results will require merging the different result sets.
  1503  	//
  1504  	// For example, two subsequent calls using a page_token may return:
  1505  	//
  1506  	//  * cursor B, cursor M, cursor Q
  1507  	//  * cursor A, cursor U, cursor W
  1508  	//
  1509  	// To obtain a complete result set ordered with respect to the results of the
  1510  	// query supplied to PartitionQuery, the results sets should be merged:
  1511  	// cursor A, cursor B, cursor M, cursor Q, cursor U, cursor W
  1512  	PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
  1513  	// The maximum number of partitions to return in this call, subject to
  1514  	// `partition_count`.
  1515  	//
  1516  	// For example, if `partition_count` = 10 and `page_size` = 8, the first call
  1517  	// to PartitionQuery will return up to 8 partitions and a `next_page_token`
  1518  	// if more results exist. A second call to PartitionQuery will return up to
  1519  	// 2 partitions, to complete the total of 10 specified in `partition_count`.
  1520  	PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
  1521  }
  1522  
  1523  func (x *PartitionQueryRequest) Reset() {
  1524  	*x = PartitionQueryRequest{}
  1525  	if protoimpl.UnsafeEnabled {
  1526  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[15]
  1527  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1528  		ms.StoreMessageInfo(mi)
  1529  	}
  1530  }
  1531  
  1532  func (x *PartitionQueryRequest) String() string {
  1533  	return protoimpl.X.MessageStringOf(x)
  1534  }
  1535  
  1536  func (*PartitionQueryRequest) ProtoMessage() {}
  1537  
  1538  func (x *PartitionQueryRequest) ProtoReflect() protoreflect.Message {
  1539  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[15]
  1540  	if protoimpl.UnsafeEnabled && x != nil {
  1541  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1542  		if ms.LoadMessageInfo() == nil {
  1543  			ms.StoreMessageInfo(mi)
  1544  		}
  1545  		return ms
  1546  	}
  1547  	return mi.MessageOf(x)
  1548  }
  1549  
  1550  // Deprecated: Use PartitionQueryRequest.ProtoReflect.Descriptor instead.
  1551  func (*PartitionQueryRequest) Descriptor() ([]byte, []int) {
  1552  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{15}
  1553  }
  1554  
  1555  func (x *PartitionQueryRequest) GetParent() string {
  1556  	if x != nil {
  1557  		return x.Parent
  1558  	}
  1559  	return ""
  1560  }
  1561  
  1562  func (m *PartitionQueryRequest) GetQueryType() isPartitionQueryRequest_QueryType {
  1563  	if m != nil {
  1564  		return m.QueryType
  1565  	}
  1566  	return nil
  1567  }
  1568  
  1569  func (x *PartitionQueryRequest) GetStructuredQuery() *StructuredQuery {
  1570  	if x, ok := x.GetQueryType().(*PartitionQueryRequest_StructuredQuery); ok {
  1571  		return x.StructuredQuery
  1572  	}
  1573  	return nil
  1574  }
  1575  
  1576  func (x *PartitionQueryRequest) GetPartitionCount() int64 {
  1577  	if x != nil {
  1578  		return x.PartitionCount
  1579  	}
  1580  	return 0
  1581  }
  1582  
  1583  func (x *PartitionQueryRequest) GetPageToken() string {
  1584  	if x != nil {
  1585  		return x.PageToken
  1586  	}
  1587  	return ""
  1588  }
  1589  
  1590  func (x *PartitionQueryRequest) GetPageSize() int32 {
  1591  	if x != nil {
  1592  		return x.PageSize
  1593  	}
  1594  	return 0
  1595  }
  1596  
  1597  type isPartitionQueryRequest_QueryType interface {
  1598  	isPartitionQueryRequest_QueryType()
  1599  }
  1600  
  1601  type PartitionQueryRequest_StructuredQuery struct {
  1602  	// A structured query.
  1603  	// Query must specify collection with all descendants and be ordered by name
  1604  	// ascending. Other filters, order bys, limits, offsets, and start/end
  1605  	// cursors are not supported.
  1606  	StructuredQuery *StructuredQuery `protobuf:"bytes,2,opt,name=structured_query,json=structuredQuery,proto3,oneof"`
  1607  }
  1608  
  1609  func (*PartitionQueryRequest_StructuredQuery) isPartitionQueryRequest_QueryType() {}
  1610  
  1611  // The response for [Firestore.PartitionQuery][google.firestore.v1beta1.Firestore.PartitionQuery].
  1612  type PartitionQueryResponse struct {
  1613  	state         protoimpl.MessageState
  1614  	sizeCache     protoimpl.SizeCache
  1615  	unknownFields protoimpl.UnknownFields
  1616  
  1617  	// Partition results.
  1618  	// Each partition is a split point that can be used by RunQuery as a starting
  1619  	// or end point for the query results. The RunQuery requests must be made with
  1620  	// the same query supplied to this PartitionQuery request. The partition
  1621  	// cursors will be ordered according to same ordering as the results of the
  1622  	// query supplied to PartitionQuery.
  1623  	//
  1624  	// For example, if a PartitionQuery request returns partition cursors A and B,
  1625  	// running the following three queries will return the entire result set of
  1626  	// the original query:
  1627  	//
  1628  	//  * query, end_at A
  1629  	//  * query, start_at A, end_at B
  1630  	//  * query, start_at B
  1631  	//
  1632  	// An empty result may indicate that the query has too few results to be
  1633  	// partitioned.
  1634  	Partitions []*Cursor `protobuf:"bytes,1,rep,name=partitions,proto3" json:"partitions,omitempty"`
  1635  	// A page token that may be used to request an additional set of results, up
  1636  	// to the number specified by `partition_count` in the PartitionQuery request.
  1637  	// If blank, there are no more results.
  1638  	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
  1639  }
  1640  
  1641  func (x *PartitionQueryResponse) Reset() {
  1642  	*x = PartitionQueryResponse{}
  1643  	if protoimpl.UnsafeEnabled {
  1644  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[16]
  1645  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1646  		ms.StoreMessageInfo(mi)
  1647  	}
  1648  }
  1649  
  1650  func (x *PartitionQueryResponse) String() string {
  1651  	return protoimpl.X.MessageStringOf(x)
  1652  }
  1653  
  1654  func (*PartitionQueryResponse) ProtoMessage() {}
  1655  
  1656  func (x *PartitionQueryResponse) ProtoReflect() protoreflect.Message {
  1657  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[16]
  1658  	if protoimpl.UnsafeEnabled && x != nil {
  1659  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1660  		if ms.LoadMessageInfo() == nil {
  1661  			ms.StoreMessageInfo(mi)
  1662  		}
  1663  		return ms
  1664  	}
  1665  	return mi.MessageOf(x)
  1666  }
  1667  
  1668  // Deprecated: Use PartitionQueryResponse.ProtoReflect.Descriptor instead.
  1669  func (*PartitionQueryResponse) Descriptor() ([]byte, []int) {
  1670  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{16}
  1671  }
  1672  
  1673  func (x *PartitionQueryResponse) GetPartitions() []*Cursor {
  1674  	if x != nil {
  1675  		return x.Partitions
  1676  	}
  1677  	return nil
  1678  }
  1679  
  1680  func (x *PartitionQueryResponse) GetNextPageToken() string {
  1681  	if x != nil {
  1682  		return x.NextPageToken
  1683  	}
  1684  	return ""
  1685  }
  1686  
  1687  // The request for [Firestore.Write][google.firestore.v1beta1.Firestore.Write].
  1688  //
  1689  // The first request creates a stream, or resumes an existing one from a token.
  1690  //
  1691  // When creating a new stream, the server replies with a response containing
  1692  // only an ID and a token, to use in the next request.
  1693  //
  1694  // When resuming a stream, the server first streams any responses later than the
  1695  // given token, then a response containing only an up-to-date token, to use in
  1696  // the next request.
  1697  type WriteRequest struct {
  1698  	state         protoimpl.MessageState
  1699  	sizeCache     protoimpl.SizeCache
  1700  	unknownFields protoimpl.UnknownFields
  1701  
  1702  	// Required. The database name. In the format:
  1703  	// `projects/{project_id}/databases/{database_id}`.
  1704  	// This is only required in the first message.
  1705  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
  1706  	// The ID of the write stream to resume.
  1707  	// This may only be set in the first message. When left empty, a new write
  1708  	// stream will be created.
  1709  	StreamId string `protobuf:"bytes,2,opt,name=stream_id,json=streamId,proto3" json:"stream_id,omitempty"`
  1710  	// The writes to apply.
  1711  	//
  1712  	// Always executed atomically and in order.
  1713  	// This must be empty on the first request.
  1714  	// This may be empty on the last request.
  1715  	// This must not be empty on all other requests.
  1716  	Writes []*Write `protobuf:"bytes,3,rep,name=writes,proto3" json:"writes,omitempty"`
  1717  	// A stream token that was previously sent by the server.
  1718  	//
  1719  	// The client should set this field to the token from the most recent
  1720  	// [WriteResponse][google.firestore.v1beta1.WriteResponse] it has received. This acknowledges that the client has
  1721  	// received responses up to this token. After sending this token, earlier
  1722  	// tokens may not be used anymore.
  1723  	//
  1724  	// The server may close the stream if there are too many unacknowledged
  1725  	// responses.
  1726  	//
  1727  	// Leave this field unset when creating a new stream. To resume a stream at
  1728  	// a specific point, set this field and the `stream_id` field.
  1729  	//
  1730  	// Leave this field unset when creating a new stream.
  1731  	StreamToken []byte `protobuf:"bytes,4,opt,name=stream_token,json=streamToken,proto3" json:"stream_token,omitempty"`
  1732  	// Labels associated with this write request.
  1733  	Labels map[string]string `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1734  }
  1735  
  1736  func (x *WriteRequest) Reset() {
  1737  	*x = WriteRequest{}
  1738  	if protoimpl.UnsafeEnabled {
  1739  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[17]
  1740  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1741  		ms.StoreMessageInfo(mi)
  1742  	}
  1743  }
  1744  
  1745  func (x *WriteRequest) String() string {
  1746  	return protoimpl.X.MessageStringOf(x)
  1747  }
  1748  
  1749  func (*WriteRequest) ProtoMessage() {}
  1750  
  1751  func (x *WriteRequest) ProtoReflect() protoreflect.Message {
  1752  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[17]
  1753  	if protoimpl.UnsafeEnabled && x != nil {
  1754  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1755  		if ms.LoadMessageInfo() == nil {
  1756  			ms.StoreMessageInfo(mi)
  1757  		}
  1758  		return ms
  1759  	}
  1760  	return mi.MessageOf(x)
  1761  }
  1762  
  1763  // Deprecated: Use WriteRequest.ProtoReflect.Descriptor instead.
  1764  func (*WriteRequest) Descriptor() ([]byte, []int) {
  1765  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{17}
  1766  }
  1767  
  1768  func (x *WriteRequest) GetDatabase() string {
  1769  	if x != nil {
  1770  		return x.Database
  1771  	}
  1772  	return ""
  1773  }
  1774  
  1775  func (x *WriteRequest) GetStreamId() string {
  1776  	if x != nil {
  1777  		return x.StreamId
  1778  	}
  1779  	return ""
  1780  }
  1781  
  1782  func (x *WriteRequest) GetWrites() []*Write {
  1783  	if x != nil {
  1784  		return x.Writes
  1785  	}
  1786  	return nil
  1787  }
  1788  
  1789  func (x *WriteRequest) GetStreamToken() []byte {
  1790  	if x != nil {
  1791  		return x.StreamToken
  1792  	}
  1793  	return nil
  1794  }
  1795  
  1796  func (x *WriteRequest) GetLabels() map[string]string {
  1797  	if x != nil {
  1798  		return x.Labels
  1799  	}
  1800  	return nil
  1801  }
  1802  
  1803  // The response for [Firestore.Write][google.firestore.v1beta1.Firestore.Write].
  1804  type WriteResponse struct {
  1805  	state         protoimpl.MessageState
  1806  	sizeCache     protoimpl.SizeCache
  1807  	unknownFields protoimpl.UnknownFields
  1808  
  1809  	// The ID of the stream.
  1810  	// Only set on the first message, when a new stream was created.
  1811  	StreamId string `protobuf:"bytes,1,opt,name=stream_id,json=streamId,proto3" json:"stream_id,omitempty"`
  1812  	// A token that represents the position of this response in the stream.
  1813  	// This can be used by a client to resume the stream at this point.
  1814  	//
  1815  	// This field is always set.
  1816  	StreamToken []byte `protobuf:"bytes,2,opt,name=stream_token,json=streamToken,proto3" json:"stream_token,omitempty"`
  1817  	// The result of applying the writes.
  1818  	//
  1819  	// This i-th write result corresponds to the i-th write in the
  1820  	// request.
  1821  	WriteResults []*WriteResult `protobuf:"bytes,3,rep,name=write_results,json=writeResults,proto3" json:"write_results,omitempty"`
  1822  	// The time at which the commit occurred. Any read with an equal or greater
  1823  	// `read_time` is guaranteed to see the effects of the write.
  1824  	CommitTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=commit_time,json=commitTime,proto3" json:"commit_time,omitempty"`
  1825  }
  1826  
  1827  func (x *WriteResponse) Reset() {
  1828  	*x = WriteResponse{}
  1829  	if protoimpl.UnsafeEnabled {
  1830  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[18]
  1831  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1832  		ms.StoreMessageInfo(mi)
  1833  	}
  1834  }
  1835  
  1836  func (x *WriteResponse) String() string {
  1837  	return protoimpl.X.MessageStringOf(x)
  1838  }
  1839  
  1840  func (*WriteResponse) ProtoMessage() {}
  1841  
  1842  func (x *WriteResponse) ProtoReflect() protoreflect.Message {
  1843  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[18]
  1844  	if protoimpl.UnsafeEnabled && x != nil {
  1845  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1846  		if ms.LoadMessageInfo() == nil {
  1847  			ms.StoreMessageInfo(mi)
  1848  		}
  1849  		return ms
  1850  	}
  1851  	return mi.MessageOf(x)
  1852  }
  1853  
  1854  // Deprecated: Use WriteResponse.ProtoReflect.Descriptor instead.
  1855  func (*WriteResponse) Descriptor() ([]byte, []int) {
  1856  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{18}
  1857  }
  1858  
  1859  func (x *WriteResponse) GetStreamId() string {
  1860  	if x != nil {
  1861  		return x.StreamId
  1862  	}
  1863  	return ""
  1864  }
  1865  
  1866  func (x *WriteResponse) GetStreamToken() []byte {
  1867  	if x != nil {
  1868  		return x.StreamToken
  1869  	}
  1870  	return nil
  1871  }
  1872  
  1873  func (x *WriteResponse) GetWriteResults() []*WriteResult {
  1874  	if x != nil {
  1875  		return x.WriteResults
  1876  	}
  1877  	return nil
  1878  }
  1879  
  1880  func (x *WriteResponse) GetCommitTime() *timestamppb.Timestamp {
  1881  	if x != nil {
  1882  		return x.CommitTime
  1883  	}
  1884  	return nil
  1885  }
  1886  
  1887  // A request for [Firestore.Listen][google.firestore.v1beta1.Firestore.Listen]
  1888  type ListenRequest struct {
  1889  	state         protoimpl.MessageState
  1890  	sizeCache     protoimpl.SizeCache
  1891  	unknownFields protoimpl.UnknownFields
  1892  
  1893  	// Required. The database name. In the format:
  1894  	// `projects/{project_id}/databases/{database_id}`.
  1895  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
  1896  	// The supported target changes.
  1897  	//
  1898  	// Types that are assignable to TargetChange:
  1899  	//	*ListenRequest_AddTarget
  1900  	//	*ListenRequest_RemoveTarget
  1901  	TargetChange isListenRequest_TargetChange `protobuf_oneof:"target_change"`
  1902  	// Labels associated with this target change.
  1903  	Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1904  }
  1905  
  1906  func (x *ListenRequest) Reset() {
  1907  	*x = ListenRequest{}
  1908  	if protoimpl.UnsafeEnabled {
  1909  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[19]
  1910  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1911  		ms.StoreMessageInfo(mi)
  1912  	}
  1913  }
  1914  
  1915  func (x *ListenRequest) String() string {
  1916  	return protoimpl.X.MessageStringOf(x)
  1917  }
  1918  
  1919  func (*ListenRequest) ProtoMessage() {}
  1920  
  1921  func (x *ListenRequest) ProtoReflect() protoreflect.Message {
  1922  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[19]
  1923  	if protoimpl.UnsafeEnabled && x != nil {
  1924  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1925  		if ms.LoadMessageInfo() == nil {
  1926  			ms.StoreMessageInfo(mi)
  1927  		}
  1928  		return ms
  1929  	}
  1930  	return mi.MessageOf(x)
  1931  }
  1932  
  1933  // Deprecated: Use ListenRequest.ProtoReflect.Descriptor instead.
  1934  func (*ListenRequest) Descriptor() ([]byte, []int) {
  1935  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{19}
  1936  }
  1937  
  1938  func (x *ListenRequest) GetDatabase() string {
  1939  	if x != nil {
  1940  		return x.Database
  1941  	}
  1942  	return ""
  1943  }
  1944  
  1945  func (m *ListenRequest) GetTargetChange() isListenRequest_TargetChange {
  1946  	if m != nil {
  1947  		return m.TargetChange
  1948  	}
  1949  	return nil
  1950  }
  1951  
  1952  func (x *ListenRequest) GetAddTarget() *Target {
  1953  	if x, ok := x.GetTargetChange().(*ListenRequest_AddTarget); ok {
  1954  		return x.AddTarget
  1955  	}
  1956  	return nil
  1957  }
  1958  
  1959  func (x *ListenRequest) GetRemoveTarget() int32 {
  1960  	if x, ok := x.GetTargetChange().(*ListenRequest_RemoveTarget); ok {
  1961  		return x.RemoveTarget
  1962  	}
  1963  	return 0
  1964  }
  1965  
  1966  func (x *ListenRequest) GetLabels() map[string]string {
  1967  	if x != nil {
  1968  		return x.Labels
  1969  	}
  1970  	return nil
  1971  }
  1972  
  1973  type isListenRequest_TargetChange interface {
  1974  	isListenRequest_TargetChange()
  1975  }
  1976  
  1977  type ListenRequest_AddTarget struct {
  1978  	// A target to add to this stream.
  1979  	AddTarget *Target `protobuf:"bytes,2,opt,name=add_target,json=addTarget,proto3,oneof"`
  1980  }
  1981  
  1982  type ListenRequest_RemoveTarget struct {
  1983  	// The ID of a target to remove from this stream.
  1984  	RemoveTarget int32 `protobuf:"varint,3,opt,name=remove_target,json=removeTarget,proto3,oneof"`
  1985  }
  1986  
  1987  func (*ListenRequest_AddTarget) isListenRequest_TargetChange() {}
  1988  
  1989  func (*ListenRequest_RemoveTarget) isListenRequest_TargetChange() {}
  1990  
  1991  // The response for [Firestore.Listen][google.firestore.v1beta1.Firestore.Listen].
  1992  type ListenResponse struct {
  1993  	state         protoimpl.MessageState
  1994  	sizeCache     protoimpl.SizeCache
  1995  	unknownFields protoimpl.UnknownFields
  1996  
  1997  	// The supported responses.
  1998  	//
  1999  	// Types that are assignable to ResponseType:
  2000  	//	*ListenResponse_TargetChange
  2001  	//	*ListenResponse_DocumentChange
  2002  	//	*ListenResponse_DocumentDelete
  2003  	//	*ListenResponse_DocumentRemove
  2004  	//	*ListenResponse_Filter
  2005  	ResponseType isListenResponse_ResponseType `protobuf_oneof:"response_type"`
  2006  }
  2007  
  2008  func (x *ListenResponse) Reset() {
  2009  	*x = ListenResponse{}
  2010  	if protoimpl.UnsafeEnabled {
  2011  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[20]
  2012  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2013  		ms.StoreMessageInfo(mi)
  2014  	}
  2015  }
  2016  
  2017  func (x *ListenResponse) String() string {
  2018  	return protoimpl.X.MessageStringOf(x)
  2019  }
  2020  
  2021  func (*ListenResponse) ProtoMessage() {}
  2022  
  2023  func (x *ListenResponse) ProtoReflect() protoreflect.Message {
  2024  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[20]
  2025  	if protoimpl.UnsafeEnabled && x != nil {
  2026  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2027  		if ms.LoadMessageInfo() == nil {
  2028  			ms.StoreMessageInfo(mi)
  2029  		}
  2030  		return ms
  2031  	}
  2032  	return mi.MessageOf(x)
  2033  }
  2034  
  2035  // Deprecated: Use ListenResponse.ProtoReflect.Descriptor instead.
  2036  func (*ListenResponse) Descriptor() ([]byte, []int) {
  2037  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{20}
  2038  }
  2039  
  2040  func (m *ListenResponse) GetResponseType() isListenResponse_ResponseType {
  2041  	if m != nil {
  2042  		return m.ResponseType
  2043  	}
  2044  	return nil
  2045  }
  2046  
  2047  func (x *ListenResponse) GetTargetChange() *TargetChange {
  2048  	if x, ok := x.GetResponseType().(*ListenResponse_TargetChange); ok {
  2049  		return x.TargetChange
  2050  	}
  2051  	return nil
  2052  }
  2053  
  2054  func (x *ListenResponse) GetDocumentChange() *DocumentChange {
  2055  	if x, ok := x.GetResponseType().(*ListenResponse_DocumentChange); ok {
  2056  		return x.DocumentChange
  2057  	}
  2058  	return nil
  2059  }
  2060  
  2061  func (x *ListenResponse) GetDocumentDelete() *DocumentDelete {
  2062  	if x, ok := x.GetResponseType().(*ListenResponse_DocumentDelete); ok {
  2063  		return x.DocumentDelete
  2064  	}
  2065  	return nil
  2066  }
  2067  
  2068  func (x *ListenResponse) GetDocumentRemove() *DocumentRemove {
  2069  	if x, ok := x.GetResponseType().(*ListenResponse_DocumentRemove); ok {
  2070  		return x.DocumentRemove
  2071  	}
  2072  	return nil
  2073  }
  2074  
  2075  func (x *ListenResponse) GetFilter() *ExistenceFilter {
  2076  	if x, ok := x.GetResponseType().(*ListenResponse_Filter); ok {
  2077  		return x.Filter
  2078  	}
  2079  	return nil
  2080  }
  2081  
  2082  type isListenResponse_ResponseType interface {
  2083  	isListenResponse_ResponseType()
  2084  }
  2085  
  2086  type ListenResponse_TargetChange struct {
  2087  	// Targets have changed.
  2088  	TargetChange *TargetChange `protobuf:"bytes,2,opt,name=target_change,json=targetChange,proto3,oneof"`
  2089  }
  2090  
  2091  type ListenResponse_DocumentChange struct {
  2092  	// A [Document][google.firestore.v1beta1.Document] has changed.
  2093  	DocumentChange *DocumentChange `protobuf:"bytes,3,opt,name=document_change,json=documentChange,proto3,oneof"`
  2094  }
  2095  
  2096  type ListenResponse_DocumentDelete struct {
  2097  	// A [Document][google.firestore.v1beta1.Document] has been deleted.
  2098  	DocumentDelete *DocumentDelete `protobuf:"bytes,4,opt,name=document_delete,json=documentDelete,proto3,oneof"`
  2099  }
  2100  
  2101  type ListenResponse_DocumentRemove struct {
  2102  	// A [Document][google.firestore.v1beta1.Document] has been removed from a target (because it is no longer
  2103  	// relevant to that target).
  2104  	DocumentRemove *DocumentRemove `protobuf:"bytes,6,opt,name=document_remove,json=documentRemove,proto3,oneof"`
  2105  }
  2106  
  2107  type ListenResponse_Filter struct {
  2108  	// A filter to apply to the set of documents previously returned for the
  2109  	// given target.
  2110  	//
  2111  	// Returned when documents may have been removed from the given target, but
  2112  	// the exact documents are unknown.
  2113  	Filter *ExistenceFilter `protobuf:"bytes,5,opt,name=filter,proto3,oneof"`
  2114  }
  2115  
  2116  func (*ListenResponse_TargetChange) isListenResponse_ResponseType() {}
  2117  
  2118  func (*ListenResponse_DocumentChange) isListenResponse_ResponseType() {}
  2119  
  2120  func (*ListenResponse_DocumentDelete) isListenResponse_ResponseType() {}
  2121  
  2122  func (*ListenResponse_DocumentRemove) isListenResponse_ResponseType() {}
  2123  
  2124  func (*ListenResponse_Filter) isListenResponse_ResponseType() {}
  2125  
  2126  // A specification of a set of documents to listen to.
  2127  type Target struct {
  2128  	state         protoimpl.MessageState
  2129  	sizeCache     protoimpl.SizeCache
  2130  	unknownFields protoimpl.UnknownFields
  2131  
  2132  	// The type of target to listen to.
  2133  	//
  2134  	// Types that are assignable to TargetType:
  2135  	//	*Target_Query
  2136  	//	*Target_Documents
  2137  	TargetType isTarget_TargetType `protobuf_oneof:"target_type"`
  2138  	// When to start listening.
  2139  	//
  2140  	// If not specified, all matching Documents are returned before any
  2141  	// subsequent changes.
  2142  	//
  2143  	// Types that are assignable to ResumeType:
  2144  	//	*Target_ResumeToken
  2145  	//	*Target_ReadTime
  2146  	ResumeType isTarget_ResumeType `protobuf_oneof:"resume_type"`
  2147  	// The target ID that identifies the target on the stream. Must be a positive
  2148  	// number and non-zero.
  2149  	TargetId int32 `protobuf:"varint,5,opt,name=target_id,json=targetId,proto3" json:"target_id,omitempty"`
  2150  	// If the target should be removed once it is current and consistent.
  2151  	Once bool `protobuf:"varint,6,opt,name=once,proto3" json:"once,omitempty"`
  2152  }
  2153  
  2154  func (x *Target) Reset() {
  2155  	*x = Target{}
  2156  	if protoimpl.UnsafeEnabled {
  2157  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[21]
  2158  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2159  		ms.StoreMessageInfo(mi)
  2160  	}
  2161  }
  2162  
  2163  func (x *Target) String() string {
  2164  	return protoimpl.X.MessageStringOf(x)
  2165  }
  2166  
  2167  func (*Target) ProtoMessage() {}
  2168  
  2169  func (x *Target) ProtoReflect() protoreflect.Message {
  2170  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[21]
  2171  	if protoimpl.UnsafeEnabled && x != nil {
  2172  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2173  		if ms.LoadMessageInfo() == nil {
  2174  			ms.StoreMessageInfo(mi)
  2175  		}
  2176  		return ms
  2177  	}
  2178  	return mi.MessageOf(x)
  2179  }
  2180  
  2181  // Deprecated: Use Target.ProtoReflect.Descriptor instead.
  2182  func (*Target) Descriptor() ([]byte, []int) {
  2183  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{21}
  2184  }
  2185  
  2186  func (m *Target) GetTargetType() isTarget_TargetType {
  2187  	if m != nil {
  2188  		return m.TargetType
  2189  	}
  2190  	return nil
  2191  }
  2192  
  2193  func (x *Target) GetQuery() *Target_QueryTarget {
  2194  	if x, ok := x.GetTargetType().(*Target_Query); ok {
  2195  		return x.Query
  2196  	}
  2197  	return nil
  2198  }
  2199  
  2200  func (x *Target) GetDocuments() *Target_DocumentsTarget {
  2201  	if x, ok := x.GetTargetType().(*Target_Documents); ok {
  2202  		return x.Documents
  2203  	}
  2204  	return nil
  2205  }
  2206  
  2207  func (m *Target) GetResumeType() isTarget_ResumeType {
  2208  	if m != nil {
  2209  		return m.ResumeType
  2210  	}
  2211  	return nil
  2212  }
  2213  
  2214  func (x *Target) GetResumeToken() []byte {
  2215  	if x, ok := x.GetResumeType().(*Target_ResumeToken); ok {
  2216  		return x.ResumeToken
  2217  	}
  2218  	return nil
  2219  }
  2220  
  2221  func (x *Target) GetReadTime() *timestamppb.Timestamp {
  2222  	if x, ok := x.GetResumeType().(*Target_ReadTime); ok {
  2223  		return x.ReadTime
  2224  	}
  2225  	return nil
  2226  }
  2227  
  2228  func (x *Target) GetTargetId() int32 {
  2229  	if x != nil {
  2230  		return x.TargetId
  2231  	}
  2232  	return 0
  2233  }
  2234  
  2235  func (x *Target) GetOnce() bool {
  2236  	if x != nil {
  2237  		return x.Once
  2238  	}
  2239  	return false
  2240  }
  2241  
  2242  type isTarget_TargetType interface {
  2243  	isTarget_TargetType()
  2244  }
  2245  
  2246  type Target_Query struct {
  2247  	// A target specified by a query.
  2248  	Query *Target_QueryTarget `protobuf:"bytes,2,opt,name=query,proto3,oneof"`
  2249  }
  2250  
  2251  type Target_Documents struct {
  2252  	// A target specified by a set of document names.
  2253  	Documents *Target_DocumentsTarget `protobuf:"bytes,3,opt,name=documents,proto3,oneof"`
  2254  }
  2255  
  2256  func (*Target_Query) isTarget_TargetType() {}
  2257  
  2258  func (*Target_Documents) isTarget_TargetType() {}
  2259  
  2260  type isTarget_ResumeType interface {
  2261  	isTarget_ResumeType()
  2262  }
  2263  
  2264  type Target_ResumeToken struct {
  2265  	// A resume token from a prior [TargetChange][google.firestore.v1beta1.TargetChange] for an identical target.
  2266  	//
  2267  	// Using a resume token with a different target is unsupported and may fail.
  2268  	ResumeToken []byte `protobuf:"bytes,4,opt,name=resume_token,json=resumeToken,proto3,oneof"`
  2269  }
  2270  
  2271  type Target_ReadTime struct {
  2272  	// Start listening after a specific `read_time`.
  2273  	//
  2274  	// The client must know the state of matching documents at this time.
  2275  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=read_time,json=readTime,proto3,oneof"`
  2276  }
  2277  
  2278  func (*Target_ResumeToken) isTarget_ResumeType() {}
  2279  
  2280  func (*Target_ReadTime) isTarget_ResumeType() {}
  2281  
  2282  // Targets being watched have changed.
  2283  type TargetChange struct {
  2284  	state         protoimpl.MessageState
  2285  	sizeCache     protoimpl.SizeCache
  2286  	unknownFields protoimpl.UnknownFields
  2287  
  2288  	// The type of change that occurred.
  2289  	TargetChangeType TargetChange_TargetChangeType `protobuf:"varint,1,opt,name=target_change_type,json=targetChangeType,proto3,enum=google.firestore.v1beta1.TargetChange_TargetChangeType" json:"target_change_type,omitempty"`
  2290  	// The target IDs of targets that have changed.
  2291  	//
  2292  	// If empty, the change applies to all targets.
  2293  	//
  2294  	// The order of the target IDs is not defined.
  2295  	TargetIds []int32 `protobuf:"varint,2,rep,packed,name=target_ids,json=targetIds,proto3" json:"target_ids,omitempty"`
  2296  	// The error that resulted in this change, if applicable.
  2297  	Cause *status.Status `protobuf:"bytes,3,opt,name=cause,proto3" json:"cause,omitempty"`
  2298  	// A token that can be used to resume the stream for the given `target_ids`,
  2299  	// or all targets if `target_ids` is empty.
  2300  	//
  2301  	// Not set on every target change.
  2302  	ResumeToken []byte `protobuf:"bytes,4,opt,name=resume_token,json=resumeToken,proto3" json:"resume_token,omitempty"`
  2303  	// The consistent `read_time` for the given `target_ids` (omitted when the
  2304  	// target_ids are not at a consistent snapshot).
  2305  	//
  2306  	// The stream is guaranteed to send a `read_time` with `target_ids` empty
  2307  	// whenever the entire stream reaches a new consistent snapshot. ADD,
  2308  	// CURRENT, and RESET messages are guaranteed to (eventually) result in a
  2309  	// new consistent snapshot (while NO_CHANGE and REMOVE messages are not).
  2310  	//
  2311  	// For a given stream, `read_time` is guaranteed to be monotonically
  2312  	// increasing.
  2313  	ReadTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=read_time,json=readTime,proto3" json:"read_time,omitempty"`
  2314  }
  2315  
  2316  func (x *TargetChange) Reset() {
  2317  	*x = TargetChange{}
  2318  	if protoimpl.UnsafeEnabled {
  2319  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[22]
  2320  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2321  		ms.StoreMessageInfo(mi)
  2322  	}
  2323  }
  2324  
  2325  func (x *TargetChange) String() string {
  2326  	return protoimpl.X.MessageStringOf(x)
  2327  }
  2328  
  2329  func (*TargetChange) ProtoMessage() {}
  2330  
  2331  func (x *TargetChange) ProtoReflect() protoreflect.Message {
  2332  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[22]
  2333  	if protoimpl.UnsafeEnabled && x != nil {
  2334  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2335  		if ms.LoadMessageInfo() == nil {
  2336  			ms.StoreMessageInfo(mi)
  2337  		}
  2338  		return ms
  2339  	}
  2340  	return mi.MessageOf(x)
  2341  }
  2342  
  2343  // Deprecated: Use TargetChange.ProtoReflect.Descriptor instead.
  2344  func (*TargetChange) Descriptor() ([]byte, []int) {
  2345  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{22}
  2346  }
  2347  
  2348  func (x *TargetChange) GetTargetChangeType() TargetChange_TargetChangeType {
  2349  	if x != nil {
  2350  		return x.TargetChangeType
  2351  	}
  2352  	return TargetChange_NO_CHANGE
  2353  }
  2354  
  2355  func (x *TargetChange) GetTargetIds() []int32 {
  2356  	if x != nil {
  2357  		return x.TargetIds
  2358  	}
  2359  	return nil
  2360  }
  2361  
  2362  func (x *TargetChange) GetCause() *status.Status {
  2363  	if x != nil {
  2364  		return x.Cause
  2365  	}
  2366  	return nil
  2367  }
  2368  
  2369  func (x *TargetChange) GetResumeToken() []byte {
  2370  	if x != nil {
  2371  		return x.ResumeToken
  2372  	}
  2373  	return nil
  2374  }
  2375  
  2376  func (x *TargetChange) GetReadTime() *timestamppb.Timestamp {
  2377  	if x != nil {
  2378  		return x.ReadTime
  2379  	}
  2380  	return nil
  2381  }
  2382  
  2383  // The request for [Firestore.ListCollectionIds][google.firestore.v1beta1.Firestore.ListCollectionIds].
  2384  type ListCollectionIdsRequest struct {
  2385  	state         protoimpl.MessageState
  2386  	sizeCache     protoimpl.SizeCache
  2387  	unknownFields protoimpl.UnknownFields
  2388  
  2389  	// Required. The parent document. In the format:
  2390  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
  2391  	// For example:
  2392  	// `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`
  2393  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
  2394  	// The maximum number of results to return.
  2395  	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
  2396  	// A page token. Must be a value from
  2397  	// [ListCollectionIdsResponse][google.firestore.v1beta1.ListCollectionIdsResponse].
  2398  	PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
  2399  }
  2400  
  2401  func (x *ListCollectionIdsRequest) Reset() {
  2402  	*x = ListCollectionIdsRequest{}
  2403  	if protoimpl.UnsafeEnabled {
  2404  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[23]
  2405  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2406  		ms.StoreMessageInfo(mi)
  2407  	}
  2408  }
  2409  
  2410  func (x *ListCollectionIdsRequest) String() string {
  2411  	return protoimpl.X.MessageStringOf(x)
  2412  }
  2413  
  2414  func (*ListCollectionIdsRequest) ProtoMessage() {}
  2415  
  2416  func (x *ListCollectionIdsRequest) ProtoReflect() protoreflect.Message {
  2417  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[23]
  2418  	if protoimpl.UnsafeEnabled && x != nil {
  2419  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2420  		if ms.LoadMessageInfo() == nil {
  2421  			ms.StoreMessageInfo(mi)
  2422  		}
  2423  		return ms
  2424  	}
  2425  	return mi.MessageOf(x)
  2426  }
  2427  
  2428  // Deprecated: Use ListCollectionIdsRequest.ProtoReflect.Descriptor instead.
  2429  func (*ListCollectionIdsRequest) Descriptor() ([]byte, []int) {
  2430  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{23}
  2431  }
  2432  
  2433  func (x *ListCollectionIdsRequest) GetParent() string {
  2434  	if x != nil {
  2435  		return x.Parent
  2436  	}
  2437  	return ""
  2438  }
  2439  
  2440  func (x *ListCollectionIdsRequest) GetPageSize() int32 {
  2441  	if x != nil {
  2442  		return x.PageSize
  2443  	}
  2444  	return 0
  2445  }
  2446  
  2447  func (x *ListCollectionIdsRequest) GetPageToken() string {
  2448  	if x != nil {
  2449  		return x.PageToken
  2450  	}
  2451  	return ""
  2452  }
  2453  
  2454  // The response from [Firestore.ListCollectionIds][google.firestore.v1beta1.Firestore.ListCollectionIds].
  2455  type ListCollectionIdsResponse struct {
  2456  	state         protoimpl.MessageState
  2457  	sizeCache     protoimpl.SizeCache
  2458  	unknownFields protoimpl.UnknownFields
  2459  
  2460  	// The collection ids.
  2461  	CollectionIds []string `protobuf:"bytes,1,rep,name=collection_ids,json=collectionIds,proto3" json:"collection_ids,omitempty"`
  2462  	// A page token that may be used to continue the list.
  2463  	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
  2464  }
  2465  
  2466  func (x *ListCollectionIdsResponse) Reset() {
  2467  	*x = ListCollectionIdsResponse{}
  2468  	if protoimpl.UnsafeEnabled {
  2469  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[24]
  2470  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2471  		ms.StoreMessageInfo(mi)
  2472  	}
  2473  }
  2474  
  2475  func (x *ListCollectionIdsResponse) String() string {
  2476  	return protoimpl.X.MessageStringOf(x)
  2477  }
  2478  
  2479  func (*ListCollectionIdsResponse) ProtoMessage() {}
  2480  
  2481  func (x *ListCollectionIdsResponse) ProtoReflect() protoreflect.Message {
  2482  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[24]
  2483  	if protoimpl.UnsafeEnabled && x != nil {
  2484  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2485  		if ms.LoadMessageInfo() == nil {
  2486  			ms.StoreMessageInfo(mi)
  2487  		}
  2488  		return ms
  2489  	}
  2490  	return mi.MessageOf(x)
  2491  }
  2492  
  2493  // Deprecated: Use ListCollectionIdsResponse.ProtoReflect.Descriptor instead.
  2494  func (*ListCollectionIdsResponse) Descriptor() ([]byte, []int) {
  2495  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{24}
  2496  }
  2497  
  2498  func (x *ListCollectionIdsResponse) GetCollectionIds() []string {
  2499  	if x != nil {
  2500  		return x.CollectionIds
  2501  	}
  2502  	return nil
  2503  }
  2504  
  2505  func (x *ListCollectionIdsResponse) GetNextPageToken() string {
  2506  	if x != nil {
  2507  		return x.NextPageToken
  2508  	}
  2509  	return ""
  2510  }
  2511  
  2512  // The request for [Firestore.BatchWrite][google.firestore.v1beta1.Firestore.BatchWrite].
  2513  type BatchWriteRequest struct {
  2514  	state         protoimpl.MessageState
  2515  	sizeCache     protoimpl.SizeCache
  2516  	unknownFields protoimpl.UnknownFields
  2517  
  2518  	// Required. The database name. In the format:
  2519  	// `projects/{project_id}/databases/{database_id}`.
  2520  	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
  2521  	// The writes to apply.
  2522  	//
  2523  	// Method does not apply writes atomically and does not guarantee ordering.
  2524  	// Each write succeeds or fails independently. You cannot write to the same
  2525  	// document more than once per request.
  2526  	Writes []*Write `protobuf:"bytes,2,rep,name=writes,proto3" json:"writes,omitempty"`
  2527  	// Labels associated with this batch write.
  2528  	Labels map[string]string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  2529  }
  2530  
  2531  func (x *BatchWriteRequest) Reset() {
  2532  	*x = BatchWriteRequest{}
  2533  	if protoimpl.UnsafeEnabled {
  2534  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[25]
  2535  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2536  		ms.StoreMessageInfo(mi)
  2537  	}
  2538  }
  2539  
  2540  func (x *BatchWriteRequest) String() string {
  2541  	return protoimpl.X.MessageStringOf(x)
  2542  }
  2543  
  2544  func (*BatchWriteRequest) ProtoMessage() {}
  2545  
  2546  func (x *BatchWriteRequest) ProtoReflect() protoreflect.Message {
  2547  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[25]
  2548  	if protoimpl.UnsafeEnabled && x != nil {
  2549  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2550  		if ms.LoadMessageInfo() == nil {
  2551  			ms.StoreMessageInfo(mi)
  2552  		}
  2553  		return ms
  2554  	}
  2555  	return mi.MessageOf(x)
  2556  }
  2557  
  2558  // Deprecated: Use BatchWriteRequest.ProtoReflect.Descriptor instead.
  2559  func (*BatchWriteRequest) Descriptor() ([]byte, []int) {
  2560  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{25}
  2561  }
  2562  
  2563  func (x *BatchWriteRequest) GetDatabase() string {
  2564  	if x != nil {
  2565  		return x.Database
  2566  	}
  2567  	return ""
  2568  }
  2569  
  2570  func (x *BatchWriteRequest) GetWrites() []*Write {
  2571  	if x != nil {
  2572  		return x.Writes
  2573  	}
  2574  	return nil
  2575  }
  2576  
  2577  func (x *BatchWriteRequest) GetLabels() map[string]string {
  2578  	if x != nil {
  2579  		return x.Labels
  2580  	}
  2581  	return nil
  2582  }
  2583  
  2584  // The response from [Firestore.BatchWrite][google.firestore.v1beta1.Firestore.BatchWrite].
  2585  type BatchWriteResponse struct {
  2586  	state         protoimpl.MessageState
  2587  	sizeCache     protoimpl.SizeCache
  2588  	unknownFields protoimpl.UnknownFields
  2589  
  2590  	// The result of applying the writes.
  2591  	//
  2592  	// This i-th write result corresponds to the i-th write in the
  2593  	// request.
  2594  	WriteResults []*WriteResult `protobuf:"bytes,1,rep,name=write_results,json=writeResults,proto3" json:"write_results,omitempty"`
  2595  	// The status of applying the writes.
  2596  	//
  2597  	// This i-th write status corresponds to the i-th write in the
  2598  	// request.
  2599  	Status []*status.Status `protobuf:"bytes,2,rep,name=status,proto3" json:"status,omitempty"`
  2600  }
  2601  
  2602  func (x *BatchWriteResponse) Reset() {
  2603  	*x = BatchWriteResponse{}
  2604  	if protoimpl.UnsafeEnabled {
  2605  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[26]
  2606  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2607  		ms.StoreMessageInfo(mi)
  2608  	}
  2609  }
  2610  
  2611  func (x *BatchWriteResponse) String() string {
  2612  	return protoimpl.X.MessageStringOf(x)
  2613  }
  2614  
  2615  func (*BatchWriteResponse) ProtoMessage() {}
  2616  
  2617  func (x *BatchWriteResponse) ProtoReflect() protoreflect.Message {
  2618  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[26]
  2619  	if protoimpl.UnsafeEnabled && x != nil {
  2620  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2621  		if ms.LoadMessageInfo() == nil {
  2622  			ms.StoreMessageInfo(mi)
  2623  		}
  2624  		return ms
  2625  	}
  2626  	return mi.MessageOf(x)
  2627  }
  2628  
  2629  // Deprecated: Use BatchWriteResponse.ProtoReflect.Descriptor instead.
  2630  func (*BatchWriteResponse) Descriptor() ([]byte, []int) {
  2631  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{26}
  2632  }
  2633  
  2634  func (x *BatchWriteResponse) GetWriteResults() []*WriteResult {
  2635  	if x != nil {
  2636  		return x.WriteResults
  2637  	}
  2638  	return nil
  2639  }
  2640  
  2641  func (x *BatchWriteResponse) GetStatus() []*status.Status {
  2642  	if x != nil {
  2643  		return x.Status
  2644  	}
  2645  	return nil
  2646  }
  2647  
  2648  // A target specified by a set of documents names.
  2649  type Target_DocumentsTarget struct {
  2650  	state         protoimpl.MessageState
  2651  	sizeCache     protoimpl.SizeCache
  2652  	unknownFields protoimpl.UnknownFields
  2653  
  2654  	// The names of the documents to retrieve. In the format:
  2655  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
  2656  	// The request will fail if any of the document is not a child resource of
  2657  	// the given `database`. Duplicate names will be elided.
  2658  	Documents []string `protobuf:"bytes,2,rep,name=documents,proto3" json:"documents,omitempty"`
  2659  }
  2660  
  2661  func (x *Target_DocumentsTarget) Reset() {
  2662  	*x = Target_DocumentsTarget{}
  2663  	if protoimpl.UnsafeEnabled {
  2664  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[29]
  2665  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2666  		ms.StoreMessageInfo(mi)
  2667  	}
  2668  }
  2669  
  2670  func (x *Target_DocumentsTarget) String() string {
  2671  	return protoimpl.X.MessageStringOf(x)
  2672  }
  2673  
  2674  func (*Target_DocumentsTarget) ProtoMessage() {}
  2675  
  2676  func (x *Target_DocumentsTarget) ProtoReflect() protoreflect.Message {
  2677  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[29]
  2678  	if protoimpl.UnsafeEnabled && x != nil {
  2679  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2680  		if ms.LoadMessageInfo() == nil {
  2681  			ms.StoreMessageInfo(mi)
  2682  		}
  2683  		return ms
  2684  	}
  2685  	return mi.MessageOf(x)
  2686  }
  2687  
  2688  // Deprecated: Use Target_DocumentsTarget.ProtoReflect.Descriptor instead.
  2689  func (*Target_DocumentsTarget) Descriptor() ([]byte, []int) {
  2690  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{21, 0}
  2691  }
  2692  
  2693  func (x *Target_DocumentsTarget) GetDocuments() []string {
  2694  	if x != nil {
  2695  		return x.Documents
  2696  	}
  2697  	return nil
  2698  }
  2699  
  2700  // A target specified by a query.
  2701  type Target_QueryTarget struct {
  2702  	state         protoimpl.MessageState
  2703  	sizeCache     protoimpl.SizeCache
  2704  	unknownFields protoimpl.UnknownFields
  2705  
  2706  	// The parent resource name. In the format:
  2707  	// `projects/{project_id}/databases/{database_id}/documents` or
  2708  	// `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
  2709  	// For example:
  2710  	// `projects/my-project/databases/my-database/documents` or
  2711  	// `projects/my-project/databases/my-database/documents/chatrooms/my-chatroom`
  2712  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
  2713  	// The query to run.
  2714  	//
  2715  	// Types that are assignable to QueryType:
  2716  	//	*Target_QueryTarget_StructuredQuery
  2717  	QueryType isTarget_QueryTarget_QueryType `protobuf_oneof:"query_type"`
  2718  }
  2719  
  2720  func (x *Target_QueryTarget) Reset() {
  2721  	*x = Target_QueryTarget{}
  2722  	if protoimpl.UnsafeEnabled {
  2723  		mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[30]
  2724  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2725  		ms.StoreMessageInfo(mi)
  2726  	}
  2727  }
  2728  
  2729  func (x *Target_QueryTarget) String() string {
  2730  	return protoimpl.X.MessageStringOf(x)
  2731  }
  2732  
  2733  func (*Target_QueryTarget) ProtoMessage() {}
  2734  
  2735  func (x *Target_QueryTarget) ProtoReflect() protoreflect.Message {
  2736  	mi := &file_google_firestore_v1beta1_firestore_proto_msgTypes[30]
  2737  	if protoimpl.UnsafeEnabled && x != nil {
  2738  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2739  		if ms.LoadMessageInfo() == nil {
  2740  			ms.StoreMessageInfo(mi)
  2741  		}
  2742  		return ms
  2743  	}
  2744  	return mi.MessageOf(x)
  2745  }
  2746  
  2747  // Deprecated: Use Target_QueryTarget.ProtoReflect.Descriptor instead.
  2748  func (*Target_QueryTarget) Descriptor() ([]byte, []int) {
  2749  	return file_google_firestore_v1beta1_firestore_proto_rawDescGZIP(), []int{21, 1}
  2750  }
  2751  
  2752  func (x *Target_QueryTarget) GetParent() string {
  2753  	if x != nil {
  2754  		return x.Parent
  2755  	}
  2756  	return ""
  2757  }
  2758  
  2759  func (m *Target_QueryTarget) GetQueryType() isTarget_QueryTarget_QueryType {
  2760  	if m != nil {
  2761  		return m.QueryType
  2762  	}
  2763  	return nil
  2764  }
  2765  
  2766  func (x *Target_QueryTarget) GetStructuredQuery() *StructuredQuery {
  2767  	if x, ok := x.GetQueryType().(*Target_QueryTarget_StructuredQuery); ok {
  2768  		return x.StructuredQuery
  2769  	}
  2770  	return nil
  2771  }
  2772  
  2773  type isTarget_QueryTarget_QueryType interface {
  2774  	isTarget_QueryTarget_QueryType()
  2775  }
  2776  
  2777  type Target_QueryTarget_StructuredQuery struct {
  2778  	// A structured query.
  2779  	StructuredQuery *StructuredQuery `protobuf:"bytes,2,opt,name=structured_query,json=structuredQuery,proto3,oneof"`
  2780  }
  2781  
  2782  func (*Target_QueryTarget_StructuredQuery) isTarget_QueryTarget_QueryType() {}
  2783  
  2784  var File_google_firestore_v1beta1_firestore_proto protoreflect.FileDescriptor
  2785  
  2786  var file_google_firestore_v1beta1_firestore_proto_rawDesc = []byte{
  2787  	0x0a, 0x28, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f,
  2788  	0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x66, 0x69, 0x72, 0x65, 0x73,
  2789  	0x74, 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67,
  2790  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  2791  	0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
  2792  	0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
  2793  	0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63,
  2794  	0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
  2795  	0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
  2796  	0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x67, 0x6f,
  2797  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76,
  2798  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
  2799  	0x6f, 0x74, 0x6f, 0x1a, 0x27, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x66, 0x69, 0x72, 0x65,
  2800  	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x6f,
  2801  	0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x24, 0x67, 0x6f,
  2802  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76,
  2803  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f,
  2804  	0x74, 0x6f, 0x1a, 0x24, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x66, 0x69, 0x72, 0x65, 0x73,
  2805  	0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x77, 0x72, 0x69,
  2806  	0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2807  	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e,
  2808  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
  2809  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
  2810  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72,
  2811  	0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
  2812  	0xe0, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52,
  2813  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
  2814  	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
  2815  	0x3a, 0x0a, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e,
  2816  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
  2817  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  2818  	0x74, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x22, 0x0a, 0x0b, 0x74,
  2819  	0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
  2820  	0x48, 0x00, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  2821  	0x39, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01,
  2822  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2823  	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00,
  2824  	0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x16, 0x0a, 0x14, 0x63, 0x6f,
  2825  	0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
  2826  	0x6f, 0x72, 0x22, 0x8a, 0x03, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d,
  2827  	0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70,
  2828  	0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
  2829  	0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c,
  2830  	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42,
  2831  	0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  2832  	0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18,
  2833  	0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12,
  2834  	0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20,
  2835  	0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19,
  2836  	0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
  2837  	0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x3a, 0x0a, 0x04, 0x6d, 0x61, 0x73,
  2838  	0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2839  	0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2840  	0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x73, 0x6b, 0x52,
  2841  	0x04, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x22, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
  2842  	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x74, 0x72,
  2843  	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x65, 0x61,
  2844  	0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  2845  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  2846  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64,
  2847  	0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73,
  2848  	0x73, 0x69, 0x6e, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77,
  2849  	0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x42, 0x16, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x73, 0x69,
  2850  	0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22,
  2851  	0x81, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  2852  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x09, 0x64, 0x6f, 0x63,
  2853  	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67,
  2854  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
  2855  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  2856  	0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e,
  2857  	0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02,
  2858  	0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f,
  2859  	0x6b, 0x65, 0x6e, 0x22, 0x80, 0x02, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f,
  2860  	0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
  2861  	0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
  2862  	0x41, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x6f,
  2863  	0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
  2864  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
  2865  	0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  2866  	0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x6f, 0x63, 0x75, 0x6d,
  2867  	0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  2868  	0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2869  	0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2870  	0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02,
  2871  	0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x04, 0x6d, 0x61,
  2872  	0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2873  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2874  	0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x73, 0x6b,
  2875  	0x52, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x22, 0xb4, 0x02, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74,
  2876  	0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  2877  	0x12, 0x43, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
  2878  	0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65,
  2879  	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f,
  2880  	0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63,
  2881  	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
  2882  	0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f,
  2883  	0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31,
  2884  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61,
  2885  	0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x3a,
  2886  	0x0a, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67,
  2887  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
  2888  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  2889  	0x4d, 0x61, 0x73, 0x6b, 0x52, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x51, 0x0a, 0x10, 0x63, 0x75,
  2890  	0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04,
  2891  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69,
  2892  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2893  	0x50, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x63, 0x75,
  2894  	0x72, 0x72, 0x65, 0x6e, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x83, 0x01,
  2895  	0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  2896  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
  2897  	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  2898  	0x12, 0x51, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x6f, 0x63, 0x75,
  2899  	0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f,
  2900  	0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31,
  2901  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
  2902  	0x6f, 0x6e, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d,
  2903  	0x65, 0x6e, 0x74, 0x22, 0xe5, 0x02, 0x0a, 0x18, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74,
  2904  	0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  2905  	0x12, 0x1f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01,
  2906  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
  2907  	0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02,
  2908  	0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12,
  2909  	0x3a, 0x0a, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e,
  2910  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
  2911  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  2912  	0x74, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x04, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x22, 0x0a, 0x0b, 0x74,
  2913  	0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c,
  2914  	0x48, 0x00, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  2915  	0x57, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69,
  2916  	0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2917  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2918  	0x74, 0x61, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f,
  2919  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x54, 0x72, 0x61,
  2920  	0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64,
  2921  	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
  2922  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
  2923  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x54,
  2924  	0x69, 0x6d, 0x65, 0x42, 0x16, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e,
  2925  	0x63, 0x79, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xd8, 0x01, 0x0a, 0x19,
  2926  	0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  2927  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x66, 0x6f, 0x75,
  2928  	0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2929  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2930  	0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x05,
  2931  	0x66, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67,
  2932  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e,
  2933  	0x67, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  2934  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74,
  2935  	0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65,
  2936  	0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2937  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
  2938  	0x6d, 0x70, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x08, 0x0a, 0x06,
  2939  	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x82, 0x01, 0x0a, 0x17, 0x42, 0x65, 0x67, 0x69, 0x6e,
  2940  	0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
  2941  	0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01,
  2942  	0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62,
  2943  	0x61, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,
  2944  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69,
  2945  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2946  	0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f,
  2947  	0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3c, 0x0a, 0x18, 0x42,
  2948  	0x65, 0x67, 0x69, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
  2949  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73,
  2950  	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x74, 0x72,
  2951  	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8b, 0x01, 0x0a, 0x0d, 0x43, 0x6f,
  2952  	0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x64,
  2953  	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
  2954  	0x41, 0x02, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x06,
  2955  	0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67,
  2956  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
  2957  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x06, 0x77,
  2958  	0x72, 0x69, 0x74, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
  2959  	0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e,
  2960  	0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x99, 0x01, 0x0a, 0x0e, 0x43, 0x6f, 0x6d, 0x6d,
  2961  	0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0d, 0x77, 0x72,
  2962  	0x69, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
  2963  	0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73,
  2964  	0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69,
  2965  	0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x52,
  2966  	0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
  2967  	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
  2968  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
  2969  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x54,
  2970  	0x69, 0x6d, 0x65, 0x22, 0x59, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52,
  2971  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
  2972  	0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64,
  2973  	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73,
  2974  	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41,
  2975  	0x02, 0x52, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe4,
  2976  	0x02, 0x0a, 0x0f, 0x52, 0x75, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
  2977  	0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
  2978  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
  2979  	0x56, 0x0a, 0x10, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x71, 0x75,
  2980  	0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2981  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  2982  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x64, 0x51,
  2983  	0x75, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72,
  2984  	0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x22, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73,
  2985  	0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b,
  2986  	0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x57, 0x0a, 0x0f, 0x6e,
  2987  	0x65, 0x77, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06,
  2988  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69,
  2989  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  2990  	0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f,
  2991  	0x6e, 0x73, 0x48, 0x01, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63,
  2992  	0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d,
  2993  	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2994  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  2995  	0x61, 0x6d, 0x70, 0x48, 0x01, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42,
  2996  	0x0c, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x16, 0x0a,
  2997  	0x14, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x73, 0x65, 0x6c,
  2998  	0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xd6, 0x01, 0x0a, 0x10, 0x52, 0x75, 0x6e, 0x51, 0x75, 0x65,
  2999  	0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x72,
  3000  	0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
  3001  	0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x08,
  3002  	0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
  3003  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72,
  3004  	0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65,
  3005  	0x6e, 0x74, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x09,
  3006  	0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3007  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  3008  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x72, 0x65, 0x61,
  3009  	0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64,
  3010  	0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e,
  3011  	0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0xff,
  3012  	0x01, 0x0a, 0x15, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72,
  3013  	0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
  3014  	0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70,
  3015  	0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x56, 0x0a, 0x10, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75,
  3016  	0x72, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
  3017  	0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f,
  3018  	0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63,
  3019  	0x74, 0x75, 0x72, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x74,
  3020  	0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x27, 0x0a,
  3021  	0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
  3022  	0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f,
  3023  	0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
  3024  	0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
  3025  	0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69,
  3026  	0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69,
  3027  	0x7a, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65,
  3028  	0x22, 0x82, 0x01, 0x0a, 0x16, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75,
  3029  	0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x40, 0x0a, 0x0a, 0x70,
  3030  	0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
  3031  	0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f,
  3032  	0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x75, 0x72, 0x73, 0x6f,
  3033  	0x72, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a,
  3034  	0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
  3035  	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65,
  3036  	0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xaf, 0x02, 0x0a, 0x0c, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52,
  3037  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
  3038  	0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64,
  3039  	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61,
  3040  	0x6d, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65,
  3041  	0x61, 0x6d, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, 0x03,
  3042  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69,
  3043  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  3044  	0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a,
  3045  	0x0c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20,
  3046  	0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  3047  	0x12, 0x4a, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b,
  3048  	0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3049  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74,
  3050  	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
  3051  	0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b,
  3052  	0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
  3053  	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
  3054  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
  3055  	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd8, 0x01, 0x0a, 0x0d, 0x57, 0x72, 0x69, 0x74,
  3056  	0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x72,
  3057  	0x65, 0x61, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74,
  3058  	0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
  3059  	0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x74,
  3060  	0x72, 0x65, 0x61, 0x6d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x4a, 0x0a, 0x0d, 0x77, 0x72, 0x69,
  3061  	0x74, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
  3062  	0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3063  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74,
  3064  	0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65,
  3065  	0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f,
  3066  	0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  3067  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  3068  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x54, 0x69,
  3069  	0x6d, 0x65, 0x22, 0xb3, 0x02, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x52, 0x65, 0x71,
  3070  	0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
  3071  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x61, 0x74,
  3072  	0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0a, 0x61, 0x64, 0x64, 0x5f, 0x74, 0x61, 0x72,
  3073  	0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3074  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  3075  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x00, 0x52, 0x09, 0x61,
  3076  	0x64, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0d, 0x72, 0x65, 0x6d, 0x6f,
  3077  	0x76, 0x65, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48,
  3078  	0x00, 0x52, 0x0c, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12,
  3079  	0x4b, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
  3080  	0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f,
  3081  	0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65,
  3082  	0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
  3083  	0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b,
  3084  	0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
  3085  	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a,
  3086  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61,
  3087  	0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x74, 0x61, 0x72, 0x67, 0x65,
  3088  	0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0xb4, 0x03, 0x0a, 0x0e, 0x4c, 0x69, 0x73,
  3089  	0x74, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0d, 0x74,
  3090  	0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01,
  3091  	0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65,
  3092  	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x61,
  3093  	0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0c, 0x74, 0x61,
  3094  	0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x53, 0x0a, 0x0f, 0x64, 0x6f,
  3095  	0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20,
  3096  	0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72,
  3097  	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44,
  3098  	0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52,
  3099  	0x0e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12,
  3100  	0x53, 0x0a, 0x0f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x65,
  3101  	0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3102  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  3103  	0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65,
  3104  	0x74, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65,
  3105  	0x6c, 0x65, 0x74, 0x65, 0x12, 0x53, 0x0a, 0x0f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  3106  	0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
  3107  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
  3108  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3109  	0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x48, 0x00, 0x52, 0x0e, 0x64, 0x6f, 0x63, 0x75, 0x6d,
  3110  	0x65, 0x6e, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x66, 0x69, 0x6c,
  3111  	0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3112  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  3113  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x46, 0x69,
  3114  	0x6c, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x42, 0x0f,
  3115  	0x0a, 0x0d, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22,
  3116  	0x8e, 0x04, 0x0a, 0x06, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x44, 0x0a, 0x05, 0x71, 0x75,
  3117  	0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3118  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  3119  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x2e, 0x51, 0x75, 0x65, 0x72,
  3120  	0x79, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x00, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79,
  3121  	0x12, 0x50, 0x0a, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20,
  3122  	0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72,
  3123  	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54,
  3124  	0x61, 0x72, 0x67, 0x65, 0x74, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x54,
  3125  	0x61, 0x72, 0x67, 0x65, 0x74, 0x48, 0x00, 0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3126  	0x74, 0x73, 0x12, 0x23, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x6b,
  3127  	0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x75,
  3128  	0x6d, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x39, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f,
  3129  	0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  3130  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  3131  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x01, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69,
  3132  	0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18,
  3133  	0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x12,
  3134  	0x12, 0x0a, 0x04, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6f,
  3135  	0x6e, 0x63, 0x65, 0x1a, 0x2f, 0x0a, 0x0f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73,
  3136  	0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
  3137  	0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d,
  3138  	0x65, 0x6e, 0x74, 0x73, 0x1a, 0x8b, 0x01, 0x0a, 0x0b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x61,
  3139  	0x72, 0x67, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
  3140  	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x56, 0x0a, 0x10,
  3141  	0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x64, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79,
  3142  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3143  	0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3144  	0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72,
  3145  	0x79, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x64, 0x51,
  3146  	0x75, 0x65, 0x72, 0x79, 0x42, 0x0c, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x79,
  3147  	0x70, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70,
  3148  	0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65,
  3149  	0x22, 0xea, 0x02, 0x0a, 0x0c, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67,
  3150  	0x65, 0x12, 0x65, 0x0a, 0x12, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e,
  3151  	0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e,
  3152  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
  3153  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43,
  3154  	0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e,
  3155  	0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68,
  3156  	0x61, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x72, 0x67,
  3157  	0x65, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x74, 0x61,
  3158  	0x72, 0x67, 0x65, 0x74, 0x49, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65,
  3159  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3160  	0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, 0x63, 0x61, 0x75, 0x73,
  3161  	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65,
  3162  	0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x54,
  3163  	0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x69, 0x6d,
  3164  	0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3165  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  3166  	0x61, 0x6d, 0x70, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x4e, 0x0a,
  3167  	0x10, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x79, 0x70,
  3168  	0x65, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x00,
  3169  	0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d,
  3170  	0x4f, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x55, 0x52, 0x52, 0x45, 0x4e, 0x54,
  3171  	0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x45, 0x53, 0x45, 0x54, 0x10, 0x04, 0x22, 0x73, 0x0a,
  3172  	0x18, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49,
  3173  	0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61, 0x72,
  3174  	0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06,
  3175  	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73,
  3176  	0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53,
  3177  	0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65,
  3178  	0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
  3179  	0x65, 0x6e, 0x22, 0x6a, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
  3180  	0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
  3181  	0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64,
  3182  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74,
  3183  	0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70,
  3184  	0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
  3185  	0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xf9,
  3186  	0x01, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x63, 0x68, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71,
  3187  	0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
  3188  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x61, 0x74,
  3189  	0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18,
  3190  	0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66,
  3191  	0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  3192  	0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x12, 0x4f,
  3193  	0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37,
  3194  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72,
  3195  	0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x57,
  3196  	0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65,
  3197  	0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a,
  3198  	0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
  3199  	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
  3200  	0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
  3201  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8c, 0x01, 0x0a, 0x12, 0x42,
  3202  	0x61, 0x74, 0x63, 0x68, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  3203  	0x65, 0x12, 0x4a, 0x0a, 0x0d, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c,
  3204  	0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3205  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  3206  	0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52,
  3207  	0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x2a, 0x0a,
  3208  	0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e,
  3209  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75,
  3210  	0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x32, 0xe4, 0x18, 0x0a, 0x09, 0x46, 0x69,
  3211  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x9e, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x44,
  3212  	0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3213  	0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  3214  	0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
  3215  	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66,
  3216  	0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  3217  	0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x3d, 0x82, 0xd3, 0xe4, 0x93, 0x02,
  3218  	0x37, 0x12, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d,
  3219  	0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74,
  3220  	0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3221  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x2a, 0x7d, 0x12, 0xc1, 0x01, 0x0a, 0x0d, 0x4c, 0x69, 0x73,
  3222  	0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x6f,
  3223  	0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31,
  3224  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65,
  3225  	0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x6f,
  3226  	0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31,
  3227  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65,
  3228  	0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4f, 0x82, 0xd3, 0xe4,
  3229  	0x93, 0x02, 0x49, 0x12, 0x47, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
  3230  	0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
  3231  	0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63,
  3232  	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x2a, 0x7d, 0x2f, 0x7b, 0x63, 0x6f,
  3233  	0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x7d, 0x12, 0xce, 0x01, 0x0a,
  3234  	0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12,
  3235  	0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f,
  3236  	0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
  3237  	0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3238  	0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3239  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75,
  3240  	0x6d, 0x65, 0x6e, 0x74, 0x22, 0x67, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x32, 0x3e, 0x2f, 0x76,
  3241  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  3242  	0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
  3243  	0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63,
  3244  	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x2a, 0x7d, 0x3a, 0x08, 0x64, 0x6f,
  3245  	0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x14, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3246  	0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x9f, 0x01,
  3247  	0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
  3248  	0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3249  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65,
  3250  	0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  3251  	0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  3252  	0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02,
  3253  	0x37, 0x2a, 0x35, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d,
  3254  	0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74,
  3255  	0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3256  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
  3257  	0xc8, 0x01, 0x0a, 0x11, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75,
  3258  	0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66,
  3259  	0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  3260  	0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3261  	0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3262  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  3263  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63,
  3264  	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x48,
  3265  	0x82, 0xd3, 0xe4, 0x93, 0x02, 0x42, 0x22, 0x3d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  3266  	0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  3267  	0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f,
  3268  	0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x62, 0x61, 0x74,
  3269  	0x63, 0x68, 0x47, 0x65, 0x74, 0x3a, 0x01, 0x2a, 0x30, 0x01, 0x12, 0xd6, 0x01, 0x0a, 0x10, 0x42,
  3270  	0x65, 0x67, 0x69, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  3271  	0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f,
  3272  	0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x65, 0x67, 0x69, 0x6e,
  3273  	0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
  3274  	0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65,
  3275  	0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x65,
  3276  	0x67, 0x69, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
  3277  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4a, 0x22, 0x45,
  3278  	0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
  3279  	0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61,
  3280  	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d,
  3281  	0x65, 0x6e, 0x74, 0x73, 0x3a, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61,
  3282  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62,
  3283  	0x61, 0x73, 0x65, 0x12, 0xb5, 0x01, 0x0a, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x27,
  3284  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72,
  3285  	0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
  3286  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3287  	0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  3288  	0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  3289  	0x65, 0x22, 0x58, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x40, 0x22, 0x3b, 0x2f, 0x76, 0x31, 0x62, 0x65,
  3290  	0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72,
  3291  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
  3292  	0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a,
  3293  	0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0f, 0x64, 0x61, 0x74, 0x61,
  3294  	0x62, 0x61, 0x73, 0x65, 0x2c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x12, 0xae, 0x01, 0x0a, 0x08,
  3295  	0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3296  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  3297  	0x74, 0x61, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75,
  3298  	0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  3299  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x5f, 0x82, 0xd3, 0xe4,
  3300  	0x93, 0x02, 0x42, 0x22, 0x3d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64,
  3301  	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
  3302  	0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
  3303  	0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x72, 0x6f, 0x6c, 0x6c, 0x62, 0x61,
  3304  	0x63, 0x6b, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x14, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
  3305  	0x2c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0xf4, 0x01, 0x0a,
  3306  	0x08, 0x52, 0x75, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  3307  	0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
  3308  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x75, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71,
  3309  	0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69,
  3310  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  3311  	0x52, 0x75, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
  3312  	0x22, 0x8e, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x87, 0x01, 0x22, 0x3b, 0x2f, 0x76, 0x31, 0x62,
  3313  	0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
  3314  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
  3315  	0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x7d, 0x3a, 0x72,
  3316  	0x75, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x3a, 0x01, 0x2a, 0x5a, 0x45, 0x22, 0x40, 0x2f, 0x76,
  3317  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
  3318  	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61,
  3319  	0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
  3320  	0x2a, 0x2f, 0x2a, 0x2a, 0x7d, 0x3a, 0x72, 0x75, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x3a, 0x01,
  3321  	0x2a, 0x30, 0x01, 0x12, 0x90, 0x02, 0x0a, 0x0e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f,
  3322  	0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3323  	0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3324  	0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79,
  3325  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3326  	0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  3327  	0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72,
  3328  	0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9a, 0x01, 0x82, 0xd3, 0xe4, 0x93,
  3329  	0x02, 0x93, 0x01, 0x22, 0x41, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
  3330  	0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
  3331  	0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63,
  3332  	0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x7d, 0x3a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f,
  3333  	0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x3a, 0x01, 0x2a, 0x5a, 0x4b, 0x22, 0x46, 0x2f, 0x76, 0x31,
  3334  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
  3335  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
  3336  	0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a,
  3337  	0x2f, 0x2a, 0x2a, 0x7d, 0x3a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75,
  3338  	0x65, 0x72, 0x79, 0x3a, 0x01, 0x2a, 0x12, 0xa3, 0x01, 0x0a, 0x05, 0x57, 0x72, 0x69, 0x74, 0x65,
  3339  	0x12, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3340  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74,
  3341  	0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  3342  	0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
  3343  	0x74, 0x61, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  3344  	0x65, 0x22, 0x45, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x22, 0x3a, 0x2f, 0x76, 0x31, 0x62, 0x65,
  3345  	0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72,
  3346  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73,
  3347  	0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a,
  3348  	0x77, 0x72, 0x69, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x28, 0x01, 0x30, 0x01, 0x12, 0xa7, 0x01, 0x0a,
  3349  	0x06, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x12, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  3350  	0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  3351  	0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3352  	0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3353  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
  3354  	0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x46, 0x82, 0xd3, 0xe4, 0x93,
  3355  	0x02, 0x40, 0x22, 0x3b, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64, 0x61,
  3356  	0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
  3357  	0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64,
  3358  	0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x3a,
  3359  	0x01, 0x2a, 0x28, 0x01, 0x30, 0x01, 0x12, 0xa8, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x43,
  3360  	0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x32, 0x2e, 0x67,
  3361  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
  3362  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x6c,
  3363  	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
  3364  	0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3365  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
  3366  	0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x52, 0x65, 0x73,
  3367  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa9, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x99, 0x01, 0x22,
  3368  	0x44, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
  3369  	0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74,
  3370  	0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
  3371  	0x74, 0x73, 0x7d, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
  3372  	0x6f, 0x6e, 0x49, 0x64, 0x73, 0x3a, 0x01, 0x2a, 0x5a, 0x4e, 0x22, 0x49, 0x2f, 0x76, 0x31, 0x62,
  3373  	0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
  3374  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
  3375  	0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
  3376  	0x2a, 0x2a, 0x7d, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
  3377  	0x6f, 0x6e, 0x49, 0x64, 0x73, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
  3378  	0x74, 0x12, 0xb3, 0x01, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x57, 0x72, 0x69, 0x74, 0x65,
  3379  	0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74,
  3380  	0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63,
  3381  	0x68, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e,
  3382  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
  3383  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x57, 0x72,
  3384  	0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4a, 0x82, 0xd3, 0xe4,
  3385  	0x93, 0x02, 0x44, 0x22, 0x3f, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64,
  3386  	0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
  3387  	0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
  3388  	0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x57,
  3389  	0x72, 0x69, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0xbe, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61,
  3390  	0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f,
  3391  	0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31,
  3392  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75,
  3393  	0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f,
  3394  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76,
  3395  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x22,
  3396  	0x57, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x51, 0x22, 0x45, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3397  	0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  3398  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a,
  3399  	0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2a, 0x7d, 0x2f, 0x7b,
  3400  	0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x7d, 0x3a, 0x08,
  3401  	0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x76, 0xca, 0x41, 0x18, 0x66, 0x69, 0x72,
  3402  	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
  3403  	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x58, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f,
  3404  	0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
  3405  	0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c,
  3406  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77,
  3407  	0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
  3408  	0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
  3409  	0x42, 0xe0, 0x01, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  3410  	0x66, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  3411  	0x31, 0x42, 0x0e, 0x46, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x74,
  3412  	0x6f, 0x50, 0x01, 0x5a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
  3413  	0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
  3414  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x66, 0x69, 0x72, 0x65, 0x73,
  3415  	0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x66, 0x69, 0x72,
  3416  	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0xa2, 0x02, 0x04, 0x47, 0x43, 0x46, 0x53, 0xaa, 0x02, 0x1e,
  3417  	0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x46, 0x69, 0x72,
  3418  	0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02,
  3419  	0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x46, 0x69,
  3420  	0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea,
  3421  	0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a,
  3422  	0x3a, 0x46, 0x69, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65,
  3423  	0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  3424  }
  3425  
  3426  var (
  3427  	file_google_firestore_v1beta1_firestore_proto_rawDescOnce sync.Once
  3428  	file_google_firestore_v1beta1_firestore_proto_rawDescData = file_google_firestore_v1beta1_firestore_proto_rawDesc
  3429  )
  3430  
  3431  func file_google_firestore_v1beta1_firestore_proto_rawDescGZIP() []byte {
  3432  	file_google_firestore_v1beta1_firestore_proto_rawDescOnce.Do(func() {
  3433  		file_google_firestore_v1beta1_firestore_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_firestore_v1beta1_firestore_proto_rawDescData)
  3434  	})
  3435  	return file_google_firestore_v1beta1_firestore_proto_rawDescData
  3436  }
  3437  
  3438  var file_google_firestore_v1beta1_firestore_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  3439  var file_google_firestore_v1beta1_firestore_proto_msgTypes = make([]protoimpl.MessageInfo, 32)
  3440  var file_google_firestore_v1beta1_firestore_proto_goTypes = []interface{}{
  3441  	(TargetChange_TargetChangeType)(0), // 0: google.firestore.v1beta1.TargetChange.TargetChangeType
  3442  	(*GetDocumentRequest)(nil),         // 1: google.firestore.v1beta1.GetDocumentRequest
  3443  	(*ListDocumentsRequest)(nil),       // 2: google.firestore.v1beta1.ListDocumentsRequest
  3444  	(*ListDocumentsResponse)(nil),      // 3: google.firestore.v1beta1.ListDocumentsResponse
  3445  	(*CreateDocumentRequest)(nil),      // 4: google.firestore.v1beta1.CreateDocumentRequest
  3446  	(*UpdateDocumentRequest)(nil),      // 5: google.firestore.v1beta1.UpdateDocumentRequest
  3447  	(*DeleteDocumentRequest)(nil),      // 6: google.firestore.v1beta1.DeleteDocumentRequest
  3448  	(*BatchGetDocumentsRequest)(nil),   // 7: google.firestore.v1beta1.BatchGetDocumentsRequest
  3449  	(*BatchGetDocumentsResponse)(nil),  // 8: google.firestore.v1beta1.BatchGetDocumentsResponse
  3450  	(*BeginTransactionRequest)(nil),    // 9: google.firestore.v1beta1.BeginTransactionRequest
  3451  	(*BeginTransactionResponse)(nil),   // 10: google.firestore.v1beta1.BeginTransactionResponse
  3452  	(*CommitRequest)(nil),              // 11: google.firestore.v1beta1.CommitRequest
  3453  	(*CommitResponse)(nil),             // 12: google.firestore.v1beta1.CommitResponse
  3454  	(*RollbackRequest)(nil),            // 13: google.firestore.v1beta1.RollbackRequest
  3455  	(*RunQueryRequest)(nil),            // 14: google.firestore.v1beta1.RunQueryRequest
  3456  	(*RunQueryResponse)(nil),           // 15: google.firestore.v1beta1.RunQueryResponse
  3457  	(*PartitionQueryRequest)(nil),      // 16: google.firestore.v1beta1.PartitionQueryRequest
  3458  	(*PartitionQueryResponse)(nil),     // 17: google.firestore.v1beta1.PartitionQueryResponse
  3459  	(*WriteRequest)(nil),               // 18: google.firestore.v1beta1.WriteRequest
  3460  	(*WriteResponse)(nil),              // 19: google.firestore.v1beta1.WriteResponse
  3461  	(*ListenRequest)(nil),              // 20: google.firestore.v1beta1.ListenRequest
  3462  	(*ListenResponse)(nil),             // 21: google.firestore.v1beta1.ListenResponse
  3463  	(*Target)(nil),                     // 22: google.firestore.v1beta1.Target
  3464  	(*TargetChange)(nil),               // 23: google.firestore.v1beta1.TargetChange
  3465  	(*ListCollectionIdsRequest)(nil),   // 24: google.firestore.v1beta1.ListCollectionIdsRequest
  3466  	(*ListCollectionIdsResponse)(nil),  // 25: google.firestore.v1beta1.ListCollectionIdsResponse
  3467  	(*BatchWriteRequest)(nil),          // 26: google.firestore.v1beta1.BatchWriteRequest
  3468  	(*BatchWriteResponse)(nil),         // 27: google.firestore.v1beta1.BatchWriteResponse
  3469  	nil,                                // 28: google.firestore.v1beta1.WriteRequest.LabelsEntry
  3470  	nil,                                // 29: google.firestore.v1beta1.ListenRequest.LabelsEntry
  3471  	(*Target_DocumentsTarget)(nil),     // 30: google.firestore.v1beta1.Target.DocumentsTarget
  3472  	(*Target_QueryTarget)(nil),         // 31: google.firestore.v1beta1.Target.QueryTarget
  3473  	nil,                                // 32: google.firestore.v1beta1.BatchWriteRequest.LabelsEntry
  3474  	(*DocumentMask)(nil),               // 33: google.firestore.v1beta1.DocumentMask
  3475  	(*timestamppb.Timestamp)(nil),      // 34: google.protobuf.Timestamp
  3476  	(*Document)(nil),                   // 35: google.firestore.v1beta1.Document
  3477  	(*Precondition)(nil),               // 36: google.firestore.v1beta1.Precondition
  3478  	(*TransactionOptions)(nil),         // 37: google.firestore.v1beta1.TransactionOptions
  3479  	(*Write)(nil),                      // 38: google.firestore.v1beta1.Write
  3480  	(*WriteResult)(nil),                // 39: google.firestore.v1beta1.WriteResult
  3481  	(*StructuredQuery)(nil),            // 40: google.firestore.v1beta1.StructuredQuery
  3482  	(*Cursor)(nil),                     // 41: google.firestore.v1beta1.Cursor
  3483  	(*DocumentChange)(nil),             // 42: google.firestore.v1beta1.DocumentChange
  3484  	(*DocumentDelete)(nil),             // 43: google.firestore.v1beta1.DocumentDelete
  3485  	(*DocumentRemove)(nil),             // 44: google.firestore.v1beta1.DocumentRemove
  3486  	(*ExistenceFilter)(nil),            // 45: google.firestore.v1beta1.ExistenceFilter
  3487  	(*status.Status)(nil),              // 46: google.rpc.Status
  3488  	(*emptypb.Empty)(nil),              // 47: google.protobuf.Empty
  3489  }
  3490  var file_google_firestore_v1beta1_firestore_proto_depIdxs = []int32{
  3491  	33, // 0: google.firestore.v1beta1.GetDocumentRequest.mask:type_name -> google.firestore.v1beta1.DocumentMask
  3492  	34, // 1: google.firestore.v1beta1.GetDocumentRequest.read_time:type_name -> google.protobuf.Timestamp
  3493  	33, // 2: google.firestore.v1beta1.ListDocumentsRequest.mask:type_name -> google.firestore.v1beta1.DocumentMask
  3494  	34, // 3: google.firestore.v1beta1.ListDocumentsRequest.read_time:type_name -> google.protobuf.Timestamp
  3495  	35, // 4: google.firestore.v1beta1.ListDocumentsResponse.documents:type_name -> google.firestore.v1beta1.Document
  3496  	35, // 5: google.firestore.v1beta1.CreateDocumentRequest.document:type_name -> google.firestore.v1beta1.Document
  3497  	33, // 6: google.firestore.v1beta1.CreateDocumentRequest.mask:type_name -> google.firestore.v1beta1.DocumentMask
  3498  	35, // 7: google.firestore.v1beta1.UpdateDocumentRequest.document:type_name -> google.firestore.v1beta1.Document
  3499  	33, // 8: google.firestore.v1beta1.UpdateDocumentRequest.update_mask:type_name -> google.firestore.v1beta1.DocumentMask
  3500  	33, // 9: google.firestore.v1beta1.UpdateDocumentRequest.mask:type_name -> google.firestore.v1beta1.DocumentMask
  3501  	36, // 10: google.firestore.v1beta1.UpdateDocumentRequest.current_document:type_name -> google.firestore.v1beta1.Precondition
  3502  	36, // 11: google.firestore.v1beta1.DeleteDocumentRequest.current_document:type_name -> google.firestore.v1beta1.Precondition
  3503  	33, // 12: google.firestore.v1beta1.BatchGetDocumentsRequest.mask:type_name -> google.firestore.v1beta1.DocumentMask
  3504  	37, // 13: google.firestore.v1beta1.BatchGetDocumentsRequest.new_transaction:type_name -> google.firestore.v1beta1.TransactionOptions
  3505  	34, // 14: google.firestore.v1beta1.BatchGetDocumentsRequest.read_time:type_name -> google.protobuf.Timestamp
  3506  	35, // 15: google.firestore.v1beta1.BatchGetDocumentsResponse.found:type_name -> google.firestore.v1beta1.Document
  3507  	34, // 16: google.firestore.v1beta1.BatchGetDocumentsResponse.read_time:type_name -> google.protobuf.Timestamp
  3508  	37, // 17: google.firestore.v1beta1.BeginTransactionRequest.options:type_name -> google.firestore.v1beta1.TransactionOptions
  3509  	38, // 18: google.firestore.v1beta1.CommitRequest.writes:type_name -> google.firestore.v1beta1.Write
  3510  	39, // 19: google.firestore.v1beta1.CommitResponse.write_results:type_name -> google.firestore.v1beta1.WriteResult
  3511  	34, // 20: google.firestore.v1beta1.CommitResponse.commit_time:type_name -> google.protobuf.Timestamp
  3512  	40, // 21: google.firestore.v1beta1.RunQueryRequest.structured_query:type_name -> google.firestore.v1beta1.StructuredQuery
  3513  	37, // 22: google.firestore.v1beta1.RunQueryRequest.new_transaction:type_name -> google.firestore.v1beta1.TransactionOptions
  3514  	34, // 23: google.firestore.v1beta1.RunQueryRequest.read_time:type_name -> google.protobuf.Timestamp
  3515  	35, // 24: google.firestore.v1beta1.RunQueryResponse.document:type_name -> google.firestore.v1beta1.Document
  3516  	34, // 25: google.firestore.v1beta1.RunQueryResponse.read_time:type_name -> google.protobuf.Timestamp
  3517  	40, // 26: google.firestore.v1beta1.PartitionQueryRequest.structured_query:type_name -> google.firestore.v1beta1.StructuredQuery
  3518  	41, // 27: google.firestore.v1beta1.PartitionQueryResponse.partitions:type_name -> google.firestore.v1beta1.Cursor
  3519  	38, // 28: google.firestore.v1beta1.WriteRequest.writes:type_name -> google.firestore.v1beta1.Write
  3520  	28, // 29: google.firestore.v1beta1.WriteRequest.labels:type_name -> google.firestore.v1beta1.WriteRequest.LabelsEntry
  3521  	39, // 30: google.firestore.v1beta1.WriteResponse.write_results:type_name -> google.firestore.v1beta1.WriteResult
  3522  	34, // 31: google.firestore.v1beta1.WriteResponse.commit_time:type_name -> google.protobuf.Timestamp
  3523  	22, // 32: google.firestore.v1beta1.ListenRequest.add_target:type_name -> google.firestore.v1beta1.Target
  3524  	29, // 33: google.firestore.v1beta1.ListenRequest.labels:type_name -> google.firestore.v1beta1.ListenRequest.LabelsEntry
  3525  	23, // 34: google.firestore.v1beta1.ListenResponse.target_change:type_name -> google.firestore.v1beta1.TargetChange
  3526  	42, // 35: google.firestore.v1beta1.ListenResponse.document_change:type_name -> google.firestore.v1beta1.DocumentChange
  3527  	43, // 36: google.firestore.v1beta1.ListenResponse.document_delete:type_name -> google.firestore.v1beta1.DocumentDelete
  3528  	44, // 37: google.firestore.v1beta1.ListenResponse.document_remove:type_name -> google.firestore.v1beta1.DocumentRemove
  3529  	45, // 38: google.firestore.v1beta1.ListenResponse.filter:type_name -> google.firestore.v1beta1.ExistenceFilter
  3530  	31, // 39: google.firestore.v1beta1.Target.query:type_name -> google.firestore.v1beta1.Target.QueryTarget
  3531  	30, // 40: google.firestore.v1beta1.Target.documents:type_name -> google.firestore.v1beta1.Target.DocumentsTarget
  3532  	34, // 41: google.firestore.v1beta1.Target.read_time:type_name -> google.protobuf.Timestamp
  3533  	0,  // 42: google.firestore.v1beta1.TargetChange.target_change_type:type_name -> google.firestore.v1beta1.TargetChange.TargetChangeType
  3534  	46, // 43: google.firestore.v1beta1.TargetChange.cause:type_name -> google.rpc.Status
  3535  	34, // 44: google.firestore.v1beta1.TargetChange.read_time:type_name -> google.protobuf.Timestamp
  3536  	38, // 45: google.firestore.v1beta1.BatchWriteRequest.writes:type_name -> google.firestore.v1beta1.Write
  3537  	32, // 46: google.firestore.v1beta1.BatchWriteRequest.labels:type_name -> google.firestore.v1beta1.BatchWriteRequest.LabelsEntry
  3538  	39, // 47: google.firestore.v1beta1.BatchWriteResponse.write_results:type_name -> google.firestore.v1beta1.WriteResult
  3539  	46, // 48: google.firestore.v1beta1.BatchWriteResponse.status:type_name -> google.rpc.Status
  3540  	40, // 49: google.firestore.v1beta1.Target.QueryTarget.structured_query:type_name -> google.firestore.v1beta1.StructuredQuery
  3541  	1,  // 50: google.firestore.v1beta1.Firestore.GetDocument:input_type -> google.firestore.v1beta1.GetDocumentRequest
  3542  	2,  // 51: google.firestore.v1beta1.Firestore.ListDocuments:input_type -> google.firestore.v1beta1.ListDocumentsRequest
  3543  	5,  // 52: google.firestore.v1beta1.Firestore.UpdateDocument:input_type -> google.firestore.v1beta1.UpdateDocumentRequest
  3544  	6,  // 53: google.firestore.v1beta1.Firestore.DeleteDocument:input_type -> google.firestore.v1beta1.DeleteDocumentRequest
  3545  	7,  // 54: google.firestore.v1beta1.Firestore.BatchGetDocuments:input_type -> google.firestore.v1beta1.BatchGetDocumentsRequest
  3546  	9,  // 55: google.firestore.v1beta1.Firestore.BeginTransaction:input_type -> google.firestore.v1beta1.BeginTransactionRequest
  3547  	11, // 56: google.firestore.v1beta1.Firestore.Commit:input_type -> google.firestore.v1beta1.CommitRequest
  3548  	13, // 57: google.firestore.v1beta1.Firestore.Rollback:input_type -> google.firestore.v1beta1.RollbackRequest
  3549  	14, // 58: google.firestore.v1beta1.Firestore.RunQuery:input_type -> google.firestore.v1beta1.RunQueryRequest
  3550  	16, // 59: google.firestore.v1beta1.Firestore.PartitionQuery:input_type -> google.firestore.v1beta1.PartitionQueryRequest
  3551  	18, // 60: google.firestore.v1beta1.Firestore.Write:input_type -> google.firestore.v1beta1.WriteRequest
  3552  	20, // 61: google.firestore.v1beta1.Firestore.Listen:input_type -> google.firestore.v1beta1.ListenRequest
  3553  	24, // 62: google.firestore.v1beta1.Firestore.ListCollectionIds:input_type -> google.firestore.v1beta1.ListCollectionIdsRequest
  3554  	26, // 63: google.firestore.v1beta1.Firestore.BatchWrite:input_type -> google.firestore.v1beta1.BatchWriteRequest
  3555  	4,  // 64: google.firestore.v1beta1.Firestore.CreateDocument:input_type -> google.firestore.v1beta1.CreateDocumentRequest
  3556  	35, // 65: google.firestore.v1beta1.Firestore.GetDocument:output_type -> google.firestore.v1beta1.Document
  3557  	3,  // 66: google.firestore.v1beta1.Firestore.ListDocuments:output_type -> google.firestore.v1beta1.ListDocumentsResponse
  3558  	35, // 67: google.firestore.v1beta1.Firestore.UpdateDocument:output_type -> google.firestore.v1beta1.Document
  3559  	47, // 68: google.firestore.v1beta1.Firestore.DeleteDocument:output_type -> google.protobuf.Empty
  3560  	8,  // 69: google.firestore.v1beta1.Firestore.BatchGetDocuments:output_type -> google.firestore.v1beta1.BatchGetDocumentsResponse
  3561  	10, // 70: google.firestore.v1beta1.Firestore.BeginTransaction:output_type -> google.firestore.v1beta1.BeginTransactionResponse
  3562  	12, // 71: google.firestore.v1beta1.Firestore.Commit:output_type -> google.firestore.v1beta1.CommitResponse
  3563  	47, // 72: google.firestore.v1beta1.Firestore.Rollback:output_type -> google.protobuf.Empty
  3564  	15, // 73: google.firestore.v1beta1.Firestore.RunQuery:output_type -> google.firestore.v1beta1.RunQueryResponse
  3565  	17, // 74: google.firestore.v1beta1.Firestore.PartitionQuery:output_type -> google.firestore.v1beta1.PartitionQueryResponse
  3566  	19, // 75: google.firestore.v1beta1.Firestore.Write:output_type -> google.firestore.v1beta1.WriteResponse
  3567  	21, // 76: google.firestore.v1beta1.Firestore.Listen:output_type -> google.firestore.v1beta1.ListenResponse
  3568  	25, // 77: google.firestore.v1beta1.Firestore.ListCollectionIds:output_type -> google.firestore.v1beta1.ListCollectionIdsResponse
  3569  	27, // 78: google.firestore.v1beta1.Firestore.BatchWrite:output_type -> google.firestore.v1beta1.BatchWriteResponse
  3570  	35, // 79: google.firestore.v1beta1.Firestore.CreateDocument:output_type -> google.firestore.v1beta1.Document
  3571  	65, // [65:80] is the sub-list for method output_type
  3572  	50, // [50:65] is the sub-list for method input_type
  3573  	50, // [50:50] is the sub-list for extension type_name
  3574  	50, // [50:50] is the sub-list for extension extendee
  3575  	0,  // [0:50] is the sub-list for field type_name
  3576  }
  3577  
  3578  func init() { file_google_firestore_v1beta1_firestore_proto_init() }
  3579  func file_google_firestore_v1beta1_firestore_proto_init() {
  3580  	if File_google_firestore_v1beta1_firestore_proto != nil {
  3581  		return
  3582  	}
  3583  	file_google_firestore_v1beta1_common_proto_init()
  3584  	file_google_firestore_v1beta1_document_proto_init()
  3585  	file_google_firestore_v1beta1_query_proto_init()
  3586  	file_google_firestore_v1beta1_write_proto_init()
  3587  	if !protoimpl.UnsafeEnabled {
  3588  		file_google_firestore_v1beta1_firestore_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  3589  			switch v := v.(*GetDocumentRequest); i {
  3590  			case 0:
  3591  				return &v.state
  3592  			case 1:
  3593  				return &v.sizeCache
  3594  			case 2:
  3595  				return &v.unknownFields
  3596  			default:
  3597  				return nil
  3598  			}
  3599  		}
  3600  		file_google_firestore_v1beta1_firestore_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  3601  			switch v := v.(*ListDocumentsRequest); i {
  3602  			case 0:
  3603  				return &v.state
  3604  			case 1:
  3605  				return &v.sizeCache
  3606  			case 2:
  3607  				return &v.unknownFields
  3608  			default:
  3609  				return nil
  3610  			}
  3611  		}
  3612  		file_google_firestore_v1beta1_firestore_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  3613  			switch v := v.(*ListDocumentsResponse); i {
  3614  			case 0:
  3615  				return &v.state
  3616  			case 1:
  3617  				return &v.sizeCache
  3618  			case 2:
  3619  				return &v.unknownFields
  3620  			default:
  3621  				return nil
  3622  			}
  3623  		}
  3624  		file_google_firestore_v1beta1_firestore_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  3625  			switch v := v.(*CreateDocumentRequest); i {
  3626  			case 0:
  3627  				return &v.state
  3628  			case 1:
  3629  				return &v.sizeCache
  3630  			case 2:
  3631  				return &v.unknownFields
  3632  			default:
  3633  				return nil
  3634  			}
  3635  		}
  3636  		file_google_firestore_v1beta1_firestore_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  3637  			switch v := v.(*UpdateDocumentRequest); i {
  3638  			case 0:
  3639  				return &v.state
  3640  			case 1:
  3641  				return &v.sizeCache
  3642  			case 2:
  3643  				return &v.unknownFields
  3644  			default:
  3645  				return nil
  3646  			}
  3647  		}
  3648  		file_google_firestore_v1beta1_firestore_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  3649  			switch v := v.(*DeleteDocumentRequest); i {
  3650  			case 0:
  3651  				return &v.state
  3652  			case 1:
  3653  				return &v.sizeCache
  3654  			case 2:
  3655  				return &v.unknownFields
  3656  			default:
  3657  				return nil
  3658  			}
  3659  		}
  3660  		file_google_firestore_v1beta1_firestore_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  3661  			switch v := v.(*BatchGetDocumentsRequest); i {
  3662  			case 0:
  3663  				return &v.state
  3664  			case 1:
  3665  				return &v.sizeCache
  3666  			case 2:
  3667  				return &v.unknownFields
  3668  			default:
  3669  				return nil
  3670  			}
  3671  		}
  3672  		file_google_firestore_v1beta1_firestore_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  3673  			switch v := v.(*BatchGetDocumentsResponse); i {
  3674  			case 0:
  3675  				return &v.state
  3676  			case 1:
  3677  				return &v.sizeCache
  3678  			case 2:
  3679  				return &v.unknownFields
  3680  			default:
  3681  				return nil
  3682  			}
  3683  		}
  3684  		file_google_firestore_v1beta1_firestore_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  3685  			switch v := v.(*BeginTransactionRequest); i {
  3686  			case 0:
  3687  				return &v.state
  3688  			case 1:
  3689  				return &v.sizeCache
  3690  			case 2:
  3691  				return &v.unknownFields
  3692  			default:
  3693  				return nil
  3694  			}
  3695  		}
  3696  		file_google_firestore_v1beta1_firestore_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  3697  			switch v := v.(*BeginTransactionResponse); i {
  3698  			case 0:
  3699  				return &v.state
  3700  			case 1:
  3701  				return &v.sizeCache
  3702  			case 2:
  3703  				return &v.unknownFields
  3704  			default:
  3705  				return nil
  3706  			}
  3707  		}
  3708  		file_google_firestore_v1beta1_firestore_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  3709  			switch v := v.(*CommitRequest); i {
  3710  			case 0:
  3711  				return &v.state
  3712  			case 1:
  3713  				return &v.sizeCache
  3714  			case 2:
  3715  				return &v.unknownFields
  3716  			default:
  3717  				return nil
  3718  			}
  3719  		}
  3720  		file_google_firestore_v1beta1_firestore_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  3721  			switch v := v.(*CommitResponse); i {
  3722  			case 0:
  3723  				return &v.state
  3724  			case 1:
  3725  				return &v.sizeCache
  3726  			case 2:
  3727  				return &v.unknownFields
  3728  			default:
  3729  				return nil
  3730  			}
  3731  		}
  3732  		file_google_firestore_v1beta1_firestore_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  3733  			switch v := v.(*RollbackRequest); i {
  3734  			case 0:
  3735  				return &v.state
  3736  			case 1:
  3737  				return &v.sizeCache
  3738  			case 2:
  3739  				return &v.unknownFields
  3740  			default:
  3741  				return nil
  3742  			}
  3743  		}
  3744  		file_google_firestore_v1beta1_firestore_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  3745  			switch v := v.(*RunQueryRequest); i {
  3746  			case 0:
  3747  				return &v.state
  3748  			case 1:
  3749  				return &v.sizeCache
  3750  			case 2:
  3751  				return &v.unknownFields
  3752  			default:
  3753  				return nil
  3754  			}
  3755  		}
  3756  		file_google_firestore_v1beta1_firestore_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  3757  			switch v := v.(*RunQueryResponse); i {
  3758  			case 0:
  3759  				return &v.state
  3760  			case 1:
  3761  				return &v.sizeCache
  3762  			case 2:
  3763  				return &v.unknownFields
  3764  			default:
  3765  				return nil
  3766  			}
  3767  		}
  3768  		file_google_firestore_v1beta1_firestore_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  3769  			switch v := v.(*PartitionQueryRequest); i {
  3770  			case 0:
  3771  				return &v.state
  3772  			case 1:
  3773  				return &v.sizeCache
  3774  			case 2:
  3775  				return &v.unknownFields
  3776  			default:
  3777  				return nil
  3778  			}
  3779  		}
  3780  		file_google_firestore_v1beta1_firestore_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  3781  			switch v := v.(*PartitionQueryResponse); i {
  3782  			case 0:
  3783  				return &v.state
  3784  			case 1:
  3785  				return &v.sizeCache
  3786  			case 2:
  3787  				return &v.unknownFields
  3788  			default:
  3789  				return nil
  3790  			}
  3791  		}
  3792  		file_google_firestore_v1beta1_firestore_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  3793  			switch v := v.(*WriteRequest); i {
  3794  			case 0:
  3795  				return &v.state
  3796  			case 1:
  3797  				return &v.sizeCache
  3798  			case 2:
  3799  				return &v.unknownFields
  3800  			default:
  3801  				return nil
  3802  			}
  3803  		}
  3804  		file_google_firestore_v1beta1_firestore_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  3805  			switch v := v.(*WriteResponse); i {
  3806  			case 0:
  3807  				return &v.state
  3808  			case 1:
  3809  				return &v.sizeCache
  3810  			case 2:
  3811  				return &v.unknownFields
  3812  			default:
  3813  				return nil
  3814  			}
  3815  		}
  3816  		file_google_firestore_v1beta1_firestore_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  3817  			switch v := v.(*ListenRequest); i {
  3818  			case 0:
  3819  				return &v.state
  3820  			case 1:
  3821  				return &v.sizeCache
  3822  			case 2:
  3823  				return &v.unknownFields
  3824  			default:
  3825  				return nil
  3826  			}
  3827  		}
  3828  		file_google_firestore_v1beta1_firestore_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
  3829  			switch v := v.(*ListenResponse); i {
  3830  			case 0:
  3831  				return &v.state
  3832  			case 1:
  3833  				return &v.sizeCache
  3834  			case 2:
  3835  				return &v.unknownFields
  3836  			default:
  3837  				return nil
  3838  			}
  3839  		}
  3840  		file_google_firestore_v1beta1_firestore_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  3841  			switch v := v.(*Target); i {
  3842  			case 0:
  3843  				return &v.state
  3844  			case 1:
  3845  				return &v.sizeCache
  3846  			case 2:
  3847  				return &v.unknownFields
  3848  			default:
  3849  				return nil
  3850  			}
  3851  		}
  3852  		file_google_firestore_v1beta1_firestore_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  3853  			switch v := v.(*TargetChange); i {
  3854  			case 0:
  3855  				return &v.state
  3856  			case 1:
  3857  				return &v.sizeCache
  3858  			case 2:
  3859  				return &v.unknownFields
  3860  			default:
  3861  				return nil
  3862  			}
  3863  		}
  3864  		file_google_firestore_v1beta1_firestore_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  3865  			switch v := v.(*ListCollectionIdsRequest); i {
  3866  			case 0:
  3867  				return &v.state
  3868  			case 1:
  3869  				return &v.sizeCache
  3870  			case 2:
  3871  				return &v.unknownFields
  3872  			default:
  3873  				return nil
  3874  			}
  3875  		}
  3876  		file_google_firestore_v1beta1_firestore_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
  3877  			switch v := v.(*ListCollectionIdsResponse); i {
  3878  			case 0:
  3879  				return &v.state
  3880  			case 1:
  3881  				return &v.sizeCache
  3882  			case 2:
  3883  				return &v.unknownFields
  3884  			default:
  3885  				return nil
  3886  			}
  3887  		}
  3888  		file_google_firestore_v1beta1_firestore_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
  3889  			switch v := v.(*BatchWriteRequest); i {
  3890  			case 0:
  3891  				return &v.state
  3892  			case 1:
  3893  				return &v.sizeCache
  3894  			case 2:
  3895  				return &v.unknownFields
  3896  			default:
  3897  				return nil
  3898  			}
  3899  		}
  3900  		file_google_firestore_v1beta1_firestore_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
  3901  			switch v := v.(*BatchWriteResponse); i {
  3902  			case 0:
  3903  				return &v.state
  3904  			case 1:
  3905  				return &v.sizeCache
  3906  			case 2:
  3907  				return &v.unknownFields
  3908  			default:
  3909  				return nil
  3910  			}
  3911  		}
  3912  		file_google_firestore_v1beta1_firestore_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
  3913  			switch v := v.(*Target_DocumentsTarget); i {
  3914  			case 0:
  3915  				return &v.state
  3916  			case 1:
  3917  				return &v.sizeCache
  3918  			case 2:
  3919  				return &v.unknownFields
  3920  			default:
  3921  				return nil
  3922  			}
  3923  		}
  3924  		file_google_firestore_v1beta1_firestore_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
  3925  			switch v := v.(*Target_QueryTarget); i {
  3926  			case 0:
  3927  				return &v.state
  3928  			case 1:
  3929  				return &v.sizeCache
  3930  			case 2:
  3931  				return &v.unknownFields
  3932  			default:
  3933  				return nil
  3934  			}
  3935  		}
  3936  	}
  3937  	file_google_firestore_v1beta1_firestore_proto_msgTypes[0].OneofWrappers = []interface{}{
  3938  		(*GetDocumentRequest_Transaction)(nil),
  3939  		(*GetDocumentRequest_ReadTime)(nil),
  3940  	}
  3941  	file_google_firestore_v1beta1_firestore_proto_msgTypes[1].OneofWrappers = []interface{}{
  3942  		(*ListDocumentsRequest_Transaction)(nil),
  3943  		(*ListDocumentsRequest_ReadTime)(nil),
  3944  	}
  3945  	file_google_firestore_v1beta1_firestore_proto_msgTypes[6].OneofWrappers = []interface{}{
  3946  		(*BatchGetDocumentsRequest_Transaction)(nil),
  3947  		(*BatchGetDocumentsRequest_NewTransaction)(nil),
  3948  		(*BatchGetDocumentsRequest_ReadTime)(nil),
  3949  	}
  3950  	file_google_firestore_v1beta1_firestore_proto_msgTypes[7].OneofWrappers = []interface{}{
  3951  		(*BatchGetDocumentsResponse_Found)(nil),
  3952  		(*BatchGetDocumentsResponse_Missing)(nil),
  3953  	}
  3954  	file_google_firestore_v1beta1_firestore_proto_msgTypes[13].OneofWrappers = []interface{}{
  3955  		(*RunQueryRequest_StructuredQuery)(nil),
  3956  		(*RunQueryRequest_Transaction)(nil),
  3957  		(*RunQueryRequest_NewTransaction)(nil),
  3958  		(*RunQueryRequest_ReadTime)(nil),
  3959  	}
  3960  	file_google_firestore_v1beta1_firestore_proto_msgTypes[15].OneofWrappers = []interface{}{
  3961  		(*PartitionQueryRequest_StructuredQuery)(nil),
  3962  	}
  3963  	file_google_firestore_v1beta1_firestore_proto_msgTypes[19].OneofWrappers = []interface{}{
  3964  		(*ListenRequest_AddTarget)(nil),
  3965  		(*ListenRequest_RemoveTarget)(nil),
  3966  	}
  3967  	file_google_firestore_v1beta1_firestore_proto_msgTypes[20].OneofWrappers = []interface{}{
  3968  		(*ListenResponse_TargetChange)(nil),
  3969  		(*ListenResponse_DocumentChange)(nil),
  3970  		(*ListenResponse_DocumentDelete)(nil),
  3971  		(*ListenResponse_DocumentRemove)(nil),
  3972  		(*ListenResponse_Filter)(nil),
  3973  	}
  3974  	file_google_firestore_v1beta1_firestore_proto_msgTypes[21].OneofWrappers = []interface{}{
  3975  		(*Target_Query)(nil),
  3976  		(*Target_Documents)(nil),
  3977  		(*Target_ResumeToken)(nil),
  3978  		(*Target_ReadTime)(nil),
  3979  	}
  3980  	file_google_firestore_v1beta1_firestore_proto_msgTypes[30].OneofWrappers = []interface{}{
  3981  		(*Target_QueryTarget_StructuredQuery)(nil),
  3982  	}
  3983  	type x struct{}
  3984  	out := protoimpl.TypeBuilder{
  3985  		File: protoimpl.DescBuilder{
  3986  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  3987  			RawDescriptor: file_google_firestore_v1beta1_firestore_proto_rawDesc,
  3988  			NumEnums:      1,
  3989  			NumMessages:   32,
  3990  			NumExtensions: 0,
  3991  			NumServices:   1,
  3992  		},
  3993  		GoTypes:           file_google_firestore_v1beta1_firestore_proto_goTypes,
  3994  		DependencyIndexes: file_google_firestore_v1beta1_firestore_proto_depIdxs,
  3995  		EnumInfos:         file_google_firestore_v1beta1_firestore_proto_enumTypes,
  3996  		MessageInfos:      file_google_firestore_v1beta1_firestore_proto_msgTypes,
  3997  	}.Build()
  3998  	File_google_firestore_v1beta1_firestore_proto = out.File
  3999  	file_google_firestore_v1beta1_firestore_proto_rawDesc = nil
  4000  	file_google_firestore_v1beta1_firestore_proto_goTypes = nil
  4001  	file_google_firestore_v1beta1_firestore_proto_depIdxs = nil
  4002  }
  4003  
  4004  // Reference imports to suppress errors if they are not otherwise used.
  4005  var _ context.Context
  4006  var _ grpc.ClientConnInterface
  4007  
  4008  // This is a compile-time assertion to ensure that this generated file
  4009  // is compatible with the grpc package it is being compiled against.
  4010  const _ = grpc.SupportPackageIsVersion6
  4011  
  4012  // FirestoreClient is the client API for Firestore service.
  4013  //
  4014  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
  4015  type FirestoreClient interface {
  4016  	// Gets a single document.
  4017  	GetDocument(ctx context.Context, in *GetDocumentRequest, opts ...grpc.CallOption) (*Document, error)
  4018  	// Lists documents.
  4019  	ListDocuments(ctx context.Context, in *ListDocumentsRequest, opts ...grpc.CallOption) (*ListDocumentsResponse, error)
  4020  	// Updates or inserts a document.
  4021  	UpdateDocument(ctx context.Context, in *UpdateDocumentRequest, opts ...grpc.CallOption) (*Document, error)
  4022  	// Deletes a document.
  4023  	DeleteDocument(ctx context.Context, in *DeleteDocumentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
  4024  	// Gets multiple documents.
  4025  	//
  4026  	// Documents returned by this method are not guaranteed to be returned in the
  4027  	// same order that they were requested.
  4028  	BatchGetDocuments(ctx context.Context, in *BatchGetDocumentsRequest, opts ...grpc.CallOption) (Firestore_BatchGetDocumentsClient, error)
  4029  	// Starts a new transaction.
  4030  	BeginTransaction(ctx context.Context, in *BeginTransactionRequest, opts ...grpc.CallOption) (*BeginTransactionResponse, error)
  4031  	// Commits a transaction, while optionally updating documents.
  4032  	Commit(ctx context.Context, in *CommitRequest, opts ...grpc.CallOption) (*CommitResponse, error)
  4033  	// Rolls back a transaction.
  4034  	Rollback(ctx context.Context, in *RollbackRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
  4035  	// Runs a query.
  4036  	RunQuery(ctx context.Context, in *RunQueryRequest, opts ...grpc.CallOption) (Firestore_RunQueryClient, error)
  4037  	// Partitions a query by returning partition cursors that can be used to run
  4038  	// the query in parallel. The returned partition cursors are split points that
  4039  	// can be used by RunQuery as starting/end points for the query results.
  4040  	PartitionQuery(ctx context.Context, in *PartitionQueryRequest, opts ...grpc.CallOption) (*PartitionQueryResponse, error)
  4041  	// Streams batches of document updates and deletes, in order.
  4042  	Write(ctx context.Context, opts ...grpc.CallOption) (Firestore_WriteClient, error)
  4043  	// Listens to changes.
  4044  	Listen(ctx context.Context, opts ...grpc.CallOption) (Firestore_ListenClient, error)
  4045  	// Lists all the collection IDs underneath a document.
  4046  	ListCollectionIds(ctx context.Context, in *ListCollectionIdsRequest, opts ...grpc.CallOption) (*ListCollectionIdsResponse, error)
  4047  	// Applies a batch of write operations.
  4048  	//
  4049  	// The BatchWrite method does not apply the write operations atomically
  4050  	// and can apply them out of order. Method does not allow more than one write
  4051  	// per document. Each write succeeds or fails independently. See the
  4052  	// [BatchWriteResponse][google.firestore.v1beta1.BatchWriteResponse] for the success status of each write.
  4053  	//
  4054  	// If you require an atomically applied set of writes, use
  4055  	// [Commit][google.firestore.v1beta1.Firestore.Commit] instead.
  4056  	BatchWrite(ctx context.Context, in *BatchWriteRequest, opts ...grpc.CallOption) (*BatchWriteResponse, error)
  4057  	// Creates a new document.
  4058  	CreateDocument(ctx context.Context, in *CreateDocumentRequest, opts ...grpc.CallOption) (*Document, error)
  4059  }
  4060  
  4061  type firestoreClient struct {
  4062  	cc grpc.ClientConnInterface
  4063  }
  4064  
  4065  func NewFirestoreClient(cc grpc.ClientConnInterface) FirestoreClient {
  4066  	return &firestoreClient{cc}
  4067  }
  4068  
  4069  func (c *firestoreClient) GetDocument(ctx context.Context, in *GetDocumentRequest, opts ...grpc.CallOption) (*Document, error) {
  4070  	out := new(Document)
  4071  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/GetDocument", in, out, opts...)
  4072  	if err != nil {
  4073  		return nil, err
  4074  	}
  4075  	return out, nil
  4076  }
  4077  
  4078  func (c *firestoreClient) ListDocuments(ctx context.Context, in *ListDocumentsRequest, opts ...grpc.CallOption) (*ListDocumentsResponse, error) {
  4079  	out := new(ListDocumentsResponse)
  4080  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/ListDocuments", in, out, opts...)
  4081  	if err != nil {
  4082  		return nil, err
  4083  	}
  4084  	return out, nil
  4085  }
  4086  
  4087  func (c *firestoreClient) UpdateDocument(ctx context.Context, in *UpdateDocumentRequest, opts ...grpc.CallOption) (*Document, error) {
  4088  	out := new(Document)
  4089  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/UpdateDocument", in, out, opts...)
  4090  	if err != nil {
  4091  		return nil, err
  4092  	}
  4093  	return out, nil
  4094  }
  4095  
  4096  func (c *firestoreClient) DeleteDocument(ctx context.Context, in *DeleteDocumentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
  4097  	out := new(emptypb.Empty)
  4098  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/DeleteDocument", in, out, opts...)
  4099  	if err != nil {
  4100  		return nil, err
  4101  	}
  4102  	return out, nil
  4103  }
  4104  
  4105  func (c *firestoreClient) BatchGetDocuments(ctx context.Context, in *BatchGetDocumentsRequest, opts ...grpc.CallOption) (Firestore_BatchGetDocumentsClient, error) {
  4106  	stream, err := c.cc.NewStream(ctx, &_Firestore_serviceDesc.Streams[0], "/google.firestore.v1beta1.Firestore/BatchGetDocuments", opts...)
  4107  	if err != nil {
  4108  		return nil, err
  4109  	}
  4110  	x := &firestoreBatchGetDocumentsClient{stream}
  4111  	if err := x.ClientStream.SendMsg(in); err != nil {
  4112  		return nil, err
  4113  	}
  4114  	if err := x.ClientStream.CloseSend(); err != nil {
  4115  		return nil, err
  4116  	}
  4117  	return x, nil
  4118  }
  4119  
  4120  type Firestore_BatchGetDocumentsClient interface {
  4121  	Recv() (*BatchGetDocumentsResponse, error)
  4122  	grpc.ClientStream
  4123  }
  4124  
  4125  type firestoreBatchGetDocumentsClient struct {
  4126  	grpc.ClientStream
  4127  }
  4128  
  4129  func (x *firestoreBatchGetDocumentsClient) Recv() (*BatchGetDocumentsResponse, error) {
  4130  	m := new(BatchGetDocumentsResponse)
  4131  	if err := x.ClientStream.RecvMsg(m); err != nil {
  4132  		return nil, err
  4133  	}
  4134  	return m, nil
  4135  }
  4136  
  4137  func (c *firestoreClient) BeginTransaction(ctx context.Context, in *BeginTransactionRequest, opts ...grpc.CallOption) (*BeginTransactionResponse, error) {
  4138  	out := new(BeginTransactionResponse)
  4139  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/BeginTransaction", in, out, opts...)
  4140  	if err != nil {
  4141  		return nil, err
  4142  	}
  4143  	return out, nil
  4144  }
  4145  
  4146  func (c *firestoreClient) Commit(ctx context.Context, in *CommitRequest, opts ...grpc.CallOption) (*CommitResponse, error) {
  4147  	out := new(CommitResponse)
  4148  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/Commit", in, out, opts...)
  4149  	if err != nil {
  4150  		return nil, err
  4151  	}
  4152  	return out, nil
  4153  }
  4154  
  4155  func (c *firestoreClient) Rollback(ctx context.Context, in *RollbackRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
  4156  	out := new(emptypb.Empty)
  4157  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/Rollback", in, out, opts...)
  4158  	if err != nil {
  4159  		return nil, err
  4160  	}
  4161  	return out, nil
  4162  }
  4163  
  4164  func (c *firestoreClient) RunQuery(ctx context.Context, in *RunQueryRequest, opts ...grpc.CallOption) (Firestore_RunQueryClient, error) {
  4165  	stream, err := c.cc.NewStream(ctx, &_Firestore_serviceDesc.Streams[1], "/google.firestore.v1beta1.Firestore/RunQuery", opts...)
  4166  	if err != nil {
  4167  		return nil, err
  4168  	}
  4169  	x := &firestoreRunQueryClient{stream}
  4170  	if err := x.ClientStream.SendMsg(in); err != nil {
  4171  		return nil, err
  4172  	}
  4173  	if err := x.ClientStream.CloseSend(); err != nil {
  4174  		return nil, err
  4175  	}
  4176  	return x, nil
  4177  }
  4178  
  4179  type Firestore_RunQueryClient interface {
  4180  	Recv() (*RunQueryResponse, error)
  4181  	grpc.ClientStream
  4182  }
  4183  
  4184  type firestoreRunQueryClient struct {
  4185  	grpc.ClientStream
  4186  }
  4187  
  4188  func (x *firestoreRunQueryClient) Recv() (*RunQueryResponse, error) {
  4189  	m := new(RunQueryResponse)
  4190  	if err := x.ClientStream.RecvMsg(m); err != nil {
  4191  		return nil, err
  4192  	}
  4193  	return m, nil
  4194  }
  4195  
  4196  func (c *firestoreClient) PartitionQuery(ctx context.Context, in *PartitionQueryRequest, opts ...grpc.CallOption) (*PartitionQueryResponse, error) {
  4197  	out := new(PartitionQueryResponse)
  4198  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/PartitionQuery", in, out, opts...)
  4199  	if err != nil {
  4200  		return nil, err
  4201  	}
  4202  	return out, nil
  4203  }
  4204  
  4205  func (c *firestoreClient) Write(ctx context.Context, opts ...grpc.CallOption) (Firestore_WriteClient, error) {
  4206  	stream, err := c.cc.NewStream(ctx, &_Firestore_serviceDesc.Streams[2], "/google.firestore.v1beta1.Firestore/Write", opts...)
  4207  	if err != nil {
  4208  		return nil, err
  4209  	}
  4210  	x := &firestoreWriteClient{stream}
  4211  	return x, nil
  4212  }
  4213  
  4214  type Firestore_WriteClient interface {
  4215  	Send(*WriteRequest) error
  4216  	Recv() (*WriteResponse, error)
  4217  	grpc.ClientStream
  4218  }
  4219  
  4220  type firestoreWriteClient struct {
  4221  	grpc.ClientStream
  4222  }
  4223  
  4224  func (x *firestoreWriteClient) Send(m *WriteRequest) error {
  4225  	return x.ClientStream.SendMsg(m)
  4226  }
  4227  
  4228  func (x *firestoreWriteClient) Recv() (*WriteResponse, error) {
  4229  	m := new(WriteResponse)
  4230  	if err := x.ClientStream.RecvMsg(m); err != nil {
  4231  		return nil, err
  4232  	}
  4233  	return m, nil
  4234  }
  4235  
  4236  func (c *firestoreClient) Listen(ctx context.Context, opts ...grpc.CallOption) (Firestore_ListenClient, error) {
  4237  	stream, err := c.cc.NewStream(ctx, &_Firestore_serviceDesc.Streams[3], "/google.firestore.v1beta1.Firestore/Listen", opts...)
  4238  	if err != nil {
  4239  		return nil, err
  4240  	}
  4241  	x := &firestoreListenClient{stream}
  4242  	return x, nil
  4243  }
  4244  
  4245  type Firestore_ListenClient interface {
  4246  	Send(*ListenRequest) error
  4247  	Recv() (*ListenResponse, error)
  4248  	grpc.ClientStream
  4249  }
  4250  
  4251  type firestoreListenClient struct {
  4252  	grpc.ClientStream
  4253  }
  4254  
  4255  func (x *firestoreListenClient) Send(m *ListenRequest) error {
  4256  	return x.ClientStream.SendMsg(m)
  4257  }
  4258  
  4259  func (x *firestoreListenClient) Recv() (*ListenResponse, error) {
  4260  	m := new(ListenResponse)
  4261  	if err := x.ClientStream.RecvMsg(m); err != nil {
  4262  		return nil, err
  4263  	}
  4264  	return m, nil
  4265  }
  4266  
  4267  func (c *firestoreClient) ListCollectionIds(ctx context.Context, in *ListCollectionIdsRequest, opts ...grpc.CallOption) (*ListCollectionIdsResponse, error) {
  4268  	out := new(ListCollectionIdsResponse)
  4269  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/ListCollectionIds", in, out, opts...)
  4270  	if err != nil {
  4271  		return nil, err
  4272  	}
  4273  	return out, nil
  4274  }
  4275  
  4276  func (c *firestoreClient) BatchWrite(ctx context.Context, in *BatchWriteRequest, opts ...grpc.CallOption) (*BatchWriteResponse, error) {
  4277  	out := new(BatchWriteResponse)
  4278  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/BatchWrite", in, out, opts...)
  4279  	if err != nil {
  4280  		return nil, err
  4281  	}
  4282  	return out, nil
  4283  }
  4284  
  4285  func (c *firestoreClient) CreateDocument(ctx context.Context, in *CreateDocumentRequest, opts ...grpc.CallOption) (*Document, error) {
  4286  	out := new(Document)
  4287  	err := c.cc.Invoke(ctx, "/google.firestore.v1beta1.Firestore/CreateDocument", in, out, opts...)
  4288  	if err != nil {
  4289  		return nil, err
  4290  	}
  4291  	return out, nil
  4292  }
  4293  
  4294  // FirestoreServer is the server API for Firestore service.
  4295  type FirestoreServer interface {
  4296  	// Gets a single document.
  4297  	GetDocument(context.Context, *GetDocumentRequest) (*Document, error)
  4298  	// Lists documents.
  4299  	ListDocuments(context.Context, *ListDocumentsRequest) (*ListDocumentsResponse, error)
  4300  	// Updates or inserts a document.
  4301  	UpdateDocument(context.Context, *UpdateDocumentRequest) (*Document, error)
  4302  	// Deletes a document.
  4303  	DeleteDocument(context.Context, *DeleteDocumentRequest) (*emptypb.Empty, error)
  4304  	// Gets multiple documents.
  4305  	//
  4306  	// Documents returned by this method are not guaranteed to be returned in the
  4307  	// same order that they were requested.
  4308  	BatchGetDocuments(*BatchGetDocumentsRequest, Firestore_BatchGetDocumentsServer) error
  4309  	// Starts a new transaction.
  4310  	BeginTransaction(context.Context, *BeginTransactionRequest) (*BeginTransactionResponse, error)
  4311  	// Commits a transaction, while optionally updating documents.
  4312  	Commit(context.Context, *CommitRequest) (*CommitResponse, error)
  4313  	// Rolls back a transaction.
  4314  	Rollback(context.Context, *RollbackRequest) (*emptypb.Empty, error)
  4315  	// Runs a query.
  4316  	RunQuery(*RunQueryRequest, Firestore_RunQueryServer) error
  4317  	// Partitions a query by returning partition cursors that can be used to run
  4318  	// the query in parallel. The returned partition cursors are split points that
  4319  	// can be used by RunQuery as starting/end points for the query results.
  4320  	PartitionQuery(context.Context, *PartitionQueryRequest) (*PartitionQueryResponse, error)
  4321  	// Streams batches of document updates and deletes, in order.
  4322  	Write(Firestore_WriteServer) error
  4323  	// Listens to changes.
  4324  	Listen(Firestore_ListenServer) error
  4325  	// Lists all the collection IDs underneath a document.
  4326  	ListCollectionIds(context.Context, *ListCollectionIdsRequest) (*ListCollectionIdsResponse, error)
  4327  	// Applies a batch of write operations.
  4328  	//
  4329  	// The BatchWrite method does not apply the write operations atomically
  4330  	// and can apply them out of order. Method does not allow more than one write
  4331  	// per document. Each write succeeds or fails independently. See the
  4332  	// [BatchWriteResponse][google.firestore.v1beta1.BatchWriteResponse] for the success status of each write.
  4333  	//
  4334  	// If you require an atomically applied set of writes, use
  4335  	// [Commit][google.firestore.v1beta1.Firestore.Commit] instead.
  4336  	BatchWrite(context.Context, *BatchWriteRequest) (*BatchWriteResponse, error)
  4337  	// Creates a new document.
  4338  	CreateDocument(context.Context, *CreateDocumentRequest) (*Document, error)
  4339  }
  4340  
  4341  // UnimplementedFirestoreServer can be embedded to have forward compatible implementations.
  4342  type UnimplementedFirestoreServer struct {
  4343  }
  4344  
  4345  func (*UnimplementedFirestoreServer) GetDocument(context.Context, *GetDocumentRequest) (*Document, error) {
  4346  	return nil, status1.Errorf(codes.Unimplemented, "method GetDocument not implemented")
  4347  }
  4348  func (*UnimplementedFirestoreServer) ListDocuments(context.Context, *ListDocumentsRequest) (*ListDocumentsResponse, error) {
  4349  	return nil, status1.Errorf(codes.Unimplemented, "method ListDocuments not implemented")
  4350  }
  4351  func (*UnimplementedFirestoreServer) UpdateDocument(context.Context, *UpdateDocumentRequest) (*Document, error) {
  4352  	return nil, status1.Errorf(codes.Unimplemented, "method UpdateDocument not implemented")
  4353  }
  4354  func (*UnimplementedFirestoreServer) DeleteDocument(context.Context, *DeleteDocumentRequest) (*emptypb.Empty, error) {
  4355  	return nil, status1.Errorf(codes.Unimplemented, "method DeleteDocument not implemented")
  4356  }
  4357  func (*UnimplementedFirestoreServer) BatchGetDocuments(*BatchGetDocumentsRequest, Firestore_BatchGetDocumentsServer) error {
  4358  	return status1.Errorf(codes.Unimplemented, "method BatchGetDocuments not implemented")
  4359  }
  4360  func (*UnimplementedFirestoreServer) BeginTransaction(context.Context, *BeginTransactionRequest) (*BeginTransactionResponse, error) {
  4361  	return nil, status1.Errorf(codes.Unimplemented, "method BeginTransaction not implemented")
  4362  }
  4363  func (*UnimplementedFirestoreServer) Commit(context.Context, *CommitRequest) (*CommitResponse, error) {
  4364  	return nil, status1.Errorf(codes.Unimplemented, "method Commit not implemented")
  4365  }
  4366  func (*UnimplementedFirestoreServer) Rollback(context.Context, *RollbackRequest) (*emptypb.Empty, error) {
  4367  	return nil, status1.Errorf(codes.Unimplemented, "method Rollback not implemented")
  4368  }
  4369  func (*UnimplementedFirestoreServer) RunQuery(*RunQueryRequest, Firestore_RunQueryServer) error {
  4370  	return status1.Errorf(codes.Unimplemented, "method RunQuery not implemented")
  4371  }
  4372  func (*UnimplementedFirestoreServer) PartitionQuery(context.Context, *PartitionQueryRequest) (*PartitionQueryResponse, error) {
  4373  	return nil, status1.Errorf(codes.Unimplemented, "method PartitionQuery not implemented")
  4374  }
  4375  func (*UnimplementedFirestoreServer) Write(Firestore_WriteServer) error {
  4376  	return status1.Errorf(codes.Unimplemented, "method Write not implemented")
  4377  }
  4378  func (*UnimplementedFirestoreServer) Listen(Firestore_ListenServer) error {
  4379  	return status1.Errorf(codes.Unimplemented, "method Listen not implemented")
  4380  }
  4381  func (*UnimplementedFirestoreServer) ListCollectionIds(context.Context, *ListCollectionIdsRequest) (*ListCollectionIdsResponse, error) {
  4382  	return nil, status1.Errorf(codes.Unimplemented, "method ListCollectionIds not implemented")
  4383  }
  4384  func (*UnimplementedFirestoreServer) BatchWrite(context.Context, *BatchWriteRequest) (*BatchWriteResponse, error) {
  4385  	return nil, status1.Errorf(codes.Unimplemented, "method BatchWrite not implemented")
  4386  }
  4387  func (*UnimplementedFirestoreServer) CreateDocument(context.Context, *CreateDocumentRequest) (*Document, error) {
  4388  	return nil, status1.Errorf(codes.Unimplemented, "method CreateDocument not implemented")
  4389  }
  4390  
  4391  func RegisterFirestoreServer(s *grpc.Server, srv FirestoreServer) {
  4392  	s.RegisterService(&_Firestore_serviceDesc, srv)
  4393  }
  4394  
  4395  func _Firestore_GetDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4396  	in := new(GetDocumentRequest)
  4397  	if err := dec(in); err != nil {
  4398  		return nil, err
  4399  	}
  4400  	if interceptor == nil {
  4401  		return srv.(FirestoreServer).GetDocument(ctx, in)
  4402  	}
  4403  	info := &grpc.UnaryServerInfo{
  4404  		Server:     srv,
  4405  		FullMethod: "/google.firestore.v1beta1.Firestore/GetDocument",
  4406  	}
  4407  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4408  		return srv.(FirestoreServer).GetDocument(ctx, req.(*GetDocumentRequest))
  4409  	}
  4410  	return interceptor(ctx, in, info, handler)
  4411  }
  4412  
  4413  func _Firestore_ListDocuments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4414  	in := new(ListDocumentsRequest)
  4415  	if err := dec(in); err != nil {
  4416  		return nil, err
  4417  	}
  4418  	if interceptor == nil {
  4419  		return srv.(FirestoreServer).ListDocuments(ctx, in)
  4420  	}
  4421  	info := &grpc.UnaryServerInfo{
  4422  		Server:     srv,
  4423  		FullMethod: "/google.firestore.v1beta1.Firestore/ListDocuments",
  4424  	}
  4425  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4426  		return srv.(FirestoreServer).ListDocuments(ctx, req.(*ListDocumentsRequest))
  4427  	}
  4428  	return interceptor(ctx, in, info, handler)
  4429  }
  4430  
  4431  func _Firestore_UpdateDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4432  	in := new(UpdateDocumentRequest)
  4433  	if err := dec(in); err != nil {
  4434  		return nil, err
  4435  	}
  4436  	if interceptor == nil {
  4437  		return srv.(FirestoreServer).UpdateDocument(ctx, in)
  4438  	}
  4439  	info := &grpc.UnaryServerInfo{
  4440  		Server:     srv,
  4441  		FullMethod: "/google.firestore.v1beta1.Firestore/UpdateDocument",
  4442  	}
  4443  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4444  		return srv.(FirestoreServer).UpdateDocument(ctx, req.(*UpdateDocumentRequest))
  4445  	}
  4446  	return interceptor(ctx, in, info, handler)
  4447  }
  4448  
  4449  func _Firestore_DeleteDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4450  	in := new(DeleteDocumentRequest)
  4451  	if err := dec(in); err != nil {
  4452  		return nil, err
  4453  	}
  4454  	if interceptor == nil {
  4455  		return srv.(FirestoreServer).DeleteDocument(ctx, in)
  4456  	}
  4457  	info := &grpc.UnaryServerInfo{
  4458  		Server:     srv,
  4459  		FullMethod: "/google.firestore.v1beta1.Firestore/DeleteDocument",
  4460  	}
  4461  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4462  		return srv.(FirestoreServer).DeleteDocument(ctx, req.(*DeleteDocumentRequest))
  4463  	}
  4464  	return interceptor(ctx, in, info, handler)
  4465  }
  4466  
  4467  func _Firestore_BatchGetDocuments_Handler(srv interface{}, stream grpc.ServerStream) error {
  4468  	m := new(BatchGetDocumentsRequest)
  4469  	if err := stream.RecvMsg(m); err != nil {
  4470  		return err
  4471  	}
  4472  	return srv.(FirestoreServer).BatchGetDocuments(m, &firestoreBatchGetDocumentsServer{stream})
  4473  }
  4474  
  4475  type Firestore_BatchGetDocumentsServer interface {
  4476  	Send(*BatchGetDocumentsResponse) error
  4477  	grpc.ServerStream
  4478  }
  4479  
  4480  type firestoreBatchGetDocumentsServer struct {
  4481  	grpc.ServerStream
  4482  }
  4483  
  4484  func (x *firestoreBatchGetDocumentsServer) Send(m *BatchGetDocumentsResponse) error {
  4485  	return x.ServerStream.SendMsg(m)
  4486  }
  4487  
  4488  func _Firestore_BeginTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4489  	in := new(BeginTransactionRequest)
  4490  	if err := dec(in); err != nil {
  4491  		return nil, err
  4492  	}
  4493  	if interceptor == nil {
  4494  		return srv.(FirestoreServer).BeginTransaction(ctx, in)
  4495  	}
  4496  	info := &grpc.UnaryServerInfo{
  4497  		Server:     srv,
  4498  		FullMethod: "/google.firestore.v1beta1.Firestore/BeginTransaction",
  4499  	}
  4500  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4501  		return srv.(FirestoreServer).BeginTransaction(ctx, req.(*BeginTransactionRequest))
  4502  	}
  4503  	return interceptor(ctx, in, info, handler)
  4504  }
  4505  
  4506  func _Firestore_Commit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4507  	in := new(CommitRequest)
  4508  	if err := dec(in); err != nil {
  4509  		return nil, err
  4510  	}
  4511  	if interceptor == nil {
  4512  		return srv.(FirestoreServer).Commit(ctx, in)
  4513  	}
  4514  	info := &grpc.UnaryServerInfo{
  4515  		Server:     srv,
  4516  		FullMethod: "/google.firestore.v1beta1.Firestore/Commit",
  4517  	}
  4518  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4519  		return srv.(FirestoreServer).Commit(ctx, req.(*CommitRequest))
  4520  	}
  4521  	return interceptor(ctx, in, info, handler)
  4522  }
  4523  
  4524  func _Firestore_Rollback_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4525  	in := new(RollbackRequest)
  4526  	if err := dec(in); err != nil {
  4527  		return nil, err
  4528  	}
  4529  	if interceptor == nil {
  4530  		return srv.(FirestoreServer).Rollback(ctx, in)
  4531  	}
  4532  	info := &grpc.UnaryServerInfo{
  4533  		Server:     srv,
  4534  		FullMethod: "/google.firestore.v1beta1.Firestore/Rollback",
  4535  	}
  4536  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4537  		return srv.(FirestoreServer).Rollback(ctx, req.(*RollbackRequest))
  4538  	}
  4539  	return interceptor(ctx, in, info, handler)
  4540  }
  4541  
  4542  func _Firestore_RunQuery_Handler(srv interface{}, stream grpc.ServerStream) error {
  4543  	m := new(RunQueryRequest)
  4544  	if err := stream.RecvMsg(m); err != nil {
  4545  		return err
  4546  	}
  4547  	return srv.(FirestoreServer).RunQuery(m, &firestoreRunQueryServer{stream})
  4548  }
  4549  
  4550  type Firestore_RunQueryServer interface {
  4551  	Send(*RunQueryResponse) error
  4552  	grpc.ServerStream
  4553  }
  4554  
  4555  type firestoreRunQueryServer struct {
  4556  	grpc.ServerStream
  4557  }
  4558  
  4559  func (x *firestoreRunQueryServer) Send(m *RunQueryResponse) error {
  4560  	return x.ServerStream.SendMsg(m)
  4561  }
  4562  
  4563  func _Firestore_PartitionQuery_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4564  	in := new(PartitionQueryRequest)
  4565  	if err := dec(in); err != nil {
  4566  		return nil, err
  4567  	}
  4568  	if interceptor == nil {
  4569  		return srv.(FirestoreServer).PartitionQuery(ctx, in)
  4570  	}
  4571  	info := &grpc.UnaryServerInfo{
  4572  		Server:     srv,
  4573  		FullMethod: "/google.firestore.v1beta1.Firestore/PartitionQuery",
  4574  	}
  4575  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4576  		return srv.(FirestoreServer).PartitionQuery(ctx, req.(*PartitionQueryRequest))
  4577  	}
  4578  	return interceptor(ctx, in, info, handler)
  4579  }
  4580  
  4581  func _Firestore_Write_Handler(srv interface{}, stream grpc.ServerStream) error {
  4582  	return srv.(FirestoreServer).Write(&firestoreWriteServer{stream})
  4583  }
  4584  
  4585  type Firestore_WriteServer interface {
  4586  	Send(*WriteResponse) error
  4587  	Recv() (*WriteRequest, error)
  4588  	grpc.ServerStream
  4589  }
  4590  
  4591  type firestoreWriteServer struct {
  4592  	grpc.ServerStream
  4593  }
  4594  
  4595  func (x *firestoreWriteServer) Send(m *WriteResponse) error {
  4596  	return x.ServerStream.SendMsg(m)
  4597  }
  4598  
  4599  func (x *firestoreWriteServer) Recv() (*WriteRequest, error) {
  4600  	m := new(WriteRequest)
  4601  	if err := x.ServerStream.RecvMsg(m); err != nil {
  4602  		return nil, err
  4603  	}
  4604  	return m, nil
  4605  }
  4606  
  4607  func _Firestore_Listen_Handler(srv interface{}, stream grpc.ServerStream) error {
  4608  	return srv.(FirestoreServer).Listen(&firestoreListenServer{stream})
  4609  }
  4610  
  4611  type Firestore_ListenServer interface {
  4612  	Send(*ListenResponse) error
  4613  	Recv() (*ListenRequest, error)
  4614  	grpc.ServerStream
  4615  }
  4616  
  4617  type firestoreListenServer struct {
  4618  	grpc.ServerStream
  4619  }
  4620  
  4621  func (x *firestoreListenServer) Send(m *ListenResponse) error {
  4622  	return x.ServerStream.SendMsg(m)
  4623  }
  4624  
  4625  func (x *firestoreListenServer) Recv() (*ListenRequest, error) {
  4626  	m := new(ListenRequest)
  4627  	if err := x.ServerStream.RecvMsg(m); err != nil {
  4628  		return nil, err
  4629  	}
  4630  	return m, nil
  4631  }
  4632  
  4633  func _Firestore_ListCollectionIds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4634  	in := new(ListCollectionIdsRequest)
  4635  	if err := dec(in); err != nil {
  4636  		return nil, err
  4637  	}
  4638  	if interceptor == nil {
  4639  		return srv.(FirestoreServer).ListCollectionIds(ctx, in)
  4640  	}
  4641  	info := &grpc.UnaryServerInfo{
  4642  		Server:     srv,
  4643  		FullMethod: "/google.firestore.v1beta1.Firestore/ListCollectionIds",
  4644  	}
  4645  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4646  		return srv.(FirestoreServer).ListCollectionIds(ctx, req.(*ListCollectionIdsRequest))
  4647  	}
  4648  	return interceptor(ctx, in, info, handler)
  4649  }
  4650  
  4651  func _Firestore_BatchWrite_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4652  	in := new(BatchWriteRequest)
  4653  	if err := dec(in); err != nil {
  4654  		return nil, err
  4655  	}
  4656  	if interceptor == nil {
  4657  		return srv.(FirestoreServer).BatchWrite(ctx, in)
  4658  	}
  4659  	info := &grpc.UnaryServerInfo{
  4660  		Server:     srv,
  4661  		FullMethod: "/google.firestore.v1beta1.Firestore/BatchWrite",
  4662  	}
  4663  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4664  		return srv.(FirestoreServer).BatchWrite(ctx, req.(*BatchWriteRequest))
  4665  	}
  4666  	return interceptor(ctx, in, info, handler)
  4667  }
  4668  
  4669  func _Firestore_CreateDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  4670  	in := new(CreateDocumentRequest)
  4671  	if err := dec(in); err != nil {
  4672  		return nil, err
  4673  	}
  4674  	if interceptor == nil {
  4675  		return srv.(FirestoreServer).CreateDocument(ctx, in)
  4676  	}
  4677  	info := &grpc.UnaryServerInfo{
  4678  		Server:     srv,
  4679  		FullMethod: "/google.firestore.v1beta1.Firestore/CreateDocument",
  4680  	}
  4681  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  4682  		return srv.(FirestoreServer).CreateDocument(ctx, req.(*CreateDocumentRequest))
  4683  	}
  4684  	return interceptor(ctx, in, info, handler)
  4685  }
  4686  
  4687  var _Firestore_serviceDesc = grpc.ServiceDesc{
  4688  	ServiceName: "google.firestore.v1beta1.Firestore",
  4689  	HandlerType: (*FirestoreServer)(nil),
  4690  	Methods: []grpc.MethodDesc{
  4691  		{
  4692  			MethodName: "GetDocument",
  4693  			Handler:    _Firestore_GetDocument_Handler,
  4694  		},
  4695  		{
  4696  			MethodName: "ListDocuments",
  4697  			Handler:    _Firestore_ListDocuments_Handler,
  4698  		},
  4699  		{
  4700  			MethodName: "UpdateDocument",
  4701  			Handler:    _Firestore_UpdateDocument_Handler,
  4702  		},
  4703  		{
  4704  			MethodName: "DeleteDocument",
  4705  			Handler:    _Firestore_DeleteDocument_Handler,
  4706  		},
  4707  		{
  4708  			MethodName: "BeginTransaction",
  4709  			Handler:    _Firestore_BeginTransaction_Handler,
  4710  		},
  4711  		{
  4712  			MethodName: "Commit",
  4713  			Handler:    _Firestore_Commit_Handler,
  4714  		},
  4715  		{
  4716  			MethodName: "Rollback",
  4717  			Handler:    _Firestore_Rollback_Handler,
  4718  		},
  4719  		{
  4720  			MethodName: "PartitionQuery",
  4721  			Handler:    _Firestore_PartitionQuery_Handler,
  4722  		},
  4723  		{
  4724  			MethodName: "ListCollectionIds",
  4725  			Handler:    _Firestore_ListCollectionIds_Handler,
  4726  		},
  4727  		{
  4728  			MethodName: "BatchWrite",
  4729  			Handler:    _Firestore_BatchWrite_Handler,
  4730  		},
  4731  		{
  4732  			MethodName: "CreateDocument",
  4733  			Handler:    _Firestore_CreateDocument_Handler,
  4734  		},
  4735  	},
  4736  	Streams: []grpc.StreamDesc{
  4737  		{
  4738  			StreamName:    "BatchGetDocuments",
  4739  			Handler:       _Firestore_BatchGetDocuments_Handler,
  4740  			ServerStreams: true,
  4741  		},
  4742  		{
  4743  			StreamName:    "RunQuery",
  4744  			Handler:       _Firestore_RunQuery_Handler,
  4745  			ServerStreams: true,
  4746  		},
  4747  		{
  4748  			StreamName:    "Write",
  4749  			Handler:       _Firestore_Write_Handler,
  4750  			ServerStreams: true,
  4751  			ClientStreams: true,
  4752  		},
  4753  		{
  4754  			StreamName:    "Listen",
  4755  			Handler:       _Firestore_Listen_Handler,
  4756  			ServerStreams: true,
  4757  			ClientStreams: true,
  4758  		},
  4759  	},
  4760  	Metadata: "google/firestore/v1beta1/firestore.proto",
  4761  }
  4762  

View as plain text