pylon_gateway/
pool_resp.rs

1use cosmwasm_bignumber::{Decimal256, Uint256};
2use schemars::JsonSchema;
3use serde::{Deserialize, Serialize};
4
5#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
6pub struct ConfigResponse {
7    pub owner: String,
8    pub share_token: String,
9    pub reward_token: String,
10    pub start_time: u64,
11    pub cliff_time: u64,
12    pub finish_time: u64,
13    pub temp_withdraw_start_time: u64,
14    pub temp_withdraw_finish_time: u64,
15    pub reward_rate: Decimal256,
16}
17
18#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
19pub struct Staker {
20    pub address: String,
21    pub staked: Uint256,
22    pub reward: Uint256,
23}
24
25#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
26pub struct StakersResponse {
27    pub stakers: Vec<Staker>,
28}
29
30#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
31pub struct RewardResponse {
32    pub total_deposit: Uint256,
33    pub last_update_time: u64,
34}
35
36#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
37pub struct BalanceOfResponse {
38    pub amount: Uint256,
39}
40
41#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
42pub struct AvailableCapOfResponse {
43    pub amount: Option<Uint256>,
44    pub unlimited: bool,
45}
46
47#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, JsonSchema)]
48pub struct ClaimableRewardResponse {
49    pub amount: Uint256,
50}