Skip to main content

Airdrop

The Airdrop contract is responsible for periodically distributing according to the NEB Token Airdrop schedule.

InstantiateMsg#

#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]pub struct InstantiateMsg {    pub owner: String,    pub nebula_token: String,}
KeyTypeDescription
ownerString(address) owner of contract
nebula_tokenString(address) contract address of Nebula Token (NEB)

ExecuteMsg#

#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]#[serde(rename_all = "snake_case")]pub enum ExecuteMsg {    /// OWNER-CALLABLE    UpdateConfig {        owner: Option<String>,    },    RegisterMerkleRoot {        merkle_root: String,    },
    /// USER-CALLABLE    Claim {        stage: u8,        amount: Uint128,        proof: Vec<String>,    },}

UpdateConfig#

KeyTypeDescription
ownerOption\<String>(address) owner of contract

RegisterMerkleRoot#

KeyTypeDescription
merkle_rootStringmerkle root

Claim#

KeyTypeDescription
stageu8stage of airdrop to claim
amountUint128amount of NEB tokens to claim
proofVec\<String>merkle proof

QueryMsg#

#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]#[serde(rename_all = "snake_case")]pub enum QueryMsg {    Config {},    MerkleRoot { stage: u8 },    LatestStage {},    IsClaimed { stage: u8, address: String },}

Config#

MerkleRoot#

LatestStage#

IsClaimed#