SPLToken2022ExtensionsProgram.initializeTransferFeeConfig constructor

SPLToken2022ExtensionsProgram.initializeTransferFeeConfig({
  1. required SolAddress mint,
  2. required SPLToken2022InitializeTransferFeeConfigLayout layout,
  3. SolAddress programId = SPLTokenProgramConst.token2022ProgramId,
})

Initialize the transfer fee on a new mint.

Implementation

factory SPLToken2022ExtensionsProgram.initializeTransferFeeConfig({
  /// The mint to initialize.
  required SolAddress mint,
  required SPLToken2022InitializeTransferFeeConfigLayout layout,
  SolAddress programId = SPLTokenProgramConst.token2022ProgramId,
}) {
  if (programId == SPLTokenProgramConst.tokenProgramId) {
    throw const MessageException("Token program does not support extensions");
  }
  return SPLToken2022ExtensionsProgram(
      keys: [mint.toWritable()], programId: programId, layout: layout);
}