prawn 0.0.3

Rust Client for the Tidal API providing comprehensive API coverag, and easy OAuth management
Documentation
/*
 * TIDAL API
 *
 * The TIDAL API is a [JSON:API](https://jsonapi.org/)–compliant web API that exposes TIDAL’s music, metadata, and user-related functionality through a consistent, resource-oriented design. More information and API management are available at [developer.tidal.com](developer.tidal.com)
 *
 * The version of the OpenAPI document: 1.0.36
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
#[serde(default)]
pub struct ArtworkCreateOperationPayloadDataAttributes {
    #[serde(rename = "mediaType")]
    pub media_type: MediaType,
    #[serde(rename = "sourceFile")]
    pub source_file: Box<models::ArtworkCreateOperationPayloadDataAttributesSourceFile>,
}

impl ArtworkCreateOperationPayloadDataAttributes {
    pub fn new(media_type: MediaType, source_file: models::ArtworkCreateOperationPayloadDataAttributesSourceFile) -> ArtworkCreateOperationPayloadDataAttributes {
        ArtworkCreateOperationPayloadDataAttributes {
            media_type,
            source_file: Box::new(source_file),
        }
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum MediaType {
    #[serde(rename = "IMAGE")]
    Image,
    #[serde(rename = "VIDEO")]
    Video,
}

impl Default for MediaType {
    fn default() -> MediaType {
        Self::Image
    }
}