/** * 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 Codec, type Decoder, type Encoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type Option, type OptionOrNullable, type ReadonlyAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from "@solana/kit"; import { PERPETUALS_PROGRAM_ADDRESS } from "../programs"; export declare const ADD_LIQUIDITY_DISCRIMINATOR: Uint8Array; export declare function getAddLiquidityDiscriminatorBytes(): ReadonlyUint8Array; export type AddLiquidityInstruction = string, TAccountFundingAccount extends string | AccountMeta = string, TAccountLpTokenAccount extends string | AccountMeta = string, TAccountTransferAuthority extends string | AccountMeta = string, TAccountPerpetuals extends string | AccountMeta = string, TAccountPool extends string | AccountMeta = string, TAccountCustody extends string | AccountMeta = string, TAccountCustodyOracleAccount extends string | AccountMeta = string, TAccountCustodyTokenAccount extends string | AccountMeta = string, TAccountLpTokenMint extends string | AccountMeta = string, TAccountTokenProgram extends string | AccountMeta = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", TAccountEventAuthority extends string | AccountMeta = string, TAccountProgram extends string | AccountMeta = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountOwner extends string ? WritableSignerAccount & AccountSignerMeta : TAccountOwner, TAccountFundingAccount extends string ? WritableAccount : TAccountFundingAccount, TAccountLpTokenAccount extends string ? WritableAccount : TAccountLpTokenAccount, TAccountTransferAuthority extends string ? ReadonlyAccount : TAccountTransferAuthority, TAccountPerpetuals extends string ? ReadonlyAccount : TAccountPerpetuals, TAccountPool extends string ? WritableAccount : TAccountPool, TAccountCustody extends string ? WritableAccount : TAccountCustody, TAccountCustodyOracleAccount extends string ? ReadonlyAccount : TAccountCustodyOracleAccount, TAccountCustodyTokenAccount extends string ? WritableAccount : TAccountCustodyTokenAccount, TAccountLpTokenMint extends string ? WritableAccount : TAccountLpTokenMint, TAccountTokenProgram extends string ? ReadonlyAccount : TAccountTokenProgram, TAccountEventAuthority extends string ? ReadonlyAccount : TAccountEventAuthority, TAccountProgram extends string ? ReadonlyAccount : TAccountProgram, ...TRemainingAccounts ]>; export type AddLiquidityInstructionData = { discriminator: ReadonlyUint8Array; tokenAmountIn: bigint; minLpAmountOut: bigint; tokenAmountPreSwap: Option; }; export type AddLiquidityInstructionDataArgs = { tokenAmountIn: number | bigint; minLpAmountOut: number | bigint; tokenAmountPreSwap: OptionOrNullable; }; export declare function getAddLiquidityInstructionDataEncoder(): Encoder; export declare function getAddLiquidityInstructionDataDecoder(): Decoder; export declare function getAddLiquidityInstructionDataCodec(): Codec; export type AddLiquidityInput = { owner: TransactionSigner; fundingAccount: Address; lpTokenAccount: Address; transferAuthority: Address; perpetuals: Address; pool: Address; custody: Address; custodyOracleAccount: Address; custodyTokenAccount: Address; lpTokenMint: Address; tokenProgram?: Address; eventAuthority: Address; program: Address; tokenAmountIn: AddLiquidityInstructionDataArgs["tokenAmountIn"]; minLpAmountOut: AddLiquidityInstructionDataArgs["minLpAmountOut"]; tokenAmountPreSwap: AddLiquidityInstructionDataArgs["tokenAmountPreSwap"]; }; export declare function getAddLiquidityInstruction(input: AddLiquidityInput, config?: { programAddress?: TProgramAddress; }): AddLiquidityInstruction; export type ParsedAddLiquidityInstruction = { programAddress: Address; accounts: { owner: TAccountMetas[0]; fundingAccount: TAccountMetas[1]; lpTokenAccount: TAccountMetas[2]; transferAuthority: TAccountMetas[3]; perpetuals: TAccountMetas[4]; pool: TAccountMetas[5]; custody: TAccountMetas[6]; custodyOracleAccount: TAccountMetas[7]; custodyTokenAccount: TAccountMetas[8]; lpTokenMint: TAccountMetas[9]; tokenProgram: TAccountMetas[10]; eventAuthority: TAccountMetas[11]; program: TAccountMetas[12]; }; data: AddLiquidityInstructionData; }; export declare function parseAddLiquidityInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedAddLiquidityInstruction; //# sourceMappingURL=addLiquidity.d.ts.map