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";
export declare const ToolCallPartKind: {
    readonly ToolCall: "tool_call";
};
export type ToolCallPartKind = ClosedEnum<typeof ToolCallPartKind>;
/**
 * A tool invocation request from an agent. Contains the tool name, unique call ID, and arguments for the tool execution.
 */
export type ToolCallPart = {
    kind: ToolCallPartKind;
    toolName: string;
    toolCallId: string;
    arguments: {
        [k: string]: any;
    };
    metadata?: {
        [k: string]: any;
    } | undefined;
};
/** @internal */
export declare const ToolCallPartKind$inboundSchema: z.ZodNativeEnum<typeof ToolCallPartKind>;
/** @internal */
export declare const ToolCallPartKind$outboundSchema: z.ZodNativeEnum<typeof ToolCallPartKind>;
/** @internal */
export declare const ToolCallPart$inboundSchema: z.ZodType<ToolCallPart, z.ZodTypeDef, unknown>;
/** @internal */
export type ToolCallPart$Outbound = {
    kind: string;
    tool_name: string;
    tool_call_id: string;
    arguments: {
        [k: string]: any;
    };
    metadata?: {
        [k: string]: any;
    } | undefined;
};
/** @internal */
export declare const ToolCallPart$outboundSchema: z.ZodType<ToolCallPart$Outbound, z.ZodTypeDef, ToolCallPart>;
export declare function toolCallPartToJSON(toolCallPart: ToolCallPart): string;
export declare function toolCallPartFromJSON(jsonString: string): SafeParseResult<ToolCallPart, SDKValidationError>;
//# sourceMappingURL=toolcallpart.d.ts.map