@googlemaps/places 1.3.0 → 1.4.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.
@@ -513,6 +513,38 @@
513
513
  return FileDescriptorSet;
514
514
  })();
515
515
 
516
+ /**
517
+ * Edition enum.
518
+ * @name google.protobuf.Edition
519
+ * @enum {number}
520
+ * @property {number} EDITION_UNKNOWN=0 EDITION_UNKNOWN value
521
+ * @property {number} EDITION_PROTO2=998 EDITION_PROTO2 value
522
+ * @property {number} EDITION_PROTO3=999 EDITION_PROTO3 value
523
+ * @property {number} EDITION_2023=1000 EDITION_2023 value
524
+ * @property {number} EDITION_2024=1001 EDITION_2024 value
525
+ * @property {number} EDITION_1_TEST_ONLY=1 EDITION_1_TEST_ONLY value
526
+ * @property {number} EDITION_2_TEST_ONLY=2 EDITION_2_TEST_ONLY value
527
+ * @property {number} EDITION_99997_TEST_ONLY=99997 EDITION_99997_TEST_ONLY value
528
+ * @property {number} EDITION_99998_TEST_ONLY=99998 EDITION_99998_TEST_ONLY value
529
+ * @property {number} EDITION_99999_TEST_ONLY=99999 EDITION_99999_TEST_ONLY value
530
+ * @property {number} EDITION_MAX=2147483647 EDITION_MAX value
531
+ */
532
+ protobuf.Edition = (function() {
533
+ var valuesById = {}, values = Object.create(valuesById);
534
+ values[valuesById[0] = "EDITION_UNKNOWN"] = 0;
535
+ values[valuesById[998] = "EDITION_PROTO2"] = 998;
536
+ values[valuesById[999] = "EDITION_PROTO3"] = 999;
537
+ values[valuesById[1000] = "EDITION_2023"] = 1000;
538
+ values[valuesById[1001] = "EDITION_2024"] = 1001;
539
+ values[valuesById[1] = "EDITION_1_TEST_ONLY"] = 1;
540
+ values[valuesById[2] = "EDITION_2_TEST_ONLY"] = 2;
541
+ values[valuesById[99997] = "EDITION_99997_TEST_ONLY"] = 99997;
542
+ values[valuesById[99998] = "EDITION_99998_TEST_ONLY"] = 99998;
543
+ values[valuesById[99999] = "EDITION_99999_TEST_ONLY"] = 99999;
544
+ values[valuesById[2147483647] = "EDITION_MAX"] = 2147483647;
545
+ return values;
546
+ })();
547
+
516
548
  protobuf.FileDescriptorProto = (function() {
517
549
 
518
550
  /**
@@ -531,7 +563,7 @@
531
563
  * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options
532
564
  * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo
533
565
  * @property {string|null} [syntax] FileDescriptorProto syntax
534
- * @property {string|null} [edition] FileDescriptorProto edition
566
+ * @property {google.protobuf.Edition|null} [edition] FileDescriptorProto edition
535
567
  */
536
568
 
537
569
  /**
@@ -654,11 +686,11 @@
654
686
 
655
687
  /**
656
688
  * FileDescriptorProto edition.
657
- * @member {string} edition
689
+ * @member {google.protobuf.Edition} edition
658
690
  * @memberof google.protobuf.FileDescriptorProto
659
691
  * @instance
660
692
  */
661
- FileDescriptorProto.prototype.edition = "";
693
+ FileDescriptorProto.prototype.edition = 0;
662
694
 
663
695
  /**
664
696
  * Creates a new FileDescriptorProto instance using the specified properties.
@@ -716,7 +748,7 @@
716
748
  if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax"))
717
749
  writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax);
718
750
  if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
719
- writer.uint32(/* id 13, wireType 2 =*/106).string(message.edition);
751
+ writer.uint32(/* id 14, wireType 0 =*/112).int32(message.edition);
720
752
  return writer;
721
753
  };
722
754
 
@@ -823,8 +855,8 @@
823
855
  message.syntax = reader.string();
824
856
  break;
825
857
  }
826
- case 13: {
827
- message.edition = reader.string();
858
+ case 14: {
859
+ message.edition = reader.int32();
828
860
  break;
829
861
  }
830
862
  default:
@@ -939,8 +971,22 @@
939
971
  if (!$util.isString(message.syntax))
940
972
  return "syntax: string expected";
941
973
  if (message.edition != null && message.hasOwnProperty("edition"))
942
- if (!$util.isString(message.edition))
943
- return "edition: string expected";
974
+ switch (message.edition) {
975
+ default:
976
+ return "edition: enum value expected";
977
+ case 0:
978
+ case 998:
979
+ case 999:
980
+ case 1000:
981
+ case 1001:
982
+ case 1:
983
+ case 2:
984
+ case 99997:
985
+ case 99998:
986
+ case 99999:
987
+ case 2147483647:
988
+ break;
989
+ }
944
990
  return null;
945
991
  };
946
992
 
@@ -1033,8 +1079,58 @@
1033
1079
  }
1034
1080
  if (object.syntax != null)
1035
1081
  message.syntax = String(object.syntax);
1036
- if (object.edition != null)
1037
- message.edition = String(object.edition);
1082
+ switch (object.edition) {
1083
+ default:
1084
+ if (typeof object.edition === "number") {
1085
+ message.edition = object.edition;
1086
+ break;
1087
+ }
1088
+ break;
1089
+ case "EDITION_UNKNOWN":
1090
+ case 0:
1091
+ message.edition = 0;
1092
+ break;
1093
+ case "EDITION_PROTO2":
1094
+ case 998:
1095
+ message.edition = 998;
1096
+ break;
1097
+ case "EDITION_PROTO3":
1098
+ case 999:
1099
+ message.edition = 999;
1100
+ break;
1101
+ case "EDITION_2023":
1102
+ case 1000:
1103
+ message.edition = 1000;
1104
+ break;
1105
+ case "EDITION_2024":
1106
+ case 1001:
1107
+ message.edition = 1001;
1108
+ break;
1109
+ case "EDITION_1_TEST_ONLY":
1110
+ case 1:
1111
+ message.edition = 1;
1112
+ break;
1113
+ case "EDITION_2_TEST_ONLY":
1114
+ case 2:
1115
+ message.edition = 2;
1116
+ break;
1117
+ case "EDITION_99997_TEST_ONLY":
1118
+ case 99997:
1119
+ message.edition = 99997;
1120
+ break;
1121
+ case "EDITION_99998_TEST_ONLY":
1122
+ case 99998:
1123
+ message.edition = 99998;
1124
+ break;
1125
+ case "EDITION_99999_TEST_ONLY":
1126
+ case 99999:
1127
+ message.edition = 99999;
1128
+ break;
1129
+ case "EDITION_MAX":
1130
+ case 2147483647:
1131
+ message.edition = 2147483647;
1132
+ break;
1133
+ }
1038
1134
  return message;
1039
1135
  };
1040
1136
 
@@ -1066,7 +1162,7 @@
1066
1162
  object.options = null;
1067
1163
  object.sourceCodeInfo = null;
1068
1164
  object.syntax = "";
1069
- object.edition = "";
1165
+ object.edition = options.enums === String ? "EDITION_UNKNOWN" : 0;
1070
1166
  }
1071
1167
  if (message.name != null && message.hasOwnProperty("name"))
1072
1168
  object.name = message.name;
@@ -1114,7 +1210,7 @@
1114
1210
  if (message.syntax != null && message.hasOwnProperty("syntax"))
1115
1211
  object.syntax = message.syntax;
1116
1212
  if (message.edition != null && message.hasOwnProperty("edition"))
1117
- object.edition = message.edition;
1213
+ object.edition = options.enums === String ? $root.google.protobuf.Edition[message.edition] === undefined ? message.edition : $root.google.protobuf.Edition[message.edition] : message.edition;
1118
1214
  return object;
1119
1215
  };
1120
1216
 
@@ -2217,6 +2313,9 @@
2217
2313
  * @memberof google.protobuf
2218
2314
  * @interface IExtensionRangeOptions
2219
2315
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption
2316
+ * @property {Array.<google.protobuf.ExtensionRangeOptions.IDeclaration>|null} [declaration] ExtensionRangeOptions declaration
2317
+ * @property {google.protobuf.IFeatureSet|null} [features] ExtensionRangeOptions features
2318
+ * @property {google.protobuf.ExtensionRangeOptions.VerificationState|null} [verification] ExtensionRangeOptions verification
2220
2319
  */
2221
2320
 
2222
2321
  /**
@@ -2229,6 +2328,7 @@
2229
2328
  */
2230
2329
  function ExtensionRangeOptions(properties) {
2231
2330
  this.uninterpretedOption = [];
2331
+ this.declaration = [];
2232
2332
  if (properties)
2233
2333
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2234
2334
  if (properties[keys[i]] != null)
@@ -2243,6 +2343,30 @@
2243
2343
  */
2244
2344
  ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray;
2245
2345
 
2346
+ /**
2347
+ * ExtensionRangeOptions declaration.
2348
+ * @member {Array.<google.protobuf.ExtensionRangeOptions.IDeclaration>} declaration
2349
+ * @memberof google.protobuf.ExtensionRangeOptions
2350
+ * @instance
2351
+ */
2352
+ ExtensionRangeOptions.prototype.declaration = $util.emptyArray;
2353
+
2354
+ /**
2355
+ * ExtensionRangeOptions features.
2356
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
2357
+ * @memberof google.protobuf.ExtensionRangeOptions
2358
+ * @instance
2359
+ */
2360
+ ExtensionRangeOptions.prototype.features = null;
2361
+
2362
+ /**
2363
+ * ExtensionRangeOptions verification.
2364
+ * @member {google.protobuf.ExtensionRangeOptions.VerificationState} verification
2365
+ * @memberof google.protobuf.ExtensionRangeOptions
2366
+ * @instance
2367
+ */
2368
+ ExtensionRangeOptions.prototype.verification = 1;
2369
+
2246
2370
  /**
2247
2371
  * Creates a new ExtensionRangeOptions instance using the specified properties.
2248
2372
  * @function create
@@ -2267,6 +2391,13 @@
2267
2391
  ExtensionRangeOptions.encode = function encode(message, writer) {
2268
2392
  if (!writer)
2269
2393
  writer = $Writer.create();
2394
+ if (message.declaration != null && message.declaration.length)
2395
+ for (var i = 0; i < message.declaration.length; ++i)
2396
+ $root.google.protobuf.ExtensionRangeOptions.Declaration.encode(message.declaration[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
2397
+ if (message.verification != null && Object.hasOwnProperty.call(message, "verification"))
2398
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.verification);
2399
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
2400
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 50, wireType 2 =*/402).fork()).ldelim();
2270
2401
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
2271
2402
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
2272
2403
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -2310,6 +2441,20 @@
2310
2441
  message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
2311
2442
  break;
2312
2443
  }
2444
+ case 2: {
2445
+ if (!(message.declaration && message.declaration.length))
2446
+ message.declaration = [];
2447
+ message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32()));
2448
+ break;
2449
+ }
2450
+ case 50: {
2451
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
2452
+ break;
2453
+ }
2454
+ case 3: {
2455
+ message.verification = reader.int32();
2456
+ break;
2457
+ }
2313
2458
  default:
2314
2459
  reader.skipType(tag & 7);
2315
2460
  break;
@@ -2354,6 +2499,28 @@
2354
2499
  return "uninterpretedOption." + error;
2355
2500
  }
2356
2501
  }
2502
+ if (message.declaration != null && message.hasOwnProperty("declaration")) {
2503
+ if (!Array.isArray(message.declaration))
2504
+ return "declaration: array expected";
2505
+ for (var i = 0; i < message.declaration.length; ++i) {
2506
+ var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]);
2507
+ if (error)
2508
+ return "declaration." + error;
2509
+ }
2510
+ }
2511
+ if (message.features != null && message.hasOwnProperty("features")) {
2512
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
2513
+ if (error)
2514
+ return "features." + error;
2515
+ }
2516
+ if (message.verification != null && message.hasOwnProperty("verification"))
2517
+ switch (message.verification) {
2518
+ default:
2519
+ return "verification: enum value expected";
2520
+ case 0:
2521
+ case 1:
2522
+ break;
2523
+ }
2357
2524
  return null;
2358
2525
  };
2359
2526
 
@@ -2379,6 +2546,37 @@
2379
2546
  message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
2380
2547
  }
2381
2548
  }
2549
+ if (object.declaration) {
2550
+ if (!Array.isArray(object.declaration))
2551
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: array expected");
2552
+ message.declaration = [];
2553
+ for (var i = 0; i < object.declaration.length; ++i) {
2554
+ if (typeof object.declaration[i] !== "object")
2555
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected");
2556
+ message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]);
2557
+ }
2558
+ }
2559
+ if (object.features != null) {
2560
+ if (typeof object.features !== "object")
2561
+ throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected");
2562
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
2563
+ }
2564
+ switch (object.verification) {
2565
+ case "DECLARATION":
2566
+ case 0:
2567
+ message.verification = 0;
2568
+ break;
2569
+ default:
2570
+ if (typeof object.verification === "number") {
2571
+ message.verification = object.verification;
2572
+ break;
2573
+ }
2574
+ break;
2575
+ case "UNVERIFIED":
2576
+ case 1:
2577
+ message.verification = 1;
2578
+ break;
2579
+ }
2382
2580
  return message;
2383
2581
  };
2384
2582
 
@@ -2395,8 +2593,23 @@
2395
2593
  if (!options)
2396
2594
  options = {};
2397
2595
  var object = {};
2398
- if (options.arrays || options.defaults)
2596
+ if (options.arrays || options.defaults) {
2597
+ object.declaration = [];
2399
2598
  object.uninterpretedOption = [];
2599
+ }
2600
+ if (options.defaults) {
2601
+ object.verification = options.enums === String ? "UNVERIFIED" : 1;
2602
+ object.features = null;
2603
+ }
2604
+ if (message.declaration && message.declaration.length) {
2605
+ object.declaration = [];
2606
+ for (var j = 0; j < message.declaration.length; ++j)
2607
+ object.declaration[j] = $root.google.protobuf.ExtensionRangeOptions.Declaration.toObject(message.declaration[j], options);
2608
+ }
2609
+ if (message.verification != null && message.hasOwnProperty("verification"))
2610
+ object.verification = options.enums === String ? $root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification] === undefined ? message.verification : $root.google.protobuf.ExtensionRangeOptions.VerificationState[message.verification] : message.verification;
2611
+ if (message.features != null && message.hasOwnProperty("features"))
2612
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
2400
2613
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
2401
2614
  object.uninterpretedOption = [];
2402
2615
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -2431,6 +2644,316 @@
2431
2644
  return typeUrlPrefix + "/google.protobuf.ExtensionRangeOptions";
2432
2645
  };
2433
2646
 
2647
+ ExtensionRangeOptions.Declaration = (function() {
2648
+
2649
+ /**
2650
+ * Properties of a Declaration.
2651
+ * @memberof google.protobuf.ExtensionRangeOptions
2652
+ * @interface IDeclaration
2653
+ * @property {number|null} [number] Declaration number
2654
+ * @property {string|null} [fullName] Declaration fullName
2655
+ * @property {string|null} [type] Declaration type
2656
+ * @property {boolean|null} [reserved] Declaration reserved
2657
+ * @property {boolean|null} [repeated] Declaration repeated
2658
+ */
2659
+
2660
+ /**
2661
+ * Constructs a new Declaration.
2662
+ * @memberof google.protobuf.ExtensionRangeOptions
2663
+ * @classdesc Represents a Declaration.
2664
+ * @implements IDeclaration
2665
+ * @constructor
2666
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration=} [properties] Properties to set
2667
+ */
2668
+ function Declaration(properties) {
2669
+ if (properties)
2670
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2671
+ if (properties[keys[i]] != null)
2672
+ this[keys[i]] = properties[keys[i]];
2673
+ }
2674
+
2675
+ /**
2676
+ * Declaration number.
2677
+ * @member {number} number
2678
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2679
+ * @instance
2680
+ */
2681
+ Declaration.prototype.number = 0;
2682
+
2683
+ /**
2684
+ * Declaration fullName.
2685
+ * @member {string} fullName
2686
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2687
+ * @instance
2688
+ */
2689
+ Declaration.prototype.fullName = "";
2690
+
2691
+ /**
2692
+ * Declaration type.
2693
+ * @member {string} type
2694
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2695
+ * @instance
2696
+ */
2697
+ Declaration.prototype.type = "";
2698
+
2699
+ /**
2700
+ * Declaration reserved.
2701
+ * @member {boolean} reserved
2702
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2703
+ * @instance
2704
+ */
2705
+ Declaration.prototype.reserved = false;
2706
+
2707
+ /**
2708
+ * Declaration repeated.
2709
+ * @member {boolean} repeated
2710
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2711
+ * @instance
2712
+ */
2713
+ Declaration.prototype.repeated = false;
2714
+
2715
+ /**
2716
+ * Creates a new Declaration instance using the specified properties.
2717
+ * @function create
2718
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2719
+ * @static
2720
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration=} [properties] Properties to set
2721
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration instance
2722
+ */
2723
+ Declaration.create = function create(properties) {
2724
+ return new Declaration(properties);
2725
+ };
2726
+
2727
+ /**
2728
+ * Encodes the specified Declaration message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.Declaration.verify|verify} messages.
2729
+ * @function encode
2730
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2731
+ * @static
2732
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration} message Declaration message or plain object to encode
2733
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2734
+ * @returns {$protobuf.Writer} Writer
2735
+ */
2736
+ Declaration.encode = function encode(message, writer) {
2737
+ if (!writer)
2738
+ writer = $Writer.create();
2739
+ if (message.number != null && Object.hasOwnProperty.call(message, "number"))
2740
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.number);
2741
+ if (message.fullName != null && Object.hasOwnProperty.call(message, "fullName"))
2742
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.fullName);
2743
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
2744
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.type);
2745
+ if (message.reserved != null && Object.hasOwnProperty.call(message, "reserved"))
2746
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.reserved);
2747
+ if (message.repeated != null && Object.hasOwnProperty.call(message, "repeated"))
2748
+ writer.uint32(/* id 6, wireType 0 =*/48).bool(message.repeated);
2749
+ return writer;
2750
+ };
2751
+
2752
+ /**
2753
+ * Encodes the specified Declaration message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.Declaration.verify|verify} messages.
2754
+ * @function encodeDelimited
2755
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2756
+ * @static
2757
+ * @param {google.protobuf.ExtensionRangeOptions.IDeclaration} message Declaration message or plain object to encode
2758
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2759
+ * @returns {$protobuf.Writer} Writer
2760
+ */
2761
+ Declaration.encodeDelimited = function encodeDelimited(message, writer) {
2762
+ return this.encode(message, writer).ldelim();
2763
+ };
2764
+
2765
+ /**
2766
+ * Decodes a Declaration message from the specified reader or buffer.
2767
+ * @function decode
2768
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2769
+ * @static
2770
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2771
+ * @param {number} [length] Message length if known beforehand
2772
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration
2773
+ * @throws {Error} If the payload is not a reader or valid buffer
2774
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2775
+ */
2776
+ Declaration.decode = function decode(reader, length) {
2777
+ if (!(reader instanceof $Reader))
2778
+ reader = $Reader.create(reader);
2779
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration();
2780
+ while (reader.pos < end) {
2781
+ var tag = reader.uint32();
2782
+ switch (tag >>> 3) {
2783
+ case 1: {
2784
+ message.number = reader.int32();
2785
+ break;
2786
+ }
2787
+ case 2: {
2788
+ message.fullName = reader.string();
2789
+ break;
2790
+ }
2791
+ case 3: {
2792
+ message.type = reader.string();
2793
+ break;
2794
+ }
2795
+ case 5: {
2796
+ message.reserved = reader.bool();
2797
+ break;
2798
+ }
2799
+ case 6: {
2800
+ message.repeated = reader.bool();
2801
+ break;
2802
+ }
2803
+ default:
2804
+ reader.skipType(tag & 7);
2805
+ break;
2806
+ }
2807
+ }
2808
+ return message;
2809
+ };
2810
+
2811
+ /**
2812
+ * Decodes a Declaration message from the specified reader or buffer, length delimited.
2813
+ * @function decodeDelimited
2814
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2815
+ * @static
2816
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2817
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration
2818
+ * @throws {Error} If the payload is not a reader or valid buffer
2819
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2820
+ */
2821
+ Declaration.decodeDelimited = function decodeDelimited(reader) {
2822
+ if (!(reader instanceof $Reader))
2823
+ reader = new $Reader(reader);
2824
+ return this.decode(reader, reader.uint32());
2825
+ };
2826
+
2827
+ /**
2828
+ * Verifies a Declaration message.
2829
+ * @function verify
2830
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2831
+ * @static
2832
+ * @param {Object.<string,*>} message Plain object to verify
2833
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
2834
+ */
2835
+ Declaration.verify = function verify(message) {
2836
+ if (typeof message !== "object" || message === null)
2837
+ return "object expected";
2838
+ if (message.number != null && message.hasOwnProperty("number"))
2839
+ if (!$util.isInteger(message.number))
2840
+ return "number: integer expected";
2841
+ if (message.fullName != null && message.hasOwnProperty("fullName"))
2842
+ if (!$util.isString(message.fullName))
2843
+ return "fullName: string expected";
2844
+ if (message.type != null && message.hasOwnProperty("type"))
2845
+ if (!$util.isString(message.type))
2846
+ return "type: string expected";
2847
+ if (message.reserved != null && message.hasOwnProperty("reserved"))
2848
+ if (typeof message.reserved !== "boolean")
2849
+ return "reserved: boolean expected";
2850
+ if (message.repeated != null && message.hasOwnProperty("repeated"))
2851
+ if (typeof message.repeated !== "boolean")
2852
+ return "repeated: boolean expected";
2853
+ return null;
2854
+ };
2855
+
2856
+ /**
2857
+ * Creates a Declaration message from a plain object. Also converts values to their respective internal types.
2858
+ * @function fromObject
2859
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2860
+ * @static
2861
+ * @param {Object.<string,*>} object Plain object
2862
+ * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration
2863
+ */
2864
+ Declaration.fromObject = function fromObject(object) {
2865
+ if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration)
2866
+ return object;
2867
+ var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration();
2868
+ if (object.number != null)
2869
+ message.number = object.number | 0;
2870
+ if (object.fullName != null)
2871
+ message.fullName = String(object.fullName);
2872
+ if (object.type != null)
2873
+ message.type = String(object.type);
2874
+ if (object.reserved != null)
2875
+ message.reserved = Boolean(object.reserved);
2876
+ if (object.repeated != null)
2877
+ message.repeated = Boolean(object.repeated);
2878
+ return message;
2879
+ };
2880
+
2881
+ /**
2882
+ * Creates a plain object from a Declaration message. Also converts values to other types if specified.
2883
+ * @function toObject
2884
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2885
+ * @static
2886
+ * @param {google.protobuf.ExtensionRangeOptions.Declaration} message Declaration
2887
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2888
+ * @returns {Object.<string,*>} Plain object
2889
+ */
2890
+ Declaration.toObject = function toObject(message, options) {
2891
+ if (!options)
2892
+ options = {};
2893
+ var object = {};
2894
+ if (options.defaults) {
2895
+ object.number = 0;
2896
+ object.fullName = "";
2897
+ object.type = "";
2898
+ object.reserved = false;
2899
+ object.repeated = false;
2900
+ }
2901
+ if (message.number != null && message.hasOwnProperty("number"))
2902
+ object.number = message.number;
2903
+ if (message.fullName != null && message.hasOwnProperty("fullName"))
2904
+ object.fullName = message.fullName;
2905
+ if (message.type != null && message.hasOwnProperty("type"))
2906
+ object.type = message.type;
2907
+ if (message.reserved != null && message.hasOwnProperty("reserved"))
2908
+ object.reserved = message.reserved;
2909
+ if (message.repeated != null && message.hasOwnProperty("repeated"))
2910
+ object.repeated = message.repeated;
2911
+ return object;
2912
+ };
2913
+
2914
+ /**
2915
+ * Converts this Declaration to JSON.
2916
+ * @function toJSON
2917
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2918
+ * @instance
2919
+ * @returns {Object.<string,*>} JSON object
2920
+ */
2921
+ Declaration.prototype.toJSON = function toJSON() {
2922
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2923
+ };
2924
+
2925
+ /**
2926
+ * Gets the default type url for Declaration
2927
+ * @function getTypeUrl
2928
+ * @memberof google.protobuf.ExtensionRangeOptions.Declaration
2929
+ * @static
2930
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
2931
+ * @returns {string} The default type url
2932
+ */
2933
+ Declaration.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2934
+ if (typeUrlPrefix === undefined) {
2935
+ typeUrlPrefix = "type.googleapis.com";
2936
+ }
2937
+ return typeUrlPrefix + "/google.protobuf.ExtensionRangeOptions.Declaration";
2938
+ };
2939
+
2940
+ return Declaration;
2941
+ })();
2942
+
2943
+ /**
2944
+ * VerificationState enum.
2945
+ * @name google.protobuf.ExtensionRangeOptions.VerificationState
2946
+ * @enum {number}
2947
+ * @property {number} DECLARATION=0 DECLARATION value
2948
+ * @property {number} UNVERIFIED=1 UNVERIFIED value
2949
+ */
2950
+ ExtensionRangeOptions.VerificationState = (function() {
2951
+ var valuesById = {}, values = Object.create(valuesById);
2952
+ values[valuesById[0] = "DECLARATION"] = 0;
2953
+ values[valuesById[1] = "UNVERIFIED"] = 1;
2954
+ return values;
2955
+ })();
2956
+
2434
2957
  return ExtensionRangeOptions;
