pub use solana_instruction::{AccountMeta, Instruction};
pub use solana_pubkey::Pubkey;
solana_pubkey::declare_id!("C7PXyLpLQBh3Ce7e9DNj3rDVUvwqa5orDwQG5hs1rfNi");
pub mod data;
pub mod error;
pub mod instruction;
pub mod pda;
pub mod role;
pub mod token_program;
pub use error::SettlementError;
pub use instruction::{recover_discriminator, SettlementInstruction};
pub use pda::SettlementAccount;
pub use role::Role;
#[cfg(any(test, feature = "test-fixtures"))]
pub mod fixtures {
use std::sync::LazyLock;
use crate::pda::state::state_pda_seeds;
use crate::Pubkey;
pub fn pubkey_from_seed(seed: &str) -> Pubkey {
Pubkey::new_from_array(solana_sha256_hasher::hash(seed.as_bytes()).to_bytes())
}
pub static PROGRAM_ID: LazyLock<Pubkey> = LazyLock::new(|| pubkey_from_seed("program id"));
pub static STATE_PDA: LazyLock<Pubkey> =
LazyLock::new(|| Pubkey::find_program_address(&state_pda_seeds(), &PROGRAM_ID).0);
}