use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "kebab-case")]
pub enum InspectCheck {
All,
Orphans,
BrokenLinks,
DanglingRefs,
Unreferenced,
Graph,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct SyncInput {
#[serde(default)]
pub paths: Vec<String>,
#[serde(default)]
pub fast: bool,
#[serde(default)]
pub force: bool,
#[serde(default)]
pub rebuild: bool,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
#[serde(rename_all = "camelCase")]
pub struct StatusInput {
#[serde(default)]
pub json: bool,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct InspectInput {
pub check: InspectCheck,
#[serde(default)]
pub scope: Vec<String>,
#[serde(default)]
pub scope_only: Vec<String>,
#[serde(default)]
pub scope_all: bool,
#[serde(default)]
pub limit: Option<u16>,
}