/* * 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 { WorkspaceFile, WorkspaceFile$inboundSchema, WorkspaceFile$Outbound, WorkspaceFile$outboundSchema, } from "./workspacefile.js"; export type WorkspaceManifest = { sessionId: string; files?: Array | undefined; paths?: Array | undefined; }; /** @internal */ export const WorkspaceManifest$inboundSchema: z.ZodType< WorkspaceManifest, z.ZodTypeDef, unknown > = z.object({ session_id: z.string(), files: z.array(WorkspaceFile$inboundSchema).optional(), paths: z.array(z.string()).optional(), }).transform((v) => { return remap$(v, { "session_id": "sessionId", }); }); /** @internal */ export type WorkspaceManifest$Outbound = { session_id: string; files?: Array | undefined; paths?: Array | undefined; }; /** @internal */ export const WorkspaceManifest$outboundSchema: z.ZodType< WorkspaceManifest$Outbound, z.ZodTypeDef, WorkspaceManifest > = z.object({ sessionId: z.string(), files: z.array(WorkspaceFile$outboundSchema).optional(), paths: z.array(z.string()).optional(), }).transform((v) => { return remap$(v, { sessionId: "session_id", }); }); export function workspaceManifestToJSON( workspaceManifest: WorkspaceManifest, ): string { return JSON.stringify( WorkspaceManifest$outboundSchema.parse(workspaceManifest), ); } export function workspaceManifestFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => WorkspaceManifest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'WorkspaceManifest' from JSON`, ); }