SPLTokenProgram.initializeMultisig constructor

SPLTokenProgram.initializeMultisig({
  1. required SPLTokenInitializeMultisigLayout layout,
  2. required SolAddress account,
  3. required List<SolAddress> signers,
  4. SolAddress programId = SPLTokenProgramConst.tokenProgramId,
})

Initializes a multisignature account with N provided signers.

Multisignature accounts can used in place of any single owner/delegate accounts in any token instruction that require an owner/delegate to be present. The variant field represents the number of signers (M) required to validate this multisignature account.

Implementation

factory SPLTokenProgram.initializeMultisig(
    {required SPLTokenInitializeMultisigLayout layout,

    /// The multisignature account to initialize.
    required SolAddress account,

    /// The signer accounts
    required List<SolAddress> signers,
    SolAddress programId = SPLTokenProgramConst.tokenProgramId}) {
  return SPLTokenProgram(
      layout: layout,
      keys: [
        account.toWritable(),
        SystemProgramConst.sysvarRentPubkey.toReadOnly(),
        ...signers.map((e) => e.toReadOnly())
      ],
      programId: programId);
}