@orca-so/whirlpools-sdk
Version:
Typescript SDK to interact with Orca's Whirlpool program.
60 lines (59 loc) • 2.01 kB
TypeScript
import type { AccountMeta, PublicKey } from "@solana/web3.js";
export declare enum RemainingAccountsType {
TransferHookA = "transferHookA",
TransferHookB = "transferHookB",
TransferHookReward = "transferHookReward",
TransferHookInput = "transferHookInput",
TransferHookIntermediate = "transferHookIntermediate",
TransferHookOutput = "transferHookOutput",
SupplementalTickArrays = "supplementalTickArrays",
SupplementalTickArraysOne = "supplementalTickArraysOne",
SupplementalTickArraysTwo = "supplementalTickArraysTwo",
TransferHookDepositA = "transferHookDepositA",
TransferHookDepositB = "transferHookDepositB",
TransferHookWithdrawalA = "transferHookWithdrawalA",
TransferHookWithdrawalB = "transferHookWithdrawalB"
}
type RemainingAccountsAnchorType = {
transferHookA: object;
} | {
transferHookB: object;
} | {
transferHookReward: object;
} | {
transferHookInput: object;
} | {
transferHookIntermediate: object;
} | {
transferHookOutput: object;
} | {
supplementalTickArrays: object;
} | {
supplementalTickArraysOne: object;
} | {
supplementalTickArraysTwo: object;
} | {
TransferHookDepositA: object;
} | {
TransferHookDepositB: object;
} | {
TransferHookWithdrawalA: object;
} | {
TransferHookWithdrawalB: object;
};
export type RemainingAccountsSliceData = {
accountsType: RemainingAccountsAnchorType;
length: number;
};
export type RemainingAccountsInfoData = {
slices: RemainingAccountsSliceData[];
};
export type OptionRemainingAccountsInfoData = RemainingAccountsInfoData | null;
export declare class RemainingAccountsBuilder {
private remainingAccounts;
private slices;
addSlice(accountsType: RemainingAccountsType, accounts?: AccountMeta[]): this;
build(): [OptionRemainingAccountsInfoData, AccountMeta[] | undefined];
}
export declare function toSupplementalTickArrayAccountMetas(tickArrayPubkeys: PublicKey[] | undefined): AccountMeta[] | undefined;
export {};