import * as react_jsx_runtime from 'react/jsx-runtime'; import { ToolUIPart, DynamicToolUIPart } from 'ai'; import { ComponentProps } from 'react'; import { Collapsible, CollapsibleContent } from '../ui/collapsible.js'; import '@base-ui/react/collapsible'; type ToolProps = ComponentProps; declare const Tool: ({ className, ...props }: ToolProps) => react_jsx_runtime.JSX.Element; type ToolPart = ToolUIPart | DynamicToolUIPart; type ToolHeaderProps = { title?: string; className?: string; } & ({ type: ToolUIPart["type"]; state: ToolUIPart["state"]; toolName?: never; } | { type: DynamicToolUIPart["type"]; state: DynamicToolUIPart["state"]; toolName: string; }); declare const getStatusBadge: (status: ToolPart["state"]) => react_jsx_runtime.JSX.Element; declare const ToolHeader: ({ className, title, type, state, toolName, ...props }: ToolHeaderProps) => react_jsx_runtime.JSX.Element; type ToolContentProps = ComponentProps; declare const ToolContent: ({ className, ...props }: ToolContentProps) => react_jsx_runtime.JSX.Element; type ToolInputProps = ComponentProps<"div"> & { input: ToolPart["input"]; }; declare const ToolInput: ({ className, input, ...props }: ToolInputProps) => react_jsx_runtime.JSX.Element; type ToolOutputProps = ComponentProps<"div"> & { output: ToolPart["output"]; errorText: ToolPart["errorText"]; }; declare const ToolOutput: ({ className, output, errorText, ...props }: ToolOutputProps) => react_jsx_runtime.JSX.Element | null; export { Tool, ToolContent, type ToolContentProps, ToolHeader, type ToolHeaderProps, ToolInput, type ToolInputProps, ToolOutput, type ToolOutputProps, type ToolPart, type ToolProps, getStatusBadge };