import { PoolFeesStruct, PoolFeesStructArgs } from "../types/poolFeesStruct.js"; import { PoolMetrics, PoolMetricsArgs } from "../types/poolMetrics.js"; import { RewardInfo, RewardInfoArgs } from "../types/rewardInfo.js"; import "../types/index.js"; import { Account, Address, EncodedAccount, FetchAccountConfig, FetchAccountsConfig, FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, MaybeAccount, MaybeEncodedAccount, ReadonlyUint8Array, fetchEncodedAccount, fetchEncodedAccounts } from "@solana/kit"; //#region src/generated/accounts/pool.d.ts declare const POOL_DISCRIMINATOR: ReadonlyUint8Array; declare function getPoolDiscriminatorBytes(): ReadonlyUint8Array; type Pool = { discriminator: ReadonlyUint8Array; /** Pool fee */ poolFees: PoolFeesStruct; /** token a mint */ tokenAMint: Address; /** token b mint */ tokenBMint: Address; /** token a vault */ tokenAVault: Address; /** token b vault */ tokenBVault: Address; /** Whitelisted vault to be able to buy pool before activation_point */ whitelistedVault: Address; /** partner */ partner: Address; /** liquidity share */ liquidity: bigint; /** padding, previous reserve amount, be careful to use that field */ padding: bigint; /** protocol a fee */ protocolAFee: bigint; /** protocol b fee */ protocolBFee: bigint; /** partner a fee */ partnerAFee: bigint; /** partner b fee */ partnerBFee: bigint; /** min price */ sqrtMinPrice: bigint; /** max price */ sqrtMaxPrice: bigint; /** current price */ sqrtPrice: bigint; /** Activation point, can be slot or timestamp */ activationPoint: bigint; /** Activation type, 0 means by slot, 1 means by timestamp */ activationType: number; /** pool status, 0: enable, 1 disable */ poolStatus: number; /** token a flag */ tokenAFlag: number; /** token b flag */ tokenBFlag: number; /** 0 is collect fee in both token, 1 only collect fee in token a, 2 only collect fee in token b */ collectFeeMode: number; /** pool type */ poolType: number; /** pool version, 0: max_fee is still capped at 50%, 1: max_fee is capped at 99% */ version: number; /** padding */ padding0: number; /** cumulative */ feeAPerLiquidity: Array; /** cumulative */ feeBPerLiquidity: Array; permanentLockLiquidity: bigint; /** metrics */ metrics: PoolMetrics; /** pool creator */ creator: Address; /** Padding for further use */ padding1: Array; /** Farming reward information */ rewardInfos: Array; }; type PoolArgs = { /** Pool fee */ poolFees: PoolFeesStructArgs; /** token a mint */ tokenAMint: Address; /** token b mint */ tokenBMint: Address; /** token a vault */ tokenAVault: Address; /** token b vault */ tokenBVault: Address; /** Whitelisted vault to be able to buy pool before activation_point */ whitelistedVault: Address; /** partner */ partner: Address; /** liquidity share */ liquidity: number | bigint; /** padding, previous reserve amount, be careful to use that field */ padding: number | bigint; /** protocol a fee */ protocolAFee: number | bigint; /** protocol b fee */ protocolBFee: number | bigint; /** partner a fee */ partnerAFee: number | bigint; /** partner b fee */ partnerBFee: number | bigint; /** min price */ sqrtMinPrice: number | bigint; /** max price */ sqrtMaxPrice: number | bigint; /** current price */ sqrtPrice: number | bigint; /** Activation point, can be slot or timestamp */ activationPoint: number | bigint; /** Activation type, 0 means by slot, 1 means by timestamp */ activationType: number; /** pool status, 0: enable, 1 disable */ poolStatus: number; /** token a flag */ tokenAFlag: number; /** token b flag */ tokenBFlag: number; /** 0 is collect fee in both token, 1 only collect fee in token a, 2 only collect fee in token b */ collectFeeMode: number; /** pool type */ poolType: number; /** pool version, 0: max_fee is still capped at 50%, 1: max_fee is capped at 99% */ version: number; /** padding */ padding0: number; /** cumulative */ feeAPerLiquidity: Array; /** cumulative */ feeBPerLiquidity: Array; permanentLockLiquidity: number | bigint; /** metrics */ metrics: PoolMetricsArgs; /** pool creator */ creator: Address; /** Padding for further use */ padding1: Array; /** Farming reward information */ rewardInfos: Array; }; /** Gets the encoder for {@link PoolArgs} account data. */ declare function getPoolEncoder(): FixedSizeEncoder; /** Gets the decoder for {@link Pool} account data. */ declare function getPoolDecoder(): FixedSizeDecoder; /** Gets the codec for {@link Pool} account data. */ declare function getPoolCodec(): FixedSizeCodec; declare function decodePool(encodedAccount: EncodedAccount): Account; declare function decodePool(encodedAccount: MaybeEncodedAccount): MaybeAccount; declare function fetchPool(rpc: Parameters[0], address: Address, config?: FetchAccountConfig): Promise>; declare function fetchMaybePool(rpc: Parameters[0], address: Address, config?: FetchAccountConfig): Promise>; declare function fetchAllPool(rpc: Parameters[0], addresses: Array
, config?: FetchAccountsConfig): Promise[]>; declare function fetchAllMaybePool(rpc: Parameters[0], addresses: Array
, config?: FetchAccountsConfig): Promise[]>; //#endregion export { POOL_DISCRIMINATOR, Pool, PoolArgs, decodePool, fetchAllMaybePool, fetchAllPool, fetchMaybePool, fetchPool, getPoolCodec, getPoolDecoder, getPoolDiscriminatorBytes, getPoolEncoder }; //# sourceMappingURL=pool.d.ts.map