import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * A message part containing reasoning or chain-of-thought content
 */
export type ReasoningPart = {
    /**
     * Unique identifier for the part. Format: reasoning_{ulid} (e.g., reasoning_01hxyz...)
     */
    id: string;
    /**
     * Optional metadata associated with the message part. Can store arbitrary key-value pairs for custom data. Maximum size of 50KB and maximum of 20 keys.
     */
    metadata?: {
        [k: string]: any;
    } | undefined;
    /**
     * Type discriminator indicating this is a reasoning part
     */
    kind: "reasoning";
    /**
     * The reasoning or thought process behind the response. Used for chain-of-thought or extended thinking.
     */
    reasoning: string;
    /**
     * Optional cryptographic signature to verify the authenticity and integrity of the reasoning content
     */
    signature?: string | undefined;
};
/** @internal */
export declare const ReasoningPart$inboundSchema: z.ZodType<ReasoningPart, z.ZodTypeDef, unknown>;
export declare function reasoningPartFromJSON(jsonString: string): SafeParseResult<ReasoningPart, SDKValidationError>;
//# sourceMappingURL=reasoningpart.d.ts.map