@googlemaps/routing 1.0.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3727,6 +3727,38 @@
3727
3727
  return FileDescriptorSet;
3728
3728
  })();
3729
3729
 
3730
+ /**
3731
+ * Edition enum.
3732
+ * @name google.protobuf.Edition
3733
+ * @enum {number}
3734
+ * @property {number} EDITION_UNKNOWN=0 EDITION_UNKNOWN value
3735
+ * @property {number} EDITION_PROTO2=998 EDITION_PROTO2 value
3736
+ * @property {number} EDITION_PROTO3=999 EDITION_PROTO3 value
3737
+ * @property {number} EDITION_2023=1000 EDITION_2023 value
3738
+ * @property {number} EDITION_2024=1001 EDITION_2024 value
3739
+ * @property {number} EDITION_1_TEST_ONLY=1 EDITION_1_TEST_ONLY value
3740
+ * @property {number} EDITION_2_TEST_ONLY=2 EDITION_2_TEST_ONLY value
3741
+ * @property {number} EDITION_99997_TEST_ONLY=99997 EDITION_99997_TEST_ONLY value
3742
+ * @property {number} EDITION_99998_TEST_ONLY=99998 EDITION_99998_TEST_ONLY value
3743
+ * @property {number} EDITION_99999_TEST_ONLY=99999 EDITION_99999_TEST_ONLY value
3744
+ * @property {number} EDITION_MAX=2147483647 EDITION_MAX value
3745
+ */
3746
+ protobuf.Edition = (function() {
3747
+ var valuesById = {}, values = Object.create(valuesById);
3748
+ values[valuesById[0] = "EDITION_UNKNOWN"] = 0;
3749
+ values[valuesById[998] = "EDITION_PROTO2"] = 998;
3750
+ values[valuesById[999] = "EDITION_PROTO3"] = 999;
3751
+ values[valuesById[1000] = "EDITION_2023"] = 1000;
3752
+ values[valuesById[1001] = "EDITION_2024"] = 1001;
3753
+ values[valuesById[1] = "EDITION_1_TEST_ONLY"] = 1;
3754
+ values[valuesById[2] = "EDITION_2_TEST_ONLY"] = 2;
3755
+ values[valuesById[99997] = "EDITION_99997_TEST_ONLY"] = 99997;
3756
+ values[valuesById[99998] = "EDITION_99998_TEST_ONLY"] = 99998;
3757
+ values[valuesById[99999] = "EDITION_99999_TEST_ONLY"] = 99999;
3758
+ values[valuesById[2147483647] = "EDITION_MAX"] = 2147483647;
3759
+ return values;
3760
+ })();
3761
+
3730
3762
  protobuf.FileDescriptorProto = (function() {
3731
3763
 
3732
3764
  /**
@@ -3745,7 +3777,7 @@
3745
3777
  * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options
3746
3778
  * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo
3747
3779
  * @property {string|null} [syntax] FileDescriptorProto syntax
3748
- * @property {string|null} [edition] FileDescriptorProto edition
3780
+ * @property {google.protobuf.Edition|null} [edition] FileDescriptorProto edition
3749
3781
  */
3750
3782
 
3751
3783
  /**
@@ -3868,11 +3900,11 @@
3868
3900
 
3869
3901
  /**
3870
3902
  * FileDescriptorProto edition.
3871
- * @member {string} edition
3903
+ * @member {google.protobuf.Edition} edition
3872
3904
  * @memberof google.protobuf.FileDescriptorProto
3873
3905
  * @instance
3874
3906
  */
3875
- FileDescriptorProto.prototype.edition = "";
3907
+ FileDescriptorProto.prototype.edition = 0;
3876
3908
 
3877
3909
  /**
3878
3910
  * Creates a new FileDescriptorProto instance using the specified properties.
@@ -3930,7 +3962,7 @@
3930
3962
  if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax"))
3931
3963
  writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax);
3932
3964
  if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
3933
- writer.uint32(/* id 13, wireType 2 =*/106).string(message.edition);
3965
+ writer.uint32(/* id 14, wireType 0 =*/112).int32(message.edition);
3934
3966
  return writer;
3935
3967
  };
3936
3968
 
@@ -4037,8 +4069,8 @@
4037
4069
  message.syntax = reader.string();
4038
4070
  break;
4039
4071
  }
4040
- case 13: {
4041
- message.edition = reader.string();
4072
+ case 14: {
4073
+ message.edition = reader.int32();
4042
4074
  break;
4043
4075
  }
4044
4076
  default:
@@ -4153,8 +4185,22 @@
4153
4185
  if (!$util.isString(message.syntax))
4154
4186
  return "syntax: string expected";
4155
4187
  if (message.edition != null && message.hasOwnProperty("edition"))
4156
- if (!$util.isString(message.edition))
4157
- return "edition: string expected";
4188
+ switch (message.edition) {
4189
+ default:
4190
+ return "edition: enum value expected";
4191
+ case 0:
4192
+ case 998:
4193
+ case 999:
4194
+ case 1000:
4195
+ case 1001:
4196
+ case 1:
4197
+ case 2:
4198
+ case 99997:
4199
+ case 99998:
4200
+ case 99999:
4201
+ case 2147483647:
4202
+ break;
4203
+ }
4158
4204
  return null;
4159
4205
  };
4160
4206
 
@@ -4247,8 +4293,58 @@
4247
4293
  }
4248
4294
  if (object.syntax != null)
4249
4295
  message.syntax = String(object.syntax);
4250
- if (object.edition != null)
4251
- message.edition = String(object.edition);
4296
+ switch (object.edition) {
4297
+ default:
4298
+ if (typeof object.edition === "number") {
4299
+ message.edition = object.edition;
4300
+ break;
4301
+ }
4302
+ break;
4303
+ case "EDITION_UNKNOWN":
4304
+ case 0:
4305
+ message.edition = 0;
4306
+ break;
4307
+ case "EDITION_PROTO2":
4308
+ case 998:
4309
+ message.edition = 998;
4310
+ break;
4311
+ case "EDITION_PROTO3":
4312
+ case 999:
4313
+ message.edition = 999;
4314
+ break;
4315
+ case "EDITION_2023":
4316
+ case 1000:
4317
+ message.edition = 1000;
4318
+ break;
4319
+ case "EDITION_2024":
4320
+ case 1001:
4321
+ message.edition = 1001;
4322
+ break;
4323
+ case "EDITION_1_TEST_ONLY":
4324
+ case 1:
4325
+ message.edition = 1;
4326
+ break;
4327
+ case "EDITION_2_TEST_ONLY":
4328
+ case 2:
4329
+ message.edition = 2;
4330
+ break;
4331
+ case "EDITION_99997_TEST_ONLY":
4332
+ case 99997:
4333
+ message.edition = 99997;
4334
+ break;
4335
+ case "EDITION_99998_TEST_ONLY":
4336
+ case 99998:
4337
+ message.edition = 99998;
4338
+ break;
4339
+ case "EDITION_99999_TEST_ONLY":
4340
+ case 99999:
4341
+ message.edition = 99999;
4342
+ break;
4343
+ case "EDITION_MAX":
4344
+ case 2147483647:
4345
+ message.edition = 2147483647;
4346
+ break;
4347
+ }
4252
4348
  return message;
4253
4349
  };
4254
4350
 
@@ -4280,7 +4376,7 @@
4280
4376
  object.options = null;
4281
4377
  object.sourceCodeInfo = null;
4282
4378
  object.syntax = "";
4283
- object.edition = "";
4379
+ object.edition = options.enums === String ? "EDITION_UNKNOWN" : 0;
4284
4380
  }
4285
4381
  if (message.name != null && message.hasOwnProperty("name"))
4286
4382
  object.name = message.name;
@@ -4328,7 +4424,7 @@
4328
4424
  if (message.syntax != null && message.hasOwnProperty("syntax"))
4329
4425
  object.syntax = message.syntax;
4330
4426
  if (message.edition != null && message.hasOwnProperty("edition"))
4331
- object.edition = message.edition;
4427
+ object.edition = options.enums === String ? $root.google.protobuf.Edition[message.edition] === undefined ? message.edition : $root.google.protobuf.Edition[message.edition] : message.edition;
4332
4428
  return object;
4333
4429
  };
4334
4430
 
@@ -5431,6 +5527,9 @@
5431
5527
  * @memberof google.protobuf
5432
5528
  * @interface IExtensionRangeOptions
5433
5529
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption
5530
+ * @property {Array.<google.protobuf.ExtensionRangeOptions.IDeclaration>|null} [declaration] ExtensionRangeOptions declaration
5531
+ * @property {google.protobuf.IFeatureSet|null} [features] ExtensionRangeOptions features
5532
+ * @property {google.protobuf.ExtensionRangeOptions.VerificationState|null} [verification] ExtensionRangeOptions verification
5434
5533
  */
5435
5534
 
5436
5535
  /**
@@ -5443,6 +5542,7 @@
5443
5542
  */
5444
5543
  function ExtensionRangeOptions(properties) {
5445
5544
  this.uninterpretedOption = [];
5545
+ this.declaration = [];
5446
5546
  if (properties)
5447
5547
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5448
5548
  if (properties[keys[i]] != null)
@@ -5457,6 +5557,30 @@
5457
5557
  */
5458
5558
  ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray;
5459
5559
 
5560
+ /**
5561
+ * ExtensionRangeOptions declaration.
5562
+ * @member {Array.<google.protobuf.ExtensionRangeOptions.IDeclaration>} declaration
5563
+ * @memberof google.protobuf.ExtensionRangeOptions
5564
+ * @instance
5565
+ */
5566
+ ExtensionRangeOptions.prototype.declaration = $util.emptyArray;
5567
+
5568
+ /**
5569
+ * ExtensionRangeOptions features.
5570
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
5571
+ * @memberof google.protobuf.ExtensionRangeOptions
5572
+ * @instance
5573
+ */
5574
+ ExtensionRangeOptions.prototype.features = null;
5575
+
5576
+ /**
5577
+ * ExtensionRangeOptions verification.
5578
+ * @member {google.protobuf.ExtensionRangeOptions.VerificationState} verification
5579
+ * @memberof google.protobuf.ExtensionRangeOptions
5580
+ * @instance
5581
+ */
5582
+ ExtensionRangeOptions.prototype.verification = 1;
5583
+
5460
5584
  /**
5461
5585
  * Creates a new ExtensionRangeOptions instance using the specified properties.
5462
5586
  * @function create
@@ -5481,6 +5605,13 @@
5481
5605
  ExtensionRangeOptions.encode = function encode(message, writer) {
5482
5606
  if (!writer)
5483
5607
  writer = $Writer.create();
5608
+ if (message.declaration != null && message.declaration.length)
5609
+ for (var i = 0; i < message.declaration.length; ++i)
5610
+ $root.google.protobuf.ExtensionRangeOptions.Declaration.encode(message.declaration[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
5611
+ if (message.verification != null && Object.hasOwnProperty.call(message, "verification"))
5612
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.verification);
5613
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
5614
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 50, wireType 2 =*/402).fork()).ldelim();
5484
5615
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
5485
5616
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
5486
5617
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -5524,6 +5655,20 @@
5524
5655
  message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
5525
5656
  break;
5526
5657
  }
5658
+ case 2: {
5659
+ if (!(message.declaration && message.declaration.length))
5660
+ message.declaration = [];
5661
+ message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32()));
5662
+ break;
5663
+ }
5664
+ case 50: {
5665
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
5666
+ break;
5667
+ }
5668
+ case 3: {
5669
+ message.verification = reader.int32();
5670
+ break;
5671
+ }
5527
5672
  default:
5528
5673
  reader.skipType(tag & 7);
5529
5674
  break;
@@ -5568,6 +5713,28 @@
5568
5713
  return "uninterpretedOption." + error;
5569
5714
  }
5570
5715
  }
5716
+ if (message.declaration != null && message.hasOwnProperty("declaration")) {
5717
+ if (!Array.isArray(message.declaration))
5718
+ return "declaration: array expected";
5719
+ for (var i = 0; i < message.declaration.length; ++i) {
5720
+ var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]);
5721
+ if (error)
5722
+ return "declaration." + error;
5723
+ }
5724
+ }
5725
+ if (message.features != null && message.hasOwnProperty("features")) {
5726
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
5727
+ if (error)
5728
+ return "features." + error;
5729
+ }
5730
+ if (message.verification != null && message.hasOwnProperty("verification"))
5731
+ switch (message.verification) {
5732
+ default:
5733
+ return "verification: enum value expected";
5734
+ case 0:
5735
+ case 1:
5736
+ break;
5737
+ }
5571
5738
  return null;
5572
5739
  };
5573
5740
 
@@ -5593,6 +5760,37 @@
5593
5760
  message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
5594
5761
  }
5595
5762
  }
5763
+ if (object.declaration) {
5764
+ if (!Array.isArray(object.declaration))
5765
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: array expected");
5766
+ message.declaration = [];
5767
+ for (var i = 0; i < object.declaration.length; ++i) {
5768
+ if (typeof object.declaration[i] !== "object")
5769
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected");
5770
+ message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]);
5771
+ }
5772
+ }
5773
+ if (object.features != null) {
5774
+ if (typeof object.features !== "object")
5775
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected");
5776
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
5777
+ }
5778
+ switch (object.verification) {
5779
+ case "DECLARATION":
5780
+ case 0:
5781
+ message.verification = 0;
5782
+ break;
5783
+ default:
5784
+ if (typeof object.verification === "number") {
5785
+ message.verification = object.verification;
5786
+ break;
5787
+ }
5788
+ break;
5789
+ case "UNVERIFIED":
5790
+ case 1:
5791
+ message.verification = 1;
5792
+ break;
5793
+ }
5596
5794
  return message;
5597
5795
  };
5598
5796
 
@@ -5609,8 +5807,23 @@
5609
5807
  if (!options)
5610
5808
  options = {};
5611
5809
  var object = {};
5612
- if (options.arrays || options.defaults)
5810
+ if (options.arrays || options.defaults) {
5811
+ object.declaration = [];
5613
5812
  object.uninterpretedOption = [];
5813
+ }
5814
+ if (options.defaults) {
5815
+ object.verification = options.enums === String ? "UNVERIFIED" : 1;
5816
+ object.features = null;
5817
+ }
5818
+ if (message.declaration && message.declaration.length) {
5819
+ object.declaration = [];
5820
+ for (var j = 0; j < message.declaration.length; ++j)
5821
+ object.declaration[j] = $root.google.protobuf.ExtensionRangeOptions.Declaration.toObject(message.declaration[j], options);
5822
+ }
5823
+ if (message.verification != null && message.hasOwnProperty("verification"))
5824
+ object.verification = options.enums === String ? $root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification] === undefined ? message.verification : $root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification] : message.verification;
5825
+ if (message.features != null && message.hasOwnProperty("features"))
5826
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
5614
5827
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
5615
5828
  object.uninterpretedOption = [];
5616
5829
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -5645,6 +5858,316 @@
5645
5858
  return typeUrlPrefix + "/google.protobuf.ExtensionRangeOptions";
5646
5859
  };
5647
5860
 
5861
+ ExtensionRangeOptions.Declaration = (function() {
5862
+
5863
+ /**
5864
+ * Properties of a Declaration.
5865
+ * @memberof google.protobuf.ExtensionRangeOptions
5866
+ * @interface IDeclaration
5867
+ * @property {number|null} [number] Declaration number
5868
+ * @property {string|null} [fullName] Declaration fullName
5869
+ * @property {string|null} [type] Declaration type
5870
+ * @property {boolean|null} [reserved] Declaration reserved
5871
+ * @property {boolean|null} [repeated] Declaration repeated
5872
+ */
5873
+
5874
+ /**
5875
+ * Constructs a new Declaration.
5876
+ * @memberof google.protobuf.ExtensionRangeOptions
5877
+ * @classdesc Represents a Declaration.
5878
+ * @implements IDeclaration
5879
+ * @constructor
5880
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration=} [properties] Properties to set
5881
+ */
5882
+ function Declaration(properties) {
5883
+ if (properties)
5884
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5885
+ if (properties[keys[i]] != null)
5886
+ this[keys[i]] = properties[keys[i]];
5887
+ }
5888
+
5889
+ /**
5890
+ * Declaration number.
5891
+ * @member {number} number
5892
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5893
+ * @instance
5894
+ */
5895
+ Declaration.prototype.number = 0;
5896
+
5897
+ /**
5898
+ * Declaration fullName.
5899
+ * @member {string} fullName
5900
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5901
+ * @instance
5902
+ */
5903
+ Declaration.prototype.fullName = "";
5904
+
5905
+ /**
5906
+ * Declaration type.
5907
+ * @member {string} type
5908
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5909
+ * @instance
5910
+ */
5911
+ Declaration.prototype.type = "";
5912
+
5913
+ /**
5914
+ * Declaration reserved.
5915
+ * @member {boolean} reserved
5916
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5917
+ * @instance
5918
+ */
5919
+ Declaration.prototype.reserved = false;
5920
+
5921
+ /**
5922
+ * Declaration repeated.
5923
+ * @member {boolean} repeated
5924
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5925
+ * @instance
5926
+ */
5927
+ Declaration.prototype.repeated = false;
5928
+
5929
+ /**
5930
+ * Creates a new Declaration instance using the specified properties.
5931
+ * @function create
5932
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5933
+ * @static
5934
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration=} [properties] Properties to set
5935
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration instance
5936
+ */
5937
+ Declaration.create = function create(properties) {
5938
+ return new Declaration(properties);
5939
+ };
5940
+
5941
+ /**
5942
+ * Encodes the specified Declaration message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.Declaration.verify|verify} messages.
5943
+ * @function encode
5944
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5945
+ * @static
5946
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration} message Declaration message or plain object to encode
5947
+ * @param {$protobuf.Writer} [writer] Writer to encode to
5948
+ * @returns {$protobuf.Writer} Writer
5949
+ */
5950
+ Declaration.encode = function encode(message, writer) {
5951
+ if (!writer)
5952
+ writer = $Writer.create();
5953
+ if (message.number != null && Object.hasOwnProperty.call(message, "number"))
5954
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.number);
5955
+ if (message.fullName != null && Object.hasOwnProperty.call(message, "fullName"))
5956
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.fullName);
5957
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
5958
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.type);
5959
+ if (message.reserved != null && Object.hasOwnProperty.call(message, "reserved"))
5960
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.reserved);
5961
+ if (message.repeated != null && Object.hasOwnProperty.call(message, "repeated"))
5962
+ writer.uint32(/* id 6, wireType 0 =*/48).bool(message.repeated);
5963
+ return writer;
5964
+ };
5965
+
5966
+ /**
5967
+ * Encodes the specified Declaration message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.Declaration.verify|verify} messages.
5968
+ * @function encodeDelimited
5969
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5970
+ * @static
5971
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration} message Declaration message or plain object to encode
5972
+ * @param {$protobuf.Writer} [writer] Writer to encode to
5973
+ * @returns {$protobuf.Writer} Writer
5974
+ */
5975
+ Declaration.encodeDelimited = function encodeDelimited(message, writer) {
5976
+ return this.encode(message, writer).ldelim();
5977
+ };
5978
+
5979
+ /**
5980
+ * Decodes a Declaration message from the specified reader or buffer.
5981
+ * @function decode
5982
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
5983
+ * @static
5984
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5985
+ * @param {number} [length] Message length if known beforehand
5986
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration
5987
+ * @throws {Error} If the payload is not a reader or valid buffer
5988
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
5989
+ */
5990
+ Declaration.decode = function decode(reader, length) {
5991
+ if (!(reader instanceof $Reader))
5992
+ reader = $Reader.create(reader);
5993
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration();
5994
+ while (reader.pos < end) {
5995
+ var tag = reader.uint32();
5996
+ switch (tag >>> 3) {
5997
+ case 1: {
5998
+ message.number = reader.int32();
5999
+ break;
6000
+ }
6001
+ case 2: {
6002
+ message.fullName = reader.string();
6003
+ break;
6004
+ }
6005
+ case 3: {
6006
+ message.type = reader.string();
6007
+ break;
6008
+ }
6009
+ case 5: {
6010
+ message.reserved = reader.bool();
6011
+ break;
6012
+ }
6013
+ case 6: {
6014
+ message.repeated = reader.bool();
6015
+ break;
6016
+ }
6017
+ default:
6018
+ reader.skipType(tag & 7);
6019
+ break;
6020
+ }
6021
+ }
6022
+ return message;
6023
+ };
6024
+
6025
+ /**
6026
+ * Decodes a Declaration message from the specified reader or buffer, length delimited.
6027
+ * @function decodeDelimited
6028
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
6029
+ * @static
6030
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6031
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration
6032
+ * @throws {Error} If the payload is not a reader or valid buffer
6033
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
6034
+ */
6035
+ Declaration.decodeDelimited = function decodeDelimited(reader) {
6036
+ if (!(reader instanceof $Reader))
6037
+ reader = new $Reader(reader);
6038
+ return this.decode(reader, reader.uint32());
6039
+ };
6040
+
6041
+ /**
6042
+ * Verifies a Declaration message.
6043
+ * @function verify
6044
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
6045
+ * @static
6046
+ * @param {Object.<string,*>} message Plain object to verify
6047
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
6048
+ */
6049
+ Declaration.verify = function verify(message) {
6050
+ if (typeof message !== "object" || message === null)
6051
+ return "object expected";
6052
+ if (message.number != null && message.hasOwnProperty("number"))
6053
+ if (!$util.isInteger(message.number))
6054
+ return "number: integer expected";
6055
+ if (message.fullName != null && message.hasOwnProperty("fullName"))
6056
+ if (!$util.isString(message.fullName))
6057
+ return "fullName: string expected";
6058
+ if (message.type != null && message.hasOwnProperty("type"))
6059
+ if (!$util.isString(message.type))
6060
+ return "type: string expected";
6061
+ if (message.reserved != null && message.hasOwnProperty("reserved"))
6062
+ if (typeof message.reserved !== "boolean")
6063
+ return "reserved: boolean expected";
6064
+ if (message.repeated != null && message.hasOwnProperty("repeated"))
6065
+ if (typeof message.repeated !== "boolean")
6066
+ return "repeated: boolean expected";
6067
+ return null;
6068
+ };
6069
+
6070
+ /**
6071
+ * Creates a Declaration message from a plain object. Also converts values to their respective internal types.
6072
+ * @function fromObject
6073
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
6074
+ * @static
6075
+ * @param {Object.<string,*>} object Plain object
6076
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration
6077
+ */
6078
+ Declaration.fromObject = function fromObject(object) {
6079
+ if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration)
6080
+ return object;
6081
+ var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration();
6082
+ if (object.number != null)
6083
+ message.number = object.number | 0;
6084
+ if (object.fullName != null)
6085
+ message.fullName = String(object.fullName);
6086
+ if (object.type != null)
6087
+ message.type = String(object.type);
6088
+ if (object.reserved != null)
6089
+ message.reserved = Boolean(object.reserved);
6090
+ if (object.repeated != null)
6091
+ message.repeated = Boolean(object.repeated);
6092
+ return message;
6093
+ };
6094
+
6095
+ /**
6096
+ * Creates a plain object from a Declaration message. Also converts values to other types if specified.
6097
+ * @function toObject
6098
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
6099
+ * @static
6100
+ * @param {google.protobuf.ExtensionRangeOptions.Declaration} message Declaration
6101
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
6102
+ * @returns {Object.<string,*>} Plain object
6103
+ */
6104
+ Declaration.toObject = function toObject(message, options) {
6105
+ if (!options)
6106
+ options = {};
6107
+ var object = {};
6108
+ if (options.defaults) {
6109
+ object.number = 0;
6110
+ object.fullName = "";
6111
+ object.type = "";
6112
+ object.reserved = false;
6113
+ object.repeated = false;
6114
+ }
6115
+ if (message.number != null && message.hasOwnProperty("number"))
6116
+ object.number = message.number;
6117
+ if (message.fullName != null && message.hasOwnProperty("fullName"))
6118
+ object.fullName = message.fullName;
6119
+ if (message.type != null && message.hasOwnProperty("type"))
6120
+ object.type = message.type;
6121
+ if (message.reserved != null && message.hasOwnProperty("reserved"))
6122
+ object.reserved = message.reserved;
6123
+ if (message.repeated != null && message.hasOwnProperty("repeated"))
6124
+ object.repeated = message.repeated;
6125
+ return object;
6126
+ };
6127
+
6128
+ /**
6129
+ * Converts this Declaration to JSON.
6130
+ * @function toJSON
6131
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
6132
+ * @instance
6133
+ * @returns {Object.<string,*>} JSON object
6134
+ */
6135
+ Declaration.prototype.toJSON = function toJSON() {
6136
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
6137
+ };
6138
+
6139
+ /**
6140
+ * Gets the default type url for Declaration
6141
+ * @function getTypeUrl
6142
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
6143
+ * @static
6144
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
6145
+ * @returns {string} The default type url
6146
+ */
6147
+ Declaration.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
6148
+ if (typeUrlPrefix === undefined) {
6149
+ typeUrlPrefix = "type.googleapis.com";
6150
+ }
6151
+ return typeUrlPrefix + "/google.protobuf.ExtensionRangeOptions.Declaration";
6152
+ };
6153
+
6154
+ return Declaration;
6155
+ })();
6156
+
6157
+ /**
6158
+ * VerificationState enum.
6159
+ * @name google.protobuf.ExtensionRangeOptions.VerificationState
6160
+ * @enum {number}
6161
+ * @property {number} DECLARATION=0 DECLARATION value
6162
+ * @property {number} UNVERIFIED=1 UNVERIFIED value
6163
+ */
6164
+ ExtensionRangeOptions.VerificationState = (function() {
6165
+ var valuesById = {}, values = Object.create(valuesById);
6166
+ values[valuesById[0] = "DECLARATION"] = 0;
6167
+ values[valuesById[1] = "UNVERIFIED"] = 1;
6168
+ return values;
6169
+ })();
6170
+
5648
6171
  return ExtensionRangeOptions;
