import * as P from 'micro-packed'; import * as idl from './idl/index.ts'; import { Decimal, PRECISION, pubKey, shortU16 } from './idl/index.ts'; export { Offchain } from './offchain.ts'; export { Decimal, PRECISION, pubKey, shortU16 }; export type Bytes = Uint8Array; export declare function validateAddress(address: string): void; export type Account = { address: string; sign: boolean; write: boolean; }; export type Instruction = { program: string; keys: Account[]; data: Bytes; }; export type Message = { feePayer: string; blockhash: string; instructions: Instruction[]; }; declare const MessageVersion: P.CoderType; export declare const MessageRaw: P.CoderType; keys: string[]; blockhash: string; instructions: P.StructInput<{ programIdx: /*elided*/ any; keys: /*elided*/ any; data: /*elided*/ any; }>[]; }>; }; 0: { TAG: 0; data: P.StructInput<{ header: P.StructInput<{ requiredSignatures: /*elided*/ any; readSigned: /*elided*/ any; readUnsigned: /*elided*/ any; }>; keys: string[]; blockhash: string; instructions: P.StructInput<{ programIdx: /*elided*/ any; keys: /*elided*/ any; data: /*elided*/ any; }>[]; ALT: P.StructInput<{ account: /*elided*/ any; writableIndexes: /*elided*/ any; readonlyIndexes: /*elided*/ any; }>[]; }>; }; }>>; type Version = P.UnwrapCoder['TAG']; type MessageType = { version: P.UnwrapCoder; feePayer: string; blockhash: string; instructions: Instruction[]; }; export declare const Message: P.CoderType; export declare const TransactionRaw: P.CoderType; }; 0: { TAG: 0; data: P.StructInput<{ header: /*elided*/ any; keys: /*elided*/ any; blockhash: /*elided*/ any; instructions: /*elided*/ any; ALT: /*elided*/ any; }>; }; }>; }>>; export declare const Transaction: P.CoderType<{ signatures: { [k: string]: P.Bytes; }; msg: MessageType; }>; export declare function AddressLookupTables(tables: Record): { resolve: (tx: P.UnwrapCoder) => { signatures: { [k: string]: P.Bytes; }; msg: { instructions: { program: string; keys: { address: string; sign: boolean; write: boolean; }[]; data: Bytes; }[]; version: P.UnwrapCoder; feePayer: string; blockhash: string; }; }; compress(tx: P.UnwrapCoder): { signatures: { [k: string]: P.Bytes; }; msg: { instructions: { program: string; keys: { address: string; sign: boolean; write: boolean; }[]; data: Bytes; }[]; version: P.UnwrapCoder; feePayer: string; blockhash: string; }; }; }; export declare const PROGRAMS: { memo: { program: { name: "memo"; contract: "MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"; types: idl.GetDefinedTypes; pdas: {}; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; additionalPrograms: {}; }; solanaConfig: { program: { name: "solanaConfig"; contract: "Config1111111111111111111111111111111111111"; types: idl.GetDefinedTypes; pdas: {}; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; additionalPrograms: {}; }; computeBudget: { program: { name: "computeBudget"; contract: "ComputeBudget111111111111111111111111111111"; types: idl.GetDefinedTypes; pdas: {}; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; additionalPrograms: {}; }; addressLookupTable: { program: { name: "addressLookupTable"; contract: "AddressLookupTab1e1111111111111111111111111"; types: idl.GetDefinedTypes; pdas: { addressLookupTable: (value: { authority: string; recentSlot: bigint; }) => string; }; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; additionalPrograms: {}; }; "token-2022": { program: { name: "token-2022"; contract: "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"; types: idl.GetDefinedTypes= newerTransferFee.epoch."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "transferFee"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferFeeAmount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Withheld transfer fee tokens that can be claimed by the fee authority."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "mintCloseAuthority"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "closeAuthority"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferMint"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Authority to modify the `ConfidentialTransferMint` configuration and to", "approve new accounts (if `auto_approve_new_accounts` is true).", "", "The legacy Token Multisig account is not supported as the authority."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "autoApproveNewAccounts"; readonly docs: readonly ["Indicate if newly configured accounts must be approved by the", "`authority` before they may be used by the user.", "", "* If `true`, no approval is required and new accounts may be used immediately.", "* If `false`, the authority must approve newly configured accounts (see", " `ConfidentialTransferInstruction::ConfigureAccount`)."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "auditorElgamalPubkey"; readonly docs: readonly ["Authority to decode any transfer amount in a confidential transfer."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "approved"; readonly docs: readonly ["`true` if this account has been approved for use. All confidential", "transfer operations for the account will fail until approval is granted."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "elgamalPubkey"; readonly docs: readonly ["The public key associated with ElGamal encryption."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceLow"; readonly docs: readonly ["The low 16 bits of the pending balance (encrypted by `elgamal_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceHigh"; readonly docs: readonly ["The high 48 bits of the pending balance (encrypted by `elgamal_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "availableBalance"; readonly docs: readonly ["The available balance (encrypted by `encrypiton_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "decryptableAvailableBalance"; readonly docs: readonly ["The decryptable available balance."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "decryptableBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "allowConfidentialCredits"; readonly docs: readonly ["If `false`, the extended account rejects any incoming confidential transfers."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "allowNonConfidentialCredits"; readonly docs: readonly ["If `false`, the base account rejects any incoming transfers."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceCreditCounter"; readonly docs: readonly ["The total number of `Deposit` and `Transfer` instructions that have credited `pending_balance`."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "maximumPendingBalanceCreditCounter"; readonly docs: readonly ["The maximum number of `Deposit` and `Transfer` instructions that can", "credit `pending_balance` before the `ApplyPendingBalance`", "instruction is executed."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "expectedPendingBalanceCreditCounter"; readonly docs: readonly ["The `expected_pending_balance_credit_counter` value that was included in", "the last `ApplyPendingBalance` instruction."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "actualPendingBalanceCreditCounter"; readonly docs: readonly ["The actual `pending_balance_credit_counter` when the last", "`ApplyPendingBalance` instruction was executed."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "defaultAccountState"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "state"; readonly docs: readonly []; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "accountState"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "immutableOwner"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "memoTransfer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "requireIncomingTransferMemos"; readonly docs: readonly ["Require transfers into this account to be accompanied by a memo."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "nonTransferable"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "interestBearingConfig"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "rateAuthority"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "initializationTimestamp"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "preUpdateAverageRate"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "i16"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "lastUpdateTimestamp"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "currentRate"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "i16"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "cpiGuard"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "lockCpi"; readonly docs: readonly ["Lock certain token operations from taking place within CPI for this account."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "permanentDelegate"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "delegate"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "nonTransferableAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferHook"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["The transfer hook update authority."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "programId"; readonly docs: readonly ["The transfer hook program account."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferHookAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "transferring"; readonly docs: readonly ["Whether or not this account is currently transferring tokens", "True during the transfer hook cpi, otherwise false."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferFee"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority to set the withdraw withheld authority ElGamal key."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "elgamalPubkey"; readonly docs: readonly ["Withheld fees from accounts must be encrypted with this ElGamal key.", "", "Note that whoever holds the ElGamal private key for this ElGamal public", "key has the ability to decode any withheld fee amount that are", "associated with accounts. When combined with the fee parameters, the", "withheld fee amounts can reveal information about transfer amounts."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "harvestToMintEnabled"; readonly docs: readonly ["If `false`, the harvest of withheld tokens to mint is rejected."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Withheld confidential transfer fee tokens that have been moved to the", "mint for withdrawal."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferFeeAmount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Amount withheld during confidential transfers, to be harvest to the mint."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "metadataPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the metadata address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "metadataAddress"; readonly docs: readonly ["Optional Account Address that holds the metadata."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenMetadata"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "updateAuthority"; readonly docs: readonly ["The authority that can sign to update the metadata."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that metadata belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "name"; readonly docs: readonly ["The longer name of the token."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "symbol"; readonly docs: readonly ["The shortened symbol for the token."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "uri"; readonly docs: readonly ["The URI pointing to richer metadata."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "additionalMetadata"; readonly docs: readonly ["Any additional metadata about the token as key-value pairs."]; readonly type: { readonly kind: "mapTypeNode"; readonly key: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; readonly value: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; readonly count: { readonly kind: "prefixedCountNode"; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "groupPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the group address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "groupAddress"; readonly docs: readonly ["Optional account address that holds the group."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenGroup"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "updateAuthority"; readonly docs: readonly ["The authority that can sign to update the group."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that group belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "size"; readonly docs: readonly ["The current number of group members."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "maxSize"; readonly docs: readonly ["The maximum number of group members."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "groupMemberPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the member address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "memberAddress"; readonly docs: readonly ["Optional account address that holds the member."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenGroupMember"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that member belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "group"; readonly docs: readonly ["The pubkey of the `TokenGroup`."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "memberNumber"; readonly docs: readonly ["The member number."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "definedTypeNode"; readonly name: "extensionType"; readonly docs: readonly ["Extensions that can be applied to mints or accounts. Mint extensions must", "only be applied to mint accounts, and account extensions must only be", "applied to token holding accounts."]; readonly type: { readonly kind: "enumTypeNode"; readonly variants: readonly [{ readonly kind: "enumEmptyVariantTypeNode"; readonly name: "uninitialized"; readonly docs: readonly ["Used as padding if the account size would otherwise be 355, same as a multisig"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferFeeConfig"; readonly docs: readonly ["Includes transfer fee rate info and accompanying authorities to withdraw", "and set the fee"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferFeeAmount"; readonly docs: readonly ["Includes withheld transfer fees"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "mintCloseAuthority"; readonly docs: readonly ["Includes an optional mint close authority"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferMint"; readonly docs: readonly ["Auditor configuration for confidential transfers"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferAccount"; readonly docs: readonly ["State for confidential transfers"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "defaultAccountState"; readonly docs: readonly ["Specifies the default Account::state for new Accounts"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "immutableOwner"; readonly docs: readonly ["Indicates that the Account owner authority cannot be changed"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "memoTransfer"; readonly docs: readonly ["Require inbound transfers to have memo"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "nonTransferable"; readonly docs: readonly ["Indicates that the tokens from this mint can't be transferred"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "interestBearingConfig"; readonly docs: readonly ["Tokens accrue interest over time,"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "cpiGuard"; readonly docs: readonly ["Locks privileged token operations from happening via CPI"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "permanentDelegate"; readonly docs: readonly ["Includes an optional permanent delegate"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "nonTransferableAccount"; readonly docs: readonly ["Indicates that the tokens in this account belong to a non-transferable", "mint"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferHook"; readonly docs: readonly ["Mint requires a CPI to a program implementing the \"transfer hook\"", "interface"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferHookAccount"; readonly docs: readonly ["Indicates that the tokens in this account belong to a mint with a", "transfer hook"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferFee"; readonly docs: readonly ["Includes encrypted withheld fees and the encryption public that they are", "encrypted under"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferFeeAmount"; readonly docs: readonly ["Includes confidential withheld transfer fees"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "metadataPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds metadata"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenMetadata"; readonly docs: readonly ["Mint contains token-metadata"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "groupPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds group configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenGroup"; readonly docs: readonly ["Mint contains token group configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "groupMemberPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds group member configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenGroupMember"; readonly docs: readonly ["Mint contains token group member configurations"]; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "definedTypeNode"; readonly name: "tokenMetadataField"; readonly docs: readonly ["Fields in the metadata account, used for updating."]; readonly type: { readonly kind: "enumTypeNode"; readonly variants: readonly [{ readonly kind: "enumEmptyVariantTypeNode"; readonly name: "name"; readonly docs: readonly ["The name field, corresponding to `TokenMetadata.name`"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "symbol"; readonly docs: readonly ["The symbol field, corresponding to `TokenMetadata.symbol`"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "uri"; readonly docs: readonly ["The uri field, corresponding to `TokenMetadata.uri`"]; }, { readonly kind: "enumTupleVariantTypeNode"; readonly name: "key"; readonly docs: readonly ["A user field, whose key is given by the associated string"]; readonly tuple: { readonly kind: "tupleTypeNode"; readonly items: readonly [{ readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }]; }; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]>; pdas: {}; instructions: idl.ParsedInstructions= newerTransferFee.epoch."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "transferFee"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferFeeAmount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Withheld transfer fee tokens that can be claimed by the fee authority."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "mintCloseAuthority"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "closeAuthority"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferMint"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Authority to modify the `ConfidentialTransferMint` configuration and to", "approve new accounts (if `auto_approve_new_accounts` is true).", "", "The legacy Token Multisig account is not supported as the authority."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "autoApproveNewAccounts"; readonly docs: readonly ["Indicate if newly configured accounts must be approved by the", "`authority` before they may be used by the user.", "", "* If `true`, no approval is required and new accounts may be used immediately.", "* If `false`, the authority must approve newly configured accounts (see", " `ConfidentialTransferInstruction::ConfigureAccount`)."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "auditorElgamalPubkey"; readonly docs: readonly ["Authority to decode any transfer amount in a confidential transfer."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "approved"; readonly docs: readonly ["`true` if this account has been approved for use. All confidential", "transfer operations for the account will fail until approval is granted."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "elgamalPubkey"; readonly docs: readonly ["The public key associated with ElGamal encryption."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceLow"; readonly docs: readonly ["The low 16 bits of the pending balance (encrypted by `elgamal_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceHigh"; readonly docs: readonly ["The high 48 bits of the pending balance (encrypted by `elgamal_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "availableBalance"; readonly docs: readonly ["The available balance (encrypted by `encrypiton_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "decryptableAvailableBalance"; readonly docs: readonly ["The decryptable available balance."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "decryptableBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "allowConfidentialCredits"; readonly docs: readonly ["If `false`, the extended account rejects any incoming confidential transfers."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "allowNonConfidentialCredits"; readonly docs: readonly ["If `false`, the base account rejects any incoming transfers."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceCreditCounter"; readonly docs: readonly ["The total number of `Deposit` and `Transfer` instructions that have credited `pending_balance`."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "maximumPendingBalanceCreditCounter"; readonly docs: readonly ["The maximum number of `Deposit` and `Transfer` instructions that can", "credit `pending_balance` before the `ApplyPendingBalance`", "instruction is executed."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "expectedPendingBalanceCreditCounter"; readonly docs: readonly ["The `expected_pending_balance_credit_counter` value that was included in", "the last `ApplyPendingBalance` instruction."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "actualPendingBalanceCreditCounter"; readonly docs: readonly ["The actual `pending_balance_credit_counter` when the last", "`ApplyPendingBalance` instruction was executed."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "defaultAccountState"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "state"; readonly docs: readonly []; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "accountState"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "immutableOwner"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "memoTransfer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "requireIncomingTransferMemos"; readonly docs: readonly ["Require transfers into this account to be accompanied by a memo."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "nonTransferable"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "interestBearingConfig"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "rateAuthority"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "initializationTimestamp"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "preUpdateAverageRate"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "i16"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "lastUpdateTimestamp"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "currentRate"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "i16"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "cpiGuard"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "lockCpi"; readonly docs: readonly ["Lock certain token operations from taking place within CPI for this account."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "permanentDelegate"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "delegate"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "nonTransferableAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferHook"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["The transfer hook update authority."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "programId"; readonly docs: readonly ["The transfer hook program account."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferHookAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "transferring"; readonly docs: readonly ["Whether or not this account is currently transferring tokens", "True during the transfer hook cpi, otherwise false."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferFee"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority to set the withdraw withheld authority ElGamal key."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "elgamalPubkey"; readonly docs: readonly ["Withheld fees from accounts must be encrypted with this ElGamal key.", "", "Note that whoever holds the ElGamal private key for this ElGamal public", "key has the ability to decode any withheld fee amount that are", "associated with accounts. When combined with the fee parameters, the", "withheld fee amounts can reveal information about transfer amounts."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "harvestToMintEnabled"; readonly docs: readonly ["If `false`, the harvest of withheld tokens to mint is rejected."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Withheld confidential transfer fee tokens that have been moved to the", "mint for withdrawal."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferFeeAmount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Amount withheld during confidential transfers, to be harvest to the mint."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "metadataPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the metadata address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "metadataAddress"; readonly docs: readonly ["Optional Account Address that holds the metadata."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenMetadata"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "updateAuthority"; readonly docs: readonly ["The authority that can sign to update the metadata."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that metadata belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "name"; readonly docs: readonly ["The longer name of the token."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "symbol"; readonly docs: readonly ["The shortened symbol for the token."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "uri"; readonly docs: readonly ["The URI pointing to richer metadata."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "additionalMetadata"; readonly docs: readonly ["Any additional metadata about the token as key-value pairs."]; readonly type: { readonly kind: "mapTypeNode"; readonly key: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; readonly value: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; readonly count: { readonly kind: "prefixedCountNode"; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "groupPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the group address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "groupAddress"; readonly docs: readonly ["Optional account address that holds the group."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenGroup"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "updateAuthority"; readonly docs: readonly ["The authority that can sign to update the group."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that group belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "size"; readonly docs: readonly ["The current number of group members."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "maxSize"; readonly docs: readonly ["The maximum number of group members."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "groupMemberPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the member address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "memberAddress"; readonly docs: readonly ["Optional account address that holds the member."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenGroupMember"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that member belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "group"; readonly docs: readonly ["The pubkey of the `TokenGroup`."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "memberNumber"; readonly docs: readonly ["The member number."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "definedTypeNode"; readonly name: "extensionType"; readonly docs: readonly ["Extensions that can be applied to mints or accounts. Mint extensions must", "only be applied to mint accounts, and account extensions must only be", "applied to token holding accounts."]; readonly type: { readonly kind: "enumTypeNode"; readonly variants: readonly [{ readonly kind: "enumEmptyVariantTypeNode"; readonly name: "uninitialized"; readonly docs: readonly ["Used as padding if the account size would otherwise be 355, same as a multisig"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferFeeConfig"; readonly docs: readonly ["Includes transfer fee rate info and accompanying authorities to withdraw", "and set the fee"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferFeeAmount"; readonly docs: readonly ["Includes withheld transfer fees"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "mintCloseAuthority"; readonly docs: readonly ["Includes an optional mint close authority"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferMint"; readonly docs: readonly ["Auditor configuration for confidential transfers"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferAccount"; readonly docs: readonly ["State for confidential transfers"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "defaultAccountState"; readonly docs: readonly ["Specifies the default Account::state for new Accounts"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "immutableOwner"; readonly docs: readonly ["Indicates that the Account owner authority cannot be changed"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "memoTransfer"; readonly docs: readonly ["Require inbound transfers to have memo"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "nonTransferable"; readonly docs: readonly ["Indicates that the tokens from this mint can't be transferred"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "interestBearingConfig"; readonly docs: readonly ["Tokens accrue interest over time,"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "cpiGuard"; readonly docs: readonly ["Locks privileged token operations from happening via CPI"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "permanentDelegate"; readonly docs: readonly ["Includes an optional permanent delegate"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "nonTransferableAccount"; readonly docs: readonly ["Indicates that the tokens in this account belong to a non-transferable", "mint"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferHook"; readonly docs: readonly ["Mint requires a CPI to a program implementing the \"transfer hook\"", "interface"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferHookAccount"; readonly docs: readonly ["Indicates that the tokens in this account belong to a mint with a", "transfer hook"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferFee"; readonly docs: readonly ["Includes encrypted withheld fees and the encryption public that they are", "encrypted under"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferFeeAmount"; readonly docs: readonly ["Includes confidential withheld transfer fees"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "metadataPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds metadata"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenMetadata"; readonly docs: readonly ["Mint contains token-metadata"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "groupPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds group configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenGroup"; readonly docs: readonly ["Mint contains token group configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "groupMemberPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds group member configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenGroupMember"; readonly docs: readonly ["Mint contains token group member configurations"]; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "definedTypeNode"; readonly name: "tokenMetadataField"; readonly docs: readonly ["Fields in the metadata account, used for updating."]; readonly type: { readonly kind: "enumTypeNode"; readonly variants: readonly [{ readonly kind: "enumEmptyVariantTypeNode"; readonly name: "name"; readonly docs: readonly ["The name field, corresponding to `TokenMetadata.name`"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "symbol"; readonly docs: readonly ["The symbol field, corresponding to `TokenMetadata.symbol`"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "uri"; readonly docs: readonly ["The uri field, corresponding to `TokenMetadata.uri`"]; }, { readonly kind: "enumTupleVariantTypeNode"; readonly name: "key"; readonly docs: readonly ["A user field, whose key is given by the associated string"]; readonly tuple: { readonly kind: "tupleTypeNode"; readonly items: readonly [{ readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }]; }; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]>>; accounts: idl.AccountDefinitions= newerTransferFee.epoch."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "transferFee"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferFeeAmount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Withheld transfer fee tokens that can be claimed by the fee authority."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "mintCloseAuthority"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "closeAuthority"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferMint"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Authority to modify the `ConfidentialTransferMint` configuration and to", "approve new accounts (if `auto_approve_new_accounts` is true).", "", "The legacy Token Multisig account is not supported as the authority."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "autoApproveNewAccounts"; readonly docs: readonly ["Indicate if newly configured accounts must be approved by the", "`authority` before they may be used by the user.", "", "* If `true`, no approval is required and new accounts may be used immediately.", "* If `false`, the authority must approve newly configured accounts (see", " `ConfidentialTransferInstruction::ConfigureAccount`)."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "auditorElgamalPubkey"; readonly docs: readonly ["Authority to decode any transfer amount in a confidential transfer."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "approved"; readonly docs: readonly ["`true` if this account has been approved for use. All confidential", "transfer operations for the account will fail until approval is granted."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "elgamalPubkey"; readonly docs: readonly ["The public key associated with ElGamal encryption."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceLow"; readonly docs: readonly ["The low 16 bits of the pending balance (encrypted by `elgamal_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceHigh"; readonly docs: readonly ["The high 48 bits of the pending balance (encrypted by `elgamal_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "availableBalance"; readonly docs: readonly ["The available balance (encrypted by `encrypiton_pubkey`)."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "decryptableAvailableBalance"; readonly docs: readonly ["The decryptable available balance."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "decryptableBalance"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "allowConfidentialCredits"; readonly docs: readonly ["If `false`, the extended account rejects any incoming confidential transfers."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "allowNonConfidentialCredits"; readonly docs: readonly ["If `false`, the base account rejects any incoming transfers."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "pendingBalanceCreditCounter"; readonly docs: readonly ["The total number of `Deposit` and `Transfer` instructions that have credited `pending_balance`."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "maximumPendingBalanceCreditCounter"; readonly docs: readonly ["The maximum number of `Deposit` and `Transfer` instructions that can", "credit `pending_balance` before the `ApplyPendingBalance`", "instruction is executed."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "expectedPendingBalanceCreditCounter"; readonly docs: readonly ["The `expected_pending_balance_credit_counter` value that was included in", "the last `ApplyPendingBalance` instruction."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "actualPendingBalanceCreditCounter"; readonly docs: readonly ["The actual `pending_balance_credit_counter` when the last", "`ApplyPendingBalance` instruction was executed."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "defaultAccountState"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "state"; readonly docs: readonly []; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "accountState"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "immutableOwner"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "memoTransfer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "requireIncomingTransferMemos"; readonly docs: readonly ["Require transfers into this account to be accompanied by a memo."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "nonTransferable"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "interestBearingConfig"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "rateAuthority"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "initializationTimestamp"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "preUpdateAverageRate"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "i16"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "lastUpdateTimestamp"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "currentRate"; readonly docs: readonly []; readonly type: { readonly kind: "numberTypeNode"; readonly format: "i16"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "cpiGuard"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "lockCpi"; readonly docs: readonly ["Lock certain token operations from taking place within CPI for this account."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "permanentDelegate"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "delegate"; readonly docs: readonly []; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "nonTransferableAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly []; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferHook"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["The transfer hook update authority."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "programId"; readonly docs: readonly ["The transfer hook program account."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "transferHookAccount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "transferring"; readonly docs: readonly ["Whether or not this account is currently transferring tokens", "True during the transfer hook cpi, otherwise false."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferFee"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority to set the withdraw withheld authority ElGamal key."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "elgamalPubkey"; readonly docs: readonly ["Withheld fees from accounts must be encrypted with this ElGamal key.", "", "Note that whoever holds the ElGamal private key for this ElGamal public", "key has the ability to decode any withheld fee amount that are", "associated with accounts. When combined with the fee parameters, the", "withheld fee amounts can reveal information about transfer amounts."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "harvestToMintEnabled"; readonly docs: readonly ["If `false`, the harvest of withheld tokens to mint is rejected."]; readonly type: { readonly kind: "booleanTypeNode"; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Withheld confidential transfer fee tokens that have been moved to the", "mint for withdrawal."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "confidentialTransferFeeAmount"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "withheldAmount"; readonly docs: readonly ["Amount withheld during confidential transfers, to be harvest to the mint."]; readonly type: { readonly kind: "definedTypeLinkNode"; readonly name: "encryptedBalance"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "metadataPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the metadata address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "metadataAddress"; readonly docs: readonly ["Optional Account Address that holds the metadata."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenMetadata"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "updateAuthority"; readonly docs: readonly ["The authority that can sign to update the metadata."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that metadata belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "name"; readonly docs: readonly ["The longer name of the token."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "symbol"; readonly docs: readonly ["The shortened symbol for the token."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "uri"; readonly docs: readonly ["The URI pointing to richer metadata."]; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "additionalMetadata"; readonly docs: readonly ["Any additional metadata about the token as key-value pairs."]; readonly type: { readonly kind: "mapTypeNode"; readonly key: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; readonly value: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; readonly count: { readonly kind: "prefixedCountNode"; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "groupPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the group address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "groupAddress"; readonly docs: readonly ["Optional account address that holds the group."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenGroup"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "updateAuthority"; readonly docs: readonly ["The authority that can sign to update the group."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that group belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "size"; readonly docs: readonly ["The current number of group members."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "maxSize"; readonly docs: readonly ["The maximum number of group members."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "groupMemberPointer"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "authority"; readonly docs: readonly ["Optional authority that can set the member address."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "memberAddress"; readonly docs: readonly ["Optional account address that holds the member."]; readonly type: { readonly kind: "zeroableOptionTypeNode"; readonly item: { readonly kind: "publicKeyTypeNode"; }; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "enumStructVariantTypeNode"; readonly name: "tokenGroupMember"; readonly struct: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "structTypeNode"; readonly fields: readonly [{ readonly kind: "structFieldTypeNode"; readonly name: "mint"; readonly docs: readonly ["The associated mint, used to counter spoofing to be sure that member belongs to a particular mint."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "group"; readonly docs: readonly ["The pubkey of the `TokenGroup`."]; readonly type: { readonly kind: "publicKeyTypeNode"; }; }, { readonly kind: "structFieldTypeNode"; readonly name: "memberNumber"; readonly docs: readonly ["The member number."]; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }]; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "definedTypeNode"; readonly name: "extensionType"; readonly docs: readonly ["Extensions that can be applied to mints or accounts. Mint extensions must", "only be applied to mint accounts, and account extensions must only be", "applied to token holding accounts."]; readonly type: { readonly kind: "enumTypeNode"; readonly variants: readonly [{ readonly kind: "enumEmptyVariantTypeNode"; readonly name: "uninitialized"; readonly docs: readonly ["Used as padding if the account size would otherwise be 355, same as a multisig"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferFeeConfig"; readonly docs: readonly ["Includes transfer fee rate info and accompanying authorities to withdraw", "and set the fee"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferFeeAmount"; readonly docs: readonly ["Includes withheld transfer fees"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "mintCloseAuthority"; readonly docs: readonly ["Includes an optional mint close authority"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferMint"; readonly docs: readonly ["Auditor configuration for confidential transfers"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferAccount"; readonly docs: readonly ["State for confidential transfers"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "defaultAccountState"; readonly docs: readonly ["Specifies the default Account::state for new Accounts"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "immutableOwner"; readonly docs: readonly ["Indicates that the Account owner authority cannot be changed"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "memoTransfer"; readonly docs: readonly ["Require inbound transfers to have memo"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "nonTransferable"; readonly docs: readonly ["Indicates that the tokens from this mint can't be transferred"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "interestBearingConfig"; readonly docs: readonly ["Tokens accrue interest over time,"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "cpiGuard"; readonly docs: readonly ["Locks privileged token operations from happening via CPI"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "permanentDelegate"; readonly docs: readonly ["Includes an optional permanent delegate"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "nonTransferableAccount"; readonly docs: readonly ["Indicates that the tokens in this account belong to a non-transferable", "mint"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferHook"; readonly docs: readonly ["Mint requires a CPI to a program implementing the \"transfer hook\"", "interface"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "transferHookAccount"; readonly docs: readonly ["Indicates that the tokens in this account belong to a mint with a", "transfer hook"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferFee"; readonly docs: readonly ["Includes encrypted withheld fees and the encryption public that they are", "encrypted under"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "confidentialTransferFeeAmount"; readonly docs: readonly ["Includes confidential withheld transfer fees"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "metadataPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds metadata"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenMetadata"; readonly docs: readonly ["Mint contains token-metadata"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "groupPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds group configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenGroup"; readonly docs: readonly ["Mint contains token group configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "groupMemberPointer"; readonly docs: readonly ["Mint contains a pointer to another account (or the same account) that", "holds group member configurations"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "tokenGroupMember"; readonly docs: readonly ["Mint contains token group member configurations"]; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u16"; readonly endian: "le"; }; }; }, { readonly kind: "definedTypeNode"; readonly name: "tokenMetadataField"; readonly docs: readonly ["Fields in the metadata account, used for updating."]; readonly type: { readonly kind: "enumTypeNode"; readonly variants: readonly [{ readonly kind: "enumEmptyVariantTypeNode"; readonly name: "name"; readonly docs: readonly ["The name field, corresponding to `TokenMetadata.name`"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "symbol"; readonly docs: readonly ["The symbol field, corresponding to `TokenMetadata.symbol`"]; }, { readonly kind: "enumEmptyVariantTypeNode"; readonly name: "uri"; readonly docs: readonly ["The uri field, corresponding to `TokenMetadata.uri`"]; }, { readonly kind: "enumTupleVariantTypeNode"; readonly name: "key"; readonly docs: readonly ["A user field, whose key is given by the associated string"]; readonly tuple: { readonly kind: "tupleTypeNode"; readonly items: readonly [{ readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; }]; }; }]; readonly size: { readonly kind: "numberTypeNode"; readonly format: "u8"; readonly endian: "le"; }; }; }]>>; }; additionalPrograms: { associatedToken: { name: "associatedToken"; contract: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"; types: idl.GetDefinedTypes; pdas: { associatedToken: (value: { mint: string; owner: string; tokenProgram: string; }) => string; }; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; }; }; token: { program: { name: "token"; contract: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"; types: idl.GetDefinedTypes; pdas: {}; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; additionalPrograms: { associatedToken: { name: "associatedToken"; contract: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"; types: idl.GetDefinedTypes; pdas: { associatedToken: (value: { mint: string; owner: string; tokenProgram: string; }) => string; }; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; }; }; system: { program: { name: "system"; contract: "11111111111111111111111111111111"; types: idl.GetDefinedTypes; pdas: {}; instructions: idl.ParsedInstructions>; accounts: idl.AccountDefinitions>; }; additionalPrograms: {}; }; }; export declare const sys: { createAccount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "payer"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "payerValueNode"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "newAccount"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 0; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "lamports"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "space"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "programAddress"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly byteDeltas: readonly [{ readonly kind: "instructionByteDeltaNode"; readonly value: { readonly kind: "argumentValueNode"; readonly name: "space"; }; readonly withHeader: true; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "createAccount"; readonly idlName: "CreateAccount"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; assign: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 1; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "programAddress"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "assign"; readonly idlName: "Assign"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; transferSol: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "source"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "destination"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 2; }; 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 name: "transferSol"; readonly idlName: "TransferSol"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; createAccountWithSeed: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "payer"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "payerValueNode"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "newAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "baseAccount"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 3; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "base"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "seed"; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "space"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "programAddress"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "createAccountWithSeed"; readonly idlName: "CreateAccountWithSeed"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; advanceNonceAccount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "nonceAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "recentBlockhashesSysvar"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRecentB1ockHashes11111111111111111111"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "nonceAuthority"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 4; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "advanceNonceAccount"; readonly idlName: "AdvanceNonceAccount"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; withdrawNonceAccount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "nonceAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "recipientAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "recentBlockhashesSysvar"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRecentB1ockHashes11111111111111111111"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "rentSysvar"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRent111111111111111111111111111111111"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "nonceAuthority"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 5; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "withdrawAmount"; 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 name: "withdrawNonceAccount"; readonly idlName: "WithdrawNonceAccount"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; initializeNonceAccount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "nonceAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "recentBlockhashesSysvar"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRecentB1ockHashes11111111111111111111"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "rentSysvar"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "SysvarRent111111111111111111111111111111111"; }; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 6; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "nonceAuthority"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeNonceAccount"; readonly idlName: "InitializeNonceAccount"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; authorizeNonceAccount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "nonceAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "nonceAuthority"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 7; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "newNonceAuthority"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "authorizeNonceAccount"; readonly idlName: "AuthorizeNonceAccount"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; allocate: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "newAccount"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 8; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "space"; 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 name: "allocate"; readonly idlName: "Allocate"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; allocateWithSeed: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "newAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "baseAccount"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 9; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "base"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "seed"; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "space"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "programAddress"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "allocateWithSeed"; readonly idlName: "AllocateWithSeed"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; assignWithSeed: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "account"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "baseAccount"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 10; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "base"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "seed"; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "programAddress"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "assignWithSeed"; readonly idlName: "AssignWithSeed"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; transferSolWithSeed: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "source"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "baseAccount"; readonly isWritable: false; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly []; }, { readonly kind: "instructionAccountNode"; readonly name: "destination"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 11; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "amount"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "fromSeed"; readonly type: { readonly kind: "sizePrefixTypeNode"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly prefix: { readonly kind: "numberTypeNode"; readonly format: "u64"; readonly endian: "le"; }; }; readonly docs: readonly []; }, { readonly kind: "instructionArgumentNode"; readonly name: "fromOwner"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly []; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "transferSolWithSeed"; readonly idlName: "TransferSolWithSeed"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; upgradeNonceAccount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "nonceAccount"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly []; }]; readonly arguments: readonly [{ readonly kind: "instructionArgumentNode"; readonly name: "discriminator"; readonly type: { readonly kind: "numberTypeNode"; readonly format: "u32"; readonly endian: "le"; }; readonly docs: readonly []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 12; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "upgradeNonceAccount"; readonly idlName: "UpgradeNonceAccount"; readonly docs: readonly []; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; }; export declare const token: { initializeMint: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; initializeAccount: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; initializeMultisig: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; transfer: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; approve: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; revoke: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; setAuthority: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; mintTo: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; burn: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; closeAccount: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; freezeAccount: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; thawAccount: (inst: idl.GetInstructionArgs<{ 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"; }, idl.GetDefinedTypes>) => Instruction; transferChecked: (inst: idl.GetInstructionArgs<{ 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 and Tokens will be transferred to the destination account.", "", "This instruction differs from Transfer in that the token mint and", "decimals value is checked by the caller. This may be useful when", "creating transactions offline or within a hardware wallet."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; approveChecked: (inst: idl.GetInstructionArgs<{ 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: "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: 13; }; 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 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: "approveChecked"; readonly docs: readonly ["Approves a delegate. A delegate is given the authority over tokens on", "behalf of the source account's owner.", "", "This instruction differs from Approve in that the token mint and", "decimals value is checked by the caller. This may be useful when", "creating transactions offline or within a hardware wallet."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; mintToChecked: (inst: idl.GetInstructionArgs<{ 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."]; }, { 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: 14; }; 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 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: "mintToChecked"; readonly docs: readonly ["Mints new tokens to an account. The native mint does not support minting.", "", "This instruction differs from MintTo in that the decimals value is", "checked by the caller. This may be useful when creating transactions", "offline or within a hardware wallet."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; burnChecked: (inst: idl.GetInstructionArgs<{ 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 []; readonly defaultValue: { readonly kind: "numberValueNode"; readonly number: 15; }; 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 burn."]; }, { 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: "burnChecked"; readonly docs: readonly ["Burns tokens by removing them from an account. `BurnChecked` does not", "support accounts associated with the native mint, use `CloseAccount` instead.", "", "This instruction differs from Burn in that the decimals value is checked", "by the caller. This may be useful when creating transactions offline or", "within a hardware wallet."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; initializeAccount2: (inst: idl.GetInstructionArgs<{ 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: "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: 16; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "owner"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly ["The new account's owner/multisignature."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeAccount2"; readonly docs: readonly ["Like InitializeAccount, but the owner pubkey is passed via instruction", "data rather than the accounts list. This variant may be preferable", "when using Cross Program Invocation from an instruction that does", "not need the owner's `AccountInfo` otherwise."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; syncNative: (inst: idl.GetInstructionArgs<{ 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 native token account to sync with its underlying lamports."]; }]; 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: 17; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "syncNative"; readonly docs: readonly ["Given a wrapped / native token account (a token account containing SOL)", "updates its amount field based on the account's underlying `lamports`.", "This is useful if a non-wrapped SOL account uses", "`system_instruction::transfer` to move lamports to a wrapped token", "account, and needs to have its token `amount` field updated."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; initializeAccount3: (inst: idl.GetInstructionArgs<{ 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 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: 18; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "owner"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly ["The new account's owner/multisignature."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeAccount3"; readonly docs: readonly ["Like InitializeAccount2, but does not require the Rent sysvar to be provided."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; initializeMultisig2: (inst: idl.GetInstructionArgs<{ 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 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: 19; }; 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: "initializeMultisig2"; readonly docs: readonly ["Like InitializeMultisig, but does not require the Rent sysvar to be provided."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; initializeMint2: (inst: idl.GetInstructionArgs<{ 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 to initialize."]; }]; 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: 20; }; 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 base 10 digits to the right of the decimal place."]; }, { readonly kind: "instructionArgumentNode"; readonly name: "mintAuthority"; readonly type: { readonly kind: "publicKeyTypeNode"; }; readonly docs: readonly ["The authority/multisignature to mint tokens."]; }, { 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 ["The optional freeze authority/multisignature of the mint."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeMint2"; readonly docs: readonly ["Like [`InitializeMint`], but does not require the Rent sysvar to be provided."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; getAccountDataSize: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The mint to calculate for."]; }]; 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: 21; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "getAccountDataSize"; readonly docs: readonly ["Gets the required size of an account for the given mint as a", "little-endian `u64`.", "", "Return data can be fetched using `sol_get_return_data` and deserializing", "the return data as a little-endian `u64`."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; initializeImmutableOwner: (inst: idl.GetInstructionArgs<{ 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 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: 22; }; readonly defaultValueStrategy: "omitted"; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "initializeImmutableOwner"; readonly docs: readonly ["Initialize the Immutable Owner extension for the given token account", "", "Fails if the account has already been initialized, so must be called", "before `InitializeAccount`.", "", "No-ops in this version of the program, but is included for compatibility", "with the Associated Token Account program."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; amountToUiAmount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The mint to calculate for."]; }]; 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: 23; }; 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 reformat."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "amountToUiAmount"; readonly docs: readonly ["Convert an Amount of tokens to a UiAmount `string`, using the given", "mint. In this version of the program, the mint can only specify the", "number of decimals.", "", "Fails on an invalid mint.", "", "Return data can be fetched using `sol_get_return_data` and deserialized", "with `String::from_utf8`."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; uiAmountToAmount: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The mint to calculate for."]; }]; 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: 24; }; readonly defaultValueStrategy: "omitted"; }, { readonly kind: "instructionArgumentNode"; readonly name: "uiAmount"; readonly type: { readonly kind: "stringTypeNode"; readonly encoding: "utf8"; }; readonly docs: readonly ["The ui_amount of tokens to reformat."]; }]; readonly discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "uiAmountToAmount"; readonly docs: readonly ["Convert a UiAmount of tokens to a little-endian `u64` raw Amount, using", "the given mint. In this version of the program, the mint can only", "specify the number of decimals.", "", "Return data can be fetched using `sol_get_return_data` and deserializing", "the return data as a little-endian `u64`."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; }; export declare const token2022: any; export declare const associatedToken: { createAssociatedToken: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "payer"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly ["Funding account (must be a system account)."]; readonly defaultValue: { readonly kind: "payerValueNode"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "ata"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Associated token account address to be created."]; readonly defaultValue: { readonly kind: "pdaValueNode"; readonly pda: { readonly kind: "pdaLinkNode"; readonly name: "associatedToken"; }; readonly seeds: readonly [{ readonly kind: "pdaSeedValueNode"; readonly name: "owner"; readonly value: { readonly kind: "accountValueNode"; readonly name: "owner"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "tokenProgram"; readonly value: { readonly kind: "accountValueNode"; readonly name: "tokenProgram"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "mint"; readonly value: { readonly kind: "accountValueNode"; readonly name: "mint"; }; }]; }; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Wallet address for the new associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The token mint for the new associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "systemProgram"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["System program."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "11111111111111111111111111111111"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "tokenProgram"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["SPL Token program."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"; }; }]; 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 discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "createAssociatedToken"; readonly docs: readonly ["Creates an associated token account for the given wallet address and", "token mint Returns an error if the account exists."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; createAssociatedTokenIdempotent: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "payer"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly ["Funding account (must be a system account)."]; readonly defaultValue: { readonly kind: "payerValueNode"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "ata"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Associated token account address to be created."]; readonly defaultValue: { readonly kind: "pdaValueNode"; readonly pda: { readonly kind: "pdaLinkNode"; readonly name: "associatedToken"; }; readonly seeds: readonly [{ readonly kind: "pdaSeedValueNode"; readonly name: "owner"; readonly value: { readonly kind: "accountValueNode"; readonly name: "owner"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "tokenProgram"; readonly value: { readonly kind: "accountValueNode"; readonly name: "tokenProgram"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "mint"; readonly value: { readonly kind: "accountValueNode"; readonly name: "mint"; }; }]; }; }, { readonly kind: "instructionAccountNode"; readonly name: "owner"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Wallet address for the new associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "mint"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["The token mint for the new associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "systemProgram"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["System program."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "11111111111111111111111111111111"; }; }, { readonly kind: "instructionAccountNode"; readonly name: "tokenProgram"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["SPL Token program."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"; }; }]; 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: "createAssociatedTokenIdempotent"; readonly docs: readonly ["Creates an associated token account for the given wallet address and", "token mint, if it doesn't already exist. Returns an error if the", "account exists, but with a different owner."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; recoverNestedAssociatedToken: (inst: idl.GetInstructionArgs<{ readonly kind: "instructionNode"; readonly accounts: readonly [{ readonly kind: "instructionAccountNode"; readonly name: "nestedAssociatedAccountAddress"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Nested associated token account, must be owned by `ownerAssociatedAccountAddress`."]; readonly defaultValue: { readonly kind: "pdaValueNode"; readonly pda: { readonly kind: "pdaLinkNode"; readonly name: "associatedToken"; }; readonly seeds: readonly [{ readonly kind: "pdaSeedValueNode"; readonly name: "owner"; readonly value: { readonly kind: "accountValueNode"; readonly name: "ownerAssociatedAccountAddress"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "tokenProgram"; readonly value: { readonly kind: "accountValueNode"; readonly name: "tokenProgram"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "mint"; readonly value: { readonly kind: "accountValueNode"; readonly name: "nestedTokenMintAddress"; }; }]; }; }, { readonly kind: "instructionAccountNode"; readonly name: "nestedTokenMintAddress"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Token mint for the nested associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "destinationAssociatedAccountAddress"; readonly isWritable: true; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Wallet's associated token account."]; readonly defaultValue: { readonly kind: "pdaValueNode"; readonly pda: { readonly kind: "pdaLinkNode"; readonly name: "associatedToken"; }; readonly seeds: readonly [{ readonly kind: "pdaSeedValueNode"; readonly name: "owner"; readonly value: { readonly kind: "accountValueNode"; readonly name: "walletAddress"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "tokenProgram"; readonly value: { readonly kind: "accountValueNode"; readonly name: "tokenProgram"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "mint"; readonly value: { readonly kind: "accountValueNode"; readonly name: "nestedTokenMintAddress"; }; }]; }; }, { readonly kind: "instructionAccountNode"; readonly name: "ownerAssociatedAccountAddress"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Owner associated token account address, must be owned by `walletAddress`."]; readonly defaultValue: { readonly kind: "pdaValueNode"; readonly pda: { readonly kind: "pdaLinkNode"; readonly name: "associatedToken"; }; readonly seeds: readonly [{ readonly kind: "pdaSeedValueNode"; readonly name: "owner"; readonly value: { readonly kind: "accountValueNode"; readonly name: "walletAddress"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "tokenProgram"; readonly value: { readonly kind: "accountValueNode"; readonly name: "tokenProgram"; }; }, { readonly kind: "pdaSeedValueNode"; readonly name: "mint"; readonly value: { readonly kind: "accountValueNode"; readonly name: "ownerTokenMintAddress"; }; }]; }; }, { readonly kind: "instructionAccountNode"; readonly name: "ownerTokenMintAddress"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["Token mint for the owner associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "walletAddress"; readonly isWritable: true; readonly isSigner: true; readonly isOptional: false; readonly docs: readonly ["Wallet address for the owner associated token account."]; }, { readonly kind: "instructionAccountNode"; readonly name: "tokenProgram"; readonly isWritable: false; readonly isSigner: false; readonly isOptional: false; readonly docs: readonly ["SPL Token program."]; readonly defaultValue: { readonly kind: "publicKeyValueNode"; readonly publicKey: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"; }; }]; 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 discriminators: readonly [{ readonly kind: "fieldDiscriminatorNode"; readonly name: "discriminator"; readonly offset: 0; }]; readonly name: "recoverNestedAssociatedToken"; readonly docs: readonly ["Transfers from and closes a nested associated token account: an", "associated token account owned by an associated token account.", "", "The tokens are moved from the nested associated token account to the", "wallet's associated token account, and the nested account lamports are", "moved to the wallet.", "", "Note: Nested token accounts are an anti-pattern, and almost always", "created unintentionally, so this instruction should only be used to", "recover from errors."]; readonly optionalAccountStrategy: "programId"; }, idl.GetDefinedTypes>) => Instruction; }; export declare const SYS_PROGRAM: "11111111111111111111111111111111"; export declare const TOKEN_PROGRAM: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"; export declare const TOKEN_PROGRAM2022: "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"; export declare const ASSOCIATED_TOKEN_PROGRAM: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"; export declare const tokenAddress: (value: { mint: string; owner: string; tokenProgram: string; }) => string; export declare const TokenAccount: (data: Uint8Array, opts?: P.ReaderOpts) => { TAG: "mint"; data: { decimals: number; mintAuthority: string | undefined; supply: bigint; isInitialized: boolean; freezeAuthority: string | undefined; }; } | { TAG: "token"; data: { state: { TAG: "uninitialized"; } | { TAG: "initialized"; } | { TAG: "frozen"; }; amount: bigint; mint: string; owner: string; delegate: string | undefined; isNative: bigint | undefined; delegatedAmount: bigint; closeAuthority: string | undefined; }; } | { TAG: "multisig"; data: { signers: string[]; isInitialized: boolean; m: number; n: number; }; }; export declare const AddressTableLookupData: (data: Uint8Array, opts?: P.ReaderOpts) => { TAG: "addressLookupTable"; data: { padding: number; authority: string | undefined; discriminator: number; deactivationSlot: bigint; lastExtendedSlot: bigint; lastExtendedSlotStartIndex: number; addresses: string[]; }; }; export declare const isOnCurve: typeof idl.isOnCurve; export declare const programAddress: typeof idl.programAddress; export declare function decodeAccount(contract: string, data: Bytes): unknown; export declare function parseInstruction(instruction: Instruction): unknown; export declare const CONTRACTS: Record; type TxData = Bytes | string; export declare function verifyTx(tx: TxData): void; export declare function getPublicKey(privateKey: Bytes): Bytes; export declare function getAddress(privateKey: Bytes): string; type PrivateKeyFormat = 'base58' | 'hex' | 'array'; export declare function formatPrivate(privateKey: Bytes, format?: PrivateKeyFormat): string | number[]; export declare function formatPublic(publicKey: Bytes): string; export declare function parseAddress(address: string): Bytes; export declare function createTx(address: string, instructions: Instruction[], blockhash: string, version?: Version): string; export declare function createTransferSol(from: string, to: string, amount: bigint, blockhash: string, version?: Version): string; export declare function createTokenTransfer(mint: string, from: string, to: string, amount: bigint, blockhash: string, tokenProgram?: string, version?: Version): string; export declare function createTokenTransferChecked(mint: string, from: string, to: string, amount: bigint, decimals: bigint, blockhash: string, tokenProgram?: string, version?: Version): string; export declare function signTx(privateKey: Bytes, data: TxData): [string, string]; /** * Warning: It is NOT secure to sign random msgs, * because someone can create a message which is an encoded transaction. */ export declare function signBytes(privateKey: Uint8Array, msg: Uint8Array): string; export declare function verifyBytes(sigature: string, publicKey: Uint8Array | string, msg: Uint8Array): boolean; export declare function getMessageFromTransaction(tx: string): string; //# sourceMappingURL=index.d.ts.map