/*
 * Copyright 2020 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/cloud/channel/v1/offers.proto

package com.google.cloud.channel.v1;

public interface PriceOrBuilder
    extends
    // @@protoc_insertion_point(interface_extends:google.cloud.channel.v1.Price)
    com.google.protobuf.MessageOrBuilder {

  /**
   *
   *
   * <pre>
   * Base price.
   * </pre>
   *
   * <code>.google.type.Money base_price = 1;</code>
   *
   * @return Whether the basePrice field is set.
   */
  boolean hasBasePrice();
  /**
   *
   *
   * <pre>
   * Base price.
   * </pre>
   *
   * <code>.google.type.Money base_price = 1;</code>
   *
   * @return The basePrice.
   */
  com.google.type.Money getBasePrice();
  /**
   *
   *
   * <pre>
   * Base price.
   * </pre>
   *
   * <code>.google.type.Money base_price = 1;</code>
   */
  com.google.type.MoneyOrBuilder getBasePriceOrBuilder();

  /**
   *
   *
   * <pre>
   * Discount percentage, represented as decimal.
   * For example, a 20% discount will be represent as 0.2.
   * </pre>
   *
   * <code>double discount = 2;</code>
   *
   * @return The discount.
   */
  double getDiscount();

  /**
   *
   *
   * <pre>
   * Effective Price after applying the discounts.
   * </pre>
   *
   * <code>.google.type.Money effective_price = 3;</code>
   *
   * @return Whether the effectivePrice field is set.
   */
  boolean hasEffectivePrice();
  /**
   *
   *
   * <pre>
   * Effective Price after applying the discounts.
   * </pre>
   *
   * <code>.google.type.Money effective_price = 3;</code>
   *
   * @return The effectivePrice.
   */
  com.google.type.Money getEffectivePrice();
  /**
   *
   *
   * <pre>
   * Effective Price after applying the discounts.
   * </pre>
   *
   * <code>.google.type.Money effective_price = 3;</code>
   */
  com.google.type.MoneyOrBuilder getEffectivePriceOrBuilder();

  /**
   *
   *
   * <pre>
   * Link to external price list, such as link to Google Voice rate card.
   * </pre>
   *
   * <code>string external_price_uri = 4;</code>
   *
   * @return The externalPriceUri.
   */
  java.lang.String getExternalPriceUri();
  /**
   *
   *
   * <pre>
   * Link to external price list, such as link to Google Voice rate card.
   * </pre>
   *
   * <code>string external_price_uri = 4;</code>
   *
   * @return The bytes for externalPriceUri.
   */
  com.google.protobuf.ByteString getExternalPriceUriBytes();
}
