Skip to main content

universalsettle_api/state/
config.rs

1use steel::*;
2
3use super::SettlementAccount;
4
5/// Config is a singleton account which manages program global variables.
6#[repr(C)]
7#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
8pub struct Config {
9    /// Facilitator authority
10    pub authority: Pubkey,
11
12    /// Facilitator fee destination (wallet address to receive fees)
13    pub fee_destination: Pubkey,
14
15    /// The timestamp of the last update.
16    pub updated_at: i64,
17
18    /// Minimum absolute fee amount collected
19    pub min_fee_amount: u64,
20
21    /// The facilitator fee rate
22    pub fee_bps: u16, // in basis point
23
24    pub _padding: [u8; 6], // 6 bytes padding
25}
26
27account!(SettlementAccount, Config);