use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[serde(default)]
pub struct TrackCreateOperationPayloadDataAttributes {
#[serde(rename = "accessType")]
pub access_type: AccessType,
#[serde(rename = "explicit", skip_serializing_if = "Option::is_none")]
pub explicit: Option<bool>,
#[serde(rename = "title")]
pub title: String,
}
impl TrackCreateOperationPayloadDataAttributes {
pub fn new(access_type: AccessType, title: String) -> TrackCreateOperationPayloadDataAttributes {
TrackCreateOperationPayloadDataAttributes {
access_type,
explicit: None,
title,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum AccessType {
#[serde(rename = "PUBLIC")]
Public,
#[serde(rename = "UNLISTED")]
Unlisted,
#[serde(rename = "PRIVATE")]
Private,
}
impl Default for AccessType {
fn default() -> AccessType {
Self::Public
}
}