@kamino-finance/kliquidity-sdk
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
238 lines • 9.83 kB
TypeScript
/**
* 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 { fetchEncodedAccount, fetchEncodedAccounts, type Account, type Address, type EncodedAccount, type FetchAccountConfig, type FetchAccountsConfig, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, type MaybeAccount, type MaybeEncodedAccount, type ReadonlyUint8Array } from '@solana/kit';
import { type KaminoRewardInfo, type KaminoRewardInfoArgs, type Price, type PriceArgs, type RebalanceRaw, type RebalanceRawArgs, type WithdrawalCaps, type WithdrawalCapsArgs } from '../types';
export declare const WHIRLPOOL_STRATEGY_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
export declare function getWhirlpoolStrategyDiscriminatorBytes(): ReadonlyUint8Array<ArrayBuffer>;
export type WhirlpoolStrategy = {
discriminator: ReadonlyUint8Array;
adminAuthority: Address;
globalConfig: Address;
baseVaultAuthority: Address;
baseVaultAuthorityBump: bigint;
pool: Address;
poolTokenVaultA: Address;
poolTokenVaultB: Address;
tickArrayLower: Address;
tickArrayUpper: Address;
position: Address;
positionMint: Address;
positionMetadata: Address;
positionTokenAccount: Address;
tokenAVault: Address;
tokenBVault: Address;
deprecated0: Array<Address>;
deprecated1: Array<bigint>;
tokenAMint: Address;
tokenBMint: Address;
tokenAMintDecimals: bigint;
tokenBMintDecimals: bigint;
tokenAAmounts: bigint;
tokenBAmounts: bigint;
tokenACollateralId: bigint;
tokenBCollateralId: bigint;
deprecated2: Address;
deprecated3: Address;
sharesMint: Address;
sharesMintDecimals: bigint;
sharesMintAuthority: Address;
sharesMintAuthorityBump: bigint;
sharesIssued: bigint;
status: bigint;
reward0Amount: bigint;
reward0Vault: Address;
reward0CollateralId: bigint;
reward0Decimals: bigint;
reward1Amount: bigint;
reward1Vault: Address;
reward1CollateralId: bigint;
reward1Decimals: bigint;
reward2Amount: bigint;
reward2Vault: Address;
reward2CollateralId: bigint;
reward2Decimals: bigint;
depositCapUsd: bigint;
feesACumulative: bigint;
feesBCumulative: bigint;
reward0AmountCumulative: bigint;
reward1AmountCumulative: bigint;
reward2AmountCumulative: bigint;
depositCapUsdPerIxn: bigint;
withdrawalCapA: WithdrawalCaps;
withdrawalCapB: WithdrawalCaps;
maxPriceDeviationBps: bigint;
swapVaultMaxSlippageBps: number;
swapVaultMaxSlippageFromReferenceBps: number;
strategyType: bigint;
padding0: bigint;
withdrawFee: bigint;
feesFee: bigint;
reward0Fee: bigint;
reward1Fee: bigint;
reward2Fee: bigint;
positionTimestamp: bigint;
kaminoRewards: Array<KaminoRewardInfo>;
strategyDex: bigint;
raydiumProtocolPositionOrBaseVaultAuthority: Address;
allowDepositWithoutInvest: bigint;
raydiumPoolConfigOrBaseVaultAuthority: Address;
depositBlocked: number;
creationStatus: number;
investBlocked: number;
/** share_calculation_method can be either DOLAR_BASED=0 or PROPORTION_BASED=1 */
shareCalculationMethod: number;
withdrawBlocked: number;
reservedFlag2: number;
localAdminBlocked: number;
flashVaultSwapAllowed: number;
referenceSwapPriceA: Price;
referenceSwapPriceB: Price;
isCommunity: number;
rebalanceType: number;
padding1: ReadonlyUint8Array;
rebalanceRaw: RebalanceRaw;
padding2: ReadonlyUint8Array;
tokenAFeesFromRewardsCumulative: bigint;
tokenBFeesFromRewardsCumulative: bigint;
strategyLookupTable: Address;
lastSwapUnevenStepTimestamp: bigint;
farm: Address;
rebalancesCap: WithdrawalCaps;
swapUnevenAuthority: Address;
tokenATokenProgram: Address;
tokenBTokenProgram: Address;
pendingAdmin: Address;
maxDeviationFromRefPriceOnInvestBps: number;
padding3: number;
lastInvestSlot: bigint;
padding4: bigint;
padding5: Array<bigint>;
padding6: Array<bigint>;
padding7: Array<bigint>;
padding8: Array<bigint>;
};
export type WhirlpoolStrategyArgs = {
adminAuthority: Address;
globalConfig: Address;
baseVaultAuthority: Address;
baseVaultAuthorityBump: number | bigint;
pool: Address;
poolTokenVaultA: Address;
poolTokenVaultB: Address;
tickArrayLower: Address;
tickArrayUpper: Address;
position: Address;
positionMint: Address;
positionMetadata: Address;
positionTokenAccount: Address;
tokenAVault: Address;
tokenBVault: Address;
deprecated0: Array<Address>;
deprecated1: Array<number | bigint>;
tokenAMint: Address;
tokenBMint: Address;
tokenAMintDecimals: number | bigint;
tokenBMintDecimals: number | bigint;
tokenAAmounts: number | bigint;
tokenBAmounts: number | bigint;
tokenACollateralId: number | bigint;
tokenBCollateralId: number | bigint;
deprecated2: Address;
deprecated3: Address;
sharesMint: Address;
sharesMintDecimals: number | bigint;
sharesMintAuthority: Address;
sharesMintAuthorityBump: number | bigint;
sharesIssued: number | bigint;
status: number | bigint;
reward0Amount: number | bigint;
reward0Vault: Address;
reward0CollateralId: number | bigint;
reward0Decimals: number | bigint;
reward1Amount: number | bigint;
reward1Vault: Address;
reward1CollateralId: number | bigint;
reward1Decimals: number | bigint;
reward2Amount: number | bigint;
reward2Vault: Address;
reward2CollateralId: number | bigint;
reward2Decimals: number | bigint;
depositCapUsd: number | bigint;
feesACumulative: number | bigint;
feesBCumulative: number | bigint;
reward0AmountCumulative: number | bigint;
reward1AmountCumulative: number | bigint;
reward2AmountCumulative: number | bigint;
depositCapUsdPerIxn: number | bigint;
withdrawalCapA: WithdrawalCapsArgs;
withdrawalCapB: WithdrawalCapsArgs;
maxPriceDeviationBps: number | bigint;
swapVaultMaxSlippageBps: number;
swapVaultMaxSlippageFromReferenceBps: number;
strategyType: number | bigint;
padding0: number | bigint;
withdrawFee: number | bigint;
feesFee: number | bigint;
reward0Fee: number | bigint;
reward1Fee: number | bigint;
reward2Fee: number | bigint;
positionTimestamp: number | bigint;
kaminoRewards: Array<KaminoRewardInfoArgs>;
strategyDex: number | bigint;
raydiumProtocolPositionOrBaseVaultAuthority: Address;
allowDepositWithoutInvest: number | bigint;
raydiumPoolConfigOrBaseVaultAuthority: Address;
depositBlocked: number;
creationStatus: number;
investBlocked: number;
/** share_calculation_method can be either DOLAR_BASED=0 or PROPORTION_BASED=1 */
shareCalculationMethod: number;
withdrawBlocked: number;
reservedFlag2: number;
localAdminBlocked: number;
flashVaultSwapAllowed: number;
referenceSwapPriceA: PriceArgs;
referenceSwapPriceB: PriceArgs;
isCommunity: number;
rebalanceType: number;
padding1: ReadonlyUint8Array;
rebalanceRaw: RebalanceRawArgs;
padding2: ReadonlyUint8Array;
tokenAFeesFromRewardsCumulative: number | bigint;
tokenBFeesFromRewardsCumulative: number | bigint;
strategyLookupTable: Address;
lastSwapUnevenStepTimestamp: number | bigint;
farm: Address;
rebalancesCap: WithdrawalCapsArgs;
swapUnevenAuthority: Address;
tokenATokenProgram: Address;
tokenBTokenProgram: Address;
pendingAdmin: Address;
maxDeviationFromRefPriceOnInvestBps: number;
padding3: number;
lastInvestSlot: number | bigint;
padding4: number | bigint;
padding5: Array<number | bigint>;
padding6: Array<number | bigint>;
padding7: Array<number | bigint>;
padding8: Array<number | bigint>;
};
/** Gets the encoder for {@link WhirlpoolStrategyArgs} account data. */
export declare function getWhirlpoolStrategyEncoder(): FixedSizeEncoder<WhirlpoolStrategyArgs>;
/** Gets the decoder for {@link WhirlpoolStrategy} account data. */
export declare function getWhirlpoolStrategyDecoder(): FixedSizeDecoder<WhirlpoolStrategy>;
/** Gets the codec for {@link WhirlpoolStrategy} account data. */
export declare function getWhirlpoolStrategyCodec(): FixedSizeCodec<WhirlpoolStrategyArgs, WhirlpoolStrategy>;
export declare function decodeWhirlpoolStrategy<TAddress extends string = string>(encodedAccount: EncodedAccount<TAddress>): Account<WhirlpoolStrategy, TAddress>;
export declare function decodeWhirlpoolStrategy<TAddress extends string = string>(encodedAccount: MaybeEncodedAccount<TAddress>): MaybeAccount<WhirlpoolStrategy, TAddress>;
export declare function fetchWhirlpoolStrategy<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<Account<WhirlpoolStrategy, TAddress>>;
export declare function fetchMaybeWhirlpoolStrategy<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<MaybeAccount<WhirlpoolStrategy, TAddress>>;
export declare function fetchAllWhirlpoolStrategy(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<Account<WhirlpoolStrategy>[]>;
export declare function fetchAllMaybeWhirlpoolStrategy(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<MaybeAccount<WhirlpoolStrategy>[]>;
export declare function getWhirlpoolStrategySize(): number;
//# sourceMappingURL=whirlpoolStrategy.d.ts.map