import { HTMLProps } from 'react';
import { FieldEditorInputProps } from './FieldEditor.js';
import { StorageKey } from '../modules/ModuleFE_LocalStorage.js';
import { ComponentSync } from '../core/ComponentSync.js';
import { InputType } from '../components/TS_Input/TS_BaseInput.js';
type State = {
isEditing: boolean;
storageKey: StorageKey;
};
type Props = {
inputProps: FieldEditorInputProps;
labelProps?: HTMLProps;
type: InputType;
id: string;
onAccept: (value: string) => void;
value?: string;
};
export declare class FieldEditorWithButtons extends ComponentSync {
private createStorageKey;
protected deriveStateFromProps(nextProps: Props): {
storageKey: StorageKey;
isEditing: boolean;
};
componentDidUpdate(prevProps: Readonly, prevState: Readonly): void;
handleEdit: () => void;
handleSave: () => void;
handleCancel: () => void;
render(): import("react/jsx-runtime").JSX.Element;
private renderEditButton;
private renderControlButtons;
}
export {};