Trait fuels_signers::Signer

source ·
pub trait Signer: Debug + Send + Sync {
    type Error: Error + Send + Sync;

    // Required methods
    fn sign_message<'life0, 'async_trait, S>(
        &'life0 self,
        message: S
    ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>
       where S: 'async_trait + Send + Sync + AsRef<[u8]>,
             Self: 'async_trait,
             'life0: 'async_trait;
    fn sign_transaction<'life0, 'life1, 'async_trait, T>(
        &'life0 self,
        message: &'life1 mut T
    ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>
       where T: 'async_trait + Transaction + Send,
             Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn address(&self) -> &Bech32Address;
}
Expand description

Trait for signing transactions and messages

Implement this trait to support different signing modes, e.g. Ledger, hosted etc.

Required Associated Types§

Required Methods§

source

fn sign_message<'life0, 'async_trait, S>( &'life0 self, message: S ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>where S: 'async_trait + Send + Sync + AsRef<[u8]>, Self: 'async_trait, 'life0: 'async_trait,

Signs the hash of the provided message

source

fn sign_transaction<'life0, 'life1, 'async_trait, T>( &'life0 self, message: &'life1 mut T ) -> Pin<Box<dyn Future<Output = Result<Signature, Self::Error>> + Send + 'async_trait>>where T: 'async_trait + Transaction + Send, Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Signs the transaction

source

fn address(&self) -> &Bech32Address

Returns the signer’s Fuel Address

Implementors§