pub mod consts;
pub mod error;
pub mod event;
pub mod fogo;
pub mod instruction;
pub mod sdk;
pub mod state;

pub mod prelude {
    pub use crate::consts::*;
    pub use crate::error::*;
    pub use crate::event::*;
    pub use crate::fogo;
    pub use crate::instruction::*;
    pub use crate::sdk::*;
    pub use crate::state::{
        Governance, GovernanceAccount, Proposal, ProposalStatus, Vote, VoteChoice,
    };
    // Re-export state module functions (PDAs, etc.)
    pub use crate::state::{
        governance_pda, proposal_pda, vote_pda,
    };
}

use steel::*;

declare_id!("govbF87tTk9jL3PQso1Vy3attQ6kzHQFw169gd1uxVX"); // Placeholder - replace with actual program ID after deployment