5649
6172
  })();
5650
6173
 
@@ -5940,8 +6463,8 @@
5940
6463
  default:
5941
6464
  return "label: enum value expected";
5942
6465
  case 1:
5943
- case 2:
5944
6466
  case 3:
6467
+ case 2:
5945
6468
  break;
5946
6469
  }
5947
6470
  if (message.type != null && message.hasOwnProperty("type"))
@@ -6021,14 +6544,14 @@
6021
6544
  case 1:
6022
6545
  message.label = 1;
6023
6546
  break;
6024
- case "LABEL_REQUIRED":
6025
- case 2:
6026
- message.label = 2;
6027
- break;
6028
6547
  case "LABEL_REPEATED":
6029
6548
  case 3:
6030
6549
  message.label = 3;
6031
6550
  break;
6551
+ case "LABEL_REQUIRED":
6552
+ case 2:
6553
+ message.label = 2;
6554
+ break;
6032
6555
  }
6033
6556
  switch (object.type) {
6034
6557
  default:
@@ -6258,14 +6781,14 @@
6258
6781
  * @name google.protobuf.FieldDescriptorProto.Label
6259
6782
  * @enum {number}
6260
6783
  * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value
6261
- * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value
6262
6784
  * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value
6785
+ * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value
6263
6786
  */
6264
6787
  FieldDescriptorProto.Label = (function() {
6265
6788
  var valuesById = {}, values = Object.create(valuesById);
6266
6789
  values[valuesById[1] = "LABEL_OPTIONAL"] = 1;
6267
- values[valuesById[2] = "LABEL_REQUIRED"] = 2;
6268
6790
  values[valuesById[3] = "LABEL_REPEATED"] = 3;
6791
+ values[valuesById[2] = "LABEL_REQUIRED"] = 2;
6269
6792
  return values;
6270
6793
  })();
6271
6794
 
@@ -7964,7 +8487,6 @@
7964
8487
  * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices
7965
8488
  * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices
7966
8489
  * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices
7967
- * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices
7968
8490
  * @property {boolean|null} [deprecated] FileOptions deprecated
7969
8491
  * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas
7970
8492
  * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix
@@ -7974,6 +8496,7 @@
7974
8496
  * @property {string|null} [phpNamespace] FileOptions phpNamespace
7975
8497
  * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace
7976
8498
  * @property {string|null} [rubyPackage] FileOptions rubyPackage
8499
+ * @property {google.protobuf.IFeatureSet|null} [features] FileOptions features
7977
8500
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] FileOptions uninterpretedOption
7978
8501
  */
7979
8502
 
@@ -8073,14 +8596,6 @@
8073
8596
  */
8074
8597
  FileOptions.prototype.pyGenericServices = false;
8075
8598
 
8076
- /**
8077
- * FileOptions phpGenericServices.
8078
- * @member {boolean} phpGenericServices
8079
- * @memberof google.protobuf.FileOptions
8080
- * @instance
8081
- */
8082
- FileOptions.prototype.phpGenericServices = false;
8083
-
8084
8599
  /**
8085
8600
  * FileOptions deprecated.
8086
8601
  * @member {boolean} deprecated
@@ -8153,6 +8668,14 @@
8153
8668
  */
8154
8669
  FileOptions.prototype.rubyPackage = "";
8155
8670
 
8671
+ /**
8672
+ * FileOptions features.
8673
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
8674
+ * @memberof google.protobuf.FileOptions
8675
+ * @instance
8676
+ */
8677
+ FileOptions.prototype.features = null;
8678
+
8156
8679
  /**
8157
8680
  * FileOptions uninterpretedOption.
8158
8681
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -8219,12 +8742,12 @@
8219
8742
  writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix);
8220
8743
  if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace"))
8221
8744
  writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace);
8222
- if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices"))
8223
- writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices);
8224
8745
  if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace"))
8225
8746
  writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace);
8226
8747
  if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage"))
8227
8748
  writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage);
8749
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
8750
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 50, wireType 2 =*/402).fork()).ldelim();
8228
8751
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
8229
8752
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
8230
8753
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -8302,10 +8825,6 @@
8302
8825
  message.pyGenericServices = reader.bool();
8303
8826
  break;
8304
8827
  }
8305
- case 42: {
8306
- message.phpGenericServices = reader.bool();
8307
- break;
8308
- }
8309
8828
  case 23: {
8310
8829
  message.deprecated = reader.bool();
8311
8830
  break;
@@ -8342,6 +8861,10 @@
8342
8861
  message.rubyPackage = reader.string();
8343
8862
  break;
8344
8863
  }
8864
+ case 50: {
8865
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
8866
+ break;
8867
+ }
8345
8868
  case 999: {
8346
8869
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
8347
8870
  message.uninterpretedOption = [];
@@ -8419,9 +8942,6 @@
8419
8942
  if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices"))
8420
8943
  if (typeof message.pyGenericServices !== "boolean")
8421
8944
  return "pyGenericServices: boolean expected";
8422
- if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices"))
8423
- if (typeof message.phpGenericServices !== "boolean")
8424
- return "phpGenericServices: boolean expected";
8425
8945
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
8426
8946
  if (typeof message.deprecated !== "boolean")
8427
8947
  return "deprecated: boolean expected";
@@ -8449,6 +8969,11 @@
8449
8969
  if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage"))
8450
8970
  if (!$util.isString(message.rubyPackage))
8451
8971
  return "rubyPackage: string expected";
8972
+ if (message.features != null && message.hasOwnProperty("features")) {
8973
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
8974
+ if (error)
8975
+ return "features." + error;
8976
+ }
8452
8977
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
8453
8978
  if (!Array.isArray(message.uninterpretedOption))
8454
8979
  return "uninterpretedOption: array expected";
@@ -8511,8 +9036,6 @@
8511
9036
  message.javaGenericServices = Boolean(object.javaGenericServices);
8512
9037
  if (object.pyGenericServices != null)
8513
9038
  message.pyGenericServices = Boolean(object.pyGenericServices);
8514
- if (object.phpGenericServices != null)
8515
- message.phpGenericServices = Boolean(object.phpGenericServices);
8516
9039
  if (object.deprecated != null)
8517
9040
  message.deprecated = Boolean(object.deprecated);
8518
9041
  if (object.ccEnableArenas != null)
@@ -8531,6 +9054,11 @@
8531
9054
  message.phpMetadataNamespace = String(object.phpMetadataNamespace);
8532
9055
  if (object.rubyPackage != null)
8533
9056
  message.rubyPackage = String(object.rubyPackage);
9057
+ if (object.features != null) {
9058
+ if (typeof object.features !== "object")
9059
+ throw TypeError(".google.protobuf.FileOptions.features: object expected");
9060
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
9061
+ }
8534
9062
  if (object.uninterpretedOption) {
8535
9063
  if (!Array.isArray(object.uninterpretedOption))
8536
9064
  throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected");
@@ -8577,9 +9105,9 @@
8577
9105
  object.swiftPrefix = "";
8578
9106
  object.phpClassPrefix = "";
8579
9107
  object.phpNamespace = "";
8580
- object.phpGenericServices = false;
8581
9108
  object.phpMetadataNamespace = "";
8582
9109
  object.rubyPackage = "";
9110
+ object.features = null;
8583
9111
  }
8584
9112
  if (message.javaPackage != null && message.hasOwnProperty("javaPackage"))
8585
9113
  object.javaPackage = message.javaPackage;
@@ -8615,12 +9143,12 @@
8615
9143
  object.phpClassPrefix = message.phpClassPrefix;
8616
9144
  if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace"))
8617
9145
  object.phpNamespace = message.phpNamespace;
8618
- if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices"))
8619
- object.phpGenericServices = message.phpGenericServices;
8620
9146
  if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace"))
8621
9147
  object.phpMetadataNamespace = message.phpMetadataNamespace;
8622
9148
  if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage"))
8623
9149
  object.rubyPackage = message.rubyPackage;
9150
+ if (message.features != null && message.hasOwnProperty("features"))
9151
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
8624
9152
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
8625
9153
  object.uninterpretedOption = [];
8626
9154
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -8685,6 +9213,7 @@
8685
9213
  * @property {boolean|null} [deprecated] MessageOptions deprecated
8686
9214
  * @property {boolean|null} [mapEntry] MessageOptions mapEntry
8687
9215
  * @property {boolean|null} [deprecatedLegacyJsonFieldConflicts] MessageOptions deprecatedLegacyJsonFieldConflicts
9216
+ * @property {google.protobuf.IFeatureSet|null} [features] MessageOptions features
8688
9217
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] MessageOptions uninterpretedOption
8689
9218
  */
8690
9219
 
@@ -8744,6 +9273,14 @@
8744
9273
  */
8745
9274
  MessageOptions.prototype.deprecatedLegacyJsonFieldConflicts = false;
8746
9275
 
9276
+ /**
9277
+ * MessageOptions features.
9278
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
9279
+ * @memberof google.protobuf.MessageOptions
9280
+ * @instance
9281
+ */
9282
+ MessageOptions.prototype.features = null;
9283
+
8747
9284
  /**
8748
9285
  * MessageOptions uninterpretedOption.
8749
9286
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -8786,6 +9323,8 @@
8786
9323
  writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry);
8787
9324
  if (message.deprecatedLegacyJsonFieldConflicts != null && Object.hasOwnProperty.call(message, "deprecatedLegacyJsonFieldConflicts"))
8788
9325
  writer.uint32(/* id 11, wireType 0 =*/88).bool(message.deprecatedLegacyJsonFieldConflicts);
9326
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
9327
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim();
8789
9328
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
8790
9329
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
8791
9330
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -8843,6 +9382,10 @@
8843
9382
  message.deprecatedLegacyJsonFieldConflicts = reader.bool();
8844
9383
  break;
8845
9384
  }
9385
+ case 12: {
9386
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
9387
+ break;
9388
+ }
8846
9389
  case 999: {
8847
9390
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
8848
9391
  message.uninterpretedOption = [];
@@ -8899,6 +9442,11 @@
8899
9442
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
8900
9443
  if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean")
8901
9444
  return "deprecatedLegacyJsonFieldConflicts: boolean expected";
9445
+ if (message.features != null && message.hasOwnProperty("features")) {
9446
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
9447
+ if (error)
9448
+ return "features." + error;
9449
+ }
8902
9450
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
8903
9451
  if (!Array.isArray(message.uninterpretedOption))
8904
9452
  return "uninterpretedOption: array expected";
@@ -8933,6 +9481,11 @@
8933
9481
  message.mapEntry = Boolean(object.mapEntry);
8934
9482
  if (object.deprecatedLegacyJsonFieldConflicts != null)
8935
9483
  message.deprecatedLegacyJsonFieldConflicts = Boolean(object.deprecatedLegacyJsonFieldConflicts);
9484
+ if (object.features != null) {
9485
+ if (typeof object.features !== "object")
9486
+ throw TypeError(".google.protobuf.MessageOptions.features: object expected");
9487
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
9488
+ }
8936
9489
  if (object.uninterpretedOption) {
8937
9490
  if (!Array.isArray(object.uninterpretedOption))
8938
9491
  throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected");
@@ -8967,6 +9520,7 @@
8967
9520
  object.deprecated = false;
8968
9521
  object.mapEntry = false;
8969
9522
  object.deprecatedLegacyJsonFieldConflicts = false;
9523
+ object.features = null;
8970
9524
  }
8971
9525
  if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat"))
8972
9526
  object.messageSetWireFormat = message.messageSetWireFormat;
@@ -8978,6 +9532,8 @@
8978
9532
  object.mapEntry = message.mapEntry;
8979
9533
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
8980
9534
  object.deprecatedLegacyJsonFieldConflicts = message.deprecatedLegacyJsonFieldConflicts;
9535
+ if (message.features != null && message.hasOwnProperty("features"))
9536
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
8981
9537
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
8982
9538
  object.uninterpretedOption = [];
8983
9539
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -9030,7 +9586,9 @@
9030
9586
  * @property {boolean|null} [weak] FieldOptions weak
9031
9587
  * @property {boolean|null} [debugRedact] FieldOptions debugRedact
9032
9588
  * @property {google.protobuf.FieldOptions.OptionRetention|null} [retention] FieldOptions retention
9033
- * @property {google.protobuf.FieldOptions.OptionTargetType|null} [target] FieldOptions target
9589
+ * @property {Array.<google.protobuf.FieldOptions.OptionTargetType>|null} [targets] FieldOptions targets
9590
+ * @property {Array.<google.protobuf.FieldOptions.IEditionDefault>|null} [editionDefaults] FieldOptions editionDefaults
9591
+ * @property {google.protobuf.IFeatureSet|null} [features] FieldOptions features
9034
9592
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] FieldOptions uninterpretedOption
9035
9593
  * @property {Array.<google.api.FieldBehavior>|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior
9036
9594
  */
@@ -9044,6 +9602,8 @@
9044
9602
  * @param {google.protobuf.IFieldOptions=} [properties] Properties to set
9045
9603
  */
9046
9604
  function FieldOptions(properties) {
9605
+ this.targets = [];
9606
+ this.editionDefaults = [];
9047
9607
  this.uninterpretedOption = [];
9048
9608
  this[".google.api.fieldBehavior"] = [];
9049
9609
  if (properties)
@@ -9125,12 +9685,28 @@
9125
9685
  FieldOptions.prototype.retention = 0;
9126
9686
 
9127
9687
  /**
9128
- * FieldOptions target.
9129
- * @member {google.protobuf.FieldOptions.OptionTargetType} target
9688
+ * FieldOptions targets.
9689
+ * @member {Array.<google.protobuf.FieldOptions.OptionTargetType>} targets
9690
+ * @memberof google.protobuf.FieldOptions
9691
+ * @instance
9692
+ */
9693
+ FieldOptions.prototype.targets = $util.emptyArray;
9694
+
9695
+ /**
9696
+ * FieldOptions editionDefaults.
9697
+ * @member {Array.<google.protobuf.FieldOptions.IEditionDefault>} editionDefaults
9698
+ * @memberof google.protobuf.FieldOptions
9699
+ * @instance
9700
+ */
9701
+ FieldOptions.prototype.editionDefaults = $util.emptyArray;
9702
+
9703
+ /**
9704
+ * FieldOptions features.
9705
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
9130
9706
  * @memberof google.protobuf.FieldOptions
9131
9707
  * @instance
9132
9708
  */
9133
- FieldOptions.prototype.target = 0;
9709
+ FieldOptions.prototype.features = null;
9134
9710
 
9135
9711
  /**
9136
9712
  * FieldOptions uninterpretedOption.
@@ -9190,8 +9766,14 @@
9190
9766
  writer.uint32(/* id 16, wireType 0 =*/128).bool(message.debugRedact);
9191
9767
  if (message.retention != null && Object.hasOwnProperty.call(message, "retention"))
9192
9768
  writer.uint32(/* id 17, wireType 0 =*/136).int32(message.retention);
9193
- if (message.target != null && Object.hasOwnProperty.call(message, "target"))
9194
- writer.uint32(/* id 18, wireType 0 =*/144).int32(message.target);
9769
+ if (message.targets != null && message.targets.length)
9770
+ for (var i = 0; i < message.targets.length; ++i)
9771
+ writer.uint32(/* id 19, wireType 0 =*/152).int32(message.targets[i]);
9772
+ if (message.editionDefaults != null && message.editionDefaults.length)
9773
+ for (var i = 0; i < message.editionDefaults.length; ++i)
9774
+ $root.google.protobuf.FieldOptions.EditionDefault.encode(message.editionDefaults[i], writer.uint32(/* id 20, wireType 2 =*/162).fork()).ldelim();
9775
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
9776
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 21, wireType 2 =*/170).fork()).ldelim();
9195
9777
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
9196
9778
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
9197
9779
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -9271,8 +9853,25 @@
9271
9853
  message.retention = reader.int32();
9272
9854
  break;
9273
9855
  }
9274
- case 18: {
9275
- message.target = reader.int32();
9856
+ case 19: {
9857
+ if (!(message.targets && message.targets.length))
9858
+ message.targets = [];
9859
+ if ((tag & 7) === 2) {
9860
+ var end2 = reader.uint32() + reader.pos;
9861
+ while (reader.pos < end2)
9862
+ message.targets.push(reader.int32());
9863
+ } else
9864
+ message.targets.push(reader.int32());
9865
+ break;
9866
+ }
9867
+ case 20: {
9868
+ if (!(message.editionDefaults && message.editionDefaults.length))
9869
+ message.editionDefaults = [];
9870
+ message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32()));
9871
+ break;
9872
+ }
9873
+ case 21: {
9874
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
9276
9875
  break;
9277
9876
  }
9278
9877
  case 999: {
@@ -9372,22 +9971,40 @@
9372
9971
  case 2:
9373
9972
  break;
9374
9973
  }
9375
- if (message.target != null && message.hasOwnProperty("target"))
9376
- switch (message.target) {
9377
- default:
9378
- return "target: enum value expected";
9379
- case 0:
9380
- case 1:
9381
- case 2:
9382
- case 3:
9383
- case 4:
9384
- case 5:
9385
- case 6:
9386
- case 7:
9387
- case 8:
9388
- case 9:
9389
- break;
9974
+ if (message.targets != null && message.hasOwnProperty("targets")) {
9975
+ if (!Array.isArray(message.targets))
9976
+ return "targets: array expected";
9977
+ for (var i = 0; i < message.targets.length; ++i)
9978
+ switch (message.targets[i]) {
9979
+ default:
9980
+ return "targets: enum value[] expected";
9981
+ case 0:
9982
+ case 1:
9983
+ case 2:
9984
+ case 3:
9985
+ case 4:
9986
+ case 5:
9987
+ case 6:
9988
+ case 7:
9989
+ case 8:
9990
+ case 9:
9991
+ break;
9992
+ }
9993
+ }
9994
+ if (message.editionDefaults != null && message.hasOwnProperty("editionDefaults")) {
9995
+ if (!Array.isArray(message.editionDefaults))
9996
+ return "editionDefaults: array expected";
9997
+ for (var i = 0; i < message.editionDefaults.length; ++i) {
9998
+ var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]);
9999
+ if (error)
10000
+ return "editionDefaults." + error;
9390
10001
  }
