import * as React from 'react';
import { Textarea as TextareaBase } from '@/components/ui/textarea';
interface ToolbarButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'value'> {
    icon: React.ReactNode;
    pressed?: boolean;
    hasDropdown?: boolean;
}
declare const ToolbarButton: React.ForwardRefExoticComponent<ToolbarButtonProps & React.RefAttributes<HTMLButtonElement>>;
declare function ToolbarDivider(): import("react/jsx-runtime").JSX.Element;
export interface RichTextareaToolbarProps {
    className?: string;
    /** Called when AI assist button is clicked */
    onAiAssist?: () => void;
    /** Called when undo is clicked */
    onUndo?: () => void;
    /** Called when redo is clicked */
    onRedo?: () => void;
    /** Called when expand/fullscreen button is clicked */
    onExpand?: () => void;
    /** Show AI assist button */
    showAiAssist?: boolean;
    /** Show expand button */
    showExpand?: boolean;
    /** Disabled state */
    disabled?: boolean;
    /** RTL mode */
    rtl?: boolean;
    /** Formatting state */
    formatting?: {
        bold?: boolean;
        italic?: boolean;
        underline?: boolean;
    };
    /** Formatting callbacks */
    onFormatChange?: (format: 'bold' | 'italic' | 'underline') => void;
}
declare function RichTextareaToolbar({ className, onAiAssist, onUndo, onRedo, onExpand, showAiAssist, showExpand, disabled, rtl, formatting, onFormatChange, }: RichTextareaToolbarProps): import("react/jsx-runtime").JSX.Element;
export interface RichTextareaProps extends Omit<React.ComponentProps<typeof TextareaBase>, 'children'> {
    /** Label text displayed above the editor */
    label?: string;
    /** Hint text displayed below the editor */
    hint?: string;
    /** Error message displayed below the editor */
    error?: string;
    /** Show required indicator */
    required?: boolean;
    /** Show help icon next to label */
    showHelpIcon?: boolean;
    /** Callback when help icon is clicked */
    onHelpClick?: () => void;
    /** Show character count */
    showCharCount?: boolean;
    /** Maximum character count */
    maxLength?: number;
    /** Current character count (controlled) */
    charCount?: number;
    /** Show resize handle */
    showResizeHandle?: boolean;
    /** Show AI assist button in toolbar */
    showAiAssist?: boolean;
    /** Show expand button in toolbar */
    showExpand?: boolean;
    /** Called when AI assist button is clicked */
    onAiAssist?: () => void;
    /** Called when undo is clicked */
    onUndo?: () => void;
    /** Called when redo is clicked */
    onRedo?: () => void;
    /** Called when expand button is clicked */
    onExpand?: () => void;
    /** RTL mode */
    rtl?: boolean;
    /** Formatting state */
    formatting?: {
        bold?: boolean;
        italic?: boolean;
        underline?: boolean;
    };
    /** Formatting callbacks */
    onFormatChange?: (format: 'bold' | 'italic' | 'underline') => void;
}
declare const RichTextarea: React.ForwardRefExoticComponent<Omit<RichTextareaProps, "ref"> & React.RefAttributes<HTMLTextAreaElement>>;
export { RichTextarea, RichTextareaToolbar, ToolbarButton, ToolbarDivider };
