midgard_rs/types/
action_metadata.rs1use serde::{Deserialize, Serialize};
2
3use crate::ActionMetadataAddLiquidity;
4use crate::ActionMetadataRefund;
5use crate::ActionMetadataSwap;
6use crate::ActionMetadataWithdraw;
7
8#[derive(Debug, Serialize, Deserialize, Clone, Default)]
21pub struct ActionMetadata {
22 swap: Option<ActionMetadataSwap>,
23
24 #[serde(rename = "addLiquidity")]
25 add_liquidity: Option<ActionMetadataAddLiquidity>,
26
27 withdraw: Option<ActionMetadataWithdraw>,
28
29 refund: Option<ActionMetadataRefund>,
30}
31
32impl ActionMetadata {
33 #[must_use]
34 pub const fn get_swap(&self) -> &Option<ActionMetadataSwap> {
35 &self.swap
36 }
37
38 #[must_use]
39 pub const fn get_add_liquidity(&self) -> &Option<ActionMetadataAddLiquidity> {
40 &self.add_liquidity
41 }
42
43 #[must_use]
44 pub const fn get_withdraw(&self) -> &Option<ActionMetadataWithdraw> {
45 &self.withdraw
46 }
47
48 #[must_use]
49 pub const fn get_refund(&self) -> &Option<ActionMetadataRefund> {
50 &self.refund
51 }
52}