import { HTMLProps, ReactNode } from 'react'; import { StorageKey } from '../modules/ModuleFE_LocalStorage.js'; import { ComponentSync } from '../core/ComponentSync.js'; import { TS_InputProps } from '../components/TS_Input/TS_Input.js'; import { InputType } from '../components/TS_Input/TS_BaseInput.js'; export type FieldEditorInputProps = Omit, 'onChange' | 'value' | 'onAccept' | 'type' | 'id'>; export type EditorType = 'input' | 'textarea'; export type FieldEditorProps = { isEditing: boolean; value?: string; editorType?: EditorType; type: InputType; storageKey: StorageKey; inputProps?: FieldEditorInputProps; labelProps?: HTMLProps | ((value: string) => ReactNode); onAccept?: () => void; onCancel?: () => void; onBlur?: () => void; id: string; }; export declare class FieldEditor extends ComponentSync { constructor(props: FieldEditorProps); protected deriveStateFromProps(nextProps: FieldEditorProps): any; onChange: (value: string) => void; private renderInput; renderArea: (value: string) => import("react/jsx-runtime").JSX.Element; private renderLabel; render(): string | number | boolean | Iterable | import("react/jsx-runtime").JSX.Element | null | undefined; }