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";
import { AgentHandoffEntry } from "./agenthandoffentry.js";
import { ConversationUsageInfo } from "./conversationusageinfo.js";
import { FunctionCallEntry } from "./functioncallentry.js";
import { MessageOutputEntry } from "./messageoutputentry.js";
import { ToolExecutionEntry } from "./toolexecutionentry.js";
export declare const ConversationResponseObject: {
    readonly ConversationResponse: "conversation.response";
};
export type ConversationResponseObject = ClosedEnum<typeof ConversationResponseObject>;
export type Outputs = AgentHandoffEntry | FunctionCallEntry | ToolExecutionEntry | MessageOutputEntry;
/**
 * The response after appending new entries to the conversation.
 */
export type ConversationResponse = {
    object: ConversationResponseObject | undefined;
    conversationId: string;
    outputs: Array<AgentHandoffEntry | FunctionCallEntry | ToolExecutionEntry | MessageOutputEntry>;
    usage: ConversationUsageInfo;
};
/** @internal */
export declare const ConversationResponseObject$inboundSchema: z.ZodNativeEnum<typeof ConversationResponseObject>;
/** @internal */
export declare const Outputs$inboundSchema: z.ZodType<Outputs, z.ZodTypeDef, unknown>;
export declare function outputsFromJSON(jsonString: string): SafeParseResult<Outputs, SDKValidationError>;
/** @internal */
export declare const ConversationResponse$inboundSchema: z.ZodType<ConversationResponse, z.ZodTypeDef, unknown>;
export declare function conversationResponseFromJSON(jsonString: string): SafeParseResult<ConversationResponse, SDKValidationError>;
//# sourceMappingURL=conversationresponse.d.ts.map