// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/cloud/webrisk/v1beta1/webrisk.proto

package com.google.webrisk.v1beta1;

public interface ComputeThreatListDiffResponseOrBuilder
    extends
    // @@protoc_insertion_point(interface_extends:google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse)
    com.google.protobuf.MessageOrBuilder {

  /**
   *
   *
   * <pre>
   * The type of response. This may indicate that an action is required by the
   * client when the response is received.
   * </pre>
   *
   * <code>
   * .google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.ResponseType response_type = 4;
   * </code>
   */
  int getResponseTypeValue();
  /**
   *
   *
   * <pre>
   * The type of response. This may indicate that an action is required by the
   * client when the response is received.
   * </pre>
   *
   * <code>
   * .google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.ResponseType response_type = 4;
   * </code>
   */
  com.google.webrisk.v1beta1.ComputeThreatListDiffResponse.ResponseType getResponseType();

  /**
   *
   *
   * <pre>
   * A set of entries to add to a local threat type's list.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ThreatEntryAdditions additions = 5;</code>
   */
  boolean hasAdditions();
  /**
   *
   *
   * <pre>
   * A set of entries to add to a local threat type's list.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ThreatEntryAdditions additions = 5;</code>
   */
  com.google.webrisk.v1beta1.ThreatEntryAdditions getAdditions();
  /**
   *
   *
   * <pre>
   * A set of entries to add to a local threat type's list.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ThreatEntryAdditions additions = 5;</code>
   */
  com.google.webrisk.v1beta1.ThreatEntryAdditionsOrBuilder getAdditionsOrBuilder();

  /**
   *
   *
   * <pre>
   * A set of entries to remove from a local threat type's list.
   * This field may be empty.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ThreatEntryRemovals removals = 6;</code>
   */
  boolean hasRemovals();
  /**
   *
   *
   * <pre>
   * A set of entries to remove from a local threat type's list.
   * This field may be empty.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ThreatEntryRemovals removals = 6;</code>
   */
  com.google.webrisk.v1beta1.ThreatEntryRemovals getRemovals();
  /**
   *
   *
   * <pre>
   * A set of entries to remove from a local threat type's list.
   * This field may be empty.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ThreatEntryRemovals removals = 6;</code>
   */
  com.google.webrisk.v1beta1.ThreatEntryRemovalsOrBuilder getRemovalsOrBuilder();

  /**
   *
   *
   * <pre>
   * The new opaque client version token.
   * </pre>
   *
   * <code>bytes new_version_token = 7;</code>
   */
  com.google.protobuf.ByteString getNewVersionToken();

  /**
   *
   *
   * <pre>
   * The expected SHA256 hash of the client state; that is, of the sorted list
   * of all hashes present in the database after applying the provided diff.
   * If the client state doesn't match the expected state, the client must
   * disregard this diff and retry later.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum checksum = 8;</code>
   */
  boolean hasChecksum();
  /**
   *
   *
   * <pre>
   * The expected SHA256 hash of the client state; that is, of the sorted list
   * of all hashes present in the database after applying the provided diff.
   * If the client state doesn't match the expected state, the client must
   * disregard this diff and retry later.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum checksum = 8;</code>
   */
  com.google.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum getChecksum();
  /**
   *
   *
   * <pre>
   * The expected SHA256 hash of the client state; that is, of the sorted list
   * of all hashes present in the database after applying the provided diff.
   * If the client state doesn't match the expected state, the client must
   * disregard this diff and retry later.
   * </pre>
   *
   * <code>.google.cloud.webrisk.v1beta1.ComputeThreatListDiffResponse.Checksum checksum = 8;</code>
   */
  com.google.webrisk.v1beta1.ComputeThreatListDiffResponse.ChecksumOrBuilder getChecksumOrBuilder();

  /**
   *
   *
   * <pre>
   * The soonest the client should wait before issuing any diff
   * request. Querying sooner is unlikely to produce a meaningful diff.
   * Waiting longer is acceptable considering the use case.
   * If this field is not set clients may update as soon as they want.
   * </pre>
   *
   * <code>.google.protobuf.Timestamp recommended_next_diff = 2;</code>
   */
  boolean hasRecommendedNextDiff();
  /**
   *
   *
   * <pre>
   * The soonest the client should wait before issuing any diff
   * request. Querying sooner is unlikely to produce a meaningful diff.
   * Waiting longer is acceptable considering the use case.
   * If this field is not set clients may update as soon as they want.
   * </pre>
   *
   * <code>.google.protobuf.Timestamp recommended_next_diff = 2;</code>
   */
  com.google.protobuf.Timestamp getRecommendedNextDiff();
  /**
   *
   *
   * <pre>
   * The soonest the client should wait before issuing any diff
   * request. Querying sooner is unlikely to produce a meaningful diff.
   * Waiting longer is acceptable considering the use case.
   * If this field is not set clients may update as soon as they want.
   * </pre>
   *
   * <code>.google.protobuf.Timestamp recommended_next_diff = 2;</code>
   */
  com.google.protobuf.TimestampOrBuilder getRecommendedNextDiffOrBuilder();
}
