import * as React from 'react';
import { StorageKey } from '../modules/StorageModule';
import { BaseComponent } from '../core/BaseComponent';
type State = {
    isEditing: boolean;
    storageKey: StorageKey<string>;
};
type Props = {
    inputStyle?: React.CSSProperties;
    labelStyle?: React.CSSProperties;
    placeholder?: string;
    id: string;
    onAccept: (value: string) => void;
    value?: string;
};
export declare class FieldEditorWithButtons extends BaseComponent<Props, State> {
    private createStorageKey;
    constructor(props: Props);
    componentDidUpdate(prevProps: Readonly<Props>, prevState: Readonly<State>): void;
    handleEdit: () => void;
    handleSave: () => void;
    handleCancel: () => void;
    render(): React.JSX.Element;
    private renderEditButton;
    private renderControlButtons;
}
export {};
