/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v4-mini"; import { safeParse } from "../lib/schemas.js"; import * as openEnums from "../types/enums.js"; import { OpenEnum } from "../types/enums.js"; import { Result as SafeParseResult } from "../types/fp.js"; import * as types from "../types/primitives.js"; import { SDKValidationError } from "./errors/sdk-validation-error.js"; export const ProceduralPatternScope = { Global: "global", Local: "local", } as const; export type ProceduralPatternScope = OpenEnum; export const PatternType = { Routine: "routine", Decision: "decision", Response: "response", ToolSequence: "tool_sequence", } as const; export type PatternType = OpenEnum; export const ProceduralPatternType = { Intent: "intent", Keyword: "keyword", Context: "context", State: "state", } as const; export type ProceduralPatternType = OpenEnum; export type Trigger = { type: ProceduralPatternType; value: string; conditions?: { [k: string]: any } | undefined; }; export type Step = { action: string; params?: { [k: string]: any } | undefined; expectedOutcome?: string | undefined; order: number; }; export type ProceduralPattern = { patternId: string; agentWallet: string; scope?: ProceduralPatternScope | undefined; haiId?: string | undefined; patternType: PatternType; trigger: Trigger; steps: Array; summary: string; successRate: number; executionCount: number; lastExecuted: number; metadata?: { [k: string]: any } | undefined; createdAt: number; updatedAt?: number | undefined; }; /** @internal */ export const ProceduralPatternScope$inboundSchema: z.ZodMiniType< ProceduralPatternScope, unknown > = openEnums.inboundSchema(ProceduralPatternScope); /** @internal */ export const PatternType$inboundSchema: z.ZodMiniType = openEnums.inboundSchema(PatternType); /** @internal */ export const ProceduralPatternType$inboundSchema: z.ZodMiniType< ProceduralPatternType, unknown > = openEnums.inboundSchema(ProceduralPatternType); /** @internal */ export const Trigger$inboundSchema: z.ZodMiniType = z.object({ type: ProceduralPatternType$inboundSchema, value: types.string(), conditions: types.optional(z.record(z.string(), z.any())), }); export function triggerFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => Trigger$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'Trigger' from JSON`, ); } /** @internal */ export const Step$inboundSchema: z.ZodMiniType = z.object({ action: types.string(), params: types.optional(z.record(z.string(), z.any())), expectedOutcome: types.optional(types.string()), order: types.number(), }); export function stepFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => Step$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'Step' from JSON`, ); } /** @internal */ export const ProceduralPattern$inboundSchema: z.ZodMiniType< ProceduralPattern, unknown > = z.object({ patternId: types.string(), agentWallet: types.string(), scope: types.optional(ProceduralPatternScope$inboundSchema), haiId: types.optional(types.string()), patternType: PatternType$inboundSchema, trigger: z.lazy(() => Trigger$inboundSchema), steps: z.array(z.lazy(() => Step$inboundSchema)), summary: types.string(), successRate: types.number(), executionCount: types.number(), lastExecuted: types.number(), metadata: types.optional(z.record(z.string(), z.any())), createdAt: types.number(), updatedAt: types.optional(types.number()), }); export function proceduralPatternFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => ProceduralPattern$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ProceduralPattern' from JSON`, ); }