/** @component editable-textfield */
import { ElementRef, EventEmitter } from '@angular/core';
import { ControlValueAccessor, NgControl } from '@angular/forms';
export declare class EditableTextfieldComponent implements ControlValueAccessor {
    control: NgControl;
    private elementRef;
    private _alignment;
    /** @option Sets optional button alignment | null */
    alignment: string;
    /** @option Optional css class name for non-edit text div | null */
    buttonClass: string;
    /** @option Optional css class string on div wrapping input | ''  */
    className: string;
    /** @option Sets the disabled attribute of the Input | false */
    disabled: boolean;
    /** @option Unique HTML ID used for tying label to HTML input for automated testing */
    htmlId: string;
    /** @option Input css class name string */
    inputClass: string;
    /** @option Overall input group size | '' */
    containerSize: string;
    /** @option Input size | '' */
    inputSize: string;
    /** @option Placeholder text to display when Input is empty | '' */
    placeholder: string;
    /** @option Determines if Input can be edited | false */
    readOnly: boolean;
    /** @option Input type | 'text' */
    type: string;
    /** @option Sets the attribute name to the input element | '' */
    name: string;
    /** @option Optional function after done editing */
    handleDoneEditing: EventEmitter<any>;
    inputRef: ElementRef;
    private innerValue;
    isEditing: boolean;
    private onTouchedCallback;
    private onChangeCallback;
    value: any;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    onKeyDown(e: any): void;
    handleEnter(e: any, value: any): void;
    handleKey(event: any): void;
    onBlur(e: any): void;
    onFocus(event: any): void;
    constructor(control: NgControl, elementRef: ElementRef);
    handleClick: () => void;
}
