Interface TransactionSubmitter

You can implement this interface and set it in PluginSettings when building a client to override the default transaction submission behavior. This is useful if you'd like to submit transactions via a gas station for example.

class MyGasStationClient implements TransactionSubmitter {
async submitTransaction(
args: { aptosConfig: AptosConfig } & InputSubmitTransactionData,
): Promise<PendingTransactionResponse> {
// TODO: Implement the logic to submit the transaction to the gas station
}
}

const network = Network.MAINNET;
const myGasStationClient = new MyGasStationClient(network);
const config = new AptosConfig({
network,
pluginConfig: {
transactionSubmitter: myGasStationClient,
},
});
const aptos = new Aptos(config);
interface TransactionSubmitter {
    submitTransaction(args: {
        aptosConfig: AptosConfig;
    } & Omit<InputSubmitTransactionData, "transactionSubmitter">): Promise<PendingTransactionResponse>;
}

Implementation

Implementation