import * as z from "zod/v4";
import * as discriminatedUnionTypes from "../types/discriminatedUnion.js";
import { ClosedEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import { ApplyPatchCallItem } from "./applypatchcallitem.js";
import { ApplyPatchCallOutputItem } from "./applypatchcalloutputitem.js";
import { SDKValidationError } from "./errors/sdkvalidationerror.js";
import { InputAudio } from "./inputaudio.js";
import { InputFile } from "./inputfile.js";
import { InputImage } from "./inputimage.js";
import { InputText } from "./inputtext.js";
import { OpenAIResponseCustomToolCall } from "./openairesponsecustomtoolcall.js";
import { OpenAIResponseCustomToolCallOutput } from "./openairesponsecustomtoolcalloutput.js";
import { OpenAIResponseFunctionToolCall } from "./openairesponsefunctiontoolcall.js";
import { OpenAIResponseFunctionToolCallOutput } from "./openairesponsefunctiontoolcalloutput.js";
import { OpenAIResponseInputMessageItem } from "./openairesponseinputmessageitem.js";
import { OutputItemImageGenerationCall } from "./outputitemimagegenerationcall.js";
import { OutputMessage } from "./outputmessage.js";
export type BaseInputsContent1 = InputAudio | InputFile | (InputImage & {
    type: "input_image";
}) | InputText | discriminatedUnionTypes.Unknown<"type">;
export type BaseInputsContent2 = Array<InputAudio | InputFile | (InputImage & {
    type: "input_image";
}) | InputText | discriminatedUnionTypes.Unknown<"type">> | string;
export declare const BaseInputsPhaseFinalAnswer: {
    readonly FinalAnswer: "final_answer";
};
export type BaseInputsPhaseFinalAnswer = ClosedEnum<typeof BaseInputsPhaseFinalAnswer>;
export declare const BaseInputsPhaseCommentary: {
    readonly Commentary: "commentary";
};
export type BaseInputsPhaseCommentary = ClosedEnum<typeof BaseInputsPhaseCommentary>;
export type BaseInputsPhaseUnion = BaseInputsPhaseCommentary | BaseInputsPhaseFinalAnswer;
export declare const BaseInputsRoleDeveloper: {
    readonly Developer: "developer";
};
export type BaseInputsRoleDeveloper = ClosedEnum<typeof BaseInputsRoleDeveloper>;
export declare const BaseInputsRoleAssistant: {
    readonly Assistant: "assistant";
};
export type BaseInputsRoleAssistant = ClosedEnum<typeof BaseInputsRoleAssistant>;
export declare const BaseInputsRoleSystem: {
    readonly System: "system";
};
export type BaseInputsRoleSystem = ClosedEnum<typeof BaseInputsRoleSystem>;
export declare const BaseInputsRoleUser: {
    readonly User: "user";
};
export type BaseInputsRoleUser = ClosedEnum<typeof BaseInputsRoleUser>;
export type BaseInputsRoleUnion = BaseInputsRoleUser | BaseInputsRoleSystem | BaseInputsRoleAssistant | BaseInputsRoleDeveloper;
export declare const BaseInputsType: {
    readonly Message: "message";
};
export type BaseInputsType = ClosedEnum<typeof BaseInputsType>;
export type BaseInputsMessage = {
    content: Array<InputAudio | InputFile | (InputImage & {
        type: "input_image";
    }) | InputText | discriminatedUnionTypes.Unknown<"type">> | string;
    phase?: BaseInputsPhaseCommentary | BaseInputsPhaseFinalAnswer | null | undefined;
    role: BaseInputsRoleUser | BaseInputsRoleSystem | BaseInputsRoleAssistant | BaseInputsRoleDeveloper;
    type?: BaseInputsType | undefined;
};
export type BaseInputsUnion1 = OpenAIResponseFunctionToolCall | OutputMessage | OpenAIResponseCustomToolCall | ApplyPatchCallItem | OpenAIResponseInputMessageItem | OpenAIResponseFunctionToolCallOutput | OutputItemImageGenerationCall | OpenAIResponseCustomToolCallOutput | ApplyPatchCallOutputItem | BaseInputsMessage;
export type BaseInputsUnion = string | Array<OpenAIResponseFunctionToolCall | OutputMessage | OpenAIResponseCustomToolCall | ApplyPatchCallItem | OpenAIResponseInputMessageItem | OpenAIResponseFunctionToolCallOutput | OutputItemImageGenerationCall | OpenAIResponseCustomToolCallOutput | ApplyPatchCallOutputItem | BaseInputsMessage>;
/** @internal */
export declare const BaseInputsContent1$inboundSchema: z.ZodType<BaseInputsContent1, unknown>;
export declare function baseInputsContent1FromJSON(jsonString: string): SafeParseResult<BaseInputsContent1, SDKValidationError>;
/** @internal */
export declare const BaseInputsContent2$inboundSchema: z.ZodType<BaseInputsContent2, unknown>;
export declare function baseInputsContent2FromJSON(jsonString: string): SafeParseResult<BaseInputsContent2, SDKValidationError>;
/** @internal */
export declare const BaseInputsPhaseFinalAnswer$inboundSchema: z.ZodEnum<typeof BaseInputsPhaseFinalAnswer>;
/** @internal */
export declare const BaseInputsPhaseCommentary$inboundSchema: z.ZodEnum<typeof BaseInputsPhaseCommentary>;
/** @internal */
export declare const BaseInputsPhaseUnion$inboundSchema: z.ZodType<BaseInputsPhaseUnion, unknown>;
export declare function baseInputsPhaseUnionFromJSON(jsonString: string): SafeParseResult<BaseInputsPhaseUnion, SDKValidationError>;
/** @internal */
export declare const BaseInputsRoleDeveloper$inboundSchema: z.ZodEnum<typeof BaseInputsRoleDeveloper>;
/** @internal */
export declare const BaseInputsRoleAssistant$inboundSchema: z.ZodEnum<typeof BaseInputsRoleAssistant>;
/** @internal */
export declare const BaseInputsRoleSystem$inboundSchema: z.ZodEnum<typeof BaseInputsRoleSystem>;
/** @internal */
export declare const BaseInputsRoleUser$inboundSchema: z.ZodEnum<typeof BaseInputsRoleUser>;
/** @internal */
export declare const BaseInputsRoleUnion$inboundSchema: z.ZodType<BaseInputsRoleUnion, unknown>;
export declare function baseInputsRoleUnionFromJSON(jsonString: string): SafeParseResult<BaseInputsRoleUnion, SDKValidationError>;
/** @internal */
export declare const BaseInputsType$inboundSchema: z.ZodEnum<typeof BaseInputsType>;
/** @internal */
export declare const BaseInputsMessage$inboundSchema: z.ZodType<BaseInputsMessage, unknown>;
export declare function baseInputsMessageFromJSON(jsonString: string): SafeParseResult<BaseInputsMessage, SDKValidationError>;
/** @internal */
export declare const BaseInputsUnion1$inboundSchema: z.ZodType<BaseInputsUnion1, unknown>;
export declare function baseInputsUnion1FromJSON(jsonString: string): SafeParseResult<BaseInputsUnion1, SDKValidationError>;
/** @internal */
export declare const BaseInputsUnion$inboundSchema: z.ZodType<BaseInputsUnion, unknown>;
export declare function baseInputsUnionFromJSON(jsonString: string): SafeParseResult<BaseInputsUnion, SDKValidationError>;
//# sourceMappingURL=baseinputsunion.d.ts.map