stellar_multicall/
types.rs

1use stellar_axelar_std::{contracttype, soroban_sdk, Address, Symbol, Val, Vec};
2
3#[contracttype]
4#[derive(Clone, Debug, PartialEq, Eq)]
5pub struct FunctionCall {
6    pub contract: Address,
7    /// There must be an address authorizing each function call, even if the function call itself doesn't need authorization, to prevent frontrunning of individual calls within a multicall
8    pub approver: Address,
9    pub function: Symbol,
10    pub args: Vec<Val>,
11}