/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
import * as z from "zod";
import { remap as remap$ } from "../../lib/primitives.js";
import { safeParse } from "../../lib/schemas.js";
import { AIVisionTaggingAnalysisData$inboundSchema, AIVisionTaggingAnalysisData$outboundSchema, } from "./aivisiontagginganalysisdata.js";
import { LimitsObject$inboundSchema, LimitsObject$outboundSchema, } from "./limitsobject.js";
/** @internal */
export const AnalyzeAIVisionTaggingResponseData$inboundSchema = z.object({
    entity: z.string().optional(),
    analysis: AIVisionTaggingAnalysisData$inboundSchema.optional(),
});
/** @internal */
export const AnalyzeAIVisionTaggingResponseData$outboundSchema = z.object({
    entity: z.string().optional(),
    analysis: AIVisionTaggingAnalysisData$outboundSchema.optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var AnalyzeAIVisionTaggingResponseData$;
(function (AnalyzeAIVisionTaggingResponseData$) {
    /** @deprecated use `AnalyzeAIVisionTaggingResponseData$inboundSchema` instead. */
    AnalyzeAIVisionTaggingResponseData$.inboundSchema = AnalyzeAIVisionTaggingResponseData$inboundSchema;
    /** @deprecated use `AnalyzeAIVisionTaggingResponseData$outboundSchema` instead. */
    AnalyzeAIVisionTaggingResponseData$.outboundSchema = AnalyzeAIVisionTaggingResponseData$outboundSchema;
})(AnalyzeAIVisionTaggingResponseData$ || (AnalyzeAIVisionTaggingResponseData$ = {}));
export function analyzeAIVisionTaggingResponseDataToJSON(analyzeAIVisionTaggingResponseData) {
    return JSON.stringify(AnalyzeAIVisionTaggingResponseData$outboundSchema.parse(analyzeAIVisionTaggingResponseData));
}
export function analyzeAIVisionTaggingResponseDataFromJSON(jsonString) {
    return safeParse(jsonString, (x) => AnalyzeAIVisionTaggingResponseData$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AnalyzeAIVisionTaggingResponseData' from JSON`);
}
/** @internal */
export const AnalyzeAIVisionTaggingResponse$inboundSchema = z.object({
    limits: z.nullable(LimitsObject$inboundSchema).optional(),
    request_id: z.string().optional(),
    data: z.lazy(() => AnalyzeAIVisionTaggingResponseData$inboundSchema)
        .optional(),
}).transform((v) => {
    return remap$(v, {
        "request_id": "requestId",
    });
});
/** @internal */
export const AnalyzeAIVisionTaggingResponse$outboundSchema = z.object({
    limits: z.nullable(LimitsObject$outboundSchema).optional(),
    requestId: z.string().optional(),
    data: z.lazy(() => AnalyzeAIVisionTaggingResponseData$outboundSchema)
        .optional(),
}).transform((v) => {
    return remap$(v, {
        requestId: "request_id",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var AnalyzeAIVisionTaggingResponse$;
(function (AnalyzeAIVisionTaggingResponse$) {
    /** @deprecated use `AnalyzeAIVisionTaggingResponse$inboundSchema` instead. */
    AnalyzeAIVisionTaggingResponse$.inboundSchema = AnalyzeAIVisionTaggingResponse$inboundSchema;
    /** @deprecated use `AnalyzeAIVisionTaggingResponse$outboundSchema` instead. */
    AnalyzeAIVisionTaggingResponse$.outboundSchema = AnalyzeAIVisionTaggingResponse$outboundSchema;
})(AnalyzeAIVisionTaggingResponse$ || (AnalyzeAIVisionTaggingResponse$ = {}));
export function analyzeAIVisionTaggingResponseToJSON(analyzeAIVisionTaggingResponse) {
    return JSON.stringify(AnalyzeAIVisionTaggingResponse$outboundSchema.parse(analyzeAIVisionTaggingResponse));
}
export function analyzeAIVisionTaggingResponseFromJSON(jsonString) {
    return safeParse(jsonString, (x) => AnalyzeAIVisionTaggingResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AnalyzeAIVisionTaggingResponse' from JSON`);
}
//# sourceMappingURL=analyzeaivisiontaggingresponse.js.map