use cosmwasm_schema::{cw_serde, QueryResponses};
use cosmwasm_std::Uint128;
use cw2::ContractVersion;
#[cw_serde]
#[derive(QueryResponses)]
pub enum Query {
#[returns(::cosmwasm_std::Addr)]
TokenContract {},
#[returns(DenomResponse)]
Denom {},
#[returns(VotingPowerAtHeightResponse)]
VotingPowerAtHeight {
address: ::std::string::String,
height: ::std::option::Option<::std::primitive::u64>,
},
#[returns(TotalPowerAtHeightResponse)]
TotalPowerAtHeight {
height: ::std::option::Option<::std::primitive::u64>,
},
#[returns(cosmwasm_std::Addr)]
Dao {},
#[returns(InfoResponse)]
Info {},
#[returns(::std::primitive::bool)]
IsActive {},
}
#[cw_serde]
pub enum ActiveThresholdQuery {
ActiveThreshold {},
}
#[cw_serde]
pub struct VotingPowerAtHeightResponse {
pub power: Uint128,
pub height: u64,
}
#[cw_serde]
pub struct TotalPowerAtHeightResponse {
pub power: Uint128,
pub height: u64,
}
#[cw_serde]
pub struct InfoResponse {
pub info: ContractVersion,
}
#[cw_serde]
pub struct IsActiveResponse {
pub active: bool,
}
#[cw_serde]
pub struct DenomResponse {
pub denom: String,
}