TokenInstruction.initializeMint2 constructor

TokenInstruction.initializeMint2({
  1. required int decimals,
  2. required Ed25519HDPublicKey mint,
  3. required Ed25519HDPublicKey mintAuthority,
  4. Ed25519HDPublicKey? freezeAuthority,
})

Like TokenInstruction.initializeMint, but does not require the Rent sysvar to be provided.

Implementation

factory TokenInstruction.initializeMint2({
  required int decimals,
  required Ed25519HDPublicKey mint,
  required Ed25519HDPublicKey mintAuthority,
  Ed25519HDPublicKey? freezeAuthority,
}) =>
    TokenInstruction._(
      accounts: [
        AccountMeta.writeable(pubKey: mint, isSigner: false),
      ],
      data: ByteArray.merge([
        TokenProgram.initializeMint2InstructionIndex,
        ByteArray.u8(decimals),
        mintAuthority.toByteArray(),
        ByteArray.u8(freezeAuthority != null ? 1 : 0),
        if (freezeAuthority != null)
          freezeAuthority.toByteArray()
        else
          ByteArray(List<int>.filled(32, 0)),
      ]),
    );