// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: v2ray.com/core/transport/internet/tls/config.proto

package com.v2ray.core.transport.internet.tls;

public interface ConfigOrBuilder extends
    // @@protoc_insertion_point(interface_extends:v2ray.core.transport.internet.tls.Config)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <pre>
   * Whether or not to allow self-signed certificates.
   * </pre>
   *
   * <code>bool allow_insecure = 1;</code>
   */
  boolean getAllowInsecure();

  /**
   * <pre>
   * Whether or not to allow insecure cipher suites.
   * </pre>
   *
   * <code>bool allow_insecure_ciphers = 5;</code>
   */
  boolean getAllowInsecureCiphers();

  /**
   * <pre>
   * List of certificates to be served on server.
   * </pre>
   *
   * <code>repeated .v2ray.core.transport.internet.tls.Certificate certificate = 2;</code>
   */
  java.util.List<Certificate>
      getCertificateList();
  /**
   * <pre>
   * List of certificates to be served on server.
   * </pre>
   *
   * <code>repeated .v2ray.core.transport.internet.tls.Certificate certificate = 2;</code>
   */
  Certificate getCertificate(int index);
  /**
   * <pre>
   * List of certificates to be served on server.
   * </pre>
   *
   * <code>repeated .v2ray.core.transport.internet.tls.Certificate certificate = 2;</code>
   */
  int getCertificateCount();
  /**
   * <pre>
   * List of certificates to be served on server.
   * </pre>
   *
   * <code>repeated .v2ray.core.transport.internet.tls.Certificate certificate = 2;</code>
   */
  java.util.List<? extends com.v2ray.core.transport.internet.tls.CertificateOrBuilder> 
      getCertificateOrBuilderList();
  /**
   * <pre>
   * List of certificates to be served on server.
   * </pre>
   *
   * <code>repeated .v2ray.core.transport.internet.tls.Certificate certificate = 2;</code>
   */
  com.v2ray.core.transport.internet.tls.CertificateOrBuilder getCertificateOrBuilder(
          int index);

  /**
   * <pre>
   * Override server name.
   * </pre>
   *
   * <code>string server_name = 3;</code>
   */
  String getServerName();
  /**
   * <pre>
   * Override server name.
   * </pre>
   *
   * <code>string server_name = 3;</code>
   */
  com.google.protobuf.ByteString
      getServerNameBytes();

  /**
   * <pre>
   * Lists of string as ALPN values.
   * </pre>
   *
   * <code>repeated string next_protocol = 4;</code>
   */
  java.util.List<String>
      getNextProtocolList();
  /**
   * <pre>
   * Lists of string as ALPN values.
   * </pre>
   *
   * <code>repeated string next_protocol = 4;</code>
   */
  int getNextProtocolCount();
  /**
   * <pre>
   * Lists of string as ALPN values.
   * </pre>
   *
   * <code>repeated string next_protocol = 4;</code>
   */
  String getNextProtocol(int index);
  /**
   * <pre>
   * Lists of string as ALPN values.
   * </pre>
   *
   * <code>repeated string next_protocol = 4;</code>
   */
  com.google.protobuf.ByteString
      getNextProtocolBytes(int index);
}
