/* * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. */ import { remap as remap$ } from "../../lib/primitives"; import * as z from "zod"; export type GetFileHashErrors = { code?: number | undefined; message?: string | undefined; status?: number | undefined; }; /** * Unauthorized - Returned if the X-Plex-Token is missing from the header or query. */ export type GetFileHashResponseBodyData = { errors?: Array | undefined; /** * Raw HTTP response; suitable for custom response parsing */ rawResponse?: Response | undefined; }; /** * Unauthorized - Returned if the X-Plex-Token is missing from the header or query. */ export class GetFileHashResponseBody extends Error { errors?: Array | undefined; /** * Raw HTTP response; suitable for custom response parsing */ rawResponse?: Response | undefined; /** The original data that was passed to this error instance. */ data$: GetFileHashResponseBodyData; constructor(err: GetFileHashResponseBodyData) { super(""); this.data$ = err; if (err.errors != null) { this.errors = err.errors; } if (err.rawResponse != null) { this.rawResponse = err.rawResponse; } this.message = "message" in err && typeof err.message === "string" ? err.message : "API error occurred"; this.name = "GetFileHashResponseBody"; } } /** @internal */ export namespace GetFileHashErrors$ { export const inboundSchema: z.ZodType = z.object({ code: z.number().optional(), message: z.string().optional(), status: z.number().optional(), }); export type Outbound = { code?: number | undefined; message?: string | undefined; status?: number | undefined; }; export const outboundSchema: z.ZodType = z.object({ code: z.number().optional(), message: z.string().optional(), status: z.number().optional(), }); } /** @internal */ export namespace GetFileHashResponseBody$ { export const inboundSchema: z.ZodType = z .object({ errors: z.array(z.lazy(() => GetFileHashErrors$.inboundSchema)).optional(), RawResponse: z.instanceof(Response).optional(), }) .transform((v) => { const remapped = remap$(v, { RawResponse: "rawResponse", }); return new GetFileHashResponseBody(remapped); }); export type Outbound = { errors?: Array | undefined; RawResponse?: never | undefined; }; export const outboundSchema: z.ZodType = z .instanceof(GetFileHashResponseBody) .transform((v) => v.data$) .pipe( z .object({ errors: z.array(z.lazy(() => GetFileHashErrors$.outboundSchema)).optional(), rawResponse: z .instanceof(Response) .transform(() => { throw new Error("Response cannot be serialized"); }) .optional(), }) .transform((v) => { return remap$(v, { rawResponse: "RawResponse", }); }) ); }