/** * 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 { combineCodec, getAddressDecoder, getAddressEncoder, getStructDecoder, getStructEncoder, getU128Decoder, getU128Encoder, type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder, } from "@solana/kit"; import { getSplitAmountInfoDecoder, getSplitAmountInfoEncoder, getSplitPositionInfoDecoder, getSplitPositionInfoEncoder, getSplitPositionParameters2Decoder, getSplitPositionParameters2Encoder, type SplitAmountInfo, type SplitAmountInfoArgs, type SplitPositionInfo, type SplitPositionInfoArgs, type SplitPositionParameters2, type SplitPositionParameters2Args, } from "./index.js"; export type EvtSplitPosition2 = { pool: Address; firstOwner: Address; secondOwner: Address; firstPosition: Address; secondPosition: Address; currentSqrtPrice: bigint; amountSplits: SplitAmountInfo; firstPositionInfo: SplitPositionInfo; secondPositionInfo: SplitPositionInfo; splitPositionParameters: SplitPositionParameters2; }; export type EvtSplitPosition2Args = { pool: Address; firstOwner: Address; secondOwner: Address; firstPosition: Address; secondPosition: Address; currentSqrtPrice: number | bigint; amountSplits: SplitAmountInfoArgs; firstPositionInfo: SplitPositionInfoArgs; secondPositionInfo: SplitPositionInfoArgs; splitPositionParameters: SplitPositionParameters2Args; }; export function getEvtSplitPosition2Encoder(): FixedSizeEncoder { return getStructEncoder([ ["pool", getAddressEncoder()], ["firstOwner", getAddressEncoder()], ["secondOwner", getAddressEncoder()], ["firstPosition", getAddressEncoder()], ["secondPosition", getAddressEncoder()], ["currentSqrtPrice", getU128Encoder()], ["amountSplits", getSplitAmountInfoEncoder()], ["firstPositionInfo", getSplitPositionInfoEncoder()], ["secondPositionInfo", getSplitPositionInfoEncoder()], ["splitPositionParameters", getSplitPositionParameters2Encoder()], ]); } export function getEvtSplitPosition2Decoder(): FixedSizeDecoder { return getStructDecoder([ ["pool", getAddressDecoder()], ["firstOwner", getAddressDecoder()], ["secondOwner", getAddressDecoder()], ["firstPosition", getAddressDecoder()], ["secondPosition", getAddressDecoder()], ["currentSqrtPrice", getU128Decoder()], ["amountSplits", getSplitAmountInfoDecoder()], ["firstPositionInfo", getSplitPositionInfoDecoder()], ["secondPositionInfo", getSplitPositionInfoDecoder()], ["splitPositionParameters", getSplitPositionParameters2Decoder()], ]); } export function getEvtSplitPosition2Codec(): FixedSizeCodec< EvtSplitPosition2Args, EvtSplitPosition2 > { return combineCodec( getEvtSplitPosition2Encoder(), getEvtSplitPosition2Decoder(), ); }