/* * 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"; export type UpdatePromptResponse = { /** * Unique prompt identifier */ id: string; /** * Object type */ object: "prompt"; /** * Human-readable prompt name */ name: string; /** * Detailed description of the prompt */ description?: string | undefined; /** * Currently active version number */ activeVersion: number; /** * Most recent version number */ latestVersion: number; /** * Custom metadata key-value pairs */ metadata: { [k: string]: any }; /** * Timestamp when the prompt was created */ createdAt: Date; /** * Timestamp when the prompt was last updated */ updatedAt: Date; }; /** @internal */ export const UpdatePromptResponse$inboundSchema: z.ZodType< UpdatePromptResponse, z.ZodTypeDef, unknown > = z.object({ id: z.string(), object: z.literal("prompt"), name: z.string(), description: z.string().optional(), active_version: z.number().int(), latest_version: z.number().int(), metadata: z.record(z.any()), created_at: z.string().datetime({ offset: true }).transform(v => new Date(v)), updated_at: z.string().datetime({ offset: true }).transform(v => new Date(v)), }).transform((v) => { return remap$(v, { "active_version": "activeVersion", "latest_version": "latestVersion", "created_at": "createdAt", "updated_at": "updatedAt", }); }); /** @internal */ export type UpdatePromptResponse$Outbound = { id: string; object: "prompt"; name: string; description?: string | undefined; active_version: number; latest_version: number; metadata: { [k: string]: any }; created_at: string; updated_at: string; }; /** @internal */ export const UpdatePromptResponse$outboundSchema: z.ZodType< UpdatePromptResponse$Outbound, z.ZodTypeDef, UpdatePromptResponse > = z.object({ id: z.string(), object: z.literal("prompt"), name: z.string(), description: z.string().optional(), activeVersion: z.number().int(), latestVersion: z.number().int(), metadata: z.record(z.any()), createdAt: z.date().transform(v => v.toISOString()), updatedAt: z.date().transform(v => v.toISOString()), }).transform((v) => { return remap$(v, { activeVersion: "active_version", latestVersion: "latest_version", createdAt: "created_at", updatedAt: "updated_at", }); }); export function updatePromptResponseToJSON( updatePromptResponse: UpdatePromptResponse, ): string { return JSON.stringify( UpdatePromptResponse$outboundSchema.parse(updatePromptResponse), ); } export function updatePromptResponseFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => UpdatePromptResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'UpdatePromptResponse' from JSON`, ); }