initializeMultisig2 static method
Like InitializeMultisig, but does not require the Rent sysvar to be provided.
Keys:
[w]
account
- The multisignature account to initialize.[]
signers
- The signer accounts (minSigners : maxSigners).
Data
numberOfSigners
- The number of signers required to validate this multisignature account.
Implementation
static TransactionInstruction initializeMultisig2({
// Keys
required final Pubkey account,
required final List<Pubkey> signers,
// Data
required final u8 numberOfSigners,
}) {
// Validation
checkGte(signers.length, minSigners, 'signers');
checkLte(signers.length, maxSigners, 'signers');
// 0. `[w]` The multisignature account to initialize.
// 1. `[]` ..2+N The signer accounts, must equal to N where 1 <= N <= 11.
final List<AccountMeta> keys = [
AccountMeta.writable(account),
for (final Pubkey signer in signers)
AccountMeta(signer),
];
final List<Iterable<int>> data = [
borsh.u8.encode(numberOfSigners),
];
return _instance.createTransactionIntruction(
TokenInstruction.initializeMultisig2,
keys: keys,
data: data,
);
}