use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct BillingSnapshotStatus {
#[serde(rename = "hasAccess", skip_serializing_if = "Option::is_none")]
pub has_access: Option<bool>,
#[serde(rename = "suspended", skip_serializing_if = "Option::is_none")]
pub suspended: Option<bool>,
#[serde(
rename = "suspendedAt",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub suspended_at: Option<Option<String>>,
#[serde(
rename = "suspensionReason",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub suspension_reason: Option<Option<String>>,
#[serde(
rename = "openInvoiceUrl",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub open_invoice_url: Option<Option<String>>,
#[serde(
rename = "declineReason",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub decline_reason: Option<Option<String>>,
#[serde(rename = "autoUpgradeEnabled", skip_serializing_if = "Option::is_none")]
pub auto_upgrade_enabled: Option<bool>,
}
impl BillingSnapshotStatus {
pub fn new() -> BillingSnapshotStatus {
BillingSnapshotStatus {
has_access: None,
suspended: None,
suspended_at: None,
suspension_reason: None,
open_invoice_url: None,
decline_reason: None,
auto_upgrade_enabled: None,
}
}
}