use derive_empty_traits::EmptyTraits;
use resolver_api::Resolve;
use serde::{Deserialize, Serialize};
use typeshare::typeshare;
use crate::entities::provider::*;
use super::KomodoWriteRequest;
#[typeshare]
#[derive(
Serialize, Deserialize, Debug, Clone, Resolve, EmptyTraits,
)]
#[cfg_attr(feature = "openapi", derive(utoipa::ToSchema))]
#[empty_traits(KomodoWriteRequest)]
#[response(CreateGitProviderAccountResponse)]
#[error(serror::Error)]
pub struct CreateGitProviderAccount {
pub account: _PartialGitProviderAccount,
}
#[typeshare]
pub type CreateGitProviderAccountResponse = GitProviderAccount;
#[typeshare]
#[derive(
Serialize, Deserialize, Debug, Clone, Resolve, EmptyTraits,
)]
#[cfg_attr(feature = "openapi", derive(utoipa::ToSchema))]
#[empty_traits(KomodoWriteRequest)]
#[response(UpdateGitProviderAccountResponse)]
#[error(serror::Error)]
pub struct UpdateGitProviderAccount {
pub id: String,
pub account: _PartialGitProviderAccount,
}
#[typeshare]
pub type UpdateGitProviderAccountResponse = GitProviderAccount;
#[typeshare]
#[derive(
Serialize, Deserialize, Debug, Clone, Resolve, EmptyTraits,
)]
#[cfg_attr(feature = "openapi", derive(utoipa::ToSchema))]
#[empty_traits(KomodoWriteRequest)]
#[response(DeleteGitProviderAccountResponse)]
#[error(serror::Error)]
pub struct DeleteGitProviderAccount {
pub id: String,
}
#[typeshare]
pub type DeleteGitProviderAccountResponse = GitProviderAccount;
#[typeshare]
#[derive(
Serialize, Deserialize, Debug, Clone, Resolve, EmptyTraits,
)]
#[cfg_attr(feature = "openapi", derive(utoipa::ToSchema))]
#[empty_traits(KomodoWriteRequest)]
#[response(CreateDockerRegistryAccountResponse)]
#[error(serror::Error)]
pub struct CreateDockerRegistryAccount {
pub account: _PartialDockerRegistryAccount,
}
#[typeshare]
pub type CreateDockerRegistryAccountResponse = DockerRegistryAccount;
#[typeshare]
#[derive(
Serialize, Deserialize, Debug, Clone, Resolve, EmptyTraits,
)]
#[cfg_attr(feature = "openapi", derive(utoipa::ToSchema))]
#[empty_traits(KomodoWriteRequest)]
#[response(UpdateDockerRegistryAccountResponse)]
#[error(serror::Error)]
pub struct UpdateDockerRegistryAccount {
pub id: String,
pub account: _PartialDockerRegistryAccount,
}
#[typeshare]
pub type UpdateDockerRegistryAccountResponse = DockerRegistryAccount;
#[typeshare]
#[derive(
Serialize, Deserialize, Debug, Clone, Resolve, EmptyTraits,
)]
#[cfg_attr(feature = "openapi", derive(utoipa::ToSchema))]
#[empty_traits(KomodoWriteRequest)]
#[response(DeleteDockerRegistryAccountResponse)]
#[error(serror::Error)]
pub struct DeleteDockerRegistryAccount {
pub id: String,
}
#[typeshare]
pub type DeleteDockerRegistryAccountResponse = DockerRegistryAccount;