use serde::{Deserialize, Serialize};
#[derive(Debug, Clone)]
pub struct CreatePR {
pub title: String,
pub body: String,
pub head: String,
pub base: String,
pub draft: bool,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PullRequest {
pub number: u64,
pub title: String,
pub state: String,
pub html_url: String,
pub head_ref: String,
pub base_ref: String,
pub draft: bool,
pub user: String,
pub created_at: String,
}
#[derive(Debug, Clone)]
pub struct CreateIssue {
pub title: String,
pub body: String,
pub labels: Vec<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Issue {
pub number: u64,
pub title: String,
pub state: String,
pub html_url: String,
}
#[derive(Debug, Clone)]
pub struct CreateRelease {
pub tag_name: String,
pub name: String,
pub body: String,
pub draft: bool,
pub prerelease: bool,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Release {
pub id: u64,
pub tag_name: String,
pub name: String,
pub html_url: String,
pub upload_url: String,
pub draft: bool,
pub prerelease: bool,
pub created_at: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CheckRun {
pub name: String,
pub status: String,
pub conclusion: Option<String>,
pub html_url: Option<String>,
pub started_at: Option<String>,
pub completed_at: Option<String>,
}
#[derive(Debug, Clone)]
pub struct CreateRepo {
pub name: String,
pub description: Option<String>,
pub private: bool,
pub namespace: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Repository {
pub id: u64,
pub name: String,
pub full_name: String,
pub web_url: String,
pub clone_url_http: String,
pub clone_url_ssh: Option<String>,
pub private: bool,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CombinedStatus {
pub state: String,
pub total_count: u64,
pub check_runs: Vec<CheckRun>,
}