hapi_core/state/
community.rs

1use anchor_lang::prelude::*;
2
3#[account]
4pub struct Community {
5    /// Community authority wallet
6    pub authority: Pubkey,
7
8    /// Community case counter
9    pub cases: u64,
10
11    /// Number of confirmations needed for address to be considered confirmed
12    pub confirmation_threshold: u8,
13
14    /// Number of epochs reporter must wait to retrieve their stake
15    pub stake_unlock_epochs: u64,
16
17    /// Stake token mint account
18    pub stake_mint: Pubkey,
19
20    /// Token signer PDA
21    pub token_signer: Pubkey,
22
23    /// Seed bump for token signer PDA
24    pub token_signer_bump: u8,
25
26    /// Stake holding token account
27    pub token_account: Pubkey,
28
29    /// Token account for reporter fee
30    pub treasury_token_account: Pubkey,
31
32    /// Amount of stake required from a reporter of validator type
33    pub validator_stake: u64,
34
35    /// Amount of stake required from a reporter of tracer type
36    pub tracer_stake: u64,
37
38    /// Amount of stake required from a reporter of full type
39    pub full_stake: u64,
40
41    /// Amount of stake required from a reporter of authority type
42    pub authority_stake: u64,
43
44    /// Amount of stake required from a reporter of appraiser type
45    pub appraiser_stake: u64,
46}