lyrics-search 0.5.0

Lyrics search functionality for various platforms
Documentation
use serde::Deserialize;

#[derive(Debug, Clone, Deserialize)]
pub(crate) struct SearchResponse {
    pub(crate) results: Option<SearchResults>,
}

#[derive(Debug, Clone, Deserialize)]
pub(crate) struct SearchResults {
    pub(crate) songs: Option<SongsContainer>,
}

#[derive(Debug, Clone, Deserialize)]
pub(crate) struct SongsContainer {
    pub(crate) data: Option<Vec<SongData>>,
}

#[derive(Debug, Clone, Deserialize)]
pub(crate) struct SongData {
    pub(crate) id: String,
    pub(crate) attributes: Option<SongAttributes>,
}

#[derive(Debug, Clone, Deserialize)]
pub(crate) struct SongAttributes {
    pub(crate) name: String,
    #[serde(rename = "artistName")]
    pub(crate) artist_name: String,
    #[serde(rename = "albumName")]
    pub(crate) album_name: String,
    #[serde(rename = "durationInMillis")]
    pub(crate) duration_in_millis: Option<i32>,
}