use std::hash::Hash;
use serde::{Deserialize, Serialize};
#[cfg(feature = "typescript")]
use ts_rs::TS;
use crate::PlatformId;
#[cfg_attr(feature = "typescript", derive(TS))]
#[cfg_attr(feature = "typescript", ts(export))]
#[derive(Deserialize, Serialize, Debug, Clone, PartialEq, Eq, Hash)]
pub struct Platform {
pub id: PlatformId,
pub name: String,
}
impl Platform {
pub const UNKNOWN: PlatformId = PlatformId(0);
}
#[cfg(feature = "utils")]
mod definitions {
use crate::utils::macros::as_table;
use super::*;
as_table! {
"platforms" => Platform {
id: "id",
name: "name",
}
}
}