cloud.google.com/go/aiplatform@v1.106.0/apiv1/aiplatformpb/featurestore_online_service.pb.go (about)

     1  // Copyright 2025 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.35.2
    18  // 	protoc        v4.25.7
    19  // source: google/cloud/aiplatform/v1/featurestore_online_service.proto
    20  
    21  package aiplatformpb
    22  
    23  import (
    24  	_ "google.golang.org/genproto/googleapis/api/annotations"
    25  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    26  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    27  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    28  	reflect "reflect"
    29  	sync "sync"
    30  )
    31  
    32  const (
    33  	// Verify that this generated code is sufficiently up-to-date.
    34  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    35  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    37  )
    38  
    39  // Request message for
    40  // [FeaturestoreOnlineServingService.WriteFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.WriteFeatureValues].
    41  type WriteFeatureValuesRequest struct {
    42  	state         protoimpl.MessageState
    43  	sizeCache     protoimpl.SizeCache
    44  	unknownFields protoimpl.UnknownFields
    45  
    46  	// Required. The resource name of the EntityType for the entities being
    47  	// written. Value format:
    48  	// `projects/{project}/locations/{location}/featurestores/
    49  	// {featurestore}/entityTypes/{entityType}`. For example,
    50  	// for a machine learning model predicting user clicks on a website, an
    51  	// EntityType ID could be `user`.
    52  	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
    53  	// Required. The entities to be written. Up to 100,000 feature values can be
    54  	// written across all `payloads`.
    55  	Payloads []*WriteFeatureValuesPayload `protobuf:"bytes,2,rep,name=payloads,proto3" json:"payloads,omitempty"`
    56  }
    57  
    58  func (x *WriteFeatureValuesRequest) Reset() {
    59  	*x = WriteFeatureValuesRequest{}
    60  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[0]
    61  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    62  	ms.StoreMessageInfo(mi)
    63  }
    64  
    65  func (x *WriteFeatureValuesRequest) String() string {
    66  	return protoimpl.X.MessageStringOf(x)
    67  }
    68  
    69  func (*WriteFeatureValuesRequest) ProtoMessage() {}
    70  
    71  func (x *WriteFeatureValuesRequest) ProtoReflect() protoreflect.Message {
    72  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[0]
    73  	if x != nil {
    74  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    75  		if ms.LoadMessageInfo() == nil {
    76  			ms.StoreMessageInfo(mi)
    77  		}
    78  		return ms
    79  	}
    80  	return mi.MessageOf(x)
    81  }
    82  
    83  // Deprecated: Use WriteFeatureValuesRequest.ProtoReflect.Descriptor instead.
    84  func (*WriteFeatureValuesRequest) Descriptor() ([]byte, []int) {
    85  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{0}
    86  }
    87  
    88  func (x *WriteFeatureValuesRequest) GetEntityType() string {
    89  	if x != nil {
    90  		return x.EntityType
    91  	}
    92  	return ""
    93  }
    94  
    95  func (x *WriteFeatureValuesRequest) GetPayloads() []*WriteFeatureValuesPayload {
    96  	if x != nil {
    97  		return x.Payloads
    98  	}
    99  	return nil
   100  }
   101  
   102  // Contains Feature values to be written for a specific entity.
   103  type WriteFeatureValuesPayload struct {
   104  	state         protoimpl.MessageState
   105  	sizeCache     protoimpl.SizeCache
   106  	unknownFields protoimpl.UnknownFields
   107  
   108  	// Required. The ID of the entity.
   109  	EntityId string `protobuf:"bytes,1,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
   110  	// Required. Feature values to be written, mapping from Feature ID to value.
   111  	// Up to 100,000 `feature_values` entries may be written across all payloads.
   112  	// The feature generation time, aligned by days, must be no older than five
   113  	// years (1825 days) and no later than one year (366 days) in the future.
   114  	FeatureValues map[string]*FeatureValue `protobuf:"bytes,2,rep,name=feature_values,json=featureValues,proto3" json:"feature_values,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   115  }
   116  
   117  func (x *WriteFeatureValuesPayload) Reset() {
   118  	*x = WriteFeatureValuesPayload{}
   119  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[1]
   120  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   121  	ms.StoreMessageInfo(mi)
   122  }
   123  
   124  func (x *WriteFeatureValuesPayload) String() string {
   125  	return protoimpl.X.MessageStringOf(x)
   126  }
   127  
   128  func (*WriteFeatureValuesPayload) ProtoMessage() {}
   129  
   130  func (x *WriteFeatureValuesPayload) ProtoReflect() protoreflect.Message {
   131  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[1]
   132  	if x != nil {
   133  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   134  		if ms.LoadMessageInfo() == nil {
   135  			ms.StoreMessageInfo(mi)
   136  		}
   137  		return ms
   138  	}
   139  	return mi.MessageOf(x)
   140  }
   141  
   142  // Deprecated: Use WriteFeatureValuesPayload.ProtoReflect.Descriptor instead.
   143  func (*WriteFeatureValuesPayload) Descriptor() ([]byte, []int) {
   144  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{1}
   145  }
   146  
   147  func (x *WriteFeatureValuesPayload) GetEntityId() string {
   148  	if x != nil {
   149  		return x.EntityId
   150  	}
   151  	return ""
   152  }
   153  
   154  func (x *WriteFeatureValuesPayload) GetFeatureValues() map[string]*FeatureValue {
   155  	if x != nil {
   156  		return x.FeatureValues
   157  	}
   158  	return nil
   159  }
   160  
   161  // Response message for
   162  // [FeaturestoreOnlineServingService.WriteFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.WriteFeatureValues].
   163  type WriteFeatureValuesResponse struct {
   164  	state         protoimpl.MessageState
   165  	sizeCache     protoimpl.SizeCache
   166  	unknownFields protoimpl.UnknownFields
   167  }
   168  
   169  func (x *WriteFeatureValuesResponse) Reset() {
   170  	*x = WriteFeatureValuesResponse{}
   171  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[2]
   172  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   173  	ms.StoreMessageInfo(mi)
   174  }
   175  
   176  func (x *WriteFeatureValuesResponse) String() string {
   177  	return protoimpl.X.MessageStringOf(x)
   178  }
   179  
   180  func (*WriteFeatureValuesResponse) ProtoMessage() {}
   181  
   182  func (x *WriteFeatureValuesResponse) ProtoReflect() protoreflect.Message {
   183  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[2]
   184  	if x != nil {
   185  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   186  		if ms.LoadMessageInfo() == nil {
   187  			ms.StoreMessageInfo(mi)
   188  		}
   189  		return ms
   190  	}
   191  	return mi.MessageOf(x)
   192  }
   193  
   194  // Deprecated: Use WriteFeatureValuesResponse.ProtoReflect.Descriptor instead.
   195  func (*WriteFeatureValuesResponse) Descriptor() ([]byte, []int) {
   196  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{2}
   197  }
   198  
   199  // Request message for
   200  // [FeaturestoreOnlineServingService.ReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues].
   201  type ReadFeatureValuesRequest struct {
   202  	state         protoimpl.MessageState
   203  	sizeCache     protoimpl.SizeCache
   204  	unknownFields protoimpl.UnknownFields
   205  
   206  	// Required. The resource name of the EntityType for the entity being read.
   207  	// Value format:
   208  	// `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`.
   209  	// For example, for a machine learning model predicting user clicks on a
   210  	// website, an EntityType ID could be `user`.
   211  	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
   212  	// Required. ID for a specific entity. For example,
   213  	// for a machine learning model predicting user clicks on a website, an entity
   214  	// ID could be `user_123`.
   215  	EntityId string `protobuf:"bytes,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
   216  	// Required. Selector choosing Features of the target EntityType.
   217  	FeatureSelector *FeatureSelector `protobuf:"bytes,3,opt,name=feature_selector,json=featureSelector,proto3" json:"feature_selector,omitempty"`
   218  }
   219  
   220  func (x *ReadFeatureValuesRequest) Reset() {
   221  	*x = ReadFeatureValuesRequest{}
   222  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[3]
   223  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   224  	ms.StoreMessageInfo(mi)
   225  }
   226  
   227  func (x *ReadFeatureValuesRequest) String() string {
   228  	return protoimpl.X.MessageStringOf(x)
   229  }
   230  
   231  func (*ReadFeatureValuesRequest) ProtoMessage() {}
   232  
   233  func (x *ReadFeatureValuesRequest) ProtoReflect() protoreflect.Message {
   234  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[3]
   235  	if x != nil {
   236  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   237  		if ms.LoadMessageInfo() == nil {
   238  			ms.StoreMessageInfo(mi)
   239  		}
   240  		return ms
   241  	}
   242  	return mi.MessageOf(x)
   243  }
   244  
   245  // Deprecated: Use ReadFeatureValuesRequest.ProtoReflect.Descriptor instead.
   246  func (*ReadFeatureValuesRequest) Descriptor() ([]byte, []int) {
   247  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{3}
   248  }
   249  
   250  func (x *ReadFeatureValuesRequest) GetEntityType() string {
   251  	if x != nil {
   252  		return x.EntityType
   253  	}
   254  	return ""
   255  }
   256  
   257  func (x *ReadFeatureValuesRequest) GetEntityId() string {
   258  	if x != nil {
   259  		return x.EntityId
   260  	}
   261  	return ""
   262  }
   263  
   264  func (x *ReadFeatureValuesRequest) GetFeatureSelector() *FeatureSelector {
   265  	if x != nil {
   266  		return x.FeatureSelector
   267  	}
   268  	return nil
   269  }
   270  
   271  // Response message for
   272  // [FeaturestoreOnlineServingService.ReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues].
   273  type ReadFeatureValuesResponse struct {
   274  	state         protoimpl.MessageState
   275  	sizeCache     protoimpl.SizeCache
   276  	unknownFields protoimpl.UnknownFields
   277  
   278  	// Response header.
   279  	Header *ReadFeatureValuesResponse_Header `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
   280  	// Entity view with Feature values. This may be the entity in the
   281  	// Featurestore if values for all Features were requested, or a projection
   282  	// of the entity in the Featurestore if values for only some Features were
   283  	// requested.
   284  	EntityView *ReadFeatureValuesResponse_EntityView `protobuf:"bytes,2,opt,name=entity_view,json=entityView,proto3" json:"entity_view,omitempty"`
   285  }
   286  
   287  func (x *ReadFeatureValuesResponse) Reset() {
   288  	*x = ReadFeatureValuesResponse{}
   289  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[4]
   290  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   291  	ms.StoreMessageInfo(mi)
   292  }
   293  
   294  func (x *ReadFeatureValuesResponse) String() string {
   295  	return protoimpl.X.MessageStringOf(x)
   296  }
   297  
   298  func (*ReadFeatureValuesResponse) ProtoMessage() {}
   299  
   300  func (x *ReadFeatureValuesResponse) ProtoReflect() protoreflect.Message {
   301  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[4]
   302  	if x != nil {
   303  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   304  		if ms.LoadMessageInfo() == nil {
   305  			ms.StoreMessageInfo(mi)
   306  		}
   307  		return ms
   308  	}
   309  	return mi.MessageOf(x)
   310  }
   311  
   312  // Deprecated: Use ReadFeatureValuesResponse.ProtoReflect.Descriptor instead.
   313  func (*ReadFeatureValuesResponse) Descriptor() ([]byte, []int) {
   314  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{4}
   315  }
   316  
   317  func (x *ReadFeatureValuesResponse) GetHeader() *ReadFeatureValuesResponse_Header {
   318  	if x != nil {
   319  		return x.Header
   320  	}
   321  	return nil
   322  }
   323  
   324  func (x *ReadFeatureValuesResponse) GetEntityView() *ReadFeatureValuesResponse_EntityView {
   325  	if x != nil {
   326  		return x.EntityView
   327  	}
   328  	return nil
   329  }
   330  
   331  // Request message for
   332  // [FeaturestoreOnlineServingService.StreamingReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues].
   333  type StreamingReadFeatureValuesRequest struct {
   334  	state         protoimpl.MessageState
   335  	sizeCache     protoimpl.SizeCache
   336  	unknownFields protoimpl.UnknownFields
   337  
   338  	// Required. The resource name of the entities' type.
   339  	// Value format:
   340  	// `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`.
   341  	// For example,
   342  	// for a machine learning model predicting user clicks on a website, an
   343  	// EntityType ID could be `user`.
   344  	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
   345  	// Required. IDs of entities to read Feature values of. The maximum number of
   346  	// IDs is 100. For example, for a machine learning model predicting user
   347  	// clicks on a website, an entity ID could be `user_123`.
   348  	EntityIds []string `protobuf:"bytes,2,rep,name=entity_ids,json=entityIds,proto3" json:"entity_ids,omitempty"`
   349  	// Required. Selector choosing Features of the target EntityType. Feature IDs
   350  	// will be deduplicated.
   351  	FeatureSelector *FeatureSelector `protobuf:"bytes,3,opt,name=feature_selector,json=featureSelector,proto3" json:"feature_selector,omitempty"`
   352  }
   353  
   354  func (x *StreamingReadFeatureValuesRequest) Reset() {
   355  	*x = StreamingReadFeatureValuesRequest{}
   356  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[5]
   357  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   358  	ms.StoreMessageInfo(mi)
   359  }
   360  
   361  func (x *StreamingReadFeatureValuesRequest) String() string {
   362  	return protoimpl.X.MessageStringOf(x)
   363  }
   364  
   365  func (*StreamingReadFeatureValuesRequest) ProtoMessage() {}
   366  
   367  func (x *StreamingReadFeatureValuesRequest) ProtoReflect() protoreflect.Message {
   368  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[5]
   369  	if x != nil {
   370  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   371  		if ms.LoadMessageInfo() == nil {
   372  			ms.StoreMessageInfo(mi)
   373  		}
   374  		return ms
   375  	}
   376  	return mi.MessageOf(x)
   377  }
   378  
   379  // Deprecated: Use StreamingReadFeatureValuesRequest.ProtoReflect.Descriptor instead.
   380  func (*StreamingReadFeatureValuesRequest) Descriptor() ([]byte, []int) {
   381  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{5}
   382  }
   383  
   384  func (x *StreamingReadFeatureValuesRequest) GetEntityType() string {
   385  	if x != nil {
   386  		return x.EntityType
   387  	}
   388  	return ""
   389  }
   390  
   391  func (x *StreamingReadFeatureValuesRequest) GetEntityIds() []string {
   392  	if x != nil {
   393  		return x.EntityIds
   394  	}
   395  	return nil
   396  }
   397  
   398  func (x *StreamingReadFeatureValuesRequest) GetFeatureSelector() *FeatureSelector {
   399  	if x != nil {
   400  		return x.FeatureSelector
   401  	}
   402  	return nil
   403  }
   404  
   405  // Value for a feature.
   406  type FeatureValue struct {
   407  	state         protoimpl.MessageState
   408  	sizeCache     protoimpl.SizeCache
   409  	unknownFields protoimpl.UnknownFields
   410  
   411  	// Value for the feature.
   412  	//
   413  	// Types that are assignable to Value:
   414  	//
   415  	//	*FeatureValue_BoolValue
   416  	//	*FeatureValue_DoubleValue
   417  	//	*FeatureValue_Int64Value
   418  	//	*FeatureValue_StringValue
   419  	//	*FeatureValue_BoolArrayValue
   420  	//	*FeatureValue_DoubleArrayValue
   421  	//	*FeatureValue_Int64ArrayValue
   422  	//	*FeatureValue_StringArrayValue
   423  	//	*FeatureValue_BytesValue
   424  	//	*FeatureValue_StructValue
   425  	Value isFeatureValue_Value `protobuf_oneof:"value"`
   426  	// Metadata of feature value.
   427  	Metadata *FeatureValue_Metadata `protobuf:"bytes,14,opt,name=metadata,proto3" json:"metadata,omitempty"`
   428  }
   429  
   430  func (x *FeatureValue) Reset() {
   431  	*x = FeatureValue{}
   432  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[6]
   433  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   434  	ms.StoreMessageInfo(mi)
   435  }
   436  
   437  func (x *FeatureValue) String() string {
   438  	return protoimpl.X.MessageStringOf(x)
   439  }
   440  
   441  func (*FeatureValue) ProtoMessage() {}
   442  
   443  func (x *FeatureValue) ProtoReflect() protoreflect.Message {
   444  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[6]
   445  	if x != nil {
   446  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   447  		if ms.LoadMessageInfo() == nil {
   448  			ms.StoreMessageInfo(mi)
   449  		}
   450  		return ms
   451  	}
   452  	return mi.MessageOf(x)
   453  }
   454  
   455  // Deprecated: Use FeatureValue.ProtoReflect.Descriptor instead.
   456  func (*FeatureValue) Descriptor() ([]byte, []int) {
   457  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{6}
   458  }
   459  
   460  func (m *FeatureValue) GetValue() isFeatureValue_Value {
   461  	if m != nil {
   462  		return m.Value
   463  	}
   464  	return nil
   465  }
   466  
   467  func (x *FeatureValue) GetBoolValue() bool {
   468  	if x, ok := x.GetValue().(*FeatureValue_BoolValue); ok {
   469  		return x.BoolValue
   470  	}
   471  	return false
   472  }
   473  
   474  func (x *FeatureValue) GetDoubleValue() float64 {
   475  	if x, ok := x.GetValue().(*FeatureValue_DoubleValue); ok {
   476  		return x.DoubleValue
   477  	}
   478  	return 0
   479  }
   480  
   481  func (x *FeatureValue) GetInt64Value() int64 {
   482  	if x, ok := x.GetValue().(*FeatureValue_Int64Value); ok {
   483  		return x.Int64Value
   484  	}
   485  	return 0
   486  }
   487  
   488  func (x *FeatureValue) GetStringValue() string {
   489  	if x, ok := x.GetValue().(*FeatureValue_StringValue); ok {
   490  		return x.StringValue
   491  	}
   492  	return ""
   493  }
   494  
   495  func (x *FeatureValue) GetBoolArrayValue() *BoolArray {
   496  	if x, ok := x.GetValue().(*FeatureValue_BoolArrayValue); ok {
   497  		return x.BoolArrayValue
   498  	}
   499  	return nil
   500  }
   501  
   502  func (x *FeatureValue) GetDoubleArrayValue() *DoubleArray {
   503  	if x, ok := x.GetValue().(*FeatureValue_DoubleArrayValue); ok {
   504  		return x.DoubleArrayValue
   505  	}
   506  	return nil
   507  }
   508  
   509  func (x *FeatureValue) GetInt64ArrayValue() *Int64Array {
   510  	if x, ok := x.GetValue().(*FeatureValue_Int64ArrayValue); ok {
   511  		return x.Int64ArrayValue
   512  	}
   513  	return nil
   514  }
   515  
   516  func (x *FeatureValue) GetStringArrayValue() *StringArray {
   517  	if x, ok := x.GetValue().(*FeatureValue_StringArrayValue); ok {
   518  		return x.StringArrayValue
   519  	}
   520  	return nil
   521  }
   522  
   523  func (x *FeatureValue) GetBytesValue() []byte {
   524  	if x, ok := x.GetValue().(*FeatureValue_BytesValue); ok {
   525  		return x.BytesValue
   526  	}
   527  	return nil
   528  }
   529  
   530  func (x *FeatureValue) GetStructValue() *StructValue {
   531  	if x, ok := x.GetValue().(*FeatureValue_StructValue); ok {
   532  		return x.StructValue
   533  	}
   534  	return nil
   535  }
   536  
   537  func (x *FeatureValue) GetMetadata() *FeatureValue_Metadata {
   538  	if x != nil {
   539  		return x.Metadata
   540  	}
   541  	return nil
   542  }
   543  
   544  type isFeatureValue_Value interface {
   545  	isFeatureValue_Value()
   546  }
   547  
   548  type FeatureValue_BoolValue struct {
   549  	// Bool type feature value.
   550  	BoolValue bool `protobuf:"varint,1,opt,name=bool_value,json=boolValue,proto3,oneof"`
   551  }
   552  
   553  type FeatureValue_DoubleValue struct {
   554  	// Double type feature value.
   555  	DoubleValue float64 `protobuf:"fixed64,2,opt,name=double_value,json=doubleValue,proto3,oneof"`
   556  }
   557  
   558  type FeatureValue_Int64Value struct {
   559  	// Int64 feature value.
   560  	Int64Value int64 `protobuf:"varint,5,opt,name=int64_value,json=int64Value,proto3,oneof"`
   561  }
   562  
   563  type FeatureValue_StringValue struct {
   564  	// String feature value.
   565  	StringValue string `protobuf:"bytes,6,opt,name=string_value,json=stringValue,proto3,oneof"`
   566  }
   567  
   568  type FeatureValue_BoolArrayValue struct {
   569  	// A list of bool type feature value.
   570  	BoolArrayValue *BoolArray `protobuf:"bytes,7,opt,name=bool_array_value,json=boolArrayValue,proto3,oneof"`
   571  }
   572  
   573  type FeatureValue_DoubleArrayValue struct {
   574  	// A list of double type feature value.
   575  	DoubleArrayValue *DoubleArray `protobuf:"bytes,8,opt,name=double_array_value,json=doubleArrayValue,proto3,oneof"`
   576  }
   577  
   578  type FeatureValue_Int64ArrayValue struct {
   579  	// A list of int64 type feature value.
   580  	Int64ArrayValue *Int64Array `protobuf:"bytes,11,opt,name=int64_array_value,json=int64ArrayValue,proto3,oneof"`
   581  }
   582  
   583  type FeatureValue_StringArrayValue struct {
   584  	// A list of string type feature value.
   585  	StringArrayValue *StringArray `protobuf:"bytes,12,opt,name=string_array_value,json=stringArrayValue,proto3,oneof"`
   586  }
   587  
   588  type FeatureValue_BytesValue struct {
   589  	// Bytes feature value.
   590  	BytesValue []byte `protobuf:"bytes,13,opt,name=bytes_value,json=bytesValue,proto3,oneof"`
   591  }
   592  
   593  type FeatureValue_StructValue struct {
   594  	// A struct type feature value.
   595  	StructValue *StructValue `protobuf:"bytes,15,opt,name=struct_value,json=structValue,proto3,oneof"`
   596  }
   597  
   598  func (*FeatureValue_BoolValue) isFeatureValue_Value() {}
   599  
   600  func (*FeatureValue_DoubleValue) isFeatureValue_Value() {}
   601  
   602  func (*FeatureValue_Int64Value) isFeatureValue_Value() {}
   603  
   604  func (*FeatureValue_StringValue) isFeatureValue_Value() {}
   605  
   606  func (*FeatureValue_BoolArrayValue) isFeatureValue_Value() {}
   607  
   608  func (*FeatureValue_DoubleArrayValue) isFeatureValue_Value() {}
   609  
   610  func (*FeatureValue_Int64ArrayValue) isFeatureValue_Value() {}
   611  
   612  func (*FeatureValue_StringArrayValue) isFeatureValue_Value() {}
   613  
   614  func (*FeatureValue_BytesValue) isFeatureValue_Value() {}
   615  
   616  func (*FeatureValue_StructValue) isFeatureValue_Value() {}
   617  
   618  // Struct (or object) type feature value.
   619  type StructValue struct {
   620  	state         protoimpl.MessageState
   621  	sizeCache     protoimpl.SizeCache
   622  	unknownFields protoimpl.UnknownFields
   623  
   624  	// A list of field values.
   625  	Values []*StructFieldValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
   626  }
   627  
   628  func (x *StructValue) Reset() {
   629  	*x = StructValue{}
   630  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[7]
   631  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   632  	ms.StoreMessageInfo(mi)
   633  }
   634  
   635  func (x *StructValue) String() string {
   636  	return protoimpl.X.MessageStringOf(x)
   637  }
   638  
   639  func (*StructValue) ProtoMessage() {}
   640  
   641  func (x *StructValue) ProtoReflect() protoreflect.Message {
   642  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[7]
   643  	if x != nil {
   644  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   645  		if ms.LoadMessageInfo() == nil {
   646  			ms.StoreMessageInfo(mi)
   647  		}
   648  		return ms
   649  	}
   650  	return mi.MessageOf(x)
   651  }
   652  
   653  // Deprecated: Use StructValue.ProtoReflect.Descriptor instead.
   654  func (*StructValue) Descriptor() ([]byte, []int) {
   655  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{7}
   656  }
   657  
   658  func (x *StructValue) GetValues() []*StructFieldValue {
   659  	if x != nil {
   660  		return x.Values
   661  	}
   662  	return nil
   663  }
   664  
   665  // One field of a Struct (or object) type feature value.
   666  type StructFieldValue struct {
   667  	state         protoimpl.MessageState
   668  	sizeCache     protoimpl.SizeCache
   669  	unknownFields protoimpl.UnknownFields
   670  
   671  	// Name of the field in the struct feature.
   672  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   673  	// The value for this field.
   674  	Value *FeatureValue `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   675  }
   676  
   677  func (x *StructFieldValue) Reset() {
   678  	*x = StructFieldValue{}
   679  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[8]
   680  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   681  	ms.StoreMessageInfo(mi)
   682  }
   683  
   684  func (x *StructFieldValue) String() string {
   685  	return protoimpl.X.MessageStringOf(x)
   686  }
   687  
   688  func (*StructFieldValue) ProtoMessage() {}
   689  
   690  func (x *StructFieldValue) ProtoReflect() protoreflect.Message {
   691  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[8]
   692  	if x != nil {
   693  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   694  		if ms.LoadMessageInfo() == nil {
   695  			ms.StoreMessageInfo(mi)
   696  		}
   697  		return ms
   698  	}
   699  	return mi.MessageOf(x)
   700  }
   701  
   702  // Deprecated: Use StructFieldValue.ProtoReflect.Descriptor instead.
   703  func (*StructFieldValue) Descriptor() ([]byte, []int) {
   704  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{8}
   705  }
   706  
   707  func (x *StructFieldValue) GetName() string {
   708  	if x != nil {
   709  		return x.Name
   710  	}
   711  	return ""
   712  }
   713  
   714  func (x *StructFieldValue) GetValue() *FeatureValue {
   715  	if x != nil {
   716  		return x.Value
   717  	}
   718  	return nil
   719  }
   720  
   721  // Container for list of values.
   722  type FeatureValueList struct {
   723  	state         protoimpl.MessageState
   724  	sizeCache     protoimpl.SizeCache
   725  	unknownFields protoimpl.UnknownFields
   726  
   727  	// A list of feature values. All of them should be the same data type.
   728  	Values []*FeatureValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
   729  }
   730  
   731  func (x *FeatureValueList) Reset() {
   732  	*x = FeatureValueList{}
   733  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[9]
   734  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   735  	ms.StoreMessageInfo(mi)
   736  }
   737  
   738  func (x *FeatureValueList) String() string {
   739  	return protoimpl.X.MessageStringOf(x)
   740  }
   741  
   742  func (*FeatureValueList) ProtoMessage() {}
   743  
   744  func (x *FeatureValueList) ProtoReflect() protoreflect.Message {
   745  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[9]
   746  	if x != nil {
   747  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   748  		if ms.LoadMessageInfo() == nil {
   749  			ms.StoreMessageInfo(mi)
   750  		}
   751  		return ms
   752  	}
   753  	return mi.MessageOf(x)
   754  }
   755  
   756  // Deprecated: Use FeatureValueList.ProtoReflect.Descriptor instead.
   757  func (*FeatureValueList) Descriptor() ([]byte, []int) {
   758  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{9}
   759  }
   760  
   761  func (x *FeatureValueList) GetValues() []*FeatureValue {
   762  	if x != nil {
   763  		return x.Values
   764  	}
   765  	return nil
   766  }
   767  
   768  // Metadata for requested Features.
   769  type ReadFeatureValuesResponse_FeatureDescriptor struct {
   770  	state         protoimpl.MessageState
   771  	sizeCache     protoimpl.SizeCache
   772  	unknownFields protoimpl.UnknownFields
   773  
   774  	// Feature ID.
   775  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   776  }
   777  
   778  func (x *ReadFeatureValuesResponse_FeatureDescriptor) Reset() {
   779  	*x = ReadFeatureValuesResponse_FeatureDescriptor{}
   780  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[11]
   781  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   782  	ms.StoreMessageInfo(mi)
   783  }
   784  
   785  func (x *ReadFeatureValuesResponse_FeatureDescriptor) String() string {
   786  	return protoimpl.X.MessageStringOf(x)
   787  }
   788  
   789  func (*ReadFeatureValuesResponse_FeatureDescriptor) ProtoMessage() {}
   790  
   791  func (x *ReadFeatureValuesResponse_FeatureDescriptor) ProtoReflect() protoreflect.Message {
   792  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[11]
   793  	if x != nil {
   794  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   795  		if ms.LoadMessageInfo() == nil {
   796  			ms.StoreMessageInfo(mi)
   797  		}
   798  		return ms
   799  	}
   800  	return mi.MessageOf(x)
   801  }
   802  
   803  // Deprecated: Use ReadFeatureValuesResponse_FeatureDescriptor.ProtoReflect.Descriptor instead.
   804  func (*ReadFeatureValuesResponse_FeatureDescriptor) Descriptor() ([]byte, []int) {
   805  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{4, 0}
   806  }
   807  
   808  func (x *ReadFeatureValuesResponse_FeatureDescriptor) GetId() string {
   809  	if x != nil {
   810  		return x.Id
   811  	}
   812  	return ""
   813  }
   814  
   815  // Response header with metadata for the requested
   816  // [ReadFeatureValuesRequest.entity_type][google.cloud.aiplatform.v1.ReadFeatureValuesRequest.entity_type]
   817  // and Features.
   818  type ReadFeatureValuesResponse_Header struct {
   819  	state         protoimpl.MessageState
   820  	sizeCache     protoimpl.SizeCache
   821  	unknownFields protoimpl.UnknownFields
   822  
   823  	// The resource name of the EntityType from the
   824  	// [ReadFeatureValuesRequest][google.cloud.aiplatform.v1.ReadFeatureValuesRequest].
   825  	// Value format:
   826  	// `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`.
   827  	EntityType string `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
   828  	// List of Feature metadata corresponding to each piece of
   829  	// [ReadFeatureValuesResponse.EntityView.data][google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView.data].
   830  	FeatureDescriptors []*ReadFeatureValuesResponse_FeatureDescriptor `protobuf:"bytes,2,rep,name=feature_descriptors,json=featureDescriptors,proto3" json:"feature_descriptors,omitempty"`
   831  }
   832  
   833  func (x *ReadFeatureValuesResponse_Header) Reset() {
   834  	*x = ReadFeatureValuesResponse_Header{}
   835  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[12]
   836  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   837  	ms.StoreMessageInfo(mi)
   838  }
   839  
   840  func (x *ReadFeatureValuesResponse_Header) String() string {
   841  	return protoimpl.X.MessageStringOf(x)
   842  }
   843  
   844  func (*ReadFeatureValuesResponse_Header) ProtoMessage() {}
   845  
   846  func (x *ReadFeatureValuesResponse_Header) ProtoReflect() protoreflect.Message {
   847  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[12]
   848  	if x != nil {
   849  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   850  		if ms.LoadMessageInfo() == nil {
   851  			ms.StoreMessageInfo(mi)
   852  		}
   853  		return ms
   854  	}
   855  	return mi.MessageOf(x)
   856  }
   857  
   858  // Deprecated: Use ReadFeatureValuesResponse_Header.ProtoReflect.Descriptor instead.
   859  func (*ReadFeatureValuesResponse_Header) Descriptor() ([]byte, []int) {
   860  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{4, 1}
   861  }
   862  
   863  func (x *ReadFeatureValuesResponse_Header) GetEntityType() string {
   864  	if x != nil {
   865  		return x.EntityType
   866  	}
   867  	return ""
   868  }
   869  
   870  func (x *ReadFeatureValuesResponse_Header) GetFeatureDescriptors() []*ReadFeatureValuesResponse_FeatureDescriptor {
   871  	if x != nil {
   872  		return x.FeatureDescriptors
   873  	}
   874  	return nil
   875  }
   876  
   877  // Entity view with Feature values.
   878  type ReadFeatureValuesResponse_EntityView struct {
   879  	state         protoimpl.MessageState
   880  	sizeCache     protoimpl.SizeCache
   881  	unknownFields protoimpl.UnknownFields
   882  
   883  	// ID of the requested entity.
   884  	EntityId string `protobuf:"bytes,1,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
   885  	// Each piece of data holds the k
   886  	// requested values for one requested Feature. If no values
   887  	// for the requested Feature exist, the corresponding cell will be empty.
   888  	// This has the same size and is in the same order as the features from the
   889  	// header
   890  	// [ReadFeatureValuesResponse.header][google.cloud.aiplatform.v1.ReadFeatureValuesResponse.header].
   891  	Data []*ReadFeatureValuesResponse_EntityView_Data `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"`
   892  }
   893  
   894  func (x *ReadFeatureValuesResponse_EntityView) Reset() {
   895  	*x = ReadFeatureValuesResponse_EntityView{}
   896  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[13]
   897  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   898  	ms.StoreMessageInfo(mi)
   899  }
   900  
   901  func (x *ReadFeatureValuesResponse_EntityView) String() string {
   902  	return protoimpl.X.MessageStringOf(x)
   903  }
   904  
   905  func (*ReadFeatureValuesResponse_EntityView) ProtoMessage() {}
   906  
   907  func (x *ReadFeatureValuesResponse_EntityView) ProtoReflect() protoreflect.Message {
   908  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[13]
   909  	if x != nil {
   910  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   911  		if ms.LoadMessageInfo() == nil {
   912  			ms.StoreMessageInfo(mi)
   913  		}
   914  		return ms
   915  	}
   916  	return mi.MessageOf(x)
   917  }
   918  
   919  // Deprecated: Use ReadFeatureValuesResponse_EntityView.ProtoReflect.Descriptor instead.
   920  func (*ReadFeatureValuesResponse_EntityView) Descriptor() ([]byte, []int) {
   921  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{4, 2}
   922  }
   923  
   924  func (x *ReadFeatureValuesResponse_EntityView) GetEntityId() string {
   925  	if x != nil {
   926  		return x.EntityId
   927  	}
   928  	return ""
   929  }
   930  
   931  func (x *ReadFeatureValuesResponse_EntityView) GetData() []*ReadFeatureValuesResponse_EntityView_Data {
   932  	if x != nil {
   933  		return x.Data
   934  	}
   935  	return nil
   936  }
   937  
   938  // Container to hold value(s), successive in time, for one Feature from the
   939  // request.
   940  type ReadFeatureValuesResponse_EntityView_Data struct {
   941  	state         protoimpl.MessageState
   942  	sizeCache     protoimpl.SizeCache
   943  	unknownFields protoimpl.UnknownFields
   944  
   945  	// Types that are assignable to Data:
   946  	//
   947  	//	*ReadFeatureValuesResponse_EntityView_Data_Value
   948  	//	*ReadFeatureValuesResponse_EntityView_Data_Values
   949  	Data isReadFeatureValuesResponse_EntityView_Data_Data `protobuf_oneof:"data"`
   950  }
   951  
   952  func (x *ReadFeatureValuesResponse_EntityView_Data) Reset() {
   953  	*x = ReadFeatureValuesResponse_EntityView_Data{}
   954  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[14]
   955  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   956  	ms.StoreMessageInfo(mi)
   957  }
   958  
   959  func (x *ReadFeatureValuesResponse_EntityView_Data) String() string {
   960  	return protoimpl.X.MessageStringOf(x)
   961  }
   962  
   963  func (*ReadFeatureValuesResponse_EntityView_Data) ProtoMessage() {}
   964  
   965  func (x *ReadFeatureValuesResponse_EntityView_Data) ProtoReflect() protoreflect.Message {
   966  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[14]
   967  	if x != nil {
   968  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   969  		if ms.LoadMessageInfo() == nil {
   970  			ms.StoreMessageInfo(mi)
   971  		}
   972  		return ms
   973  	}
   974  	return mi.MessageOf(x)
   975  }
   976  
   977  // Deprecated: Use ReadFeatureValuesResponse_EntityView_Data.ProtoReflect.Descriptor instead.
   978  func (*ReadFeatureValuesResponse_EntityView_Data) Descriptor() ([]byte, []int) {
   979  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{4, 2, 0}
   980  }
   981  
   982  func (m *ReadFeatureValuesResponse_EntityView_Data) GetData() isReadFeatureValuesResponse_EntityView_Data_Data {
   983  	if m != nil {
   984  		return m.Data
   985  	}
   986  	return nil
   987  }
   988  
   989  func (x *ReadFeatureValuesResponse_EntityView_Data) GetValue() *FeatureValue {
   990  	if x, ok := x.GetData().(*ReadFeatureValuesResponse_EntityView_Data_Value); ok {
   991  		return x.Value
   992  	}
   993  	return nil
   994  }
   995  
   996  func (x *ReadFeatureValuesResponse_EntityView_Data) GetValues() *FeatureValueList {
   997  	if x, ok := x.GetData().(*ReadFeatureValuesResponse_EntityView_Data_Values); ok {
   998  		return x.Values
   999  	}
  1000  	return nil
  1001  }
  1002  
  1003  type isReadFeatureValuesResponse_EntityView_Data_Data interface {
  1004  	isReadFeatureValuesResponse_EntityView_Data_Data()
  1005  }
  1006  
  1007  type ReadFeatureValuesResponse_EntityView_Data_Value struct {
  1008  	// Feature value if a single value is requested.
  1009  	Value *FeatureValue `protobuf:"bytes,1,opt,name=value,proto3,oneof"`
  1010  }
  1011  
  1012  type ReadFeatureValuesResponse_EntityView_Data_Values struct {
  1013  	// Feature values list if values, successive in time, are requested.
  1014  	// If the requested number of values is greater than the number of
  1015  	// existing Feature values, nonexistent values are omitted instead of
  1016  	// being returned as empty.
  1017  	Values *FeatureValueList `protobuf:"bytes,2,opt,name=values,proto3,oneof"`
  1018  }
  1019  
  1020  func (*ReadFeatureValuesResponse_EntityView_Data_Value) isReadFeatureValuesResponse_EntityView_Data_Data() {
  1021  }
  1022  
  1023  func (*ReadFeatureValuesResponse_EntityView_Data_Values) isReadFeatureValuesResponse_EntityView_Data_Data() {
  1024  }
  1025  
  1026  // Metadata of feature value.
  1027  type FeatureValue_Metadata struct {
  1028  	state         protoimpl.MessageState
  1029  	sizeCache     protoimpl.SizeCache
  1030  	unknownFields protoimpl.UnknownFields
  1031  
  1032  	// Feature generation timestamp. Typically, it is provided by user at
  1033  	// feature ingestion time. If not, feature store
  1034  	// will use the system timestamp when the data is ingested into feature
  1035  	// store.
  1036  	//
  1037  	// Legacy Feature Store: For streaming ingestion, the time, aligned by days,
  1038  	// must be no older than five years (1825 days) and no later than one year
  1039  	// (366 days) in the future.
  1040  	GenerateTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=generate_time,json=generateTime,proto3" json:"generate_time,omitempty"`
  1041  }
  1042  
  1043  func (x *FeatureValue_Metadata) Reset() {
  1044  	*x = FeatureValue_Metadata{}
  1045  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[15]
  1046  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1047  	ms.StoreMessageInfo(mi)
  1048  }
  1049  
  1050  func (x *FeatureValue_Metadata) String() string {
  1051  	return protoimpl.X.MessageStringOf(x)
  1052  }
  1053  
  1054  func (*FeatureValue_Metadata) ProtoMessage() {}
  1055  
  1056  func (x *FeatureValue_Metadata) ProtoReflect() protoreflect.Message {
  1057  	mi := &file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[15]
  1058  	if x != nil {
  1059  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1060  		if ms.LoadMessageInfo() == nil {
  1061  			ms.StoreMessageInfo(mi)
  1062  		}
  1063  		return ms
  1064  	}
  1065  	return mi.MessageOf(x)
  1066  }
  1067  
  1068  // Deprecated: Use FeatureValue_Metadata.ProtoReflect.Descriptor instead.
  1069  func (*FeatureValue_Metadata) Descriptor() ([]byte, []int) {
  1070  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP(), []int{6, 0}
  1071  }
  1072  
  1073  func (x *FeatureValue_Metadata) GetGenerateTime() *timestamppb.Timestamp {
  1074  	if x != nil {
  1075  		return x.GenerateTime
  1076  	}
  1077  	return nil
  1078  }
  1079  
  1080  var File_google_cloud_aiplatform_v1_featurestore_online_service_proto protoreflect.FileDescriptor
  1081  
  1082  var file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDesc = []byte{
  1083  	0x0a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  1084  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61,
  1085  	0x74, 0x75, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65,
  1086  	0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a,
  1087  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  1088  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67,
  1089  	0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
  1090  	0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1091  	0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  1092  	0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69,
  1093  	0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f,
  1094  	0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72,
  1095  	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67,
  1096  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c,
  1097  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
  1098  	0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
  1099  	0x1a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  1100  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70,
  1101  	0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1102  	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
  1103  	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc2, 0x01, 0x0a, 0x19, 0x57, 0x72,
  1104  	0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73,
  1105  	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74,
  1106  	0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41,
  1107  	0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  1108  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
  1109  	0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69,
  1110  	0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x56, 0x0a, 0x08, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61,
  1111  	0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1112  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  1113  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75,
  1114  	0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x42,
  1115  	0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x22, 0x9f,
  1116  	0x02, 0x0a, 0x19, 0x57, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56,
  1117  	0x61, 0x6c, 0x75, 0x65, 0x73, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x20, 0x0a, 0x09,
  1118  	0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
  1119  	0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x74,
  1120  	0x0a, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73,
  1121  	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  1122  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  1123  	0x2e, 0x76, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1124  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x46, 0x65,
  1125  	0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
  1126  	0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61,
  1127  	0x6c, 0x75, 0x65, 0x73, 0x1a, 0x6a, 0x0a, 0x12, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56,
  1128  	0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
  1129  	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3e, 0x0a, 0x05,
  1130  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f,
  1131  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1132  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1133  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
  1134  	0x22, 0x1c, 0x0a, 0x1a, 0x57, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1135  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe8,
  1136  	0x01, 0x0a, 0x18, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61,
  1137  	0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x65,
  1138  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  1139  	0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1140  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
  1141  	0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a,
  1142  	0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x65, 0x6e,
  1143  	0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
  1144  	0x41, 0x02, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x5b, 0x0a, 0x10,
  1145  	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72,
  1146  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  1147  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  1148  	0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63,
  1149  	0x74, 0x6f, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
  1150  	0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xec, 0x05, 0x0a, 0x19, 0x52, 0x65,
  1151  	0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52,
  1152  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65,
  1153  	0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1154  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1155  	0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1156  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48,
  1157  	0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x61, 0x0a,
  1158  	0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01,
  1159  	0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  1160  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
  1161  	0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65,
  1162  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
  1163  	0x56, 0x69, 0x65, 0x77, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x56, 0x69, 0x65, 0x77,
  1164  	0x1a, 0x23, 0x0a, 0x11, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
  1165  	0x69, 0x70, 0x74, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
  1166  	0x09, 0x52, 0x02, 0x69, 0x64, 0x1a, 0xce, 0x01, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
  1167  	0x12, 0x4a, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
  1168  	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x61, 0x69, 0x70, 0x6c,
  1169  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
  1170  	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
  1171  	0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x78, 0x0a, 0x13,
  1172  	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  1173  	0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  1174  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  1175  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75,
  1176  	0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
  1177  	0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  1178  	0x6f, 0x72, 0x52, 0x12, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72,
  1179  	0x69, 0x70, 0x74, 0x6f, 0x72, 0x73, 0x1a, 0x9f, 0x02, 0x0a, 0x0a, 0x45, 0x6e, 0x74, 0x69, 0x74,
  1180  	0x79, 0x56, 0x69, 0x65, 0x77, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f,
  1181  	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
  1182  	0x49, 0x64, 0x12, 0x59, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
  1183  	0x32, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  1184  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
  1185  	0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52,
  1186  	0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x56, 0x69,
  1187  	0x65, 0x77, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x98, 0x01,
  1188  	0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
  1189  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  1190  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  1191  	0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48,
  1192  	0x00, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x46, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75,
  1193  	0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1194  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  1195  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c,
  1196  	0x75, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73,
  1197  	0x42, 0x06, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf3, 0x01, 0x0a, 0x21, 0x53, 0x74, 0x72,
  1198  	0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
  1199  	0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d,
  1200  	0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
  1201  	0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x61, 0x69, 0x70,
  1202  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
  1203  	0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
  1204  	0x65, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a,
  1205  	0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
  1206  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64,
  1207  	0x73, 0x12, 0x5b, 0x0a, 0x10, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x6c,
  1208  	0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f,
  1209  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1210  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1211  	0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x66,
  1212  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0x8d,
  1213  	0x06, 0x0a, 0x0c, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
  1214  	0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20,
  1215  	0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65,
  1216  	0x12, 0x23, 0x0a, 0x0c, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
  1217  	0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65,
  1218  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x76,
  1219  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0a, 0x69, 0x6e,
  1220  	0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69,
  1221  	0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
  1222  	0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x51, 0x0a,
  1223  	0x10, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75,
  1224  	0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1225  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1226  	0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x41, 0x72, 0x72, 0x61, 0x79, 0x48, 0x00,
  1227  	0x52, 0x0e, 0x62, 0x6f, 0x6f, 0x6c, 0x41, 0x72, 0x72, 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65,
  1228  	0x12, 0x57, 0x0a, 0x12, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79,
  1229  	0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67,
  1230  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  1231  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65,
  1232  	0x41, 0x72, 0x72, 0x61, 0x79, 0x48, 0x00, 0x52, 0x10, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x41,
  1233  	0x72, 0x72, 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x54, 0x0a, 0x11, 0x69, 0x6e, 0x74,
  1234  	0x36, 0x34, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0b,
  1235  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  1236  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  1237  	0x31, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x41, 0x72, 0x72, 0x61, 0x79, 0x48, 0x00, 0x52, 0x0f,
  1238  	0x69, 0x6e, 0x74, 0x36, 0x34, 0x41, 0x72, 0x72, 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
  1239  	0x57, 0x0a, 0x12, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5f,
  1240  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f,
  1241  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1242  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41,
  1243  	0x72, 0x72, 0x61, 0x79, 0x48, 0x00, 0x52, 0x10, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x72,
  1244  	0x72, 0x61, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x62, 0x79, 0x74, 0x65,
  1245  	0x73, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52,
  1246  	0x0a, 0x62, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x73,
  1247  	0x74, 0x72, 0x75, 0x63, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28,
  1248  	0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  1249  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53,
  1250  	0x74, 0x72, 0x75, 0x63, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74,
  1251  	0x72, 0x75, 0x63, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4d, 0x0a, 0x08, 0x6d, 0x65, 0x74,
  1252  	0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f,
  1253  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1254  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1255  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08,
  1256  	0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4b, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61,
  1257  	0x64, 0x61, 0x74, 0x61, 0x12, 0x3f, 0x0a, 0x0d, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65,
  1258  	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
  1259  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
  1260  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
  1261  	0x65, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x53,
  1262  	0x0a, 0x0b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x44, 0x0a,
  1263  	0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
  1264  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  1265  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63,
  1266  	0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c,
  1267  	0x75, 0x65, 0x73, 0x22, 0x66, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x46, 0x69, 0x65,
  1268  	0x6c, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
  1269  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x05, 0x76,
  1270  	0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f,
  1271  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1272  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56,
  1273  	0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x54, 0x0a, 0x10, 0x46,
  1274  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12,
  1275  	0x40, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
  1276  	0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  1277  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61,
  1278  	0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65,
  1279  	0x73, 0x32, 0xfd, 0x06, 0x0a, 0x20, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x74, 0x6f,
  1280  	0x72, 0x65, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x53,
  1281  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xf3, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x61, 0x64, 0x46,
  1282  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x34, 0x2e, 0x67,
  1283  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  1284  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65,
  1285  	0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
  1286  	0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  1287  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e,
  1288  	0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65,
  1289  	0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x71, 0xda, 0x41, 0x0b, 0x65, 0x6e,
  1290  	0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x5d, 0x3a,
  1291  	0x01, 0x2a, 0x22, 0x58, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f,
  1292  	0x74, 0x79, 0x70, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
  1293  	0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x66, 0x65, 0x61, 0x74,
  1294  	0x75, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69,
  1295  	0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x61, 0x64, 0x46,
  1296  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x90, 0x02, 0x0a,
  1297  	0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65,
  1298  	0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x3d, 0x2e, 0x67, 0x6f,
  1299  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1300  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
  1301  	0x6e, 0x67, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c,
  1302  	0x75, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f,
  1303  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1304  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x46, 0x65, 0x61, 0x74,
  1305  	0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
  1306  	0x65, 0x22, 0x7a, 0xda, 0x41, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70,
  1307  	0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x66, 0x3a, 0x01, 0x2a, 0x22, 0x61, 0x2f, 0x76, 0x31, 0x2f,
  1308  	0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x70, 0x72, 0x6f,
  1309  	0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1310  	0x73, 0x2f, 0x2a, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
  1311  	0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f,
  1312  	0x2a, 0x7d, 0x3a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x61, 0x64,
  1313  	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x30, 0x01, 0x12,
  1314  	0x80, 0x02, 0x0a, 0x12, 0x57, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1315  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  1316  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  1317  	0x2e, 0x76, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
  1318  	0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e,
  1319  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  1320  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65,
  1321  	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x65, 0x73,
  1322  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7b, 0xda, 0x41, 0x14, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
  1323  	0x5f, 0x74, 0x79, 0x70, 0x65, 0x2c, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x82, 0xd3,
  1324  	0xe4, 0x93, 0x02, 0x5e, 0x3a, 0x01, 0x2a, 0x22, 0x59, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x65, 0x6e,
  1325  	0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  1326  	0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
  1327  	0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x2f, 0x2a,
  1328  	0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
  1329  	0x77, 0x72, 0x69, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x61, 0x6c, 0x75,
  1330  	0x65, 0x73, 0x1a, 0x4d, 0xca, 0x41, 0x19, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1331  	0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
  1332  	0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67,
  1333  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75,
  1334  	0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1335  	0x6d, 0x42, 0xdc, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1336  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1337  	0x6d, 0x2e, 0x76, 0x31, 0x42, 0x1e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x74, 0x6f,
  1338  	0x72, 0x65, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50,
  1339  	0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f,
  1340  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x69, 0x70, 0x6c,
  1341  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x61, 0x69, 0x70,
  1342  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1343  	0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  1344  	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  1345  	0x2e, 0x56, 0x31, 0xca, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f,
  1346  	0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31,
  1347  	0xea, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64,
  1348  	0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 0x56, 0x31,
  1349  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1350  }
  1351  
  1352  var (
  1353  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescOnce sync.Once
  1354  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescData = file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDesc
  1355  )
  1356  
  1357  func file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescGZIP() []byte {
  1358  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescOnce.Do(func() {
  1359  		file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescData)
  1360  	})
  1361  	return file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDescData
  1362  }
  1363  
  1364  var file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
  1365  var file_google_cloud_aiplatform_v1_featurestore_online_service_proto_goTypes = []any{
  1366  	(*WriteFeatureValuesRequest)(nil),                   // 0: google.cloud.aiplatform.v1.WriteFeatureValuesRequest
  1367  	(*WriteFeatureValuesPayload)(nil),                   // 1: google.cloud.aiplatform.v1.WriteFeatureValuesPayload
  1368  	(*WriteFeatureValuesResponse)(nil),                  // 2: google.cloud.aiplatform.v1.WriteFeatureValuesResponse
  1369  	(*ReadFeatureValuesRequest)(nil),                    // 3: google.cloud.aiplatform.v1.ReadFeatureValuesRequest
  1370  	(*ReadFeatureValuesResponse)(nil),                   // 4: google.cloud.aiplatform.v1.ReadFeatureValuesResponse
  1371  	(*StreamingReadFeatureValuesRequest)(nil),           // 5: google.cloud.aiplatform.v1.StreamingReadFeatureValuesRequest
  1372  	(*FeatureValue)(nil),                                // 6: google.cloud.aiplatform.v1.FeatureValue
  1373  	(*StructValue)(nil),                                 // 7: google.cloud.aiplatform.v1.StructValue
  1374  	(*StructFieldValue)(nil),                            // 8: google.cloud.aiplatform.v1.StructFieldValue
  1375  	(*FeatureValueList)(nil),                            // 9: google.cloud.aiplatform.v1.FeatureValueList
  1376  	nil,                                                 // 10: google.cloud.aiplatform.v1.WriteFeatureValuesPayload.FeatureValuesEntry
  1377  	(*ReadFeatureValuesResponse_FeatureDescriptor)(nil), // 11: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.FeatureDescriptor
  1378  	(*ReadFeatureValuesResponse_Header)(nil),            // 12: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.Header
  1379  	(*ReadFeatureValuesResponse_EntityView)(nil),        // 13: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView
  1380  	(*ReadFeatureValuesResponse_EntityView_Data)(nil),   // 14: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView.Data
  1381  	(*FeatureValue_Metadata)(nil),                       // 15: google.cloud.aiplatform.v1.FeatureValue.Metadata
  1382  	(*FeatureSelector)(nil),                             // 16: google.cloud.aiplatform.v1.FeatureSelector
  1383  	(*BoolArray)(nil),                                   // 17: google.cloud.aiplatform.v1.BoolArray
  1384  	(*DoubleArray)(nil),                                 // 18: google.cloud.aiplatform.v1.DoubleArray
  1385  	(*Int64Array)(nil),                                  // 19: google.cloud.aiplatform.v1.Int64Array
  1386  	(*StringArray)(nil),                                 // 20: google.cloud.aiplatform.v1.StringArray
  1387  	(*timestamppb.Timestamp)(nil),                       // 21: google.protobuf.Timestamp
  1388  }
  1389  var file_google_cloud_aiplatform_v1_featurestore_online_service_proto_depIdxs = []int32{
  1390  	1,  // 0: google.cloud.aiplatform.v1.WriteFeatureValuesRequest.payloads:type_name -> google.cloud.aiplatform.v1.WriteFeatureValuesPayload
  1391  	10, // 1: google.cloud.aiplatform.v1.WriteFeatureValuesPayload.feature_values:type_name -> google.cloud.aiplatform.v1.WriteFeatureValuesPayload.FeatureValuesEntry
  1392  	16, // 2: google.cloud.aiplatform.v1.ReadFeatureValuesRequest.feature_selector:type_name -> google.cloud.aiplatform.v1.FeatureSelector
  1393  	12, // 3: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.header:type_name -> google.cloud.aiplatform.v1.ReadFeatureValuesResponse.Header
  1394  	13, // 4: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.entity_view:type_name -> google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView
  1395  	16, // 5: google.cloud.aiplatform.v1.StreamingReadFeatureValuesRequest.feature_selector:type_name -> google.cloud.aiplatform.v1.FeatureSelector
  1396  	17, // 6: google.cloud.aiplatform.v1.FeatureValue.bool_array_value:type_name -> google.cloud.aiplatform.v1.BoolArray
  1397  	18, // 7: google.cloud.aiplatform.v1.FeatureValue.double_array_value:type_name -> google.cloud.aiplatform.v1.DoubleArray
  1398  	19, // 8: google.cloud.aiplatform.v1.FeatureValue.int64_array_value:type_name -> google.cloud.aiplatform.v1.Int64Array
  1399  	20, // 9: google.cloud.aiplatform.v1.FeatureValue.string_array_value:type_name -> google.cloud.aiplatform.v1.StringArray
  1400  	7,  // 10: google.cloud.aiplatform.v1.FeatureValue.struct_value:type_name -> google.cloud.aiplatform.v1.StructValue
  1401  	15, // 11: google.cloud.aiplatform.v1.FeatureValue.metadata:type_name -> google.cloud.aiplatform.v1.FeatureValue.Metadata
  1402  	8,  // 12: google.cloud.aiplatform.v1.StructValue.values:type_name -> google.cloud.aiplatform.v1.StructFieldValue
  1403  	6,  // 13: google.cloud.aiplatform.v1.StructFieldValue.value:type_name -> google.cloud.aiplatform.v1.FeatureValue
  1404  	6,  // 14: google.cloud.aiplatform.v1.FeatureValueList.values:type_name -> google.cloud.aiplatform.v1.FeatureValue
  1405  	6,  // 15: google.cloud.aiplatform.v1.WriteFeatureValuesPayload.FeatureValuesEntry.value:type_name -> google.cloud.aiplatform.v1.FeatureValue
  1406  	11, // 16: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.Header.feature_descriptors:type_name -> google.cloud.aiplatform.v1.ReadFeatureValuesResponse.FeatureDescriptor
  1407  	14, // 17: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView.data:type_name -> google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView.Data
  1408  	6,  // 18: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView.Data.value:type_name -> google.cloud.aiplatform.v1.FeatureValue
  1409  	9,  // 19: google.cloud.aiplatform.v1.ReadFeatureValuesResponse.EntityView.Data.values:type_name -> google.cloud.aiplatform.v1.FeatureValueList
  1410  	21, // 20: google.cloud.aiplatform.v1.FeatureValue.Metadata.generate_time:type_name -> google.protobuf.Timestamp
  1411  	3,  // 21: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues:input_type -> google.cloud.aiplatform.v1.ReadFeatureValuesRequest
  1412  	5,  // 22: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues:input_type -> google.cloud.aiplatform.v1.StreamingReadFeatureValuesRequest
  1413  	0,  // 23: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.WriteFeatureValues:input_type -> google.cloud.aiplatform.v1.WriteFeatureValuesRequest
  1414  	4,  // 24: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues:output_type -> google.cloud.aiplatform.v1.ReadFeatureValuesResponse
  1415  	4,  // 25: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues:output_type -> google.cloud.aiplatform.v1.ReadFeatureValuesResponse
  1416  	2,  // 26: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.WriteFeatureValues:output_type -> google.cloud.aiplatform.v1.WriteFeatureValuesResponse
  1417  	24, // [24:27] is the sub-list for method output_type
  1418  	21, // [21:24] is the sub-list for method input_type
  1419  	21, // [21:21] is the sub-list for extension type_name
  1420  	21, // [21:21] is the sub-list for extension extendee
  1421  	0,  // [0:21] is the sub-list for field type_name
  1422  }
  1423  
  1424  func init() { file_google_cloud_aiplatform_v1_featurestore_online_service_proto_init() }
  1425  func file_google_cloud_aiplatform_v1_featurestore_online_service_proto_init() {
  1426  	if File_google_cloud_aiplatform_v1_featurestore_online_service_proto != nil {
  1427  		return
  1428  	}
  1429  	file_google_cloud_aiplatform_v1_feature_selector_proto_init()
  1430  	file_google_cloud_aiplatform_v1_types_proto_init()
  1431  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[6].OneofWrappers = []any{
  1432  		(*FeatureValue_BoolValue)(nil),
  1433  		(*FeatureValue_DoubleValue)(nil),
  1434  		(*FeatureValue_Int64Value)(nil),
  1435  		(*FeatureValue_StringValue)(nil),
  1436  		(*FeatureValue_BoolArrayValue)(nil),
  1437  		(*FeatureValue_DoubleArrayValue)(nil),
  1438  		(*FeatureValue_Int64ArrayValue)(nil),
  1439  		(*FeatureValue_StringArrayValue)(nil),
  1440  		(*FeatureValue_BytesValue)(nil),
  1441  		(*FeatureValue_StructValue)(nil),
  1442  	}
  1443  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes[14].OneofWrappers = []any{
  1444  		(*ReadFeatureValuesResponse_EntityView_Data_Value)(nil),
  1445  		(*ReadFeatureValuesResponse_EntityView_Data_Values)(nil),
  1446  	}
  1447  	type x struct{}
  1448  	out := protoimpl.TypeBuilder{
  1449  		File: protoimpl.DescBuilder{
  1450  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1451  			RawDescriptor: file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDesc,
  1452  			NumEnums:      0,
  1453  			NumMessages:   16,
  1454  			NumExtensions: 0,
  1455  			NumServices:   1,
  1456  		},
  1457  		GoTypes:           file_google_cloud_aiplatform_v1_featurestore_online_service_proto_goTypes,
  1458  		DependencyIndexes: file_google_cloud_aiplatform_v1_featurestore_online_service_proto_depIdxs,
  1459  		MessageInfos:      file_google_cloud_aiplatform_v1_featurestore_online_service_proto_msgTypes,
  1460  	}.Build()
  1461  	File_google_cloud_aiplatform_v1_featurestore_online_service_proto = out.File
  1462  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_rawDesc = nil
  1463  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_goTypes = nil
  1464  	file_google_cloud_aiplatform_v1_featurestore_online_service_proto_depIdxs = nil
  1465  }