nado-sdk 0.3.7

Official Rust SDK for the Nado Protocol API
Documentation
use crate::core::execute::NadoExecute;
use crate::{build_and_call, fields_to_vars, nado_builder};
use eyre::Result;

use crate::eip712_structs::LinkSigner;
use crate::utils::client_error::none_error;

nado_builder!(
    LinkSignerBuilder,
    NadoExecute,
    signer: [u8; 32],
    nonce: u64;

    build_and_call!(self, execute, link_signer => (), async_build);

    pub async fn build(&self) -> Result<LinkSigner> {
        let sender = self.nado.subaccount()?;
        let address = self.nado.address()?;
        let nonce = self
            .nonce
            .unwrap_or(self.nado.next_tx_nonce(address).await?);
        fields_to_vars!(self, signer);
        Ok(LinkSigner {
            sender,
            signer,
            nonce,
        })
    }
);