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";
/**
 * The type of the content part.
 */
export declare const Type: {
    readonly Text: "text";
};
/**
 * The type of the content part.
 */
export type Type = ClosedEnum<typeof Type>;
/**
 * Create a cache control breakpoint at this content block. Accepts only the value "ephemeral".
 */
export declare const TextContentPartSchemaType: {
    readonly Ephemeral: "ephemeral";
};
/**
 * Create a cache control breakpoint at this content block. Accepts only the value "ephemeral".
 */
export type TextContentPartSchemaType = ClosedEnum<typeof TextContentPartSchemaType>;
/**
 * 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 Ttl: {
    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 Ttl = ClosedEnum<typeof Ttl>;
export type CacheControl = {
    /**
     * Create a cache control breakpoint at this content block. Accepts only the value "ephemeral".
     */
    type: TextContentPartSchemaType;
    /**
     * 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?: Ttl | undefined;
};
/**
 * The type of the content part.
 */
export type TextContentPartSchema = {
    /**
     * The type of the content part.
     */
    type: Type;
    /**
     * The text content.
     */
    text: string;
    cacheControl?: CacheControl | undefined;
};
/** @internal */
export declare const Type$inboundSchema: z.ZodNativeEnum<typeof Type>;
/** @internal */
export declare const Type$outboundSchema: z.ZodNativeEnum<typeof Type>;
/** @internal */
export declare const TextContentPartSchemaType$inboundSchema: z.ZodNativeEnum<typeof TextContentPartSchemaType>;
/** @internal */
export declare const TextContentPartSchemaType$outboundSchema: z.ZodNativeEnum<typeof TextContentPartSchemaType>;
/** @internal */
export declare const Ttl$inboundSchema: z.ZodNativeEnum<typeof Ttl>;
/** @internal */
export declare const Ttl$outboundSchema: z.ZodNativeEnum<typeof Ttl>;
/** @internal */
export declare const CacheControl$inboundSchema: z.ZodType<CacheControl, z.ZodTypeDef, unknown>;
/** @internal */
export type CacheControl$Outbound = {
    type: string;
    ttl: string;
};
/** @internal */
export declare const CacheControl$outboundSchema: z.ZodType<CacheControl$Outbound, z.ZodTypeDef, CacheControl>;
export declare function cacheControlToJSON(cacheControl: CacheControl): string;
export declare function cacheControlFromJSON(jsonString: string): SafeParseResult<CacheControl, SDKValidationError>;
/** @internal */
export declare const TextContentPartSchema$inboundSchema: z.ZodType<TextContentPartSchema, z.ZodTypeDef, unknown>;
/** @internal */
export type TextContentPartSchema$Outbound = {
    type: string;
    text: string;
    cache_control?: CacheControl$Outbound | undefined;
};
/** @internal */
export declare const TextContentPartSchema$outboundSchema: z.ZodType<TextContentPartSchema$Outbound, z.ZodTypeDef, TextContentPartSchema>;
export declare function textContentPartSchemaToJSON(textContentPartSchema: TextContentPartSchema): string;
export declare function textContentPartSchemaFromJSON(jsonString: string): SafeParseResult<TextContentPartSchema, SDKValidationError>;
//# sourceMappingURL=textcontentpartschema.d.ts.map