sg_eth_airdrop/
msg.rs

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}