1use cw20::Cw20ReceiveMsg;
2use schemars::JsonSchema;
3use serde::{Deserialize, Serialize};
4
5#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
6pub struct InstantiateMsg {
7 pub pool_name: String,
8 pub beneficiary: String,
9 pub fee_collector: String,
10 pub moneymarket: String,
11 pub dp_code_id: u64,
12}
13
14#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
15#[serde(rename_all = "snake_case")]
16pub enum ExecuteMsg {
17 Receive(Cw20ReceiveMsg),
18 Deposit {}, Earn {}, Configure {
21 beneficiary: Option<String>,
22 fee_collector: Option<String>,
23 },
24}
25
26#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
27#[serde(rename_all = "snake_case")]
28pub enum Cw20HookMsg {
29 Redeem {},
30}
31
32#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
33#[serde(rename_all = "snake_case")]
34pub enum QueryMsg {
35 DepositAmountOf { owner: String }, TotalDepositAmount {}, Config {}, ClaimableReward {}, }
40
41#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
43pub struct MigrateMsg {}