import { AfterViewInit, ElementRef, OnDestroy, WritableSignal } from '@angular/core';
import { displayExtraButtonFieldElement } from '../../tcc-abstract-display-element';
import { TccInputMask } from '../../../../models/inputMask.model';
import { LocaleService } from '../../../../../core/services/tcc-locale/tcc-locale.service';
export declare class TccInputElementComponent extends displayExtraButtonFieldElement implements AfterViewInit, OnDestroy {
    private localeService;
    background: string;
    constructor(localeService: LocaleService, elementRef: ElementRef);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    _element: TccInputMask._DisplayInputElement | TccInputMask._DisplayInputIntegerElement | TccInputMask._DisplayTextfieldElement | TccInputMask._DisplayTextElement;
    private valueChangesSubscription;
    hidePasswordText: boolean;
    hiddenValue: string;
    inputType: TccInputMask.inputType;
    dataType: typeof TccInputMask.inputDataType;
    private passwordChanged;
    showHidePasswordButton: boolean;
    complexValues: {
        [childPropertyId: string]: TccInputMask.FormGroupValueUnion;
    };
    _children?: TccInputMask.SectionContent[];
    _tooltip: string;
    _showRoot: boolean;
    document: Document;
    valueAutofilled$: WritableSignal<boolean>;
    decimalPlaces: number;
    /**
     * gets called, if the browser autofills the input field and tells the lable to float;
     * @param event animationEvent
     */
    _onAnimationStart(event: AnimationEvent): void;
    /**
     * get the value of the element
     *
     * @returns element.value
    */
    _getValue(onlyChanged?: boolean): TccInputMask.ValueUnion;
    private getComplexDisplayPart;
    refresh(): void;
    private setInitComplexValue;
    private _setInitComplexValue;
    refreshComplexValue(): void;
    verify(): boolean;
    focus(): void;
    protected onSetElement(): void;
    protected onSetForm(): void;
    setValue(value: TccInputMask.ValueUnion, options?: {
        setValueChange?: boolean;
        emitChangeEvent?: boolean;
        index?: number;
    }): void;
    /**
     * sets a value suggestion of the element
     *
     * @param {TccInputMask.ValueUnion} value
     * @param {boolean} setValueChange true: set the value in value changes as well
    */
    setValueSuggestion(value: TccInputMask.ValueUnion, options?: TccInputMask.setValueSuggestionOptions): {
        Value: TccInputMask.ValueUnion;
    };
    setTooltip(value: string): void;
    addInputButton(options: TccInputMask.extraButtonOptions): void;
    deleteInputButton(): void;
    private checkAndSetTooltip;
    private subscribeValueChangesForPasswordAlt;
    private getMaskedString;
    /**
     * toggles password / *******
    */
    showPassword(): void;
    inputElementKeyDown(): void;
    changeEvent(): void;
    /**
     * emits the changeEventExtended -> every keydown or any changes to the element
     *
     * @param {boolean} changeElement if the element should be changed (_element.value)
    */
    changeEventExtended(changeElement?: boolean): void;
    protected changeElement(): void;
}
