import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Specifies the detail level of the image.
 */
export declare const Detail: {
    readonly Low: "low";
    readonly High: "high";
    readonly Auto: "auto";
};
/**
 * Specifies the detail level of the image.
 */
export type Detail = ClosedEnum<typeof Detail>;
export type ImageUrl = {
    /**
     * Either a URL of the image or the base64 encoded image data.
     */
    url: string;
    /**
     * Specifies the detail level of the image.
     */
    detail?: Detail | undefined;
};
/**
 * Create a cache control breakpoint at this content block. Accepts only the value "ephemeral".
 */
export declare const ImageContentPartSchemaCacheControlType: {
    readonly Ephemeral: "ephemeral";
};
/**
 * Create a cache control breakpoint at this content block. Accepts only the value "ephemeral".
 */
export type ImageContentPartSchemaCacheControlType = ClosedEnum<typeof ImageContentPartSchemaCacheControlType>;
/**
 * The time-to-live for the cache control breakpoint. This may be one of the following values:
 *
 * @remarks
 *
 * - `5m`: 5 minutes
 * - `1h`: 1 hour
 *
 * Defaults to `5m`. Only supported by `Anthropic` Claude models.
 */
export declare const ImageContentPartSchemaTtl: {
    readonly Fivem: "5m";
    readonly Oneh: "1h";
};
/**
 * The time-to-live for the cache control breakpoint. This may be one of the following values:
 *
 * @remarks
 *
 * - `5m`: 5 minutes
 * - `1h`: 1 hour
 *
 * Defaults to `5m`. Only supported by `Anthropic` Claude models.
 */
export type ImageContentPartSchemaTtl = ClosedEnum<typeof ImageContentPartSchemaTtl>;
export type ImageContentPartSchemaCacheControl = {
    /**
     * Create a cache control breakpoint at this content block. Accepts only the value "ephemeral".
     */
    type: ImageContentPartSchemaCacheControlType;
    /**
     * The time-to-live for the cache control breakpoint. This may be one of the following values:
     *
     * @remarks
     *
     * - `5m`: 5 minutes
     * - `1h`: 1 hour
     *
     * Defaults to `5m`. Only supported by `Anthropic` Claude models.
     */
    ttl?: ImageContentPartSchemaTtl | undefined;
};
/**
 * An image content part
 */
export type ImageContentPartSchema = {
    type: "image_url";
    imageUrl: ImageUrl;
    cacheControl?: ImageContentPartSchemaCacheControl | undefined;
};
/** @internal */
export declare const Detail$inboundSchema: z.ZodNativeEnum<typeof Detail>;
/** @internal */
export declare const Detail$outboundSchema: z.ZodNativeEnum<typeof Detail>;
/** @internal */
export declare const ImageUrl$inboundSchema: z.ZodType<ImageUrl, z.ZodTypeDef, unknown>;
/** @internal */
export type ImageUrl$Outbound = {
    url: string;
    detail?: string | undefined;
};
/** @internal */
export declare const ImageUrl$outboundSchema: z.ZodType<ImageUrl$Outbound, z.ZodTypeDef, ImageUrl>;
export declare function imageUrlToJSON(imageUrl: ImageUrl): string;
export declare function imageUrlFromJSON(jsonString: string): SafeParseResult<ImageUrl, SDKValidationError>;
/** @internal */
export declare const ImageContentPartSchemaCacheControlType$inboundSchema: z.ZodNativeEnum<typeof ImageContentPartSchemaCacheControlType>;
/** @internal */
export declare const ImageContentPartSchemaCacheControlType$outboundSchema: z.ZodNativeEnum<typeof ImageContentPartSchemaCacheControlType>;
/** @internal */
export declare const ImageContentPartSchemaTtl$inboundSchema: z.ZodNativeEnum<typeof ImageContentPartSchemaTtl>;
/** @internal */
export declare const ImageContentPartSchemaTtl$outboundSchema: z.ZodNativeEnum<typeof ImageContentPartSchemaTtl>;
/** @internal */
export declare const ImageContentPartSchemaCacheControl$inboundSchema: z.ZodType<ImageContentPartSchemaCacheControl, z.ZodTypeDef, unknown>;
/** @internal */
export type ImageContentPartSchemaCacheControl$Outbound = {
    type: string;
    ttl: string;
};
/** @internal */
export declare const ImageContentPartSchemaCacheControl$outboundSchema: z.ZodType<ImageContentPartSchemaCacheControl$Outbound, z.ZodTypeDef, ImageContentPartSchemaCacheControl>;
export declare function imageContentPartSchemaCacheControlToJSON(imageContentPartSchemaCacheControl: ImageContentPartSchemaCacheControl): string;
export declare function imageContentPartSchemaCacheControlFromJSON(jsonString: string): SafeParseResult<ImageContentPartSchemaCacheControl, SDKValidationError>;
/** @internal */
export declare const ImageContentPartSchema$inboundSchema: z.ZodType<ImageContentPartSchema, z.ZodTypeDef, unknown>;
/** @internal */
export type ImageContentPartSchema$Outbound = {
    type: "image_url";
    image_url: ImageUrl$Outbound;
    cache_control?: ImageContentPartSchemaCacheControl$Outbound | undefined;
};
/** @internal */
export declare const ImageContentPartSchema$outboundSchema: z.ZodType<ImageContentPartSchema$Outbound, z.ZodTypeDef, ImageContentPartSchema>;
export declare function imageContentPartSchemaToJSON(imageContentPartSchema: ImageContentPartSchema): string;
export declare function imageContentPartSchemaFromJSON(jsonString: string): SafeParseResult<ImageContentPartSchema, SDKValidationError>;
//# sourceMappingURL=imagecontentpartschema.d.ts.map