use serde::Deserialize;
#[derive(Debug, Deserialize)]
pub struct GitRef {
pub object: GitObject,
}
#[derive(Debug, Deserialize)]
pub struct GitObject {
pub sha: String,
#[serde(rename = "type", default)]
pub object_type: String,
}
#[derive(Debug, Deserialize)]
pub struct GitRefEntry {
#[serde(rename = "ref")]
pub ref_name: String,
pub object: GitObject,
}
#[derive(Deserialize)]
pub(super) struct CommitResponse {
pub sha: String,
}
#[derive(Deserialize)]
pub(super) struct GitTagResponse {
pub object: GitObject,
}
#[derive(Debug, Deserialize)]
pub(super) struct ReleaseResponse {
#[serde(rename = "published_at")]
pub published_at: Option<String>,
}
#[derive(Debug, Deserialize)]
pub(super) struct CommitDetailResponse {
pub commit: CommitObject,
}
#[derive(Debug, Deserialize)]
pub(super) struct CommitObject {
pub committer: Option<CommitterInfo>,
}
#[derive(Debug, Deserialize)]
pub(super) struct CommitterInfo {
pub date: Option<String>,
}
#[derive(Debug, Deserialize)]
pub(super) struct TagObjectResponse {
pub tagger: Option<TaggerInfo>,
}
#[derive(Debug, Deserialize)]
pub(super) struct TaggerInfo {
pub date: Option<String>,
}