10002
+ }
10003
+ if (message.features != null && message.hasOwnProperty("features")) {
10004
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
10005
+ if (error)
10006
+ return "features." + error;
10007
+ }
9391
10008
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
9392
10009
  if (!Array.isArray(message.uninterpretedOption))
9393
10010
  return "uninterpretedOption: array expected";
@@ -9412,6 +10029,7 @@
9412
10029
  case 5:
9413
10030
  case 6:
9414
10031
  case 7:
10032
+ case 8:
9415
10033
  break;
9416
10034
  }
9417
10035
  }
@@ -9502,53 +10120,73 @@
9502
10120
  message.retention = 2;
9503
10121
  break;
9504
10122
  }
9505
- switch (object.target) {
9506
- default:
9507
- if (typeof object.target === "number") {
9508
- message.target = object.target;
9509
- break;
10123
+ if (object.targets) {
10124
+ if (!Array.isArray(object.targets))
10125
+ throw TypeError(".google.protobuf.FieldOptions.targets: array expected");
10126
+ message.targets = [];
10127
+ for (var i = 0; i < object.targets.length; ++i)
10128
+ switch (object.targets[i]) {
10129
+ default:
10130
+ if (typeof object.targets[i] === "number") {
10131
+ message.targets[i] = object.targets[i];
10132
+ break;
10133
+ }
10134
+ case "TARGET_TYPE_UNKNOWN":
10135
+ case 0:
10136
+ message.targets[i] = 0;
10137
+ break;
10138
+ case "TARGET_TYPE_FILE":
10139
+ case 1:
10140
+ message.targets[i] = 1;
10141
+ break;
10142
+ case "TARGET_TYPE_EXTENSION_RANGE":
10143
+ case 2:
10144
+ message.targets[i] = 2;
10145
+ break;
10146
+ case "TARGET_TYPE_MESSAGE":
10147
+ case 3:
10148
+ message.targets[i] = 3;
10149
+ break;
10150
+ case "TARGET_TYPE_FIELD":
10151
+ case 4:
10152
+ message.targets[i] = 4;
10153
+ break;
10154
+ case "TARGET_TYPE_ONEOF":
10155
+ case 5:
10156
+ message.targets[i] = 5;
10157
+ break;
10158
+ case "TARGET_TYPE_ENUM":
10159
+ case 6:
10160
+ message.targets[i] = 6;
10161
+ break;
10162
+ case "TARGET_TYPE_ENUM_ENTRY":
10163
+ case 7:
10164
+ message.targets[i] = 7;
10165
+ break;
10166
+ case "TARGET_TYPE_SERVICE":
10167
+ case 8:
10168
+ message.targets[i] = 8;
10169
+ break;
10170
+ case "TARGET_TYPE_METHOD":
10171
+ case 9:
10172
+ message.targets[i] = 9;
10173
+ break;
10174
+ }
10175
+ }
10176
+ if (object.editionDefaults) {
10177
+ if (!Array.isArray(object.editionDefaults))
10178
+ throw TypeError(".google.protobuf.FieldOptions.editionDefaults: array expected");
10179
+ message.editionDefaults = [];
10180
+ for (var i = 0; i < object.editionDefaults.length; ++i) {
10181
+ if (typeof object.editionDefaults[i] !== "object")
10182
+ throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected");
10183
+ message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]);
9510
10184
  }
9511
- break;
9512
- case "TARGET_TYPE_UNKNOWN":
9513
- case 0:
9514
- message.target = 0;
9515
- break;
9516
- case "TARGET_TYPE_FILE":
9517
- case 1:
9518
- message.target = 1;
9519
- break;
9520
- case "TARGET_TYPE_EXTENSION_RANGE":
9521
- case 2:
9522
- message.target = 2;
9523
- break;
9524
- case "TARGET_TYPE_MESSAGE":
9525
- case 3:
9526
- message.target = 3;
9527
- break;
9528
- case "TARGET_TYPE_FIELD":
9529
- case 4:
9530
- message.target = 4;
9531
- break;
9532
- case "TARGET_TYPE_ONEOF":
9533
- case 5:
9534
- message.target = 5;
9535
- break;
9536
- case "TARGET_TYPE_ENUM":
9537
- case 6:
9538
- message.target = 6;
9539
- break;
9540
- case "TARGET_TYPE_ENUM_ENTRY":
9541
- case 7:
9542
- message.target = 7;
9543
- break;
9544
- case "TARGET_TYPE_SERVICE":
9545
- case 8:
9546
- message.target = 8;
9547
- break;
9548
- case "TARGET_TYPE_METHOD":
9549
- case 9:
9550
- message.target = 9;
9551
- break;
10185
+ }
10186
+ if (object.features != null) {
10187
+ if (typeof object.features !== "object")
10188
+ throw TypeError(".google.protobuf.FieldOptions.features: object expected");
10189
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
9552
10190
  }
9553
10191
  if (object.uninterpretedOption) {
9554
10192
  if (!Array.isArray(object.uninterpretedOption))
@@ -9603,6 +10241,10 @@
9603
10241
  case 7:
9604
10242
  message[".google.api.fieldBehavior"][i] = 7;
9605
10243
  break;
10244
+ case "IDENTIFIER":
10245
+ case 8:
10246
+ message[".google.api.fieldBehavior"][i] = 8;
10247
+ break;
9606
10248
  }
9607
10249
  }
9608
10250
  return message;
@@ -9622,6 +10264,8 @@
9622
10264
  options = {};
9623
10265
  var object = {};
9624
10266
  if (options.arrays || options.defaults) {
10267
+ object.targets = [];
10268
+ object.editionDefaults = [];
9625
10269
  object.uninterpretedOption = [];
9626
10270
  object[".google.api.fieldBehavior"] = [];
9627
10271
  }
@@ -9635,7 +10279,7 @@
9635
10279
  object.unverifiedLazy = false;
9636
10280
  object.debugRedact = false;
9637
10281
  object.retention = options.enums === String ? "RETENTION_UNKNOWN" : 0;
9638
- object.target = options.enums === String ? "TARGET_TYPE_UNKNOWN" : 0;
10282
+ object.features = null;
9639
10283
  }
9640
10284
  if (message.ctype != null && message.hasOwnProperty("ctype"))
9641
10285
  object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] === undefined ? message.ctype : $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype;
@@ -9655,8 +10299,18 @@
9655
10299
  object.debugRedact = message.debugRedact;
9656
10300
  if (message.retention != null && message.hasOwnProperty("retention"))
9657
10301
  object.retention = options.enums === String ? $root.google.protobuf.FieldOptions.OptionRetention[message.retention] === undefined ? message.retention : $root.google.protobuf.FieldOptions.OptionRetention[message.retention] : message.retention;
9658
- if (message.target != null && message.hasOwnProperty("target"))
9659
- object.target = options.enums === String ? $root.google.protobuf.FieldOptions.OptionTargetType[message.target] === undefined ? message.target : $root.google.protobuf.FieldOptions.OptionTargetType[message.target] : message.target;
10302
+ if (message.targets && message.targets.length) {
10303
+ object.targets = [];
10304
+ for (var j = 0; j < message.targets.length; ++j)
10305
+ object.targets[j] = options.enums === String ? $root.google.protobuf.FieldOptions.OptionTargetType[message.targets[j]] === undefined ? message.targets[j] : $root.google.protobuf.FieldOptions.OptionTargetType[message.targets[j]] : message.targets[j];
10306
+ }
10307
+ if (message.editionDefaults && message.editionDefaults.length) {
10308
+ object.editionDefaults = [];
10309
+ for (var j = 0; j < message.editionDefaults.length; ++j)
10310
+ object.editionDefaults[j] = $root.google.protobuf.FieldOptions.EditionDefault.toObject(message.editionDefaults[j], options);
10311
+ }
10312
+ if (message.features != null && message.hasOwnProperty("features"))
10313
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
9660
10314
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
9661
10315
  object.uninterpretedOption = [];
9662
10316
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -9774,92 +10428,394 @@
9774
10428
  return values;
9775
10429
  })();
9776
10430
 
9777
- return FieldOptions;
9778
- })();
10431
+ FieldOptions.EditionDefault = (function() {
9779
10432
 
9780
- protobuf.OneofOptions = (function() {
10433
+ /**
10434
+ * Properties of an EditionDefault.
10435
+ * @memberof google.protobuf.FieldOptions
10436
+ * @interface IEditionDefault
10437
+ * @property {google.protobuf.Edition|null} [edition] EditionDefault edition
10438
+ * @property {string|null} [value] EditionDefault value
10439
+ */
9781
10440
 
9782
- /**
9783
- * Properties of an OneofOptions.
9784
- * @memberof google.protobuf
9785
- * @interface IOneofOptions
9786
- * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] OneofOptions uninterpretedOption
9787
- */
10441
+ /**
10442
+ * Constructs a new EditionDefault.
10443
+ * @memberof google.protobuf.FieldOptions
10444
+ * @classdesc Represents an EditionDefault.
10445
+ * @implements IEditionDefault
10446
+ * @constructor
10447
+ * @param {google.protobuf.FieldOptions.IEditionDefault=} [properties] Properties to set
10448
+ */
10449
+ function EditionDefault(properties) {
10450
+ if (properties)
10451
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10452
+ if (properties[keys[i]] != null)
10453
+ this[keys[i]] = properties[keys[i]];
10454
+ }
9788
10455
 
9789
- /**
9790
- * Constructs a new OneofOptions.
9791
- * @memberof google.protobuf
9792
- * @classdesc Represents an OneofOptions.
9793
- * @implements IOneofOptions
9794
- * @constructor
9795
- * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
9796
- */
9797
- function OneofOptions(properties) {
9798
- this.uninterpretedOption = [];
9799
- if (properties)
9800
- for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9801
- if (properties[keys[i]] != null)
9802
- this[keys[i]] = properties[keys[i]];
9803
- }
10456
+ /**
10457
+ * EditionDefault edition.
10458
+ * @member {google.protobuf.Edition} edition
10459
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10460
+ * @instance
10461
+ */
10462
+ EditionDefault.prototype.edition = 0;
9804
10463
 
9805
- /**
9806
- * OneofOptions uninterpretedOption.
9807
- * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
9808
- * @memberof google.protobuf.OneofOptions
9809
- * @instance
9810
- */
9811
- OneofOptions.prototype.uninterpretedOption = $util.emptyArray;
10464
+ /**
10465
+ * EditionDefault value.
10466
+ * @member {string} value
10467
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10468
+ * @instance
10469
+ */
10470
+ EditionDefault.prototype.value = "";
9812
10471
 
9813
- /**
9814
- * Creates a new OneofOptions instance using the specified properties.
9815
- * @function create
9816
- * @memberof google.protobuf.OneofOptions
9817
- * @static
9818
- * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
9819
- * @returns {google.protobuf.OneofOptions} OneofOptions instance
9820
- */
9821
- OneofOptions.create = function create(properties) {
9822
- return new OneofOptions(properties);
9823
- };
10472
+ /**
10473
+ * Creates a new EditionDefault instance using the specified properties.
10474
+ * @function create
10475
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10476
+ * @static
10477
+ * @param {google.protobuf.FieldOptions.IEditionDefault=} [properties] Properties to set
10478
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault instance
10479
+ */
10480
+ EditionDefault.create = function create(properties) {
10481
+ return new EditionDefault(properties);
10482
+ };
9824
10483
 
9825
- /**
9826
- * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
9827
- * @function encode
9828
- * @memberof google.protobuf.OneofOptions
9829
- * @static
9830
- * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
9831
- * @param {$protobuf.Writer} [writer] Writer to encode to
9832
- * @returns {$protobuf.Writer} Writer
9833
- */
9834
- OneofOptions.encode = function encode(message, writer) {
9835
- if (!writer)
9836
- writer = $Writer.create();
9837
- if (message.uninterpretedOption != null && message.uninterpretedOption.length)
9838
- for (var i = 0; i < message.uninterpretedOption.length; ++i)
9839
- $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
9840
- return writer;
9841
- };
10484
+ /**
10485
+ * Encodes the specified EditionDefault message. Does not implicitly {@link google.protobuf.FieldOptions.EditionDefault.verify|verify} messages.
10486
+ * @function encode
10487
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10488
+ * @static
10489
+ * @param {google.protobuf.FieldOptions.IEditionDefault} message EditionDefault message or plain object to encode
10490
+ * @param {$protobuf.Writer} [writer] Writer to encode to
10491
+ * @returns {$protobuf.Writer} Writer
10492
+ */
10493
+ EditionDefault.encode = function encode(message, writer) {
10494
+ if (!writer)
10495
+ writer = $Writer.create();
10496
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
10497
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.value);
10498
+ if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
10499
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.edition);
10500
+ return writer;
10501
+ };
9842
10502
 
9843
- /**
9844
- * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
9845
- * @function encodeDelimited
9846
- * @memberof google.protobuf.OneofOptions
9847
- * @static
9848
- * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
9849
- * @param {$protobuf.Writer} [writer] Writer to encode to
9850
- * @returns {$protobuf.Writer} Writer
9851
- */
9852
- OneofOptions.encodeDelimited = function encodeDelimited(message, writer) {
9853
- return this.encode(message, writer).ldelim();
9854
- };
10503
+ /**
10504
+ * Encodes the specified EditionDefault message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.EditionDefault.verify|verify} messages.
10505
+ * @function encodeDelimited
10506
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10507
+ * @static
10508
+ * @param {google.protobuf.FieldOptions.IEditionDefault} message EditionDefault message or plain object to encode
10509
+ * @param {$protobuf.Writer} [writer] Writer to encode to
10510
+ * @returns {$protobuf.Writer} Writer
10511
+ */
10512
+ EditionDefault.encodeDelimited = function encodeDelimited(message, writer) {
10513
+ return this.encode(message, writer).ldelim();
10514
+ };
9855
10515
 
9856
- /**
9857
- * Decodes an OneofOptions message from the specified reader or buffer.
9858
- * @function decode
9859
- * @memberof google.protobuf.OneofOptions
9860
- * @static
9861
- * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9862
- * @param {number} [length] Message length if known beforehand
10516
+ /**
10517
+ * Decodes an EditionDefault message from the specified reader or buffer.
10518
+ * @function decode
10519
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10520
+ * @static
10521
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10522
+ * @param {number} [length] Message length if known beforehand
10523
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault
10524
+ * @throws {Error} If the payload is not a reader or valid buffer
10525
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
10526
+ */
10527
+ EditionDefault.decode = function decode(reader, length) {
10528
+ if (!(reader instanceof $Reader))
10529
+ reader = $Reader.create(reader);
10530
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault();
10531
+ while (reader.pos < end) {
10532
+ var tag = reader.uint32();
10533
+ switch (tag >>> 3) {
10534
+ case 3: {
10535
+ message.edition = reader.int32();
10536
+ break;
10537
+ }
10538
+ case 2: {
10539
+ message.value = reader.string();
10540
+ break;
10541
+ }
10542
+ default:
10543
+ reader.skipType(tag & 7);
10544
+ break;
10545
+ }
10546
+ }
10547
+ return message;
10548
+ };
10549
+
10550
+ /**
10551
+ * Decodes an EditionDefault message from the specified reader or buffer, length delimited.
10552
+ * @function decodeDelimited
10553
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10554
+ * @static
10555
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10556
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault
10557
+ * @throws {Error} If the payload is not a reader or valid buffer
10558
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
10559
+ */
10560
+ EditionDefault.decodeDelimited = function decodeDelimited(reader) {
10561
+ if (!(reader instanceof $Reader))
10562
+ reader = new $Reader(reader);
10563
+ return this.decode(reader, reader.uint32());
10564
+ };
10565
+
10566
+ /**
10567
+ * Verifies an EditionDefault message.
10568
+ * @function verify
10569
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10570
+ * @static
10571
+ * @param {Object.<string,*>} message Plain object to verify
10572
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
10573
+ */
10574
+ EditionDefault.verify = function verify(message) {
10575
+ if (typeof message !== "object" || message === null)
10576
+ return "object expected";
10577
+ if (message.edition != null && message.hasOwnProperty("edition"))
10578
+ switch (message.edition) {
10579
+ default:
10580
+ return "edition: enum value expected";
10581
+ case 0:
10582
+ case 998:
10583
+ case 999:
10584
+ case 1000:
10585
+ case 1001:
10586
+ case 1:
10587
+ case 2:
10588
+ case 99997:
10589
+ case 99998:
10590
+ case 99999:
10591
+ case 2147483647:
10592
+ break;
10593
+ }
10594
+ if (message.value != null && message.hasOwnProperty("value"))
10595
+ if (!$util.isString(message.value))
10596
+ return "value: string expected";
10597
+ return null;
10598
+ };
10599
+
10600
+ /**
10601
+ * Creates an EditionDefault message from a plain object. Also converts values to their respective internal types.
10602
+ * @function fromObject
10603
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10604
+ * @static
10605
+ * @param {Object.<string,*>} object Plain object
10606
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault
10607
+ */
10608
+ EditionDefault.fromObject = function fromObject(object) {
10609
+ if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault)
10610
+ return object;
10611
+ var message = new $root.google.protobuf.FieldOptions.EditionDefault();
10612
+ switch (object.edition) {
10613
+ default:
10614
+ if (typeof object.edition === "number") {
10615
+ message.edition = object.edition;
10616
+ break;
10617
+ }
10618
+ break;
10619
+ case "EDITION_UNKNOWN":
10620
+ case 0:
10621
+ message.edition = 0;
10622
+ break;
10623
+ case "EDITION_PROTO2":
10624
+ case 998:
10625
+ message.edition = 998;
10626
+ break;
10627
+ case "EDITION_PROTO3":
10628
+ case 999:
10629
+ message.edition = 999;
10630
+ break;
10631
+ case "EDITION_2023":
10632
+ case 1000:
10633
+ message.edition = 1000;
10634
+ break;
10635
+ case "EDITION_2024":
10636
+ case 1001:
10637
+ message.edition = 1001;
10638
+ break;
10639
+ case "EDITION_1_TEST_ONLY":
10640
+ case 1:
10641
+ message.edition = 1;
10642
+ break;
10643
+ case "EDITION_2_TEST_ONLY":
10644
+ case 2:
10645
+ message.edition = 2;
10646
+ break;
10647
+ case "EDITION_99997_TEST_ONLY":
10648
+ case 99997:
10649
+ message.edition = 99997;
10650
+ break;
10651
+ case "EDITION_99998_TEST_ONLY":
10652
+ case 99998:
10653
+ message.edition = 99998;
10654
+ break;
10655
+ case "EDITION_99999_TEST_ONLY":
10656
+ case 99999:
10657
+ message.edition = 99999;
10658
+ break;
10659
+ case "EDITION_MAX":
10660
+ case 2147483647:
10661
+ message.edition = 2147483647;
10662
+ break;
10663
+ }
10664
+ if (object.value != null)
10665
+ message.value = String(object.value);
10666
+ return message;
10667
+ };
10668
+
10669
+ /**
10670
+ * Creates a plain object from an EditionDefault message. Also converts values to other types if specified.
10671
+ * @function toObject
10672
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10673
+ * @static
10674
+ * @param {google.protobuf.FieldOptions.EditionDefault} message EditionDefault
10675
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
10676
+ * @returns {Object.<string,*>} Plain object
10677
+ */
10678
+ EditionDefault.toObject = function toObject(message, options) {
10679
+ if (!options)
10680
+ options = {};
10681
+ var object = {};
10682
+ if (options.defaults) {
10683
+ object.value = "";
10684
+ object.edition = options.enums === String ? "EDITION_UNKNOWN" : 0;
10685
+ }
10686
+ if (message.value != null && message.hasOwnProperty("value"))
10687
+ object.value = message.value;
10688
+ if (message.edition != null && message.hasOwnProperty("edition"))
10689
+ object.edition = options.enums === String ? $root.google.protobuf.Edition[message.edition] === undefined ? message.edition : $root.google.protobuf.Edition[message.edition] : message.edition;
10690
+ return object;
10691
+ };
10692
+
10693
+ /**
10694
+ * Converts this EditionDefault to JSON.
10695
+ * @function toJSON
10696
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10697
+ * @instance
10698
+ * @returns {Object.<string,*>} JSON object
10699
+ */
10700
+ EditionDefault.prototype.toJSON = function toJSON() {
10701
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
10702
+ };
10703
+
10704
+ /**
10705
+ * Gets the default type url for EditionDefault
10706
+ * @function getTypeUrl
10707
+ * @memberof google.protobuf.FieldOptions.EditionDefault
10708
+ * @static
10709
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
10710
+ * @returns {string} The default type url
10711
+ */
10712
+ EditionDefault.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
10713
+ if (typeUrlPrefix === undefined) {
10714
+ typeUrlPrefix = "type.googleapis.com";
10715
+ }
10716
+ return typeUrlPrefix + "/google.protobuf.FieldOptions.EditionDefault";
10717
+ };
10718
+
10719
+ return EditionDefault;
10720
+ })();
10721
+
10722
+ return FieldOptions;
10723
+ })();
10724
+
10725
+ protobuf.OneofOptions = (function() {
10726
+
10727
+ /**
10728
+ * Properties of an OneofOptions.
10729
+ * @memberof google.protobuf
10730
+ * @interface IOneofOptions
10731
+ * @property {google.protobuf.IFeatureSet|null} [features] OneofOptions features
10732
+ * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] OneofOptions uninterpretedOption
10733
+ */
10734
+
10735
+ /**
10736
+ * Constructs a new OneofOptions.
10737
+ * @memberof google.protobuf
10738
+ * @classdesc Represents an OneofOptions.
10739
+ * @implements IOneofOptions
10740
+ * @constructor
10741
+ * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
10742
+ */
10743
+ function OneofOptions(properties) {
10744
+ this.uninterpretedOption = [];
10745
+ if (properties)
10746
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10747
+ if (properties[keys[i]] != null)
10748
+ this[keys[i]] = properties[keys[i]];
10749
+ }
10750
+
10751
+ /**
10752
+ * OneofOptions features.
10753
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
10754
+ * @memberof google.protobuf.OneofOptions
10755
+ * @instance
10756
+ */
10757
+ OneofOptions.prototype.features = null;
10758
+
10759
+ /**
10760
+ * OneofOptions uninterpretedOption.
10761
+ * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
10762
+ * @memberof google.protobuf.OneofOptions
10763
+ * @instance
10764
+ */
10765
+ OneofOptions.prototype.uninterpretedOption = $util.emptyArray;
10766
+
10767
+ /**
10768
+ * Creates a new OneofOptions instance using the specified properties.
10769
+ * @function create
10770
+ * @memberof google.protobuf.OneofOptions
10771
+ * @static
10772
+ * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
10773
+ * @returns {google.protobuf.OneofOptions} OneofOptions instance
10774
+ */
10775
+ OneofOptions.create = function create(properties) {
10776
+ return new OneofOptions(properties);
10777
+ };
10778
+
10779
+ /**
10780
+ * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
10781
+ * @function encode
10782
+ * @memberof google.protobuf.OneofOptions
10783
+ * @static
10784
+ * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
10785
+ * @param {$protobuf.Writer} [writer] Writer to encode to
10786
+ * @returns {$protobuf.Writer} Writer
10787
+ */
10788
+ OneofOptions.encode = function encode(message, writer) {
10789
+ if (!writer)
10790
+ writer = $Writer.create();
10791
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
10792
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
10793
+ if (message.uninterpretedOption != null && message.uninterpretedOption.length)
10794
+ for (var i = 0; i < message.uninterpretedOption.length; ++i)
10795
+ $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
10796
+ return writer;
10797
+ };
10798
+
10799
+ /**
10800
+ * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
10801
+ * @function encodeDelimited
10802
+ * @memberof google.protobuf.OneofOptions
10803
+ * @static
10804
+ * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
10805
+ * @param {$protobuf.Writer} [writer] Writer to encode to
10806
+ * @returns {$protobuf.Writer} Writer
10807
+ */
10808
+ OneofOptions.encodeDelimited = function encodeDelimited(message, writer) {
10809
+ return this.encode(message, writer).ldelim();
10810
+ };
10811
+
10812
+ /**
10813
+ * Decodes an OneofOptions message from the specified reader or buffer.
10814
+ * @function decode
10815
+ * @memberof google.protobuf.OneofOptions
10816
+ * @static
10817
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10818
+ * @param {number} [length] Message length if known beforehand
9863
10819
  * @returns {google.protobuf.OneofOptions} OneofOptions
9864
10820
  * @throws {Error} If the payload is not a reader or valid buffer
9865
10821
  * @throws {$protobuf.util.ProtocolError} If required fields are missing
@@ -9871,6 +10827,10 @@
9871
10827
  while (reader.pos < end) {
9872
10828
  var tag = reader.uint32();
9873
10829
  switch (tag >>> 3) {
10830
+ case 1: {
10831
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
10832
+ break;
10833
+ }
9874
10834
  case 999: {
9875
10835
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
9876
10836
  message.uninterpretedOption = [];
@@ -9912,6 +10872,11 @@
9912
10872
  OneofOptions.verify = function verify(message) {
9913
10873
  if (typeof message !== "object" || message === null)
9914
10874
  return "object expected";
10875
+ if (message.features != null && message.hasOwnProperty("features")) {
10876
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
10877
+ if (error)
10878
+ return "features." + error;
10879
+ }
9915
10880
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
9916
10881
  if (!Array.isArray(message.uninterpretedOption))
9917
10882
  return "uninterpretedOption: array expected";
@@ -9936,6 +10901,11 @@
9936
10901
  if (object instanceof $root.google.protobuf.OneofOptions)
9937
10902
  return object;
9938
10903
  var message = new $root.google.protobuf.OneofOptions();
10904
+ if (object.features != null) {
10905
+ if (typeof object.features !== "object")
10906
+ throw TypeError(".google.protobuf.OneofOptions.features: object expected");
10907
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
10908
+ }
9939
10909
  if (object.uninterpretedOption) {
9940
10910
  if (!Array.isArray(object.uninterpretedOption))
9941
10911
  throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected");
@@ -9964,6 +10934,10 @@
9964
10934
  var object = {};
9965
10935
  if (options.arrays || options.defaults)
9966
10936
  object.uninterpretedOption = [];
10937
+ if (options.defaults)
10938
+ object.features = null;
10939
+ if (message.features != null && message.hasOwnProperty("features"))
10940
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
9967
10941
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
9968
10942
  object.uninterpretedOption = [];
9969
10943
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -10010,6 +10984,7 @@
10010
10984
  * @property {boolean|null} [allowAlias] EnumOptions allowAlias
10011
10985
  * @property {boolean|null} [deprecated] EnumOptions deprecated
10012
10986
  * @property {boolean|null} [deprecatedLegacyJsonFieldConflicts] EnumOptions deprecatedLegacyJsonFieldConflicts
10987
+ * @property {google.protobuf.IFeatureSet|null} [features] EnumOptions features
10013
10988
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] EnumOptions uninterpretedOption
10014
10989
  */
10015
10990
 
@@ -10053,6 +11028,14 @@
10053
11028
  */
10054
11029
  EnumOptions.prototype.deprecatedLegacyJsonFieldConflicts = false;
10055
11030
 
11031
+ /**
11032
+ * EnumOptions features.
11033
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
11034
+ * @memberof google.protobuf.EnumOptions
11035
+ * @instance
11036
+ */
11037
+ EnumOptions.prototype.features = null;
11038
+
10056
11039
  /**
10057
11040
  * EnumOptions uninterpretedOption.
10058
11041
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -10091,6 +11074,8 @@
10091
11074
  writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated);
10092
11075
  if (message.deprecatedLegacyJsonFieldConflicts != null && Object.hasOwnProperty.call(message, "deprecatedLegacyJsonFieldConflicts"))
10093
11076
  writer.uint32(/* id 6, wireType 0 =*/48).bool(message.deprecatedLegacyJsonFieldConflicts);
11077
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
11078
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
10094
11079
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
10095
11080
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
10096
11081
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -10140,6 +11125,10 @@
10140
11125
  message.deprecatedLegacyJsonFieldConflicts = reader.bool();
10141
11126
  break;
10142
11127
  }
