/**
 * 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, getEnumDecoder, getEnumEncoder, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from '@solana/kit';

export enum PoolStatusBitIndex { OpenPositionOrIncreaseLiquidity, DecreaseLiquidity, CollectFee, CollectReward, Swap };

export type PoolStatusBitIndexArgs = PoolStatusBitIndex;

export function getPoolStatusBitIndexEncoder(): FixedSizeEncoder<PoolStatusBitIndexArgs> {
    return getEnumEncoder(PoolStatusBitIndex);
}

export function getPoolStatusBitIndexDecoder(): FixedSizeDecoder<PoolStatusBitIndex> {
    return getEnumDecoder(PoolStatusBitIndex);
}

export function getPoolStatusBitIndexCodec(): FixedSizeCodec<PoolStatusBitIndexArgs, PoolStatusBitIndex> {
    return combineCodec(getPoolStatusBitIndexEncoder(), getPoolStatusBitIndexDecoder());
}