#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
pub enum ListingSort {
#[serde(rename = "asc")]
Asc,
#[serde(rename = "desc")]
Desc,
}
#[derive(Debug, Clone, Copy, Serialize, Deserialize)]
pub enum ListingVisibility {
#[serde(rename = "public")]
Public,
#[serde(rename = "internal")]
Internal,
#[serde(rename = "private")]
Private,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum UserState {
#[serde(rename = "active")]
Active,
#[serde(rename = "blocked")]
Blocked,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum MilestoneState {
#[serde(rename = "active")]
Active,
#[serde(rename = "closed")]
Closed,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Version {
pub version: String,
pub revision: String,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Group {
pub id: i64,
pub name: String,
pub path: String,
pub description: String,
pub visibility_level: i64,
pub lfs_enabled: bool,
pub avatar_url: Option<String>,
pub web_url: String,
pub request_access_enabled: bool,
}
pub type Groups = Vec<Group>;
#[derive(Debug, Serialize, Deserialize)]
pub struct Milestone {
pub id: i64,
pub iid: i64,
pub project_id: i64,
pub title: String,
pub description: String,
pub state: MilestoneState,
pub created_at: String, pub updated_at: String, pub due_date: Option<String> }
#[derive(Debug, Serialize, Deserialize)]
pub struct User {
pub name: String,
pub username: String,
pub id: i64,
pub state: UserState,
pub avatar_url: Option<String>,
pub web_url: Option<String>
}