#[derive(Clone, Copy, Debug, PartialEq, serde::Deserialize)]
#[serde(deny_unknown_fields, rename_all = "kebab-case")]
#[cfg_attr(feature = "clap", derive(clap::ValueEnum))]
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
pub enum ProjectBuildBackend {
#[cfg_attr(feature = "clap", value(alias = "uv-build", alias = "uv_build"))]
Uv,
#[serde(alias = "hatchling")]
#[cfg_attr(feature = "clap", value(alias = "hatchling"))]
Hatch,
#[serde(alias = "flit-core")]
#[cfg_attr(feature = "clap", value(alias = "flit-core"))]
Flit,
#[serde(alias = "pdm-backend")]
#[cfg_attr(feature = "clap", value(alias = "pdm-backend"))]
PDM,
#[serde(alias = "poetry-core")]
#[cfg_attr(feature = "clap", value(alias = "poetry-core", alias = "poetry_core"))]
Poetry,
Setuptools,
Maturin,
#[serde(alias = "scikit-build-core")]
#[cfg_attr(feature = "clap", value(alias = "scikit-build-core"))]
Scikit,
}