11128
+ case 7: {
11129
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
11130
+ break;
11131
+ }
10143
11132
  case 999: {
10144
11133
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
10145
11134
  message.uninterpretedOption = [];
@@ -10190,6 +11179,11 @@
10190
11179
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
10191
11180
  if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean")
10192
11181
  return "deprecatedLegacyJsonFieldConflicts: boolean expected";
11182
+ if (message.features != null && message.hasOwnProperty("features")) {
11183
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
11184
+ if (error)
11185
+ return "features." + error;
11186
+ }
10193
11187
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
10194
11188
  if (!Array.isArray(message.uninterpretedOption))
10195
11189
  return "uninterpretedOption: array expected";
@@ -10220,6 +11214,11 @@
10220
11214
  message.deprecated = Boolean(object.deprecated);
10221
11215
  if (object.deprecatedLegacyJsonFieldConflicts != null)
10222
11216
  message.deprecatedLegacyJsonFieldConflicts = Boolean(object.deprecatedLegacyJsonFieldConflicts);
11217
+ if (object.features != null) {
11218
+ if (typeof object.features !== "object")
11219
+ throw TypeError(".google.protobuf.EnumOptions.features: object expected");
11220
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
11221
+ }
10223
11222
  if (object.uninterpretedOption) {
10224
11223
  if (!Array.isArray(object.uninterpretedOption))
10225
11224
  throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected");
@@ -10252,6 +11251,7 @@
10252
11251
  object.allowAlias = false;
10253
11252
  object.deprecated = false;
10254
11253
  object.deprecatedLegacyJsonFieldConflicts = false;
11254
+ object.features = null;
10255
11255
  }
10256
11256
  if (message.allowAlias != null && message.hasOwnProperty("allowAlias"))
10257
11257
  object.allowAlias = message.allowAlias;
@@ -10259,6 +11259,8 @@
10259
11259
  object.deprecated = message.deprecated;
10260
11260
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
10261
11261
  object.deprecatedLegacyJsonFieldConflicts = message.deprecatedLegacyJsonFieldConflicts;
11262
+ if (message.features != null && message.hasOwnProperty("features"))
11263
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
10262
11264
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
10263
11265
  object.uninterpretedOption = [];
10264
11266
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -10303,6 +11305,8 @@
10303
11305
  * @memberof google.protobuf
10304
11306
  * @interface IEnumValueOptions
10305
11307
  * @property {boolean|null} [deprecated] EnumValueOptions deprecated
11308
+ * @property {google.protobuf.IFeatureSet|null} [features] EnumValueOptions features
11309
+ * @property {boolean|null} [debugRedact] EnumValueOptions debugRedact
10306
11310
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] EnumValueOptions uninterpretedOption
10307
11311
  */
10308
11312
 
@@ -10330,6 +11334,22 @@
10330
11334
  */
10331
11335
  EnumValueOptions.prototype.deprecated = false;
10332
11336
 
11337
+ /**
11338
+ * EnumValueOptions features.
11339
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
11340
+ * @memberof google.protobuf.EnumValueOptions
11341
+ * @instance
11342
+ */
11343
+ EnumValueOptions.prototype.features = null;
11344
+
11345
+ /**
11346
+ * EnumValueOptions debugRedact.
11347
+ * @member {boolean} debugRedact
11348
+ * @memberof google.protobuf.EnumValueOptions
11349
+ * @instance
11350
+ */
11351
+ EnumValueOptions.prototype.debugRedact = false;
11352
+
10333
11353
  /**
10334
11354
  * EnumValueOptions uninterpretedOption.
10335
11355
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -10364,6 +11384,10 @@
10364
11384
  writer = $Writer.create();
10365
11385
  if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
10366
11386
  writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated);
11387
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
11388
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
11389
+ if (message.debugRedact != null && Object.hasOwnProperty.call(message, "debugRedact"))
11390
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.debugRedact);
10367
11391
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
10368
11392
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
10369
11393
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -10405,6 +11429,14 @@
10405
11429
  message.deprecated = reader.bool();
10406
11430
  break;
10407
11431
  }
11432
+ case 2: {
11433
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
11434
+ break;
11435
+ }
11436
+ case 3: {
11437
+ message.debugRedact = reader.bool();
11438
+ break;
11439
+ }
10408
11440
  case 999: {
10409
11441
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
10410
11442
  message.uninterpretedOption = [];
@@ -10449,6 +11481,14 @@
10449
11481
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
10450
11482
  if (typeof message.deprecated !== "boolean")
10451
11483
  return "deprecated: boolean expected";
11484
+ if (message.features != null && message.hasOwnProperty("features")) {
11485
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
11486
+ if (error)
11487
+ return "features." + error;
11488
+ }
11489
+ if (message.debugRedact != null && message.hasOwnProperty("debugRedact"))
11490
+ if (typeof message.debugRedact !== "boolean")
11491
+ return "debugRedact: boolean expected";
10452
11492
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
10453
11493
  if (!Array.isArray(message.uninterpretedOption))
10454
11494
  return "uninterpretedOption: array expected";
@@ -10475,6 +11515,13 @@
10475
11515
  var message = new $root.google.protobuf.EnumValueOptions();
10476
11516
  if (object.deprecated != null)
10477
11517
  message.deprecated = Boolean(object.deprecated);
11518
+ if (object.features != null) {
11519
+ if (typeof object.features !== "object")
11520
+ throw TypeError(".google.protobuf.EnumValueOptions.features: object expected");
11521
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
11522
+ }
11523
+ if (object.debugRedact != null)
11524
+ message.debugRedact = Boolean(object.debugRedact);
10478
11525
  if (object.uninterpretedOption) {
10479
11526
  if (!Array.isArray(object.uninterpretedOption))
10480
11527
  throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected");
@@ -10503,10 +11550,17 @@
10503
11550
  var object = {};
10504
11551
  if (options.arrays || options.defaults)
10505
11552
  object.uninterpretedOption = [];
10506
- if (options.defaults)
11553
+ if (options.defaults) {
10507
11554
  object.deprecated = false;
11555
+ object.features = null;
11556
+ object.debugRedact = false;
11557
+ }
10508
11558
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
10509
11559
  object.deprecated = message.deprecated;
11560
+ if (message.features != null && message.hasOwnProperty("features"))
11561
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
11562
+ if (message.debugRedact != null && message.hasOwnProperty("debugRedact"))
11563
+ object.debugRedact = message.debugRedact;
10510
11564
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
10511
11565
  object.uninterpretedOption = [];
10512
11566
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -10550,6 +11604,7 @@
10550
11604
  * Properties of a ServiceOptions.
10551
11605
  * @memberof google.protobuf
10552
11606
  * @interface IServiceOptions
11607
+ * @property {google.protobuf.IFeatureSet|null} [features] ServiceOptions features
10553
11608
  * @property {boolean|null} [deprecated] ServiceOptions deprecated
10554
11609
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] ServiceOptions uninterpretedOption
10555
11610
  * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost
@@ -10572,6 +11627,14 @@
10572
11627
  this[keys[i]] = properties[keys[i]];
10573
11628
  }
10574
11629
 
11630
+ /**
11631
+ * ServiceOptions features.
11632
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
11633
+ * @memberof google.protobuf.ServiceOptions
11634
+ * @instance
11635
+ */
11636
+ ServiceOptions.prototype.features = null;
11637
+
10575
11638
  /**
10576
11639
  * ServiceOptions deprecated.
10577
11640
  * @member {boolean} deprecated
@@ -10630,6 +11693,8 @@
10630
11693
  writer = $Writer.create();
10631
11694
  if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
10632
11695
  writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated);
11696
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
11697
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 34, wireType 2 =*/274).fork()).ldelim();
10633
11698
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
10634
11699
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
10635
11700
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -10671,6 +11736,10 @@
10671
11736
  while (reader.pos < end) {
10672
11737
  var tag = reader.uint32();
10673
11738
  switch (tag >>> 3) {
11739
+ case 34: {
11740
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
11741
+ break;
11742
+ }
10674
11743
  case 33: {
10675
11744
  message.deprecated = reader.bool();
10676
11745
  break;
@@ -10724,6 +11793,11 @@
10724
11793
  ServiceOptions.verify = function verify(message) {
10725
11794
  if (typeof message !== "object" || message === null)
10726
11795
  return "object expected";
11796
+ if (message.features != null && message.hasOwnProperty("features")) {
11797
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
11798
+ if (error)
11799
+ return "features." + error;
11800
+ }
10727
11801
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
10728
11802
  if (typeof message.deprecated !== "boolean")
10729
11803
  return "deprecated: boolean expected";
@@ -10757,6 +11831,11 @@
10757
11831
  if (object instanceof $root.google.protobuf.ServiceOptions)
10758
11832
  return object;
10759
11833
  var message = new $root.google.protobuf.ServiceOptions();
11834
+ if (object.features != null) {
11835
+ if (typeof object.features !== "object")
11836
+ throw TypeError(".google.protobuf.ServiceOptions.features: object expected");
11837
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
11838
+ }
10760
11839
  if (object.deprecated != null)
10761
11840
  message.deprecated = Boolean(object.deprecated);
10762
11841
  if (object.uninterpretedOption) {
@@ -10793,11 +11872,14 @@
10793
11872
  object.uninterpretedOption = [];
10794
11873
  if (options.defaults) {
10795
11874
  object.deprecated = false;
11875
+ object.features = null;
10796
11876
  object[".google.api.defaultHost"] = "";
10797
11877
  object[".google.api.oauthScopes"] = "";
10798
11878
  }
10799
11879
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
10800
11880
  object.deprecated = message.deprecated;
11881
+ if (message.features != null && message.hasOwnProperty("features"))
11882
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
10801
11883
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
10802
11884
  object.uninterpretedOption = [];
10803
11885
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -10847,6 +11929,7 @@
10847
11929
  * @interface IMethodOptions
10848
11930
  * @property {boolean|null} [deprecated] MethodOptions deprecated
10849
11931
  * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel
11932
+ * @property {google.protobuf.IFeatureSet|null} [features] MethodOptions features
10850
11933
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] MethodOptions uninterpretedOption
10851
11934
  * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http
10852
11935
  * @property {Array.<string>|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature
@@ -10885,6 +11968,14 @@
10885
11968
  */
10886
11969
  MethodOptions.prototype.idempotencyLevel = 0;
10887
11970
 
11971
+ /**
11972
+ * MethodOptions features.
11973
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
11974
+ * @memberof google.protobuf.MethodOptions
11975
+ * @instance
11976
+ */
11977
+ MethodOptions.prototype.features = null;
11978
+
10888
11979
  /**
10889
11980
  * MethodOptions uninterpretedOption.
10890
11981
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -10937,6 +12028,8 @@
10937
12028
  writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated);
10938
12029
  if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel"))
10939
12030
  writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel);
12031
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
12032
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 35, wireType 2 =*/282).fork()).ldelim();
10940
12033
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
10941
12034
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
10942
12035
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -10987,6 +12080,10 @@
10987
12080
  message.idempotencyLevel = reader.int32();
10988
12081
  break;
10989
12082
  }
12083
+ case 35: {
12084
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
12085
+ break;
12086
+ }
10990
12087
  case 999: {
10991
12088
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
10992
12089
  message.uninterpretedOption = [];
@@ -11050,6 +12147,11 @@
11050
12147
  case 2:
11051
12148
  break;
11052
12149
  }
12150
+ if (message.features != null && message.hasOwnProperty("features")) {
12151
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
12152
+ if (error)
12153
+ return "features." + error;
12154
+ }
11053
12155
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
11054
12156
  if (!Array.isArray(message.uninterpretedOption))
11055
12157
  return "uninterpretedOption: array expected";
@@ -11108,6 +12210,11 @@
11108
12210
  message.idempotencyLevel = 2;
11109
12211
  break;
11110
12212
  }
12213
+ if (object.features != null) {
12214
+ if (typeof object.features !== "object")
12215
+ throw TypeError(".google.protobuf.MethodOptions.features: object expected");
12216
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
12217
+ }
11111
12218
  if (object.uninterpretedOption) {
11112
12219
  if (!Array.isArray(object.uninterpretedOption))
11113
12220
  throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected");
@@ -11153,12 +12260,15 @@
11153
12260
  if (options.defaults) {
11154
12261
  object.deprecated = false;
11155
12262
  object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0;
12263
+ object.features = null;
11156
12264
  object[".google.api.http"] = null;
11157
12265
  }
11158
12266
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
11159
12267
  object.deprecated = message.deprecated;
11160
12268
  if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel"))
11161
12269
  object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] === undefined ? message.idempotencyLevel : $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel;
12270
+ if (message.features != null && message.hasOwnProperty("features"))
12271
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
11162
12272
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
11163
12273
  object.uninterpretedOption = [];
11164
12274
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -11592,50 +12702,1243 @@
11592
12702
  };
11593
12703
 
