dpp/block/extended_epoch_info/v0/
mod.rs1use crate::block::epoch::EpochIndex;
2#[cfg(feature = "json-conversion")]
3use crate::serialization::json_safe_fields;
4use crate::util::deserializer::ProtocolVersion;
5use bincode::{Decode, Encode};
6use serde::{Deserialize, Serialize};
7
8#[cfg_attr(feature = "json-conversion", json_safe_fields)]
10#[derive(Clone, Debug, PartialEq, Encode, Decode, Serialize, Deserialize)]
11#[serde(rename_all = "camelCase")]
12pub struct ExtendedEpochInfoV0 {
13 pub index: EpochIndex,
15 pub first_block_time: u64,
17 pub first_block_height: u64,
19 pub first_core_block_height: u32,
21 pub fee_multiplier_permille: u64,
23 pub protocol_version: u32,
25}
26
27pub trait ExtendedEpochInfoV0Getters {
29 fn index(&self) -> EpochIndex;
31
32 fn first_block_time(&self) -> u64;
34
35 fn first_block_height(&self) -> u64;
37
38 fn first_core_block_height(&self) -> u32;
40
41 fn fee_multiplier_permille(&self) -> u64;
43
44 fn protocol_version(&self) -> ProtocolVersion;
46}