dao_proposal_condorcet/
msg.rs1use cosmwasm_schema::{cw_serde, QueryResponses};
2use cosmwasm_std::{CosmosMsg, Empty};
3
4use dao_dao_macros::proposal_module_query;
5
6use crate::config::UncheckedConfig;
7
8pub type InstantiateMsg = UncheckedConfig;
9
10#[cw_serde]
11pub struct Choice {
12 pub msgs: Vec<CosmosMsg<Empty>>,
13}
14
15#[cw_serde]
16pub enum ExecuteMsg {
17 Propose { choices: Vec<Choice> },
18 Vote { proposal_id: u32, vote: Vec<u32> },
19 Execute { proposal_id: u32 },
20 Close { proposal_id: u32 },
21 SetConfig(UncheckedConfig),
22}
23
24#[proposal_module_query]
25#[cw_serde]
26#[derive(QueryResponses)]
27pub enum QueryMsg {
28 #[returns(crate::proposal::ProposalResponse)]
29 Proposal { id: u32 },
30 #[returns(crate::config::Config)]
31 Config {},
32}