1#![allow(clippy::all)]
4
5#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
7pub struct ListSwapsResponse {
8 #[serde(rename = "items")]
9 pub items: Vec<crate::types::Swap>,
10 #[serde(
11 rename = "nextPageToken",
12 default,
13 skip_serializing_if = "Option::is_none"
14 )]
15 pub next_page_token: Option<String>,
16}
17
18#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
20pub struct ListSwapsQuery {
21 #[serde(rename = "limit", default, skip_serializing_if = "Option::is_none")]
22 pub limit: Option<i64>,
23 #[serde(
24 rename = "paginationToken",
25 default,
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub pagination_token: Option<String>,
29}
30
31pub type CreateSwapRequest = serde_json::Value;
33
34#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
36pub struct CreateSwapResponse {
37 #[serde(rename = "id")]
38 pub id: String,
39 #[serde(rename = "quoteId")]
40 pub quote_id: String,
41 #[serde(rename = "reference")]
42 pub reference: serde_json::Value,
43 #[serde(rename = "walletId")]
44 pub wallet_id: String,
45 #[serde(rename = "targetWalletId")]
46 pub target_wallet_id: String,
47 #[serde(rename = "status")]
48 pub status: String,
49 #[serde(rename = "provider")]
50 pub provider: String,
51 #[serde(
52 rename = "feeSponsorId",
53 default,
54 skip_serializing_if = "Option::is_none"
55 )]
56 pub fee_sponsor_id: Option<String>,
57 #[serde(rename = "quotedSourceAsset")]
58 pub quoted_source_asset: serde_json::Value,
59 #[serde(rename = "quotedTargetAsset")]
60 pub quoted_target_asset: serde_json::Value,
61 #[serde(rename = "slippageBps")]
62 pub slippage_bps: f64,
63 #[serde(rename = "dateCreated")]
64 pub date_created: String,
65 #[serde(rename = "requestBody")]
66 pub request_body: serde_json::Value,
67 #[serde(rename = "requester")]
68 pub requester: crate::types::Requester,
69 #[serde(
70 rename = "failureReason",
71 default,
72 skip_serializing_if = "Option::is_none"
73 )]
74 pub failure_reason: Option<String>,
75 #[serde(
76 rename = "protocolStatus",
77 default,
78 skip_serializing_if = "Option::is_none"
79 )]
80 pub protocol_status: Option<String>,
81}
82
83pub type RequestSwapQuoteRequest = serde_json::Value;
85
86#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
88pub struct RequestSwapQuoteResponse {
89 #[serde(rename = "id")]
90 pub id: String,
91 #[serde(rename = "walletId")]
92 pub wallet_id: String,
93 #[serde(
94 rename = "targetWalletId",
95 default,
96 skip_serializing_if = "Option::is_none"
97 )]
98 pub target_wallet_id: Option<String>,
99 #[serde(rename = "provider")]
100 pub provider: String,
101 #[serde(rename = "sourceAsset")]
102 pub source_asset: serde_json::Value,
103 #[serde(rename = "targetAsset")]
104 pub target_asset: serde_json::Value,
105 #[serde(rename = "slippageBps")]
106 pub slippage_bps: i64,
107 #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
108 pub fee: Option<String>,
109 #[serde(rename = "dateCreated")]
110 pub date_created: String,
111 #[serde(rename = "requestBody")]
112 pub request_body: serde_json::Value,
113 #[serde(rename = "requester")]
114 pub requester: crate::types::Requester,
115}
116
117#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
119pub struct GetSwapResponse {
120 #[serde(rename = "id")]
121 pub id: String,
122 #[serde(rename = "quoteId")]
123 pub quote_id: String,
124 #[serde(rename = "reference")]
125 pub reference: serde_json::Value,
126 #[serde(rename = "walletId")]
127 pub wallet_id: String,
128 #[serde(rename = "targetWalletId")]
129 pub target_wallet_id: String,
130 #[serde(rename = "status")]
131 pub status: String,
132 #[serde(rename = "provider")]
133 pub provider: String,
134 #[serde(
135 rename = "feeSponsorId",
136 default,
137 skip_serializing_if = "Option::is_none"
138 )]
139 pub fee_sponsor_id: Option<String>,
140 #[serde(rename = "quotedSourceAsset")]
141 pub quoted_source_asset: serde_json::Value,
142 #[serde(rename = "quotedTargetAsset")]
143 pub quoted_target_asset: serde_json::Value,
144 #[serde(rename = "slippageBps")]
145 pub slippage_bps: f64,
146 #[serde(rename = "dateCreated")]
147 pub date_created: String,
148 #[serde(rename = "requestBody")]
149 pub request_body: serde_json::Value,
150 #[serde(rename = "requester")]
151 pub requester: crate::types::Requester,
152 #[serde(
153 rename = "failureReason",
154 default,
155 skip_serializing_if = "Option::is_none"
156 )]
157 pub failure_reason: Option<String>,
158 #[serde(
159 rename = "protocolStatus",
160 default,
161 skip_serializing_if = "Option::is_none"
162 )]
163 pub protocol_status: Option<String>,
164}
165
166#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
168pub struct GetSwapQuoteResponse {
169 #[serde(rename = "id")]
170 pub id: String,
171 #[serde(rename = "walletId")]
172 pub wallet_id: String,
173 #[serde(
174 rename = "targetWalletId",
175 default,
176 skip_serializing_if = "Option::is_none"
177 )]
178 pub target_wallet_id: Option<String>,
179 #[serde(rename = "provider")]
180 pub provider: String,
181 #[serde(rename = "sourceAsset")]
182 pub source_asset: serde_json::Value,
183 #[serde(rename = "targetAsset")]
184 pub target_asset: serde_json::Value,
185 #[serde(rename = "slippageBps")]
186 pub slippage_bps: i64,
187 #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
188 pub fee: Option<String>,
189 #[serde(rename = "dateCreated")]
190 pub date_created: String,
191 #[serde(rename = "requestBody")]
192 pub request_body: serde_json::Value,
193 #[serde(rename = "requester")]
194 pub requester: crate::types::Requester,
195}