/*
 * Zernio API
 *
 * API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
 *
 * The version of the OpenAPI document: 1.0.4
 * Contact: support@zernio.com
 * Generated by: https://openapi-generator.tech
 */

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

/// AccountWithFollowerStatsAllOfAccountStats : Platform-specific account stats from the latest daily snapshot. Fields vary by platform. Only present if metadata has been captured.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AccountWithFollowerStatsAllOfAccountStats {
    /// Number of accounts being followed
    #[serde(rename = "followingCount", skip_serializing_if = "Option::is_none")]
    pub following_count: Option<f64>,
    /// Total media posts (Instagram)
    #[serde(rename = "mediaCount", skip_serializing_if = "Option::is_none")]
    pub media_count: Option<f64>,
    /// Total videos (YouTube, TikTok)
    #[serde(rename = "videoCount", skip_serializing_if = "Option::is_none")]
    pub video_count: Option<f64>,
    /// Total tweets (X/Twitter)
    #[serde(rename = "tweetCount", skip_serializing_if = "Option::is_none")]
    pub tweet_count: Option<f64>,
    /// Total posts (Bluesky)
    #[serde(rename = "postsCount", skip_serializing_if = "Option::is_none")]
    pub posts_count: Option<f64>,
    /// Total pins (Pinterest)
    #[serde(rename = "pinCount", skip_serializing_if = "Option::is_none")]
    pub pin_count: Option<f64>,
    /// Total channel views (YouTube)
    #[serde(rename = "totalViews", skip_serializing_if = "Option::is_none")]
    pub total_views: Option<f64>,
    /// Total likes received (TikTok)
    #[serde(rename = "likesCount", skip_serializing_if = "Option::is_none")]
    pub likes_count: Option<f64>,
    /// Monthly profile views (Pinterest)
    #[serde(rename = "monthlyViews", skip_serializing_if = "Option::is_none")]
    pub monthly_views: Option<f64>,
    /// Lists the user appears on (X/Twitter)
    #[serde(rename = "listedCount", skip_serializing_if = "Option::is_none")]
    pub listed_count: Option<f64>,
    /// Total boards (Pinterest)
    #[serde(rename = "boardCount", skip_serializing_if = "Option::is_none")]
    pub board_count: Option<f64>,
}

impl AccountWithFollowerStatsAllOfAccountStats {
    /// Platform-specific account stats from the latest daily snapshot. Fields vary by platform. Only present if metadata has been captured.
    pub fn new() -> AccountWithFollowerStatsAllOfAccountStats {
        AccountWithFollowerStatsAllOfAccountStats {
            following_count: None,
            media_count: None,
            video_count: None,
            tweet_count: None,
            posts_count: None,
            pin_count: None,
            total_views: None,
            likes_count: None,
            monthly_views: None,
            listed_count: None,
            board_count: None,
        }
    }
}
