/*
 * Late API
 *
 * API reference for Late. Authenticate with a Bearer API key. Base URL: https://getlate.dev/api
 *
 * The version of the OpenAPI document: 1.0.1
 * Contact: support@getlate.dev
 * Generated by: https://openapi-generator.tech
 */

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

/// LinkedInAggregateAnalyticsDailyResponseAnalytics : Daily breakdown of each metric as date/count pairs. Reach not available with DAILY aggregation.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct LinkedInAggregateAnalyticsDailyResponseAnalytics {
    #[serde(rename = "impressions", skip_serializing_if = "Option::is_none")]
    pub impressions:
        Option<Vec<models::LinkedInAggregateAnalyticsDailyResponseAnalyticsImpressionsInner>>,
    #[serde(rename = "reactions", skip_serializing_if = "Option::is_none")]
    pub reactions:
        Option<Vec<models::LinkedInAggregateAnalyticsDailyResponseAnalyticsImpressionsInner>>,
    #[serde(rename = "comments", skip_serializing_if = "Option::is_none")]
    pub comments:
        Option<Vec<models::LinkedInAggregateAnalyticsDailyResponseAnalyticsImpressionsInner>>,
    #[serde(rename = "shares", skip_serializing_if = "Option::is_none")]
    pub shares:
        Option<Vec<models::LinkedInAggregateAnalyticsDailyResponseAnalyticsImpressionsInner>>,
}

impl LinkedInAggregateAnalyticsDailyResponseAnalytics {
    /// Daily breakdown of each metric as date/count pairs. Reach not available with DAILY aggregation.
    pub fn new() -> LinkedInAggregateAnalyticsDailyResponseAnalytics {
        LinkedInAggregateAnalyticsDailyResponseAnalytics {
            impressions: None,
            reactions: None,
            comments: None,
            shares: None,
        }
    }
}
