UNPKG

@indigo-labs/indigo-sdk

Version:

Indigo SDK for interacting with Indigo endpoints via lucid-evolution

33 lines (26 loc) 1.08 kB
import { TSchema, Data } from '@evolution-sdk/evolution'; import { OnChainDecimalSchema } from '../../types/on-chain-decimal'; export const InterestOracleDatumSchema = TSchema.Struct({ unitaryInterest: TSchema.Integer, interestRate: OnChainDecimalSchema, lastUpdated: TSchema.Integer, }); export type InterestOracleDatum = typeof InterestOracleDatumSchema.Type; const InterestOracleRedeemerSchema = TSchema.Struct({ newInterestRate: OnChainDecimalSchema, currentTime: TSchema.Integer, }); export type InterestOracleRedeemer = typeof InterestOracleRedeemerSchema.Type; export function serialiseFeedInterestOracleRedeemer( redeemer: InterestOracleRedeemer, ): string { return Data.withSchema(InterestOracleRedeemerSchema).toCBORHex(redeemer); } export function parseInterestOracleDatum(datum: string): InterestOracleDatum { return Data.withSchema(InterestOracleDatumSchema).fromCBORHex(datum); } export function serialiseInterestOracleDatum( datum: InterestOracleDatum, ): string { return Data.withSchema(InterestOracleDatumSchema).toCBORHex(datum); }