123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- /**
- * This code was AUTOGENERATED using the kinobi library.
- * Please DO NOT EDIT THIS FILE, instead use visitors
- * to add features, then rerun kinobi to update it.
- *
- * @see https://github.com/metaplex-foundation/kinobi
- */
- import { Address, containsBytes, getU8Encoder } from '@solana/web3.js';
- import {
- ParsedAmountToUiAmountInstruction,
- ParsedApproveTokenDelegateCheckedInstruction,
- ParsedApproveTokenDelegateInstruction,
- ParsedBurnTokenCheckedInstruction,
- ParsedBurnTokenInstruction,
- ParsedCloseTokenInstruction,
- ParsedFreezeTokenInstruction,
- ParsedGetTokenDataSizeInstruction,
- ParsedInitializeImmutableOwnerInstruction,
- ParsedInitializeMint2Instruction,
- ParsedInitializeMintInstruction,
- ParsedInitializeMultisig2Instruction,
- ParsedInitializeMultisigInstruction,
- ParsedInitializeToken2Instruction,
- ParsedInitializeToken3Instruction,
- ParsedInitializeTokenInstruction,
- ParsedMintTokensToCheckedInstruction,
- ParsedMintTokensToInstruction,
- ParsedRevokeTokenDelegateInstruction,
- ParsedSetAuthorityInstruction,
- ParsedSyncNativeInstruction,
- ParsedThawTokenInstruction,
- ParsedTransferTokensCheckedInstruction,
- ParsedTransferTokensInstruction,
- ParsedUiAmountToAmountInstruction,
- } from '../instructions';
- export const TOKEN_PROGRAM_ADDRESS =
- 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA' as Address<'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA'>;
- export enum TokenAccount {
- Mint,
- Token,
- Multisig,
- }
- export enum TokenInstruction {
- InitializeMint,
- InitializeToken,
- InitializeMultisig,
- TransferTokens,
- ApproveTokenDelegate,
- RevokeTokenDelegate,
- SetAuthority,
- MintTokensTo,
- BurnToken,
- CloseToken,
- FreezeToken,
- ThawToken,
- TransferTokensChecked,
- ApproveTokenDelegateChecked,
- MintTokensToChecked,
- BurnTokenChecked,
- InitializeToken2,
- SyncNative,
- InitializeToken3,
- InitializeMultisig2,
- InitializeMint2,
- GetTokenDataSize,
- InitializeImmutableOwner,
- AmountToUiAmount,
- UiAmountToAmount,
- }
- export function identifyTokenInstruction(
- instruction: { data: Uint8Array } | Uint8Array
- ): TokenInstruction {
- const data =
- instruction instanceof Uint8Array ? instruction : instruction.data;
- if (containsBytes(data, getU8Encoder().encode(0), 0)) {
- return TokenInstruction.InitializeMint;
- }
- if (containsBytes(data, getU8Encoder().encode(1), 0)) {
- return TokenInstruction.InitializeToken;
- }
- if (containsBytes(data, getU8Encoder().encode(2), 0)) {
- return TokenInstruction.InitializeMultisig;
- }
- if (containsBytes(data, getU8Encoder().encode(3), 0)) {
- return TokenInstruction.TransferTokens;
- }
- if (containsBytes(data, getU8Encoder().encode(4), 0)) {
- return TokenInstruction.ApproveTokenDelegate;
- }
- if (containsBytes(data, getU8Encoder().encode(5), 0)) {
- return TokenInstruction.RevokeTokenDelegate;
- }
- if (containsBytes(data, getU8Encoder().encode(6), 0)) {
- return TokenInstruction.SetAuthority;
- }
- if (containsBytes(data, getU8Encoder().encode(7), 0)) {
- return TokenInstruction.MintTokensTo;
- }
- if (containsBytes(data, getU8Encoder().encode(8), 0)) {
- return TokenInstruction.BurnToken;
- }
- if (containsBytes(data, getU8Encoder().encode(9), 0)) {
- return TokenInstruction.CloseToken;
- }
- if (containsBytes(data, getU8Encoder().encode(10), 0)) {
- return TokenInstruction.FreezeToken;
- }
- if (containsBytes(data, getU8Encoder().encode(11), 0)) {
- return TokenInstruction.ThawToken;
- }
- if (containsBytes(data, getU8Encoder().encode(12), 0)) {
- return TokenInstruction.TransferTokensChecked;
- }
- if (containsBytes(data, getU8Encoder().encode(13), 0)) {
- return TokenInstruction.ApproveTokenDelegateChecked;
- }
- if (containsBytes(data, getU8Encoder().encode(14), 0)) {
- return TokenInstruction.MintTokensToChecked;
- }
- if (containsBytes(data, getU8Encoder().encode(15), 0)) {
- return TokenInstruction.BurnTokenChecked;
- }
- if (containsBytes(data, getU8Encoder().encode(16), 0)) {
- return TokenInstruction.InitializeToken2;
- }
- if (containsBytes(data, getU8Encoder().encode(17), 0)) {
- return TokenInstruction.SyncNative;
- }
- if (containsBytes(data, getU8Encoder().encode(18), 0)) {
- return TokenInstruction.InitializeToken3;
- }
- if (containsBytes(data, getU8Encoder().encode(19), 0)) {
- return TokenInstruction.InitializeMultisig2;
- }
- if (containsBytes(data, getU8Encoder().encode(20), 0)) {
- return TokenInstruction.InitializeMint2;
- }
- if (containsBytes(data, getU8Encoder().encode(21), 0)) {
- return TokenInstruction.GetTokenDataSize;
- }
- if (containsBytes(data, getU8Encoder().encode(22), 0)) {
- return TokenInstruction.InitializeImmutableOwner;
- }
- if (containsBytes(data, getU8Encoder().encode(23), 0)) {
- return TokenInstruction.AmountToUiAmount;
- }
- if (containsBytes(data, getU8Encoder().encode(24), 0)) {
- return TokenInstruction.UiAmountToAmount;
- }
- throw new Error(
- 'The provided instruction could not be identified as a token instruction.'
- );
- }
- export type ParsedTokenInstruction<
- TProgram extends string = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA',
- > =
- | ({
- instructionType: TokenInstruction.InitializeMint;
- } & ParsedInitializeMintInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeToken;
- } & ParsedInitializeTokenInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeMultisig;
- } & ParsedInitializeMultisigInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.TransferTokens;
- } & ParsedTransferTokensInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.ApproveTokenDelegate;
- } & ParsedApproveTokenDelegateInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.RevokeTokenDelegate;
- } & ParsedRevokeTokenDelegateInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.SetAuthority;
- } & ParsedSetAuthorityInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.MintTokensTo;
- } & ParsedMintTokensToInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.BurnToken;
- } & ParsedBurnTokenInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.CloseToken;
- } & ParsedCloseTokenInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.FreezeToken;
- } & ParsedFreezeTokenInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.ThawToken;
- } & ParsedThawTokenInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.TransferTokensChecked;
- } & ParsedTransferTokensCheckedInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.ApproveTokenDelegateChecked;
- } & ParsedApproveTokenDelegateCheckedInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.MintTokensToChecked;
- } & ParsedMintTokensToCheckedInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.BurnTokenChecked;
- } & ParsedBurnTokenCheckedInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeToken2;
- } & ParsedInitializeToken2Instruction<TProgram>)
- | ({
- instructionType: TokenInstruction.SyncNative;
- } & ParsedSyncNativeInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeToken3;
- } & ParsedInitializeToken3Instruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeMultisig2;
- } & ParsedInitializeMultisig2Instruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeMint2;
- } & ParsedInitializeMint2Instruction<TProgram>)
- | ({
- instructionType: TokenInstruction.GetTokenDataSize;
- } & ParsedGetTokenDataSizeInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.InitializeImmutableOwner;
- } & ParsedInitializeImmutableOwnerInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.AmountToUiAmount;
- } & ParsedAmountToUiAmountInstruction<TProgram>)
- | ({
- instructionType: TokenInstruction.UiAmountToAmount;
- } & ParsedUiAmountToAmountInstruction<TProgram>);
|