UNPKG

@wuwei-labs/srsly

Version:
93 lines 4.46 kB
/** * 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 { assertAccountExists, assertAccountsExist, combineCodec, decodeAccount, fetchEncodedAccount, fetchEncodedAccounts, fixDecoderSize, fixEncoderSize, getAddressDecoder, getAddressEncoder, getBytesDecoder, getBytesEncoder, getI64Decoder, getI64Encoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, getU16Decoder, getU16Encoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder, } from '@solana/kit'; import { getRentalStatusDecoder, getRentalStatusEncoder, } from '../types'; export const RENTAL_STATE_DISCRIMINATOR = new Uint8Array([97, 162, 29, 222, 251, 251, 180, 244]); export function getRentalStateDiscriminatorBytes() { return fixEncoderSize(getBytesEncoder(), 8).encode(RENTAL_STATE_DISCRIMINATOR); } /** Gets the encoder for {@link RentalStateArgs} account data. */ export function getRentalStateEncoder() { return transformEncoder(getStructEncoder([ ['discriminator', fixEncoderSize(getBytesEncoder(), 8)], ['version', getU32Encoder()], ['bump', getU8Encoder()], ['borrower', getAddressEncoder()], ['borrowerState', getAddressEncoder()], ['borrowerProfile', getAddressEncoder()], ['contract', getAddressEncoder()], ['rate', getU64Encoder()], ['lastPayment', getI64Encoder()], ['escrow', getU64Encoder()], ['startTime', getI64Encoder()], ['endTime', getI64Encoder()], ['serviceFee', getU64Encoder()], ['feeBps', getU16Encoder()], ['referrer', getOptionEncoder(getAddressEncoder())], ['discountBps', getU16Encoder()], ['bidPoints', getU64Encoder()], ['bidAtlas', getU64Encoder()], ['cancelDelayMin', getI64Encoder()], ['status', getRentalStatusEncoder()], ['updatedAt', getI64Encoder()], ['createdAt', getI64Encoder()], ]), value => ({ ...value, discriminator: RENTAL_STATE_DISCRIMINATOR })); } /** Gets the decoder for {@link RentalState} account data. */ export function getRentalStateDecoder() { return getStructDecoder([ ['discriminator', fixDecoderSize(getBytesDecoder(), 8)], ['version', getU32Decoder()], ['bump', getU8Decoder()], ['borrower', getAddressDecoder()], ['borrowerState', getAddressDecoder()], ['borrowerProfile', getAddressDecoder()], ['contract', getAddressDecoder()], ['rate', getU64Decoder()], ['lastPayment', getI64Decoder()], ['escrow', getU64Decoder()], ['startTime', getI64Decoder()], ['endTime', getI64Decoder()], ['serviceFee', getU64Decoder()], ['feeBps', getU16Decoder()], ['referrer', getOptionDecoder(getAddressDecoder())], ['discountBps', getU16Decoder()], ['bidPoints', getU64Decoder()], ['bidAtlas', getU64Decoder()], ['cancelDelayMin', getI64Decoder()], ['status', getRentalStatusDecoder()], ['updatedAt', getI64Decoder()], ['createdAt', getI64Decoder()], ]); } /** Gets the codec for {@link RentalState} account data. */ export function getRentalStateCodec() { return combineCodec(getRentalStateEncoder(), getRentalStateDecoder()); } export function decodeRentalState(encodedAccount) { return decodeAccount(encodedAccount, getRentalStateDecoder()); } export async function fetchRentalState(rpc, address, config) { const maybeAccount = await fetchMaybeRentalState(rpc, address, config); assertAccountExists(maybeAccount); return maybeAccount; } export async function fetchMaybeRentalState(rpc, address, config) { const maybeAccount = await fetchEncodedAccount(rpc, address, config); return decodeRentalState(maybeAccount); } export async function fetchAllRentalState(rpc, addresses, config) { const maybeAccounts = await fetchAllMaybeRentalState(rpc, addresses, config); assertAccountsExist(maybeAccounts); return maybeAccounts; } export async function fetchAllMaybeRentalState(rpc, addresses, config) { const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config); return maybeAccounts.map(maybeAccount => decodeRentalState(maybeAccount)); } //# sourceMappingURL=rentalState.js.map