@kamino-finance/farms-sdk
Version:
149 lines • 8 kB
JavaScript
;
/**
* 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
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.FARM_STATE_DISCRIMINATOR = void 0;
exports.getFarmStateDiscriminatorBytes = getFarmStateDiscriminatorBytes;
exports.getFarmStateEncoder = getFarmStateEncoder;
exports.getFarmStateDecoder = getFarmStateDecoder;
exports.getFarmStateCodec = getFarmStateCodec;
exports.decodeFarmState = decodeFarmState;
exports.fetchFarmState = fetchFarmState;
exports.fetchMaybeFarmState = fetchMaybeFarmState;
exports.fetchAllFarmState = fetchAllFarmState;
exports.fetchAllMaybeFarmState = fetchAllMaybeFarmState;
exports.getFarmStateSize = getFarmStateSize;
const kit_1 = require("@solana/kit");
const types_1 = require("../types");
exports.FARM_STATE_DISCRIMINATOR = new Uint8Array([
198, 102, 216, 74, 63, 66, 163, 190,
]);
function getFarmStateDiscriminatorBytes() {
return (0, kit_1.fixEncoderSize)((0, kit_1.getBytesEncoder)(), 8).encode(exports.FARM_STATE_DISCRIMINATOR);
}
/** Gets the encoder for {@link FarmStateArgs} account data. */
function getFarmStateEncoder() {
return (0, kit_1.transformEncoder)((0, kit_1.getStructEncoder)([
["discriminator", (0, kit_1.fixEncoderSize)((0, kit_1.getBytesEncoder)(), 8)],
["farmAdmin", (0, kit_1.getAddressEncoder)()],
["globalConfig", (0, kit_1.getAddressEncoder)()],
["token", (0, types_1.getTokenInfoEncoder)()],
["rewardInfos", (0, kit_1.getArrayEncoder)((0, types_1.getRewardInfoEncoder)(), { size: 10 })],
["numRewardTokens", (0, kit_1.getU64Encoder)()],
["numUsers", (0, kit_1.getU64Encoder)()],
["totalStakedAmount", (0, kit_1.getU64Encoder)()],
["farmVault", (0, kit_1.getAddressEncoder)()],
["farmVaultsAuthority", (0, kit_1.getAddressEncoder)()],
["farmVaultsAuthorityBump", (0, kit_1.getU64Encoder)()],
["delegateAuthority", (0, kit_1.getAddressEncoder)()],
["timeUnit", (0, kit_1.getU8Encoder)()],
["isFarmFrozen", (0, kit_1.getU8Encoder)()],
["isFarmDelegated", (0, kit_1.getU8Encoder)()],
["isRewardUserOnceEnabled", (0, kit_1.getU8Encoder)()],
["isHarvestingPermissionless", (0, kit_1.getU8Encoder)()],
["padding0", (0, kit_1.fixEncoderSize)((0, kit_1.getBytesEncoder)(), 3)],
["withdrawAuthority", (0, kit_1.getAddressEncoder)()],
["depositWarmupPeriod", (0, kit_1.getU32Encoder)()],
["withdrawalCooldownPeriod", (0, kit_1.getU32Encoder)()],
["totalActiveStakeScaled", (0, kit_1.getU128Encoder)()],
["totalPendingStakeScaled", (0, kit_1.getU128Encoder)()],
["totalPendingAmount", (0, kit_1.getU64Encoder)()],
["slashedAmountCurrent", (0, kit_1.getU64Encoder)()],
["slashedAmountCumulative", (0, kit_1.getU64Encoder)()],
["slashedAmountSpillAddress", (0, kit_1.getAddressEncoder)()],
["lockingMode", (0, kit_1.getU64Encoder)()],
["lockingStartTimestamp", (0, kit_1.getU64Encoder)()],
["lockingDuration", (0, kit_1.getU64Encoder)()],
["lockingEarlyWithdrawalPenaltyBps", (0, kit_1.getU64Encoder)()],
["depositCapAmount", (0, kit_1.getU64Encoder)()],
["scopePrices", (0, kit_1.getAddressEncoder)()],
["scopeOraclePriceId", (0, kit_1.getU64Encoder)()],
["scopeOracleMaxAge", (0, kit_1.getU64Encoder)()],
["pendingFarmAdmin", (0, kit_1.getAddressEncoder)()],
["strategyId", (0, kit_1.getAddressEncoder)()],
["delegatedRpsAdmin", (0, kit_1.getAddressEncoder)()],
["vaultId", (0, kit_1.getAddressEncoder)()],
["secondDelegatedAuthority", (0, kit_1.getAddressEncoder)()],
["padding", (0, kit_1.getArrayEncoder)((0, kit_1.getU64Encoder)(), { size: 74 })],
]), (value) => ({ ...value, discriminator: exports.FARM_STATE_DISCRIMINATOR }));
}
/** Gets the decoder for {@link FarmState} account data. */
function getFarmStateDecoder() {
return (0, kit_1.getStructDecoder)([
["discriminator", (0, kit_1.fixDecoderSize)((0, kit_1.getBytesDecoder)(), 8)],
["farmAdmin", (0, kit_1.getAddressDecoder)()],
["globalConfig", (0, kit_1.getAddressDecoder)()],
["token", (0, types_1.getTokenInfoDecoder)()],
["rewardInfos", (0, kit_1.getArrayDecoder)((0, types_1.getRewardInfoDecoder)(), { size: 10 })],
["numRewardTokens", (0, kit_1.getU64Decoder)()],
["numUsers", (0, kit_1.getU64Decoder)()],
["totalStakedAmount", (0, kit_1.getU64Decoder)()],
["farmVault", (0, kit_1.getAddressDecoder)()],
["farmVaultsAuthority", (0, kit_1.getAddressDecoder)()],
["farmVaultsAuthorityBump", (0, kit_1.getU64Decoder)()],
["delegateAuthority", (0, kit_1.getAddressDecoder)()],
["timeUnit", (0, kit_1.getU8Decoder)()],
["isFarmFrozen", (0, kit_1.getU8Decoder)()],
["isFarmDelegated", (0, kit_1.getU8Decoder)()],
["isRewardUserOnceEnabled", (0, kit_1.getU8Decoder)()],
["isHarvestingPermissionless", (0, kit_1.getU8Decoder)()],
["padding0", (0, kit_1.fixDecoderSize)((0, kit_1.getBytesDecoder)(), 3)],
["withdrawAuthority", (0, kit_1.getAddressDecoder)()],
["depositWarmupPeriod", (0, kit_1.getU32Decoder)()],
["withdrawalCooldownPeriod", (0, kit_1.getU32Decoder)()],
["totalActiveStakeScaled", (0, kit_1.getU128Decoder)()],
["totalPendingStakeScaled", (0, kit_1.getU128Decoder)()],
["totalPendingAmount", (0, kit_1.getU64Decoder)()],
["slashedAmountCurrent", (0, kit_1.getU64Decoder)()],
["slashedAmountCumulative", (0, kit_1.getU64Decoder)()],
["slashedAmountSpillAddress", (0, kit_1.getAddressDecoder)()],
["lockingMode", (0, kit_1.getU64Decoder)()],
["lockingStartTimestamp", (0, kit_1.getU64Decoder)()],
["lockingDuration", (0, kit_1.getU64Decoder)()],
["lockingEarlyWithdrawalPenaltyBps", (0, kit_1.getU64Decoder)()],
["depositCapAmount", (0, kit_1.getU64Decoder)()],
["scopePrices", (0, kit_1.getAddressDecoder)()],
["scopeOraclePriceId", (0, kit_1.getU64Decoder)()],
["scopeOracleMaxAge", (0, kit_1.getU64Decoder)()],
["pendingFarmAdmin", (0, kit_1.getAddressDecoder)()],
["strategyId", (0, kit_1.getAddressDecoder)()],
["delegatedRpsAdmin", (0, kit_1.getAddressDecoder)()],
["vaultId", (0, kit_1.getAddressDecoder)()],
["secondDelegatedAuthority", (0, kit_1.getAddressDecoder)()],
["padding", (0, kit_1.getArrayDecoder)((0, kit_1.getU64Decoder)(), { size: 74 })],
]);
}
/** Gets the codec for {@link FarmState} account data. */
function getFarmStateCodec() {
return (0, kit_1.combineCodec)(getFarmStateEncoder(), getFarmStateDecoder());
}
function decodeFarmState(encodedAccount) {
return (0, kit_1.decodeAccount)(encodedAccount, getFarmStateDecoder());
}
async function fetchFarmState(rpc, address, config) {
const maybeAccount = await fetchMaybeFarmState(rpc, address, config);
(0, kit_1.assertAccountExists)(maybeAccount);
return maybeAccount;
}
async function fetchMaybeFarmState(rpc, address, config) {
const maybeAccount = await (0, kit_1.fetchEncodedAccount)(rpc, address, config);
return decodeFarmState(maybeAccount);
}
async function fetchAllFarmState(rpc, addresses, config) {
const maybeAccounts = await fetchAllMaybeFarmState(rpc, addresses, config);
(0, kit_1.assertAccountsExist)(maybeAccounts);
return maybeAccounts;
}
async function fetchAllMaybeFarmState(rpc, addresses, config) {
const maybeAccounts = await (0, kit_1.fetchEncodedAccounts)(rpc, addresses, config);
return maybeAccounts.map((maybeAccount) => decodeFarmState(maybeAccount));
}
function getFarmStateSize() {
return 8336;
}
//# sourceMappingURL=farmState.js.map