UNPKG

micro-sol-signer

Version:

Create, sign & decode Solana transactions with minimum deps

1,077 lines 109 kB
declare const _default: { readonly kind: "rootNode"; readonly program: { readonly kind: "programNode"; readonly pdas: readonly []; readonly accounts: readonly [{ readonly kind: "accountNode"; readonly data: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "mintAuthority"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly fixed: true; }; readonly docs: readonly ["Optional authority used to mint new tokens. The mint authority may only", "be provided during mint creation. If no mint authority is present", "then the mint has a fixed supply and no further tokens may be minted."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "supply"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["Total supply of tokens."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "decimals"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["Number of base 10 digits to the right of the decimal place."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "isInitialized"; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; readonly docs: readonly ["Is `true` if this structure has been initialized."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "freezeAuthority"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly fixed: true; }; readonly docs: readonly ["Optional authority to freeze token accounts."]; }]; }; readonly discriminators: readonly [{ readonly kind: "sizeDiscriminatorNode"; readonly size: 82; }]; readonly name: "mint"; readonly docs: readonly []; readonly size: 82; }, { readonly kind: "accountNode"; readonly data: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly ["The mint associated with this account."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "owner"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly ["The owner of this account."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["The amount of tokens this account holds."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "delegate"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly fixed: true; }; readonly docs: readonly ["If `delegate` is `Some` then `delegated_amount` represents", "the amount authorized by the delegate."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "state"; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "accountState"; }; readonly docs: readonly ["The account's state."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "isNative"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly fixed: true; }; readonly docs: readonly ["If is_native.is_some, this is a native token, and the value logs the", "rent-exempt reserve. An Account is required to be rent-exempt, so", "the value is used by the Processor to ensure that wrapped SOL", "accounts do not drop below this threshold."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "delegatedAmount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["The amount delegated."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "closeAuthority"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly fixed: true; }; readonly docs: readonly ["Optional authority to close the account."]; }]; }; readonly discriminators: readonly [{ readonly kind: "sizeDiscriminatorNode"; readonly size: 165; }]; readonly name: "token"; readonly docs: readonly []; readonly size: 165; }, { readonly kind: "accountNode"; readonly data: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "m"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["Number of signers required."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "n"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["Number of valid signers."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "isInitialized"; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; readonly docs: readonly ["Is `true` if this structure has been initialized."]; }, { readonly kind: "structFieldTypeNode"; readonly name: "signers"; readonly type: { readonly kind: "arrayTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly count: { readonly kind: "fixedCountNode"; readonly value: 11; }; }; readonly docs: readonly ["Signer public keys."]; }]; }; readonly discriminators: readonly [{ readonly kind: "sizeDiscriminatorNode"; readonly size: 355; }]; readonly name: "multisig"; readonly docs: readonly []; readonly size: 355; }]; readonly instructions: readonly [{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Token mint account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "rent"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Rent sysvar."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRent111111111111111111111111111111111"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 0; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "decimals"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["Number of decimals in token account amounts."]; }, { readonly kind: "instructionArgumentNode"; readonly name: "mintAuthority"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly ["Minting authority."]; }, { readonly kind: "instructionArgumentNode"; readonly name: "freezeAuthority"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly fixed: false; }; readonly defaultValue: { readonly kind: "noneValueNode"; }; readonly docs: readonly ["Optional authority that can freeze token accounts."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeMint"; readonly docs: readonly ["Initializes a new mint and optionally deposits all the newly minted", "tokens in an account.", "", "The `InitializeMint` instruction requires no signers and MUST be", "included within the same Transaction as the system program's", "`CreateAccount` instruction that creates the account being initialized.", "Otherwise another party can acquire ownership of the uninitialized account."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The account to initialize."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The mint this account will be associated with."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The new account's owner/multisignature."]; }, { readonly kind: "instructionAccountNode"; readonly name: "rent"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Rent sysvar."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRent111111111111111111111111111111111"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 1; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeAccount"; readonly docs: readonly ["Initializes a new account to hold tokens. If this account is associated", "with the native mint then the token balance of the initialized account", "will be equal to the amount of SOL in the account. If this account is", "associated with another mint, that mint must be initialized before this", "command can succeed.", "", "The `InitializeAccount` instruction requires no signers and MUST be", "included within the same Transaction as the system program's", "`CreateAccount` instruction that creates the account being initialized.", "Otherwise another party can acquire ownership of the uninitialized account."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "multisig"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The multisignature account to initialize."]; }, { readonly kind: "instructionAccountNode"; readonly name: "rent"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Rent sysvar."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRent111111111111111111111111111111111"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 2; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "m"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["The number of signers (M) required to validate this multisignature account."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "signers"; }; }]; readonly name: "initializeMultisig"; readonly docs: readonly ["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.", "", "The `InitializeMultisig` instruction requires no signers and MUST be", "included within the same Transaction as the system program's", "`CreateAccount` instruction that creates the account being initialized.", "Otherwise another party can acquire ownership of the uninitialized account."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "source"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The source account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "destination"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The destination account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "authority"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The source account's owner/delegate or its multisignature account."]; readonly defaultValue: { readonly kind: "identityValueNode"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 3; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["The amount of tokens to transfer."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "transfer"; readonly docs: readonly ["Transfers tokens from one account to another either directly or via a delegate.", "If this account is associated with the native mint then equal amounts", "of SOL and Tokens will be transferred to the destination account."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "source"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The source account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "delegate"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The delegate."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The source account owner or its multisignature account."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 4; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["The amount of tokens the delegate is approved for."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "approve"; readonly docs: readonly ["Approves a delegate. A delegate is given the authority over tokens on", "behalf of the source account's owner."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "source"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The source account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The source account owner or its multisignature."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 5; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "revoke"; readonly docs: readonly ["Revokes the delegate's authority."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "owned"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The mint or account to change the authority of."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The current authority or the multisignature account of the mint or account to update."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 6; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "authorityType"; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "authorityType"; }; readonly docs: readonly ["The type of authority to update."]; }, { readonly kind: "instructionArgumentNode"; readonly name: "newAuthority"; readonly type: { readonly kind: "optionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly fixed: false; }; readonly docs: readonly ["The new authority"]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "setAuthority"; readonly docs: readonly ["Sets a new authority of a mint or account."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The mint account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "token"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The account to mint tokens to."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mintAuthority"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The mint's minting authority or its multisignature account."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 7; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["The amount of new tokens to mint."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "mintTo"; readonly docs: readonly ["Mints new tokens to an account. The native mint does not support minting."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The account to burn from."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The token mint."]; }, { readonly kind: "instructionAccountNode"; readonly name: "authority"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The account's owner/delegate or its multisignature account."]; readonly defaultValue: { readonly kind: "identityValueNode"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["The amount of tokens to burn."]; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 8; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "burn"; readonly docs: readonly ["Burns tokens by removing them from an account. `Burn` does not support", "accounts associated with the native mint, use `CloseAccount` instead."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The account to close."]; }, { readonly kind: "instructionAccountNode"; readonly name: "destination"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The destination account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The account's owner or its multisignature account."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 9; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "closeAccount"; readonly docs: readonly ["Close an account by transferring all its SOL to the destination account.", "Non-native accounts may only be closed if its token amount is zero."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The account to freeze."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The token mint."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The mint freeze authority or its multisignature account."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 10; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "freezeAccount"; readonly docs: readonly ["Freeze an Initialized account using the Mint's freeze_authority (if set)."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The account to thaw."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The token mint."]; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The mint freeze authority or its multisignature account."]; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 11; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "thawAccount"; readonly docs: readonly ["Thaw a Frozen account using the Mint's freeze_authority (if set)."]; readonly optionalAccountStrategy: "programId"; }, { readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "source"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The source account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The token mint."]; }, { readonly kind: "instructionAccountNode"; readonly name: "destination"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The destination account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "authority"; readonly isWritable: false; readonly isSigner: "either"; readonly isOptional: false; readonly docs: readonly ["The source account's owner/delegate or its multisignature account."]; readonly defaultValue: { readonly kind: "identityValueNode"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 12; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly ["The amount of tokens to transfer."]; }, { readonly kind: "instructionArgumentNode"; readonly name: "decimals"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; readonly docs: readonly ["Expected number of base 10 digits to the right of the decimal place."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly remainingAccounts: readonly [{ readonly kind: "instructionRemainingAccountsNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "multiSigners"; }; readonly isOptional: true; readonly isSigner: true; }]; readonly name: "transferChecked"; readonly docs: readonly ["Transfers tokens from one account to another either directly or via a", "delegate. If this account is associated with the native mint then equal", "amounts of SOL