junobuild_cdn/proposals/
types.rs

1use crate::proposals::ProposalId;
2use candid::{CandidType, Deserialize};
3use junobuild_shared::types::core::Hash;
4use serde::Serialize;
5
6#[derive(Debug)]
7pub enum RejectProposalError {
8    ProposalNotFound(String),
9    ProposalNotOpen(String),
10    InvalidSha256(String),
11    InvalidType(String),
12}
13
14#[derive(Debug)]
15pub enum CommitProposalError {
16    ProposalNotFound(String),
17    ProposalNotOpen(String),
18    InvalidSha256(String),
19    InvalidType(String),
20    PreCommitAssetsIssue(String),
21    CommitAssetsIssue(String),
22    PostCommitAssetsIssue(String),
23}
24
25#[derive(CandidType, Serialize, Deserialize, Clone)]
26pub struct CommitProposal {
27    pub proposal_id: ProposalId,
28    pub sha256: Hash,
29}
30
31pub type RejectProposal = CommitProposal;