/*
 * 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 * as components from "../components/index.js";
/**
 * The delivery type of the asset.
 */
export const DeleteAssetRelationsByPublicIdType = {
    Upload: "upload",
    Private: "private",
    Authenticated: "authenticated",
};
/** @internal */
export const DeleteAssetRelationsByPublicIdGlobals$inboundSchema = z.object({
    cloud_name: z.string().optional(),
}).transform((v) => {
    return remap$(v, {
        "cloud_name": "cloudName",
    });
});
/** @internal */
export const DeleteAssetRelationsByPublicIdGlobals$outboundSchema = z.object({
    cloudName: z.string().optional(),
}).transform((v) => {
    return remap$(v, {
        cloudName: "cloud_name",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var DeleteAssetRelationsByPublicIdGlobals$;
(function (DeleteAssetRelationsByPublicIdGlobals$) {
    /** @deprecated use `DeleteAssetRelationsByPublicIdGlobals$inboundSchema` instead. */
    DeleteAssetRelationsByPublicIdGlobals$.inboundSchema = DeleteAssetRelationsByPublicIdGlobals$inboundSchema;
    /** @deprecated use `DeleteAssetRelationsByPublicIdGlobals$outboundSchema` instead. */
    DeleteAssetRelationsByPublicIdGlobals$.outboundSchema = DeleteAssetRelationsByPublicIdGlobals$outboundSchema;
})(DeleteAssetRelationsByPublicIdGlobals$ || (DeleteAssetRelationsByPublicIdGlobals$ = {}));
export function deleteAssetRelationsByPublicIdGlobalsToJSON(deleteAssetRelationsByPublicIdGlobals) {
    return JSON.stringify(DeleteAssetRelationsByPublicIdGlobals$outboundSchema.parse(deleteAssetRelationsByPublicIdGlobals));
}
export function deleteAssetRelationsByPublicIdGlobalsFromJSON(jsonString) {
    return safeParse(jsonString, (x) => DeleteAssetRelationsByPublicIdGlobals$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DeleteAssetRelationsByPublicIdGlobals' from JSON`);
}
/** @internal */
export const DeleteAssetRelationsByPublicIdType$inboundSchema = z.nativeEnum(DeleteAssetRelationsByPublicIdType);
/** @internal */
export const DeleteAssetRelationsByPublicIdType$outboundSchema = DeleteAssetRelationsByPublicIdType$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var DeleteAssetRelationsByPublicIdType$;
(function (DeleteAssetRelationsByPublicIdType$) {
    /** @deprecated use `DeleteAssetRelationsByPublicIdType$inboundSchema` instead. */
    DeleteAssetRelationsByPublicIdType$.inboundSchema = DeleteAssetRelationsByPublicIdType$inboundSchema;
    /** @deprecated use `DeleteAssetRelationsByPublicIdType$outboundSchema` instead. */
    DeleteAssetRelationsByPublicIdType$.outboundSchema = DeleteAssetRelationsByPublicIdType$outboundSchema;
})(DeleteAssetRelationsByPublicIdType$ || (DeleteAssetRelationsByPublicIdType$ = {}));
/** @internal */
export const DeleteAssetRelationsByPublicIdRequestBody$inboundSchema = z.object({
    assets_to_unrelate: z.array(z.string()),
}).transform((v) => {
    return remap$(v, {
        "assets_to_unrelate": "assetsToUnrelate",
    });
});
/** @internal */
export const DeleteAssetRelationsByPublicIdRequestBody$outboundSchema = z.object({
    assetsToUnrelate: z.array(z.string()),
}).transform((v) => {
    return remap$(v, {
        assetsToUnrelate: "assets_to_unrelate",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var DeleteAssetRelationsByPublicIdRequestBody$;
(function (DeleteAssetRelationsByPublicIdRequestBody$) {
    /** @deprecated use `DeleteAssetRelationsByPublicIdRequestBody$inboundSchema` instead. */
    DeleteAssetRelationsByPublicIdRequestBody$.inboundSchema = DeleteAssetRelationsByPublicIdRequestBody$inboundSchema;
    /** @deprecated use `DeleteAssetRelationsByPublicIdRequestBody$outboundSchema` instead. */
    DeleteAssetRelationsByPublicIdRequestBody$.outboundSchema = DeleteAssetRelationsByPublicIdRequestBody$outboundSchema;
})(DeleteAssetRelationsByPublicIdRequestBody$ || (DeleteAssetRelationsByPublicIdRequestBody$ = {}));
export function deleteAssetRelationsByPublicIdRequestBodyToJSON(deleteAssetRelationsByPublicIdRequestBody) {
    return JSON.stringify(DeleteAssetRelationsByPublicIdRequestBody$outboundSchema.parse(deleteAssetRelationsByPublicIdRequestBody));
}
export function deleteAssetRelationsByPublicIdRequestBodyFromJSON(jsonString) {
    return safeParse(jsonString, (x) => DeleteAssetRelationsByPublicIdRequestBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DeleteAssetRelationsByPublicIdRequestBody' from JSON`);
}
/** @internal */
export const DeleteAssetRelationsByPublicIdRequest$inboundSchema = z.object({
    resource_type: components.ResourceTypeParameter$inboundSchema,
    type: DeleteAssetRelationsByPublicIdType$inboundSchema.default("upload"),
    public_id: z.string(),
    RequestBody: z.lazy(() => DeleteAssetRelationsByPublicIdRequestBody$inboundSchema),
}).transform((v) => {
    return remap$(v, {
        "resource_type": "resourceType",
        "public_id": "publicId",
        "RequestBody": "requestBody",
    });
});
/** @internal */
export const DeleteAssetRelationsByPublicIdRequest$outboundSchema = z.object({
    resourceType: components.ResourceTypeParameter$outboundSchema,
    type: DeleteAssetRelationsByPublicIdType$outboundSchema.default("upload"),
    publicId: z.string(),
    requestBody: z.lazy(() => DeleteAssetRelationsByPublicIdRequestBody$outboundSchema),
}).transform((v) => {
    return remap$(v, {
        resourceType: "resource_type",
        publicId: "public_id",
        requestBody: "RequestBody",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var DeleteAssetRelationsByPublicIdRequest$;
(function (DeleteAssetRelationsByPublicIdRequest$) {
    /** @deprecated use `DeleteAssetRelationsByPublicIdRequest$inboundSchema` instead. */
    DeleteAssetRelationsByPublicIdRequest$.inboundSchema = DeleteAssetRelationsByPublicIdRequest$inboundSchema;
    /** @deprecated use `DeleteAssetRelationsByPublicIdRequest$outboundSchema` instead. */
    DeleteAssetRelationsByPublicIdRequest$.outboundSchema = DeleteAssetRelationsByPublicIdRequest$outboundSchema;
})(DeleteAssetRelationsByPublicIdRequest$ || (DeleteAssetRelationsByPublicIdRequest$ = {}));
export function deleteAssetRelationsByPublicIdRequestToJSON(deleteAssetRelationsByPublicIdRequest) {
    return JSON.stringify(DeleteAssetRelationsByPublicIdRequest$outboundSchema.parse(deleteAssetRelationsByPublicIdRequest));
}
export function deleteAssetRelationsByPublicIdRequestFromJSON(jsonString) {
    return safeParse(jsonString, (x) => DeleteAssetRelationsByPublicIdRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'DeleteAssetRelationsByPublicIdRequest' from JSON`);
}
//# sourceMappingURL=deleteassetrelationsbypublicid.js.map