Skip to main content

ave_core/approval/
request.rs

1use ave_common::{
2    ValueWrapper,
3    identity::{DigestIdentifier, PublicKey},
4};
5
6use borsh::{BorshDeserialize, BorshSerialize};
7use serde::{Deserialize, Serialize};
8
9/// A struct representing an approval request.
10#[derive(
11    Debug,
12    Clone,
13    Serialize,
14    Deserialize,
15    Eq,
16    PartialEq,
17    BorshSerialize,
18    BorshDeserialize,
19)]
20pub struct ApprovalReq {
21    /// The signed event request.
22    pub subject_id: DigestIdentifier,
23    /// The sequence number of the event.
24    pub sn: u64,
25    /// The version of the governance contract.
26    pub gov_version: u64,
27    /// The patch to apply to the state.
28    pub patch: ValueWrapper,
29
30    pub signer: PublicKey,
31}