2435
2958
  })();
2436
2959
 
@@ -2726,8 +3249,8 @@
2726
3249
  default:
2727
3250
  return "label: enum value expected";
2728
3251
  case 1:
2729
- case 2:
2730
3252
  case 3:
3253
+ case 2:
2731
3254
  break;
2732
3255
  }
2733
3256
  if (message.type != null && message.hasOwnProperty("type"))
@@ -2807,14 +3330,14 @@
2807
3330
  case 1:
2808
3331
  message.label = 1;
2809
3332
  break;
2810
- case "LABEL_REQUIRED":
2811
- case 2:
2812
- message.label = 2;
2813
- break;
2814
3333
  case "LABEL_REPEATED":
2815
3334
  case 3:
2816
3335
  message.label = 3;
2817
3336
  break;
3337
+ case "LABEL_REQUIRED":
3338
+ case 2:
3339
+ message.label = 2;
3340
+ break;
2818
3341
  }
2819
3342
  switch (object.type) {
2820
3343
  default:
@@ -3044,14 +3567,14 @@
3044
3567
  * @name google.protobuf.FieldDescriptorProto.Label
3045
3568
  * @enum {number}
3046
3569
  * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value
3047
- * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value
3048
3570
  * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value
3571
+ * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value
3049
3572
  */
3050
3573
  FieldDescriptorProto.Label = (function() {
3051
3574
  var valuesById = {}, values = Object.create(valuesById);
3052
3575
  values[valuesById[1] = "LABEL_OPTIONAL"] = 1;
3053
- values[valuesById[2] = "LABEL_REQUIRED"] = 2;
3054
3576
  values[valuesById[3] = "LABEL_REPEATED"] = 3;
3577
+ values[valuesById[2] = "LABEL_REQUIRED"] = 2;
3055
3578
  return values;
3056
3579
  })();
3057
3580
 
@@ -4750,7 +5273,6 @@
4750
5273
  * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices
4751
5274
  * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices
4752
5275
  * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices
4753
- * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices
4754
5276
  * @property {boolean|null} [deprecated] FileOptions deprecated
4755
5277
  * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas
4756
5278
  * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix
@@ -4760,6 +5282,7 @@
4760
5282
  * @property {string|null} [phpNamespace] FileOptions phpNamespace
4761
5283
  * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace
4762
5284
  * @property {string|null} [rubyPackage] FileOptions rubyPackage
5285
+ * @property {google.protobuf.IFeatureSet|null} [features] FileOptions features
4763
5286
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] FileOptions uninterpretedOption
4764
5287
  * @property {Array.<google.api.IResourceDescriptor>|null} [".google.api.resourceDefinition"] FileOptions .google.api.resourceDefinition
4765
5288
  */
@@ -4861,14 +5384,6 @@
4861
5384
  */
4862
5385
  FileOptions.prototype.pyGenericServices = false;
4863
5386
 
4864
- /**
4865
- * FileOptions phpGenericServices.
4866
- * @member {boolean} phpGenericServices
4867
- * @memberof google.protobuf.FileOptions
4868
- * @instance
4869
- */
4870
- FileOptions.prototype.phpGenericServices = false;
4871
-
4872
5387
  /**
4873
5388
  * FileOptions deprecated.
4874
5389
  * @member {boolean} deprecated
@@ -4941,6 +5456,14 @@
4941
5456
  */
4942
5457
  FileOptions.prototype.rubyPackage = "";
4943
5458
 
5459
+ /**
5460
+ * FileOptions features.
5461
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
5462
+ * @memberof google.protobuf.FileOptions
5463
+ * @instance
5464
+ */
5465
+ FileOptions.prototype.features = null;
5466
+
4944
5467
  /**
4945
5468
  * FileOptions uninterpretedOption.
4946
5469
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -5015,12 +5538,12 @@
5015
5538
  writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix);
5016
5539
  if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace"))
5017
5540
  writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace);
5018
- if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices"))
5019
- writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices);
5020
5541
  if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace"))
5021
5542
  writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace);
5022
5543
  if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage"))
5023
5544
  writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage);
5545
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
5546
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 50, wireType 2 =*/402).fork()).ldelim();
5024
5547
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
5025
5548
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
5026
5549
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -5101,10 +5624,6 @@
5101
5624
  message.pyGenericServices = reader.bool();
5102
5625
  break;
5103
5626
  }
5104
- case 42: {
5105
- message.phpGenericServices = reader.bool();
5106
- break;
5107
- }
5108
5627
  case 23: {
5109
5628
  message.deprecated = reader.bool();
5110
5629
  break;
@@ -5141,6 +5660,10 @@
5141
5660
  message.rubyPackage = reader.string();
5142
5661
  break;
5143
5662
  }
5663
+ case 50: {
5664
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
5665
+ break;
5666
+ }
5144
5667
  case 999: {
5145
5668
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
5146
5669
  message.uninterpretedOption = [];
@@ -5224,9 +5747,6 @@
5224
5747
  if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices"))
5225
5748
  if (typeof message.pyGenericServices !== "boolean")
5226
5749
  return "pyGenericServices: boolean expected";
5227
- if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices"))
5228
- if (typeof message.phpGenericServices !== "boolean")
5229
- return "phpGenericServices: boolean expected";
5230
5750
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
5231
5751
  if (typeof message.deprecated !== "boolean")
5232
5752
  return "deprecated: boolean expected";
@@ -5254,6 +5774,11 @@
5254
5774
  if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage"))
5255
5775
  if (!$util.isString(message.rubyPackage))
5256
5776
  return "rubyPackage: string expected";
5777
+ if (message.features != null && message.hasOwnProperty("features")) {
5778
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
5779
+ if (error)
5780
+ return "features." + error;
5781
+ }
5257
5782
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
5258
5783
  if (!Array.isArray(message.uninterpretedOption))
5259
5784
  return "uninterpretedOption: array expected";
@@ -5325,8 +5850,6 @@
5325
5850
  message.javaGenericServices = Boolean(object.javaGenericServices);
5326
5851
  if (object.pyGenericServices != null)
5327
5852
  message.pyGenericServices = Boolean(object.pyGenericServices);
5328
- if (object.phpGenericServices != null)
5329
- message.phpGenericServices = Boolean(object.phpGenericServices);
5330
5853
  if (object.deprecated != null)
5331
5854
  message.deprecated = Boolean(object.deprecated);
5332
5855
  if (object.ccEnableArenas != null)
@@ -5345,6 +5868,11 @@
5345
5868
  message.phpMetadataNamespace = String(object.phpMetadataNamespace);
5346
5869
  if (object.rubyPackage != null)
5347
5870
  message.rubyPackage = String(object.rubyPackage);
5871
+ if (object.features != null) {
5872
+ if (typeof object.features !== "object")
5873
+ throw TypeError(".google.protobuf.FileOptions.features: object expected");
5874
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
5875
+ }
5348
5876
  if (object.uninterpretedOption) {
5349
5877
  if (!Array.isArray(object.uninterpretedOption))
5350
5878
  throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected");
@@ -5403,9 +5931,9 @@
5403
5931
  object.swiftPrefix = "";
5404
5932
  object.phpClassPrefix = "";
5405
5933
  object.phpNamespace = "";
5406
- object.phpGenericServices = false;
5407
5934
  object.phpMetadataNamespace = "";
5408
5935
  object.rubyPackage = "";
5936
+ object.features = null;
5409
5937
  }
5410
5938
  if (message.javaPackage != null && message.hasOwnProperty("javaPackage"))
5411
5939
  object.javaPackage = message.javaPackage;
@@ -5441,12 +5969,12 @@
5441
5969
  object.phpClassPrefix = message.phpClassPrefix;
5442
5970
  if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace"))
5443
5971
  object.phpNamespace = message.phpNamespace;
5444
- if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices"))
5445
- object.phpGenericServices = message.phpGenericServices;
5446
5972
  if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace"))
5447
5973
  object.phpMetadataNamespace = message.phpMetadataNamespace;
5448
5974
  if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage"))
5449
5975
  object.rubyPackage = message.rubyPackage;
5976
+ if (message.features != null && message.hasOwnProperty("features"))
5977
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
5450
5978
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
5451
5979
  object.uninterpretedOption = [];
5452
5980
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -5516,6 +6044,7 @@
5516
6044
  * @property {boolean|null} [deprecated] MessageOptions deprecated
5517
6045
  * @property {boolean|null} [mapEntry] MessageOptions mapEntry
5518
6046
  * @property {boolean|null} [deprecatedLegacyJsonFieldConflicts] MessageOptions deprecatedLegacyJsonFieldConflicts
6047
+ * @property {google.protobuf.IFeatureSet|null} [features] MessageOptions features
5519
6048
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] MessageOptions uninterpretedOption
5520
6049
  * @property {google.api.IResourceDescriptor|null} [".google.api.resource"] MessageOptions .google.api.resource
5521
6050
  */
@@ -5576,6 +6105,14 @@
5576
6105
  */
5577
6106
  MessageOptions.prototype.deprecatedLegacyJsonFieldConflicts = false;
5578
6107
 
6108
+ /**
6109
+ * MessageOptions features.
6110
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
6111
+ * @memberof google.protobuf.MessageOptions
6112
+ * @instance
6113
+ */
6114
+ MessageOptions.prototype.features = null;
6115
+
5579
6116
  /**
5580
6117
  * MessageOptions uninterpretedOption.
5581
6118
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -5626,6 +6163,8 @@
5626
6163
  writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry);
5627
6164
  if (message.deprecatedLegacyJsonFieldConflicts != null && Object.hasOwnProperty.call(message, "deprecatedLegacyJsonFieldConflicts"))
5628
6165
  writer.uint32(/* id 11, wireType 0 =*/88).bool(message.deprecatedLegacyJsonFieldConflicts);
6166
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
6167
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim();
5629
6168
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
5630
6169
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
5631
6170
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -5685,6 +6224,10 @@
5685
6224
  message.deprecatedLegacyJsonFieldConflicts = reader.bool();
5686
6225
  break;
5687
6226
  }
6227
+ case 12: {
6228
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
6229
+ break;
6230
+ }
5688
6231
  case 999: {
5689
6232
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
5690
6233
  message.uninterpretedOption = [];
@@ -5745,6 +6288,11 @@
5745
6288
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
5746
6289
  if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean")
5747
6290
  return "deprecatedLegacyJsonFieldConflicts: boolean expected";
6291
+ if (message.features != null && message.hasOwnProperty("features")) {
6292
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
6293
+ if (error)
6294
+ return "features." + error;
6295
+ }
5748
6296
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
5749
6297
  if (!Array.isArray(message.uninterpretedOption))
5750
6298
  return "uninterpretedOption: array expected";
@@ -5784,6 +6332,11 @@
5784
6332
  message.mapEntry = Boolean(object.mapEntry);
5785
6333
  if (object.deprecatedLegacyJsonFieldConflicts != null)
5786
6334
  message.deprecatedLegacyJsonFieldConflicts = Boolean(object.deprecatedLegacyJsonFieldConflicts);
6335
+ if (object.features != null) {
6336
+ if (typeof object.features !== "object")
6337
+ throw TypeError(".google.protobuf.MessageOptions.features: object expected");
6338
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
6339
+ }
5787
6340
  if (object.uninterpretedOption) {
5788
6341
  if (!Array.isArray(object.uninterpretedOption))
5789
6342
  throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected");
@@ -5823,6 +6376,7 @@
5823
6376
  object.deprecated = false;
5824
6377
  object.mapEntry = false;
5825
6378
  object.deprecatedLegacyJsonFieldConflicts = false;
6379
+ object.features = null;
5826
6380
  object[".google.api.resource"] = null;
5827
6381
  }
5828
6382
  if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat"))
@@ -5835,6 +6389,8 @@
5835
6389
  object.mapEntry = message.mapEntry;
5836
6390
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
5837
6391
  object.deprecatedLegacyJsonFieldConflicts = message.deprecatedLegacyJsonFieldConflicts;
6392
+ if (message.features != null && message.hasOwnProperty("features"))
6393
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
5838
6394
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
5839
6395
  object.uninterpretedOption = [];
5840
6396
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -5889,7 +6445,9 @@
5889
6445
  * @property {boolean|null} [weak] FieldOptions weak
5890
6446
  * @property {boolean|null} [debugRedact] FieldOptions debugRedact
5891
6447
  * @property {google.protobuf.FieldOptions.OptionRetention|null} [retention] FieldOptions retention
5892
- * @property {google.protobuf.FieldOptions.OptionTargetType|null} [target] FieldOptions target
6448
+ * @property {Array.<google.protobuf.FieldOptions.OptionTargetType>|null} [targets] FieldOptions targets
6449
+ * @property {Array.<google.protobuf.FieldOptions.IEditionDefault>|null} [editionDefaults] FieldOptions editionDefaults
6450
+ * @property {google.protobuf.IFeatureSet|null} [features] FieldOptions features
5893
6451
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] FieldOptions uninterpretedOption
5894
6452
  * @property {Array.<google.api.FieldBehavior>|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior
5895
6453
  * @property {google.api.IResourceReference|null} [".google.api.resourceReference"] FieldOptions .google.api.resourceReference
@@ -5904,6 +6462,8 @@
5904
6462
  * @param {google.protobuf.IFieldOptions=} [properties] Properties to set
5905
6463
  */
5906
6464
  function FieldOptions(properties) {
6465
+ this.targets = [];
6466
+ this.editionDefaults = [];
5907
6467
  this.uninterpretedOption = [];
5908
6468
  this[".google.api.fieldBehavior"] = [];
5909
6469
  if (properties)
@@ -5985,12 +6545,28 @@
5985
6545
  FieldOptions.prototype.retention = 0;
5986
6546
 
5987
6547
  /**
5988
- * FieldOptions target.
5989
- * @member {google.protobuf.FieldOptions.OptionTargetType} target
6548
+ * FieldOptions targets.
6549
+ * @member {Array.<google.protobuf.FieldOptions.OptionTargetType>} targets
6550
+ * @memberof google.protobuf.FieldOptions
6551
+ * @instance
6552
+ */
6553
+ FieldOptions.prototype.targets = $util.emptyArray;
6554
+
6555
+ /**
6556
+ * FieldOptions editionDefaults.
6557
+ * @member {Array.<google.protobuf.FieldOptions.IEditionDefault>} editionDefaults
6558
+ * @memberof google.protobuf.FieldOptions
6559
+ * @instance
6560
+ */
6561
+ FieldOptions.prototype.editionDefaults = $util.emptyArray;
6562
+
6563
+ /**
6564
+ * FieldOptions features.
6565
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
5990
6566
  * @memberof google.protobuf.FieldOptions
5991
6567
  * @instance
5992
6568
  */
5993
- FieldOptions.prototype.target = 0;
6569
+ FieldOptions.prototype.features = null;
5994
6570
 
5995
6571
  /**
5996
6572
  * FieldOptions uninterpretedOption.
@@ -6058,8 +6634,14 @@
6058
6634
  writer.uint32(/* id 16, wireType 0 =*/128).bool(message.debugRedact);
6059
6635
  if (message.retention != null && Object.hasOwnProperty.call(message, "retention"))
6060
6636
  writer.uint32(/* id 17, wireType 0 =*/136).int32(message.retention);
6061
- if (message.target != null && Object.hasOwnProperty.call(message, "target"))
6062
- writer.uint32(/* id 18, wireType 0 =*/144).int32(message.target);
6637
+ if (message.targets != null && message.targets.length)
6638
+ for (var i = 0; i < message.targets.length; ++i)
6639
+ writer.uint32(/* id 19, wireType 0 =*/152).int32(message.targets[i]);
6640
+ if (message.editionDefaults != null && message.editionDefaults.length)
6641
+ for (var i = 0; i < message.editionDefaults.length; ++i)
6642
+ $root.google.protobuf.FieldOptions.EditionDefault.encode(message.editionDefaults[i], writer.uint32(/* id 20, wireType 2 =*/162).fork()).ldelim();
6643
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
6644
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 21, wireType 2 =*/170).fork()).ldelim();
6063
6645
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
6064
6646
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
6065
6647
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -6141,8 +6723,25 @@
6141
6723
  message.retention = reader.int32();
6142
6724
  break;
6143
6725
  }
6144
- case 18: {
6145
- message.target = reader.int32();
6726
+ case 19: {
6727
+ if (!(message.targets && message.targets.length))
6728
+ message.targets = [];
6729
+ if ((tag & 7) === 2) {
6730
+ var end2 = reader.uint32() + reader.pos;
6731
+ while (reader.pos < end2)
6732
+ message.targets.push(reader.int32());
6733
+ } else
6734
+ message.targets.push(reader.int32());
6735
+ break;
6736
+ }
6737
+ case 20: {
6738
+ if (!(message.editionDefaults && message.editionDefaults.length))
6739
+ message.editionDefaults = [];
6740
+ message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32()));
6741
+ break;
6742
+ }
6743
+ case 21: {
6744
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
6146
6745
  break;
6147
6746
  }
6148
6747
  case 999: {
@@ -6246,22 +6845,40 @@
6246
6845
  case 2:
6247
6846
  break;
6248
6847
  }
6249
- if (message.target != null && message.hasOwnProperty("target"))
6250
- switch (message.target) {
6251
- default:
6252
- return "target: enum value expected";
6253
- case 0:
6254
- case 1:
6255
- case 2:
6256
- case 3:
6257
- case 4:
6258
- case 5:
6259
- case 6:
6260
- case 7:
6261
- case 8:
6262
- case 9:
6263
- break;
6848
+ if (message.targets != null && message.hasOwnProperty("targets")) {
6849
+ if (!Array.isArray(message.targets))
6850
+ return "targets: array expected";
6851
+ for (var i = 0; i < message.targets.length; ++i)
6852
+ switch (message.targets[i]) {
6853
+ default:
6854
+ return "targets: enum value[] expected";
6855
+ case 0:
6856
+ case 1:
6857
+ case 2:
6858
+ case 3:
6859
+ case 4:
6860
+ case 5:
6861
+ case 6:
6862
+ case 7:
6863
+ case 8:
6864
+ case 9:
6865
+ break;
6866
+ }
6867
+ }
6868
+ if (message.editionDefaults != null && message.hasOwnProperty("editionDefaults")) {
6869
+ if (!Array.isArray(message.editionDefaults))
6870
+ return "editionDefaults: array expected";
6871
+ for (var i = 0; i < message.editionDefaults.length; ++i) {
6872
+ var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]);
6873
+ if (error)
6874
+ return "editionDefaults." + error;
6264
6875
  }
6876
+ }
6877
+ if (message.features != null && message.hasOwnProperty("features")) {
6878
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
6879
+ if (error)
6880
+ return "features." + error;
6881
+ }
6265
6882
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
6266
6883
  if (!Array.isArray(message.uninterpretedOption))
6267
6884
  return "uninterpretedOption: array expected";
@@ -6286,6 +6903,7 @@
6286
6903
  case 5:
6287
6904
  case 6:
6288
6905
  case 7:
6906
+ case 8:
6289
6907
  break;
6290
6908
  }
6291
6909
  }
