// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: keyapis/kms/v1/keyapis_kms_jwt_v1.proto

package ru.keyapis.kms.v1;

public final class KeyapisKmsV1Proto {
  private KeyapisKmsV1Proto() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public interface PostKmsJwtCreateJweRequestOrBuilder extends
      // @@protoc_insertion_point(interface_extends:keyapis.kms.v1.PostKmsJwtCreateJweRequest)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return Whether the data field is set.
     */
    boolean hasData();
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The data.
     */
    ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData getData();

    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The publicKey.
     */
    java.lang.String getPublicKey();
    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The bytes for publicKey.
     */
    com.google.protobuf.ByteString
        getPublicKeyBytes();
  }
  /**
   * <pre>
   * Запрос на создание nested JWT токена
   * </pre>
   *
   * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweRequest}
   */
  public  static final class PostKmsJwtCreateJweRequest extends
      com.google.protobuf.GeneratedMessageLite<
          PostKmsJwtCreateJweRequest, PostKmsJwtCreateJweRequest.Builder> implements
      // @@protoc_insertion_point(message_implements:keyapis.kms.v1.PostKmsJwtCreateJweRequest)
      PostKmsJwtCreateJweRequestOrBuilder {
    private PostKmsJwtCreateJweRequest() {
      publicKey_ = "";
    }
    public interface PayloadDataOrBuilder extends
        // @@protoc_insertion_point(interface_extends:keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData)
        com.google.protobuf.MessageLiteOrBuilder {

      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      int getValuesCount();
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      boolean containsValues(
          java.lang.String key);
      /**
       * Use {@link #getValuesMap()} instead.
       */
      @java.lang.Deprecated
      java.util.Map<java.lang.String, java.lang.String>
      getValues();
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      java.util.Map<java.lang.String, java.lang.String>
      getValuesMap();
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */

      /* nullable */
java.lang.String getValuesOrDefault(
          java.lang.String key,
          /* nullable */
java.lang.String defaultValue);
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */

      java.lang.String getValuesOrThrow(
          java.lang.String key);
    }
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData}
     */
    public  static final class PayloadData extends
        com.google.protobuf.GeneratedMessageLite<
            PayloadData, PayloadData.Builder> implements
        // @@protoc_insertion_point(message_implements:keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData)
        PayloadDataOrBuilder {
      private PayloadData() {
      }
      public static final int VALUES_FIELD_NUMBER = 1;
      private static final class ValuesDefaultEntryHolder {
        static final com.google.protobuf.MapEntryLite<
            java.lang.String, java.lang.String> defaultEntry =
                com.google.protobuf.MapEntryLite
                .<java.lang.String, java.lang.String>newDefaultInstance(
                    com.google.protobuf.WireFormat.FieldType.STRING,
                    "",
                    com.google.protobuf.WireFormat.FieldType.STRING,
                    "");
      }
      private com.google.protobuf.MapFieldLite<
          java.lang.String, java.lang.String> values_ =
              com.google.protobuf.MapFieldLite.emptyMapField();
      private com.google.protobuf.MapFieldLite<java.lang.String, java.lang.String>
      internalGetValues() {
        return values_;
      }
      private com.google.protobuf.MapFieldLite<java.lang.String, java.lang.String>
      internalGetMutableValues() {
        if (!values_.isMutable()) {
          values_ = values_.mutableCopy();
        }
        return values_;
      }
      @java.lang.Override

      public int getValuesCount() {
        return internalGetValues().size();
      }
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      @java.lang.Override

      public boolean containsValues(
          java.lang.String key) {
        java.lang.Class<?> keyClass = key.getClass();
        return internalGetValues().containsKey(key);
      }
      /**
       * Use {@link #getValuesMap()} instead.
       */
      @java.lang.Override
      @java.lang.Deprecated
      public java.util.Map<java.lang.String, java.lang.String> getValues() {
        return getValuesMap();
      }
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      @java.lang.Override

      public java.util.Map<java.lang.String, java.lang.String> getValuesMap() {
        return java.util.Collections.unmodifiableMap(
            internalGetValues());
      }
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      @java.lang.Override

      public /* nullable */
java.lang.String getValuesOrDefault(
          java.lang.String key,
          /* nullable */
java.lang.String defaultValue) {
        java.lang.Class<?> keyClass = key.getClass();
        java.util.Map<java.lang.String, java.lang.String> map =
            internalGetValues();
        return map.containsKey(key) ? map.get(key) : defaultValue;
      }
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      @java.lang.Override

      public java.lang.String getValuesOrThrow(
          java.lang.String key) {
        java.lang.Class<?> keyClass = key.getClass();
        java.util.Map<java.lang.String, java.lang.String> map =
            internalGetValues();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return map.get(key);
      }
      /**
       * <pre>
       * Словарь значений.
       * Ключи и значения являются строками.
       * # Диапазон: 1..128
       * </pre>
       *
       * <code>map&lt;string, string&gt; values = 1;</code>
       */
      private java.util.Map<java.lang.String, java.lang.String>
      getMutableValuesMap() {
        return internalGetMutableValues();
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input);
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static Builder newBuilder() {
        return (Builder) DEFAULT_INSTANCE.createBuilder();
      }
      public static Builder newBuilder(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData prototype) {
        return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
      }

      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageLite.Builder<
            ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData, Builder> implements
          // @@protoc_insertion_point(builder_implements:keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData)
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadDataOrBuilder {
        // Construct using ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData.newBuilder()
        private Builder() {
          super(DEFAULT_INSTANCE);
        }


        @java.lang.Override

        public int getValuesCount() {
          return instance.getValuesMap().size();
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */
        @java.lang.Override

        public boolean containsValues(
            java.lang.String key) {
          java.lang.Class<?> keyClass = key.getClass();
          return instance.getValuesMap().containsKey(key);
        }

        public Builder clearValues() {
          copyOnWrite();
          instance.getMutableValuesMap().clear();
          return this;
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */

        public Builder removeValues(
            java.lang.String key) {
          java.lang.Class<?> keyClass = key.getClass();
          copyOnWrite();
          instance.getMutableValuesMap().remove(key);
          return this;
        }
        /**
         * Use {@link #getValuesMap()} instead.
         */
        @java.lang.Override
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, java.lang.String> getValues() {
          return getValuesMap();
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */
        @java.lang.Override
        public java.util.Map<java.lang.String, java.lang.String> getValuesMap() {
          return java.util.Collections.unmodifiableMap(
              instance.getValuesMap());
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */
        @java.lang.Override

        public /* nullable */
java.lang.String getValuesOrDefault(
            java.lang.String key,
            /* nullable */
java.lang.String defaultValue) {
          java.lang.Class<?> keyClass = key.getClass();
          java.util.Map<java.lang.String, java.lang.String> map =
              instance.getValuesMap();
          return map.containsKey(key) ? map.get(key) : defaultValue;
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */
        @java.lang.Override

        public java.lang.String getValuesOrThrow(
            java.lang.String key) {
          java.lang.Class<?> keyClass = key.getClass();
          java.util.Map<java.lang.String, java.lang.String> map =
              instance.getValuesMap();
          if (!map.containsKey(key)) {
            throw new java.lang.IllegalArgumentException();
          }
          return map.get(key);
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */
        public Builder putValues(
            java.lang.String key,
            java.lang.String value) {
          java.lang.Class<?> keyClass = key.getClass();
          java.lang.Class<?> valueClass = value.getClass();
          copyOnWrite();
          instance.getMutableValuesMap().put(key, value);
          return this;
        }
        /**
         * <pre>
         * Словарь значений.
         * Ключи и значения являются строками.
         * # Диапазон: 1..128
         * </pre>
         *
         * <code>map&lt;string, string&gt; values = 1;</code>
         */
        public Builder putAllValues(
            java.util.Map<java.lang.String, java.lang.String> values) {
          copyOnWrite();
          instance.getMutableValuesMap().putAll(values);
          return this;
        }

        // @@protoc_insertion_point(builder_scope:keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData)
      }
      @java.lang.Override
      @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
      protected final java.lang.Object dynamicMethod(
          com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
          java.lang.Object arg0, java.lang.Object arg1) {
        switch (method) {
          case NEW_MUTABLE_INSTANCE: {
            return new ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData();
          }
          case NEW_BUILDER: {
            return new Builder();
          }
          case BUILD_MESSAGE_INFO: {
              java.lang.Object[] objects = new java.lang.Object[] {
                "values_",
                ValuesDefaultEntryHolder.defaultEntry,
              };
              java.lang.String info =
                  "\u0000\u0001\u0000\u0000\u0001\u0001\u0001\u0001\u0000\u0000\u00012";
              return newMessageInfo(DEFAULT_INSTANCE, info, objects);
          }
          // fall through
          case GET_DEFAULT_INSTANCE: {
            return DEFAULT_INSTANCE;
          }
          case GET_PARSER: {
            com.google.protobuf.Parser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData> parser = PARSER;
            if (parser == null) {
              synchronized (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData.class) {
                parser = PARSER;
                if (parser == null) {
                  parser =
                      new DefaultInstanceBasedParser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData>(
                          DEFAULT_INSTANCE);
                  PARSER = parser;
                }
              }
            }
            return parser;
        }
        case GET_MEMOIZED_IS_INITIALIZED: {
          return (byte) 1;
        }
        case SET_MEMOIZED_IS_INITIALIZED: {
          return null;
        }
        }
        throw new UnsupportedOperationException();
      }


      // @@protoc_insertion_point(class_scope:keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData)
      private static final ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData DEFAULT_INSTANCE;
      static {
        PayloadData defaultInstance = new PayloadData();
        // New instances are implicitly immutable so no need to make
        // immutable.
        DEFAULT_INSTANCE = defaultInstance;
        com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
          PayloadData.class, defaultInstance);
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static volatile com.google.protobuf.Parser<PayloadData> PARSER;

      public static com.google.protobuf.Parser<PayloadData> parser() {
        return DEFAULT_INSTANCE.getParserForType();
      }
    }

    public static final int DATA_FIELD_NUMBER = 1;
    private ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData data_;
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    @java.lang.Override
    public boolean hasData() {
      return data_ != null;
    }
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    @java.lang.Override
    public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData getData() {
      return data_ == null ? ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData.getDefaultInstance() : data_;
    }
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    private void setData(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData value) {
      value.getClass();
  data_ = value;

      }
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeData(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData value) {
      value.getClass();
  if (data_ != null &&
          data_ != ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData.getDefaultInstance()) {
        data_ =
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData.newBuilder(data_).mergeFrom(value).buildPartial();
      } else {
        data_ = value;
      }

    }
    /**
     * <pre>
     * Claims (данные включаемые в тело токена)
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    private void clearData() {  data_ = null;

    }

    public static final int PUBLIC_KEY_FIELD_NUMBER = 2;
    private java.lang.String publicKey_;
    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The publicKey.
     */
    @java.lang.Override
    public java.lang.String getPublicKey() {
      return publicKey_;
    }
    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The bytes for publicKey.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getPublicKeyBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(publicKey_);
    }
    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The publicKey to set.
     */
    private void setPublicKey(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      publicKey_ = value;
    }
    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    private void clearPublicKey() {

      publicKey_ = getDefaultInstance().getPublicKey();
    }
    /**
     * <pre>
     * Публичный ключ для шифрования
     * </pre>
     *
     * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The bytes for publicKey to set.
     */
    private void setPublicKeyBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      publicKey_ = value.toStringUtf8();

    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * <pre>
     * Запрос на создание nested JWT токена
     * </pre>
     *
     * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweRequest}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest, Builder> implements
        // @@protoc_insertion_point(builder_implements:keyapis.kms.v1.PostKmsJwtCreateJweRequest)
        ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequestOrBuilder {
      // Construct using ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      @java.lang.Override
      public boolean hasData() {
        return instance.hasData();
      }
      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      @java.lang.Override
      public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData getData() {
        return instance.getData();
      }
      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      public Builder setData(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData value) {
        copyOnWrite();
        instance.setData(value);
        return this;
        }
      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      public Builder setData(
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData.Builder builderForValue) {
        copyOnWrite();
        instance.setData(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      public Builder mergeData(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.PayloadData value) {
        copyOnWrite();
        instance.mergeData(value);
        return this;
      }
      /**
       * <pre>
       * Claims (данные включаемые в тело токена)
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweRequest.PayloadData data = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       */
      public Builder clearData() {  copyOnWrite();
        instance.clearData();
        return this;
      }

      /**
       * <pre>
       * Публичный ключ для шифрования
       * </pre>
       *
       * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The publicKey.
       */
      @java.lang.Override
      public java.lang.String getPublicKey() {
        return instance.getPublicKey();
      }
      /**
       * <pre>
       * Публичный ключ для шифрования
       * </pre>
       *
       * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The bytes for publicKey.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getPublicKeyBytes() {
        return instance.getPublicKeyBytes();
      }
      /**
       * <pre>
       * Публичный ключ для шифрования
       * </pre>
       *
       * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The publicKey to set.
       * @return This builder for chaining.
       */
      public Builder setPublicKey(
          java.lang.String value) {
        copyOnWrite();
        instance.setPublicKey(value);
        return this;
      }
      /**
       * <pre>
       * Публичный ключ для шифрования
       * </pre>
       *
       * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return This builder for chaining.
       */
      public Builder clearPublicKey() {
        copyOnWrite();
        instance.clearPublicKey();
        return this;
      }
      /**
       * <pre>
       * Публичный ключ для шифрования
       * </pre>
       *
       * <code>string public_key = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The bytes for publicKey to set.
       * @return This builder for chaining.
       */
      public Builder setPublicKeyBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setPublicKeyBytes(value);
        return this;
      }

      // @@protoc_insertion_point(builder_scope:keyapis.kms.v1.PostKmsJwtCreateJweRequest)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "data_",
              "publicKey_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\t\u0002\u0208" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest> parser = PARSER;
          if (parser == null) {
            synchronized (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:keyapis.kms.v1.PostKmsJwtCreateJweRequest)
    private static final ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest DEFAULT_INSTANCE;
    static {
      PostKmsJwtCreateJweRequest defaultInstance = new PostKmsJwtCreateJweRequest();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        PostKmsJwtCreateJweRequest.class, defaultInstance);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweRequest getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<PostKmsJwtCreateJweRequest> PARSER;

    public static com.google.protobuf.Parser<PostKmsJwtCreateJweRequest> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface PostKmsJwtCreateJweResponseOrBuilder extends
      // @@protoc_insertion_point(interface_extends:keyapis.kms.v1.PostKmsJwtCreateJweResponse)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @return Whether the data field is set.
     */
    boolean hasData();
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @return The data.
     */
    java.lang.String getData();
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @return The bytes for data.
     */
    com.google.protobuf.ByteString
        getDataBytes();

    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     * @return Whether the error field is set.
     */
    boolean hasError();
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     * @return The error.
     */
    ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error getError();

    public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.TypeCase getTypeCase();
  }
  /**
   * <pre>
   * Ответ на запрос на формирование токена
   * </pre>
   *
   * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweResponse}
   */
  public  static final class PostKmsJwtCreateJweResponse extends
      com.google.protobuf.GeneratedMessageLite<
          PostKmsJwtCreateJweResponse, PostKmsJwtCreateJweResponse.Builder> implements
      // @@protoc_insertion_point(message_implements:keyapis.kms.v1.PostKmsJwtCreateJweResponse)
      PostKmsJwtCreateJweResponseOrBuilder {
    private PostKmsJwtCreateJweResponse() {
    }
    public interface ErrorOrBuilder extends
        // @@protoc_insertion_point(interface_extends:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error)
        com.google.protobuf.MessageLiteOrBuilder {

      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       * @return Whether the validation field is set.
       */
      boolean hasValidation();
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       * @return The validation.
       */
      ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError getValidation();

      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       * @return Whether the privateKeyNotFound field is set.
       */
      boolean hasPrivateKeyNotFound();
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       * @return The privateKeyNotFound.
       */
      ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound getPrivateKeyNotFound();

      public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.ReasonCase getReasonCase();
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error}
     */
    public  static final class Error extends
        com.google.protobuf.GeneratedMessageLite<
            Error, Error.Builder> implements
        // @@protoc_insertion_point(message_implements:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error)
        ErrorOrBuilder {
      private Error() {
      }
      public interface PrivateKeyNotFoundOrBuilder extends
          // @@protoc_insertion_point(interface_extends:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound)
          com.google.protobuf.MessageLiteOrBuilder {
      }
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound}
       */
      public  static final class PrivateKeyNotFound extends
          com.google.protobuf.GeneratedMessageLite<
              PrivateKeyNotFound, PrivateKeyNotFound.Builder> implements
          // @@protoc_insertion_point(message_implements:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound)
          PrivateKeyNotFoundOrBuilder {
        private PrivateKeyNotFound() {
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            java.nio.ByteBuffer data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            java.nio.ByteBuffer data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            com.google.protobuf.ByteString data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            com.google.protobuf.ByteString data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(byte[] data)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            byte[] data,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, data, extensionRegistry);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(java.io.InputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseDelimitedFrom(java.io.InputStream input)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input);
        }

        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseDelimitedFrom(
            java.io.InputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            com.google.protobuf.CodedInputStream input)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input);
        }
        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound parseFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          return com.google.protobuf.GeneratedMessageLite.parseFrom(
              DEFAULT_INSTANCE, input, extensionRegistry);
        }

        public static Builder newBuilder() {
          return (Builder) DEFAULT_INSTANCE.createBuilder();
        }
        public static Builder newBuilder(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound prototype) {
          return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
        }

        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound}
         */
        public static final class Builder extends
            com.google.protobuf.GeneratedMessageLite.Builder<
              ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound, Builder> implements
            // @@protoc_insertion_point(builder_implements:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound)
            ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFoundOrBuilder {
          // Construct using ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.newBuilder()
          private Builder() {
            super(DEFAULT_INSTANCE);
          }


          // @@protoc_insertion_point(builder_scope:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound)
        }
        @java.lang.Override
        @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
        protected final java.lang.Object dynamicMethod(
            com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
            java.lang.Object arg0, java.lang.Object arg1) {
          switch (method) {
            case NEW_MUTABLE_INSTANCE: {
              return new ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound();
            }
            case NEW_BUILDER: {
              return new Builder();
            }
            case BUILD_MESSAGE_INFO: {
                java.lang.Object[] objects = null;java.lang.String info =
                    "\u0000\u0000";
                return newMessageInfo(DEFAULT_INSTANCE, info, objects);
            }
            // fall through
            case GET_DEFAULT_INSTANCE: {
              return DEFAULT_INSTANCE;
            }
            case GET_PARSER: {
              com.google.protobuf.Parser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound> parser = PARSER;
              if (parser == null) {
                synchronized (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.class) {
                  parser = PARSER;
                  if (parser == null) {
                    parser =
                        new DefaultInstanceBasedParser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound>(
                            DEFAULT_INSTANCE);
                    PARSER = parser;
                  }
                }
              }
              return parser;
          }
          case GET_MEMOIZED_IS_INITIALIZED: {
            return (byte) 1;
          }
          case SET_MEMOIZED_IS_INITIALIZED: {
            return null;
          }
          }
          throw new UnsupportedOperationException();
        }


        // @@protoc_insertion_point(class_scope:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound)
        private static final ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound DEFAULT_INSTANCE;
        static {
          PrivateKeyNotFound defaultInstance = new PrivateKeyNotFound();
          // New instances are implicitly immutable so no need to make
          // immutable.
          DEFAULT_INSTANCE = defaultInstance;
          com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
            PrivateKeyNotFound.class, defaultInstance);
        }

        public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound getDefaultInstance() {
          return DEFAULT_INSTANCE;
        }

        private static volatile com.google.protobuf.Parser<PrivateKeyNotFound> PARSER;

        public static com.google.protobuf.Parser<PrivateKeyNotFound> parser() {
          return DEFAULT_INSTANCE.getParserForType();
        }
      }

      private int reasonCase_ = 0;
      private java.lang.Object reason_;
      public enum ReasonCase {
        VALIDATION(1),
        PRIVATE_KEY_NOT_FOUND(2),
        REASON_NOT_SET(0);
        private final int value;
        private ReasonCase(int value) {
          this.value = value;
        }
        /**
         * @deprecated Use {@link #forNumber(int)} instead.
         */
        @java.lang.Deprecated
        public static ReasonCase valueOf(int value) {
          return forNumber(value);
        }

        public static ReasonCase forNumber(int value) {
          switch (value) {
            case 1: return VALIDATION;
            case 2: return PRIVATE_KEY_NOT_FOUND;
            case 0: return REASON_NOT_SET;
            default: return null;
          }
        }
        public int getNumber() {
          return this.value;
        }
      };

      @java.lang.Override
      public ReasonCase
      getReasonCase() {
        return ReasonCase.forNumber(
            reasonCase_);
      }

      private void clearReason() {
        reasonCase_ = 0;
        reason_ = null;
      }

      public static final int VALIDATION_FIELD_NUMBER = 1;
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       */
      @java.lang.Override
      public boolean hasValidation() {
        return reasonCase_ == 1;
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       */
      @java.lang.Override
      public ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError getValidation() {
        if (reasonCase_ == 1) {
           return (ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError) reason_;
        }
        return ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.getDefaultInstance();
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       */
      private void setValidation(ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError value) {
        value.getClass();
  reason_ = value;
        reasonCase_ = 1;
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       */
      private void mergeValidation(ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError value) {
        value.getClass();
  if (reasonCase_ == 1 &&
            reason_ != ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.getDefaultInstance()) {
          reason_ = ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.newBuilder((ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError) reason_)
              .mergeFrom(value).buildPartial();
        } else {
          reason_ = value;
        }
        reasonCase_ = 1;
      }
      /**
       * <pre>
       * Ошибка валидации
       * </pre>
       *
       * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
       */
      private void clearValidation() {
        if (reasonCase_ == 1) {
          reasonCase_ = 0;
          reason_ = null;
        }
      }

      public static final int PRIVATE_KEY_NOT_FOUND_FIELD_NUMBER = 2;
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       */
      @java.lang.Override
      public boolean hasPrivateKeyNotFound() {
        return reasonCase_ == 2;
      }
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       */
      @java.lang.Override
      public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound getPrivateKeyNotFound() {
        if (reasonCase_ == 2) {
           return (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound) reason_;
        }
        return ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.getDefaultInstance();
      }
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       */
      private void setPrivateKeyNotFound(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound value) {
        value.getClass();
  reason_ = value;
        reasonCase_ = 2;
      }
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       */
      private void mergePrivateKeyNotFound(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound value) {
        value.getClass();
  if (reasonCase_ == 2 &&
            reason_ != ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.getDefaultInstance()) {
          reason_ = ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.newBuilder((ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound) reason_)
              .mergeFrom(value).buildPartial();
        } else {
          reason_ = value;
        }
        reasonCase_ = 2;
      }
      /**
       * <pre>
       * Отсутствует ключ для подписания
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
       */
      private void clearPrivateKeyNotFound() {
        if (reasonCase_ == 2) {
          reasonCase_ = 0;
          reason_ = null;
        }
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, data, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input);
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input);
      }
      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageLite.parseFrom(
            DEFAULT_INSTANCE, input, extensionRegistry);
      }

      public static Builder newBuilder() {
        return (Builder) DEFAULT_INSTANCE.createBuilder();
      }
      public static Builder newBuilder(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error prototype) {
        return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
      }

      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageLite.Builder<
            ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error, Builder> implements
          // @@protoc_insertion_point(builder_implements:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error)
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.ErrorOrBuilder {
        // Construct using ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.newBuilder()
        private Builder() {
          super(DEFAULT_INSTANCE);
        }

        @java.lang.Override
        public ReasonCase
            getReasonCase() {
          return instance.getReasonCase();
        }

        public Builder clearReason() {
          copyOnWrite();
          instance.clearReason();
          return this;
        }


        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
         */
        @java.lang.Override
        public boolean hasValidation() {
          return instance.hasValidation();
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
         */
        @java.lang.Override
        public ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError getValidation() {
          return instance.getValidation();
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
         */
        public Builder setValidation(ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError value) {
          copyOnWrite();
          instance.setValidation(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
         */
        public Builder setValidation(
            ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.Builder builderForValue) {
          copyOnWrite();
          instance.setValidation(builderForValue.build());
          return this;
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
         */
        public Builder mergeValidation(ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError value) {
          copyOnWrite();
          instance.mergeValidation(value);
          return this;
        }
        /**
         * <pre>
         * Ошибка валидации
         * </pre>
         *
         * <code>.keyapis.kms.v1.ValidationError validation = 1;</code>
         */
        public Builder clearValidation() {
          copyOnWrite();
          instance.clearValidation();
          return this;
        }

        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
         */
        @java.lang.Override
        public boolean hasPrivateKeyNotFound() {
          return instance.hasPrivateKeyNotFound();
        }
        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
         */
        @java.lang.Override
        public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound getPrivateKeyNotFound() {
          return instance.getPrivateKeyNotFound();
        }
        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
         */
        public Builder setPrivateKeyNotFound(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound value) {
          copyOnWrite();
          instance.setPrivateKeyNotFound(value);
          return this;
        }
        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
         */
        public Builder setPrivateKeyNotFound(
            ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.Builder builderForValue) {
          copyOnWrite();
          instance.setPrivateKeyNotFound(builderForValue.build());
          return this;
        }
        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
         */
        public Builder mergePrivateKeyNotFound(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound value) {
          copyOnWrite();
          instance.mergePrivateKeyNotFound(value);
          return this;
        }
        /**
         * <pre>
         * Отсутствует ключ для подписания
         * </pre>
         *
         * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound private_key_not_found = 2;</code>
         */
        public Builder clearPrivateKeyNotFound() {
          copyOnWrite();
          instance.clearPrivateKeyNotFound();
          return this;
        }

        // @@protoc_insertion_point(builder_scope:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error)
      }
      @java.lang.Override
      @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
      protected final java.lang.Object dynamicMethod(
          com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
          java.lang.Object arg0, java.lang.Object arg1) {
        switch (method) {
          case NEW_MUTABLE_INSTANCE: {
            return new ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error();
          }
          case NEW_BUILDER: {
            return new Builder();
          }
          case BUILD_MESSAGE_INFO: {
              java.lang.Object[] objects = new java.lang.Object[] {
                "reason_",
                "reasonCase_",
                ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.class,
                ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.PrivateKeyNotFound.class,
              };
              java.lang.String info =
                  "\u0000\u0002\u0001\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001<\u0000\u0002<" +
                  "\u0000";
              return newMessageInfo(DEFAULT_INSTANCE, info, objects);
          }
          // fall through
          case GET_DEFAULT_INSTANCE: {
            return DEFAULT_INSTANCE;
          }
          case GET_PARSER: {
            com.google.protobuf.Parser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error> parser = PARSER;
            if (parser == null) {
              synchronized (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.class) {
                parser = PARSER;
                if (parser == null) {
                  parser =
                      new DefaultInstanceBasedParser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error>(
                          DEFAULT_INSTANCE);
                  PARSER = parser;
                }
              }
            }
            return parser;
        }
        case GET_MEMOIZED_IS_INITIALIZED: {
          return (byte) 1;
        }
        case SET_MEMOIZED_IS_INITIALIZED: {
          return null;
        }
        }
        throw new UnsupportedOperationException();
      }


      // @@protoc_insertion_point(class_scope:keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error)
      private static final ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error DEFAULT_INSTANCE;
      static {
        Error defaultInstance = new Error();
        // New instances are implicitly immutable so no need to make
        // immutable.
        DEFAULT_INSTANCE = defaultInstance;
        com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
          Error.class, defaultInstance);
      }

      public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static volatile com.google.protobuf.Parser<Error> PARSER;

      public static com.google.protobuf.Parser<Error> parser() {
        return DEFAULT_INSTANCE.getParserForType();
      }
    }

    private int typeCase_ = 0;
    private java.lang.Object type_;
    public enum TypeCase {
      DATA(1),
      ERROR(2),
      TYPE_NOT_SET(0);
      private final int value;
      private TypeCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static TypeCase valueOf(int value) {
        return forNumber(value);
      }

      public static TypeCase forNumber(int value) {
        switch (value) {
          case 1: return DATA;
          case 2: return ERROR;
          case 0: return TYPE_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    @java.lang.Override
    public TypeCase
    getTypeCase() {
      return TypeCase.forNumber(
          typeCase_);
    }

    private void clearType() {
      typeCase_ = 0;
      type_ = null;
    }

    public static final int DATA_FIELD_NUMBER = 1;
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @return Whether the data field is set.
     */
    @java.lang.Override
    public boolean hasData() {
      return typeCase_ == 1;
    }
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @return The data.
     */
    @java.lang.Override
    public java.lang.String getData() {
      java.lang.String ref = "";
      if (typeCase_ == 1) {
        ref = (java.lang.String) type_;
      }
      return ref;
    }
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @return The bytes for data.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getDataBytes() {
      java.lang.String ref = "";
      if (typeCase_ == 1) {
        ref = (java.lang.String) type_;
      }
      return com.google.protobuf.ByteString.copyFromUtf8(ref);
    }
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @param value The data to set.
     */
    private void setData(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  typeCase_ = 1;
      type_ = value;
    }
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     */
    private void clearData() {
      if (typeCase_ == 1) {
        typeCase_ = 0;
        type_ = null;
      }
    }
    /**
     * <pre>
     * Nested JWT токен
     * </pre>
     *
     * <code>string data = 1;</code>
     * @param value The bytes for data to set.
     */
    private void setDataBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      type_ = value.toStringUtf8();
      typeCase_ = 1;
    }

    public static final int ERROR_FIELD_NUMBER = 2;
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     */
    @java.lang.Override
    public boolean hasError() {
      return typeCase_ == 2;
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     */
    @java.lang.Override
    public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error getError() {
      if (typeCase_ == 2) {
         return (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error) type_;
      }
      return ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.getDefaultInstance();
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     */
    private void setError(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error value) {
      value.getClass();
  type_ = value;
      typeCase_ = 2;
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     */
    private void mergeError(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error value) {
      value.getClass();
  if (typeCase_ == 2 &&
          type_ != ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.getDefaultInstance()) {
        type_ = ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.newBuilder((ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error) type_)
            .mergeFrom(value).buildPartial();
      } else {
        type_ = value;
      }
      typeCase_ = 2;
    }
    /**
     * <pre>
     * Ошибка
     * </pre>
     *
     * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
     */
    private void clearError() {
      if (typeCase_ == 2) {
        typeCase_ = 0;
        type_ = null;
      }
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * <pre>
     * Ответ на запрос на формирование токена
     * </pre>
     *
     * Protobuf type {@code keyapis.kms.v1.PostKmsJwtCreateJweResponse}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse, Builder> implements
        // @@protoc_insertion_point(builder_implements:keyapis.kms.v1.PostKmsJwtCreateJweResponse)
        ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponseOrBuilder {
      // Construct using ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }

      @java.lang.Override
      public TypeCase
          getTypeCase() {
        return instance.getTypeCase();
      }

      public Builder clearType() {
        copyOnWrite();
        instance.clearType();
        return this;
      }


      /**
       * <pre>
       * Nested JWT токен
       * </pre>
       *
       * <code>string data = 1;</code>
       * @return Whether the data field is set.
       */
      @java.lang.Override
      public boolean hasData() {
        return instance.hasData();
      }
      /**
       * <pre>
       * Nested JWT токен
       * </pre>
       *
       * <code>string data = 1;</code>
       * @return The data.
       */
      @java.lang.Override
      public java.lang.String getData() {
        return instance.getData();
      }
      /**
       * <pre>
       * Nested JWT токен
       * </pre>
       *
       * <code>string data = 1;</code>
       * @return The bytes for data.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getDataBytes() {
        return instance.getDataBytes();
      }
      /**
       * <pre>
       * Nested JWT токен
       * </pre>
       *
       * <code>string data = 1;</code>
       * @param value The data to set.
       * @return This builder for chaining.
       */
      public Builder setData(
          java.lang.String value) {
        copyOnWrite();
        instance.setData(value);
        return this;
      }
      /**
       * <pre>
       * Nested JWT токен
       * </pre>
       *
       * <code>string data = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearData() {
        copyOnWrite();
        instance.clearData();
        return this;
      }
      /**
       * <pre>
       * Nested JWT токен
       * </pre>
       *
       * <code>string data = 1;</code>
       * @param value The bytes for data to set.
       * @return This builder for chaining.
       */
      public Builder setDataBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setDataBytes(value);
        return this;
      }

      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
       */
      @java.lang.Override
      public boolean hasError() {
        return instance.hasError();
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
       */
      @java.lang.Override
      public ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error getError() {
        return instance.getError();
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
       */
      public Builder setError(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error value) {
        copyOnWrite();
        instance.setError(value);
        return this;
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
       */
      public Builder setError(
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.Builder builderForValue) {
        copyOnWrite();
        instance.setError(builderForValue.build());
        return this;
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
       */
      public Builder mergeError(ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error value) {
        copyOnWrite();
        instance.mergeError(value);
        return this;
      }
      /**
       * <pre>
       * Ошибка
       * </pre>
       *
       * <code>.keyapis.kms.v1.PostKmsJwtCreateJweResponse.Error error = 2;</code>
       */
      public Builder clearError() {
        copyOnWrite();
        instance.clearError();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:keyapis.kms.v1.PostKmsJwtCreateJweResponse)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "type_",
              "typeCase_",
              ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.Error.class,
            };
            java.lang.String info =
                "\u0000\u0002\u0001\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u023b\u0000\u0002" +
                "<\u0000";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse> parser = PARSER;
          if (parser == null) {
            synchronized (ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:keyapis.kms.v1.PostKmsJwtCreateJweResponse)
    private static final ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse DEFAULT_INSTANCE;
    static {
      PostKmsJwtCreateJweResponse defaultInstance = new PostKmsJwtCreateJweResponse();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        PostKmsJwtCreateJweResponse.class, defaultInstance);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.PostKmsJwtCreateJweResponse getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<PostKmsJwtCreateJweResponse> PARSER;

    public static com.google.protobuf.Parser<PostKmsJwtCreateJweResponse> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface ValidationErrorOrBuilder extends
      // @@protoc_insertion_point(interface_extends:keyapis.kms.v1.ValidationError)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The path.
     */
    java.lang.String getPath();
    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The bytes for path.
     */
    com.google.protobuf.ByteString
        getPathBytes();

    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The message.
     */
    java.lang.String getMessage();
    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The bytes for message.
     */
    com.google.protobuf.ByteString
        getMessageBytes();
  }
  /**
   * <pre>
   * Ошибки валидации.
   * Эти проверки выполняются до обращения в базу данных
   * </pre>
   *
   * Protobuf type {@code keyapis.kms.v1.ValidationError}
   */
  public  static final class ValidationError extends
      com.google.protobuf.GeneratedMessageLite<
          ValidationError, ValidationError.Builder> implements
      // @@protoc_insertion_point(message_implements:keyapis.kms.v1.ValidationError)
      ValidationErrorOrBuilder {
    private ValidationError() {
      path_ = "";
      message_ = "";
    }
    public static final int PATH_FIELD_NUMBER = 1;
    private java.lang.String path_;
    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The path.
     */
    @java.lang.Override
    public java.lang.String getPath() {
      return path_;
    }
    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The bytes for path.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getPathBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(path_);
    }
    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The path to set.
     */
    private void setPath(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      path_ = value;
    }
    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    private void clearPath() {

      path_ = getDefaultInstance().getPath();
    }
    /**
     * <pre>
     * Путь к полю в формате наименования прото
     * </pre>
     *
     * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The bytes for path to set.
     */
    private void setPathBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      path_ = value.toStringUtf8();

    }

    public static final int MESSAGE_FIELD_NUMBER = 2;
    private java.lang.String message_;
    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The message.
     */
    @java.lang.Override
    public java.lang.String getMessage() {
      return message_;
    }
    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return The bytes for message.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getMessageBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(message_);
    }
    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The message to set.
     */
    private void setMessage(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      message_ = value;
    }
    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    private void clearMessage() {

      message_ = getDefaultInstance().getMessage();
    }
    /**
     * <pre>
     * Валидационное сообщение
     * </pre>
     *
     * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param value The bytes for message to set.
     */
    private void setMessageBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      message_ = value.toStringUtf8();

    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * <pre>
     * Ошибки валидации.
     * Эти проверки выполняются до обращения в базу данных
     * </pre>
     *
     * Protobuf type {@code keyapis.kms.v1.ValidationError}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError, Builder> implements
        // @@protoc_insertion_point(builder_implements:keyapis.kms.v1.ValidationError)
        ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationErrorOrBuilder {
      // Construct using ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <pre>
       * Путь к полю в формате наименования прото
       * </pre>
       *
       * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The path.
       */
      @java.lang.Override
      public java.lang.String getPath() {
        return instance.getPath();
      }
      /**
       * <pre>
       * Путь к полю в формате наименования прото
       * </pre>
       *
       * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The bytes for path.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getPathBytes() {
        return instance.getPathBytes();
      }
      /**
       * <pre>
       * Путь к полю в формате наименования прото
       * </pre>
       *
       * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The path to set.
       * @return This builder for chaining.
       */
      public Builder setPath(
          java.lang.String value) {
        copyOnWrite();
        instance.setPath(value);
        return this;
      }
      /**
       * <pre>
       * Путь к полю в формате наименования прото
       * </pre>
       *
       * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return This builder for chaining.
       */
      public Builder clearPath() {
        copyOnWrite();
        instance.clearPath();
        return this;
      }
      /**
       * <pre>
       * Путь к полю в формате наименования прото
       * </pre>
       *
       * <code>string path = 1 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The bytes for path to set.
       * @return This builder for chaining.
       */
      public Builder setPathBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setPathBytes(value);
        return this;
      }

      /**
       * <pre>
       * Валидационное сообщение
       * </pre>
       *
       * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The message.
       */
      @java.lang.Override
      public java.lang.String getMessage() {
        return instance.getMessage();
      }
      /**
       * <pre>
       * Валидационное сообщение
       * </pre>
       *
       * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return The bytes for message.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getMessageBytes() {
        return instance.getMessageBytes();
      }
      /**
       * <pre>
       * Валидационное сообщение
       * </pre>
       *
       * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The message to set.
       * @return This builder for chaining.
       */
      public Builder setMessage(
          java.lang.String value) {
        copyOnWrite();
        instance.setMessage(value);
        return this;
      }
      /**
       * <pre>
       * Валидационное сообщение
       * </pre>
       *
       * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @return This builder for chaining.
       */
      public Builder clearMessage() {
        copyOnWrite();
        instance.clearMessage();
        return this;
      }
      /**
       * <pre>
       * Валидационное сообщение
       * </pre>
       *
       * <code>string message = 2 [(.google.api.field_behavior) = REQUIRED];</code>
       * @param value The bytes for message to set.
       * @return This builder for chaining.
       */
      public Builder setMessageBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setMessageBytes(value);
        return this;
      }

      // @@protoc_insertion_point(builder_scope:keyapis.kms.v1.ValidationError)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "path_",
              "message_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0208\u0002\u0208" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError> parser = PARSER;
          if (parser == null) {
            synchronized (ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:keyapis.kms.v1.ValidationError)
    private static final ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError DEFAULT_INSTANCE;
    static {
      ValidationError defaultInstance = new ValidationError();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        ValidationError.class, defaultInstance);
    }

    public static ru.keyapis.kms.v1.KeyapisKmsV1Proto.ValidationError getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<ValidationError> PARSER;

    public static com.google.protobuf.Parser<ValidationError> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }


  static {
  }

  // @@protoc_insertion_point(outer_class_scope)
}
