/* * 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 { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** * Which report this entry refers to. */ export const BulkReportItemResultReportType = { CustomReport: "custom_report", GeneralLedger: "general_ledger", } as const; /** * Which report this entry refers to. */ export type BulkReportItemResultReportType = ClosedEnum< typeof BulkReportItemResultReportType >; /** * The terminal state for this individual report. */ export const BulkReportItemResultStatus = { Pending: "pending", Success: "success", Failed: "failed", } as const; /** * The terminal state for this individual report. */ export type BulkReportItemResultStatus = ClosedEnum< typeof BulkReportItemResultStatus >; /** * A single report's outcome. */ export type BulkReportItemResult = { /** * Which report this entry refers to. */ reportType: BulkReportItemResultReportType; /** * The report's output file type. */ fileType: string; /** * The terminal state for this individual report. */ status: BulkReportItemResultStatus; /** * A user-facing error message when status is `failed`. Null on success. */ error: string | null; }; /** @internal */ export const BulkReportItemResultReportType$inboundSchema: z.ZodNativeEnum< typeof BulkReportItemResultReportType > = z.nativeEnum(BulkReportItemResultReportType); /** @internal */ export const BulkReportItemResultStatus$inboundSchema: z.ZodNativeEnum< typeof BulkReportItemResultStatus > = z.nativeEnum(BulkReportItemResultStatus); /** @internal */ export const BulkReportItemResult$inboundSchema: z.ZodType< BulkReportItemResult, z.ZodTypeDef, unknown > = z.object({ report_type: BulkReportItemResultReportType$inboundSchema, file_type: z.string(), status: BulkReportItemResultStatus$inboundSchema, error: z.nullable(z.string()), }).transform((v) => { return remap$(v, { "report_type": "reportType", "file_type": "fileType", }); }); export function bulkReportItemResultFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => BulkReportItemResult$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'BulkReportItemResult' from JSON`, ); }