@@ -6381,53 +6999,73 @@
6381
6999
  message.retention = 2;
6382
7000
  break;
6383
7001
  }
6384
- switch (object.target) {
6385
- default:
6386
- if (typeof object.target === "number") {
6387
- message.target = object.target;
6388
- break;
7002
+ if (object.targets) {
7003
+ if (!Array.isArray(object.targets))
7004
+ throw TypeError(".google.protobuf.FieldOptions.targets: array expected");
7005
+ message.targets = [];
7006
+ for (var i = 0; i < object.targets.length; ++i)
7007
+ switch (object.targets[i]) {
7008
+ default:
7009
+ if (typeof object.targets[i] === "number") {
7010
+ message.targets[i] = object.targets[i];
7011
+ break;
7012
+ }
7013
+ case "TARGET_TYPE_UNKNOWN":
7014
+ case 0:
7015
+ message.targets[i] = 0;
7016
+ break;
7017
+ case "TARGET_TYPE_FILE":
7018
+ case 1:
7019
+ message.targets[i] = 1;
7020
+ break;
7021
+ case "TARGET_TYPE_EXTENSION_RANGE":
7022
+ case 2:
7023
+ message.targets[i] = 2;
7024
+ break;
7025
+ case "TARGET_TYPE_MESSAGE":
7026
+ case 3:
7027
+ message.targets[i] = 3;
7028
+ break;
7029
+ case "TARGET_TYPE_FIELD":
7030
+ case 4:
7031
+ message.targets[i] = 4;
7032
+ break;
7033
+ case "TARGET_TYPE_ONEOF":
7034
+ case 5:
7035
+ message.targets[i] = 5;
7036
+ break;
7037
+ case "TARGET_TYPE_ENUM":
7038
+ case 6:
7039
+ message.targets[i] = 6;
7040
+ break;
7041
+ case "TARGET_TYPE_ENUM_ENTRY":
7042
+ case 7:
7043
+ message.targets[i] = 7;
7044
+ break;
7045
+ case "TARGET_TYPE_SERVICE":
7046
+ case 8:
7047
+ message.targets[i] = 8;
7048
+ break;
7049
+ case "TARGET_TYPE_METHOD":
7050
+ case 9:
7051
+ message.targets[i] = 9;
7052
+ break;
7053
+ }
7054
+ }
7055
+ if (object.editionDefaults) {
7056
+ if (!Array.isArray(object.editionDefaults))
7057
+ throw TypeError(".google.protobuf.FieldOptions.editionDefaults: array expected");
7058
+ message.editionDefaults = [];
7059
+ for (var i = 0; i < object.editionDefaults.length; ++i) {
7060
+ if (typeof object.editionDefaults[i] !== "object")
7061
+ throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected");
7062
+ message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]);
6389
7063
  }
6390
- break;
6391
- case "TARGET_TYPE_UNKNOWN":
6392
- case 0:
6393
- message.target = 0;
6394
- break;
6395
- case "TARGET_TYPE_FILE":
6396
- case 1:
6397
- message.target = 1;
6398
- break;
6399
- case "TARGET_TYPE_EXTENSION_RANGE":
6400
- case 2:
6401
- message.target = 2;
6402
- break;
6403
- case "TARGET_TYPE_MESSAGE":
6404
- case 3:
6405
- message.target = 3;
6406
- break;
6407
- case "TARGET_TYPE_FIELD":
6408
- case 4:
6409
- message.target = 4;
6410
- break;
6411
- case "TARGET_TYPE_ONEOF":
6412
- case 5:
6413
- message.target = 5;
6414
- break;
6415
- case "TARGET_TYPE_ENUM":
6416
- case 6:
6417
- message.target = 6;
6418
- break;
6419
- case "TARGET_TYPE_ENUM_ENTRY":
6420
- case 7:
6421
- message.target = 7;
6422
- break;
6423
- case "TARGET_TYPE_SERVICE":
6424
- case 8:
6425
- message.target = 8;
6426
- break;
6427
- case "TARGET_TYPE_METHOD":
6428
- case 9:
6429
- message.target = 9;
6430
- break;
7064
+ }
7065
+ if (object.features != null) {
7066
+ if (typeof object.features !== "object")
7067
+ throw TypeError(".google.protobuf.FieldOptions.features: object expected");
7068
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
6431
7069
  }
6432
7070
  if (object.uninterpretedOption) {
6433
7071
  if (!Array.isArray(object.uninterpretedOption))
@@ -6482,6 +7120,10 @@
6482
7120
  case 7:
6483
7121
  message[".google.api.fieldBehavior"][i] = 7;
6484
7122
  break;
7123
+ case "IDENTIFIER":
7124
+ case 8:
7125
+ message[".google.api.fieldBehavior"][i] = 8;
7126
+ break;
6485
7127
  }
6486
7128
  }
6487
7129
  if (object[".google.api.resourceReference"] != null) {
@@ -6506,6 +7148,8 @@
6506
7148
  options = {};
6507
7149
  var object = {};
6508
7150
  if (options.arrays || options.defaults) {
7151
+ object.targets = [];
7152
+ object.editionDefaults = [];
6509
7153
  object.uninterpretedOption = [];
6510
7154
  object[".google.api.fieldBehavior"] = [];
6511
7155
  }
@@ -6519,7 +7163,7 @@
6519
7163
  object.unverifiedLazy = false;
6520
7164
  object.debugRedact = false;
6521
7165
  object.retention = options.enums === String ? "RETENTION_UNKNOWN" : 0;
6522
- object.target = options.enums === String ? "TARGET_TYPE_UNKNOWN" : 0;
7166
+ object.features = null;
6523
7167
  object[".google.api.resourceReference"] = null;
6524
7168
  }
6525
7169
  if (message.ctype != null && message.hasOwnProperty("ctype"))
@@ -6540,8 +7184,18 @@
6540
7184
  object.debugRedact = message.debugRedact;
6541
7185
  if (message.retention != null && message.hasOwnProperty("retention"))
6542
7186
  object.retention = options.enums === String ? $root.google.protobuf.FieldOptions.OptionRetention[message.retention] === undefined ? message.retention : $root.google.protobuf.FieldOptions.OptionRetention[message.retention] : message.retention;
6543
- if (message.target != null && message.hasOwnProperty("target"))
6544
- object.target = options.enums === String ? $root.google.protobuf.FieldOptions.OptionTargetType[message.target] === undefined ? message.target : $root.google.protobuf.FieldOptions.OptionTargetType[message.target] : message.target;
7187
+ if (message.targets && message.targets.length) {
7188
+ object.targets = [];
7189
+ for (var j = 0; j < message.targets.length; ++j)
7190
+ 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];
7191
+ }
7192
+ if (message.editionDefaults && message.editionDefaults.length) {
7193
+ object.editionDefaults = [];
7194
+ for (var j = 0; j < message.editionDefaults.length; ++j)
7195
+ object.editionDefaults[j] = $root.google.protobuf.FieldOptions.EditionDefault.toObject(message.editionDefaults[j], options);
7196
+ }
7197
+ if (message.features != null && message.hasOwnProperty("features"))
7198
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
6545
7199
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
6546
7200
  object.uninterpretedOption = [];
6547
7201
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -6661,103 +7315,409 @@
6661
7315
  return values;
6662
7316
  })();
6663
7317
 
