UNPKG

@nosana/kit

Version:

Nosana KIT

114 lines (113 loc) 7.83 kB
/** * This code was AUTOGENERATED using the Codama library. * Please DO NOT EDIT THIS FILE, instead use visitors * to add features, then rerun Codama to update it. * * @see https://github.com/codama-idl/codama */ import { type AccountMeta, type AccountSignerMeta, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from '@solana/kit'; import { MERKLE_DISTRIBUTOR_PROGRAM_ADDRESS } from '../programs/index.js'; export declare const NEW_DISTRIBUTOR_DISCRIMINATOR: Uint8Array<ArrayBuffer>; export declare function getNewDistributorDiscriminatorBytes(): ReadonlyUint8Array; export type NewDistributorInstruction<TProgram extends string = typeof MERKLE_DISTRIBUTOR_PROGRAM_ADDRESS, TAccountDistributor extends string | AccountMeta<string> = string, TAccountClawbackReceiver extends string | AccountMeta<string> = string, TAccountMint extends string | AccountMeta<string> = string, TAccountTokenVault extends string | AccountMeta<string> = string, TAccountAdmin extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = '11111111111111111111111111111111', TAccountAssociatedTokenProgram extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[ TAccountDistributor extends string ? WritableAccount<TAccountDistributor> : TAccountDistributor, TAccountClawbackReceiver extends string ? WritableAccount<TAccountClawbackReceiver> : TAccountClawbackReceiver, TAccountMint extends string ? ReadonlyAccount<TAccountMint> : TAccountMint, TAccountTokenVault extends string ? ReadonlyAccount<TAccountTokenVault> : TAccountTokenVault, TAccountAdmin extends string ? WritableSignerAccount<TAccountAdmin> & AccountSignerMeta<TAccountAdmin> : TAccountAdmin, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, TAccountAssociatedTokenProgram extends string ? ReadonlyAccount<TAccountAssociatedTokenProgram> : TAccountAssociatedTokenProgram, TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram, ...TRemainingAccounts ]>; export type NewDistributorInstructionData = { discriminator: ReadonlyUint8Array; version: bigint; root: ReadonlyUint8Array; maxTotalClaim: bigint; maxNumNodes: bigint; startVestingTs: bigint; endVestingTs: bigint; clawbackStartTs: bigint; enableSlot: bigint; closable: boolean; }; export type NewDistributorInstructionDataArgs = { version: number | bigint; root: ReadonlyUint8Array; maxTotalClaim: number | bigint; maxNumNodes: number | bigint; startVestingTs: number | bigint; endVestingTs: number | bigint; clawbackStartTs: number | bigint; enableSlot: number | bigint; closable: boolean; }; export declare function getNewDistributorInstructionDataEncoder(): FixedSizeEncoder<NewDistributorInstructionDataArgs>; export declare function getNewDistributorInstructionDataDecoder(): FixedSizeDecoder<NewDistributorInstructionData>; export declare function getNewDistributorInstructionDataCodec(): FixedSizeCodec<NewDistributorInstructionDataArgs, NewDistributorInstructionData>; export type NewDistributorInput<TAccountDistributor extends string = string, TAccountClawbackReceiver extends string = string, TAccountMint extends string = string, TAccountTokenVault extends string = string, TAccountAdmin extends string = string, TAccountSystemProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountTokenProgram extends string = string> = { /** [MerkleDistributor]. */ distributor: Address<TAccountDistributor>; /** Clawback receiver token account */ clawbackReceiver: Address<TAccountClawbackReceiver>; /** The mint to distribute. */ mint: Address<TAccountMint>; /** * Token vault * Should create previously */ tokenVault: Address<TAccountTokenVault>; /** * Admin wallet, responsible for creating the distributor and paying for the transaction. * Also has the authority to set the clawback receiver and change itself. */ admin: TransactionSigner<TAccountAdmin>; /** The [System] program. */ systemProgram?: Address<TAccountSystemProgram>; /** The [Associated Token] program. */ associatedTokenProgram: Address<TAccountAssociatedTokenProgram>; /** The [Token] program. */ tokenProgram?: Address<TAccountTokenProgram>; version: NewDistributorInstructionDataArgs['version']; root: NewDistributorInstructionDataArgs['root']; maxTotalClaim: NewDistributorInstructionDataArgs['maxTotalClaim']; maxNumNodes: NewDistributorInstructionDataArgs['maxNumNodes']; startVestingTs: NewDistributorInstructionDataArgs['startVestingTs']; endVestingTs: NewDistributorInstructionDataArgs['endVestingTs']; clawbackStartTs: NewDistributorInstructionDataArgs['clawbackStartTs']; enableSlot: NewDistributorInstructionDataArgs['enableSlot']; closable: NewDistributorInstructionDataArgs['closable']; }; export declare function getNewDistributorInstruction<TAccountDistributor extends string, TAccountClawbackReceiver extends string, TAccountMint extends string, TAccountTokenVault extends string, TAccountAdmin extends string, TAccountSystemProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountTokenProgram extends string, TProgramAddress extends Address = typeof MERKLE_DISTRIBUTOR_PROGRAM_ADDRESS>(input: NewDistributorInput<TAccountDistributor, TAccountClawbackReceiver, TAccountMint, TAccountTokenVault, TAccountAdmin, TAccountSystemProgram, TAccountAssociatedTokenProgram, TAccountTokenProgram>, config?: { programAddress?: TProgramAddress; }): NewDistributorInstruction<TProgramAddress, TAccountDistributor, TAccountClawbackReceiver, TAccountMint, TAccountTokenVault, TAccountAdmin, TAccountSystemProgram, TAccountAssociatedTokenProgram, TAccountTokenProgram>; export type ParsedNewDistributorInstruction<TProgram extends string = typeof MERKLE_DISTRIBUTOR_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = { programAddress: Address<TProgram>; accounts: { /** [MerkleDistributor]. */ distributor: TAccountMetas[0]; /** Clawback receiver token account */ clawbackReceiver: TAccountMetas[1]; /** The mint to distribute. */ mint: TAccountMetas[2]; /** * Token vault * Should create previously */ tokenVault: TAccountMetas[3]; /** * Admin wallet, responsible for creating the distributor and paying for the transaction. * Also has the authority to set the clawback receiver and change itself. */ admin: TAccountMetas[4]; /** The [System] program. */ systemProgram: TAccountMetas[5]; /** The [Associated Token] program. */ associatedTokenProgram: TAccountMetas[6]; /** The [Token] program. */ tokenProgram: TAccountMetas[7]; }; data: NewDistributorInstructionData; }; export declare function parseNewDistributorInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedNewDistributorInstruction<TProgram, TAccountMetas>;