/** * 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 Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlyUint8Array } from "@solana/kit"; import { PERPETUALS_PROGRAM_ADDRESS } from "../programs"; export declare const GET_EXACT_OUT_SWAP_AMOUNT_AND_FEES_DISCRIMINATOR: Uint8Array; export declare function getGetExactOutSwapAmountAndFeesDiscriminatorBytes(): ReadonlyUint8Array; export type GetExactOutSwapAmountAndFeesInstruction = string, TAccountPool extends string | AccountMeta = string, TAccountReceivingCustody extends string | AccountMeta = string, TAccountReceivingCustodyOracleAccount extends string | AccountMeta = string, TAccountDispensingCustody extends string | AccountMeta = string, TAccountDispensingCustodyOracleAccount extends string | AccountMeta = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountPerpetuals extends string ? ReadonlyAccount : TAccountPerpetuals, TAccountPool extends string ? ReadonlyAccount : TAccountPool, TAccountReceivingCustody extends string ? ReadonlyAccount : TAccountReceivingCustody, TAccountReceivingCustodyOracleAccount extends string ? ReadonlyAccount : TAccountReceivingCustodyOracleAccount, TAccountDispensingCustody extends string ? ReadonlyAccount : TAccountDispensingCustody, TAccountDispensingCustodyOracleAccount extends string ? ReadonlyAccount : TAccountDispensingCustodyOracleAccount, ...TRemainingAccounts ]>; export type GetExactOutSwapAmountAndFeesInstructionData = { discriminator: ReadonlyUint8Array; amountOut: bigint; }; export type GetExactOutSwapAmountAndFeesInstructionDataArgs = { amountOut: number | bigint; }; export declare function getGetExactOutSwapAmountAndFeesInstructionDataEncoder(): FixedSizeEncoder; export declare function getGetExactOutSwapAmountAndFeesInstructionDataDecoder(): FixedSizeDecoder; export declare function getGetExactOutSwapAmountAndFeesInstructionDataCodec(): FixedSizeCodec; export type GetExactOutSwapAmountAndFeesInput = { perpetuals: Address; pool: Address; receivingCustody: Address; receivingCustodyOracleAccount: Address; dispensingCustody: Address; dispensingCustodyOracleAccount: Address; amountOut: GetExactOutSwapAmountAndFeesInstructionDataArgs["amountOut"]; }; export declare function getGetExactOutSwapAmountAndFeesInstruction(input: GetExactOutSwapAmountAndFeesInput, config?: { programAddress?: TProgramAddress; }): GetExactOutSwapAmountAndFeesInstruction; export type ParsedGetExactOutSwapAmountAndFeesInstruction = { programAddress: Address; accounts: { perpetuals: TAccountMetas[0]; pool: TAccountMetas[1]; receivingCustody: TAccountMetas[2]; receivingCustodyOracleAccount: TAccountMetas[3]; dispensingCustody: TAccountMetas[4]; dispensingCustodyOracleAccount: TAccountMetas[5]; }; data: GetExactOutSwapAmountAndFeesInstructionData; }; export declare function parseGetExactOutSwapAmountAndFeesInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedGetExactOutSwapAmountAndFeesInstruction; //# sourceMappingURL=getExactOutSwapAmountAndFees.d.ts.map