6664
- return FieldOptions;
6665
- })();
7318
+ FieldOptions.EditionDefault = (function() {
6666
7319
 
6667
- protobuf.OneofOptions = (function() {
7320
+ /**
7321
+ * Properties of an EditionDefault.
7322
+ * @memberof google.protobuf.FieldOptions
7323
+ * @interface IEditionDefault
7324
+ * @property {google.protobuf.Edition|null} [edition] EditionDefault edition
7325
+ * @property {string|null} [value] EditionDefault value
7326
+ */
6668
7327
 
6669
- /**
6670
- * Properties of an OneofOptions.
6671
- * @memberof google.protobuf
6672
- * @interface IOneofOptions
6673
- * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] OneofOptions uninterpretedOption
6674
- */
7328
+ /**
7329
+ * Constructs a new EditionDefault.
7330
+ * @memberof google.protobuf.FieldOptions
7331
+ * @classdesc Represents an EditionDefault.
7332
+ * @implements IEditionDefault
7333
+ * @constructor
7334
+ * @param {google.protobuf.FieldOptions.IEditionDefault=} [properties] Properties to set
7335
+ */
7336
+ function EditionDefault(properties) {
7337
+ if (properties)
7338
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
7339
+ if (properties[keys[i]] != null)
7340
+ this[keys[i]] = properties[keys[i]];
7341
+ }
6675
7342
 
6676
- /**
6677
- * Constructs a new OneofOptions.
6678
- * @memberof google.protobuf
6679
- * @classdesc Represents an OneofOptions.
6680
- * @implements IOneofOptions
6681
- * @constructor
6682
- * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
6683
- */
6684
- function OneofOptions(properties) {
6685
- this.uninterpretedOption = [];
6686
- if (properties)
6687
- for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
6688
- if (properties[keys[i]] != null)
6689
- this[keys[i]] = properties[keys[i]];
6690
- }
7343
+ /**
7344
+ * EditionDefault edition.
7345
+ * @member {google.protobuf.Edition} edition
7346
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7347
+ * @instance
7348
+ */
7349
+ EditionDefault.prototype.edition = 0;
6691
7350
 
6692
- /**
6693
- * OneofOptions uninterpretedOption.
6694
- * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
6695
- * @memberof google.protobuf.OneofOptions
6696
- * @instance
6697
- */
6698
- OneofOptions.prototype.uninterpretedOption = $util.emptyArray;
7351
+ /**
7352
+ * EditionDefault value.
7353
+ * @member {string} value
7354
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7355
+ * @instance
7356
+ */
7357
+ EditionDefault.prototype.value = "";
6699
7358
 
6700
- /**
6701
- * Creates a new OneofOptions instance using the specified properties.
6702
- * @function create
6703
- * @memberof google.protobuf.OneofOptions
6704
- * @static
6705
- * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
6706
- * @returns {google.protobuf.OneofOptions} OneofOptions instance
6707
- */
6708
- OneofOptions.create = function create(properties) {
6709
- return new OneofOptions(properties);
6710
- };
7359
+ /**
7360
+ * Creates a new EditionDefault instance using the specified properties.
7361
+ * @function create
7362
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7363
+ * @static
7364
+ * @param {google.protobuf.FieldOptions.IEditionDefault=} [properties] Properties to set
7365
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault instance
7366
+ */
7367
+ EditionDefault.create = function create(properties) {
7368
+ return new EditionDefault(properties);
7369
+ };
6711
7370
 
6712
- /**
6713
- * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
6714
- * @function encode
6715
- * @memberof google.protobuf.OneofOptions
6716
- * @static
6717
- * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
6718
- * @param {$protobuf.Writer} [writer] Writer to encode to
6719
- * @returns {$protobuf.Writer} Writer
6720
- */
6721
- OneofOptions.encode = function encode(message, writer) {
6722
- if (!writer)
6723
- writer = $Writer.create();
6724
- if (message.uninterpretedOption != null && message.uninterpretedOption.length)
6725
- for (var i = 0; i < message.uninterpretedOption.length; ++i)
6726
- $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
6727
- return writer;
6728
- };
7371
+ /**
7372
+ * Encodes the specified EditionDefault message. Does not implicitly {@link google.protobuf.FieldOptions.EditionDefault.verify|verify} messages.
7373
+ * @function encode
7374
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7375
+ * @static
7376
+ * @param {google.protobuf.FieldOptions.IEditionDefault} message EditionDefault message or plain object to encode
7377
+ * @param {$protobuf.Writer} [writer] Writer to encode to
7378
+ * @returns {$protobuf.Writer} Writer
7379
+ */
7380
+ EditionDefault.encode = function encode(message, writer) {
7381
+ if (!writer)
7382
+ writer = $Writer.create();
7383
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
7384
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.value);
7385
+ if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
7386
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.edition);
7387
+ return writer;
7388
+ };
6729
7389
 
6730
- /**
6731
- * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
6732
- * @function encodeDelimited
6733
- * @memberof google.protobuf.OneofOptions
6734
- * @static
6735
- * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
6736
- * @param {$protobuf.Writer} [writer] Writer to encode to
6737
- * @returns {$protobuf.Writer} Writer
6738
- */
6739
- OneofOptions.encodeDelimited = function encodeDelimited(message, writer) {
6740
- return this.encode(message, writer).ldelim();
6741
- };
7390
+ /**
7391
+ * Encodes the specified EditionDefault message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.EditionDefault.verify|verify} messages.
7392
+ * @function encodeDelimited
7393
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7394
+ * @static
7395
+ * @param {google.protobuf.FieldOptions.IEditionDefault} message EditionDefault message or plain object to encode
7396
+ * @param {$protobuf.Writer} [writer] Writer to encode to
7397
+ * @returns {$protobuf.Writer} Writer
7398
+ */
7399
+ EditionDefault.encodeDelimited = function encodeDelimited(message, writer) {
7400
+ return this.encode(message, writer).ldelim();
7401
+ };
6742
7402
 
6743
- /**
6744
- * Decodes an OneofOptions message from the specified reader or buffer.
6745
- * @function decode
6746
- * @memberof google.protobuf.OneofOptions
6747
- * @static
6748
- * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6749
- * @param {number} [length] Message length if known beforehand
6750
- * @returns {google.protobuf.OneofOptions} OneofOptions
6751
- * @throws {Error} If the payload is not a reader or valid buffer
6752
- * @throws {$protobuf.util.ProtocolError} If required fields are missing
6753
- */
6754
- OneofOptions.decode = function decode(reader, length) {
6755
- if (!(reader instanceof $Reader))
7403
+ /**
7404
+ * Decodes an EditionDefault message from the specified reader or buffer.
7405
+ * @function decode
7406
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7407
+ * @static
7408
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7409
+ * @param {number} [length] Message length if known beforehand
7410
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault
7411
+ * @throws {Error} If the payload is not a reader or valid buffer
7412
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
7413
+ */
7414
+ EditionDefault.decode = function decode(reader, length) {
7415
+ if (!(reader instanceof $Reader))
7416
+ reader = $Reader.create(reader);
7417
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault();
7418
+ while (reader.pos < end) {
7419
+ var tag = reader.uint32();
7420
+ switch (tag >>> 3) {
7421
+ case 3: {
7422
+ message.edition = reader.int32();
7423
+ break;
7424
+ }
7425
+ case 2: {
7426
+ message.value = reader.string();
7427
+ break;
7428
+ }
7429
+ default:
7430
+ reader.skipType(tag & 7);
7431
+ break;
7432
+ }
7433
+ }
7434
+ return message;
7435
+ };
7436
+
7437
+ /**
7438
+ * Decodes an EditionDefault message from the specified reader or buffer, length delimited.
7439
+ * @function decodeDelimited
7440
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7441
+ * @static
7442
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7443
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault
7444
+ * @throws {Error} If the payload is not a reader or valid buffer
7445
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
7446
+ */
7447
+ EditionDefault.decodeDelimited = function decodeDelimited(reader) {
7448
+ if (!(reader instanceof $Reader))
7449
+ reader = new $Reader(reader);
7450
+ return this.decode(reader, reader.uint32());
7451
+ };
7452
+
7453
+ /**
7454
+ * Verifies an EditionDefault message.
7455
+ * @function verify
7456
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7457
+ * @static
7458
+ * @param {Object.<string,*>} message Plain object to verify
7459
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
7460
+ */
7461
+ EditionDefault.verify = function verify(message) {
7462
+ if (typeof message !== "object" || message === null)
7463
+ return "object expected";
7464
+ if (message.edition != null && message.hasOwnProperty("edition"))
7465
+ switch (message.edition) {
7466
+ default:
7467
+ return "edition: enum value expected";
7468
+ case 0:
7469
+ case 998:
7470
+ case 999:
7471
+ case 1000:
7472
+ case 1001:
7473
+ case 1:
7474
+ case 2:
7475
+ case 99997:
7476
+ case 99998:
7477
+ case 99999:
7478
+ case 2147483647:
7479
+ break;
7480
+ }
7481
+ if (message.value != null && message.hasOwnProperty("value"))
7482
+ if (!$util.isString(message.value))
7483
+ return "value: string expected";
7484
+ return null;
7485
+ };
7486
+
7487
+ /**
7488
+ * Creates an EditionDefault message from a plain object. Also converts values to their respective internal types.
7489
+ * @function fromObject
7490
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7491
+ * @static
7492
+ * @param {Object.<string,*>} object Plain object
7493
+ * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault
7494
+ */
7495
+ EditionDefault.fromObject = function fromObject(object) {
7496
+ if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault)
7497
+ return object;
7498
+ var message = new $root.google.protobuf.FieldOptions.EditionDefault();
7499
+ switch (object.edition) {
7500
+ default:
7501
+ if (typeof object.edition === "number") {
7502
+ message.edition = object.edition;
7503
+ break;
7504
+ }
7505
+ break;
7506
+ case "EDITION_UNKNOWN":
7507
+ case 0:
7508
+ message.edition = 0;
7509
+ break;
7510
+ case "EDITION_PROTO2":
7511
+ case 998:
7512
+ message.edition = 998;
7513
+ break;
7514
+ case "EDITION_PROTO3":
7515
+ case 999:
7516
+ message.edition = 999;
7517
+ break;
7518
+ case "EDITION_2023":
7519
+ case 1000:
7520
+ message.edition = 1000;
7521
+ break;
7522
+ case "EDITION_2024":
7523
+ case 1001:
7524
+ message.edition = 1001;
7525
+ break;
7526
+ case "EDITION_1_TEST_ONLY":
7527
+ case 1:
7528
+ message.edition = 1;
7529
+ break;
7530
+ case "EDITION_2_TEST_ONLY":
7531
+ case 2:
7532
+ message.edition = 2;
7533
+ break;
7534
+ case "EDITION_99997_TEST_ONLY":
7535
+ case 99997:
7536
+ message.edition = 99997;
7537
+ break;
7538
+ case "EDITION_99998_TEST_ONLY":
7539
+ case 99998:
7540
+ message.edition = 99998;
7541
+ break;
7542
+ case "EDITION_99999_TEST_ONLY":
7543
+ case 99999:
7544
+ message.edition = 99999;
7545
+ break;
7546
+ case "EDITION_MAX":
7547
+ case 2147483647:
7548
+ message.edition = 2147483647;
7549
+ break;
7550
+ }
7551
+ if (object.value != null)
7552
+ message.value = String(object.value);
7553
+ return message;
7554
+ };
7555
+
7556
+ /**
7557
+ * Creates a plain object from an EditionDefault message. Also converts values to other types if specified.
7558
+ * @function toObject
7559
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7560
+ * @static
7561
+ * @param {google.protobuf.FieldOptions.EditionDefault} message EditionDefault
7562
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
7563
+ * @returns {Object.<string,*>} Plain object
7564
+ */
7565
+ EditionDefault.toObject = function toObject(message, options) {
7566
+ if (!options)
7567
+ options = {};
7568
+ var object = {};
7569
+ if (options.defaults) {
7570
+ object.value = "";
7571
+ object.edition = options.enums === String ? "EDITION_UNKNOWN" : 0;
7572
+ }
7573
+ if (message.value != null && message.hasOwnProperty("value"))
7574
+ object.value = message.value;
7575
+ if (message.edition != null && message.hasOwnProperty("edition"))
7576
+ object.edition = options.enums === String ? $root.google.protobuf.Edition[message.edition] === undefined ? message.edition : $root.google.protobuf.Edition[message.edition] : message.edition;
7577
+ return object;
7578
+ };
7579
+
7580
+ /**
7581
+ * Converts this EditionDefault to JSON.
7582
+ * @function toJSON
7583
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7584
+ * @instance
7585
+ * @returns {Object.<string,*>} JSON object
7586
+ */
7587
+ EditionDefault.prototype.toJSON = function toJSON() {
7588
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
7589
+ };
7590
+
7591
+ /**
7592
+ * Gets the default type url for EditionDefault
7593
+ * @function getTypeUrl
7594
+ * @memberof google.protobuf.FieldOptions.EditionDefault
7595
+ * @static
7596
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
7597
+ * @returns {string} The default type url
7598
+ */
7599
+ EditionDefault.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
7600
+ if (typeUrlPrefix === undefined) {
7601
+ typeUrlPrefix = "type.googleapis.com";
7602
+ }
7603
+ return typeUrlPrefix + "/google.protobuf.FieldOptions.EditionDefault";
7604
+ };
7605
+
7606
+ return EditionDefault;
7607
+ })();
7608
+
7609
+ return FieldOptions;
7610
+ })();
7611
+
7612
+ protobuf.OneofOptions = (function() {
7613
+
7614
+ /**
7615
+ * Properties of an OneofOptions.
7616
+ * @memberof google.protobuf
7617
+ * @interface IOneofOptions
7618
+ * @property {google.protobuf.IFeatureSet|null} [features] OneofOptions features
7619
+ * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] OneofOptions uninterpretedOption
7620
+ */
7621
+
7622
+ /**
7623
+ * Constructs a new OneofOptions.
7624
+ * @memberof google.protobuf
7625
+ * @classdesc Represents an OneofOptions.
7626
+ * @implements IOneofOptions
7627
+ * @constructor
7628
+ * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
7629
+ */
7630
+ function OneofOptions(properties) {
7631
+ this.uninterpretedOption = [];
7632
+ if (properties)
7633
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
7634
+ if (properties[keys[i]] != null)
7635
+ this[keys[i]] = properties[keys[i]];
7636
+ }
7637
+
7638
+ /**
7639
+ * OneofOptions features.
7640
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
7641
+ * @memberof google.protobuf.OneofOptions
7642
+ * @instance
7643
+ */
7644
+ OneofOptions.prototype.features = null;
7645
+
7646
+ /**
7647
+ * OneofOptions uninterpretedOption.
7648
+ * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
7649
+ * @memberof google.protobuf.OneofOptions
7650
+ * @instance
7651
+ */
7652
+ OneofOptions.prototype.uninterpretedOption = $util.emptyArray;
7653
+
7654
+ /**
7655
+ * Creates a new OneofOptions instance using the specified properties.
7656
+ * @function create
7657
+ * @memberof google.protobuf.OneofOptions
7658
+ * @static
7659
+ * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
7660
+ * @returns {google.protobuf.OneofOptions} OneofOptions instance
7661
+ */
7662
+ OneofOptions.create = function create(properties) {
7663
+ return new OneofOptions(properties);
7664
+ };
7665
+
7666
+ /**
7667
+ * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
7668
+ * @function encode
7669
+ * @memberof google.protobuf.OneofOptions
7670
+ * @static
7671
+ * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
7672
+ * @param {$protobuf.Writer} [writer] Writer to encode to
7673
+ * @returns {$protobuf.Writer} Writer
7674
+ */
7675
+ OneofOptions.encode = function encode(message, writer) {
7676
+ if (!writer)
7677
+ writer = $Writer.create();
7678
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
7679
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
7680
+ if (message.uninterpretedOption != null && message.uninterpretedOption.length)
7681
+ for (var i = 0; i < message.uninterpretedOption.length; ++i)
7682
+ $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
7683
+ return writer;
7684
+ };
7685
+
7686
+ /**
7687
+ * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
7688
+ * @function encodeDelimited
7689
+ * @memberof google.protobuf.OneofOptions
7690
+ * @static
7691
+ * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
7692
+ * @param {$protobuf.Writer} [writer] Writer to encode to
7693
+ * @returns {$protobuf.Writer} Writer
7694
+ */
7695
+ OneofOptions.encodeDelimited = function encodeDelimited(message, writer) {
7696
+ return this.encode(message, writer).ldelim();
7697
+ };
7698
+
7699
+ /**
7700
+ * Decodes an OneofOptions message from the specified reader or buffer.
7701
+ * @function decode
7702
+ * @memberof google.protobuf.OneofOptions
7703
+ * @static
7704
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7705
+ * @param {number} [length] Message length if known beforehand
7706
+ * @returns {google.protobuf.OneofOptions} OneofOptions
7707
+ * @throws {Error} If the payload is not a reader or valid buffer
7708
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
7709
+ */
7710
+ OneofOptions.decode = function decode(reader, length) {
7711
+ if (!(reader instanceof $Reader))
6756
7712
  reader = $Reader.create(reader);
6757
7713
  var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions();
6758
7714
  while (reader.pos < end) {
6759
7715
  var tag = reader.uint32();
6760
7716
  switch (tag >>> 3) {
7717
+ case 1: {
7718
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
7719
+ break;
7720
+ }
6761
7721
  case 999: {
6762
7722
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
6763
7723
  message.uninterpretedOption = [];
@@ -6799,6 +7759,11 @@
6799
7759
  OneofOptions.verify = function verify(message) {
6800
7760
  if (typeof message !== "object" || message === null)
6801
7761
  return "object expected";
7762
+ if (message.features != null && message.hasOwnProperty("features")) {
7763
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
7764
+ if (error)
7765
+ return "features." + error;
7766
+ }
6802
7767
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
6803
7768
  if (!Array.isArray(message.uninterpretedOption))
6804
7769
  return "uninterpretedOption: array expected";
@@ -6823,6 +7788,11 @@
6823
7788
  if (object instanceof $root.google.protobuf.OneofOptions)
6824
7789
  return object;
6825
7790
  var message = new $root.google.protobuf.OneofOptions();
7791
+ if (object.features != null) {
7792
+ if (typeof object.features !== "object")
7793
+ throw TypeError(".google.protobuf.OneofOptions.features: object expected");
7794
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
7795
+ }
6826
7796
  if (object.uninterpretedOption) {
6827
7797
  if (!Array.isArray(object.uninterpretedOption))
6828
7798
  throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected");
@@ -6851,6 +7821,10 @@
6851
7821
  var object = {};
6852
7822
  if (options.arrays || options.defaults)
6853
7823
  object.uninterpretedOption = [];
7824
+ if (options.defaults)
7825
+ object.features = null;
7826
+ if (message.features != null && message.hasOwnProperty("features"))
7827
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
6854
7828
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
6855
7829
  object.uninterpretedOption = [];
6856
7830
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -6897,6 +7871,7 @@
6897
7871
  * @property {boolean|null} [allowAlias] EnumOptions allowAlias
6898
7872
  * @property {boolean|null} [deprecated] EnumOptions deprecated
6899
7873
  * @property {boolean|null} [deprecatedLegacyJsonFieldConflicts] EnumOptions deprecatedLegacyJsonFieldConflicts
7874
+ * @property {google.protobuf.IFeatureSet|null} [features] EnumOptions features
6900
7875
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] EnumOptions uninterpretedOption
6901
7876
  */
6902
7877
 
@@ -6940,6 +7915,14 @@
6940
7915
  */
6941
7916
  EnumOptions.prototype.deprecatedLegacyJsonFieldConflicts = false;
6942
7917
 
7918
+ /**
7919
+ * EnumOptions features.
7920
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
7921
+ * @memberof google.protobuf.EnumOptions
7922
+ * @instance
7923
+ */
7924
+ EnumOptions.prototype.features = null;
7925
+
6943
7926
  /**
6944
7927
  * EnumOptions uninterpretedOption.
6945
7928
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -6978,6 +7961,8 @@
6978
7961
  writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated);
6979
7962
  if (message.deprecatedLegacyJsonFieldConflicts != null && Object.hasOwnProperty.call(message, "deprecatedLegacyJsonFieldConflicts"))
6980
7963
  writer.uint32(/* id 6, wireType 0 =*/48).bool(message.deprecatedLegacyJsonFieldConflicts);
7964
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
7965
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
6981
7966
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
6982
7967
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
6983
7968
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -7027,6 +8012,10 @@
7027
8012
  message.deprecatedLegacyJsonFieldConflicts = reader.bool();
7028
8013
  break;
7029
8014
  }
8015
+ case 7: {
8016
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
8017
+ break;
8018
+ }
7030
8019
  case 999: {
7031
8020
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
7032
8021
  message.uninterpretedOption = [];
@@ -7077,6 +8066,11 @@
7077
8066
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
7078
8067
  if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean")
7079
8068
  return "deprecatedLegacyJsonFieldConflicts: boolean expected";
8069
+ if (message.features != null && message.hasOwnProperty("features")) {
8070
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
8071
+ if (error)
8072
+ return "features." + error;
8073
+ }
7080
8074
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
7081
8075
  if (!Array.isArray(message.uninterpretedOption))
7082
8076
  return "uninterpretedOption: array expected";
@@ -7107,6 +8101,11 @@
7107
8101
  message.deprecated = Boolean(object.deprecated);
7108
8102
  if (object.deprecatedLegacyJsonFieldConflicts != null)
7109
8103
  message.deprecatedLegacyJsonFieldConflicts = Boolean(object.deprecatedLegacyJsonFieldConflicts);
8104
+ if (object.features != null) {
8105
+ if (typeof object.features !== "object")
8106
+ throw TypeError(".google.protobuf.EnumOptions.features: object expected");
8107
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
8108
+ }
7110
8109
  if (object.uninterpretedOption) {
7111
8110
  if (!Array.isArray(object.uninterpretedOption))
7112
8111
  throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected");
@@ -7139,6 +8138,7 @@
7139
8138
  object.allowAlias = false;
7140
8139
  object.deprecated = false;
7141
8140
  object.deprecatedLegacyJsonFieldConflicts = false;
8141
+ object.features = null;
7142
8142
  }
7143
8143
  if (message.allowAlias != null && message.hasOwnProperty("allowAlias"))
7144
8144
  object.allowAlias = message.allowAlias;
@@ -7146,6 +8146,8 @@
7146
8146
  object.deprecated = message.deprecated;
7147
8147
  if (message.deprecatedLegacyJsonFieldConflicts != null && message.hasOwnProperty("deprecatedLegacyJsonFieldConflicts"))
7148
8148
  object.deprecatedLegacyJsonFieldConflicts = message.deprecatedLegacyJsonFieldConflicts;
8149
+ if (message.features != null && message.hasOwnProperty("features"))
8150
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
7149
8151
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
7150
8152
  object.uninterpretedOption = [];
7151
8153
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -7190,6 +8192,8 @@
7190
8192
  * @memberof google.protobuf
7191
8193
  * @interface IEnumValueOptions
7192
8194
  * @property {boolean|null} [deprecated] EnumValueOptions deprecated
8195
+ * @property {google.protobuf.IFeatureSet|null} [features] EnumValueOptions features
8196
+ * @property {boolean|null} [debugRedact] EnumValueOptions debugRedact
7193
8197
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] EnumValueOptions uninterpretedOption
7194
8198
  */
7195
8199
 
@@ -7217,6 +8221,22 @@
7217
8221
  */
7218
8222
  EnumValueOptions.prototype.deprecated = false;
7219
8223
 
8224
+ /**
8225
+ * EnumValueOptions features.
8226
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
8227
+ * @memberof google.protobuf.EnumValueOptions
8228
+ * @instance
8229
+ */
8230
+ EnumValueOptions.prototype.features = null;
8231
+
8232
+ /**
8233
+ * EnumValueOptions debugRedact.
8234
+ * @member {boolean} debugRedact
8235
+ * @memberof google.protobuf.EnumValueOptions
8236
+ * @instance
8237
+ */
8238
+ EnumValueOptions.prototype.debugRedact = false;
8239
+
7220
8240
  /**
7221
8241
  * EnumValueOptions uninterpretedOption.
7222
8242
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -7251,6 +8271,10 @@
7251
8271
  writer = $Writer.create();
7252
8272
  if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
7253
8273
  writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated);
8274
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
8275
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
8276
+ if (message.debugRedact != null && Object.hasOwnProperty.call(message, "debugRedact"))
8277
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.debugRedact);
7254
8278
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
7255
8279
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
7256
8280
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -7292,6 +8316,14 @@
7292
8316
  message.deprecated = reader.bool();
7293
8317
  break;
7294
8318
  }
8319
+ case 2: {
8320
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
8321
+ break;
8322
+ }
8323
+ case 3: {
8324
+ message.debugRedact = reader.bool();
8325
+ break;
8326
+ }
7295
8327
  case 999: {
7296
8328
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
7297
8329
  message.uninterpretedOption = [];
@@ -7336,9 +8368,17 @@
7336
8368
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
7337
8369
  if (typeof message.deprecated !== "boolean")
7338
8370
  return "deprecated: boolean expected";
7339
- if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
7340
- if (!Array.isArray(message.uninterpretedOption))
7341
- return "uninterpretedOption: array expected";
8371
+ if (message.features != null && message.hasOwnProperty("features")) {
8372
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
8373
+ if (error)
8374
+ return "features." + error;
8375
+ }
8376
+ if (message.debugRedact != null && message.hasOwnProperty("debugRedact"))
8377
+ if (typeof message.debugRedact !== "boolean")
8378
+ return "debugRedact: boolean expected";
8379
+ if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
8380
+ if (!Array.isArray(message.uninterpretedOption))
8381
+ return "uninterpretedOption: array expected";
7342
8382
  for (var i = 0; i < message.uninterpretedOption.length; ++i) {
7343
8383
  var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
7344
8384
  if (error)
@@ -7362,6 +8402,13 @@
7362
8402
  var message = new $root.google.protobuf.EnumValueOptions();
7363
8403
  if (object.deprecated != null)
7364
8404
  message.deprecated = Boolean(object.deprecated);
8405
+ if (object.features != null) {
8406
+ if (typeof object.features !== "object")
8407
+ throw TypeError(".google.protobuf.EnumValueOptions.features: object expected");
8408
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
8409
+ }
8410
+ if (object.debugRedact != null)
8411
+ message.debugRedact = Boolean(object.debugRedact);
7365
8412
  if (object.uninterpretedOption) {
7366
8413
  if (!Array.isArray(object.uninterpretedOption))
7367
8414
  throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected");
@@ -7390,10 +8437,17 @@
7390
8437
  var object = {};
7391
8438
  if (options.arrays || options.defaults)
7392
8439
  object.uninterpretedOption = [];
7393
- if (options.defaults)
8440
+ if (options.defaults) {
7394
8441
  object.deprecated = false;
8442
+ object.features = null;
8443
+ object.debugRedact = false;
8444
+ }
7395
8445
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
7396
8446
  object.deprecated = message.deprecated;
8447
+ if (message.features != null && message.hasOwnProperty("features"))
8448
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
8449
+ if (message.debugRedact != null && message.hasOwnProperty("debugRedact"))
8450
+ object.debugRedact = message.debugRedact;
7397
8451
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
7398
8452
  object.uninterpretedOption = [];
7399
8453
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -7437,6 +8491,7 @@
7437
8491
  * Properties of a ServiceOptions.
7438
8492
  * @memberof google.protobuf
7439
8493
  * @interface IServiceOptions
8494
+ * @property {google.protobuf.IFeatureSet|null} [features] ServiceOptions features
7440
8495
  * @property {boolean|null} [deprecated] ServiceOptions deprecated
7441
8496
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] ServiceOptions uninterpretedOption
7442
8497
  * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost
@@ -7459,6 +8514,14 @@
7459
8514
  this[keys[i]] = properties[keys[i]];
7460
8515
  }
7461
8516
 
8517
+ /**
8518
+ * ServiceOptions features.
8519
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
8520
+ * @memberof google.protobuf.ServiceOptions
8521
+ * @instance
8522
+ */
8523
+ ServiceOptions.prototype.features = null;
8524
+
7462
8525
  /**
7463
8526
  * ServiceOptions deprecated.
7464
8527
  * @member {boolean} deprecated
@@ -7517,6 +8580,8 @@
7517
8580
  writer = $Writer.create();
7518
8581
  if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
7519
8582
  writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated);
8583
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
8584
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 34, wireType 2 =*/274).fork()).ldelim();
7520
8585
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
7521
8586
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
7522
8587
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -7558,6 +8623,10 @@
7558
8623
  while (reader.pos < end) {
7559
8624
  var tag = reader.uint32();
7560
8625
  switch (tag >>> 3) {
8626
+ case 34: {
8627
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
8628
+ break;
8629
+ }
7561
8630
  case 33: {
7562
8631
  message.deprecated = reader.bool();
7563
8632
  break;
@@ -7611,6 +8680,11 @@
7611
8680
  ServiceOptions.verify = function verify(message) {
7612
8681
  if (typeof message !== "object" || message === null)
7613
8682
  return "object expected";
8683
+ if (message.features != null && message.hasOwnProperty("features")) {
8684
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
8685
+ if (error)
8686
+ return "features." + error;
8687
+ }
7614
8688
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
7615
8689
  if (typeof message.deprecated !== "boolean")
7616
8690
  return "deprecated: boolean expected";
@@ -7644,6 +8718,11 @@
7644
8718
  if (object instanceof $root.google.protobuf.ServiceOptions)
7645
8719
  return object;
7646
8720
  var message = new $root.google.protobuf.ServiceOptions();
8721
+ if (object.features != null) {
8722
+ if (typeof object.features !== "object")
8723
+ throw TypeError(".google.protobuf.ServiceOptions.features: object expected");
8724
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
8725
+ }
7647
8726
  if (object.deprecated != null)
7648
8727
  message.deprecated = Boolean(object.deprecated);
7649
8728
  if (object.uninterpretedOption) {
@@ -7680,11 +8759,14 @@
7680
8759
  object.uninterpretedOption = [];
7681
8760
  if (options.defaults) {
7682
8761
  object.deprecated = false;
8762
+ object.features = null;
7683
8763
  object[".google.api.defaultHost"] = "";
7684
8764
  object[".google.api.oauthScopes"] = "";
7685
8765
  }
7686
8766
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
7687
8767
  object.deprecated = message.deprecated;
8768
+ if (message.features != null && message.hasOwnProperty("features"))
8769
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
7688
8770
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
7689
8771
  object.uninterpretedOption = [];
7690
8772
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -7734,6 +8816,7 @@
7734
8816
  * @interface IMethodOptions
7735
8817
  * @property {boolean|null} [deprecated] MethodOptions deprecated
7736
8818
  * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel
8819
+ * @property {google.protobuf.IFeatureSet|null} [features] MethodOptions features
7737
8820
  * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] MethodOptions uninterpretedOption
7738
8821
  * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http
7739
8822
  * @property {Array.<string>|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature
@@ -7772,6 +8855,14 @@
7772
8855
  */
7773
8856
  MethodOptions.prototype.idempotencyLevel = 0;
7774
8857
 
8858
+ /**
8859
+ * MethodOptions features.
8860
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
8861
+ * @memberof google.protobuf.MethodOptions
8862
+ * @instance
8863
+ */
8864
+ MethodOptions.prototype.features = null;
8865
+
7775
8866
  /**
7776
8867
  * MethodOptions uninterpretedOption.
7777
8868
  * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
@@ -7824,6 +8915,8 @@
7824
8915
  writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated);
7825
8916
  if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel"))
7826
8917
  writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel);
8918
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
8919
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 35, wireType 2 =*/282).fork()).ldelim();
7827
8920
  if (message.uninterpretedOption != null && message.uninterpretedOption.length)
7828
8921
  for (var i = 0; i < message.uninterpretedOption.length; ++i)
7829
8922
  $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
@@ -7874,6 +8967,10 @@
7874
8967
  message.idempotencyLevel = reader.int32();
7875
8968
  break;
7876
8969
  }
8970
+ case 35: {
8971
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
8972
+ break;
8973
+ }
7877
8974
  case 999: {
7878
8975
  if (!(message.uninterpretedOption && message.uninterpretedOption.length))
7879
8976
  message.uninterpretedOption = [];
@@ -7937,6 +9034,11 @@
7937
9034
  case 2:
7938
9035
  break;
7939
9036
  }
9037
+ if (message.features != null && message.hasOwnProperty("features")) {
9038
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
9039
+ if (error)
9040
+ return "features." + error;
9041
+ }
7940
9042
  if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
7941
9043
  if (!Array.isArray(message.uninterpretedOption))
7942
9044
  return "uninterpretedOption: array expected";
@@ -7995,6 +9097,11 @@
7995
9097
  message.idempotencyLevel = 2;
7996
9098
  break;
7997
9099
  }
9100
+ if (object.features != null) {
9101
+ if (typeof object.features !== "object")
9102
+ throw TypeError(".google.protobuf.MethodOptions.features: object expected");
9103
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
9104
+ }
7998
9105
  if (object.uninterpretedOption) {
7999
9106
  if (!Array.isArray(object.uninterpretedOption))
8000
9107
  throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected");
@@ -8040,12 +9147,15 @@
8040
9147
  if (options.defaults) {
8041
9148
  object.deprecated = false;
8042
9149
  object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0;
9150
+ object.features = null;
8043
9151
  object[".google.api.http"] = null;
8044
9152
  }
8045
9153
  if (message.deprecated != null && message.hasOwnProperty("deprecated"))
8046
9154
  object.deprecated = message.deprecated;
8047
9155
  if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel"))
8048
9156
  object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] === undefined ? message.idempotencyLevel : $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel;
9157
+ if (message.features != null && message.hasOwnProperty("features"))
9158
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
8049
9159
  if (message.uninterpretedOption && message.uninterpretedOption.length) {
8050
9160
  object.uninterpretedOption = [];
8051
9161
  for (var j = 0; j < message.uninterpretedOption.length; ++j)
@@ -8479,50 +9589,1243 @@
8479
9589
  };
8480
9590
 
8481
9591
  /**
8482
- * Converts this UninterpretedOption to JSON.
9592
+ * Converts this UninterpretedOption to JSON.
9593
+ * @function toJSON
9594
+ * @memberof google.protobuf.UninterpretedOption
9595
+ * @instance
9596
+ * @returns {Object.<string,*>} JSON object
9597
+ */
9598
+ UninterpretedOption.prototype.toJSON = function toJSON() {
9599
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9600
+ };
9601
+
9602
+ /**
9603
+ * Gets the default type url for UninterpretedOption
9604
+ * @function getTypeUrl
9605
+ * @memberof google.protobuf.UninterpretedOption
9606
+ * @static
9607
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
9608
+ * @returns {string} The default type url
9609
+ */
9610
+ UninterpretedOption.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
9611
+ if (typeUrlPrefix === undefined) {
9612
+ typeUrlPrefix = "type.googleapis.com";
9613
+ }
9614
+ return typeUrlPrefix + "/google.protobuf.UninterpretedOption";
9615
+ };
9616
+
9617
+ UninterpretedOption.NamePart = (function() {
9618
+
9619
+ /**
9620
+ * Properties of a NamePart.
9621
+ * @memberof google.protobuf.UninterpretedOption
9622
+ * @interface INamePart
9623
+ * @property {string} namePart NamePart namePart
9624
+ * @property {boolean} isExtension NamePart isExtension
9625
+ */
9626
+
9627
+ /**
9628
+ * Constructs a new NamePart.
9629
+ * @memberof google.protobuf.UninterpretedOption
9630
+ * @classdesc Represents a NamePart.
9631
+ * @implements INamePart
9632
+ * @constructor
9633
+ * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
9634
+ */
9635
+ function NamePart(properties) {
9636
+ if (properties)
9637
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9638
+ if (properties[keys[i]] != null)
9639
+ this[keys[i]] = properties[keys[i]];
9640
+ }
9641
+
9642
+ /**
9643
+ * NamePart namePart.
9644
+ * @member {string} namePart
9645
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9646
+ * @instance
9647
+ */
9648
+ NamePart.prototype.namePart = "";
9649
+
9650
+ /**
9651
+ * NamePart isExtension.
9652
+ * @member {boolean} isExtension
9653
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9654
+ * @instance
9655
+ */
9656
+ NamePart.prototype.isExtension = false;
9657
+
9658
+ /**
9659
+ * Creates a new NamePart instance using the specified properties.
9660
+ * @function create
9661
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9662
+ * @static
9663
+ * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
9664
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance
9665
+ */
9666
+ NamePart.create = function create(properties) {
9667
+ return new NamePart(properties);
9668
+ };
9669
+
9670
+ /**
9671
+ * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
9672
+ * @function encode
9673
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9674
+ * @static
9675
+ * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
9676
+ * @param {$protobuf.Writer} [writer] Writer to encode to
9677
+ * @returns {$protobuf.Writer} Writer
9678
+ */
9679
+ NamePart.encode = function encode(message, writer) {
9680
+ if (!writer)
9681
+ writer = $Writer.create();
9682
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart);
9683
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension);
9684
+ return writer;
9685
+ };
9686
+
9687
+ /**
9688
+ * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
9689
+ * @function encodeDelimited
9690
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9691
+ * @static
9692
+ * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
9693
+ * @param {$protobuf.Writer} [writer] Writer to encode to
9694
+ * @returns {$protobuf.Writer} Writer
9695
+ */
9696
+ NamePart.encodeDelimited = function encodeDelimited(message, writer) {
9697
+ return this.encode(message, writer).ldelim();
9698
+ };
9699
+
9700
+ /**
9701
+ * Decodes a NamePart message from the specified reader or buffer.
9702
+ * @function decode
9703
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9704
+ * @static
9705
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9706
+ * @param {number} [length] Message length if known beforehand
9707
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
9708
+ * @throws {Error} If the payload is not a reader or valid buffer
9709
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
9710
+ */
9711
+ NamePart.decode = function decode(reader, length) {
9712
+ if (!(reader instanceof $Reader))
9713
+ reader = $Reader.create(reader);
9714
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart();
9715
+ while (reader.pos < end) {
9716
+ var tag = reader.uint32();
9717
+ switch (tag >>> 3) {
9718
+ case 1: {
9719
+ message.namePart = reader.string();
9720
+ break;
9721
+ }
9722
+ case 2: {
9723
+ message.isExtension = reader.bool();
9724
+ break;
9725
+ }
9726
+ default:
9727
+ reader.skipType(tag & 7);
9728
+ break;
9729
+ }
9730
+ }
9731
+ if (!message.hasOwnProperty("namePart"))
9732
+ throw $util.ProtocolError("missing required 'namePart'", { instance: message });
9733
+ if (!message.hasOwnProperty("isExtension"))
9734
+ throw $util.ProtocolError("missing required 'isExtension'", { instance: message });
9735
+ return message;
9736
+ };
9737
+
9738
+ /**
9739
+ * Decodes a NamePart message from the specified reader or buffer, length delimited.
9740
+ * @function decodeDelimited
9741
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9742
+ * @static
9743
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9744
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
9745
+ * @throws {Error} If the payload is not a reader or valid buffer
9746
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
9747
+ */
9748
+ NamePart.decodeDelimited = function decodeDelimited(reader) {
9749
+ if (!(reader instanceof $Reader))
9750
+ reader = new $Reader(reader);
9751
+ return this.decode(reader, reader.uint32());
9752
+ };
9753
+
9754
+ /**
9755
+ * Verifies a NamePart message.
9756
+ * @function verify
9757
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9758
+ * @static
9759
+ * @param {Object.<string,*>} message Plain object to verify
9760
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
9761
+ */
9762
+ NamePart.verify = function verify(message) {
9763
+ if (typeof message !== "object" || message === null)
9764
+ return "object expected";
9765
+ if (!$util.isString(message.namePart))
9766
+ return "namePart: string expected";
9767
+ if (typeof message.isExtension !== "boolean")
9768
+ return "isExtension: boolean expected";
9769
+ return null;
9770
+ };
9771
+
9772
+ /**
9773
+ * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
9774
+ * @function fromObject
9775
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9776
+ * @static
9777
+ * @param {Object.<string,*>} object Plain object
9778
+ * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
9779
+ */
9780
+ NamePart.fromObject = function fromObject(object) {
9781
+ if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart)
9782
+ return object;
9783
+ var message = new $root.google.protobuf.UninterpretedOption.NamePart();
9784
+ if (object.namePart != null)
9785
+ message.namePart = String(object.namePart);
9786
+ if (object.isExtension != null)
9787
+ message.isExtension = Boolean(object.isExtension);
9788
+ return message;
9789
+ };
9790
+
9791
+ /**
9792
+ * Creates a plain object from a NamePart message. Also converts values to other types if specified.
9793
+ * @function toObject
9794
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9795
+ * @static
9796
+ * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart
9797
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
9798
+ * @returns {Object.<string,*>} Plain object
9799
+ */
9800
+ NamePart.toObject = function toObject(message, options) {
9801
+ if (!options)
9802
+ options = {};
9803
+ var object = {};
9804
+ if (options.defaults) {
9805
+ object.namePart = "";
9806
+ object.isExtension = false;
9807
+ }
9808
+ if (message.namePart != null && message.hasOwnProperty("namePart"))
9809
+ object.namePart = message.namePart;
9810
+ if (message.isExtension != null && message.hasOwnProperty("isExtension"))
9811
+ object.isExtension = message.isExtension;
9812
+ return object;
9813
+ };
9814
+
9815
+ /**
9816
+ * Converts this NamePart to JSON.
9817
+ * @function toJSON
9818
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9819
+ * @instance
9820
+ * @returns {Object.<string,*>} JSON object
9821
+ */
9822
+ NamePart.prototype.toJSON = function toJSON() {
9823
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9824
+ };
9825
+
9826
+ /**
9827
+ * Gets the default type url for NamePart
9828
+ * @function getTypeUrl
9829
+ * @memberof google.protobuf.UninterpretedOption.NamePart
9830
+ * @static
9831
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
9832
+ * @returns {string} The default type url
9833
+ */
9834
+ NamePart.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
9835
+ if (typeUrlPrefix === undefined) {
9836
+ typeUrlPrefix = "type.googleapis.com";
9837
+ }
9838
+ return typeUrlPrefix + "/google.protobuf.UninterpretedOption.NamePart";
9839
+ };
9840
+
9841
+ return NamePart;
9842
+ })();
9843
+
9844
+ return UninterpretedOption;
9845
+ })();
9846
+
9847
+ protobuf.FeatureSet = (function() {
9848
+
9849
+ /**
9850
+ * Properties of a FeatureSet.
9851
+ * @memberof google.protobuf
9852
+ * @interface IFeatureSet
9853
+ * @property {google.protobuf.FeatureSet.FieldPresence|null} [fieldPresence] FeatureSet fieldPresence
9854
+ * @property {google.protobuf.FeatureSet.EnumType|null} [enumType] FeatureSet enumType
9855
+ * @property {google.protobuf.FeatureSet.RepeatedFieldEncoding|null} [repeatedFieldEncoding] FeatureSet repeatedFieldEncoding
9856
+ * @property {google.protobuf.FeatureSet.Utf8Validation|null} [utf8Validation] FeatureSet utf8Validation
9857
+ * @property {google.protobuf.FeatureSet.MessageEncoding|null} [messageEncoding] FeatureSet messageEncoding
9858
+ * @property {google.protobuf.FeatureSet.JsonFormat|null} [jsonFormat] FeatureSet jsonFormat
9859
+ */
9860
+
9861
+ /**
9862
+ * Constructs a new FeatureSet.
9863
+ * @memberof google.protobuf
9864
+ * @classdesc Represents a FeatureSet.
9865
+ * @implements IFeatureSet
9866
+ * @constructor
9867
+ * @param {google.protobuf.IFeatureSet=} [properties] Properties to set
9868
+ */
9869
+ function FeatureSet(properties) {
9870
+ if (properties)
9871
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9872
+ if (properties[keys[i]] != null)
9873
+ this[keys[i]] = properties[keys[i]];
9874
+ }
9875
+
9876
+ /**
9877
+ * FeatureSet fieldPresence.
9878
+ * @member {google.protobuf.FeatureSet.FieldPresence} fieldPresence
9879
+ * @memberof google.protobuf.FeatureSet
9880
+ * @instance
9881
+ */
9882
+ FeatureSet.prototype.fieldPresence = 0;
9883
+
9884
+ /**
9885
+ * FeatureSet enumType.
9886
+ * @member {google.protobuf.FeatureSet.EnumType} enumType
9887
+ * @memberof google.protobuf.FeatureSet
9888
+ * @instance
9889
+ */
9890
+ FeatureSet.prototype.enumType = 0;
9891
+
9892
+ /**
9893
+ * FeatureSet repeatedFieldEncoding.
9894
+ * @member {google.protobuf.FeatureSet.RepeatedFieldEncoding} repeatedFieldEncoding
9895
+ * @memberof google.protobuf.FeatureSet
9896
+ * @instance
9897
+ */
9898
+ FeatureSet.prototype.repeatedFieldEncoding = 0;
9899
+
9900
+ /**
9901
+ * FeatureSet utf8Validation.
9902
+ * @member {google.protobuf.FeatureSet.Utf8Validation} utf8Validation
9903
+ * @memberof google.protobuf.FeatureSet
9904
+ * @instance
9905
+ */
9906
+ FeatureSet.prototype.utf8Validation = 0;
9907
+
9908
+ /**
9909
+ * FeatureSet messageEncoding.
9910
+ * @member {google.protobuf.FeatureSet.MessageEncoding} messageEncoding
9911
+ * @memberof google.protobuf.FeatureSet
9912
+ * @instance
9913
+ */
9914
+ FeatureSet.prototype.messageEncoding = 0;
9915
+
9916
+ /**
9917
+ * FeatureSet jsonFormat.
9918
+ * @member {google.protobuf.FeatureSet.JsonFormat} jsonFormat
9919
+ * @memberof google.protobuf.FeatureSet
9920
+ * @instance
9921
+ */
9922
+ FeatureSet.prototype.jsonFormat = 0;
9923
+
9924
+ /**
9925
+ * Creates a new FeatureSet instance using the specified properties.
9926
+ * @function create
9927
+ * @memberof google.protobuf.FeatureSet
9928
+ * @static
9929
+ * @param {google.protobuf.IFeatureSet=} [properties] Properties to set
9930
+ * @returns {google.protobuf.FeatureSet} FeatureSet instance
9931
+ */
9932
+ FeatureSet.create = function create(properties) {
9933
+ return new FeatureSet(properties);
9934
+ };
9935
+
9936
+ /**
9937
+ * Encodes the specified FeatureSet message. Does not implicitly {@link google.protobuf.FeatureSet.verify|verify} messages.
9938
+ * @function encode
9939
+ * @memberof google.protobuf.FeatureSet
9940
+ * @static
9941
+ * @param {google.protobuf.IFeatureSet} message FeatureSet message or plain object to encode
9942
+ * @param {$protobuf.Writer} [writer] Writer to encode to
9943
+ * @returns {$protobuf.Writer} Writer
9944
+ */
9945
+ FeatureSet.encode = function encode(message, writer) {
9946
+ if (!writer)
9947
+ writer = $Writer.create();
9948
+ if (message.fieldPresence != null && Object.hasOwnProperty.call(message, "fieldPresence"))
9949
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.fieldPresence);
9950
+ if (message.enumType != null && Object.hasOwnProperty.call(message, "enumType"))
9951
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.enumType);
9952
+ if (message.repeatedFieldEncoding != null && Object.hasOwnProperty.call(message, "repeatedFieldEncoding"))
9953
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.repeatedFieldEncoding);
9954
+ if (message.utf8Validation != null && Object.hasOwnProperty.call(message, "utf8Validation"))
9955
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.utf8Validation);
9956
+ if (message.messageEncoding != null && Object.hasOwnProperty.call(message, "messageEncoding"))
9957
+ writer.uint32(/* id 5, wireType 0 =*/40).int32(message.messageEncoding);
9958
+ if (message.jsonFormat != null && Object.hasOwnProperty.call(message, "jsonFormat"))
9959
+ writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jsonFormat);
9960
+ return writer;
9961
+ };
9962
+
9963
+ /**
9964
+ * Encodes the specified FeatureSet message, length delimited. Does not implicitly {@link google.protobuf.FeatureSet.verify|verify} messages.
9965
+ * @function encodeDelimited
9966
+ * @memberof google.protobuf.FeatureSet
9967
+ * @static
9968
+ * @param {google.protobuf.IFeatureSet} message FeatureSet message or plain object to encode
9969
+ * @param {$protobuf.Writer} [writer] Writer to encode to
9970
+ * @returns {$protobuf.Writer} Writer
9971
+ */
9972
+ FeatureSet.encodeDelimited = function encodeDelimited(message, writer) {
9973
+ return this.encode(message, writer).ldelim();
9974
+ };
9975
+
9976
+ /**
9977
+ * Decodes a FeatureSet message from the specified reader or buffer.
9978
+ * @function decode
9979
+ * @memberof google.protobuf.FeatureSet
9980
+ * @static
9981
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9982
+ * @param {number} [length] Message length if known beforehand
9983
+ * @returns {google.protobuf.FeatureSet} FeatureSet
9984
+ * @throws {Error} If the payload is not a reader or valid buffer
9985
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
9986
+ */
9987
+ FeatureSet.decode = function decode(reader, length) {
9988
+ if (!(reader instanceof $Reader))
9989
+ reader = $Reader.create(reader);
9990
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet();
9991
+ while (reader.pos < end) {
9992
+ var tag = reader.uint32();
9993
+ switch (tag >>> 3) {
9994
+ case 1: {
9995
+ message.fieldPresence = reader.int32();
9996
+ break;
9997
+ }
9998
+ case 2: {
9999
+ message.enumType = reader.int32();
10000
+ break;
10001
+ }
10002
+ case 3: {
10003
+ message.repeatedFieldEncoding = reader.int32();
10004
+ break;
10005
+ }
10006
+ case 4: {
10007
+ message.utf8Validation = reader.int32();
10008
+ break;
10009
+ }
10010
+ case 5: {
10011
+ message.messageEncoding = reader.int32();
10012
+ break;
10013
+ }
10014
+ case 6: {
10015
+ message.jsonFormat = reader.int32();
10016
+ break;
10017
+ }
10018
+ default:
10019
+ reader.skipType(tag & 7);
10020
+ break;
10021
+ }
10022
+ }
10023
+ return message;
10024
+ };
10025
+
10026
+ /**
10027
+ * Decodes a FeatureSet message from the specified reader or buffer, length delimited.
10028
+ * @function decodeDelimited
10029
+ * @memberof google.protobuf.FeatureSet
10030
+ * @static
10031
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10032
+ * @returns {google.protobuf.FeatureSet} FeatureSet
10033
+ * @throws {Error} If the payload is not a reader or valid buffer
10034
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
10035
+ */
10036
+ FeatureSet.decodeDelimited = function decodeDelimited(reader) {
10037
+ if (!(reader instanceof $Reader))
10038
+ reader = new $Reader(reader);
10039
+ return this.decode(reader, reader.uint32());
10040
+ };
10041
+
10042
+ /**
10043
+ * Verifies a FeatureSet message.
10044
+ * @function verify
10045
+ * @memberof google.protobuf.FeatureSet
10046
+ * @static
10047
+ * @param {Object.<string,*>} message Plain object to verify
10048
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
10049
+ */
10050
+ FeatureSet.verify = function verify(message) {
10051
+ if (typeof message !== "object" || message === null)
10052
+ return "object expected";
10053
+ if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence"))
10054
+ switch (message.fieldPresence) {
10055
+ default:
10056
+ return "fieldPresence: enum value expected";
10057
+ case 0:
10058
+ case 1:
10059
+ case 2:
10060
+ case 3:
10061
+ break;
10062
+ }
10063
+ if (message.enumType != null && message.hasOwnProperty("enumType"))
10064
+ switch (message.enumType) {
10065
+ default:
10066
+ return "enumType: enum value expected";
10067
+ case 0:
10068
+ case 1:
10069
+ case 2:
10070
+ break;
10071
+ }
10072
+ if (message.repeatedFieldEncoding != null && message.hasOwnProperty("repeatedFieldEncoding"))
10073
+ switch (message.repeatedFieldEncoding) {
10074
+ default:
10075
+ return "repeatedFieldEncoding: enum value expected";
10076
+ case 0:
10077
+ case 1:
10078
+ case 2:
10079
+ break;
10080
+ }
10081
+ if (message.utf8Validation != null && message.hasOwnProperty("utf8Validation"))
10082
+ switch (message.utf8Validation) {
10083
+ default:
10084
+ return "utf8Validation: enum value expected";
10085
+ case 0:
10086
+ case 2:
10087
+ case 3:
10088
+ break;
10089
+ }
10090
+ if (message.messageEncoding != null && message.hasOwnProperty("messageEncoding"))
10091
+ switch (message.messageEncoding) {
10092
+ default:
10093
+ return "messageEncoding: enum value expected";
10094
+ case 0:
10095
+ case 1:
10096
+ case 2:
10097
+ break;
10098
+ }
10099
+ if (message.jsonFormat != null && message.hasOwnProperty("jsonFormat"))
10100
+ switch (message.jsonFormat) {
10101
+ default:
10102
+ return "jsonFormat: enum value expected";
10103
+ case 0:
10104
+ case 1:
10105
+ case 2:
10106
+ break;
10107
+ }
10108
+ return null;
10109
+ };
10110
+
10111
+ /**
10112
+ * Creates a FeatureSet message from a plain object. Also converts values to their respective internal types.
10113
+ * @function fromObject
10114
+ * @memberof google.protobuf.FeatureSet
10115
+ * @static
10116
+ * @param {Object.<string,*>} object Plain object
10117
+ * @returns {google.protobuf.FeatureSet} FeatureSet
10118
+ */
10119
+ FeatureSet.fromObject = function fromObject(object) {
10120
+ if (object instanceof $root.google.protobuf.FeatureSet)
10121
+ return object;
10122
+ var message = new $root.google.protobuf.FeatureSet();
10123
+ switch (object.fieldPresence) {
10124
+ default:
10125
+ if (typeof object.fieldPresence === "number") {
10126
+ message.fieldPresence = object.fieldPresence;
10127
+ break;
10128
+ }
10129
+ break;
10130
+ case "FIELD_PRESENCE_UNKNOWN":
10131
+ case 0:
10132
+ message.fieldPresence = 0;
10133
+ break;
10134
+ case "EXPLICIT":
10135
+ case 1:
10136
+ message.fieldPresence = 1;
10137
+ break;
10138
+ case "IMPLICIT":
10139
+ case 2:
10140
+ message.fieldPresence = 2;
10141
+ break;
10142
+ case "LEGACY_REQUIRED":
10143
+ case 3:
10144
+ message.fieldPresence = 3;
10145
+ break;
10146
+ }
10147
+ switch (object.enumType) {
10148
+ default:
10149
+ if (typeof object.enumType === "number") {
10150
+ message.enumType = object.enumType;
10151
+ break;
10152
+ }
10153
+ break;
10154
+ case "ENUM_TYPE_UNKNOWN":
10155
+ case 0:
10156
+ message.enumType = 0;
10157
+ break;
10158
+ case "OPEN":
10159
+ case 1:
10160
+ message.enumType = 1;
10161
+ break;
10162
+ case "CLOSED":
10163
+ case 2:
10164
+ message.enumType = 2;
10165
+ break;
10166
+ }
10167
+ switch (object.repeatedFieldEncoding) {
10168
+ default:
10169
+ if (typeof object.repeatedFieldEncoding === "number") {
10170
+ message.repeatedFieldEncoding = object.repeatedFieldEncoding;
10171
+ break;
10172
+ }
10173
+ break;
10174
+ case "REPEATED_FIELD_ENCODING_UNKNOWN":
10175
+ case 0:
10176
+ message.repeatedFieldEncoding = 0;
10177
+ break;
10178
+ case "PACKED":
10179
+ case 1:
10180
+ message.repeatedFieldEncoding = 1;
10181
+ break;
10182
+ case "EXPANDED":
10183
+ case 2:
10184
+ message.repeatedFieldEncoding = 2;
10185
+ break;
10186
+ }
10187
+ switch (object.utf8Validation) {
10188
+ default:
10189
+ if (typeof object.utf8Validation === "number") {
10190
+ message.utf8Validation = object.utf8Validation;
10191
+ break;
10192
+ }
10193
+ break;
10194
+ case "UTF8_VALIDATION_UNKNOWN":
10195
+ case 0:
10196
+ message.utf8Validation = 0;
10197
+ break;
10198
+ case "VERIFY":
10199
+ case 2:
10200
+ message.utf8Validation = 2;
10201
+ break;
10202
+ case "NONE":
10203
+ case 3:
10204
+ message.utf8Validation = 3;
10205
+ break;
10206
+ }
10207
+ switch (object.messageEncoding) {
10208
+ default:
10209
+ if (typeof object.messageEncoding === "number") {
10210
+ message.messageEncoding = object.messageEncoding;
10211
+ break;
10212
+ }
10213
+ break;
10214
+ case "MESSAGE_ENCODING_UNKNOWN":
10215
+ case 0:
10216
+ message.messageEncoding = 0;
10217
+ break;
10218
+ case "LENGTH_PREFIXED":
10219
+ case 1:
10220
+ message.messageEncoding = 1;
10221
+ break;
10222
+ case "DELIMITED":
10223
+ case 2:
10224
+ message.messageEncoding = 2;
10225
+ break;
10226
+ }
10227
+ switch (object.jsonFormat) {
10228
+ default:
10229
+ if (typeof object.jsonFormat === "number") {
10230
+ message.jsonFormat = object.jsonFormat;
10231
+ break;
10232
+ }
10233
+ break;
10234
+ case "JSON_FORMAT_UNKNOWN":
10235
+ case 0:
10236
+ message.jsonFormat = 0;
10237
+ break;
10238
+ case "ALLOW":
10239
+ case 1:
10240
+ message.jsonFormat = 1;
10241
+ break;
10242
+ case "LEGACY_BEST_EFFORT":
10243
+ case 2:
10244
+ message.jsonFormat = 2;
10245
+ break;
10246
+ }
10247
+ return message;
10248
+ };
10249
+
10250
+ /**
10251
+ * Creates a plain object from a FeatureSet message. Also converts values to other types if specified.
10252
+ * @function toObject
10253
+ * @memberof google.protobuf.FeatureSet
10254
+ * @static
10255
+ * @param {google.protobuf.FeatureSet} message FeatureSet
10256
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
10257
+ * @returns {Object.<string,*>} Plain object
10258
+ */
10259
+ FeatureSet.toObject = function toObject(message, options) {
10260
+ if (!options)
10261
+ options = {};
10262
+ var object = {};
10263
+ if (options.defaults) {
10264
+ object.fieldPresence = options.enums === String ? "FIELD_PRESENCE_UNKNOWN" : 0;
10265
+ object.enumType = options.enums === String ? "ENUM_TYPE_UNKNOWN" : 0;
10266
+ object.repeatedFieldEncoding = options.enums === String ? "REPEATED_FIELD_ENCODING_UNKNOWN" : 0;
10267
+ object.utf8Validation = options.enums === String ? "UTF8_VALIDATION_UNKNOWN" : 0;
10268
+ object.messageEncoding = options.enums === String ? "MESSAGE_ENCODING_UNKNOWN" : 0;
10269
+ object.jsonFormat = options.enums === String ? "JSON_FORMAT_UNKNOWN" : 0;
10270
+ }
10271
+ if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence"))
10272
+ object.fieldPresence = options.enums === String ? $root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence] === undefined ? message.fieldPresence : $root.google.protobuf.FeatureSet.FieldPresence[message.fieldPresence] : message.fieldPresence;
10273
+ if (message.enumType != null && message.hasOwnProperty("enumType"))
10274
+ object.enumType = options.enums === String ? $root.google.protobuf.FeatureSet.EnumType[message.enumType] === undefined ? message.enumType : $root.google.protobuf.FeatureSet.EnumType[message.enumType] : message.enumType;
10275
+ if (message.repeatedFieldEncoding != null && message.hasOwnProperty("repeatedFieldEncoding"))
10276
+ object.repeatedFieldEncoding = options.enums === String ? $root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding] === undefined ? message.repeatedFieldEncoding : $root.google.protobuf.FeatureSet.RepeatedFieldEncoding[message.repeatedFieldEncoding] : message.repeatedFieldEncoding;
10277
+ if (message.utf8Validation != null && message.hasOwnProperty("utf8Validation"))
10278
+ object.utf8Validation = options.enums === String ? $root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation] === undefined ? message.utf8Validation : $root.google.protobuf.FeatureSet.Utf8Validation[message.utf8Validation] : message.utf8Validation;
10279
+ if (message.messageEncoding != null && message.hasOwnProperty("messageEncoding"))
10280
+ object.messageEncoding = options.enums === String ? $root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding] === undefined ? message.messageEncoding : $root.google.protobuf.FeatureSet.MessageEncoding[message.messageEncoding] : message.messageEncoding;
10281
+ if (message.jsonFormat != null && message.hasOwnProperty("jsonFormat"))
10282
+ object.jsonFormat = options.enums === String ? $root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat] === undefined ? message.jsonFormat : $root.google.protobuf.FeatureSet.JsonFormat[message.jsonFormat] : message.jsonFormat;
10283
+ return object;
10284
+ };
10285
+
10286
+ /**
10287
+ * Converts this FeatureSet to JSON.
10288
+ * @function toJSON
10289
+ * @memberof google.protobuf.FeatureSet
10290
+ * @instance
10291
+ * @returns {Object.<string,*>} JSON object
10292
+ */
10293
+ FeatureSet.prototype.toJSON = function toJSON() {
10294
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
10295
+ };
10296
+
10297
+ /**
10298
+ * Gets the default type url for FeatureSet
10299
+ * @function getTypeUrl
10300
+ * @memberof google.protobuf.FeatureSet
10301
+ * @static
10302
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
10303
+ * @returns {string} The default type url
10304
+ */
10305
+ FeatureSet.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
10306
+ if (typeUrlPrefix === undefined) {
10307
+ typeUrlPrefix = "type.googleapis.com";
10308
+ }
10309
+ return typeUrlPrefix + "/google.protobuf.FeatureSet";
10310
+ };
10311
+
10312
+ /**
10313
+ * FieldPresence enum.
10314
+ * @name google.protobuf.FeatureSet.FieldPresence
10315
+ * @enum {number}
10316
+ * @property {number} FIELD_PRESENCE_UNKNOWN=0 FIELD_PRESENCE_UNKNOWN value
10317
+ * @property {number} EXPLICIT=1 EXPLICIT value
10318
+ * @property {number} IMPLICIT=2 IMPLICIT value
10319
+ * @property {number} LEGACY_REQUIRED=3 LEGACY_REQUIRED value
10320
+ */
10321
+ FeatureSet.FieldPresence = (function() {
10322
+ var valuesById = {}, values = Object.create(valuesById);
10323
+ values[valuesById[0] = "FIELD_PRESENCE_UNKNOWN"] = 0;
10324
+ values[valuesById[1] = "EXPLICIT"] = 1;
10325
+ values[valuesById[2] = "IMPLICIT"] = 2;
10326
+ values[valuesById[3] = "LEGACY_REQUIRED"] = 3;
10327
+ return values;
10328
+ })();
10329
+
10330
+ /**
10331
+ * EnumType enum.
10332
+ * @name google.protobuf.FeatureSet.EnumType
10333
+ * @enum {number}
10334
+ * @property {number} ENUM_TYPE_UNKNOWN=0 ENUM_TYPE_UNKNOWN value
10335
+ * @property {number} OPEN=1 OPEN value
10336
+ * @property {number} CLOSED=2 CLOSED value
10337
+ */
10338
+ FeatureSet.EnumType = (function() {
10339
+ var valuesById = {}, values = Object.create(valuesById);
10340
+ values[valuesById[0] = "ENUM_TYPE_UNKNOWN"] = 0;
10341
+ values[valuesById[1] = "OPEN"] = 1;
10342
+ values[valuesById[2] = "CLOSED"] = 2;
10343
+ return values;
10344
+ })();
10345
+
10346
+ /**
10347
+ * RepeatedFieldEncoding enum.
10348
+ * @name google.protobuf.FeatureSet.RepeatedFieldEncoding
10349
+ * @enum {number}
10350
+ * @property {number} REPEATED_FIELD_ENCODING_UNKNOWN=0 REPEATED_FIELD_ENCODING_UNKNOWN value
10351
+ * @property {number} PACKED=1 PACKED value
10352
+ * @property {number} EXPANDED=2 EXPANDED value
10353
+ */
10354
+ FeatureSet.RepeatedFieldEncoding = (function() {
10355
+ var valuesById = {}, values = Object.create(valuesById);
10356
+ values[valuesById[0] = "REPEATED_FIELD_ENCODING_UNKNOWN"] = 0;
10357
+ values[valuesById[1] = "PACKED"] = 1;
10358
+ values[valuesById[2] = "EXPANDED"] = 2;
10359
+ return values;
10360
+ })();
10361
+
10362
+ /**
10363
+ * Utf8Validation enum.
10364
+ * @name google.protobuf.FeatureSet.Utf8Validation
10365
+ * @enum {number}
10366
+ * @property {number} UTF8_VALIDATION_UNKNOWN=0 UTF8_VALIDATION_UNKNOWN value
10367
+ * @property {number} VERIFY=2 VERIFY value
10368
+ * @property {number} NONE=3 NONE value
10369
+ */
10370
+ FeatureSet.Utf8Validation = (function() {
10371
+ var valuesById = {}, values = Object.create(valuesById);
10372
+ values[valuesById[0] = "UTF8_VALIDATION_UNKNOWN"] = 0;
10373
+ values[valuesById[2] = "VERIFY"] = 2;
10374
+ values[valuesById[3] = "NONE"] = 3;
10375
+ return values;
10376
+ })();
10377
+
10378
+ /**
10379
+ * MessageEncoding enum.
10380
+ * @name google.protobuf.FeatureSet.MessageEncoding
10381
+ * @enum {number}
10382
+ * @property {number} MESSAGE_ENCODING_UNKNOWN=0 MESSAGE_ENCODING_UNKNOWN value
10383
+ * @property {number} LENGTH_PREFIXED=1 LENGTH_PREFIXED value
10384
+ * @property {number} DELIMITED=2 DELIMITED value
10385
+ */
10386
+ FeatureSet.MessageEncoding = (function() {
10387
+ var valuesById = {}, values = Object.create(valuesById);
10388
+ values[valuesById[0] = "MESSAGE_ENCODING_UNKNOWN"] = 0;
10389
+ values[valuesById[1] = "LENGTH_PREFIXED"] = 1;
10390
+ values[valuesById[2] = "DELIMITED"] = 2;
10391
+ return values;
10392
+ })();
10393
+
10394
+ /**
10395
+ * JsonFormat enum.
10396
+ * @name google.protobuf.FeatureSet.JsonFormat
10397
+ * @enum {number}
10398
+ * @property {number} JSON_FORMAT_UNKNOWN=0 JSON_FORMAT_UNKNOWN value
10399
+ * @property {number} ALLOW=1 ALLOW value
10400
+ * @property {number} LEGACY_BEST_EFFORT=2 LEGACY_BEST_EFFORT value
10401
+ */
10402
+ FeatureSet.JsonFormat = (function() {
10403
+ var valuesById = {}, values = Object.create(valuesById);
10404
+ values[valuesById[0] = "JSON_FORMAT_UNKNOWN"] = 0;
10405
+ values[valuesById[1] = "ALLOW"] = 1;
10406
+ values[valuesById[2] = "LEGACY_BEST_EFFORT"] = 2;
10407
+ return values;
10408
+ })();
10409
+
10410
+ return FeatureSet;
10411
+ })();
10412
+
10413
+ protobuf.FeatureSetDefaults = (function() {
10414
+
10415
+ /**
10416
+ * Properties of a FeatureSetDefaults.
10417
+ * @memberof google.protobuf
10418
+ * @interface IFeatureSetDefaults
10419
+ * @property {Array.<google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault>|null} [defaults] FeatureSetDefaults defaults
10420
+ * @property {google.protobuf.Edition|null} [minimumEdition] FeatureSetDefaults minimumEdition
10421
+ * @property {google.protobuf.Edition|null} [maximumEdition] FeatureSetDefaults maximumEdition
10422
+ */
10423
+
10424
+ /**
10425
+ * Constructs a new FeatureSetDefaults.
10426
+ * @memberof google.protobuf
10427
+ * @classdesc Represents a FeatureSetDefaults.
10428
+ * @implements IFeatureSetDefaults
10429
+ * @constructor
10430
+ * @param {google.protobuf.IFeatureSetDefaults=} [properties] Properties to set
10431
+ */
10432
+ function FeatureSetDefaults(properties) {
10433
+ this.defaults = [];
10434
+ if (properties)
10435
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10436
+ if (properties[keys[i]] != null)
10437
+ this[keys[i]] = properties[keys[i]];
10438
+ }
10439
+
10440
+ /**
10441
+ * FeatureSetDefaults defaults.
10442
+ * @member {Array.<google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault>} defaults
10443
+ * @memberof google.protobuf.FeatureSetDefaults
10444
+ * @instance
10445
+ */
10446
+ FeatureSetDefaults.prototype.defaults = $util.emptyArray;
10447
+
10448
+ /**
10449
+ * FeatureSetDefaults minimumEdition.
10450
+ * @member {google.protobuf.Edition} minimumEdition
10451
+ * @memberof google.protobuf.FeatureSetDefaults
10452
+ * @instance
10453
+ */
10454
+ FeatureSetDefaults.prototype.minimumEdition = 0;
10455
+
10456
+ /**
10457
+ * FeatureSetDefaults maximumEdition.
10458
+ * @member {google.protobuf.Edition} maximumEdition
10459
+ * @memberof google.protobuf.FeatureSetDefaults
10460
+ * @instance
10461
+ */
10462
+ FeatureSetDefaults.prototype.maximumEdition = 0;
10463
+
10464
+ /**
10465
+ * Creates a new FeatureSetDefaults instance using the specified properties.
10466
+ * @function create
10467
+ * @memberof google.protobuf.FeatureSetDefaults
10468
+ * @static
10469
+ * @param {google.protobuf.IFeatureSetDefaults=} [properties] Properties to set
10470
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults instance
10471
+ */
10472
+ FeatureSetDefaults.create = function create(properties) {
10473
+ return new FeatureSetDefaults(properties);
10474
+ };
10475
+
10476
+ /**
10477
+ * Encodes the specified FeatureSetDefaults message. Does not implicitly {@link google.protobuf.FeatureSetDefaults.verify|verify} messages.
10478
+ * @function encode
10479
+ * @memberof google.protobuf.FeatureSetDefaults
10480
+ * @static
10481
+ * @param {google.protobuf.IFeatureSetDefaults} message FeatureSetDefaults message or plain object to encode
10482
+ * @param {$protobuf.Writer} [writer] Writer to encode to
10483
+ * @returns {$protobuf.Writer} Writer
10484
+ */
10485
+ FeatureSetDefaults.encode = function encode(message, writer) {
10486
+ if (!writer)
10487
+ writer = $Writer.create();
10488
+ if (message.defaults != null && message.defaults.length)
10489
+ for (var i = 0; i < message.defaults.length; ++i)
10490
+ $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.encode(message.defaults[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
10491
+ if (message.minimumEdition != null && Object.hasOwnProperty.call(message, "minimumEdition"))
10492
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.minimumEdition);
10493
+ if (message.maximumEdition != null && Object.hasOwnProperty.call(message, "maximumEdition"))
10494
+ writer.uint32(/* id 5, wireType 0 =*/40).int32(message.maximumEdition);
10495
+ return writer;
10496
+ };
10497
+
10498
+ /**
10499
+ * Encodes the specified FeatureSetDefaults message, length delimited. Does not implicitly {@link google.protobuf.FeatureSetDefaults.verify|verify} messages.
10500
+ * @function encodeDelimited
10501
+ * @memberof google.protobuf.FeatureSetDefaults
10502
+ * @static
10503
+ * @param {google.protobuf.IFeatureSetDefaults} message FeatureSetDefaults message or plain object to encode
10504
+ * @param {$protobuf.Writer} [writer] Writer to encode to
10505
+ * @returns {$protobuf.Writer} Writer
10506
+ */
10507
+ FeatureSetDefaults.encodeDelimited = function encodeDelimited(message, writer) {
10508
+ return this.encode(message, writer).ldelim();
10509
+ };
10510
+
10511
+ /**
10512
+ * Decodes a FeatureSetDefaults message from the specified reader or buffer.
10513
+ * @function decode
10514
+ * @memberof google.protobuf.FeatureSetDefaults
10515
+ * @static
10516
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10517
+ * @param {number} [length] Message length if known beforehand
10518
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults
10519
+ * @throws {Error} If the payload is not a reader or valid buffer
10520
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
10521
+ */
10522
+ FeatureSetDefaults.decode = function decode(reader, length) {
10523
+ if (!(reader instanceof $Reader))
10524
+ reader = $Reader.create(reader);
10525
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults();
10526
+ while (reader.pos < end) {
10527
+ var tag = reader.uint32();
10528
+ switch (tag >>> 3) {
10529
+ case 1: {
10530
+ if (!(message.defaults && message.defaults.length))
10531
+ message.defaults = [];
10532
+ message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32()));
10533
+ break;
10534
+ }
10535
+ case 4: {
10536
+ message.minimumEdition = reader.int32();
10537
+ break;
10538
+ }
10539
+ case 5: {
10540
+ message.maximumEdition = reader.int32();
10541
+ break;
10542
+ }
10543
+ default:
10544
+ reader.skipType(tag & 7);
10545
+ break;
10546
+ }
10547
+ }
10548
+ return message;
10549
+ };
10550
+
10551
+ /**
10552
+ * Decodes a FeatureSetDefaults message from the specified reader or buffer, length delimited.
10553
+ * @function decodeDelimited
10554
+ * @memberof google.protobuf.FeatureSetDefaults
10555
+ * @static
10556
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10557
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults
10558
+ * @throws {Error} If the payload is not a reader or valid buffer
10559
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
10560
+ */
10561
+ FeatureSetDefaults.decodeDelimited = function decodeDelimited(reader) {
10562
+ if (!(reader instanceof $Reader))
10563
+ reader = new $Reader(reader);
10564
+ return this.decode(reader, reader.uint32());
10565
+ };
10566
+
10567
+ /**
10568
+ * Verifies a FeatureSetDefaults message.
10569
+ * @function verify
10570
+ * @memberof google.protobuf.FeatureSetDefaults
10571
+ * @static
10572
+ * @param {Object.<string,*>} message Plain object to verify
10573
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
10574
+ */
10575
+ FeatureSetDefaults.verify = function verify(message) {
10576
+ if (typeof message !== "object" || message === null)
10577
+ return "object expected";
10578
+ if (message.defaults != null && message.hasOwnProperty("defaults")) {
10579
+ if (!Array.isArray(message.defaults))
10580
+ return "defaults: array expected";
10581
+ for (var i = 0; i < message.defaults.length; ++i) {
10582
+ var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]);
10583
+ if (error)
10584
+ return "defaults." + error;
10585
+ }
10586
+ }
10587
+ if (message.minimumEdition != null && message.hasOwnProperty("minimumEdition"))
10588
+ switch (message.minimumEdition) {
10589
+ default:
10590
+ return "minimumEdition: enum value expected";
10591
+ case 0:
10592
+ case 998:
10593
+ case 999:
10594
+ case 1000:
10595
+ case 1001:
10596
+ case 1:
10597
+ case 2:
10598
+ case 99997:
10599
+ case 99998:
10600
+ case 99999:
10601
+ case 2147483647:
10602
+ break;
10603
+ }
10604
+ if (message.maximumEdition != null && message.hasOwnProperty("maximumEdition"))
10605
+ switch (message.maximumEdition) {
10606
+ default:
10607
+ return "maximumEdition: enum value expected";
10608
+ case 0:
10609
+ case 998:
10610
+ case 999:
10611
+ case 1000:
10612
+ case 1001:
10613
+ case 1:
10614
+ case 2:
10615
+ case 99997:
10616
+ case 99998:
10617
+ case 99999:
10618
+ case 2147483647:
10619
+ break;
10620
+ }
10621
+ return null;
10622
+ };
10623
+
10624
+ /**
10625
+ * Creates a FeatureSetDefaults message from a plain object. Also converts values to their respective internal types.
10626
+ * @function fromObject
10627
+ * @memberof google.protobuf.FeatureSetDefaults
10628
+ * @static
10629
+ * @param {Object.<string,*>} object Plain object
10630
+ * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults
10631
+ */
10632
+ FeatureSetDefaults.fromObject = function fromObject(object) {
10633
+ if (object instanceof $root.google.protobuf.FeatureSetDefaults)
10634
+ return object;
10635
+ var message = new $root.google.protobuf.FeatureSetDefaults();
10636
+ if (object.defaults) {
10637
+ if (!Array.isArray(object.defaults))
10638
+ throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: array expected");
10639
+ message.defaults = [];
10640
+ for (var i = 0; i < object.defaults.length; ++i) {
10641
+ if (typeof object.defaults[i] !== "object")
10642
+ throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected");
10643
+ message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]);
10644
+ }
10645
+ }
10646
+ switch (object.minimumEdition) {
10647
+ default:
10648
+ if (typeof object.minimumEdition === "number") {
10649
+ message.minimumEdition = object.minimumEdition;
10650
+ break;
10651
+ }
10652
+ break;
10653
+ case "EDITION_UNKNOWN":
10654
+ case 0:
10655
+ message.minimumEdition = 0;
10656
+ break;
10657
+ case "EDITION_PROTO2":
10658
+ case 998:
10659
+ message.minimumEdition = 998;
10660
+ break;
10661
+ case "EDITION_PROTO3":
10662
+ case 999:
10663
+ message.minimumEdition = 999;
10664
+ break;
10665
+ case "EDITION_2023":
10666
+ case 1000:
10667
+ message.minimumEdition = 1000;
10668
+ break;
10669
+ case "EDITION_2024":
10670
+ case 1001:
10671
+ message.minimumEdition = 1001;
10672
+ break;
10673
+ case "EDITION_1_TEST_ONLY":
10674
+ case 1:
10675
+ message.minimumEdition = 1;
10676
+ break;
10677
+ case "EDITION_2_TEST_ONLY":
10678
+ case 2:
10679
+ message.minimumEdition = 2;
10680
+ break;
10681
+ case "EDITION_99997_TEST_ONLY":
10682
+ case 99997:
10683
+ message.minimumEdition = 99997;
10684
+ break;
10685
+ case "EDITION_99998_TEST_ONLY":
10686
+ case 99998:
10687
+ message.minimumEdition = 99998;
10688
+ break;
10689
+ case "EDITION_99999_TEST_ONLY":
10690
+ case 99999:
10691
+ message.minimumEdition = 99999;
10692
+ break;
10693
+ case "EDITION_MAX":
10694
+ case 2147483647:
10695
+ message.minimumEdition = 2147483647;
10696
+ break;
10697
+ }
10698
+ switch (object.maximumEdition) {
10699
+ default:
10700
+ if (typeof object.maximumEdition === "number") {
10701
+ message.maximumEdition = object.maximumEdition;
10702
+ break;
10703
+ }
10704
+ break;
10705
+ case "EDITION_UNKNOWN":
10706
+ case 0:
10707
+ message.maximumEdition = 0;
10708
+ break;
10709
+ case "EDITION_PROTO2":
10710
+ case 998:
10711
+ message.maximumEdition = 998;
10712
+ break;
10713
+ case "EDITION_PROTO3":
10714
+ case 999:
10715
+ message.maximumEdition = 999;
10716
+ break;
10717
+ case "EDITION_2023":
10718
+ case 1000:
10719
+ message.maximumEdition = 1000;
10720
+ break;
10721
+ case "EDITION_2024":
10722
+ case 1001:
10723
+ message.maximumEdition = 1001;
10724
+ break;
10725
+ case "EDITION_1_TEST_ONLY":
10726
+ case 1:
10727
+ message.maximumEdition = 1;
10728
+ break;
10729
+ case "EDITION_2_TEST_ONLY":
10730
+ case 2:
10731
+ message.maximumEdition = 2;
10732
+ break;
10733
+ case "EDITION_99997_TEST_ONLY":
10734
+ case 99997:
10735
+ message.maximumEdition = 99997;
10736
+ break;
10737
+ case "EDITION_99998_TEST_ONLY":
10738
+ case 99998:
10739
+ message.maximumEdition = 99998;
10740
+ break;
10741
+ case "EDITION_99999_TEST_ONLY":
10742
+ case 99999:
10743
+ message.maximumEdition = 99999;
10744
+ break;
10745
+ case "EDITION_MAX":
10746
+ case 2147483647:
10747
+ message.maximumEdition = 2147483647;
10748
+ break;
10749
+ }
10750
+ return message;
10751
+ };
10752
+
10753
+ /**
10754
+ * Creates a plain object from a FeatureSetDefaults message. Also converts values to other types if specified.
10755
+ * @function toObject
10756
+ * @memberof google.protobuf.FeatureSetDefaults
10757
+ * @static
10758
+ * @param {google.protobuf.FeatureSetDefaults} message FeatureSetDefaults
10759
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
10760
+ * @returns {Object.<string,*>} Plain object
10761
+ */
10762
+ FeatureSetDefaults.toObject = function toObject(message, options) {
10763
+ if (!options)
10764
+ options = {};
10765
+ var object = {};
10766
+ if (options.arrays || options.defaults)
10767
+ object.defaults = [];
10768
+ if (options.defaults) {
10769
+ object.minimumEdition = options.enums === String ? "EDITION_UNKNOWN" : 0;
10770
+ object.maximumEdition = options.enums === String ? "EDITION_UNKNOWN" : 0;
10771
+ }
10772
+ if (message.defaults && message.defaults.length) {
10773
+ object.defaults = [];
10774
+ for (var j = 0; j < message.defaults.length; ++j)
10775
+ object.defaults[j] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.toObject(message.defaults[j], options);
10776
+ }
10777
+ if (message.minimumEdition != null && message.hasOwnProperty("minimumEdition"))
10778
+ object.minimumEdition = options.enums === String ? $root.google.protobuf.Edition[message.minimumEdition] === undefined ? message.minimumEdition : $root.google.protobuf.Edition[message.minimumEdition] : message.minimumEdition;
10779
+ if (message.maximumEdition != null && message.hasOwnProperty("maximumEdition"))
10780
+ object.maximumEdition = options.enums === String ? $root.google.protobuf.Edition[message.maximumEdition] === undefined ? message.maximumEdition : $root.google.protobuf.Edition[message.maximumEdition] : message.maximumEdition;
10781
+ return object;
10782
+ };
10783
+
10784
+ /**
10785
+ * Converts this FeatureSetDefaults to JSON.
8483
10786
  * @function toJSON
8484
- * @memberof google.protobuf.UninterpretedOption
10787
+ * @memberof google.protobuf.FeatureSetDefaults
8485
10788
  * @instance
8486
10789
  * @returns {Object.<string,*>} JSON object
8487
10790
  */
