use crate::types::{
AddLiquidityEvent, InitializeLpPositionEvent, InitializePoolEvent, PlasmaEventHeader,
RemoveLiquidityEvent, RenounceLiquidityEvent, SwapEvent, WithdrawLpFeesEvent,
WithdrawProtocolFeesEvent,
};
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[derive(Debug, Clone, borsh::BorshSerialize, borsh::BorshDeserialize, PartialEq)]
pub enum PlasmaEvent {
Swap {
header: PlasmaEventHeader,
event: SwapEvent,
},
AddLiquidity {
header: PlasmaEventHeader,
event: AddLiquidityEvent,
},
RemoveLiquidity {
header: PlasmaEventHeader,
event: RemoveLiquidityEvent,
},
RenounceLiquidity {
header: PlasmaEventHeader,
event: RenounceLiquidityEvent,
},
WithdrawLpFees {
header: PlasmaEventHeader,
event: WithdrawLpFeesEvent,
},
InitializeLpPosition {
header: PlasmaEventHeader,
event: InitializeLpPositionEvent,
},
InitializePool {
header: PlasmaEventHeader,
event: InitializePoolEvent,
},
WithdrawProtocolFees {
header: PlasmaEventHeader,
event: WithdrawProtocolFeesEvent,
},
}