cml_chain/governance/
cbor_encodings.rs1use crate::address::RewardAccount;
5use crate::certs::Credential;
6use cml_core::serialization::{LenEncoding, StringEncoding};
7use std::collections::BTreeMap;
8
9#[derive(Clone, Debug, Default)]
10pub struct AnchorEncoding {
11 pub len_encoding: LenEncoding,
12 pub anchor_doc_hash_encoding: StringEncoding,
13}
14
15#[derive(Clone, Debug, Default)]
16pub struct ConstitutionEncoding {
17 pub len_encoding: LenEncoding,
18 pub script_hash_encoding: StringEncoding,
19}
20
21#[derive(Clone, Debug, Default)]
22pub struct GovActionIdEncoding {
23 pub len_encoding: LenEncoding,
24 pub transaction_id_encoding: StringEncoding,
25 pub gov_action_index_encoding: Option<cbor_event::Sz>,
26}
27
28#[derive(Clone, Debug, Default)]
29pub struct HardForkInitiationActionEncoding {
30 pub len_encoding: LenEncoding,
31 pub tag_encoding: Option<cbor_event::Sz>,
32}
33
34#[derive(Clone, Debug, Default)]
35pub struct NewConstitutionEncoding {
36 pub len_encoding: LenEncoding,
37 pub tag_encoding: Option<cbor_event::Sz>,
38}
39
40#[derive(Clone, Debug, Default)]
41pub struct NoConfidenceEncoding {
42 pub len_encoding: LenEncoding,
43 pub tag_encoding: Option<cbor_event::Sz>,
44}
45
46#[derive(Clone, Debug, Default)]
47pub struct ParameterChangeActionEncoding {
48 pub len_encoding: LenEncoding,
49 pub tag_encoding: Option<cbor_event::Sz>,
50 pub policy_hash_encoding: StringEncoding,
51}
52
53#[derive(Clone, Debug, Default)]
54pub struct ProposalProcedureEncoding {
55 pub len_encoding: LenEncoding,
56 pub deposit_encoding: Option<cbor_event::Sz>,
57}
58
59#[derive(Clone, Debug, Default)]
60pub struct TreasuryWithdrawalsActionEncoding {
61 pub len_encoding: LenEncoding,
62 pub tag_encoding: Option<cbor_event::Sz>,
63 pub withdrawal_encoding: LenEncoding,
64 pub withdrawal_value_encodings: BTreeMap<RewardAccount, Option<cbor_event::Sz>>,
65 pub policy_hash_encoding: StringEncoding,
66}
67
68#[derive(Clone, Debug, Default)]
69pub struct UpdateCommitteeEncoding {
70 pub len_encoding: LenEncoding,
71 pub tag_encoding: Option<cbor_event::Sz>,
72 pub credentials_encoding: LenEncoding,
73 pub credentials_value_encodings: BTreeMap<Credential, Option<cbor_event::Sz>>,
74}
75
76#[derive(Clone, Debug, Default)]
77pub struct VotingProcedureEncoding {
78 pub len_encoding: LenEncoding,
79 pub vote_encoding: Option<cbor_event::Sz>,
80}