import * as React from 'react';
import { HTMLAttributes, ComponentProps } from 'react';
import * as react_jsx_runtime from 'react/jsx-runtime';
import { UIMessage } from 'ai';
import { Streamdown } from 'streamdown';
import { Button } from '../ui/button.js';
import { ButtonGroup } from '../ui/button-group.js';
import 'class-variance-authority/types';
import '@base-ui/react/button';
import 'class-variance-authority';
import '@base-ui/react/use-render';
import '../ui/separator.js';
import '@base-ui/react/separator';
type MessageProps = HTMLAttributes & {
from: UIMessage["role"];
};
declare const Message: ({ className, from, ...props }: MessageProps) => react_jsx_runtime.JSX.Element;
type MessageContentProps = HTMLAttributes;
declare const MessageContent: ({ children, className, ...props }: MessageContentProps) => react_jsx_runtime.JSX.Element;
type MessageActionsProps = ComponentProps<"div">;
declare const MessageActions: ({ className, children, ...props }: MessageActionsProps) => react_jsx_runtime.JSX.Element;
type MessageActionProps = ComponentProps & {
tooltip?: string;
label?: string;
};
declare const MessageAction: ({ tooltip, children, label, className, variant, size, ...props }: MessageActionProps) => react_jsx_runtime.JSX.Element;
type MessageBranchProps = HTMLAttributes & {
defaultBranch?: number;
onBranchChange?: (branchIndex: number) => void;
};
declare const MessageBranch: ({ defaultBranch, onBranchChange, className, ...props }: MessageBranchProps) => react_jsx_runtime.JSX.Element;
type MessageBranchContentProps = HTMLAttributes;
declare const MessageBranchContent: ({ children, ...props }: MessageBranchContentProps) => react_jsx_runtime.JSX.Element[];
type MessageBranchSelectorProps = ComponentProps;
declare const MessageBranchSelector: ({ className, ...props }: MessageBranchSelectorProps) => react_jsx_runtime.JSX.Element | null;
type MessageBranchPreviousProps = ComponentProps;
declare const MessageBranchPrevious: ({ children, ...props }: MessageBranchPreviousProps) => react_jsx_runtime.JSX.Element;
type MessageBranchNextProps = ComponentProps;
declare const MessageBranchNext: ({ children, ...props }: MessageBranchNextProps) => react_jsx_runtime.JSX.Element;
type MessageBranchPageProps = HTMLAttributes;
declare const MessageBranchPage: ({ className, ...props }: MessageBranchPageProps) => react_jsx_runtime.JSX.Element;
type MessageResponseProps = ComponentProps;
declare const MessageResponse: React.MemoExoticComponent<({ className, ...props }: MessageResponseProps) => react_jsx_runtime.JSX.Element>;
type MessageToolbarProps = ComponentProps<"div">;
declare const MessageToolbar: ({ className, children, ...props }: MessageToolbarProps) => react_jsx_runtime.JSX.Element;
export { Message, MessageAction, type MessageActionProps, MessageActions, type MessageActionsProps, MessageBranch, MessageBranchContent, type MessageBranchContentProps, MessageBranchNext, type MessageBranchNextProps, MessageBranchPage, type MessageBranchPageProps, MessageBranchPrevious, type MessageBranchPreviousProps, type MessageBranchProps, MessageBranchSelector, type MessageBranchSelectorProps, MessageContent, type MessageContentProps, type MessageProps, MessageResponse, type MessageResponseProps, MessageToolbar, type MessageToolbarProps };