1use cosmwasm_schema::{cw_serde, QueryResponses};
2use cosmwasm_std::Addr;
3
4#[cw_serde]
5pub struct InstantiateMsg {
6 pub admin: Addr,
7 pub claim_msg_plaintext: String,
8 pub airdrop_amount: u128,
9 pub addresses: Vec<String>,
10 pub whitelist_code_id: u64,
11 pub minter_address: Addr,
12 pub per_address_limit: u32,
13}
14
15#[cw_serde]
16pub struct AirdropClaimResponse {
17 result: bool,
18 amount: u32,
19 minter_page: String,
20}
21
22#[cw_serde]
23pub enum ExecuteMsg {
24 ClaimAirdrop {
25 eth_address: String,
26 eth_sig: String,
27 },
28}
29
30#[cw_serde]
31#[derive(QueryResponses)]
32pub enum QueryMsg {
33 #[returns(bool)]
34 AirdropEligible { eth_address: String },
35 #[returns(Addr)]
36 GetMinter {},
37}