Skip to content

VesselActionSchema

const VesselActionSchema: ZodObject<{ description: ZodString; idempotent: ZodDefault<ZodOptional<ZodBoolean>>; name: ZodPipe<ZodString, ZodTransform<ActionName, string>>; parameters: ZodOptional<ZodArray<ZodObject<{ defaultValue: ZodOptional<ZodUnknown>; description: ZodString; enum: ZodOptional<ZodArray<ZodUnknown>>; name: ZodString; required: ZodOptional<ZodBoolean>; type: ZodEnum<{ boolean: "boolean"; number: "number"; object: "object"; string: "string"; }>; }, $strip>>>; transitionsTo: ZodOptional<ZodPipe<ZodString, ZodTransform<VariantName, string>>>; }, $strip>

Defined in: packages/protocol/src/lib/vessel.ts:36

Brands an Action and defers transition-target existence to VesselSchema.

idempotent parses to an explicit boolean so consumers never branch on undefined; see VesselActionDefinition.idempotent for what the flag promises.