8488
- UninterpretedOption.prototype.toJSON = function toJSON() {
10791
+ FeatureSetDefaults.prototype.toJSON = function toJSON() {
8489
10792
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
8490
10793
  };
8491
10794
 
8492
10795
  /**
8493
- * Gets the default type url for UninterpretedOption
10796
+ * Gets the default type url for FeatureSetDefaults
8494
10797
  * @function getTypeUrl
8495
- * @memberof google.protobuf.UninterpretedOption
10798
+ * @memberof google.protobuf.FeatureSetDefaults
8496
10799
  * @static
8497
10800
  * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
8498
10801
  * @returns {string} The default type url
8499
10802
  */
8500
- UninterpretedOption.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
10803
+ FeatureSetDefaults.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
8501
10804
  if (typeUrlPrefix === undefined) {
8502
10805
  typeUrlPrefix = "type.googleapis.com";
8503
10806
  }
8504
- return typeUrlPrefix + "/google.protobuf.UninterpretedOption";
10807
+ return typeUrlPrefix + "/google.protobuf.FeatureSetDefaults";
8505
10808
  };
8506
10809
 
8507
- UninterpretedOption.NamePart = (function() {
10810
+ FeatureSetDefaults.FeatureSetEditionDefault = (function() {
8508
10811
 
8509
10812
  /**
8510
- * Properties of a NamePart.
8511
- * @memberof google.protobuf.UninterpretedOption
8512
- * @interface INamePart
8513
- * @property {string} namePart NamePart namePart
8514
- * @property {boolean} isExtension NamePart isExtension
10813
+ * Properties of a FeatureSetEditionDefault.
10814
+ * @memberof google.protobuf.FeatureSetDefaults
10815
+ * @interface IFeatureSetEditionDefault
10816
+ * @property {google.protobuf.Edition|null} [edition] FeatureSetEditionDefault edition
10817
+ * @property {google.protobuf.IFeatureSet|null} [features] FeatureSetEditionDefault features
8515
10818
  */
8516
10819
 
8517
10820
  /**
8518
- * Constructs a new NamePart.
8519
- * @memberof google.protobuf.UninterpretedOption
8520
- * @classdesc Represents a NamePart.
8521
- * @implements INamePart
10821
+ * Constructs a new FeatureSetEditionDefault.
10822
+ * @memberof google.protobuf.FeatureSetDefaults
10823
+ * @classdesc Represents a FeatureSetEditionDefault.
10824
+ * @implements IFeatureSetEditionDefault
8522
10825
  * @constructor
8523
- * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
10826
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault=} [properties] Properties to set
8524
10827
  */
8525
- function NamePart(properties) {
10828
+ function FeatureSetEditionDefault(properties) {
8526
10829
  if (properties)
8527
10830
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
8528
10831
  if (properties[keys[i]] != null)
@@ -8530,87 +10833,89 @@
8530
10833
  }
8531
10834
 
8532
10835
  /**
8533
- * NamePart namePart.
8534
- * @member {string} namePart
8535
- * @memberof google.protobuf.UninterpretedOption.NamePart
10836
+ * FeatureSetEditionDefault edition.
10837
+ * @member {google.protobuf.Edition} edition
10838
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8536
10839
  * @instance
8537
10840
  */
8538
- NamePart.prototype.namePart = "";
10841
+ FeatureSetEditionDefault.prototype.edition = 0;
8539
10842
 
8540
10843
  /**
8541
- * NamePart isExtension.
8542
- * @member {boolean} isExtension
8543
- * @memberof google.protobuf.UninterpretedOption.NamePart
10844
+ * FeatureSetEditionDefault features.
10845
+ * @member {google.protobuf.IFeatureSet|null|undefined} features
10846
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8544
10847
  * @instance
8545
10848
  */
8546
- NamePart.prototype.isExtension = false;
10849
+ FeatureSetEditionDefault.prototype.features = null;
8547
10850
 
8548
10851
  /**
8549
- * Creates a new NamePart instance using the specified properties.
10852
+ * Creates a new FeatureSetEditionDefault instance using the specified properties.
8550
10853
  * @function create
8551
- * @memberof google.protobuf.UninterpretedOption.NamePart
10854
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8552
10855
  * @static
8553
- * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
8554
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance
10856
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault=} [properties] Properties to set
10857
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault instance
8555
10858
  */
8556
- NamePart.create = function create(properties) {
8557
- return new NamePart(properties);
10859
+ FeatureSetEditionDefault.create = function create(properties) {
10860
+ return new FeatureSetEditionDefault(properties);
8558
10861
  };
8559
10862
 
8560
10863
  /**
8561
- * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
10864
+ * Encodes the specified FeatureSetEditionDefault message. Does not implicitly {@link google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify|verify} messages.
8562
10865
  * @function encode
8563
- * @memberof google.protobuf.UninterpretedOption.NamePart
10866
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8564
10867
  * @static
8565
- * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
10868
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault} message FeatureSetEditionDefault message or plain object to encode
8566
10869
  * @param {$protobuf.Writer} [writer] Writer to encode to
8567
10870
  * @returns {$protobuf.Writer} Writer
8568
10871
  */
8569
- NamePart.encode = function encode(message, writer) {
10872
+ FeatureSetEditionDefault.encode = function encode(message, writer) {
8570
10873
  if (!writer)
8571
10874
  writer = $Writer.create();
8572
- writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart);
8573
- writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension);
10875
+ if (message.features != null && Object.hasOwnProperty.call(message, "features"))
10876
+ $root.google.protobuf.FeatureSet.encode(message.features, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
10877
+ if (message.edition != null && Object.hasOwnProperty.call(message, "edition"))
10878
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.edition);
8574
10879
  return writer;
8575
10880
  };
8576
10881
 
8577
10882
  /**
8578
- * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
10883
+ * Encodes the specified FeatureSetEditionDefault message, length delimited. Does not implicitly {@link google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify|verify} messages.
8579
10884
  * @function encodeDelimited
8580
- * @memberof google.protobuf.UninterpretedOption.NamePart
10885
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8581
10886
  * @static
8582
- * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
10887
+ * @param {google.protobuf.FeatureSetDefaults.IFeatureSetEditionDefault} message FeatureSetEditionDefault message or plain object to encode
8583
10888
  * @param {$protobuf.Writer} [writer] Writer to encode to
8584
10889
  * @returns {$protobuf.Writer} Writer
8585
10890
  */
8586
- NamePart.encodeDelimited = function encodeDelimited(message, writer) {
10891
+ FeatureSetEditionDefault.encodeDelimited = function encodeDelimited(message, writer) {
8587
10892
  return this.encode(message, writer).ldelim();
8588
10893
  };
8589
10894
 
8590
10895
  /**
8591
- * Decodes a NamePart message from the specified reader or buffer.
10896
+ * Decodes a FeatureSetEditionDefault message from the specified reader or buffer.
8592
10897
  * @function decode
8593
- * @memberof google.protobuf.UninterpretedOption.NamePart
10898
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8594
10899
  * @static
8595
10900
  * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8596
10901
  * @param {number} [length] Message length if known beforehand
8597
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
10902
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault
8598
10903
  * @throws {Error} If the payload is not a reader or valid buffer
8599
10904
  * @throws {$protobuf.util.ProtocolError} If required fields are missing
8600
10905
  */
8601
- NamePart.decode = function decode(reader, length) {
10906
+ FeatureSetEditionDefault.decode = function decode(reader, length) {
8602
10907
  if (!(reader instanceof $Reader))
8603
10908
  reader = $Reader.create(reader);
8604
- var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart();
10909
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault();
8605
10910
  while (reader.pos < end) {
8606
10911
  var tag = reader.uint32();
8607
10912
  switch (tag >>> 3) {
8608
- case 1: {
8609
- message.namePart = reader.string();
10913
+ case 3: {
10914
+ message.edition = reader.int32();
8610
10915
  break;
8611
10916
  }
8612
10917
  case 2: {
8613
- message.isExtension = reader.bool();
10918
+ message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32());
8614
10919
  break;
8615
10920
  }
8616
10921
  default:
@@ -8618,120 +10923,187 @@
8618
10923
  break;
8619
10924
  }
8620
10925
  }
8621
- if (!message.hasOwnProperty("namePart"))
8622
- throw $util.ProtocolError("missing required 'namePart'", { instance: message });
8623
- if (!message.hasOwnProperty("isExtension"))
8624
- throw $util.ProtocolError("missing required 'isExtension'", { instance: message });
8625
10926
  return message;
8626
10927
  };
8627
10928
 
8628
10929
  /**
8629
- * Decodes a NamePart message from the specified reader or buffer, length delimited.
10930
+ * Decodes a FeatureSetEditionDefault message from the specified reader or buffer, length delimited.
8630
10931
  * @function decodeDelimited
8631
- * @memberof google.protobuf.UninterpretedOption.NamePart
10932
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8632
10933
  * @static
8633
10934
  * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8634
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
10935
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault
8635
10936
  * @throws {Error} If the payload is not a reader or valid buffer
8636
10937
  * @throws {$protobuf.util.ProtocolError} If required fields are missing
8637
10938
  */
8638
- NamePart.decodeDelimited = function decodeDelimited(reader) {
10939
+ FeatureSetEditionDefault.decodeDelimited = function decodeDelimited(reader) {
8639
10940
  if (!(reader instanceof $Reader))
8640
10941
  reader = new $Reader(reader);
8641
10942
  return this.decode(reader, reader.uint32());
8642
10943
  };
8643
10944
 
8644
10945
  /**
8645
- * Verifies a NamePart message.
10946
+ * Verifies a FeatureSetEditionDefault message.
8646
10947
  * @function verify
8647
- * @memberof google.protobuf.UninterpretedOption.NamePart
10948
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8648
10949
  * @static
8649
10950
  * @param {Object.<string,*>} message Plain object to verify
8650
10951
  * @returns {string|null} `null` if valid, otherwise the reason why it is not
8651
10952
  */
8652
- NamePart.verify = function verify(message) {
10953
+ FeatureSetEditionDefault.verify = function verify(message) {
8653
10954
  if (typeof message !== "object" || message === null)
8654
10955
  return "object expected";
8655
- if (!$util.isString(message.namePart))
8656
- return "namePart: string expected";
8657
- if (typeof message.isExtension !== "boolean")
8658
- return "isExtension: boolean expected";
10956
+ if (message.edition != null && message.hasOwnProperty("edition"))
10957
+ switch (message.edition) {
10958
+ default:
10959
+ return "edition: enum value expected";
10960
+ case 0:
10961
+ case 998:
10962
+ case 999:
10963
+ case 1000:
10964
+ case 1001:
10965
+ case 1:
10966
+ case 2:
10967
+ case 99997:
10968
+ case 99998:
10969
+ case 99999:
10970
+ case 2147483647:
10971
+ break;
10972
+ }
10973
+ if (message.features != null && message.hasOwnProperty("features")) {
10974
+ var error = $root.google.protobuf.FeatureSet.verify(message.features);
10975
+ if (error)
10976
+ return "features." + error;
10977
+ }
8659
10978
  return null;
8660
10979
  };
8661
10980
 
8662
10981
  /**
8663
- * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
10982
+ * Creates a FeatureSetEditionDefault message from a plain object. Also converts values to their respective internal types.
8664
10983
  * @function fromObject
8665
- * @memberof google.protobuf.UninterpretedOption.NamePart
10984
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8666
10985
  * @static
8667
10986
  * @param {Object.<string,*>} object Plain object
8668
- * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
10987
+ * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault
8669
10988
  */
8670
- NamePart.fromObject = function fromObject(object) {
8671
- if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart)
10989
+ FeatureSetEditionDefault.fromObject = function fromObject(object) {
10990
+ if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault)
8672
10991
  return object;
8673
- var message = new $root.google.protobuf.UninterpretedOption.NamePart();
8674
- if (object.namePart != null)
8675
- message.namePart = String(object.namePart);
8676
- if (object.isExtension != null)
8677
- message.isExtension = Boolean(object.isExtension);
10992
+ var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault();
10993
+ switch (object.edition) {
10994
+ default:
10995
+ if (typeof object.edition === "number") {
10996
+ message.edition = object.edition;
10997
+ break;
10998
+ }
10999
+ break;
11000
+ case "EDITION_UNKNOWN":
11001
+ case 0:
11002
+ message.edition = 0;
11003
+ break;
11004
+ case "EDITION_PROTO2":
11005
+ case 998:
11006
+ message.edition = 998;
11007
+ break;
11008
+ case "EDITION_PROTO3":
11009
+ case 999:
11010
+ message.edition = 999;
11011
+ break;
11012
+ case "EDITION_2023":
11013
+ case 1000:
11014
+ message.edition = 1000;
11015
+ break;
11016
+ case "EDITION_2024":
11017
+ case 1001:
11018
+ message.edition = 1001;
11019
+ break;
11020
+ case "EDITION_1_TEST_ONLY":
11021
+ case 1:
11022
+ message.edition = 1;
11023
+ break;
11024
+ case "EDITION_2_TEST_ONLY":
11025
+ case 2:
11026
+ message.edition = 2;
11027
+ break;
11028
+ case "EDITION_99997_TEST_ONLY":
11029
+ case 99997:
11030
+ message.edition = 99997;
11031
+ break;
11032
+ case "EDITION_99998_TEST_ONLY":
11033
+ case 99998:
11034
+ message.edition = 99998;
11035
+ break;
11036
+ case "EDITION_99999_TEST_ONLY":
11037
+ case 99999:
11038
+ message.edition = 99999;
11039
+ break;
11040
+ case "EDITION_MAX":
11041
+ case 2147483647:
11042
+ message.edition = 2147483647;
11043
+ break;
11044
+ }
11045
+ if (object.features != null) {
11046
+ if (typeof object.features !== "object")
11047
+ throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.features: object expected");
11048
+ message.features = $root.google.protobuf.FeatureSet.fromObject(object.features);
11049
+ }
8678
11050
  return message;
8679
11051
  };
8680
11052
 
8681
11053
  /**
8682
- * Creates a plain object from a NamePart message. Also converts values to other types if specified.
11054
+ * Creates a plain object from a FeatureSetEditionDefault message. Also converts values to other types if specified.
8683
11055
  * @function toObject
8684
- * @memberof google.protobuf.UninterpretedOption.NamePart
11056
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8685
11057
  * @static
8686
- * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart
11058
+ * @param {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} message FeatureSetEditionDefault
8687
11059
  * @param {$protobuf.IConversionOptions} [options] Conversion options
8688
11060
  * @returns {Object.<string,*>} Plain object
8689
11061
  */
8690
- NamePart.toObject = function toObject(message, options) {
11062
+ FeatureSetEditionDefault.toObject = function toObject(message, options) {
8691
11063
  if (!options)
8692
11064
  options = {};
8693
11065
  var object = {};
8694
11066
  if (options.defaults) {
8695
- object.namePart = "";
8696
- object.isExtension = false;
11067
+ object.features = null;
11068
+ object.edition = options.enums === String ? "EDITION_UNKNOWN" : 0;
8697
11069
  }
8698
- if (message.namePart != null && message.hasOwnProperty("namePart"))
8699
- object.namePart = message.namePart;
8700
- if (message.isExtension != null && message.hasOwnProperty("isExtension"))
8701
- object.isExtension = message.isExtension;
11070
+ if (message.features != null && message.hasOwnProperty("features"))
11071
+ object.features = $root.google.protobuf.FeatureSet.toObject(message.features, options);
11072
+ if (message.edition != null && message.hasOwnProperty("edition"))
11073
+ object.edition = options.enums === String ? $root.google.protobuf.Edition[message.edition] === undefined ? message.edition : $root.google.protobuf.Edition[message.edition] : message.edition;
8702
11074
  return object;
8703
11075
  };
8704
11076
 
8705
11077
  /**
8706
- * Converts this NamePart to JSON.
11078
+ * Converts this FeatureSetEditionDefault to JSON.
8707
11079
  * @function toJSON
8708
- * @memberof google.protobuf.UninterpretedOption.NamePart
11080
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8709
11081
  * @instance
8710
11082
  * @returns {Object.<string,*>} JSON object
8711
11083
  */
8712
- NamePart.prototype.toJSON = function toJSON() {
11084
+ FeatureSetEditionDefault.prototype.toJSON = function toJSON() {
8713
11085
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
8714
11086
  };
8715
11087
 
8716
11088
  /**
8717
- * Gets the default type url for NamePart
11089
+ * Gets the default type url for FeatureSetEditionDefault
8718
11090
  * @function getTypeUrl
8719
- * @memberof google.protobuf.UninterpretedOption.NamePart
11091
+ * @memberof google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault
8720
11092
  * @static
8721
11093
  * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
8722
11094
  * @returns {string} The default type url
8723
11095
  */
8724
- NamePart.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
11096
+ FeatureSetEditionDefault.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
8725
11097
  if (typeUrlPrefix === undefined) {
8726
11098
  typeUrlPrefix = "type.googleapis.com";
8727
11099
  }
8728
- return typeUrlPrefix + "/google.protobuf.UninterpretedOption.NamePart";
11100
+ return typeUrlPrefix + "/google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault";
8729
11101
  };
8730
11102
 
8731
- return NamePart;
11103
+ return FeatureSetEditionDefault;
8732
11104
  })();
8733
11105
 
8734
- return UninterpretedOption;
11106
+ return FeatureSetDefaults;
8735
11107
  })();
8736
11108
 
8737
11109
  protobuf.SourceCodeInfo = (function() {
@@ -25943,6 +28315,7 @@
25943
28315
  * @property {number} IMMUTABLE=5 IMMUTABLE value
25944
28316
  * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value
25945
28317
  * @property {number} NON_EMPTY_DEFAULT=7 NON_EMPTY_DEFAULT value
28318
+ * @property {number} IDENTIFIER=8 IDENTIFIER value
25946
28319
  */
25947
28320
  api.FieldBehavior = (function() {
25948
28321
  var valuesById = {}, values = Object.create(valuesById);
@@ -25954,6 +28327,7 @@
25954
28327
  values[valuesById[5] = "IMMUTABLE"] = 5;
25955
28328
  values[valuesById[6] = "UNORDERED_LIST"] = 6;
25956
28329
  values[valuesById[7] = "NON_EMPTY_DEFAULT"] = 7;
28330
+ values[valuesById[8] = "IDENTIFIER"] = 8;
25957
28331
  return values;
25958
28332
  })();
25959
28333
 
@@ -28417,6 +30791,7 @@
28417
30791
  * @property {string|null} [docTagPrefix] Publishing docTagPrefix
28418
30792
  * @property {google.api.ClientLibraryOrganization|null} [organization] Publishing organization
28419
30793
  * @property {Array.<google.api.IClientLibrarySettings>|null} [librarySettings] Publishing librarySettings
30794
+ * @property {string|null} [protoReferenceDocumentationUri] Publishing protoReferenceDocumentationUri
28420
30795
  */
28421
30796
 
28422
30797
  /**
@@ -28509,6 +30884,14 @@
28509
30884
  */
28510
30885
  Publishing.prototype.librarySettings = $util.emptyArray;
28511
30886
 
30887
+ /**
30888
+ * Publishing protoReferenceDocumentationUri.
30889
+ * @member {string} protoReferenceDocumentationUri
30890
+ * @memberof google.api.Publishing
30891
+ * @instance
30892
+ */
30893
+ Publishing.prototype.protoReferenceDocumentationUri = "";
30894
+
28512
30895
  /**
28513
30896
  * Creates a new Publishing instance using the specified properties.
28514
30897
  * @function create
@@ -28554,6 +30937,8 @@
28554
30937
  if (message.librarySettings != null && message.librarySettings.length)
28555
30938
  for (var i = 0; i < message.librarySettings.length; ++i)
28556
30939
  $root.google.api.ClientLibrarySettings.encode(message.librarySettings[i], writer.uint32(/* id 109, wireType 2 =*/874).fork()).ldelim();
30940
+ if (message.protoReferenceDocumentationUri != null && Object.hasOwnProperty.call(message, "protoReferenceDocumentationUri"))
30941
+ writer.uint32(/* id 110, wireType 2 =*/882).string(message.protoReferenceDocumentationUri);
28557
30942
  return writer;
28558
30943
  };
28559
30944
 
@@ -28630,6 +31015,10 @@
28630
31015
  message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32()));
28631
31016
  break;
28632
31017
  }
31018
+ case 110: {
31019
+ message.protoReferenceDocumentationUri = reader.string();
31020
+ break;
31021
+ }
28633
31022
  default:
28634
31023
  reader.skipType(tag & 7);
28635
31024
  break;
@@ -28705,6 +31094,9 @@
28705
31094
  case 2:
28706
31095
  case 3:
28707
31096
  case 4:
31097
+ case 5:
31098
+ case 6:
31099
+ case 7:
28708
31100
  break;
28709
31101
  }
