import React from "react";
import L3Component from "../../types/L3Component";
import { L3ComponentProps } from "../../types";
import { InputType } from "./EditableInputConstants";
import "./EditableInput.scss";
export interface EditableInputProps extends L3ComponentProps {
    value?: string;
    placeholder?: string;
    inputType?: InputType;
    autoSize?: boolean;
    autoComplete?: boolean;
    maxLength?: number;
    shouldFocusOnMount?: boolean;
    textareaSubmitOnEnter?: boolean;
    ariaLabel?: string;
    customColor?: string;
    tabIndex?: number;
    isValidValue?: (value: string) => boolean;
    onFinishEditing?: (value: string, event: React.KeyboardEvent | React.FocusEvent) => void;
    onArrowKeyDown?: (value: string, event: React.KeyboardEvent) => void;
    onClick?: () => void;
    onKeyPress?: () => void;
    selectOnMount?: () => void;
    ignoreBlurClass?: string;
    onIgnoreBlurEvent?: (value: string) => void;
    onFocus?: (event: React.FocusEvent) => void;
    onBlur?: (event: React.FocusEvent) => void;
    onCancelEditing?: (event: React.KeyboardEvent) => void;
    onChange?: (value: string) => void;
    onError?: () => void;
    onSuccess?: () => void;
    onKeyDown?: (event: React.KeyboardEvent, value: string) => void;
    onTabHandler?: (value: string, event: React.KeyboardEvent) => void;
    autoFocus?: boolean;
}
declare const EditableInput: L3Component<EditableInputProps>;
export default EditableInput;
