use std::path::PathBuf;
use crate::{
library::{loudnorm::LoudnormAnalysis, track::track_meta::TrackMeta},
media::MediaContainer,
};
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
mod core_impls;
mod database_impls;
mod server_impls;
pub mod track_meta;
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Track {
pub file: PathBuf,
pub container: MediaContainer,
pub metadata: TrackMeta,
pub loudnorm_analysis: Option<LoudnormAnalysis>,
pub added_at: DateTime<Utc>,
}
impl Track {
pub const UNKNOWN: &str = "UNKNOWN TITLE";
}