/** * 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 { YVAULTS_PROGRAM_ADDRESS } from "../programs"; export declare const WITHDRAW_DISCRIMINATOR: Uint8Array; export declare function getWithdrawDiscriminatorBytes(): ReadonlyUint8Array; export type WithdrawInstruction = string, TAccountStrategy extends string | AccountMeta = string, TAccountGlobalConfig extends string | AccountMeta = string, TAccountPool extends string | AccountMeta = string, TAccountPosition extends string | AccountMeta = string, TAccountTickArrayLower extends string | AccountMeta = string, TAccountTickArrayUpper extends string | AccountMeta = string, TAccountTokenAVault extends string | AccountMeta = string, TAccountTokenBVault extends string | AccountMeta = string, TAccountBaseVaultAuthority extends string | AccountMeta = string, TAccountPoolTokenVaultA extends string | AccountMeta = string, TAccountPoolTokenVaultB extends string | AccountMeta = string, TAccountTokenAAta extends string | AccountMeta = string, TAccountTokenBAta extends string | AccountMeta = string, TAccountTokenAMint extends string | AccountMeta = string, TAccountTokenBMint extends string | AccountMeta = string, TAccountUserSharesAta extends string | AccountMeta = string, TAccountSharesMint extends string | AccountMeta = string, TAccountTreasuryFeeTokenAVault extends string | AccountMeta = string, TAccountTreasuryFeeTokenBVault extends string | AccountMeta = string, TAccountTokenProgram extends string | AccountMeta = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", TAccountTokenProgram2022 extends string | AccountMeta = string, TAccountTokenATokenProgram extends string | AccountMeta = string, TAccountTokenBTokenProgram extends string | AccountMeta = string, TAccountMemoProgram extends string | AccountMeta = string, TAccountPositionTokenAccount extends string | AccountMeta = string, TAccountPoolProgram extends string | AccountMeta = string, TAccountInstructionSysvarAccount extends string | AccountMeta = "Sysvar1nstructions1111111111111111111111111", TAccountEventAuthority extends string | AccountMeta = string, TRemainingAccounts extends readonly AccountMeta[] = []> = Instruction & InstructionWithData & InstructionWithAccounts<[ TAccountUser extends string ? WritableSignerAccount & AccountSignerMeta : TAccountUser, TAccountStrategy extends string ? WritableAccount : TAccountStrategy, TAccountGlobalConfig extends string ? ReadonlyAccount : TAccountGlobalConfig, TAccountPool extends string ? WritableAccount : TAccountPool, TAccountPosition extends string ? WritableAccount : TAccountPosition, TAccountTickArrayLower extends string ? WritableAccount : TAccountTickArrayLower, TAccountTickArrayUpper extends string ? WritableAccount : TAccountTickArrayUpper, TAccountTokenAVault extends string ? WritableAccount : TAccountTokenAVault, TAccountTokenBVault extends string ? WritableAccount : TAccountTokenBVault, TAccountBaseVaultAuthority extends string ? ReadonlyAccount : TAccountBaseVaultAuthority, TAccountPoolTokenVaultA extends string ? WritableAccount : TAccountPoolTokenVaultA, TAccountPoolTokenVaultB extends string ? WritableAccount : TAccountPoolTokenVaultB, TAccountTokenAAta extends string ? WritableAccount : TAccountTokenAAta, TAccountTokenBAta extends string ? WritableAccount : TAccountTokenBAta, TAccountTokenAMint extends string ? ReadonlyAccount : TAccountTokenAMint, TAccountTokenBMint extends string ? ReadonlyAccount : TAccountTokenBMint, TAccountUserSharesAta extends string ? WritableAccount : TAccountUserSharesAta, TAccountSharesMint extends string ? WritableAccount : TAccountSharesMint, TAccountTreasuryFeeTokenAVault extends string ? WritableAccount : TAccountTreasuryFeeTokenAVault, TAccountTreasuryFeeTokenBVault extends string ? WritableAccount : TAccountTreasuryFeeTokenBVault, TAccountTokenProgram extends string ? ReadonlyAccount : TAccountTokenProgram, TAccountTokenProgram2022 extends string ? ReadonlyAccount : TAccountTokenProgram2022, TAccountTokenATokenProgram extends string ? ReadonlyAccount : TAccountTokenATokenProgram, TAccountTokenBTokenProgram extends string ? ReadonlyAccount : TAccountTokenBTokenProgram, TAccountMemoProgram extends string ? ReadonlyAccount : TAccountMemoProgram, TAccountPositionTokenAccount extends string ? WritableAccount : TAccountPositionTokenAccount, TAccountPoolProgram extends string ? ReadonlyAccount : TAccountPoolProgram, TAccountInstructionSysvarAccount extends string ? ReadonlyAccount : TAccountInstructionSysvarAccount, TAccountEventAuthority extends string ? ReadonlyAccount : TAccountEventAuthority, ...TRemainingAccounts ]>; export type WithdrawInstructionData = { discriminator: ReadonlyUint8Array; sharesAmount: bigint; }; export type WithdrawInstructionDataArgs = { sharesAmount: number | bigint; }; export declare function getWithdrawInstructionDataEncoder(): FixedSizeEncoder; export declare function getWithdrawInstructionDataDecoder(): FixedSizeDecoder; export declare function getWithdrawInstructionDataCodec(): FixedSizeCodec; export type WithdrawInput = { user: TransactionSigner; strategy: Address; globalConfig: Address; pool: Address; position: Address; tickArrayLower: Address; tickArrayUpper: Address; tokenAVault: Address; tokenBVault: Address; baseVaultAuthority: Address; poolTokenVaultA: Address; poolTokenVaultB: Address; tokenAAta: Address; tokenBAta: Address; tokenAMint: Address; tokenBMint: Address; userSharesAta: Address; sharesMint: Address; treasuryFeeTokenAVault: Address; treasuryFeeTokenBVault: Address; tokenProgram?: Address; tokenProgram2022: Address; tokenATokenProgram: Address; tokenBTokenProgram: Address; memoProgram: Address; positionTokenAccount: Address; poolProgram: Address; instructionSysvarAccount?: Address; eventAuthority?: Address; sharesAmount: WithdrawInstructionDataArgs["sharesAmount"]; }; export declare function getWithdrawInstruction(input: WithdrawInput, config?: { programAddress?: TProgramAddress; }): WithdrawInstruction; export type ParsedWithdrawInstruction = { programAddress: Address; accounts: { user: TAccountMetas[0]; strategy: TAccountMetas[1]; globalConfig: TAccountMetas[2]; pool: TAccountMetas[3]; position: TAccountMetas[4]; tickArrayLower: TAccountMetas[5]; tickArrayUpper: TAccountMetas[6]; tokenAVault: TAccountMetas[7]; tokenBVault: TAccountMetas[8]; baseVaultAuthority: TAccountMetas[9]; poolTokenVaultA: TAccountMetas[10]; poolTokenVaultB: TAccountMetas[11]; tokenAAta: TAccountMetas[12]; tokenBAta: TAccountMetas[13]; tokenAMint: TAccountMetas[14]; tokenBMint: TAccountMetas[15]; userSharesAta: TAccountMetas[16]; sharesMint: TAccountMetas[17]; treasuryFeeTokenAVault: TAccountMetas[18]; treasuryFeeTokenBVault: TAccountMetas[19]; tokenProgram: TAccountMetas[20]; tokenProgram2022: TAccountMetas[21]; tokenATokenProgram: TAccountMetas[22]; tokenBTokenProgram: TAccountMetas[23]; memoProgram: TAccountMetas[24]; positionTokenAccount: TAccountMetas[25]; poolProgram: TAccountMetas[26]; instructionSysvarAccount: TAccountMetas[27]; eventAuthority?: TAccountMetas[28] | undefined; }; data: WithdrawInstructionData; }; export declare function parseWithdrawInstruction(instruction: Instruction & InstructionWithAccounts & InstructionWithData): ParsedWithdrawInstruction; //# sourceMappingURL=withdraw.d.ts.map