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,}| Key | Type | Description |
|---|---|---|
| owner | String | (address) owner of contract |
| nebula_token | String | (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#
| Key | Type | Description |
|---|---|---|
| owner | Option\<String> | (address) owner of contract |
RegisterMerkleRoot#
| Key | Type | Description |
|---|---|---|
| merkle_root | String | merkle root |
Claim#
| Key | Type | Description |
|---|---|---|
| stage | u8 | stage of airdrop to claim |
| amount | Uint128 | amount of NEB tokens to claim |
| proof | Vec\<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 },}