28710
31102
  if (message.librarySettings != null && message.hasOwnProperty("librarySettings")) {
@@ -28716,6 +31108,9 @@
28716
31108
  return "librarySettings." + error;
28717
31109
  }
28718
31110
  }
31111
+ if (message.protoReferenceDocumentationUri != null && message.hasOwnProperty("protoReferenceDocumentationUri"))
31112
+ if (!$util.isString(message.protoReferenceDocumentationUri))
31113
+ return "protoReferenceDocumentationUri: string expected";
28719
31114
  return null;
28720
31115
  };
28721
31116
 
@@ -28785,6 +31180,18 @@
28785
31180
  case 4:
28786
31181
  message.organization = 4;
28787
31182
  break;
31183
+ case "SHOPPING":
31184
+ case 5:
31185
+ message.organization = 5;
31186
+ break;
31187
+ case "GEO":
31188
+ case 6:
31189
+ message.organization = 6;
31190
+ break;
31191
+ case "GENERATIVE_AI":
31192
+ case 7:
31193
+ message.organization = 7;
31194
+ break;
28788
31195
  }
28789
31196
  if (object.librarySettings) {
28790
31197
  if (!Array.isArray(object.librarySettings))
@@ -28796,6 +31203,8 @@
28796
31203
  message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]);
