/* * 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 EmployeeOnboardingStatusOnboardingStep = { /** * User-friendly description of the onboarding step. */ title?: string | undefined; /** * String identifier for the onboarding step. */ id?: string | undefined; /** * When true, this step is required. */ required?: boolean | undefined; /** * When true, this step has been completed. */ completed?: boolean | undefined; /** * A list of onboarding steps required to begin this step. */ requirements?: Array | undefined; }; /** * The representation of an employee's onboarding status. */ export type EmployeeOnboardingStatus = { /** * Unique identifier for this employee. */ uuid: string; /** * One of the "onboarding_status" enum values. */ onboardingStatus?: string | undefined; /** * List of steps required to onboard an employee. */ onboardingSteps?: Array | undefined; }; /** @internal */ export const EmployeeOnboardingStatusOnboardingStep$inboundSchema: z.ZodType< EmployeeOnboardingStatusOnboardingStep, z.ZodTypeDef, unknown > = z.object({ title: z.string().optional(), id: z.string().optional(), required: z.boolean().optional(), completed: z.boolean().optional(), requirements: z.array(z.string()).optional(), }); export function employeeOnboardingStatusOnboardingStepFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => EmployeeOnboardingStatusOnboardingStep$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'EmployeeOnboardingStatusOnboardingStep' from JSON`, ); } /** @internal */ export const EmployeeOnboardingStatus$inboundSchema: z.ZodType< EmployeeOnboardingStatus, z.ZodTypeDef, unknown > = z.object({ uuid: z.string(), onboarding_status: z.string().optional(), onboarding_steps: z.array( z.lazy(() => EmployeeOnboardingStatusOnboardingStep$inboundSchema), ).optional(), }).transform((v) => { return remap$(v, { "onboarding_status": "onboardingStatus", "onboarding_steps": "onboardingSteps", }); }); export function employeeOnboardingStatusFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => EmployeeOnboardingStatus$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'EmployeeOnboardingStatus' from JSON`, ); }