@orca-so/wavebreak
Version:
The wavebreak JS client for interacting with the wavebreak program.
120 lines (119 loc) • 14.3 kB
TypeScript
import { AccountMeta, AccountSignerMeta, Address, FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, Instruction, InstructionWithAccounts, InstructionWithData, ReadonlyAccount, ReadonlyUint8Array, TransactionSigner, WritableAccount, WritableSignerAccount } from '@solana/kit';
import { WAVEBREAK_PROGRAM_ADDRESS } from '../programs';
export declare const LP_HARVEST_DISCRIMINATOR = 56;
export declare function getLpHarvestDiscriminatorBytes(): ReadonlyUint8Array;
export type LpHarvestInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountLpAuthority extends string | AccountMeta<string> = string, TAccountLpEscrow extends string | AccountMeta<string> = string, TAccountWhirlpool extends string | AccountMeta<string> = string, TAccountPosition extends string | AccountMeta<string> = string, TAccountPositionTokenAccount extends string | AccountMeta<string> = string, TAccountLowerTickArray extends string | AccountMeta<string> = string, TAccountUpperTickArray extends string | AccountMeta<string> = string, TAccountTokenAMint extends string | AccountMeta<string> = string, TAccountTokenBMint extends string | AccountMeta<string> = string, TAccountTokenAAta extends string | AccountMeta<string> = string, TAccountTokenBAta extends string | AccountMeta<string> = string, TAccountTokenAVault extends string | AccountMeta<string> = string, TAccountTokenBVault extends string | AccountMeta<string> = string, TAccountReward1Mint extends string | AccountMeta<string> = string, TAccountReward2Mint extends string | AccountMeta<string> = string, TAccountReward3Mint extends string | AccountMeta<string> = string, TAccountReward1Ata extends string | AccountMeta<string> = string, TAccountReward2Ata extends string | AccountMeta<string> = string, TAccountReward3Ata extends string | AccountMeta<string> = string, TAccountReward1Vault extends string | AccountMeta<string> = string, TAccountReward2Vault extends string | AccountMeta<string> = string, TAccountReward3Vault extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TAccountTokenAProgram extends string | AccountMeta<string> = string, TAccountTokenBProgram extends string | AccountMeta<string> = string, TAccountReward1TokenProgram extends string | AccountMeta<string> = string, TAccountReward2TokenProgram extends string | AccountMeta<string> = string, TAccountReward3TokenProgram extends string | AccountMeta<string> = string, TAccountAtaProgram extends string | AccountMeta<string> = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL", TAccountMemoProgram extends string | AccountMeta<string> = string, TAccountWhirlpoolProgram extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
TAccountLpAuthority extends string ? WritableSignerAccount<TAccountLpAuthority> & AccountSignerMeta<TAccountLpAuthority> : TAccountLpAuthority,
TAccountLpEscrow extends string ? ReadonlyAccount<TAccountLpEscrow> : TAccountLpEscrow,
TAccountWhirlpool extends string ? WritableAccount<TAccountWhirlpool> : TAccountWhirlpool,
TAccountPosition extends string ? WritableAccount<TAccountPosition> : TAccountPosition,
TAccountPositionTokenAccount extends string ? ReadonlyAccount<TAccountPositionTokenAccount> : TAccountPositionTokenAccount,
TAccountLowerTickArray extends string ? ReadonlyAccount<TAccountLowerTickArray> : TAccountLowerTickArray,
TAccountUpperTickArray extends string ? ReadonlyAccount<TAccountUpperTickArray> : TAccountUpperTickArray,
TAccountTokenAMint extends string ? WritableAccount<TAccountTokenAMint> : TAccountTokenAMint,
TAccountTokenBMint extends string ? WritableAccount<TAccountTokenBMint> : TAccountTokenBMint,
TAccountTokenAAta extends string ? WritableAccount<TAccountTokenAAta> : TAccountTokenAAta,
TAccountTokenBAta extends string ? WritableAccount<TAccountTokenBAta> : TAccountTokenBAta,
TAccountTokenAVault extends string ? WritableAccount<TAccountTokenAVault> : TAccountTokenAVault,
TAccountTokenBVault extends string ? WritableAccount<TAccountTokenBVault> : TAccountTokenBVault,
TAccountReward1Mint extends string ? ReadonlyAccount<TAccountReward1Mint> : TAccountReward1Mint,
TAccountReward2Mint extends string ? ReadonlyAccount<TAccountReward2Mint> : TAccountReward2Mint,
TAccountReward3Mint extends string ? ReadonlyAccount<TAccountReward3Mint> : TAccountReward3Mint,
TAccountReward1Ata extends string ? WritableAccount<TAccountReward1Ata> : TAccountReward1Ata,
TAccountReward2Ata extends string ? WritableAccount<TAccountReward2Ata> : TAccountReward2Ata,
TAccountReward3Ata extends string ? WritableAccount<TAccountReward3Ata> : TAccountReward3Ata,
TAccountReward1Vault extends string ? WritableAccount<TAccountReward1Vault> : TAccountReward1Vault,
TAccountReward2Vault extends string ? WritableAccount<TAccountReward2Vault> : TAccountReward2Vault,
TAccountReward3Vault extends string ? WritableAccount<TAccountReward3Vault> : TAccountReward3Vault,
TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
TAccountTokenAProgram extends string ? ReadonlyAccount<TAccountTokenAProgram> : TAccountTokenAProgram,
TAccountTokenBProgram extends string ? ReadonlyAccount<TAccountTokenBProgram> : TAccountTokenBProgram,
TAccountReward1TokenProgram extends string ? ReadonlyAccount<TAccountReward1TokenProgram> : TAccountReward1TokenProgram,
TAccountReward2TokenProgram extends string ? ReadonlyAccount<TAccountReward2TokenProgram> : TAccountReward2TokenProgram,
TAccountReward3TokenProgram extends string ? ReadonlyAccount<TAccountReward3TokenProgram> : TAccountReward3TokenProgram,
TAccountAtaProgram extends string ? ReadonlyAccount<TAccountAtaProgram> : TAccountAtaProgram,
TAccountMemoProgram extends string ? ReadonlyAccount<TAccountMemoProgram> : TAccountMemoProgram,
TAccountWhirlpoolProgram extends string ? ReadonlyAccount<TAccountWhirlpoolProgram> : TAccountWhirlpoolProgram,
...TRemainingAccounts
]>;
export type LpHarvestInstructionData = {
discriminator: number;
};
export type LpHarvestInstructionDataArgs = {};
export declare function getLpHarvestInstructionDataEncoder(): FixedSizeEncoder<LpHarvestInstructionDataArgs>;
export declare function getLpHarvestInstructionDataDecoder(): FixedSizeDecoder<LpHarvestInstructionData>;
export declare function getLpHarvestInstructionDataCodec(): FixedSizeCodec<LpHarvestInstructionDataArgs, LpHarvestInstructionData>;
export type LpHarvestInput<TAccountLpAuthority extends string = string, TAccountLpEscrow extends string = string, TAccountWhirlpool extends string = string, TAccountPosition extends string = string, TAccountPositionTokenAccount extends string = string, TAccountLowerTickArray extends string = string, TAccountUpperTickArray extends string = string, TAccountTokenAMint extends string = string, TAccountTokenBMint extends string = string, TAccountTokenAAta extends string = string, TAccountTokenBAta extends string = string, TAccountTokenAVault extends string = string, TAccountTokenBVault extends string = string, TAccountReward1Mint extends string = string, TAccountReward2Mint extends string = string, TAccountReward3Mint extends string = string, TAccountReward1Ata extends string = string, TAccountReward2Ata extends string = string, TAccountReward3Ata extends string = string, TAccountReward1Vault extends string = string, TAccountReward2Vault extends string = string, TAccountReward3Vault extends string = string, TAccountSystemProgram extends string = string, TAccountTokenAProgram extends string = string, TAccountTokenBProgram extends string = string, TAccountReward1TokenProgram extends string = string, TAccountReward2TokenProgram extends string = string, TAccountReward3TokenProgram extends string = string, TAccountAtaProgram extends string = string, TAccountMemoProgram extends string = string, TAccountWhirlpoolProgram extends string = string> = {
lpAuthority: TransactionSigner<TAccountLpAuthority>;
lpEscrow: Address<TAccountLpEscrow>;
whirlpool: Address<TAccountWhirlpool>;
position: Address<TAccountPosition>;
positionTokenAccount: Address<TAccountPositionTokenAccount>;
lowerTickArray: Address<TAccountLowerTickArray>;
upperTickArray: Address<TAccountUpperTickArray>;
tokenAMint: Address<TAccountTokenAMint>;
tokenBMint: Address<TAccountTokenBMint>;
tokenAAta: Address<TAccountTokenAAta>;
tokenBAta: Address<TAccountTokenBAta>;
tokenAVault: Address<TAccountTokenAVault>;
tokenBVault: Address<TAccountTokenBVault>;
reward1Mint: Address<TAccountReward1Mint>;
reward2Mint: Address<TAccountReward2Mint>;
reward3Mint: Address<TAccountReward3Mint>;
reward1Ata: Address<TAccountReward1Ata>;
reward2Ata: Address<TAccountReward2Ata>;
reward3Ata: Address<TAccountReward3Ata>;
reward1Vault: Address<TAccountReward1Vault>;
reward2Vault: Address<TAccountReward2Vault>;
reward3Vault: Address<TAccountReward3Vault>;
systemProgram?: Address<TAccountSystemProgram>;
tokenAProgram: Address<TAccountTokenAProgram>;
tokenBProgram: Address<TAccountTokenBProgram>;
reward1TokenProgram: Address<TAccountReward1TokenProgram>;
reward2TokenProgram: Address<TAccountReward2TokenProgram>;
reward3TokenProgram: Address<TAccountReward3TokenProgram>;
ataProgram?: Address<TAccountAtaProgram>;
memoProgram: Address<TAccountMemoProgram>;
whirlpoolProgram: Address<TAccountWhirlpoolProgram>;
};
export declare function getLpHarvestInstruction<TAccountLpAuthority extends string, TAccountLpEscrow extends string, TAccountWhirlpool extends string, TAccountPosition extends string, TAccountPositionTokenAccount extends string, TAccountLowerTickArray extends string, TAccountUpperTickArray extends string, TAccountTokenAMint extends string, TAccountTokenBMint extends string, TAccountTokenAAta extends string, TAccountTokenBAta extends string, TAccountTokenAVault extends string, TAccountTokenBVault extends string, TAccountReward1Mint extends string, TAccountReward2Mint extends string, TAccountReward3Mint extends string, TAccountReward1Ata extends string, TAccountReward2Ata extends string, TAccountReward3Ata extends string, TAccountReward1Vault extends string, TAccountReward2Vault extends string, TAccountReward3Vault extends string, TAccountSystemProgram extends string, TAccountTokenAProgram extends string, TAccountTokenBProgram extends string, TAccountReward1TokenProgram extends string, TAccountReward2TokenProgram extends string, TAccountReward3TokenProgram extends string, TAccountAtaProgram extends string, TAccountMemoProgram extends string, TAccountWhirlpoolProgram extends string, TProgramAddress extends Address = typeof WAVEBREAK_PROGRAM_ADDRESS>(input: LpHarvestInput<TAccountLpAuthority, TAccountLpEscrow, TAccountWhirlpool, TAccountPosition, TAccountPositionTokenAccount, TAccountLowerTickArray, TAccountUpperTickArray, TAccountTokenAMint, TAccountTokenBMint, TAccountTokenAAta, TAccountTokenBAta, TAccountTokenAVault, TAccountTokenBVault, TAccountReward1Mint, TAccountReward2Mint, TAccountReward3Mint, TAccountReward1Ata, TAccountReward2Ata, TAccountReward3Ata, TAccountReward1Vault, TAccountReward2Vault, TAccountReward3Vault, TAccountSystemProgram, TAccountTokenAProgram, TAccountTokenBProgram, TAccountReward1TokenProgram, TAccountReward2TokenProgram, TAccountReward3TokenProgram, TAccountAtaProgram, TAccountMemoProgram, TAccountWhirlpoolProgram>, config?: {
programAddress?: TProgramAddress;
}): LpHarvestInstruction<TProgramAddress, TAccountLpAuthority, TAccountLpEscrow, TAccountWhirlpool, TAccountPosition, TAccountPositionTokenAccount, TAccountLowerTickArray, TAccountUpperTickArray, TAccountTokenAMint, TAccountTokenBMint, TAccountTokenAAta, TAccountTokenBAta, TAccountTokenAVault, TAccountTokenBVault, TAccountReward1Mint, TAccountReward2Mint, TAccountReward3Mint, TAccountReward1Ata, TAccountReward2Ata, TAccountReward3Ata, TAccountReward1Vault, TAccountReward2Vault, TAccountReward3Vault, TAccountSystemProgram, TAccountTokenAProgram, TAccountTokenBProgram, TAccountReward1TokenProgram, TAccountReward2TokenProgram, TAccountReward3TokenProgram, TAccountAtaProgram, TAccountMemoProgram, TAccountWhirlpoolProgram>;
export type ParsedLpHarvestInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
programAddress: Address<TProgram>;
accounts: {
lpAuthority: TAccountMetas[0];
lpEscrow: TAccountMetas[1];
whirlpool: TAccountMetas[2];
position: TAccountMetas[3];
positionTokenAccount: TAccountMetas[4];
lowerTickArray: TAccountMetas[5];
upperTickArray: TAccountMetas[6];
tokenAMint: TAccountMetas[7];
tokenBMint: TAccountMetas[8];
tokenAAta: TAccountMetas[9];
tokenBAta: TAccountMetas[10];
tokenAVault: TAccountMetas[11];
tokenBVault: TAccountMetas[12];
reward1Mint: TAccountMetas[13];
reward2Mint: TAccountMetas[14];
reward3Mint: TAccountMetas[15];
reward1Ata: TAccountMetas[16];
reward2Ata: TAccountMetas[17];
reward3Ata: TAccountMetas[18];
reward1Vault: TAccountMetas[19];
reward2Vault: TAccountMetas[20];
reward3Vault: TAccountMetas[21];
systemProgram: TAccountMetas[22];
tokenAProgram: TAccountMetas[23];
tokenBProgram: TAccountMetas[24];
reward1TokenProgram: TAccountMetas[25];
reward2TokenProgram: TAccountMetas[26];
reward3TokenProgram: TAccountMetas[27];
ataProgram: TAccountMetas[28];
memoProgram: TAccountMetas[29];
whirlpoolProgram: TAccountMetas[30];
};
data: LpHarvestInstructionData;
};
export declare function parseLpHarvestInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedLpHarvestInstruction<TProgram, TAccountMetas>;