astroport_types/
staking.rs1use crate::xastro_token::InstantiateMarketingInfo;
2use cosmwasm_std::Addr;
3use cw20::Cw20ReceiveMsg;
4use schemars::JsonSchema;
5use serde::{Deserialize, Serialize};
6
7#[derive(Serialize, Deserialize, JsonSchema)]
8pub struct InstantiateMsg {
9 pub owner: String,
10 pub token_code_id: u64,
11 pub deposit_token_addr: String,
12 pub marketing: Option<InstantiateMarketingInfo>,
13}
14
15#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
16#[serde(rename_all = "snake_case")]
17pub enum ExecuteMsg {
18 Receive(Cw20ReceiveMsg),
19}
20
21#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
22#[serde(rename_all = "snake_case")]
23pub enum QueryMsg {
24 Config {},
25 TotalShares {},
26 TotalDeposit {},
27}
28
29#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
30pub struct ConfigResponse {
31 pub deposit_token_addr: Addr,
32 pub share_token_addr: Addr,
33}
34
35#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
36pub struct MigrateMsg {}
37
38#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
39#[serde(rename_all = "snake_case")]
40pub enum Cw20HookMsg {
41 Enter {},
42 Leave {},
43}