use serde::Deserialize;
use crate::common::WatchProvider;
use crate::{CountryCode, Language};
#[derive(Debug, Clone, Deserialize)]
pub struct ProviderRegion {
#[serde(rename = "iso_3166_1")]
pub country: CountryCode,
pub english_name: String,
pub native_name: String,
}
#[derive(Debug, Clone, Deserialize)]
pub struct ProviderRegions {
pub results: Vec<ProviderRegion>,
}
#[derive(Debug, Clone, Deserialize)]
pub struct ProviderList {
pub results: Vec<WatchProvider>,
}
endpoint! {
watch_provider_regions(): GET "/watch/providers/regions" => ProviderRegions {
params { language: Language }
}
}
endpoint! {
movie_watch_provider_list(): GET "/watch/providers/movie" => ProviderList {
params { language: Language, watch_region: CountryCode }
}
}
endpoint! {
tv_watch_provider_list(): GET "/watch/providers/tv" => ProviderList {
params { language: Language, watch_region: CountryCode }
}
}