asana 0.1.1

asana bindings for rust
Documentation
/*
 * Asana
 *
 * This is the interface for interacting with the [Asana Platform](https://developers.asana.com). Our API reference is generated from our [OpenAPI spec] (https://raw.githubusercontent.com/Asana/developer-docs/master/defs/asana_oas.yaml).
 *
 * The version of the OpenAPI document: 1.0
 *
 * Generated by: https://openapi-generator.tech
 */

#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct ProjectResponseAllOf {
    /// Array of Custom Fields.
    #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
    pub custom_fields: Option<Vec<crate::models::CustomFieldCompact>>,
    /// Array of users following this project. Followers are a subset of members who receive all notifications for a project, the default notification setting when adding members to a project in-product.
    #[serde(rename = "followers", skip_serializing_if = "Option::is_none")]
    pub followers: Option<Vec<crate::models::UserCompact>>,
    /// The current owner of the project, may be null.
    #[serde(rename = "owner", skip_serializing_if = "Option::is_none")]
    pub owner: Option<Box<crate::models::UserCompact>>,
    #[serde(rename = "team", skip_serializing_if = "Option::is_none")]
    pub team: Option<Box<crate::models::TeamCompact>>,
    /// The icon for a project.
    #[serde(rename = "icon", skip_serializing_if = "Option::is_none")]
    pub icon: Option<Icon>,
    /// A url that points directly to the object within Asana.
    #[serde(rename = "permalink_url", skip_serializing_if = "Option::is_none")]
    pub permalink_url: Option<String>,
}

impl ProjectResponseAllOf {
    pub fn new() -> ProjectResponseAllOf {
        ProjectResponseAllOf {
            custom_fields: None,
            followers: None,
            owner: None,
            team: None,
            icon: None,
            permalink_url: None,
        }
    }
}

/// The icon for a project.
#[derive(
    Clone,
    Copy,
    Debug,
    Eq,
    PartialEq,
    Ord,
    PartialOrd,
    Hash,
    Serialize,
    Deserialize
)]
pub enum Icon {
    #[serde(rename = "list")]
    List,
    #[serde(rename = "board")]
    Board,
    #[serde(rename = "timeline")]
    Timeline,
    #[serde(rename = "calendar")]
    Calendar,
    #[serde(rename = "rocket")]
    Rocket,
    #[serde(rename = "people")]
    People,
    #[serde(rename = "graph")]
    Graph,
    #[serde(rename = "star")]
    Star,
    #[serde(rename = "bug")]
    Bug,
    #[serde(rename = "light_bulb")]
    LightBulb,
    #[serde(rename = "globe")]
    Globe,
    #[serde(rename = "gear")]
    Gear,
    #[serde(rename = "notebook")]
    Notebook,
    #[serde(rename = "computer")]
    Computer,
    #[serde(rename = "check")]
    Check,
    #[serde(rename = "target")]
    Target,
    #[serde(rename = "html")]
    Html,
    #[serde(rename = "megaphone")]
    Megaphone,
    #[serde(rename = "chat_bubbles")]
    ChatBubbles,
    #[serde(rename = "briefcase")]
    Briefcase,
    #[serde(rename = "page_layout")]
    PageLayout,
    #[serde(rename = "mountain_flag")]
    MountainFlag,
    #[serde(rename = "puzzle")]
    Puzzle,
    #[serde(rename = "presentation")]
    Presentation,
    #[serde(rename = "line_and_symbols")]
    LineAndSymbols,
    #[serde(rename = "speed_dial")]
    SpeedDial,
    #[serde(rename = "ribbon")]
    Ribbon,
    #[serde(rename = "shoe")]
    Shoe,
    #[serde(rename = "shopping_basket")]
    ShoppingBasket,
    #[serde(rename = "map")]
    Map,
    #[serde(rename = "ticket")]
    Ticket,
    #[serde(rename = "coins")]
    Coins,
}