import { InputProps } from "../Input/Input.js";
import { FC, ReactNode } from "react";

//#region src/components/ContentEditor/ContentEditorInput.d.ts
/** Props for the ContentEditorInput component */
type ContentEditorInputProps = {
  /** The current content to display and edit */
  children: InputProps['value'];
  /** Callback function called when content is saved/validated */
  onContentChange: (content: InputProps['value']) => void;
  /** Whether the editor is disabled */
  disabled?: boolean;
  /** Optional validation function to check content validity */
  validate?: (content: InputProps['value']) => boolean;
  /** Additional buttons to display alongside edit actions */
  additionalButtons?: ReactNode;
} & Omit<InputProps, 'children'>;
/**
 * ContentEditorInput Component
 *
 * An inline editing component for single-line text input with validation,
 * cancel/save functionality, and support for additional action buttons.
 *
 * ## Features
 * - **Inline Input Editing**: Edit single-line content with immediate feedback
 * - **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
 * - **Accessibility**: Full ARIA support and keyboard navigation
 * - **State Management**: Handles editing states and validation
 *
 * ## Accessibility
 * - Proper ARIA labels and descriptions for all controls
 * - Keyboard navigation (Tab, Enter, Escape)
 * - Screen reader support for validation states
 * - Focus management and visual indicators
 *
 * @param children - Current input value
 * @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 Input component props
 */
declare const ContentEditorInput: FC<ContentEditorInputProps>;
//#endregion
export { ContentEditorInput, ContentEditorInputProps };
//# sourceMappingURL=ContentEditorInput.d.ts.map