solana_kit_token_2022 0.4.0 copy "solana_kit_token_2022: ^0.4.0" to clipboard
solana_kit_token_2022: ^0.4.0 copied to clipboard

SPL Token 2022 and Associated Token Account client for the Solana Kit Dart SDK. Generated from the upstream Codama IDL with focused ergonomic helpers.

solana_kit_token_2022 #

pub package CI Coverage

SPL Token 2022 client for the Solana Kit Dart SDK.

Provides a generated low-level client from the upstream Codama IDL plus focused handwritten helpers for extension-aware token workflows. Associated Token Account (ATA) APIs are shared from solana_kit_associated_token_account and re-exported for convenience.

Installation #

dependencies:
  solana_kit_token_2022: ^0.4.0

Usage #

Compute mint size with extensions #

import 'package:solana_kit_token_2022/solana_kit_token_2022.dart';

// Calculate on-chain account size for a mint with extensions
final size = getMintSize([
  ExtensionType.transferFeeConfig,
  ExtensionType.defaultAccountState,
]);

Get pre-initialize instructions for extensions #

// Some extensions require initialization before the mint itself
final preIx = getInitializeInstructionsForExtensions(
  extensions: [ExtensionType.transferFeeConfig],
  mint: mintAddress,
  payer: payer,
);

Compute token account size #

final size = getTokenSize([ExtensionType.transferFeeAmount]);

Use generated builders directly #

final ix = getMintToInstruction(
  programAddress: token2022ProgramAddress,
  mint: mintAddress,
  destination: tokenAccount,
  authority: mintAuthority,
  amount: BigInt.from(1000000000),
);

Generated layer #

The generated code under src/generated/ is produced from the upstream Codama IDL at solana-program/token-2022. It includes:

  • Instruction builders — typed functions for all Token 2022 instructions
  • Account decoders — parse on-chain account data into typed structs
  • Codecs — binary encoders/decoders for all token types
  • Error definitions — typed error codes and messages
  • PDA helpers — derive associated token account addresses
  • Program addresstoken2022ProgramAddress constant

Handwritten helpers #

Helper Description
getMintSize(List<ExtensionType>) Compute on-chain byte size for a mint with given extensions.
getTokenSize(List<ExtensionType>) Compute on-chain byte size for a token account.
getInitializeInstructionsForExtensions Get pre-initialize instructions for mint extensions.

Re-exports #

This package re-exports the full solana_kit_associated_token_account API surface so callers can access ATA PDA helpers and instruction builders without adding a separate dependency.

Upstream reference #

Generated layer mirrors solana-program/token-2022.