28797
31204
  }
28798
31205
  }
31206
+ if (object.protoReferenceDocumentationUri != null)
31207
+ message.protoReferenceDocumentationUri = String(object.protoReferenceDocumentationUri);
28799
31208
  return message;
28800
31209
  };
28801
31210
 
@@ -28824,6 +31233,7 @@
28824
31233
  object.githubLabel = "";
28825
31234
  object.docTagPrefix = "";
28826
31235
  object.organization = options.enums === String ? "CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED" : 0;
31236
+ object.protoReferenceDocumentationUri = "";
28827
31237
  }
28828
31238
  if (message.methodSettings && message.methodSettings.length) {
28829
31239
  object.methodSettings = [];
@@ -28852,6 +31262,8 @@
28852
31262
  for (var j = 0; j < message.librarySettings.length; ++j)
28853
31263
  object.librarySettings[j] = $root.google.api.ClientLibrarySettings.toObject(message.librarySettings[j], options);
28854
31264
  }
31265
+ if (message.protoReferenceDocumentationUri != null && message.hasOwnProperty("protoReferenceDocumentationUri"))
31266
+ object.protoReferenceDocumentationUri = message.protoReferenceDocumentationUri;
28855
31267
  return object;
28856
31268
  };
28857
31269
 
@@ -30014,6 +32426,11 @@
30014
32426
  * @memberof google.api
