use anchor_lang::prelude::*;
#[derive(Clone, AnchorSerialize, AnchorDeserialize)]
#[cfg_attr(feature = "sdk", derive(Debug))]
pub struct NetworkConfiguration {
pub authority: Pubkey,
pub treasury: Pubkey,
pub request_fee: u64,
pub fulfillment_authorities: Vec<Pubkey>,
pub token_fee_config: Option<OraoTokenFeeConfig>,
}
#[derive(Clone, AnchorSerialize, AnchorDeserialize)]
#[cfg_attr(feature = "sdk", derive(Debug))]
pub struct OraoTokenFeeConfig {
pub mint: Pubkey,
pub treasury: Pubkey,
pub fee: u64,
}
#[account]
#[cfg_attr(feature = "sdk", derive(Debug))]
pub struct NetworkState {
pub config: NetworkConfiguration,
pub num_received: u64,
}