use serde::{Deserialize, Serialize};
use std::collections::HashMap;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PriceTarget {
pub symbol: String,
#[serde(rename = "targetHigh")]
pub target_high: f64,
#[serde(rename = "targetLow")]
pub target_low: f64,
#[serde(rename = "targetMean")]
pub target_mean: f64,
#[serde(rename = "targetMedian")]
pub target_median: f64,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RecommendationTrend {
pub buy: i32,
pub hold: i32,
pub period: String,
pub sell: i32,
#[serde(rename = "strongBuy")]
pub strong_buy: i32,
#[serde(rename = "strongSell")]
pub strong_sell: i32,
pub symbol: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct UpgradeDowngrade {
pub symbol: String,
#[serde(rename = "gradeTime")]
pub grade_time: i64,
#[serde(rename = "fromGrade")]
pub from_grade: Option<String>,
#[serde(rename = "toGrade")]
pub to_grade: Option<String>,
pub company: String,
pub action: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RevenueBreakdown {
pub symbol: String,
pub cik: Option<String>,
pub data: Vec<HashMap<String, serde_json::Value>>,
}