import { AutoSizedTextAreaProps } from "../TextArea/AutoSizeTextArea.js";
import "../TextArea/index.js";
import { FC, ReactNode } from "react";

//#region src/components/ContentEditor/ContentEditorTextArea.d.ts
/** Props for the ContentEditorTextArea component */
type ContentEditorTextAreaProps = {
  /** The current content to display and edit */children: string; /** Callback function called when content is saved/validated */
  onContentChange: (content: string) => void; /** Whether the editor is disabled */
  disabled?: boolean; /** Optional validation function to check content validity */
  validate?: (content: string) => boolean; /** Additional buttons to display alongside edit actions */
  additionalButtons?: ReactNode;
} & Omit<AutoSizedTextAreaProps, 'children'>;
/**
 * ContentEditorTextArea Component
 *
 * An inline editing component for multi-line text with autocomplete functionality,
 * user authentication integration, and validation support. This component combines
 * the auto-sizing textarea with smart autocomplete features.
 *
 * ## Features
 * - **Auto-sizing Textarea**: Automatically adjusts height to content
 * - **Autocomplete Integration**: Smart text completion when user is authenticated
 * - **Validation Support**: Optional content validation with visual feedback
 * - **Action Buttons**: Built-in save/cancel with support for additional buttons
 * - **Keyboard Shortcuts**: Enter to save, Escape to cancel
 * - **User Authentication**: Autocomplete features activate based on auth status
 * - **Accessibility**: Full ARIA support and keyboard navigation
 *
 * ## Accessibility
 * - Proper ARIA labels and descriptions for all controls
 * - Keyboard navigation (Tab, Enter, Escape)
 * - Screen reader support for validation states and user auth status
 * - Focus management and visual indicators
 *
 * @param children - Current textarea content
 * @param onContentChange - Callback when content is saved
 * @param disabled - Whether the editor is disabled
 * @param validate - Optional validation function
 * @param additionalButtons - Extra buttons to display
 * @param props - Additional AutoSizedTextArea component props
 */
declare const ContentEditorTextArea: FC<ContentEditorTextAreaProps>;
//#endregion
export { ContentEditorTextArea, ContentEditorTextAreaProps };
//# sourceMappingURL=ContentEditorTextArea.d.ts.map