Skip to main content

burn_central_client/project/
request.rs

1use serde::Serialize;
2
3#[derive(Serialize, Clone, Debug)]
4pub(crate) struct CreateProjectRequest {
5    pub name: String,
6    pub description: Option<String>,
7}
8
9#[derive(Debug, Serialize, Clone)]
10pub struct RegisteredFunctionRequest {
11    pub mod_path: String,
12    pub fn_name: String,
13    pub proc_type: String,
14    pub code: String,
15    pub routine: String,
16}
17
18#[derive(Debug, Serialize, Clone)]
19pub struct BurnCentralCodeMetadataRequest {
20    pub functions: Vec<RegisteredFunctionRequest>,
21}
22
23#[derive(Debug, Serialize, Clone)]
24pub(crate) struct CodeUploadRequest {
25    pub target_package_name: String,
26    pub burn_central_metadata: BurnCentralCodeMetadataRequest,
27    pub crates: Vec<CrateVersionMetadataRequest>,
28    pub digest: String,
29}
30
31#[derive(Debug, Serialize, Clone)]
32pub struct CrateVersionMetadataRequest {
33    pub checksum: String,
34    pub metadata: serde_json::Value,
35    pub size: u64,
36}