@orca-so/wavebreak
Version:
The wavebreak JS client for interacting with the wavebreak program.
72 lines (71 loc) • 8.17 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_TAKEOVER_DISCRIMINATOR = 58;
export declare function getLpTakeoverDiscriminatorBytes(): ReadonlyUint8Array;
export type LpTakeoverInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountAuthorityConfig extends string | AccountMeta<string> = string, TAccountLpAuthority extends string | AccountMeta<string> = string, TAccountNewLpAuthority extends string | AccountMeta<string> = string, TAccountLpEscrow extends string | AccountMeta<string> = string, TAccountNewLpEscrow extends string | AccountMeta<string> = string, TAccountPositionMint extends string | AccountMeta<string> = string, TAccountPosition extends string | AccountMeta<string> = string, TAccountPositionTokenAccount extends string | AccountMeta<string> = string, TAccountNewPositionTokenAccount extends string | AccountMeta<string> = string, TAccountLockConfig extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TAccountToken22Program extends string | AccountMeta<string> = string, TAccountAtaProgram extends string | AccountMeta<string> = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL", TAccountWhirlpoolProgram extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority,
TAccountAuthorityConfig extends string ? ReadonlyAccount<TAccountAuthorityConfig> : TAccountAuthorityConfig,
TAccountLpAuthority extends string ? ReadonlyAccount<TAccountLpAuthority> : TAccountLpAuthority,
TAccountNewLpAuthority extends string ? ReadonlyAccount<TAccountNewLpAuthority> : TAccountNewLpAuthority,
TAccountLpEscrow extends string ? ReadonlyAccount<TAccountLpEscrow> : TAccountLpEscrow,
TAccountNewLpEscrow extends string ? ReadonlyAccount<TAccountNewLpEscrow> : TAccountNewLpEscrow,
TAccountPositionMint extends string ? ReadonlyAccount<TAccountPositionMint> : TAccountPositionMint,
TAccountPosition extends string ? ReadonlyAccount<TAccountPosition> : TAccountPosition,
TAccountPositionTokenAccount extends string ? WritableAccount<TAccountPositionTokenAccount> : TAccountPositionTokenAccount,
TAccountNewPositionTokenAccount extends string ? WritableAccount<TAccountNewPositionTokenAccount> : TAccountNewPositionTokenAccount,
TAccountLockConfig extends string ? WritableAccount<TAccountLockConfig> : TAccountLockConfig,
TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
TAccountToken22Program extends string ? ReadonlyAccount<TAccountToken22Program> : TAccountToken22Program,
TAccountAtaProgram extends string ? ReadonlyAccount<TAccountAtaProgram> : TAccountAtaProgram,
TAccountWhirlpoolProgram extends string ? ReadonlyAccount<TAccountWhirlpoolProgram> : TAccountWhirlpoolProgram,
...TRemainingAccounts
]>;
export type LpTakeoverInstructionData = {
discriminator: number;
};
export type LpTakeoverInstructionDataArgs = {};
export declare function getLpTakeoverInstructionDataEncoder(): FixedSizeEncoder<LpTakeoverInstructionDataArgs>;
export declare function getLpTakeoverInstructionDataDecoder(): FixedSizeDecoder<LpTakeoverInstructionData>;
export declare function getLpTakeoverInstructionDataCodec(): FixedSizeCodec<LpTakeoverInstructionDataArgs, LpTakeoverInstructionData>;
export type LpTakeoverInput<TAccountAuthority extends string = string, TAccountAuthorityConfig extends string = string, TAccountLpAuthority extends string = string, TAccountNewLpAuthority extends string = string, TAccountLpEscrow extends string = string, TAccountNewLpEscrow extends string = string, TAccountPositionMint extends string = string, TAccountPosition extends string = string, TAccountPositionTokenAccount extends string = string, TAccountNewPositionTokenAccount extends string = string, TAccountLockConfig extends string = string, TAccountSystemProgram extends string = string, TAccountToken22Program extends string = string, TAccountAtaProgram extends string = string, TAccountWhirlpoolProgram extends string = string> = {
authority: TransactionSigner<TAccountAuthority>;
authorityConfig: Address<TAccountAuthorityConfig>;
lpAuthority: Address<TAccountLpAuthority>;
newLpAuthority: Address<TAccountNewLpAuthority>;
lpEscrow: Address<TAccountLpEscrow>;
newLpEscrow: Address<TAccountNewLpEscrow>;
positionMint: Address<TAccountPositionMint>;
position: Address<TAccountPosition>;
positionTokenAccount: Address<TAccountPositionTokenAccount>;
newPositionTokenAccount: Address<TAccountNewPositionTokenAccount>;
lockConfig: Address<TAccountLockConfig>;
systemProgram?: Address<TAccountSystemProgram>;
token22Program: Address<TAccountToken22Program>;
ataProgram?: Address<TAccountAtaProgram>;
whirlpoolProgram: Address<TAccountWhirlpoolProgram>;
};
export declare function getLpTakeoverInstruction<TAccountAuthority extends string, TAccountAuthorityConfig extends string, TAccountLpAuthority extends string, TAccountNewLpAuthority extends string, TAccountLpEscrow extends string, TAccountNewLpEscrow extends string, TAccountPositionMint extends string, TAccountPosition extends string, TAccountPositionTokenAccount extends string, TAccountNewPositionTokenAccount extends string, TAccountLockConfig extends string, TAccountSystemProgram extends string, TAccountToken22Program extends string, TAccountAtaProgram extends string, TAccountWhirlpoolProgram extends string, TProgramAddress extends Address = typeof WAVEBREAK_PROGRAM_ADDRESS>(input: LpTakeoverInput<TAccountAuthority, TAccountAuthorityConfig, TAccountLpAuthority, TAccountNewLpAuthority, TAccountLpEscrow, TAccountNewLpEscrow, TAccountPositionMint, TAccountPosition, TAccountPositionTokenAccount, TAccountNewPositionTokenAccount, TAccountLockConfig, TAccountSystemProgram, TAccountToken22Program, TAccountAtaProgram, TAccountWhirlpoolProgram>, config?: {
programAddress?: TProgramAddress;
}): LpTakeoverInstruction<TProgramAddress, TAccountAuthority, TAccountAuthorityConfig, TAccountLpAuthority, TAccountNewLpAuthority, TAccountLpEscrow, TAccountNewLpEscrow, TAccountPositionMint, TAccountPosition, TAccountPositionTokenAccount, TAccountNewPositionTokenAccount, TAccountLockConfig, TAccountSystemProgram, TAccountToken22Program, TAccountAtaProgram, TAccountWhirlpoolProgram>;
export type ParsedLpTakeoverInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
programAddress: Address<TProgram>;
accounts: {
authority: TAccountMetas[0];
authorityConfig: TAccountMetas[1];
lpAuthority: TAccountMetas[2];
newLpAuthority: TAccountMetas[3];
lpEscrow: TAccountMetas[4];
newLpEscrow: TAccountMetas[5];
positionMint: TAccountMetas[6];
position: TAccountMetas[7];
positionTokenAccount: TAccountMetas[8];
newPositionTokenAccount: TAccountMetas[9];
lockConfig: TAccountMetas[10];
systemProgram: TAccountMetas[11];
token22Program: TAccountMetas[12];
ataProgram: TAccountMetas[13];
whirlpoolProgram: TAccountMetas[14];
};
data: LpTakeoverInstructionData;
};
export declare function parseLpTakeoverInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedLpTakeoverInstruction<TProgram, TAccountMetas>;