#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LineItemConfig {
#[prost(uint64, tag = "1")]
pub base_price_cents: u64,
#[prost(message, optional, tag = "3")]
pub payg_rate: ::core::option::Option<
super::super::super::common::v1::TieredPricingRate,
>,
#[prost(message, optional, tag = "4")]
pub reserved_rate: ::core::option::Option<
super::super::super::common::v1::TieredPricingRate,
>,
#[prost(message, optional, tag = "7")]
pub line_item: ::core::option::Option<
super::super::super::common::v1::LineItemDetails,
>,
#[prost(bool, tag = "8")]
pub is_optional_add_on: bool,
#[prost(message, optional, tag = "9")]
pub uncapped_rate: ::core::option::Option<
super::super::super::common::v1::TieredPricingRate,
>,
#[prost(oneof = "line_item_config::IncludedReservedUnits", tags = "5, 6")]
pub included_reserved_units: ::core::option::Option<
line_item_config::IncludedReservedUnits,
>,
}
pub mod line_item_config {
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Oneof)]
pub enum IncludedReservedUnits {
#[prost(bool, tag = "5")]
IsUnlimited(bool),
#[prost(uint64, tag = "6")]
NumReservedUnits(u64),
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SharedLineItemPool {
#[prost(uint64, tag = "1")]
pub reserved_pool_cents: u64,
#[prost(message, repeated, tag = "3")]
pub line_items: ::prost::alloc::vec::Vec<
super::super::super::common::v1::LineItemDetails,
>,
#[prost(bool, tag = "4")]
pub is_optional_add_on: bool,
#[prost(message, optional, tag = "5")]
pub shared_line_item: ::core::option::Option<
super::super::super::common::v1::LineItemDetails,
>,
#[prost(uint64, tag = "6")]
pub base_price_cents: u64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PackageConfig {
#[prost(string, tag = "1")]
pub uid: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "2")]
pub line_item_configs: ::prost::alloc::vec::Vec<LineItemConfig>,
#[prost(message, repeated, tag = "3")]
pub shared_line_item_pools: ::prost::alloc::vec::Vec<SharedLineItemPool>,
#[prost(uint64, tag = "4")]
pub base_price_cents: u64,
#[deprecated]
#[prost(enumeration = "super::super::super::common::v1::BillingInterval", tag = "5")]
pub billing_interval: i32,
#[prost(string, tag = "6")]
pub title: ::prost::alloc::string::String,
#[prost(uint32, repeated, tag = "7")]
pub supported_month_intervals: ::prost::alloc::vec::Vec<u32>,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetPackageRequest {
#[prost(string, tag = "1")]
pub package_uid: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPackageResponse {
#[prost(message, optional, tag = "1")]
pub package_config: ::core::option::Option<PackageConfig>,
}