/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
import * as z from "zod";
import { ClosedEnum } from "../types/enums.js";
/**
* CoinActions are different state changes that a Coin can undergo. When a Coin is created, it is coin_created. When a Coin is spent, it is coin_spent. It is assumed that a single Coin cannot be created or spent more than once.
*/
export const CoinAction = {
CoinCreated: "coin_created",
CoinSpent: "coin_spent",
} as const;
/**
* CoinActions are different state changes that a Coin can undergo. When a Coin is created, it is coin_created. When a Coin is spent, it is coin_spent. It is assumed that a single Coin cannot be created or spent more than once.
*/
export type CoinAction = ClosedEnum<typeof CoinAction>;
/** @internal */
export const CoinAction$inboundSchema: z.ZodNativeEnum<typeof CoinAction> = z
.nativeEnum(CoinAction);
/** @internal */
export const CoinAction$outboundSchema: z.ZodNativeEnum<typeof CoinAction> =
CoinAction$inboundSchema;
/**
* @internal
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
*/
export namespace CoinAction$ {
/** @deprecated use `CoinAction$inboundSchema` instead. */
export const inboundSchema = CoinAction$inboundSchema;
/** @deprecated use `CoinAction$outboundSchema` instead. */
export const outboundSchema = CoinAction$outboundSchema;
}