fireblocks_sdk/models/
asset_response.rs1use {
10 crate::models,
11 serde::{Deserialize, Serialize},
12};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct AssetResponse {
16 #[serde(rename = "legacyId")]
17 pub legacy_id: String,
18 #[serde(rename = "assetClass")]
19 pub asset_class: AssetClass,
20 #[serde(rename = "onchain")]
21 pub onchain: models::AssetOnchain,
22 #[serde(rename = "metadata")]
23 pub metadata: models::AssetMetadata,
24}
25
26impl AssetResponse {
27 pub fn new(
28 legacy_id: String,
29 asset_class: AssetClass,
30 onchain: models::AssetOnchain,
31 metadata: models::AssetMetadata,
32 ) -> AssetResponse {
33 AssetResponse {
34 legacy_id,
35 asset_class,
36 onchain,
37 metadata,
38 }
39 }
40}
41#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
43pub enum AssetClass {
44 #[serde(rename = "NATIVE")]
45 Native,
46 #[serde(rename = "FT")]
47 Ft,
48 #[serde(rename = "NFT")]
49 Nft,
50 #[serde(rename = "SFT")]
51 Sft,
52}
53
54impl Default for AssetClass {
55 fn default() -> AssetClass {
56 Self::Native
57 }
58}