30015
32427
  * @interface IDotnetSettings
30016
32428
  * @property {google.api.ICommonLanguageSettings|null} [common] DotnetSettings common
32429
+ * @property {Object.<string,string>|null} [renamedServices] DotnetSettings renamedServices
32430
+ * @property {Object.<string,string>|null} [renamedResources] DotnetSettings renamedResources
32431
+ * @property {Array.<string>|null} [ignoredResources] DotnetSettings ignoredResources
32432
+ * @property {Array.<string>|null} [forcedNamespaceAliases] DotnetSettings forcedNamespaceAliases
32433
+ * @property {Array.<string>|null} [handwrittenSignatures] DotnetSettings handwrittenSignatures
30017
32434
  */
30018
32435
 
30019
32436
  /**
@@ -30025,6 +32442,11 @@
30025
32442
  * @param {google.api.IDotnetSettings=} [properties] Properties to set
30026
32443
  */
30027
32444
  function DotnetSettings(properties) {
32445
+ this.renamedServices = {};
32446
+ this.renamedResources = {};
32447
+ this.ignoredResources = [];
32448
+ this.forcedNamespaceAliases = [];
32449
+ this.handwrittenSignatures = [];
30028
32450
  if (properties)
30029
32451
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
30030
32452
  if (properties[keys[i]] != null)
@@ -30039,6 +32461,46 @@
30039
32461
  */
30040
32462
  DotnetSettings.prototype.common = null;
30041
32463
 
32464
+ /**
32465
+ * DotnetSettings renamedServices.
32466
+ * @member {Object.<string,string>} renamedServices
32467
+ * @memberof google.api.DotnetSettings
32468
+ * @instance
32469
+ */
32470
+ DotnetSettings.prototype.renamedServices = $util.emptyObject;
32471
+
32472
+ /**
32473
+ * DotnetSettings renamedResources.
32474
+ * @member {Object.<string,string>} renamedResources
32475
+ * @memberof google.api.DotnetSettings
32476
+ * @instance
32477
+ */
32478
+ DotnetSettings.prototype.renamedResources = $util.emptyObject;
32479
+
32480
+ /**
32481
+ * DotnetSettings ignoredResources.
32482
+ * @member {Array.<string>} ignoredResources
32483
+ * @memberof google.api.DotnetSettings
32484
+ * @instance
32485
+ */
32486
+ DotnetSettings.prototype.ignoredResources = $util.emptyArray;
32487
+
32488
+ /**
32489
+ * DotnetSettings forcedNamespaceAliases.
32490
+ * @member {Array.<string>} forcedNamespaceAliases
32491
+ * @memberof google.api.DotnetSettings
32492
+ * @instance
32493
+ */
32494
+ DotnetSettings.prototype.forcedNamespaceAliases = $util.emptyArray;
32495
+
32496
+ /**
32497
+ * DotnetSettings handwrittenSignatures.
32498
+ * @member {Array.<string>} handwrittenSignatures
32499
+ * @memberof google.api.DotnetSettings
32500
+ * @instance
32501
+ */
32502
+ DotnetSettings.prototype.handwrittenSignatures = $util.emptyArray;
32503
+
30042
32504
  /**
30043
32505
  * Creates a new DotnetSettings instance using the specified properties.
30044
32506
  * @function create
@@ -30065,6 +32527,21 @@
30065
32527
  writer = $Writer.create();
30066
32528
  if (message.common != null && Object.hasOwnProperty.call(message, "common"))
30067
32529
  $root.google.api.CommonLanguageSettings.encode(message.common, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
32530
+ if (message.renamedServices != null && Object.hasOwnProperty.call(message, "renamedServices"))
32531
+ for (var keys = Object.keys(message.renamedServices), i = 0; i < keys.length; ++i)
32532
+ 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();
32533
+ if (message.renamedResources != null && Object.hasOwnProperty.call(message, "renamedResources"))
32534
+ for (var keys = Object.keys(message.renamedResources), i = 0; i < keys.length; ++i)
32535
+ 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();
32536
+ if (message.ignoredResources != null && message.ignoredResources.length)
32537
+ for (var i = 0; i < message.ignoredResources.length; ++i)
32538
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.ignoredResources[i]);
32539
+ if (message.forcedNamespaceAliases != null && message.forcedNamespaceAliases.length)
32540
+ for (var i = 0; i < message.forcedNamespaceAliases.length; ++i)
32541
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.forcedNamespaceAliases[i]);
32542
+ if (message.handwrittenSignatures != null && message.handwrittenSignatures.length)
32543
+ for (var i = 0; i < message.handwrittenSignatures.length; ++i)
32544
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.handwrittenSignatures[i]);
30068
32545
  return writer;
30069
32546
  };
30070
32547
 
@@ -30095,7 +32572,7 @@
30095
32572
  DotnetSettings.decode = function decode(reader, length) {
30096
32573
  if (!(reader instanceof $Reader))
30097
32574
  reader = $Reader.create(reader);
30098
- var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings();
32575
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value;
30099
32576
  while (reader.pos < end) {
30100
32577
  var tag = reader.uint32();
30101
32578
  switch (tag >>> 3) {
@@ -30103,6 +32580,70 @@
30103
32580
  message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32());
30104
32581
  break;
30105
32582
  }
32583
+ case 2: {
32584
+ if (message.renamedServices === $util.emptyObject)
32585
+ message.renamedServices = {};
32586
+ var end2 = reader.uint32() + reader.pos;
32587
+ key = "";
32588
+ value = "";
32589
+ while (reader.pos < end2) {
32590
+ var tag2 = reader.uint32();
32591
+ switch (tag2 >>> 3) {
32592
+ case 1:
32593
+ key = reader.string();
32594
+ break;
32595
+ case 2:
32596
+ value = reader.string();
32597
+ break;
32598
+ default:
32599
+ reader.skipType(tag2 & 7);
32600
+ break;
32601
+ }
32602
+ }
32603
+ message.renamedServices[key] = value;
32604
+ break;
32605
+ }
32606
+ case 3: {
32607
+ if (message.renamedResources === $util.emptyObject)
32608
+ message.renamedResources = {};
32609
+ var end2 = reader.uint32() + reader.pos;
32610
+ key = "";
32611
+ value = "";
32612
+ while (reader.pos < end2) {
32613
+ var tag2 = reader.uint32();
32614
+ switch (tag2 >>> 3) {
32615
+ case 1:
32616
+ key = reader.string();
32617
+ break;
32618
+ case 2:
32619
+ value = reader.string();
32620
+ break;
32621
+ default:
32622
+ reader.skipType(tag2 & 7);
32623
+ break;
32624
+ }
32625
+ }
32626
+ message.renamedResources[key] = value;
32627
+ break;
32628
+ }
32629
+ case 4: {
32630
+ if (!(message.ignoredResources && message.ignoredResources.length))
32631
+ message.ignoredResources = [];
32632
+ message.ignoredResources.push(reader.string());
32633
+ break;
32634
+ }
32635
+ case 5: {
32636
+ if (!(message.forcedNamespaceAliases && message.forcedNamespaceAliases.length))
32637
+ message.forcedNamespaceAliases = [];
32638
+ message.forcedNamespaceAliases.push(reader.string());
32639
+ break;
32640
+ }
32641
+ case 6: {
32642
+ if (!(message.handwrittenSignatures && message.handwrittenSignatures.length))
32643
+ message.handwrittenSignatures = [];
32644
+ message.handwrittenSignatures.push(reader.string());
32645
+ break;
32646
+ }
30106
32647
  default:
30107
32648
  reader.skipType(tag & 7);
30108
32649
  break;
@@ -30143,6 +32684,43 @@
30143
32684
  if (error)
30144
32685
  return "common." + error;
30145
32686
  }
32687
+ if (message.renamedServices != null && message.hasOwnProperty("renamedServices")) {
32688
+ if (!$util.isObject(message.renamedServices))
32689
+ return "renamedServices: object expected";
32690
+ var key = Object.keys(message.renamedServices);
32691
+ for (var i = 0; i < key.length; ++i)
32692
+ if (!$util.isString(message.renamedServices[key[i]]))
32693
+ return "renamedServices: string{k:string} expected";
32694
+ }
32695
+ if (message.renamedResources != null && message.hasOwnProperty("renamedResources")) {
32696
+ if (!$util.isObject(message.renamedResources))
32697
+ return "renamedResources: object expected";
32698
+ var key = Object.keys(message.renamedResources);
32699
+ for (var i = 0; i < key.length; ++i)
32700
+ if (!$util.isString(message.renamedResources[key[i]]))
32701
+ return "renamedResources: string{k:string} expected";
32702
+ }
32703
+ if (message.ignoredResources != null && message.hasOwnProperty("ignoredResources")) {
32704
+ if (!Array.isArray(message.ignoredResources))
32705
+ return "ignoredResources: array expected";
32706
+ for (var i = 0; i < message.ignoredResources.length; ++i)
32707
+ if (!$util.isString(message.ignoredResources[i]))
32708
+ return "ignoredResources: string[] expected";
32709
+ }
32710
+ if (message.forcedNamespaceAliases != null && message.hasOwnProperty("forcedNamespaceAliases")) {
32711
+ if (!Array.isArray(message.forcedNamespaceAliases))
32712
+ return "forcedNamespaceAliases: array expected";
32713
+ for (var i = 0; i < message.forcedNamespaceAliases.length; ++i)
32714
+ if (!$util.isString(message.forcedNamespaceAliases[i]))
32715
+ return "forcedNamespaceAliases: string[] expected";
32716
+ }
32717
+ if (message.handwrittenSignatures != null && message.hasOwnProperty("handwrittenSignatures")) {
32718
+ if (!Array.isArray(message.handwrittenSignatures))
32719
+ return "handwrittenSignatures: array expected";
32720
+ for (var i = 0; i < message.handwrittenSignatures.length; ++i)
32721
+ if (!$util.isString(message.handwrittenSignatures[i]))
32722
+ return "handwrittenSignatures: string[] expected";
32723
+ }
30146
32724
  return null;
30147
32725
  };
30148
32726
 
@@ -30163,6 +32741,41 @@
30163
32741
  throw TypeError(".google.api.DotnetSettings.common: object expected");
30164
32742
  message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common);
30165
32743
  }
32744
+ if (object.renamedServices) {
32745
+ if (typeof object.renamedServices !== "object")
32746
+ throw TypeError(".google.api.DotnetSettings.renamedServices: object expected");
32747
+ message.renamedServices = {};
32748
+ for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i)
32749
+ message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]);
32750
+ }
32751
+ if (object.renamedResources) {
32752
+ if (typeof object.renamedResources !== "object")
32753
+ throw TypeError(".google.api.DotnetSettings.renamedResources: object expected");
32754
+ message.renamedResources = {};
32755
+ for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i)
32756
+ message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]);
32757
+ }
32758
+ if (object.ignoredResources) {
32759
+ if (!Array.isArray(object.ignoredResources))
32760
+ throw TypeError(".google.api.DotnetSettings.ignoredResources: array expected");
32761
+ message.ignoredResources = [];
32762
+ for (var i = 0; i < object.ignoredResources.length; ++i)
32763
+ message.ignoredResources[i] = String(object.ignoredResources[i]);
32764
+ }
32765
+ if (object.forcedNamespaceAliases) {
32766
+ if (!Array.isArray(object.forcedNamespaceAliases))
32767
+ throw TypeError(".google.api.DotnetSettings.forcedNamespaceAliases: array expected");
32768
+ message.forcedNamespaceAliases = [];
32769
+ for (var i = 0; i < object.forcedNamespaceAliases.length; ++i)
32770
+ message.forcedNamespaceAliases[i] = String(object.forcedNamespaceAliases[i]);
32771
+ }
32772
+ if (object.handwrittenSignatures) {
32773
+ if (!Array.isArray(object.handwrittenSignatures))
32774
+ throw TypeError(".google.api.DotnetSettings.handwrittenSignatures: array expected");
32775
+ message.handwrittenSignatures = [];
32776
+ for (var i = 0; i < object.handwrittenSignatures.length; ++i)
32777
+ message.handwrittenSignatures[i] = String(object.handwrittenSignatures[i]);
32778
+ }
30166
32779
  return message;
30167
32780
  };
30168
32781
 
@@ -30179,10 +32792,45 @@
30179
32792
  if (!options)
30180
32793
  options = {};
30181
32794
  var object = {};
32795
+ if (options.arrays || options.defaults) {
32796
+ object.ignoredResources = [];
32797
+ object.forcedNamespaceAliases = [];
32798
+ object.handwrittenSignatures = [];
32799
+ }
32800
+ if (options.objects || options.defaults) {
32801
+ object.renamedServices = {};
32802
+ object.renamedResources = {};
32803
+ }
30182
32804
  if (options.defaults)
30183
32805
  object.common = null;
30184
32806
  if (message.common != null && message.hasOwnProperty("common"))
30185
32807
  object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options);
32808
+ var keys2;
32809
+ if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) {
32810
+ object.renamedServices = {};
32811
+ for (var j = 0; j < keys2.length; ++j)
32812
+ object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]];
32813
+ }
32814
+ if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) {
32815
+ object.renamedResources = {};
32816
+ for (var j = 0; j < keys2.length; ++j)
32817
+ object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]];
32818
+ }
32819
+ if (message.ignoredResources && message.ignoredResources.length) {
32820
+ object.ignoredResources = [];
32821
+ for (var j = 0; j < message.ignoredResources.length; ++j)
32822
+ object.ignoredResources[j] = message.ignoredResources[j];
32823
+ }
32824
+ if (message.forcedNamespaceAliases && message.forcedNamespaceAliases.length) {
32825
+ object.forcedNamespaceAliases = [];
32826
+ for (var j = 0; j < message.forcedNamespaceAliases.length; ++j)
32827
+ object.forcedNamespaceAliases[j] = message.forcedNamespaceAliases[j];
32828
+ }
32829
+ if (message.handwrittenSignatures && message.handwrittenSignatures.length) {
32830
+ object.handwrittenSignatures = [];
32831
+ for (var j = 0; j < message.handwrittenSignatures.length; ++j)
32832
+ object.handwrittenSignatures[j] = message.handwrittenSignatures[j];
32833
+ }
30186
32834
  return object;
30187
32835
  };
30188
32836
 
@@ -30639,6 +33287,7 @@
30639
33287
  * @interface IMethodSettings
30640
33288
  * @property {string|null} [selector] MethodSettings selector
30641
33289
  * @property {google.api.MethodSettings.ILongRunning|null} [longRunning] MethodSettings longRunning
33290
+ * @property {Array.<string>|null} [autoPopulatedFields] MethodSettings autoPopulatedFields
30642
33291
  */
30643
33292
 
30644
33293
  /**
@@ -30650,6 +33299,7 @@
30650
33299
  * @param {google.api.IMethodSettings=} [properties] Properties to set
30651
33300
  */
30652
33301
  function MethodSettings(properties) {
33302
+ this.autoPopulatedFields = [];
30653
33303
  if (properties)
30654
33304
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
30655
33305
  if (properties[keys[i]] != null)
@@ -30672,6 +33322,14 @@
30672
33322
  */
30673
33323
  MethodSettings.prototype.longRunning = null;
30674
33324
 
33325
+ /**
33326
+ * MethodSettings autoPopulatedFields.
33327
+ * @member {Array.<string>} autoPopulatedFields
33328
+ * @memberof google.api.MethodSettings
33329
+ * @instance
33330
+ */
33331
+ MethodSettings.prototype.autoPopulatedFields = $util.emptyArray;
33332
+
30675
33333
  /**
30676
33334
  * Creates a new MethodSettings instance using the specified properties.
30677
33335
  * @function create
@@ -30700,6 +33358,9 @@
30700
33358
  writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector);
30701
33359
  if (message.longRunning != null && Object.hasOwnProperty.call(message, "longRunning"))
30702
33360
  $root.google.api.MethodSettings.LongRunning.encode(message.longRunning, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
33361
+ if (message.autoPopulatedFields != null && message.autoPopulatedFields.length)
33362
+ for (var i = 0; i < message.autoPopulatedFields.length; ++i)
33363
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.autoPopulatedFields[i]);
30703
33364
  return writer;
30704
33365
  };
30705
33366
 
@@ -30742,6 +33403,12 @@
30742
33403
  message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32());
30743
33404
  break;
30744
33405
  }
33406
+ case 3: {
33407
+ if (!(message.autoPopulatedFields && message.autoPopulatedFields.length))
33408
+ message.autoPopulatedFields = [];
33409
+ message.autoPopulatedFields.push(reader.string());
33410
+ break;
33411
+ }
30745
33412
  default:
30746
33413
  reader.skipType(tag & 7);
30747
33414
  break;
@@ -30785,6 +33452,13 @@
30785
33452
  if (error)
30786
33453
  return "longRunning." + error;
30787
33454
  }
33455
+ if (message.autoPopulatedFields != null && message.hasOwnProperty("autoPopulatedFields")) {
33456
+ if (!Array.isArray(message.autoPopulatedFields))
33457
+ return "autoPopulatedFields: array expected";
33458
+ for (var i = 0; i < message.autoPopulatedFields.length; ++i)
33459
+ if (!$util.isString(message.autoPopulatedFields[i]))
33460
+ return "autoPopulatedFields: string[] expected";
33461
+ }
30788
33462
  return null;
30789
33463
  };
30790
33464
 
@@ -30807,6 +33481,13 @@
30807
33481
  throw TypeError(".google.api.MethodSettings.longRunning: object expected");
30808
33482
  message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning);
30809
33483
  }
33484
+ if (object.autoPopulatedFields) {
33485
+ if (!Array.isArray(object.autoPopulatedFields))
33486
+ throw TypeError(".google.api.MethodSettings.autoPopulatedFields: array expected");
33487
+ message.autoPopulatedFields = [];
33488
+ for (var i = 0; i < object.autoPopulatedFields.length; ++i)
33489
+ message.autoPopulatedFields[i] = String(object.autoPopulatedFields[i]);
33490
+ }
30810
33491
  return message;
30811
33492
  };
30812
33493
 
@@ -30823,6 +33504,8 @@
30823
33504
  if (!options)
30824
33505
  options = {};
30825
33506
  var object = {};
33507
+ if (options.arrays || options.defaults)
33508
+ object.autoPopulatedFields = [];
30826
33509
  if (options.defaults) {
30827
33510
  object.selector = "";
30828
33511
  object.longRunning = null;
@@ -30831,6 +33514,11 @@
30831
33514
  object.selector = message.selector;
30832
33515
  if (message.longRunning != null && message.hasOwnProperty("longRunning"))
30833
33516
  object.longRunning = $root.google.api.MethodSettings.LongRunning.toObject(message.longRunning, options);
33517
+ if (message.autoPopulatedFields && message.autoPopulatedFields.length) {
33518
+ object.autoPopulatedFields = [];
33519
+ for (var j = 0; j < message.autoPopulatedFields.length; ++j)
33520
+ object.autoPopulatedFields[j] = message.autoPopulatedFields[j];
33521
+ }
30834
33522
  return object;
30835
33523
  };
30836
33524
 
@@ -31160,6 +33848,9 @@
31160
33848
  * @property {number} ADS=2 ADS value
31161
33849
  * @property {number} PHOTOS=3 PHOTOS value
31162
33850
  * @property {number} STREET_VIEW=4 STREET_VIEW value
33851
+ * @property {number} SHOPPING=5 SHOPPING value
33852
+ * @property {number} GEO=6 GEO value
33853
+ * @property {number} GENERATIVE_AI=7 GENERATIVE_AI value
31163
33854
  */
31164
33855
  api.ClientLibraryOrganization = (function() {
31165
33856
  var valuesById = {}, values = Object.create(valuesById);
@@ -31168,6 +33859,9 @@
31168
33859
  values[valuesById[2] = "ADS"] = 2;
31169
33860
  values[valuesById[3] = "PHOTOS"] = 3;
31170
33861
  values[valuesById[4] = "STREET_VIEW"] = 4;
33862
+ values[valuesById[5] = "SHOPPING"] = 5;
33863
+ values[valuesById[6] = "GEO"] = 6;
33864
+ values[valuesById[7] = "GENERATIVE_AI"] = 7;
31171
33865
  return values;
31172
33866
  })();
31173
33867