• Sends and confirms Transaction Uses custom confirmation logic that:

    • simulates tx before sending separately
    • sends transaction without preFlight checks but with some valuable flags https://twitter.com/jordaaash/status/1774892862049800524?s=46&t=bhZ10V0r7IX5Lk5kKzxfGw
    • rebroadcasts a tx every 500 ms
    • after broadcasting check whether tx has executed once
    • catch errors for every actionable item, throw only the ones that signal that tx has failed
    • otherwise there is a chance of marking a landed tx as failed if it was broadcasted at least once

    Parameters

    • connection: Connection

      Solana client connection

    • tx: VersionedTransaction | Transaction

      Transaction instance

    • confirmationParams: ConfirmationParams

      Confirmation Params that will be used for execution

    • transactionExecutionParams: TransactionExecutionParams

      rate or throttler instance to throttle TX sending - to not spam the blockchain too much and solana execution params (eg. skipSimulation)

    Returns Promise<string>

    Transaction signature