UNPKG

@wuwei-labs/srsly

Version:

[![npm version](https://img.shields.io/npm/v/ts-sdk-example.svg)](https://www.npmjs.com/package/ts-sdk-example)

83 lines 3.11 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 { addDecoderSizePrefix, addEncoderSizePrefix, combineCodec, getAddressDecoder, getAddressEncoder, getBooleanDecoder, getBooleanEncoder, getDiscriminatedUnionDecoder, getDiscriminatedUnionEncoder, getI64Decoder, getI64Encoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getUnitDecoder, getUnitEncoder, getUtf8Decoder, getUtf8Encoder, } from '@solana/kit'; import { getEqualityDecoder, getEqualityEncoder, } from '.'; export function getTriggerEncoder() { return getDiscriminatedUnionEncoder([ [ 'Account', getStructEncoder([ ['address', getAddressEncoder()], ['offset', getU64Encoder()], ['size', getU64Encoder()], ]), ], [ 'Cron', getStructEncoder([ ['schedule', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())], ['skippable', getBooleanEncoder()], ]), ], ['Now', getUnitEncoder()], ['Slot', getStructEncoder([['slot', getU64Encoder()]])], ['Epoch', getStructEncoder([['epoch', getU64Encoder()]])], ['Timestamp', getStructEncoder([['unixTs', getI64Encoder()]])], [ 'Pyth', getStructEncoder([ ['priceFeed', getAddressEncoder()], ['equality', getEqualityEncoder()], ['limit', getI64Encoder()], ]), ], ]); } export function getTriggerDecoder() { return getDiscriminatedUnionDecoder([ [ 'Account', getStructDecoder([ ['address', getAddressDecoder()], ['offset', getU64Decoder()], ['size', getU64Decoder()], ]), ], [ 'Cron', getStructDecoder([ ['schedule', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())], ['skippable', getBooleanDecoder()], ]), ], ['Now', getUnitDecoder()], ['Slot', getStructDecoder([['slot', getU64Decoder()]])], ['Epoch', getStructDecoder([['epoch', getU64Decoder()]])], ['Timestamp', getStructDecoder([['unixTs', getI64Decoder()]])], [ 'Pyth', getStructDecoder([ ['priceFeed', getAddressDecoder()], ['equality', getEqualityDecoder()], ['limit', getI64Decoder()], ]), ], ]); } export function getTriggerCodec() { return combineCodec(getTriggerEncoder(), getTriggerDecoder()); } export function trigger(kind, data) { return Array.isArray(data) ? { __kind: kind, fields: data } : { __kind: kind, ...(data ?? {}) }; } export function isTrigger(kind, value) { return value.__kind === kind; } //# sourceMappingURL=trigger.js.map