blockfrost_openapi/models/
committee_members_inner.rs1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
5pub struct CommitteeMembersInner {
6 #[serde(rename = "cc_cold_id")]
8 pub cc_cold_id: String,
9 #[serde(rename = "cc_cold_hex")]
11 pub cc_cold_hex: String,
12 #[serde(rename = "cc_cold_has_script")]
13 pub cc_cold_has_script: bool,
14 #[serde(rename = "cc_hot_id", deserialize_with = "Option::deserialize")]
16 pub cc_hot_id: Option<String>,
17 #[serde(rename = "cc_hot_hex", deserialize_with = "Option::deserialize")]
18 pub cc_hot_hex: Option<String>,
19 #[serde(rename = "cc_hot_has_script", deserialize_with = "Option::deserialize")]
20 pub cc_hot_has_script: Option<bool>,
21 #[serde(rename = "status")]
23 pub status: Status,
24 #[serde(rename = "expiration_epoch")]
26 pub expiration_epoch: i32,
27}
28
29impl CommitteeMembersInner {
30 pub fn new(cc_cold_id: String, cc_cold_hex: String, cc_cold_has_script: bool, cc_hot_id: Option<String>, cc_hot_hex: Option<String>, cc_hot_has_script: Option<bool>, status: Status, expiration_epoch: i32) -> CommitteeMembersInner {
31 CommitteeMembersInner {
32 cc_cold_id,
33 cc_cold_hex,
34 cc_cold_has_script,
35 cc_hot_id,
36 cc_hot_hex,
37 cc_hot_has_script,
38 status,
39 expiration_epoch,
40 }
41 }
42}
43#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
45pub enum Status {
46 #[serde(rename = "authorized")]
47 Authorized,
48 #[serde(rename = "not_authorized")]
49 NotAuthorized,
50 #[serde(rename = "resigned")]
51 Resigned,
52}
53
54impl Default for Status {
55 fn default() -> Status {
56 Self::Authorized
57 }
58}
59