/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * */ import type { LexicalEditor } from 'lexical'; import * as React from 'react'; /** * Props for the {@link ContentEditableElement} component. In addition to an * `editor`, it accepts the standard `
` HTML attributes (except * `placeholder`), including the hyphenated `aria-*` attributes, which are the * preferred way to set ARIA properties. The camelCase `aria*` props (such as * `ariaLabel`) are also accepted but are retained only for backwards * compatibility. */ export type ContentEditableElementProps = { editor: LexicalEditor; ariaActiveDescendant?: React.AriaAttributes['aria-activedescendant']; ariaAutoComplete?: React.AriaAttributes['aria-autocomplete']; ariaControls?: React.AriaAttributes['aria-controls']; ariaDescribedBy?: React.AriaAttributes['aria-describedby']; ariaErrorMessage?: React.AriaAttributes['aria-errormessage']; ariaExpanded?: React.AriaAttributes['aria-expanded']; ariaInvalid?: React.AriaAttributes['aria-invalid']; ariaLabel?: React.AriaAttributes['aria-label']; ariaLabelledBy?: React.AriaAttributes['aria-labelledby']; ariaMultiline?: React.AriaAttributes['aria-multiline']; ariaOwns?: React.AriaAttributes['aria-owns']; ariaRequired?: React.AriaAttributes['aria-required']; autoCapitalize?: HTMLDivElement['autocapitalize']; 'data-testid'?: string | null | undefined; } & Omit, 'placeholder'>; /** * A lower-level building block for the editor's editable `
`. It binds the * given `editor` to the rendered element via * {@link LexicalEditor.setRootElement}, reflects the editor's editable state on * the `contentEditable` attribute, and applies the provided ARIA and HTML * attributes. Prefer {@link ContentEditable}, which reads the editor from * context and adds placeholder support, unless you need this extra control. */ export declare const ContentEditableElement: React.ForwardRefExoticComponent<{ editor: LexicalEditor; ariaActiveDescendant?: React.AriaAttributes["aria-activedescendant"]; ariaAutoComplete?: React.AriaAttributes["aria-autocomplete"]; ariaControls?: React.AriaAttributes["aria-controls"]; ariaDescribedBy?: React.AriaAttributes["aria-describedby"]; ariaErrorMessage?: React.AriaAttributes["aria-errormessage"]; ariaExpanded?: React.AriaAttributes["aria-expanded"]; ariaInvalid?: React.AriaAttributes["aria-invalid"]; ariaLabel?: React.AriaAttributes["aria-label"]; ariaLabelledBy?: React.AriaAttributes["aria-labelledby"]; ariaMultiline?: React.AriaAttributes["aria-multiline"]; ariaOwns?: React.AriaAttributes["aria-owns"]; ariaRequired?: React.AriaAttributes["aria-required"]; autoCapitalize?: HTMLDivElement["autocapitalize"]; 'data-testid'?: string | null | undefined; } & Omit, "placeholder"> & React.RefAttributes>;