// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: wso2/discovery/config/enforcer/analytics.proto

package org.wso2.choreo.connect.discovery.config.enforcer;

public interface AnalyticsOrBuilder extends
    // @@protoc_insertion_point(interface_extends:wso2.discovery.config.enforcer.Analytics)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <code>bool enabled = 1;</code>
   * @return The enabled.
   */
  boolean getEnabled();

  /**
   * <pre>
   * Analytics Publisher Configurations
   * </pre>
   *
   * <code>map&lt;string, string&gt; configProperties = 2;</code>
   */
  int getConfigPropertiesCount();
  /**
   * <pre>
   * Analytics Publisher Configurations
   * </pre>
   *
   * <code>map&lt;string, string&gt; configProperties = 2;</code>
   */
  boolean containsConfigProperties(
      java.lang.String key);
  /**
   * Use {@link #getConfigPropertiesMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.String, java.lang.String>
  getConfigProperties();
  /**
   * <pre>
   * Analytics Publisher Configurations
   * </pre>
   *
   * <code>map&lt;string, string&gt; configProperties = 2;</code>
   */
  java.util.Map<java.lang.String, java.lang.String>
  getConfigPropertiesMap();
  /**
   * <pre>
   * Analytics Publisher Configurations
   * </pre>
   *
   * <code>map&lt;string, string&gt; configProperties = 2;</code>
   */

  java.lang.String getConfigPropertiesOrDefault(
      java.lang.String key,
      java.lang.String defaultValue);
  /**
   * <pre>
   * Analytics Publisher Configurations
   * </pre>
   *
   * <code>map&lt;string, string&gt; configProperties = 2;</code>
   */

  java.lang.String getConfigPropertiesOrThrow(
      java.lang.String key);

  /**
   * <pre>
   * Receiver grpc Service Configuration
   * </pre>
   *
   * <code>.wso2.discovery.config.enforcer.Service service = 3;</code>
   * @return Whether the service field is set.
   */
  boolean hasService();
  /**
   * <pre>
   * Receiver grpc Service Configuration
   * </pre>
   *
   * <code>.wso2.discovery.config.enforcer.Service service = 3;</code>
   * @return The service.
   */
  org.wso2.choreo.connect.discovery.config.enforcer.Service getService();
  /**
   * <pre>
   * Receiver grpc Service Configuration
   * </pre>
   *
   * <code>.wso2.discovery.config.enforcer.Service service = 3;</code>
   */
  org.wso2.choreo.connect.discovery.config.enforcer.ServiceOrBuilder getServiceOrBuilder();

  /**
   * <pre>
   * Analytics type
   * </pre>
   *
   * <code>string type = 4;</code>
   * @return The type.
   */
  java.lang.String getType();
  /**
   * <pre>
   * Analytics type
   * </pre>
   *
   * <code>string type = 4;</code>
   * @return The bytes for type.
   */
  com.google.protobuf.ByteString
      getTypeBytes();
}
