lighthouse_sol/types/
meta_assertion.rs1use crate::types::{EquatableOperator, IntegerOperator};
9use borsh::BorshDeserialize;
10use borsh::BorshSerialize;
11use solana_pubkey::Pubkey;
12
13#[derive(BorshSerialize, BorshDeserialize, Clone, Debug, Eq, PartialEq)]
14#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
15pub enum MetaAssertion {
16 RentExemptReserve {
17 value: u64,
18 operator: IntegerOperator,
19 },
20 AuthorizedStaker {
21 #[cfg_attr(
22 feature = "serde",
23 serde(with = "serde_with::As::<serde_with::DisplayFromStr>")
24 )]
25 value: Pubkey,
26 operator: EquatableOperator,
27 },
28 AuthorizedWithdrawer {
29 #[cfg_attr(
30 feature = "serde",
31 serde(with = "serde_with::As::<serde_with::DisplayFromStr>")
32 )]
33 value: Pubkey,
34 operator: EquatableOperator,
35 },
36 LockupUnixTimestamp {
37 value: i64,
38 operator: IntegerOperator,
39 },
40 LockupEpoch {
41 value: u64,
42 operator: IntegerOperator,
43 },
44 LockupCustodian {
45 #[cfg_attr(
46 feature = "serde",
47 serde(with = "serde_with::As::<serde_with::DisplayFromStr>")
48 )]
49 value: Pubkey,
50 operator: EquatableOperator,
51 },
52}