cauuu 0.1.1

A SDK for the cauuu staking contracts
Documentation
extern crate cosmwasm_schema;
extern crate cosmwasm_std;
extern crate cosmwasm_storage;
extern crate schemars;
extern crate serde;

use self::cosmwasm_schema::cw_serde;
use self::cosmwasm_std::Uint128;

#[cw_serde]
pub struct InstantiateMsg {
    pub hub_addr: String,
    pub underlying_coin_denom: String,
    pub minter: String,
}

#[cw_serde]
pub struct Config {
    pub hub_contract: String,
    pub underlying_coin_denom: String,
    pub minter: String,
}

#[cw_serde]
pub enum ExecuteMsg {
    ////////////////////
    /// Owner's operations
    ////////////////////

    // Pause contract functionalities
    Pause {},
    // Unpause contract functionalities
    Unpause {},

    /// Change the admin (must be called by current admin)
    UpdateAdmin {
        admin: String,
    },

    /// Sends the rewards that has been accumulated
    /// on the contract back to the hub contract
    ProcessRewards {
        rewards_amount: Uint128,
    },

    /// Mints the tokens to the recipient
    MintTokens {
        recipient: String,
        amount: Uint128,
    },
}

#[cw_serde]
pub enum QueryMsg {
    Config {},
    Admin {},
}

#[cw_serde]
pub struct ConfigResponse {
    pub hub_contract: String,
}