use super::error::EvmError; #[cfg_attr(not(target_arch = "wasm32"), async_trait::async_trait)] #[cfg_attr(target_arch = "wasm32", async_trait::async_trait(?Send))] pub trait Signer: Send + Sync { async fn sign(&self, message: &[u8]) -> Result, EvmError>; fn address(&self) -> String; }