import * as z from "zod/v4";
import { ClosedEnum } from "../types/enums.js";
import { ChatNamedToolChoice, ChatNamedToolChoice$Outbound } from "./chatnamedtoolchoice.js";
import { ChatServerToolChoice, ChatServerToolChoice$Outbound } from "./chatservertoolchoice.js";
export declare const ChatToolChoiceRequired: {
    readonly Required: "required";
};
export type ChatToolChoiceRequired = ClosedEnum<typeof ChatToolChoiceRequired>;
export declare const ChatToolChoiceAuto: {
    readonly Auto: "auto";
};
export type ChatToolChoiceAuto = ClosedEnum<typeof ChatToolChoiceAuto>;
export declare const ChatToolChoiceNone: {
    readonly None: "none";
};
export type ChatToolChoiceNone = ClosedEnum<typeof ChatToolChoiceNone>;
/**
 * Tool choice configuration
 */
export type ChatToolChoice = ChatNamedToolChoice | ChatServerToolChoice | ChatToolChoiceNone | ChatToolChoiceAuto | ChatToolChoiceRequired;
/** @internal */
export declare const ChatToolChoiceRequired$outboundSchema: z.ZodEnum<typeof ChatToolChoiceRequired>;
/** @internal */
export declare const ChatToolChoiceAuto$outboundSchema: z.ZodEnum<typeof ChatToolChoiceAuto>;
/** @internal */
export declare const ChatToolChoiceNone$outboundSchema: z.ZodEnum<typeof ChatToolChoiceNone>;
/** @internal */
export type ChatToolChoice$Outbound = ChatNamedToolChoice$Outbound | ChatServerToolChoice$Outbound | string | string | string;
/** @internal */
export declare const ChatToolChoice$outboundSchema: z.ZodType<ChatToolChoice$Outbound, ChatToolChoice>;
export declare function chatToolChoiceToJSON(chatToolChoice: ChatToolChoice): string;
//# sourceMappingURL=chattoolchoice.d.ts.map