11594
12704
  /**
11595
- * Converts this UninterpretedOption to JSON.
12705
+ * Converts this UninterpretedOption to JSON.
12706
+ * @function toJSON
12707
+ * @memberof google.protobuf.UninterpretedOption
12708
+ * @instance
12709
+ * @returns {Object.<string,*>} JSON object
12710
+ */
12711
+ UninterpretedOption.prototype.toJSON = function toJSON() {
12712
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12713
+ };
12714
+
12715
+ /**
12716
+ * Gets the default type url for UninterpretedOption
12717
+ * @function getTypeUrl
12718
+ * @memberof google.protobuf.UninterpretedOption
12719
+ * @static
12720
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
12721
+ * @returns {string} The default type url
12722
+ */
12723
+ UninterpretedOption.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
12724
+ if (typeUrlPrefix === undefined) {
12725
+ typeUrlPrefix = "type.googleapis.com";
12726
+ }
12727
+ return typeUrlPrefix + "/google.protobuf.UninterpretedOption";
12728
+ };
12729
+
12730
+ UninterpretedOption.NamePart = (function() {
12731
+
12732
+ /**
12733
+ * Properties of a NamePart.
12734
+ * @memberof google.protobuf.UninterpretedOption
12735
+ * @interface INamePart
12736
+ * @property {string} namePart NamePart namePart
12737
+ * @property {boolean} isExtension NamePart isExtension
12738
+ */
12739
+
12740
+ /**
12741
+ * Constructs a new NamePart.
12742
+ * @memberof google.protobuf.UninterpretedOption
12743
+ * @classdesc Represents a NamePart.
12744
+ * @implements INamePart
12745
+ * @constructor
12746
+ * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
12747
+ */
12748
+ function NamePart(properties) {
12749
+ if (properties)
12750
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12751
+ if (properties[keys[i]] != null)
12752
+ this[keys[i]] = properties[keys[i]];
12753
+ }
12754
+
12755
+ /**
12756
+ * NamePart namePart.
12757
+ * @member {string} namePart
12758
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12759
+ * @instance
12760
+ */
12761
+ NamePart.prototype.namePart = "";
12762
+
12763
+ /**
12764
+ * NamePart isExtension.
12765
+ * @member {boolean} isExtension
12766
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12767
+ * @instance
12768
+ */
12769
+ NamePart.prototype.isExtension = false;
12770
+
12771
+ /**
12772
+ * Creates a new NamePart instance using the specified properties.
12773
+ * @function create
12774
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12775
+ * @static
12776
+ * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
12777
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance
12778
+ */
12779
+ NamePart.create = function create(properties) {
12780
+ return new NamePart(properties);
12781
+ };
12782
+
12783
+ /**
12784
+ * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
12785
+ * @function encode
12786
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12787
+ * @static
12788
+ * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
12789
+ * @param {$protobuf.Writer} [writer] Writer to encode to
12790
+ * @returns {$protobuf.Writer} Writer
12791
+ */
12792
+ NamePart.encode = function encode(message, writer) {
12793
+ if (!writer)
12794
+ writer = $Writer.create();
12795
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart);
12796
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension);
12797
+ return writer;
12798
+ };
12799
+
12800
+ /**
12801
+ * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
12802
+ * @function encodeDelimited
12803
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12804
+ * @static
12805
+ * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
12806
+ * @param {$protobuf.Writer} [writer] Writer to encode to
12807
+ * @returns {$protobuf.Writer} Writer
12808
+ */
12809
+ NamePart.encodeDelimited = function encodeDelimited(message, writer) {
12810
+ return this.encode(message, writer).ldelim();
12811
+ };
12812
+
12813
+ /**
12814
+ * Decodes a NamePart message from the specified reader or buffer.
12815
+ * @function decode
12816
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12817
+ * @static
12818
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12819
+ * @param {number} [length] Message length if known beforehand
12820
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
12821
+ * @throws {Error} If the payload is not a reader or valid buffer
12822
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
12823
+ */
12824
+ NamePart.decode = function decode(reader, length) {
12825
+ if (!(reader instanceof $Reader))
12826
+ reader = $Reader.create(reader);
12827
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart();
12828
+ while (reader.pos < end) {
12829
+ var tag = reader.uint32();
12830
+ switch (tag >>> 3) {
12831
+ case 1: {
12832
+ message.namePart = reader.string();
12833
+ break;
12834
+ }
12835
+ case 2: {
12836
+ message.isExtension = reader.bool();
12837
+ break;
12838
+ }
12839
+ default:
12840
+ reader.skipType(tag & 7);
12841
+ break;
12842
+ }
12843
+ }
12844
+ if (!message.hasOwnProperty("namePart"))
12845
+ throw $util.ProtocolError("missing required 'namePart'", { instance: message });
12846
+ if (!message.hasOwnProperty("isExtension"))
12847
+ throw $util.ProtocolError("missing required 'isExtension'", { instance: message });
12848
+ return message;
12849
+ };
12850
+
12851
+ /**
12852
+ * Decodes a NamePart message from the specified reader or buffer, length delimited.
12853
+ * @function decodeDelimited
12854
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12855
+ * @static
12856
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12857
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
12858
+ * @throws {Error} If the payload is not a reader or valid buffer
12859
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
12860
+ */
12861
+ NamePart.decodeDelimited = function decodeDelimited(reader) {
12862
+ if (!(reader instanceof $Reader))
12863
+ reader = new $Reader(reader);
12864
+ return this.decode(reader, reader.uint32());
12865
+ };
12866
+
12867
+ /**
12868
+ * Verifies a NamePart message.
12869
+ * @function verify
12870
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12871
+ * @static
12872
+ * @param {Object.<string,*>} message Plain object to verify
12873
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
12874
+ */
12875
+ NamePart.verify = function verify(message) {
12876
+ if (typeof message !== "object" || message === null)
12877
+ return "object expected";
12878
+ if (!$util.isString(message.namePart))
12879
+ return "namePart: string expected";
12880
+ if (typeof message.isExtension !== "boolean")
12881
+ return "isExtension: boolean expected";
12882
+ return null;
12883
+ };
12884
+
12885
+ /**
12886
+ * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
12887
+ * @function fromObject
12888
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12889
+ * @static
12890
+ * @param {Object.<string,*>} object Plain object
12891
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
12892
+ */
12893
+ NamePart.fromObject = function fromObject(object) {
12894
+ if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart)
12895
+ return object;
12896
+ var message = new $root.google.protobuf.UninterpretedOption.NamePart();
12897
+ if (object.namePart != null)
12898
+ message.namePart = String(object.namePart);
12899
+ if (object.isExtension != null)
12900
+ message.isExtension = Boolean(object.isExtension);
12901
+ return message;
12902
+ };
12903
+
12904
+ /**
12905
+ * Creates a plain object from a NamePart message. Also converts values to other types if specified.
12906
+ * @function toObject
12907
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12908
+ * @static
12909
+ * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart
12910
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
12911
+ * @returns {Object.<string,*>} Plain object
12912
+ */
12913
+ NamePart.toObject = function toObject(message, options) {
12914
+ if (!options)
12915
+ options = {};
12916
+ var object = {};
12917
+ if (options.defaults) {
12918
+ object.namePart = "";
12919
+ object.isExtension = false;
12920
+ }
12921
+ if (message.namePart != null && message.hasOwnProperty("namePart"))
12922
+ object.namePart = message.namePart;
12923
+ if (message.isExtension != null && message.hasOwnProperty("isExtension"))
12924
+ object.isExtension = message.isExtension;
12925
+ return object;
12926
+ };
12927
+
12928
+ /**
12929
+ * Converts this NamePart to JSON.
12930
+ * @function toJSON
12931
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12932
+ * @instance
12933
+ * @returns {Object.<string,*>} JSON object
12934
+ */
12935
+ NamePart.prototype.toJSON = function toJSON() {
12936
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12937
+ };
12938
+
12939
+ /**
12940
+ * Gets the default type url for NamePart
12941
+ * @function getTypeUrl
12942
+ * @memberof google.protobuf.UninterpretedOption.NamePart
12943
+ * @static
12944
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
12945
+ * @returns {string} The default type url
12946
+ */
12947
+ NamePart.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
12948
+ if (typeUrlPrefix === undefined) {
12949
+ typeUrlPrefix = "type.googleapis.com";
12950
+ }
12951
+ return typeUrlPrefix + "/google.protobuf.UninterpretedOption.NamePart";
12952
+ };
12953
+
12954
+ return NamePart;
12955
+ })();
12956
+
12957
+ return UninterpretedOption;
12958
+ })();
12959
+
12960
+ protobuf.FeatureSet = (function() {
12961
+
12962
+ /**
12963
+ * Properties of a FeatureSet.
12964
+ * @memberof google.protobuf
12965
+ * @interface IFeatureSet
12966
+ * @property {google.protobuf.FeatureSet.FieldPresence|null} [fieldPresence] FeatureSet fieldPresence
12967
+ * @property {google.protobuf.FeatureSet.EnumType|null} [enumType] FeatureSet enumType
12968
+ * @property {google.protobuf.FeatureSet.RepeatedFieldEncoding|null} [repeatedFieldEncoding] FeatureSet repeatedFieldEncoding
12969
+ * @property {google.protobuf.FeatureSet.Utf8Validation|null} [utf8Validation] FeatureSet utf8Validation
12970
+ * @property {google.protobuf.FeatureSet.MessageEncoding|null} [messageEncoding] FeatureSet messageEncoding
12971
+ * @property {google.protobuf.FeatureSet.JsonFormat|null} [jsonFormat] FeatureSet jsonFormat
12972
+ */
12973
+
12974
+ /**
12975
+ * Constructs a new FeatureSet.
12976
+ * @memberof google.protobuf
12977
+ * @classdesc Represents a FeatureSet.
12978
+ * @implements IFeatureSet
12979
+ * @constructor
12980
+ * @param {google.protobuf.IFeatureSet=} [properties] Properties to set
12981
+ */
12982
+ function FeatureSet(properties) {
12983
+ if (properties)
12984
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12985
+ if (properties[keys[i]] != null)
12986
+ this[keys[i]] = properties[keys[i]];
12987
+ }
12988
+
12989
+ /**
12990
+ * FeatureSet fieldPresence.
12991
+ * @member {google.protobuf.FeatureSet.FieldPresence} fieldPresence
12992
+ * @memberof google.protobuf.FeatureSet
12993
+ * @instance
12994
+ */
12995
+ FeatureSet.prototype.fieldPresence = 0;
12996
+
12997
+ /**
12998
+ * FeatureSet enumType.
12999
+ * @member {google.protobuf.FeatureSet.EnumType} enumType
13000
+ * @memberof google.protobuf.FeatureSet
13001
+ * @instance
13002
+ */
13003
+ FeatureSet.prototype.enumType = 0;
13004
+
13005
+ /**
13006
+ * FeatureSet repeatedFieldEncoding.
13007
+ * @member {google.protobuf.FeatureSet.RepeatedFieldEncoding} repeatedFieldEncoding
13008
+ * @memberof google.protobuf.FeatureSet
13009
+ * @instance
13010
+ */
13011
+ FeatureSet.prototype.repeatedFieldEncoding = 0;
13012
+
13013
+ /**
13014
+ * FeatureSet utf8Validation.
13015
+ * @member {google.protobuf.FeatureSet.Utf8Validation} utf8Validation
13016
+ * @memberof google.protobuf.FeatureSet
13017
+ * @instance
13018
+ */
13019
+ FeatureSet.prototype.utf8Validation = 0;
13020
+
13021
+ /**
13022
+ * FeatureSet messageEncoding.
13023
+ * @member {google.protobuf.FeatureSet.MessageEncoding} messageEncoding
13024
+ * @memberof google.protobuf.FeatureSet
13025
+ * @instance
13026
+ */
13027
+ FeatureSet.prototype.messageEncoding = 0;
13028
+
13029
+ /**
13030
+ * FeatureSet jsonFormat.
13031
+ * @member {google.protobuf.FeatureSet.JsonFormat} jsonFormat
13032
+ * @memberof google.protobuf.FeatureSet
13033
+ * @instance
13034
+ */
13035
+ FeatureSet.prototype.jsonFormat = 0;
13036
+
13037
+ /**
13038
+ * Creates a new FeatureSet instance using the specified properties.
13039
+ * @function create
13040
+ * @memberof google.protobuf.FeatureSet
13041
+ * @static
13042
+ * @param {google.protobuf.IFeatureSet=} [properties] Properties to set
13043
+ * @returns {google.protobuf.FeatureSet} FeatureSet instance
13044
+ */
13045
+ FeatureSet.create = function create(properties) {
13046
+ return new FeatureSet(properties);
13047
+ };
13048
+
13049
+ /**
13050
+ * Encodes the specified FeatureSet message. Does not implicitly {@link google.protobuf.FeatureSet.verify|verify} messages.
13051
+ * @function encode
13052
+ * @memberof google.protobuf.FeatureSet
13053
+ * @static
13054
+ * @param {google.protobuf.IFeatureSet} message FeatureSet message or plain object to encode
13055
+ * @param {$protobuf.Writer} [writer] Writer to encode to
13056
+ * @returns {$protobuf.Writer} Writer
13057
+ */
13058
+ FeatureSet.encode = function encode(message, writer) {
13059
+ if (!writer)
13060
+ writer = $Writer.create();
13061
+ if (message.fieldPresence != null && Object.hasOwnProperty.call(message, "fieldPresence"))
13062
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.fieldPresence);
13063
+ if (message.enumType != null && Object.hasOwnProperty.call(message, "enumType"))
13064
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.enumType);
13065
+ if (message.repeatedFieldEncoding != null && Object.hasOwnProperty.call(message, "repeatedFieldEncoding"))
13066
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.repeatedFieldEncoding);
13067
+ if (message.utf8Validation != null && Object.hasOwnProperty.call(message, "utf8Validation"))
13068
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.utf8Validation);
13069
+ if (message.messageEncoding != null && Object.hasOwnProperty.call(message, "messageEncoding"))
13070
+ writer.uint32(/* id 5, wireType 0 =*/40).int32(message.messageEncoding);
13071
+ if (message.jsonFormat != null && Object.hasOwnProperty.call(message, "jsonFormat"))
13072
+ writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jsonFormat);
13073
+ return writer;
13074
+ };
13075
+
13076
+ /**
13077
+ * Encodes the specified FeatureSet message, length delimited. Does not implicitly {@link google.protobuf.FeatureSet.verify|verify} messages.
13078
+ * @function encodeDelimited
13079
+ * @memberof google.protobuf.FeatureSet
13080
+ * @static
13081
+ * @param {google.protobuf.IFeatureSet} message FeatureSet message or plain object to encode
13082
+ * @param {$protobuf.Writer} [writer] Writer to encode to
13083
+ * @returns {$protobuf.Writer} Writer
13084
+ */
13085
+ FeatureSet.encodeDelimited = function encodeDelimited(message, writer) {
13086
+ return this.encode(message, writer).ldelim();
13087
+ };
13088
+
13089
+ /**
13090
+ * Decodes a FeatureSet message from the specified reader or buffer.
13091
+ * @function decode
13092
+ * @memberof google.protobuf.FeatureSet
13093
+ * @static
13094
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13095
+ * @param {number} [length] Message length if known beforehand
13096
+ * @returns {google.protobuf.FeatureSet} FeatureSet
13097
+ * @throws {Error} If the payload is not a reader or valid buffer
13098
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
13099
+ */
13100
+ FeatureSet.decode = function decode(reader, length) {
13101
+ if (!(reader instanceof $Reader))
13102
+ reader = $Reader.create(reader);
13103
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet();
13104
+ while (reader.pos < end) {
13105
+ var tag = reader.uint32();
13106
+ switch (tag >>> 3) {
13107
+ case 1: {
13108
+ message.fieldPresence = reader.int32();
13109
+ break;
13110
+ }
13111
+ case 2: {
13112
+ message.enumType = reader.int32();
13113
+ break;
13114
+ }
13115
+ case 3: {
13116
+ message.repeatedFieldEncoding = reader.int32();
13117
+ break;
13118
+ }
13119
+ case 4: {
13120
+ message.utf8Validation = reader.int32();
13121
+ break;
13122
+ }
13123
+ case 5: {
13124
+ message.messageEncoding = reader.int32();
13125
+ break;
13126
+ }
13127
+ case 6: {
13128
+ message.jsonFormat = reader.int32();
13129
+ break;
13130
+ }
13131
+ default:
13132
+ reader.skipType(tag & 7);
13133
+ break;
13134
+ }
13135
+ }
13136
+ return message;
13137
+ };
13138
+
13139
+ /**
13140
+ * Decodes a FeatureSet message from the specified reader or buffer, length delimited.
13141
+ * @function decodeDelimited
13142
+ * @memberof google.protobuf.FeatureSet
13143
+ * @static
13144
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13145
+ * @returns {google.protobuf.FeatureSet} FeatureSet
13146
+ * @throws {Error} If the payload is not a reader or valid buffer
13147
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
13148
+ */
13149
+ FeatureSet.decodeDelimited = function decodeDelimited(reader) {
13150
+ if (!(reader instanceof $Reader))
13151
+ reader = new $Reader(reader);
13152
+ return this.decode(reader, reader.uint32());
13153
+ };
13154
+
13155
+ /**
13156
+ * Verifies a FeatureSet message.
13157
+ * @function verify
13158
+ * @memberof google.protobuf.FeatureSet
13159
+ * @static
13160
+ * @param {Object.<string,*>} message Plain object to verify
13161
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
13162
+ */
13163
+ FeatureSet.verify = function verify(message) {
13164
+ if (typeof message !== "object" || message === null)
13165
+ return "object expected";
13166
+ if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence"))
13167
+ switch (message.fieldPresence) {
13168
+ default:
13169
+ return "fieldPresence: enum value expected";
13170
+ case 0:
13171
+ case 1:
13172
+ case 2:
13173
+ case 3:
13174
+ break;
13175
+ }
13176
+ if (message.enumType != null && message.hasOwnProperty("enumType"))
13177
+ switch (message.enumType) {
13178
+ default:
13179
+ return "enumType: enum value expected";
13180
+ case 0:
13181
+ case 1:
13182
+ case 2:
13183
+ break;
13184
+ }
13185
+ if (message.repeatedFieldEncoding != null && message.hasOwnProperty("repeatedFieldEncoding"))
13186
+ switch (message.repeatedFieldEncoding) {
13187
+ default:
13188
+ return "repeatedFieldEncoding: enum value expected";
13189
+ case 0:
13190
+ case 1:
13191
+ case 2:
13192
+ break;
13193
+ }
13194
+ if (message.utf8Validation != null && message.hasOwnProperty("utf8Validation"))
13195
+ switch (message.utf8Validation) {
13196
+ default:
13197
+ return "utf8Validation: enum value expected";
13198
+ case 0:
13199
+ case 2:
13200
+ case 3:
13201
+ break;
13202
+ }
13203
+ if (message.messageEncoding != null && message.hasOwnProperty("messageEncoding"))
13204
+ switch (message.messageEncoding) {
13205
+ default:
13206
+ return "messageEncoding: enum value expected";
13207
+ case 0:
13208
+ case 1:
13209
+ case 2:
13210
+ break;
13211
+ }
13212
+ if (message.jsonFormat != null && message.hasOwnProperty("jsonFormat"))
13213
+ switch (message.jsonFormat) {
13214
+ default:
13215
+ return "jsonFormat: enum value expected";
13216
+ case 0:
13217
+ case 1:
13218
+ case 2:
13219
+ break;
13220
+ }
13221
+ return null;
13222
+ };
13223
+
13224
+ /**
13225
+ * Creates a FeatureSet message from a plain object. Also converts values to their respective internal types.
13226
+ * @function fromObject
13227
+ * @memberof google.protobuf.FeatureSet
13228
+ * @static
13229
+ * @param {Object.<string,*>} object Plain object
13230
+ * @returns {google.protobuf.FeatureSet} FeatureSet
13231
+ */
13232
+ FeatureSet.fromObject = function fromObject(object) {
13233
+ if (object instanceof $root.google.protobuf.FeatureSet)
13234
+ return object;
13235
+ var message = new $root.google.protobuf.FeatureSet();
13236
+ switch (object.fieldPresence) {
13237
+ default:
13238
+ if (typeof object.fieldPresence === "number") {
13239
+ message.fieldPresence = object.fieldPresence;
13240
+ break;
13241
+ }
13242
+ break;
13243
+ case "FIELD_PRESENCE_UNKNOWN":
13244
+ case 0:
13245
+ message.fieldPresence = 0;
13246
+ break;
13247
+ case "EXPLICIT":
13248
+ case 1:
13249
+ message.fieldPresence = 1;
13250
+ break;
13251
+ case "IMPLICIT":
13252
+ case 2:
13253
+ message.fieldPresence = 2;
13254
+ break;
13255
+ case "LEGACY_REQUIRED":
13256
+ case 3:
13257
+ message.fieldPresence = 3;
13258
+ break;
13259
+ }
13260
+ switch (object.enumType) {
13261
+ default:
13262
+ if (typeof object.enumType === "number") {
13263
+ message.enumType = object.enumType;
13264
+ break;
13265
+ }
13266
+ break;
13267
+ case "ENUM_TYPE_UNKNOWN":
13268
+ case 0:
13269
+ message.enumType = 0;
13270
+ break;
13271
+ case "OPEN":
13272
+ case 1:
13273
+ message.enumType = 1;
13274
+ break;
13275
+ case "CLOSED":
13276
+ case 2:
13277
+ message.enumType = 2;
13278
+ break;
13279
+ }
13280
+ switch (object.repeatedFieldEncoding) {
13281
+ default:
13282
+ if (typeof object.repeatedFieldEncoding === "number") {
13283
+ message.repeatedFieldEncoding = object.repeatedFieldEncoding;
13284
+ break;
13285
+ }
13286
+ break;
13287
+ case "REPEATED_FIELD_ENCODING_UNKNOWN":
13288
+ case 0:
13289
+ message.repeatedFieldEncoding = 0;
13290
+ break;
13291
+ case "PACKED":
13292
+ case 1:
13293
+ message.repeatedFieldEncoding = 1;
13294
+ break;
13295
+ case "EXPANDED":
13296
+ case 2:
13297
+ message.repeatedFieldEncoding = 2;
13298
+ break;
13299
+ }
13300
+ switch (object.utf8Validation) {
13301
+ default:
13302
+ if (typeof object.utf8Validation === "number") {
13303
+ message.utf8Validation = object.utf8Validation;
13304
+ break;
13305
+ }
13306
+ break;
13307
+ case "UTF8_VALIDATION_UNKNOWN":
13308
+ case 0:
13309
+ message.utf8Validation = 0;
13310
+ break;
13311
+ case "VERIFY":
13312
+ case 2:
13313
+ message.utf8Validation = 2;
13314
+ break;
13315
+ case "NONE":
13316
+ case 3:
13317
+ message.utf8Validation = 3;
13318
+ break;
13319
+ }
13320
+ switch (object.messageEncoding) {
13321
+ default:
13322
+ if (typeof object.messageEncoding === "number") {
13323
+ message.messageEncoding = object.messageEncoding;
13324
+ break;
13325
+ }
13326
+ break;
13327
+ case "MESSAGE_ENCODING_UNKNOWN":
13328
+ case 0:
13329
+ message.messageEncoding = 0;
13330
+ break;
13331
+ case "LENGTH_PREFIXED":
13332
+ case 1:
13333
+ message.messageEncoding = 1;
13334
+ break;
13335
+ case "DELIMITED":
13336
+ case 2:
13337
+ message.messageEncoding = 2;
13338
+ break;
13339
+ }
13340
+ switch (object.jsonFormat) {
13341
+ default:
13342
+ if (typeof object.jsonFormat === "number") {
13343
+ message.jsonFormat = object.jsonFormat;
13344
+ break;
13345
+ }
13346
+ break;
13347
+ case "JSON_FORMAT_UNKNOWN":
13348
+ case 0:
13349
+ message.jsonFormat = 0;
13350
+ break;
13351
+ case "ALLOW":
13352
+ case 1:
13353
+ message.jsonFormat = 1;
13354
+ break;
13355
+ case "LEGACY_BEST_EFFORT":
13356
+ case 2:
13357
+ message.jsonFormat = 2;
13358
+ break;
13359
+ }
13360
+ return message;
13361
+ };
13362
+
13363
+ /**
13364
+ * Creates a plain object from a FeatureSet message. Also converts values to other types if specified.
13365
+ * @function toObject
13366
+ * @memberof google.protobuf.FeatureSet
13367
+ * @static
13368
+ * @param {google.protobuf.FeatureSet} message FeatureSet
13369
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
13370
+ * @returns {Object.<string,*>} Plain object
13371
+ */
13372
+ FeatureSet.toObject = function toObject(message, options) {
13373
+ if (!options)
13374
+ options = {};
13375
+ var object = {};
13376
+ if (options.defaults) {
13377
+ object.fieldPresence = options.enums === String ? "FIELD_PRESENCE_UNKNOWN" : 0;
13378
+ object.enumType = options.enums === String ? "ENUM_TYPE_UNKNOWN" : 0;
13379
+ object.repeatedFieldEncoding = options.enums === String ? "REPEATED_FIELD_ENCODING_UNKNOWN" : 0;
13380
+ object.utf8Validation = options.enums === String ? "UTF8_VALIDATION_UNKNOWN" : 0;
13381
+ object.messageEncoding = options.enums === String ? "MESSAGE_ENCODING_UNKNOWN" : 0;
13382
+ object.jsonFormat = options.enums === String ? "JSON_FORMAT_UNKNOWN" : 0;
13383
+ }
13384
+ if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence"))
13385
+ object.fieldPresence = options.enums === String ? $root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence] === undefined ? message.fieldPresence : $root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence] : message.fieldPresence;
13386
+ if (message.enumType != null && message.hasOwnProperty("enumType"))
13387
+ object.enumType = options.enums === String ? $root.google.protobuf.FeatureSet.EnumType[message.enumType] === undefined ? message.enumType : $root.google.protobuf.FeatureSet.EnumType[message.enumType] : message.enumType;
13388
+ if (message.repeatedFieldEncoding != null && message.hasOwnProperty("repeatedFieldEncoding"))
13389
+ object.repeatedFieldEncoding = options.enums === String ? $root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding] === undefined ? message.repeatedFieldEncoding : $root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding] : message.repeatedFieldEncoding;
13390
+ if (message.utf8Validation != null && message.hasOwnProperty("utf8Validation"))
13391
+ object.utf8Validation = options.enums === String ? $root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation] === undefined ? message.utf8Validation : $root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation] : message.utf8Validation;
13392
+ if (message.messageEncoding != null && message.hasOwnProperty("messageEncoding"))
13393
+ object.messageEncoding = options.enums === String ? $root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding] === undefined ? message.messageEncoding : $root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding] : message.messageEncoding;
13394
+ if (message.jsonFormat != null && message.hasOwnProperty("jsonFormat"))
13395
+ object.jsonFormat = options.enums === String ? $root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat] === undefined ? message.jsonFormat : $root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat] : message.jsonFormat;
13396
+ return object;
13397
+ };
13398
+
13399
+ /**
13400
+ * Converts this FeatureSet to JSON.
13401
+ * @function toJSON
13402
+ * @memberof google.protobuf.FeatureSet
13403
+ * @instance
13404
+ * @returns {Object.<string,*>} JSON object
13405
+ */
13406
+ FeatureSet.prototype.toJSON = function toJSON() {
13407
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
13408
+ };
13409
+
13410
+ /**
13411
+ * Gets the default type url for FeatureSet
13412
+ * @function getTypeUrl
13413
+ * @memberof google.protobuf.FeatureSet
13414
+ * @static
13415
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
13416
+ * @returns {string} The default type url
13417
+ */
13418
+ FeatureSet.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
13419
+ if (typeUrlPrefix === undefined) {
13420
+ typeUrlPrefix = "type.googleapis.com";
13421
+ }
13422
+ return typeUrlPrefix + "/google.protobuf.FeatureSet";
13423
+ };
13424
+
13425
+ /**
13426
+ * FieldPresence enum.
13427
+ * @name google.protobuf.FeatureSet.FieldPresence
13428
+ * @enum {number}
13429
+ * @property {number} FIELD_PRESENCE_UNKNOWN=0 FIELD_PRESENCE_UNKNOWN value
13430
+ * @property {number} EXPLICIT=1 EXPLICIT value
13431
+ * @property {number} IMPLICIT=2 IMPLICIT value
13432
+ * @property {number} LEGACY_REQUIRED=3 LEGACY_REQUIRED value
13433
+ */
13434
+ FeatureSet.FieldPresence = (function() {
13435
+ var valuesById = {}, values = Object.create(valuesById);
13436
+ values[valuesById[0] = "FIELD_PRESENCE_UNKNOWN"] = 0;
13437
+ values[valuesById[1] = "EXPLICIT"] = 1;
13438
+ values[valuesById[2] = "IMPLICIT"] = 2;
13439
+ values[valuesById[3] = "LEGACY_REQUIRED"] = 3;
13440
+ return values;
13441
+ })();
13442
+
13443
+ /**
13444
+ * EnumType enum.
13445
+ * @name google.protobuf.FeatureSet.EnumType
13446
+ * @enum {number}
13447
+ * @property {number} ENUM_TYPE_UNKNOWN=0 ENUM_TYPE_UNKNOWN value
13448
+ * @property {number} OPEN=1 OPEN value
13449
+ * @property {number} CLOSED=2 CLOSED value
13450
+ */
13451
+ FeatureSet.EnumType = (function() {
13452
+ var valuesById = {}, values = Object.create(valuesById);
13453
+ values[valuesById[0] = "ENUM_TYPE_UNKNOWN"] = 0;
13454
+ values[valuesById[1] = "OPEN"] = 1;
13455
+ values[valuesById[2] = "CLOSED"] = 2;
13456
+ return values;
13457
+ })();
13458
+
13459
+ /**
13460
+ * RepeatedFieldEncoding enum.
13461
+ * @name google.protobuf.FeatureSet.RepeatedFieldEncoding
13462
+ * @enum {number}
13463
+ * @property {number} REPEATED_FIELD_ENCODING_UNKNOWN=0 REPEATED_FIELD_ENCODING_UNKNOWN value
13464
+ * @property {number} PACKED=1 PACKED value
13465
+ * @property {number} EXPANDED=2 EXPANDED value
13466
+ */
13467
+ FeatureSet.RepeatedFieldEncoding = (function() {
13468
+ var valuesById = {}, values = Object.create(valuesById);
13469
+ values[valuesById[0] = "REPEATED_FIELD_ENCODING_UNKNOWN"] = 0;
13470
+ values[valuesById[1] = "PACKED"] = 1;
13471
+ values[valuesById[2] = "EXPANDED"] = 2;
13472
+ return values;
13473
+ })();
13474
+
13475
+ /**
13476
+ * Utf8Validation enum.
13477
+ * @name google.protobuf.FeatureSet.Utf8Validation
13478
+ * @enum {number}
13479
+ * @property {number} UTF8_VALIDATION_UNKNOWN=0 UTF8_VALIDATION_UNKNOWN value
13480
+ * @property {number} VERIFY=2 VERIFY value
13481
+ * @property {number} NONE=3 NONE value
13482
+ */
13483
+ FeatureSet.Utf8Validation = (function() {
13484
+ var valuesById = {}, values = Object.create(valuesById);
13485
+ values[valuesById[0] = "UTF8_VALIDATION_UNKNOWN"] = 0;
13486
+ values[valuesById[2] = "VERIFY"] = 2;
13487
+ values[valuesById[3] = "NONE"] = 3;
13488
+ return values;
13489
+ })();
13490
+
13491
+ /**
13492
+ * MessageEncoding enum.
13493
+ * @name google.protobuf.FeatureSet.MessageEncoding
13494
+ * @enum {number}
13495
+ * @property {number} MESSAGE_ENCODING_UNKNOWN=0 MESSAGE_ENCODING_UNKNOWN value
13496
+ * @property {number} LENGTH_PREFIXED=1 LENGTH_PREFIXED value
13497
+ * @property {number} DELIMITED=2 DELIMITED value
13498
+ */
13499
+ FeatureSet.MessageEncoding = (function() {
13500
+ var valuesById = {}, values = Object.create(valuesById);
13501
+ values[valuesById[0] = "MESSAGE_ENCODING_UNKNOWN"] = 0;
13502
+ values[valuesById[1] = "LENGTH_PREFIXED"] = 1;
13503
+ values[valuesById[2] = "DELIMITED"] = 2;
13504
+ return values;
13505
+ })();
13506
+
13507
+ /**
13508
+ * JsonFormat enum.
13509
+ * @name google.protobuf.FeatureSet.JsonFormat
13510
+ * @enum {number}
13511
+ * @property {number} JSON_FORMAT_UNKNOWN=0 JSON_FORMAT_UNKNOWN value
13512
+ * @property {number} ALLOW=1 ALLOW value
13513
+ * @property {number} LEGACY_BEST_EFFORT=2 LEGACY_BEST_EFFORT value
13514
+ */
13515
+ FeatureSet.JsonFormat = (function() {
13516
+ var valuesById = {}, values = Object.create(valuesById);
13517
+ values[valuesById[0] = "JSON_FORMAT_UNKNOWN"] = 0;
13518
+ values[valuesById[1] = "ALLOW"] = 1;
13519
+ values[valuesById[2] = "LEGACY_BEST_EFFORT"] = 2;
13520
+ return values;
13521
+ })();
13522
+
13523
+ return FeatureSet;
13524
+ })();
13525
+
13526
+ protobuf.FeatureSetDefaults = (function() {
13527
+
13528
+ /**
13529
+ * Properties of a FeatureSetDefaults.
13530
+ * @memberof google.protobuf
13531
+ * @interface IFeatureSetDefaults
13532
+ * @property {Array.<google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault>|null} [defaults] FeatureSetDefaults defaults
13533
+ * @property {google.protobuf.Edition|null} [minimumEdition] FeatureSetDefaults minimumEdition
13534
+ * @property {google.protobuf.Edition|null} [maximumEdition] FeatureSetDefaults maximumEdition
13535
+ */
13536
+
13537
+ /**
13538
+ * Constructs a new FeatureSetDefaults.
13539
+ * @memberof google.protobuf
13540
+ * @classdesc Represents a FeatureSetDefaults.
13541
+ * @implements IFeatureSetDefaults
13542
+ * @constructor
13543
+ * @param {google.protobuf.IFeatureSetDefaults=} [properties] Properties to set
13544
+ */
13545
+ function FeatureSetDefaults(properties) {
13546
+ this.defaults = [];
13547
+ if (properties)
13548
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
13549
+ if (properties[keys[i]] != null)
13550
+ this[keys[i]] = properties[keys[i]];
13551
+ }
13552
+
13553
+ /**
13554
+ * FeatureSetDefaults defaults.
13555
+ * @member {Array.<google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault>} defaults
13556
+ * @memberof google.protobuf.FeatureSetDefaults
13557
+ * @instance
13558
+ */
13559
+ FeatureSetDefaults.prototype.defaults = $util.emptyArray;
13560
+
13561
+ /**
13562
+ * FeatureSetDefaults minimumEdition.
13563
+ * @member {google.protobuf.Edition} minimumEdition
13564
+ * @memberof google.protobuf.FeatureSetDefaults
13565
+ * @instance
13566
+ */
13567
+ FeatureSetDefaults.prototype.minimumEdition = 0;
13568
+
13569
+ /**
13570
+ * FeatureSetDefaults maximumEdition.
13571
+ * @member {google.protobuf.Edition} maximumEdition
13572
+ * @memberof google.protobuf.FeatureSetDefaults
13573
+ * @instance
13574
+ */
13575
+ FeatureSetDefaults.prototype.maximumEdition = 0;
13576
+
13577
+ /**
13578
+ * Creates a new FeatureSetDefaults instance using the specified properties.
13579
+ * @function create
13580
+ * @memberof google.protobuf.FeatureSetDefaults
13581
+ * @static
13582
+ * @param {google.protobuf.IFeatureSetDefaults=} [properties] Properties to set
13583
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults instance
13584
+ */
13585
+ FeatureSetDefaults.create = function create(properties) {
13586
+ return new FeatureSetDefaults(properties);
13587
+ };
13588
+
13589
+ /**
13590
+ * Encodes the specified FeatureSetDefaults message. Does not implicitly {@link google.protobuf.FeatureSetDefaults.verify|verify} messages.
13591
+ * @function encode
13592
+ * @memberof google.protobuf.FeatureSetDefaults
13593
+ * @static
13594
+ * @param {google.protobuf.IFeatureSetDefaults} message FeatureSetDefaults message or plain object to encode
13595
+ * @param {$protobuf.Writer} [writer] Writer to encode to
13596
+ * @returns {$protobuf.Writer} Writer
13597
+ */
13598
+ FeatureSetDefaults.encode = function encode(message, writer) {
13599
+ if (!writer)
13600
+ writer = $Writer.create();
13601
+ if (message.defaults != null && message.defaults.length)
13602
+ for (var i = 0; i < message.defaults.length; ++i)
13603
+ $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.encode(message.defaults[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
13604
+ if (message.minimumEdition != null && Object.hasOwnProperty.call(message, "minimumEdition"))
13605
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.minimumEdition);
13606
+ if (message.maximumEdition != null && Object.hasOwnProperty.call(message, "maximumEdition"))
13607
+ writer.uint32(/* id 5, wireType 0 =*/40).int32(message.maximumEdition);
13608
+ return writer;
13609
+ };
13610
+
13611
+ /**
13612
+ * Encodes the specified FeatureSetDefaults message, length delimited. Does not implicitly {@link google.protobuf.FeatureSetDefaults.verify|verify} messages.
13613
+ * @function encodeDelimited
13614
+ * @memberof google.protobuf.FeatureSetDefaults
13615
+ * @static
13616
+ * @param {google.protobuf.IFeatureSetDefaults} message FeatureSetDefaults message or plain object to encode
13617
+ * @param {$protobuf.Writer} [writer] Writer to encode to
13618
+ * @returns {$protobuf.Writer} Writer
13619
+ */
13620
+ FeatureSetDefaults.encodeDelimited = function encodeDelimited(message, writer) {
13621
+ return this.encode(message, writer).ldelim();
13622
+ };
13623
+
13624
+ /**
13625
+ * Decodes a FeatureSetDefaults message from the specified reader or buffer.
13626
+ * @function decode
13627
+ * @memberof google.protobuf.FeatureSetDefaults
13628
+ * @static
13629
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13630
+ * @param {number} [length] Message length if known beforehand
13631
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults
13632
+ * @throws {Error} If the payload is not a reader or valid buffer
13633
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
13634
+ */
13635
+ FeatureSetDefaults.decode = function decode(reader, length) {
13636
+ if (!(reader instanceof $Reader))
13637
+ reader = $Reader.create(reader);
13638
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults();
13639
+ while (reader.pos < end) {
13640
+ var tag = reader.uint32();
13641
+ switch (tag >>> 3) {
13642
+ case 1: {
13643
+ if (!(message.defaults && message.defaults.length))
13644
+ message.defaults = [];
13645
+ message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32()));
13646
+ break;
13647
+ }
13648
+ case 4: {
13649
+ message.minimumEdition = reader.int32();
13650
+ break;
13651
+ }
13652
+ case 5: {
13653
+ message.maximumEdition = reader.int32();
13654
+ break;
13655
+ }
13656
+ default:
13657
+ reader.skipType(tag & 7);
13658
+ break;
13659
+ }
13660
+ }
13661
+ return message;
13662
+ };
13663
+
13664
+ /**
13665
+ * Decodes a FeatureSetDefaults message from the specified reader or buffer, length delimited.
13666
+ * @function decodeDelimited
13667
+ * @memberof google.protobuf.FeatureSetDefaults
13668
+ * @static
13669
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13670
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults
13671
+ * @throws {Error} If the payload is not a reader or valid buffer
13672
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
13673
+ */
13674
+ FeatureSetDefaults.decodeDelimited = function decodeDelimited(reader) {
13675
+ if (!(reader instanceof $Reader))
13676
+ reader = new $Reader(reader);
13677
+ return this.decode(reader, reader.uint32());
13678
+ };
13679
+
13680
+ /**
13681
+ * Verifies a FeatureSetDefaults message.
13682
+ * @function verify
13683
+ * @memberof google.protobuf.FeatureSetDefaults
13684
+ * @static
13685
+ * @param {Object.<string,*>} message Plain object to verify
13686
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
13687
+ */
13688
+ FeatureSetDefaults.verify = function verify(message) {
13689
+ if (typeof message !== "object" || message === null)
13690
+ return "object expected";
13691
+ if (message.defaults != null && message.hasOwnProperty("defaults")) {
13692
+ if (!Array.isArray(message.defaults))
13693
+ return "defaults: array expected";
13694
+ for (var i = 0; i < message.defaults.length; ++i) {
13695
+ var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]);
13696
+ if (error)
13697
+ return "defaults." + error;
13698
+ }
13699
+ }
13700
+ if (message.minimumEdition != null && message.hasOwnProperty("minimumEdition"))
13701
+ switch (message.minimumEdition) {
13702
+ default:
13703
+ return "minimumEdition: enum value expected";
13704
+ case 0:
13705
+ case 998:
13706
+ case 999:
13707
+ case 1000:
13708
+ case 1001:
13709
+ case 1:
13710
+ case 2:
13711
+ case 99997:
13712
+ case 99998:
13713
+ case 99999:
13714
+ case 2147483647:
13715
+ break;
13716
+ }
13717
+ if (message.maximumEdition != null && message.hasOwnProperty("maximumEdition"))
13718
+ switch (message.maximumEdition) {
13719
+ default:
13720
+ return "maximumEdition: enum value expected";
13721
+ case 0:
13722
+ case 998:
13723
+ case 999:
13724
+ case 1000:
13725
+ case 1001:
13726
+ case 1:
13727
+ case 2:
13728
+ case 99997:
13729
+ case 99998:
13730
+ case 99999:
13731
+ case 2147483647:
13732
+ break;
13733
+ }
13734
+ return null;
13735
+ };
13736
+
13737
+ /**
13738
+ * Creates a FeatureSetDefaults message from a plain object. Also converts values to their respective internal types.
13739
+ * @function fromObject
13740
+ * @memberof google.protobuf.FeatureSetDefaults
13741
+ * @static
13742
+ * @param {Object.<string,*>} object Plain object
13743
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults
13744
+ */
13745
+ FeatureSetDefaults.fromObject = function fromObject(object) {
13746
+ if (object instanceof $root.google.protobuf.FeatureSetDefaults)
13747
+ return object;
13748
+ var message = new $root.google.protobuf.FeatureSetDefaults();
13749
+ if (object.defaults) {
13750
+ if (!Array.isArray(object.defaults))
13751
+ throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: array expected");
13752
+ message.defaults = [];
13753
+ for (var i = 0; i < object.defaults.length; ++i) {
13754
+ if (typeof object.defaults[i] !== "object")
13755
+ throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected");
13756
+ message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]);
13757
+ }
13758
+ }
13759
+ switch (object.minimumEdition) {
13760
+ default:
13761
+ if (typeof object.minimumEdition === "number") {
13762
+ message.minimumEdition = object.minimumEdition;
13763
+ break;
13764
+ }
13765
+ break;
13766
+ case "EDITION_UNKNOWN":
13767
+ case 0:
13768
+ message.minimumEdition = 0;
13769
+ break;
13770
+ case "EDITION_PROTO2":
13771
+ case 998:
13772
+ message.minimumEdition = 998;
13773
+ break;
13774
+ case "EDITION_PROTO3":
13775
+ case 999:
13776
+ message.minimumEdition = 999;
13777
+ break;
13778
+ case "EDITION_2023":
13779
+ case 1000:
13780
+ message.minimumEdition = 1000;
13781
+ break;
13782
+ case "EDITION_2024":
13783
+ case 1001:
13784
+ message.minimumEdition = 1001;
13785
+ break;
13786
+ case "EDITION_1_TEST_ONLY":
13787
+ case 1:
13788
+ message.minimumEdition = 1;
13789
+ break;
13790
+ case "EDITION_2_TEST_ONLY":
13791
+ case 2:
13792
+ message.minimumEdition = 2;
13793
+ break;
13794
+ case "EDITION_99997_TEST_ONLY":
13795
+ case 99997:
13796
+ message.minimumEdition = 99997;
13797
+ break;
13798
+ case "EDITION_99998_TEST_ONLY":
13799
+ case 99998:
13800
+ message.minimumEdition = 99998;
13801
+ break;
13802
+ case "EDITION_99999_TEST_ONLY":
13803
+ case 99999:
13804
+ message.minimumEdition = 99999;
13805
+ break;
13806
+ case "EDITION_MAX":
13807
+ case 2147483647:
13808
+ message.minimumEdition = 2147483647;
13809
+ break;
13810
+ }
13811
+ switch (object.maximumEdition) {
13812
+ default:
13813
+ if (typeof object.maximumEdition === "number") {
13814
+ message.maximumEdition = object.maximumEdition;
13815
+ break;
13816
+ }
13817
+ break;
13818
+ case "EDITION_UNKNOWN":
13819
+ case 0:
13820
+ message.maximumEdition = 0;
13821
+ break;
13822
+ case "EDITION_PROTO2":
13823
+ case 998:
13824
+ message.maximumEdition = 998;
13825
+ break;
13826
+ case "EDITION_PROTO3":
13827
+ case 999:
13828
+ message.maximumEdition = 999;
13829
+ break;
13830
+ case "EDITION_2023":
13831
+ case 1000:
13832
+ message.maximumEdition = 1000;
13833
+ break;
13834
+ case "EDITION_2024":
13835
+ case 1001:
13836
+ message.maximumEdition = 1001;
13837
+ break;
13838
+ case "EDITION_1_TEST_ONLY":
13839
+ case 1:
13840
+ message.maximumEdition = 1;
13841
+ break;
13842
+ case "EDITION_2_TEST_ONLY":
13843
+ case 2:
13844
+ message.maximumEdition = 2;
13845
+ break;
13846
+ case "EDITION_99997_TEST_ONLY":
13847
+ case 99997:
13848
+ message.maximumEdition = 99997;
13849
+ break;
13850
+ case "EDITION_99998_TEST_ONLY":
13851
+ case 99998:
13852
+ message.maximumEdition = 99998;
13853
+ break;
13854
+ case "EDITION_99999_TEST_ONLY":
13855
+ case 99999:
13856
+ message.maximumEdition = 99999;
13857
+ break;
13858
+ case "EDITION_MAX":
13859
+ case 2147483647:
13860
+ message.maximumEdition = 2147483647;
13861
+ break;
13862
+ }
13863
+ return message;
13864
+ };
13865
+
13866
+ /**
13867
+ * Creates a plain object from a FeatureSetDefaults message. Also converts values to other types if specified.
13868
+ * @function toObject
13869
+ * @memberof google.protobuf.FeatureSetDefaults
13870
+ * @static
13871
+ * @param {google.protobuf.FeatureSetDefaults} message FeatureSetDefaults
13872
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
13873
+ * @returns {Object.<string,*>} Plain object
13874
+ */
13875
+ FeatureSetDefaults.toObject = function toObject(message, options) {
13876
+ if (!options)
13877
+ options = {};
13878
+ var object = {};
13879
+ if (options.arrays || options.defaults)
13880
+ object.defaults = [];
13881
+ if (options.defaults) {
13882
+ object.minimumEdition = options.enums === String ? "EDITION_UNKNOWN" : 0;
13883
+ object.maximumEdition = options.enums === String ? "EDITION_UNKNOWN" : 0;
13884
+ }
13885
+ if (message.defaults && message.defaults.length) {
13886
+ object.defaults = [];
13887
+ for (var j = 0; j < message.defaults.length; ++j)
13888
+ object.defaults[j] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.toObject(message.defaults[j], options);
13889
+ }
13890
+ if (message.minimumEdition != null && message.hasOwnProperty("minimumEdition"))
13891
+ object.minimumEdition = options.enums === String ? $root.google.protobuf.Edition[message.minimumEdition] === undefined ? message.minimumEdition : $root.google.protobuf.Edition[message.minimumEdition] : message.minimumEdition;
13892
+ if (message.maximumEdition != null && message.hasOwnProperty("maximumEdition"))
13893
+ object.maximumEdition = options.enums === String ? $root.google.protobuf.Edition[message.maximumEdition] === undefined ? message.maximumEdition : $root.google.protobuf.Edition[message.maximumEdition] : message.maximumEdition;
13894
+ return object;
13895
+ };
13896
+
13897
+ /**
13898
+ * Converts this FeatureSetDefaults to JSON.
11596
13899
  * @function toJSON
11597
- * @memberof google.protobuf.UninterpretedOption
13900
+ * @memberof google.protobuf.FeatureSetDefaults
11598
13901
  * @instance
11599
13902
  * @returns {Object.<string,*>} JSON object
11600
13903
  */
