use k256::ecdsa::SigningKey;
#[cfg(not(all(target_arch = "wasm32", feature = "mainnet")))]
const SPONSOR_PRIVATE_KEY_HEX: &str =
"0x046a830b5203d1d2c0a205a1432746e4381d0874711b2de7f575a973644b9d43";
#[cfg(all(target_arch = "wasm32", feature = "mainnet"))]
const SPONSOR_PRIVATE_KEY_HEX: &str =
"0x0000000000000000000000000000000000000000000000000000000000000001";
pub fn fee_payer() -> Result<SigningKey, String> {
crate::wallet::from_private_key_hex(SPONSOR_PRIVATE_KEY_HEX)
.map_err(|e| format!("sponsor key invalid: {e}"))
}
#[cfg(all(test, not(all(target_arch = "wasm32", feature = "mainnet"))))]
mod tests {
#[test]
fn sponsor_key_derives_documented_address() {
let key = super::fee_payer().expect("committed sponsor key parses");
let addr = super::super::address_to_hex(&crate::wallet::address(&key));
assert_eq!(addr, "0x0aff88ad13ef24cac5befd0f9dc3a05df79a922c");
}
}