use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct DashboardUid(pub String);
impl From<String> for DashboardUid {
fn from(value: String) -> Self {
Self(value)
}
}
impl From<&str> for DashboardUid {
fn from(value: &str) -> Self {
Self(value.to_owned())
}
}
#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct FolderUid(pub String);
impl From<String> for FolderUid {
fn from(value: String) -> Self {
Self(value)
}
}
impl From<&str> for FolderUid {
fn from(value: &str) -> Self {
Self(value.to_owned())
}
}
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct DatasourceId(pub i64);
impl From<i64> for DatasourceId {
fn from(value: i64) -> Self {
Self(value)
}
}
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct OrgId(pub i64);
impl From<i64> for OrgId {
fn from(value: i64) -> Self {
Self(value)
}
}
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct UserId(pub i64);
impl From<i64> for UserId {
fn from(value: i64) -> Self {
Self(value)
}
}
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct TeamId(pub i64);
impl From<i64> for TeamId {
fn from(value: i64) -> Self {
Self(value)
}
}
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct ServiceAccountId(pub i64);
impl From<i64> for ServiceAccountId {
fn from(value: i64) -> Self {
Self(value)
}
}
#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
#[serde(transparent)]
pub struct TokenId(pub i64);
impl From<i64> for TokenId {
fn from(value: i64) -> Self {
Self(value)
}
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct SuccessResponse {
pub message: Option<String>,
}