11601
- UninterpretedOption.prototype.toJSON = function toJSON() {
13904
+ FeatureSetDefaults.prototype.toJSON = function toJSON() {
11602
13905
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
11603
13906
  };
11604
13907
 
11605
13908
  /**
11606
- * Gets the default type url for UninterpretedOption
13909
+ * Gets the default type url for FeatureSetDefaults
11607
13910
  * @function getTypeUrl
11608
- * @memberof google.protobuf.UninterpretedOption
13911
+ * @memberof google.protobuf.FeatureSetDefaults
11609
13912
  * @static
11610
13913
  * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
11611
13914
  * @returns {string} The default type url
11612
13915
  */
11613
- UninterpretedOption.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
13916
+ FeatureSetDefaults.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
11614
13917
  if (typeUrlPrefix === undefined) {
11615
13918
  typeUrlPrefix = "type.googleapis.com";
11616
13919
  }
11617
- return typeUrlPrefix + "/google.protobuf.UninterpretedOption";
13920
+ return typeUrlPrefix + "/google.protobuf.FeatureSetDefaults";
11618
13921
  };
11619
13922
 
11620
- UninterpretedOption.NamePart = (function() {
13923
+ FeatureSetDefaults.FeatureSetEditionDefault = (function() {
11621
13924
 
11622
13925
  /**
11623
- * Properties of a NamePart.
11624
- * @memberof google.protobuf.UninterpretedOption
11625
- * @interface INamePart
11626
- * @property {string} namePart NamePart namePart
11627
- * @property {boolean} isExtension NamePart isExtension
13926
+ * Properties of a FeatureSetEditionDefault.
13927
+ * @memberof google.protobuf.FeatureSetDefaults
13928
+ * @interface IFeatureSetEditionDefault
13929
+ * @property {google.protobuf.Edition|null} [edition] FeatureSetEditionDefault edition
13930
+ * @property {google.protobuf.IFeatureSet|null} [features] FeatureSetEditionDefault features
11628
13931
  */
11629
13932
 
11630
13933
  /**
11631
- * Constructs a new NamePart.
11632
- * @memberof google.protobuf.UninterpretedOption
11633
- * @classdesc Represents a NamePart.
11634
- * @implements INamePart
13934
+ * Constructs a new FeatureSetEditionDefault.
13935
+ * @memberof google.protobuf.FeatureSetDefaults
13936
+ * @classdesc Represents a FeatureSetEditionDefault.
13937
+ * @implements IFeatureSetEditionDefault
11635
13938
  * @constructor
11636
- * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
13939
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault=} [properties] Properties to set
11637
13940
  */
11638
- function NamePart(properties) {
13941
+ function FeatureSetEditionDefault(properties) {
11639
13942
  if (properties)
11640
13943
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
11641
13944
  if (properties[keys[i]] != null)
@@ -11643,87 +13946,89 @@
11643
13946
  }
11644
13947
 
11645
13948
  /**
11646
- * NamePart namePart.
11647
- * @member {string} namePart
11648
- * @memberof google.protobuf.UninterpretedOption.NamePart
13949
+ * FeatureSetEditionDefault edition.
13950
+ * @member {google.protobuf.Edition} edition
13951
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11649
13952
  * @instance
11650
13953
  */
11651
- NamePart.prototype.namePart = "";
13954
+ FeatureSetEditionDefault.prototype.edition = 0;
11652
13955
 
11653
13956
  /**
11654
- * NamePart isExtension.
11655
- * @member {boolean} isExtension
11656
- * @memberof google.protobuf.UninterpretedOption.NamePart
13957
+ * FeatureSetEditionDefault features.
13958
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
13959
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11657
13960
  * @instance
11658
13961
  */
11659
- NamePart.prototype.isExtension = false;
13962
+ FeatureSetEditionDefault.prototype.features = null;
11660
13963
 
11661
13964
  /**
11662
- * Creates a new NamePart instance using the specified properties.
13965
+ * Creates a new FeatureSetEditionDefault instance using the specified properties.
11663
13966
  * @function create
11664
- * @memberof google.protobuf.UninterpretedOption.NamePart
13967
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11665
13968
  * @static
11666
- * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
11667
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance
13969
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault=} [properties] Properties to set
13970
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault instance
11668
13971
  */
11669
- NamePart.create = function create(properties) {
11670
- return new NamePart(properties);
13972
+ FeatureSetEditionDefault.create = function create(properties) {
13973
+ return new FeatureSetEditionDefault(properties);
11671
13974
  };
11672
13975
 
11673
13976
  /**
11674
- * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
13977
+ * Encodes the specified FeatureSetEditionDefault message. Does not implicitly {@link google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify|verify} messages.
11675
13978
  * @function encode
11676
- * @memberof google.protobuf.UninterpretedOption.NamePart
13979
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11677
13980
  * @static
11678
- * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
13981
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault} message FeatureSetEditionDefault message or plain object to encode
11679
13982
  * @param {$protobuf.Writer} [writer] Writer to encode to
11680
13983
  * @returns {$protobuf.Writer} Writer
11681
13984
  */
11682
- NamePart.encode = function encode(message, writer) {
13985
+ FeatureSetEditionDefault.encode = function encode(message, writer) {
11683
13986
  if (!writer)
11684
13987
  writer = $Writer.create();
11685
- writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart);
11686
- writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension);
13988
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
13989
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
13990
+ if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
13991
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.edition);
11687
13992
  return writer;
11688
13993
  };
11689
13994
 
11690
13995
  /**
11691
- * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
13996
+ * Encodes the specified FeatureSetEditionDefault message, length delimited. Does not implicitly {@link google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify|verify} messages.
11692
13997
  * @function encodeDelimited
11693
- * @memberof google.protobuf.UninterpretedOption.NamePart
13998
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11694
13999
  * @static
11695
- * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
14000
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault} message FeatureSetEditionDefault message or plain object to encode
11696
14001
  * @param {$protobuf.Writer} [writer] Writer to encode to
11697
14002
  * @returns {$protobuf.Writer} Writer
11698
14003
  */
11699
- NamePart.encodeDelimited = function encodeDelimited(message, writer) {
14004
+ FeatureSetEditionDefault.encodeDelimited = function encodeDelimited(message, writer) {
11700
14005
  return this.encode(message, writer).ldelim();
11701
14006
  };
11702
14007
 
11703
14008
  /**
11704
- * Decodes a NamePart message from the specified reader or buffer.
14009
+ * Decodes a FeatureSetEditionDefault message from the specified reader or buffer.
11705
14010
  * @function decode
11706
- * @memberof google.protobuf.UninterpretedOption.NamePart
14011
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11707
14012
  * @static
11708
14013
  * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11709
14014
  * @param {number} [length] Message length if known beforehand
11710
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
14015
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault
11711
14016
  * @throws {Error} If the payload is not a reader or valid buffer
11712
14017
  * @throws {$protobuf.util.ProtocolError} If required fields are missing
11713
14018
  */
11714
- NamePart.decode = function decode(reader, length) {
14019
+ FeatureSetEditionDefault.decode = function decode(reader, length) {
11715
14020
  if (!(reader instanceof $Reader))
11716
14021
  reader = $Reader.create(reader);
11717
- var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart();
14022
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault();
11718
14023
  while (reader.pos < end) {
11719
14024
  var tag = reader.uint32();
11720
14025
  switch (tag >>> 3) {
11721
- case 1: {
11722
- message.namePart = reader.string();
14026
+ case 3: {
14027
+ message.edition = reader.int32();
11723
14028
  break;
11724
14029
  }
11725
14030
  case 2: {
11726
- message.isExtension = reader.bool();
14031
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
11727
14032
  break;
11728
14033
  }
11729
14034
  default:
@@ -11731,120 +14036,187 @@
11731
14036
  break;
11732
14037
  }
11733
14038
  }
11734
- if (!message.hasOwnProperty("namePart"))
11735
- throw $util.ProtocolError("missing required 'namePart'", { instance: message });
11736
- if (!message.hasOwnProperty("isExtension"))
11737
- throw $util.ProtocolError("missing required 'isExtension'", { instance: message });
11738
14039
  return message;
11739
14040
  };
11740
14041
 
11741
14042
  /**
11742
- * Decodes a NamePart message from the specified reader or buffer, length delimited.
14043
+ * Decodes a FeatureSetEditionDefault message from the specified reader or buffer, length delimited.
11743
14044
  * @function decodeDelimited
11744
- * @memberof google.protobuf.UninterpretedOption.NamePart
14045
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11745
14046
  * @static
11746
14047
  * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11747
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
14048
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault
11748
14049
  * @throws {Error} If the payload is not a reader or valid buffer
11749
14050
  * @throws {$protobuf.util.ProtocolError} If required fields are missing
11750
14051
  */
11751
- NamePart.decodeDelimited = function decodeDelimited(reader) {
14052
+ FeatureSetEditionDefault.decodeDelimited = function decodeDelimited(reader) {
11752
14053
  if (!(reader instanceof $Reader))
11753
14054
  reader = new $Reader(reader);
11754
14055
  return this.decode(reader, reader.uint32());
11755
14056
  };
11756
14057
 
11757
14058
  /**
11758
- * Verifies a NamePart message.
14059
+ * Verifies a FeatureSetEditionDefault message.
11759
14060
  * @function verify
11760
- * @memberof google.protobuf.UninterpretedOption.NamePart
14061
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11761
14062
  * @static
11762
14063
  * @param {Object.<string,*>} message Plain object to verify
11763
14064
  * @returns {string|null} `null` if valid, otherwise the reason why it is not
11764
14065
  */
11765
- NamePart.verify = function verify(message) {
14066
+ FeatureSetEditionDefault.verify = function verify(message) {
11766
14067
  if (typeof message !== "object" || message === null)
11767
14068
  return "object expected";
11768
- if (!$util.isString(message.namePart))
11769
- return "namePart: string expected";
11770
- if (typeof message.isExtension !== "boolean")
11771
- return "isExtension: boolean expected";
14069
+ if (message.edition != null && message.hasOwnProperty("edition"))
14070
+ switch (message.edition) {
14071
+ default:
14072
+ return "edition: enum value expected";
14073
+ case 0:
14074
+ case 998:
14075
+ case 999:
14076
+ case 1000:
14077
+ case 1001:
14078
+ case 1:
14079
+ case 2:
14080
+ case 99997:
14081
+ case 99998:
14082
+ case 99999:
14083
+ case 2147483647:
14084
+ break;
14085
+ }
14086
+ if (message.features != null && message.hasOwnProperty("features")) {
14087
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
14088
+ if (error)
14089
+ return "features." + error;
14090
+ }
11772
14091
  return null;
11773
14092
  };
11774
14093
 
11775
14094
  /**
11776
- * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
14095
+ * Creates a FeatureSetEditionDefault message from a plain object. Also converts values to their respective internal types.
11777
14096
  * @function fromObject
11778
- * @memberof google.protobuf.UninterpretedOption.NamePart
14097
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11779
14098
  * @static
11780
14099
  * @param {Object.<string,*>} object Plain object
11781
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
14100
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault
11782
14101
  */
11783
- NamePart.fromObject = function fromObject(object) {
11784
- if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart)
14102
+ FeatureSetEditionDefault.fromObject = function fromObject(object) {
14103
+ if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault)
11785
14104
  return object;
11786
- var message = new $root.google.protobuf.UninterpretedOption.NamePart();
11787
- if (object.namePart != null)
11788
- message.namePart = String(object.namePart);
11789
- if (object.isExtension != null)
11790
- message.isExtension = Boolean(object.isExtension);
14105
+ var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault();
14106
+ switch (object.edition) {
14107
+ default:
14108
+ if (typeof object.edition === "number") {
14109
+ message.edition = object.edition;
14110
+ break;
14111
+ }
14112
+ break;
14113
+ case "EDITION_UNKNOWN":
14114
+ case 0:
14115
+ message.edition = 0;
14116
+ break;
14117
+ case "EDITION_PROTO2":
14118
+ case 998:
14119
+ message.edition = 998;
14120
+ break;
14121
+ case "EDITION_PROTO3":
14122
+ case 999:
14123
+ message.edition = 999;
14124
+ break;
14125
+ case "EDITION_2023":
14126
+ case 1000:
14127
+ message.edition = 1000;
14128
+ break;
14129
+ case "EDITION_2024":
14130
+ case 1001:
14131
+ message.edition = 1001;
14132
+ break;
14133
+ case "EDITION_1_TEST_ONLY":
14134
+ case 1:
14135
+ message.edition = 1;
14136
+ break;
14137
+ case "EDITION_2_TEST_ONLY":
14138
+ case 2:
14139
+ message.edition = 2;
14140
+ break;
14141
+ case "EDITION_99997_TEST_ONLY":
14142
+ case 99997:
14143
+ message.edition = 99997;
14144
+ break;
14145
+ case "EDITION_99998_TEST_ONLY":
14146
+ case 99998:
14147
+ message.edition = 99998;
14148
+ break;
14149
+ case "EDITION_99999_TEST_ONLY":
14150
+ case 99999:
14151
+ message.edition = 99999;
14152
+ break;
14153
+ case "EDITION_MAX":
14154
+ case 2147483647:
14155
+ message.edition = 2147483647;
14156
+ break;
14157
+ }
14158
+ if (object.features != null) {
14159
+ if (typeof object.features !== "object")
14160
+ throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.features: object expected");
14161
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
14162
+ }
11791
14163
  return message;
11792
14164
  };
11793
14165
 
11794
14166
  /**
11795
- * Creates a plain object from a NamePart message. Also converts values to other types if specified.
14167
+ * Creates a plain object from a FeatureSetEditionDefault message. Also converts values to other types if specified.
11796
14168
  * @function toObject
11797
- * @memberof google.protobuf.UninterpretedOption.NamePart
14169
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11798
14170
  * @static
11799
- * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart
14171
+ * @param {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} message FeatureSetEditionDefault
11800
14172
  * @param {$protobuf.IConversionOptions} [options] Conversion options
11801
14173
  * @returns {Object.<string,*>} Plain object
11802
14174
  */
11803
- NamePart.toObject = function toObject(message, options) {
14175
+ FeatureSetEditionDefault.toObject = function toObject(message, options) {
11804
14176
  if (!options)
11805
14177
  options = {};
11806
14178
  var object = {};
11807
14179
  if (options.defaults) {
11808
- object.namePart = "";
11809
- object.isExtension = false;
14180
+ object.features = null;
14181
+ object.edition = options.enums === String ? "EDITION_UNKNOWN" : 0;
11810
14182
  }
11811
- if (message.namePart != null && message.hasOwnProperty("namePart"))
11812
- object.namePart = message.namePart;
11813
- if (message.isExtension != null && message.hasOwnProperty("isExtension"))
11814
- object.isExtension = message.isExtension;
14183
+ if (message.features != null && message.hasOwnProperty("features"))
14184
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
14185
+ if (message.edition != null && message.hasOwnProperty("edition"))
14186
+ object.edition = options.enums === String ? $root.google.protobuf.Edition[message.edition] === undefined ? message.edition : $root.google.protobuf.Edition[message.edition] : message.edition;
11815
14187
  return object;
11816
14188
  };
11817
14189
 
11818
14190
  /**
11819
- * Converts this NamePart to JSON.
14191
+ * Converts this FeatureSetEditionDefault to JSON.
11820
14192
  * @function toJSON
11821
- * @memberof google.protobuf.UninterpretedOption.NamePart
14193
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11822
14194
  * @instance
11823
14195
  * @returns {Object.<string,*>} JSON object
11824
14196
  */
11825
- NamePart.prototype.toJSON = function toJSON() {
14197
+ FeatureSetEditionDefault.prototype.toJSON = function toJSON() {
11826
14198
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
11827
14199
  };
11828
14200
 
11829
14201
  /**
11830
- * Gets the default type url for NamePart
14202
+ * Gets the default type url for FeatureSetEditionDefault
11831
14203
  * @function getTypeUrl
11832
- * @memberof google.protobuf.UninterpretedOption.NamePart
14204
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
11833
14205
  * @static
11834
14206
  * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
11835
14207
  * @returns {string} The default type url
11836
14208
  */
11837
- NamePart.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
14209
+ FeatureSetEditionDefault.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
11838
14210
  if (typeUrlPrefix === undefined) {
11839
14211
  typeUrlPrefix = "type.googleapis.com";
11840
14212
  }
11841
- return typeUrlPrefix + "/google.protobuf.UninterpretedOption.NamePart";
14213
+ return typeUrlPrefix + "/google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault";
11842
14214
  };
11843
14215
 
11844
- return NamePart;
14216
+ return FeatureSetEditionDefault;
11845
14217
  })();
11846
14218
 
11847
- return UninterpretedOption;
14219
+ return FeatureSetDefaults;
11848
14220
  })();
11849
14221
 
11850
14222
  protobuf.SourceCodeInfo = (function() {
@@ -30090,6 +32462,7 @@
30090
32462
  * @property {string|null} [docTagPrefix] Publishing docTagPrefix
30091
32463
  * @property {google.api.ClientLibraryOrganization|null} [organization] Publishing organization
30092
32464
  * @property {Array.<google.api.IClientLibrarySettings>|null} [librarySettings] Publishing librarySettings
32465
+ * @property {string|null} [protoReferenceDocumentationUri] Publishing protoReferenceDocumentationUri
30093
32466
  */
30094
32467
 
30095
32468
  /**
@@ -30182,6 +32555,14 @@
30182
32555
  */
30183
32556
  Publishing.prototype.librarySettings = $util.emptyArray;
30184
32557
 
32558
+ /**
32559
+ * Publishing protoReferenceDocumentationUri.
32560
+ * @member {string} protoReferenceDocumentationUri
32561
+ * @memberof google.api.Publishing
32562
+ * @instance
32563
+ */
32564
+ Publishing.prototype.protoReferenceDocumentationUri = "";
32565
+
30185
32566
  /**
30186
32567
  * Creates a new Publishing instance using the specified properties.
30187
32568
  * @function create
@@ -30227,6 +32608,8 @@
30227
32608
  if (message.librarySettings != null && message.librarySettings.length)
30228
32609
  for (var i = 0; i < message.librarySettings.length; ++i)
30229
32610
  $root.google.api.ClientLibrarySettings.encode(message.librarySettings[i], writer.uint32(/* id 109, wireType 2 =*/874).fork()).ldelim();
32611
+ if (message.protoReferenceDocumentationUri != null && Object.hasOwnProperty.call(message, "protoReferenceDocumentationUri"))
32612
+ writer.uint32(/* id 110, wireType 2 =*/882).string(message.protoReferenceDocumentationUri);
30230
32613
  return writer;
30231
32614
  };
30232
32615
 
@@ -30303,6 +32686,10 @@
30303
32686
  message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32()));
30304
32687
  break;
30305
32688
  }
32689
+ case 110: {
32690
+ message.protoReferenceDocumentationUri = reader.string();
32691
+ break;
32692
+ }
30306
32693
  default:
30307
32694
  reader.skipType(tag & 7);
30308
32695
  break;
@@ -30378,6 +32765,9 @@
30378
32765
  case 2:
30379
32766
  case 3:
30380
32767
  case 4:
32768
+ case 5:
32769
+ case 6:
32770
+ case 7:
30381
32771
  break;
30382
32772
  }
