/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { ITextFieldComponent } from './text-field';
import { FieldAdapter, IFieldAdapter } from '../field/field-adapter';
export interface ITextFieldAdapter extends IFieldAdapter {
    detectTextarea(): void;
}
export declare class TextFieldAdapter extends FieldAdapter implements ITextFieldAdapter {
    protected _inputElements: Array<HTMLInputElement | HTMLTextAreaElement>;
    protected _inputMutationObserverInstances: MutationObserver[];
    constructor(component: ITextFieldComponent);
    initialize(): void;
    destroy(): void;
    detectTextarea(): void;
    addInputListener(type: string, listener: (evt: Event) => void): void;
    removeInputListener(type: string, listener: (evt: Event) => void): void;
    setValueChangedListener(context: any, listener: (value: any) => void): void;
    inputHasValue(): boolean;
    hasPlaceholder(): boolean;
    inputHasFocus(target?: EventTarget | null): boolean;
    setInputClass(className: string): void;
    removeInputClass(className: string): void;
    setInputAttributeObserver(listener: (name: string, value: string) => void): void;
    isDisabled(): boolean;
    isReadonly(): boolean;
    protected _inputsSome(action: (input: HTMLInputElement) => boolean): boolean;
    protected _applyToInputs(action: (input: HTMLInputElement, index: number) => void): void;
    protected _handleMultiInputs(): void;
    private _createSeperatorElement;
}
