grafos_securestore/
epoch.rs1use grafos_locator::locator::MemRegionLocator;
4use serde::{Deserialize, Serialize};
5
6#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
8pub struct EpochId(pub u64);
9
10#[derive(Clone, Copy, Debug, PartialEq, Eq, Serialize, Deserialize)]
12pub enum EpochStatus {
13 Active,
15 Rotating,
18 Expired,
20}
21
22#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
24pub struct EpochInfo {
25 pub epoch_id: EpochId,
26 pub created_at: u64,
27 pub expires_at: u64,
28 pub key_locator: MemRegionLocator,
29 pub status: EpochStatus,
30}