30383
32773
  if (message.librarySettings != null && message.hasOwnProperty("librarySettings")) {
@@ -30389,6 +32779,9 @@
30389
32779
  return "librarySettings." + error;
30390
32780
  }
30391
32781
  }
32782
+ if (message.protoReferenceDocumentationUri != null && message.hasOwnProperty("protoReferenceDocumentationUri"))
32783
+ if (!$util.isString(message.protoReferenceDocumentationUri))
32784
+ return "protoReferenceDocumentationUri: string expected";
30392
32785
  return null;
30393
32786
  };
30394
32787
 
@@ -30458,6 +32851,18 @@
30458
32851
  case 4:
30459
32852
  message.organization = 4;
30460
32853
  break;
32854
+ case "SHOPPING":
32855
+ case 5:
32856
+ message.organization = 5;
32857
+ break;
32858
+ case "GEO":
32859
+ case 6:
32860
+ message.organization = 6;
32861
+ break;
32862
+ case "GENERATIVE_AI":
32863
+ case 7:
32864
+ message.organization = 7;
32865
+ break;
30461
32866
  }
30462
32867
  if (object.librarySettings) {
30463
32868
  if (!Array.isArray(object.librarySettings))
@@ -30469,6 +32874,8 @@
30469
32874
  message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]);
30470
32875
  }
30471
32876
  }
32877
+ if (object.protoReferenceDocumentationUri != null)
32878
+ message.protoReferenceDocumentationUri = String(object.protoReferenceDocumentationUri);
30472
32879
  return message;
30473
32880
  };
30474
32881
 
@@ -30497,6 +32904,7 @@
30497
32904
  object.githubLabel = "";
30498
32905
  object.docTagPrefix = "";
