use super::rust_edition::RustEdition;
use chrono::{DateTime, NaiveDate, Utc};
use compact_str::CompactString;
use serde::{Deserialize, Serialize};
use std::collections::BTreeMap;
use url::Url;
#[derive(Debug, Clone, Deserialize, Serialize)]
pub struct CrateVersionData {
pub description: CompactString,
pub homepage: Option<Url>,
pub documentation: Option<Url>,
pub license: CompactString,
pub rust_version: CompactString,
pub edition: Option<RustEdition>,
pub features: BTreeMap<CompactString, Vec<CompactString>>,
pub created_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
pub yanked: bool,
pub downloads: u64,
pub monthly_downloads: Vec<(NaiveDate, u64)>,
}