signTransactionMessageWithSigners

function signTransactionMessageWithSigners(
    transactionMessage,
    config?,
): Promise<
    FullySignedTransaction &
        TransactionWithinSizeLimit &
        Readonly<{
            messageBytes: TransactionMessageBytes;
            signatures: SignaturesMap;
        }> &
        TransactionWithLifetime
>;

Extracts all TransactionSigners inside the provided transaction message and uses them to return a signed transaction before asserting that all signatures required by the transaction are present.

This function delegates to the partiallySignTransactionMessageWithSigners function in order to extract signers from the transaction message and sign the transaction.

Parameters

ParameterType
transactionMessageReadonly<{ instructions: readonly Instruction<string, readonly (AccountLookupMeta<string, string> | AccountMeta<string>)[]>[]; version: TransactionVersion; }> & TransactionMessageWithFeePayer<string> & TransactionMessageWithSigners
config?BaseTransactionSignerConfig

Returns

Promise<FullySignedTransaction & TransactionWithinSizeLimit & Readonly<{ messageBytes: TransactionMessageBytes; signatures: SignaturesMap; }> & TransactionWithLifetime>

Example

const mySignedTransaction = await signTransactionMessageWithSigners(myTransactionMessage);
 
// With additional config.
const mySignedTransaction = await signTransactionMessageWithSigners(myTransactionMessage, {
    abortSignal: myAbortController.signal,
});
 
// We now know the transaction is fully signed.
mySignedTransaction satisfies FullySignedTransaction;

See

On this page