/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { QueryDetails, QueryDetails$inboundSchema, QueryDetails$Outbound, QueryDetails$outboundSchema, } from "./querydetails.js"; import { Search, Search$inboundSchema, Search$Outbound, Search$outboundSchema, } from "./search.js"; export type SearchStepWithQueryDetails = { type?: "search" | undefined; think: string; currentQuestion: string; errored?: boolean | undefined; search: Search; queryDetails?: Array | undefined; /** * A log of the search results you found. */ searchLog?: string | undefined; }; /** @internal */ export const SearchStepWithQueryDetails$inboundSchema: z.ZodType< SearchStepWithQueryDetails, z.ZodTypeDef, unknown > = z.object({ type: z.literal("search").default("search"), think: z.string(), current_question: z.string(), errored: z.boolean().default(false), search: Search$inboundSchema, query_details: z.array(QueryDetails$inboundSchema).optional(), search_log: z.string().default(""), }).transform((v) => { return remap$(v, { "current_question": "currentQuestion", "query_details": "queryDetails", "search_log": "searchLog", }); }); /** @internal */ export type SearchStepWithQueryDetails$Outbound = { type: "search"; think: string; current_question: string; errored: boolean; search: Search$Outbound; query_details?: Array | undefined; search_log: string; }; /** @internal */ export const SearchStepWithQueryDetails$outboundSchema: z.ZodType< SearchStepWithQueryDetails$Outbound, z.ZodTypeDef, SearchStepWithQueryDetails > = z.object({ type: z.literal("search").default("search" as const), think: z.string(), currentQuestion: z.string(), errored: z.boolean().default(false), search: Search$outboundSchema, queryDetails: z.array(QueryDetails$outboundSchema).optional(), searchLog: z.string().default(""), }).transform((v) => { return remap$(v, { currentQuestion: "current_question", queryDetails: "query_details", searchLog: "search_log", }); }); export function searchStepWithQueryDetailsToJSON( searchStepWithQueryDetails: SearchStepWithQueryDetails, ): string { return JSON.stringify( SearchStepWithQueryDetails$outboundSchema.parse(searchStepWithQueryDetails), ); } export function searchStepWithQueryDetailsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => SearchStepWithQueryDetails$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'SearchStepWithQueryDetails' from JSON`, ); }