Attaches the provided TransactionSigners to the account metas of all instructions inside a transaction message and/or the transaction message fee payer, when applicable.
For an account meta to match a provided signer it:
The inferred type of the transaction message provided.
import { AccountRole, Instruction } from '@solana/instructions';import { TransactionMessage } from '@solana/transaction-messages';import { addSignersToTransactionMessage, TransactionSigner } from '@solana/signers';const instructionA: Instruction = { accounts: [{ address: '1111' as Address, role: AccountRole.READONLY_SIGNER }], // ...};const instructionB: Instruction = { accounts: [{ address: '2222' as Address, role: AccountRole.WRITABLE_SIGNER }], // ...};const transactionMessage: TransactionMessage = { instructions: [instructionA, instructionB], // ...}const signerA: TransactionSigner<'1111'>;const signerB: TransactionSigner<'2222'>;const transactionMessageWithSigners = addSignersToTransactionMessage( [signerA, signerB], transactionMessage);// transactionMessageWithSigners.instructions[0].accounts[0].signer === signerA// transactionMessageWithSigners.instructions[1].accounts[0].signer === signerB Copy
import { AccountRole, Instruction } from '@solana/instructions';import { TransactionMessage } from '@solana/transaction-messages';import { addSignersToTransactionMessage, TransactionSigner } from '@solana/signers';const instructionA: Instruction = { accounts: [{ address: '1111' as Address, role: AccountRole.READONLY_SIGNER }], // ...};const instructionB: Instruction = { accounts: [{ address: '2222' as Address, role: AccountRole.WRITABLE_SIGNER }], // ...};const transactionMessage: TransactionMessage = { instructions: [instructionA, instructionB], // ...}const signerA: TransactionSigner<'1111'>;const signerB: TransactionSigner<'2222'>;const transactionMessageWithSigners = addSignersToTransactionMessage( [signerA, signerB], transactionMessage);// transactionMessageWithSigners.instructions[0].accounts[0].signer === signerA// transactionMessageWithSigners.instructions[1].accounts[0].signer === signerB
Attaches the provided TransactionSigners to the account metas of all instructions inside a transaction message and/or the transaction message fee payer, when applicable.
For an account meta to match a provided signer it: