/** * 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, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, type Address, type Codec, type Decoder, type Encoder, type ReadonlyUint8Array, } from "@solana/kit"; export type InitializeDirectWithdrawStrategyEvent = { admin: Address; vault: Address; strategy: Address; strategyInitReceipt: Address; adaptorProgram: Address; instructionDiscriminator: ReadonlyUint8Array; additionalArgs: ReadonlyUint8Array; allowUserArgs: boolean; initializedTs: bigint; }; export type InitializeDirectWithdrawStrategyEventArgs = { admin: Address; vault: Address; strategy: Address; strategyInitReceipt: Address; adaptorProgram: Address; instructionDiscriminator: ReadonlyUint8Array; additionalArgs: ReadonlyUint8Array; allowUserArgs: boolean; initializedTs: number | bigint; }; export function getInitializeDirectWithdrawStrategyEventEncoder(): Encoder { return getStructEncoder([ ["admin", getAddressEncoder()], ["vault", getAddressEncoder()], ["strategy", getAddressEncoder()], ["strategyInitReceipt", getAddressEncoder()], ["adaptorProgram", getAddressEncoder()], [ "instructionDiscriminator", addEncoderSizePrefix(getBytesEncoder(), getU32Encoder()), ], [ "additionalArgs", addEncoderSizePrefix(getBytesEncoder(), getU32Encoder()), ], ["allowUserArgs", getBooleanEncoder()], ["initializedTs", getU64Encoder()], ]); } export function getInitializeDirectWithdrawStrategyEventDecoder(): Decoder { return getStructDecoder([ ["admin", getAddressDecoder()], ["vault", getAddressDecoder()], ["strategy", getAddressDecoder()], ["strategyInitReceipt", getAddressDecoder()], ["adaptorProgram", getAddressDecoder()], [ "instructionDiscriminator", addDecoderSizePrefix(getBytesDecoder(), getU32Decoder()), ], [ "additionalArgs", addDecoderSizePrefix(getBytesDecoder(), getU32Decoder()), ], ["allowUserArgs", getBooleanDecoder()], ["initializedTs", getU64Decoder()], ]); } export function getInitializeDirectWithdrawStrategyEventCodec(): Codec< InitializeDirectWithdrawStrategyEventArgs, InitializeDirectWithdrawStrategyEvent > { return combineCodec( getInitializeDirectWithdrawStrategyEventEncoder(), getInitializeDirectWithdrawStrategyEventDecoder(), ); }