multiversx_sdk/data/
esdt.rs

1use serde::{Deserialize, Serialize};
2use std::collections::HashMap;
3
4// EsdtBalance  holds information about the esdt balance
5#[derive(Debug, Clone, Serialize, Deserialize)]
6#[serde(rename_all = "camelCase")]
7pub struct EsdtBalance {
8    pub token_identifier: String,
9    pub balance: String,
10    #[serde(default)]
11    #[serde(skip_serializing_if = "Vec::is_empty")]
12    pub uris: Vec<String>,
13}
14
15// EsdtBalanceData holds the esdt balance data
16#[derive(Debug, Clone, Serialize, Deserialize)]
17pub struct EsdtBalanceData {
18    pub esdts: HashMap<String, EsdtBalance>,
19}
20
21// EsdtBalanceResponse holds the esdt balance endpoint response
22#[derive(Debug, Clone, Serialize, Deserialize)]
23pub struct EsdtBalanceResponse {
24    pub data: Option<EsdtBalanceData>,
25    pub error: String,
26    pub code: String,
27}
28
29// EsdtRolesData holds the esdt roles data
30#[derive(Debug, Clone, Serialize, Deserialize)]
31pub struct EsdtRolesData {
32    pub roles: HashMap<String, Vec<String>>,
33}
34
35// EsdtBalanceResponse holds the esdt roles endpoint response
36#[derive(Debug, Clone, Serialize, Deserialize)]
37pub struct EsdtRolesResponse {
38    pub data: Option<EsdtRolesData>,
39    pub error: String,
40    pub code: String,
41}