use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum DCatEndpoint {
Production,
Int,
Xbox,
XboxInt,
Dev,
OneP,
OnePInt,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum PackageType {
Uap,
Xap,
AppX,
Unknown,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum IdentifierType {
ProductId,
XboxTitleId,
PackageFamilyName,
ContentId,
LegacyWindowsPhoneProductId,
LegacyWindowsStoreProductId,
LegacyXboxProductId,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum ImagePurpose {
Logo,
Tile,
Screenshot,
BoxArt,
BrandedKeyArt,
Poster,
FeaturePromotionalSquareArt,
ImageGallery,
SuperHeroArt,
TitledHeroArt,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum ProductKind {
Game,
Application,
Book,
Movie,
Physical,
Software,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum DeviceFamily {
Desktop,
Mobile,
Xbox,
ServerCore,
IotCore,
HoloLens,
Andromeda,
Universal,
Wcos,
}
impl DeviceFamily {
pub fn platform_dependency_name(&self) -> &'static str {
match self {
DeviceFamily::Desktop => "Windows.Desktop",
DeviceFamily::Mobile => "Windows.Mobile",
DeviceFamily::Xbox => "Windows.Xbox",
DeviceFamily::ServerCore => "Windows.Server",
DeviceFamily::IotCore => "Windows.Iot",
DeviceFamily::HoloLens => "Windows.Holographic",
DeviceFamily::Andromeda => "Windows.8828080",
DeviceFamily::Universal => "Windows.Universal",
DeviceFamily::Wcos => "Windows.Core",
}
}
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub enum DisplayCatalogResult {
NotFound,
Restricted,
TimedOut,
Error,
Found,
}