fireblocks_sdk/models/
screening_provider_rules_configuration_response.rs1use {
10 crate::models,
11 serde::{Deserialize, Serialize},
12};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ScreeningProviderRulesConfigurationResponse {
16 #[serde(rename = "direction", skip_serializing_if = "Option::is_none")]
17 pub direction: Option<Direction>,
18 #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
19 pub status: Option<Status>,
20 #[serde(rename = "amountUSD", skip_serializing_if = "Option::is_none")]
21 pub amount_usd: Option<f64>,
22 #[serde(rename = "amount", skip_serializing_if = "Option::is_none")]
23 pub amount: Option<f64>,
24 #[serde(rename = "asset", skip_serializing_if = "Option::is_none")]
25 pub asset: Option<String>,
26 #[serde(rename = "action")]
27 pub action: Action,
28}
29
30impl ScreeningProviderRulesConfigurationResponse {
31 pub fn new(action: Action) -> ScreeningProviderRulesConfigurationResponse {
32 ScreeningProviderRulesConfigurationResponse {
33 direction: None,
34 status: None,
35 amount_usd: None,
36 amount: None,
37 asset: None,
38 action,
39 }
40 }
41}
42#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
44pub enum Direction {
45 #[serde(rename = "INBOUND")]
46 Inbound,
47 #[serde(rename = "OUTBOUND")]
48 Outbound,
49}
50
51impl Default for Direction {
52 fn default() -> Direction {
53 Self::Inbound
54 }
55}
56#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
58pub enum Status {
59 #[serde(rename = "COMPLETED")]
60 Completed,
61 #[serde(rename = "PENDING")]
62 Pending,
63 #[serde(rename = "REJECTED")]
64 Rejected,
65 #[serde(rename = "FAILED")]
66 Failed,
67 #[serde(rename = "CANCELED")]
68 Canceled,
69 #[serde(rename = "BLOCKING_TIME_EXPIRED")]
70 BlockingTimeExpired,
71}
72
73impl Default for Status {
74 fn default() -> Status {
75 Self::Completed
76 }
77}
78#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
80pub enum Action {
81 #[serde(rename = "ACCEPT")]
82 Accept,
83 #[serde(rename = "REJECT")]
84 Reject,
85 #[serde(rename = "ALERT")]
86 Alert,
87 #[serde(rename = "WAIT")]
88 Wait,
89 #[serde(rename = "FREEZE")]
90 Freeze,
91 #[serde(rename = "CANCEL")]
92 Cancel,
93}
94
95impl Default for Action {
96 fn default() -> Action {
97 Self::Accept
98 }
99}