/* * 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 DistancesAndDirectionsInteractiveDistanceResponseItem = { /** * A zero based counter indicating the row number. */ segmentNumber?: number | undefined; /** * The total time in seconds for the route. */ totalTime?: number | undefined; /** * The total distance in metres for the route. */ totalDistance?: number | undefined; }; export type DistancesAndDirectionsInteractiveDistanceResponse = { items?: | Array | undefined; }; /** @internal */ export const DistancesAndDirectionsInteractiveDistanceResponseItem$inboundSchema: z.ZodType< DistancesAndDirectionsInteractiveDistanceResponseItem, z.ZodTypeDef, unknown > = z.object({ SegmentNumber: z.number().int().optional(), TotalTime: z.number().int().optional(), TotalDistance: z.number().int().optional(), }).transform((v) => { return remap$(v, { "SegmentNumber": "segmentNumber", "TotalTime": "totalTime", "TotalDistance": "totalDistance", }); }); export function distancesAndDirectionsInteractiveDistanceResponseItemFromJSON( jsonString: string, ): SafeParseResult< DistancesAndDirectionsInteractiveDistanceResponseItem, SDKValidationError > { return safeParse( jsonString, (x) => DistancesAndDirectionsInteractiveDistanceResponseItem$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'DistancesAndDirectionsInteractiveDistanceResponseItem' from JSON`, ); } /** @internal */ export const DistancesAndDirectionsInteractiveDistanceResponse$inboundSchema: z.ZodType< DistancesAndDirectionsInteractiveDistanceResponse, z.ZodTypeDef, unknown > = z.object({ Items: z.array( z.lazy(() => DistancesAndDirectionsInteractiveDistanceResponseItem$inboundSchema ), ).optional(), }).transform((v) => { return remap$(v, { "Items": "items", }); }); export function distancesAndDirectionsInteractiveDistanceResponseFromJSON( jsonString: string, ): SafeParseResult< DistancesAndDirectionsInteractiveDistanceResponse, SDKValidationError > { return safeParse( jsonString, (x) => DistancesAndDirectionsInteractiveDistanceResponse$inboundSchema.parse( JSON.parse(x), ), `Failed to parse 'DistancesAndDirectionsInteractiveDistanceResponse' from JSON`, ); }