30499
32906
  object.organization = options.enums === String ? "CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED" : 0;
32907
+ object.protoReferenceDocumentationUri = "";
30500
32908
  }
30501
32909
  if (message.methodSettings && message.methodSettings.length) {
30502
32910
  object.methodSettings = [];
@@ -30525,6 +32933,8 @@
30525
32933
  for (var j = 0; j < message.librarySettings.length; ++j)
30526
32934
  object.librarySettings[j] = $root.google.api.ClientLibrarySettings.toObject(message.librarySettings[j], options);
30527
32935
  }
32936
+ if (message.protoReferenceDocumentationUri != null && message.hasOwnProperty("protoReferenceDocumentationUri"))
32937
+ object.protoReferenceDocumentationUri = message.protoReferenceDocumentationUri;
30528
32938
  return object;
30529
32939
  };
30530
32940
 
@@ -31687,6 +34097,11 @@
31687
34097
  * @memberof google.api
31688
34098
  * @interface IDotnetSettings
31689
34099
  * @property {google.api.ICommonLanguageSettings|null} [common] DotnetSettings common
34100
+ * @property {Object.<string,string>|null} [renamedServices] DotnetSettings renamedServices
34101
+ * @property {Object.<string,string>|null} [renamedResources] DotnetSettings renamedResources
34102
+ * @property {Array.<string>|null} [ignoredResources] DotnetSettings ignoredResources
34103
+ * @property {Array.<string>|null} [forcedNamespaceAliases] DotnetSettings forcedNamespaceAliases
34104
+ * @property {Array.<string>|null} [handwrittenSignatures] DotnetSettings handwrittenSignatures
31690
34105
  */
31691
34106
 
31692
34107
  /**
@@ -31698,6 +34113,11 @@
31698
34113
  * @param {google.api.IDotnetSettings=} [properties] Properties to set
31699
34114
  */
31700
34115
  function DotnetSettings(properties) {
34116
+ this.renamedServices = {};
34117
+ this.renamedResources = {};
34118
+ this.ignoredResources = [];
34119
+ this.forcedNamespaceAliases = [];
34120
+ this.handwrittenSignatures = [];
31701
34121
  if (properties)
31702
34122
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
31703
34123
  if (properties[keys[i]] != null)
@@ -31712,6 +34132,46 @@
31712
34132
  */
31713
34133
  DotnetSettings.prototype.common = null;
31714
34134
 
34135
+ /**
34136
+ * DotnetSettings renamedServices.
34137
+ * @member {Object.<string,string>} renamedServices
34138
+ * @memberof google.api.DotnetSettings
34139
+ * @instance
34140
+ */
34141
+ DotnetSettings.prototype.renamedServices = $util.emptyObject;
34142
+
34143
+ /**
34144
+ * DotnetSettings renamedResources.
34145
+ * @member {Object.<string,string>} renamedResources
34146
+ * @memberof google.api.DotnetSettings
34147
+ * @instance
34148
+ */
34149
+ DotnetSettings.prototype.renamedResources = $util.emptyObject;
34150
+
34151
+ /**
34152
+ * DotnetSettings ignoredResources.
34153
+ * @member {Array.<string>} ignoredResources
34154
+ * @memberof google.api.DotnetSettings
34155
+ * @instance
34156
+ */
34157
+ DotnetSettings.prototype.ignoredResources = $util.emptyArray;
34158
+
34159
+ /**
34160
+ * DotnetSettings forcedNamespaceAliases.
34161
+ * @member {Array.<string>} forcedNamespaceAliases
34162
+ * @memberof google.api.DotnetSettings
34163
+ * @instance
34164
+ */
34165
+ DotnetSettings.prototype.forcedNamespaceAliases = $util.emptyArray;
34166
+
34167
+ /**
34168
+ * DotnetSettings handwrittenSignatures.
34169
+ * @member {Array.<string>} handwrittenSignatures
34170
+ * @memberof google.api.DotnetSettings
34171
+ * @instance
34172
+ */
34173
+ DotnetSettings.prototype.handwrittenSignatures = $util.emptyArray;
34174
+
31715
34175
  /**
31716
34176
  * Creates a new DotnetSettings instance using the specified properties.
31717
34177
  * @function create
@@ -31738,6 +34198,21 @@
31738
34198
  writer = $Writer.create();
31739
34199
  if (message.common != null && Object.hasOwnProperty.call(message, "common"))
31740
34200
  $root.google.api.CommonLanguageSettings.encode(message.common, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
34201
+ if (message.renamedServices != null && Object.hasOwnProperty.call(message, "renamedServices"))
34202
+ for (var keys = Object.keys(message.renamedServices), i = 0; i < keys.length; ++i)
34203
+ writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.renamedServices[keys[i]]).ldelim();
34204
+ if (message.renamedResources != null && Object.hasOwnProperty.call(message, "renamedResources"))
34205
+ for (var keys = Object.keys(message.renamedResources), i = 0; i < keys.length; ++i)
34206
+ writer.uint32(/* id 3, wireType 2 =*/26).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.renamedResources[keys[i]]).ldelim();
34207
+ if (message.ignoredResources != null && message.ignoredResources.length)
34208
+ for (var i = 0; i < message.ignoredResources.length; ++i)
34209
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.ignoredResources[i]);
34210
+ if (message.forcedNamespaceAliases != null && message.forcedNamespaceAliases.length)
34211
+ for (var i = 0; i < message.forcedNamespaceAliases.length; ++i)
34212
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.forcedNamespaceAliases[i]);
34213
+ if (message.handwrittenSignatures != null && message.handwrittenSignatures.length)
34214
+ for (var i = 0; i < message.handwrittenSignatures.length; ++i)
34215
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.handwrittenSignatures[i]);
31741
34216
  return writer;
31742
34217
  };
31743
34218
 
@@ -31768,7 +34243,7 @@
31768
34243
  DotnetSettings.decode = function decode(reader, length) {
31769
34244
  if (!(reader instanceof $Reader))
31770
34245
  reader = $Reader.create(reader);
31771
- var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings();
34246
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value;
31772
34247
  while (reader.pos < end) {
31773
34248
  var tag = reader.uint32();
31774
34249
  switch (tag >>> 3) {
@@ -31776,6 +34251,70 @@
31776
34251
  message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32());
31777
34252
  break;
31778
34253
  }
34254
+ case 2: {
34255
+ if (message.renamedServices === $util.emptyObject)
34256
+ message.renamedServices = {};
34257
+ var end2 = reader.uint32() + reader.pos;
34258
+ key = "";
34259
+ value = "";
34260
+ while (reader.pos < end2) {
34261
+ var tag2 = reader.uint32();
34262
+ switch (tag2 >>> 3) {
34263
+ case 1:
34264
+ key = reader.string();
34265
+ break;
34266
+ case 2:
34267
+ value = reader.string();
34268
+ break;
34269
+ default:
34270
+ reader.skipType(tag2 & 7);
34271
+ break;
34272
+ }
34273
+ }
34274
+ message.renamedServices[key] = value;
34275
+ break;
34276
+ }
34277
+ case 3: {
34278
+ if (message.renamedResources === $util.emptyObject)
34279
+ message.renamedResources = {};
34280
+ var end2 = reader.uint32() + reader.pos;
34281
+ key = "";
34282
+ value = "";
34283
+ while (reader.pos < end2) {
34284
+ var tag2 = reader.uint32();
34285
+ switch (tag2 >>> 3) {
34286
+ case 1:
34287
+ key = reader.string();
34288
+ break;
34289
+ case 2:
34290
+ value = reader.string();
34291
+ break;
34292
+ default:
34293
+ reader.skipType(tag2 & 7);
34294
+ break;
34295
+ }
34296
+ }
34297
+ message.renamedResources[key] = value;
34298
+ break;
34299
+ }
34300
+ case 4: {
34301
+ if (!(message.ignoredResources && message.ignoredResources.length))
34302
+ message.ignoredResources = [];
34303
+ message.ignoredResources.push(reader.string());
34304
+ break;
34305
+ }
34306
+ case 5: {
34307
+ if (!(message.forcedNamespaceAliases && message.forcedNamespaceAliases.length))
34308
+ message.forcedNamespaceAliases = [];
34309
+ message.forcedNamespaceAliases.push(reader.string());
34310
+ break;
34311
+ }
34312
+ case 6: {
34313
+ if (!(message.handwrittenSignatures && message.handwrittenSignatures.length))
34314
+ message.handwrittenSignatures = [];
34315
+ message.handwrittenSignatures.push(reader.string());
34316
+ break;
34317
+ }
31779
34318
  default:
31780
34319
  reader.skipType(tag & 7);
31781
34320
  break;
@@ -31816,6 +34355,43 @@
31816
34355
  if (error)
31817
34356
  return "common." + error;
31818
34357
  }
34358
+ if (message.renamedServices != null && message.hasOwnProperty("renamedServices")) {
34359
+ if (!$util.isObject(message.renamedServices))
34360
+ return "renamedServices: object expected";
34361
+ var key = Object.keys(message.renamedServices);
34362
+ for (var i = 0; i < key.length; ++i)
34363
+ if (!$util.isString(message.renamedServices[key[i]]))
34364
+ return "renamedServices: string{k:string} expected";
34365
+ }
34366
+ if (message.renamedResources != null && message.hasOwnProperty("renamedResources")) {
34367
+ if (!$util.isObject(message.renamedResources))
34368
+ return "renamedResources: object expected";
34369
+ var key = Object.keys(message.renamedResources);
34370
+ for (var i = 0; i < key.length; ++i)
34371
+ if (!$util.isString(message.renamedResources[key[i]]))
34372
+ return "renamedResources: string{k:string} expected";
34373
+ }
34374
+ if (message.ignoredResources != null && message.hasOwnProperty("ignoredResources")) {
34375
+ if (!Array.isArray(message.ignoredResources))
34376
+ return "ignoredResources: array expected";
34377
+ for (var i = 0; i < message.ignoredResources.length; ++i)
34378
+ if (!$util.isString(message.ignoredResources[i]))
34379
+ return "ignoredResources: string[] expected";
34380
+ }
34381
+ if (message.forcedNamespaceAliases != null && message.hasOwnProperty("forcedNamespaceAliases")) {
34382
+ if (!Array.isArray(message.forcedNamespaceAliases))
34383
+ return "forcedNamespaceAliases: array expected";
34384
+ for (var i = 0; i < message.forcedNamespaceAliases.length; ++i)
34385
+ if (!$util.isString(message.forcedNamespaceAliases[i]))
34386
+ return "forcedNamespaceAliases: string[] expected";
34387
+ }
34388
+ if (message.handwrittenSignatures != null && message.hasOwnProperty("handwrittenSignatures")) {
34389
+ if (!Array.isArray(message.handwrittenSignatures))
34390
+ return "handwrittenSignatures: array expected";
34391
+ for (var i = 0; i < message.handwrittenSignatures.length; ++i)
34392
+ if (!$util.isString(message.handwrittenSignatures[i]))
34393
+ return "handwrittenSignatures: string[] expected";
34394
+ }
31819
34395
  return null;
31820
34396
  };
31821
34397
 
@@ -31836,6 +34412,41 @@
31836
34412
  throw TypeError(".google.api.DotnetSettings.common: object expected");
31837
34413
  message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common);
31838
34414
  }
34415
+ if (object.renamedServices) {
34416
+ if (typeof object.renamedServices !== "object")
34417
+ throw TypeError(".google.api.DotnetSettings.renamedServices: object expected");
34418
+ message.renamedServices = {};
34419
+ for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i)
34420
+ message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]);
34421
+ }
34422
+ if (object.renamedResources) {
34423
+ if (typeof object.renamedResources !== "object")
34424
+ throw TypeError(".google.api.DotnetSettings.renamedResources: object expected");
34425
+ message.renamedResources = {};
34426
+ for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i)
34427
+ message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]);
34428
+ }
34429
+ if (object.ignoredResources) {
34430
+ if (!Array.isArray(object.ignoredResources))
34431
+ throw TypeError(".google.api.DotnetSettings.ignoredResources: array expected");
34432
+ message.ignoredResources = [];
34433
+ for (var i = 0; i < object.ignoredResources.length; ++i)
34434
+ message.ignoredResources[i] = String(object.ignoredResources[i]);
34435
+ }
34436
+ if (object.forcedNamespaceAliases) {
34437
+ if (!Array.isArray(object.forcedNamespaceAliases))
34438
+ throw TypeError(".google.api.DotnetSettings.forcedNamespaceAliases: array expected");
34439
+ message.forcedNamespaceAliases = [];
34440
+ for (var i = 0; i < object.forcedNamespaceAliases.length; ++i)
34441
+ message.forcedNamespaceAliases[i] = String(object.forcedNamespaceAliases[i]);
34442
+ }
34443
+ if (object.handwrittenSignatures) {
34444
+ if (!Array.isArray(object.handwrittenSignatures))
34445
+ throw TypeError(".google.api.DotnetSettings.handwrittenSignatures: array expected");
34446
+ message.handwrittenSignatures = [];
34447
+ for (var i = 0; i < object.handwrittenSignatures.length; ++i)
34448
+ message.handwrittenSignatures[i] = String(object.handwrittenSignatures[i]);
34449
+ }
31839
34450
  return message;
31840
34451
  };
31841
34452
 
@@ -31852,10 +34463,45 @@
31852
34463
  if (!options)
31853
34464
  options = {};
31854
34465
  var object = {};
34466
+ if (options.arrays || options.defaults) {
34467
+ object.ignoredResources = [];
34468
+ object.forcedNamespaceAliases = [];
34469
+ object.handwrittenSignatures = [];
34470
+ }
34471
+ if (options.objects || options.defaults) {
34472
+ object.renamedServices = {};
34473
+ object.renamedResources = {};
34474
+ }
31855
34475
  if (options.defaults)
31856
34476
  object.common = null;
31857
34477
  if (message.common != null && message.hasOwnProperty("common"))
31858
34478
  object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options);
34479
+ var keys2;
34480
+ if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) {
34481
+ object.renamedServices = {};
34482
+ for (var j = 0; j < keys2.length; ++j)
34483
+ object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]];
34484
+ }
34485
+ if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) {
34486
+ object.renamedResources = {};
34487
+ for (var j = 0; j < keys2.length; ++j)
34488
+ object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]];
34489
+ }
34490
+ if (message.ignoredResources && message.ignoredResources.length) {
34491
+ object.ignoredResources = [];
34492
+ for (var j = 0; j < message.ignoredResources.length; ++j)
34493
+ object.ignoredResources[j] = message.ignoredResources[j];
34494
+ }
34495
+ if (message.forcedNamespaceAliases && message.forcedNamespaceAliases.length) {
34496
+ object.forcedNamespaceAliases = [];
34497
+ for (var j = 0; j < message.forcedNamespaceAliases.length; ++j)
34498
+ object.forcedNamespaceAliases[j] = message.forcedNamespaceAliases[j];
34499
+ }
34500
+ if (message.handwrittenSignatures && message.handwrittenSignatures.length) {
34501
+ object.handwrittenSignatures = [];
34502
+ for (var j = 0; j < message.handwrittenSignatures.length; ++j)
34503
+ object.handwrittenSignatures[j] = message.handwrittenSignatures[j];
34504
+ }
31859
34505
  return object;
31860
34506
  };
31861
34507
 
@@ -32312,6 +34958,7 @@
32312
34958
  * @interface IMethodSettings
32313
34959
  * @property {string|null} [selector] MethodSettings selector
32314
34960
  * @property {google.api.MethodSettings.ILongRunning|null} [longRunning] MethodSettings longRunning
34961
+ * @property {Array.<string>|null} [autoPopulatedFields] MethodSettings autoPopulatedFields
32315
34962
  */
32316
34963
 
32317
34964
  /**
@@ -32323,6 +34970,7 @@
32323
34970
  * @param {google.api.IMethodSettings=} [properties] Properties to set
32324
34971
  */
32325
34972
  function MethodSettings(properties) {
34973
+ this.autoPopulatedFields = [];
32326
34974
  if (properties)
32327
34975
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
32328
34976
  if (properties[keys[i]] != null)
@@ -32345,6 +34993,14 @@
32345
34993
  */
32346
34994
  MethodSettings.prototype.longRunning = null;
32347
34995
 
34996
+ /**
34997
+ * MethodSettings autoPopulatedFields.
34998
+ * @member {Array.<string>} autoPopulatedFields
34999
+ * @memberof google.api.MethodSettings
35000
+ * @instance
35001
+ */
35002
+ MethodSettings.prototype.autoPopulatedFields = $util.emptyArray;
35003
+
32348
35004
  /**
32349
35005
  * Creates a new MethodSettings instance using the specified properties.
32350
35006
  * @function create
@@ -32373,6 +35029,9 @@
32373
35029
  writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector);
32374
35030
  if (message.longRunning != null && Object.hasOwnProperty.call(message, "longRunning"))
32375
35031
  $root.google.api.MethodSettings.LongRunning.encode(message.longRunning, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
35032
+ if (message.autoPopulatedFields != null && message.autoPopulatedFields.length)
35033
+ for (var i = 0; i < message.autoPopulatedFields.length; ++i)
35034
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.autoPopulatedFields[i]);
32376
35035
  return writer;
32377
35036
  };
32378
35037
 
@@ -32415,6 +35074,12 @@
32415
35074
  message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32());
32416
35075
  break;
32417
35076
  }
35077
+ case 3: {
35078
+ if (!(message.autoPopulatedFields && message.autoPopulatedFields.length))
35079
+ message.autoPopulatedFields = [];
35080
+ message.autoPopulatedFields.push(reader.string());
35081
+ break;
35082
+ }
32418
35083
  default:
32419
35084
  reader.skipType(tag & 7);
32420
35085
  break;
@@ -32458,6 +35123,13 @@
32458
35123
  if (error)
32459
35124
  return "longRunning." + error;
32460
35125
  }
35126
+ if (message.autoPopulatedFields != null && message.hasOwnProperty("autoPopulatedFields")) {
35127
+ if (!Array.isArray(message.autoPopulatedFields))
35128
+ return "autoPopulatedFields: array expected";
35129
+ for (var i = 0; i < message.autoPopulatedFields.length; ++i)
35130
+ if (!$util.isString(message.autoPopulatedFields[i]))
35131
+ return "autoPopulatedFields: string[] expected";
35132
+ }
32461
35133
  return null;
32462
35134
  };
32463
35135
 
@@ -32480,6 +35152,13 @@
32480
35152
  throw TypeError(".google.api.MethodSettings.longRunning: object expected");
32481
35153
  message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning);
32482
35154
  }
35155
+ if (object.autoPopulatedFields) {
35156
+ if (!Array.isArray(object.autoPopulatedFields))
35157
+ throw TypeError(".google.api.MethodSettings.autoPopulatedFields: array expected");
35158
+ message.autoPopulatedFields = [];
35159
+ for (var i = 0; i < object.autoPopulatedFields.length; ++i)
35160
+ message.autoPopulatedFields[i] = String(object.autoPopulatedFields[i]);
35161
+ }
32483
35162
  return message;
32484
35163
  };
32485
35164
 
@@ -32496,6 +35175,8 @@
32496
35175
  if (!options)
32497
35176
  options = {};
32498
35177
  var object = {};
35178
+ if (options.arrays || options.defaults)
35179
+ object.autoPopulatedFields = [];
32499
35180
  if (options.defaults) {
32500
35181
  object.selector = "";
32501
35182
  object.longRunning = null;
@@ -32504,6 +35185,11 @@
32504
35185
  object.selector = message.selector;
32505
35186
  if (message.longRunning != null && message.hasOwnProperty("longRunning"))
32506
35187
  object.longRunning = $root.google.api.MethodSettings.LongRunning.toObject(message.longRunning, options);
35188
+ if (message.autoPopulatedFields && message.autoPopulatedFields.length) {
35189
+ object.autoPopulatedFields = [];
35190
+ for (var j = 0; j < message.autoPopulatedFields.length; ++j)
35191
+ object.autoPopulatedFields[j] = message.autoPopulatedFields[j];
35192
+ }
32507
35193
  return object;
32508
35194
  };
32509
35195
 
@@ -32833,6 +35519,9 @@
32833
35519
  * @property {number} ADS=2 ADS value
32834
35520
  * @property {number} PHOTOS=3 PHOTOS value
32835
35521
  * @property {number} STREET_VIEW=4 STREET_VIEW value
35522
+ * @property {number} SHOPPING=5 SHOPPING value
35523
+ * @property {number} GEO=6 GEO value
35524
+ * @property {number} GENERATIVE_AI=7 GENERATIVE_AI value
32836
35525
  */
32837
35526
  api.ClientLibraryOrganization = (function() {
32838
35527
  var valuesById = {}, values = Object.create(valuesById);
@@ -32841,6 +35530,9 @@
32841
35530
  values[valuesById[2] = "ADS"] = 2;
32842
35531
  values[valuesById[3] = "PHOTOS"] = 3;
32843
35532
  values[valuesById[4] = "STREET_VIEW"] = 4;
35533
+ values[valuesById[5] = "SHOPPING"] = 5;
35534
+ values[valuesById[6] = "GEO"] = 6;
35535
+ values[valuesById[7] = "GENERATIVE_AI"] = 7;
32844
35536
  return values;
32845
35537
  })();
32846
35538
 
@@ -32898,6 +35590,7 @@
32898
35590
  * @property {number} IMMUTABLE=5 IMMUTABLE value
32899
35591
  * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value
32900
35592
  * @property {number} NON_EMPTY_DEFAULT=7 NON_EMPTY_DEFAULT value
35593
+ * @property {number} IDENTIFIER=8 IDENTIFIER value
32901
35594
  */
32902
35595
  api.FieldBehavior = (function() {
32903
35596
  var valuesById = {}, values = Object.create(valuesById);
@@ -32909,6 +35602,7 @@
32909
35602
  values[valuesById[5] = "IMMUTABLE"] = 5;
32910
35603
  values[valuesById[6] = "UNORDERED_LIST"] = 6;
32911
35604
  values[valuesById[7] = "NON_EMPTY_DEFAULT"] = 7;
35605
+ values[valuesById[8] = "IDENTIFIER"] = 8;
32912
35606
  return values;
32913
35607
  })();
32914
35608