use crate::framework::response::ApiResult;
use chrono::offset::Utc;
use chrono::DateTime;
use std::collections::HashMap;
pub mod delete;
pub mod get;
pub mod patch;
pub mod post;
pub mod put;
pub use get::SlugDetails;
pub use post::{SlugCreate, SlugCreateParams};
impl ApiResult for Slug {}
impl ApiResult for Vec<Slug> {}
#[derive(Deserialize, Serialize, Debug, Clone, PartialEq, Eq)]
pub struct Slug {
pub blob: Blob,
pub buildpack_provided_description: Option<String>,
pub checksum: Option<String>,
pub commit: Option<String>,
pub commit_description: Option<String>,
pub created_at: DateTime<Utc>,
pub id: String,
pub process_types: Option<HashMap<String, String>>,
pub size: Option<i64>,
pub stack: Stack,
pub updated_at: DateTime<Utc>,
}
#[derive(Deserialize, Serialize, Debug, Clone, PartialEq, Eq)]
pub struct Blob {
pub method: String,
pub url: String,
}
#[derive(Deserialize, Serialize, Debug, Clone, PartialEq, Eq)]
pub struct ProcessTypes {
pub web: String,
}
#[derive(Deserialize, Serialize, Debug, Clone, PartialEq, Eq)]
pub struct Stack {
pub id: String,
pub name: String,
}