import { IHTMLElement } from '../interface/controls/html-element';
import { IInputText } from '../interface/controls/input-text';
import { HTMLElement } from './html-element';
/**
 *
 *
 * @export
 * @class InputText
 * @extends {HTMLElement}
 * @implements {IInputText}
 */
export declare class InputText extends HTMLElement implements IInputText {
    /**
     * Creates an instance of InputText.
     * @param {string} cssLocator
     * @memberof InputText
     */
    constructor(cssLocator: string);
    /**
     *
     *
     * @protected
     * @param {(keyof IHTMLElement | keyof IInputText)} methodName
     * @param {Array<any>} [args=[]]
     * @return {*}  {Promise<any>}
     * @memberof InputText
     */
    protected callIfMethodExists(methodName: keyof IHTMLElement | keyof IInputText, args?: Array<any>): Promise<any>;
    /**
     *
     * Schedules a command to clear the value of this element
     * @return {*}  {Promise<void>}
     * @memberof InputText
     */
    clear(): Promise<void>;
    /**
     *
     * Schedules a command to focus in this element
     * @return {*}  {Promise<void>}
     * @memberof InputText
     */
    focus(): Promise<void>;
    /**
     *
     * Schedules a command to query for the value attribute of the element
     * @return {*}  {Promise<string>}
     * @memberof InputText
     */
    getText(): Promise<string>;
    /**
     *
     * Schedules a command to query for the value attribute of the element
     * @return {*}  {Promise<string>}
     * @memberof InputText
     */
    getValue(): Promise<string>;
    /**
     *
     * Schedules a command to type a sequence in the element
     * @param {string} keys
     * @return {*}  {Promise<void>}
     * @memberof InputText
     */
    type(keys: string): Promise<void>;
    /**
     *
     * Schedules a command to type a sequence in the element
     * @param {string} keys
     * @return {*}  {Promise<void>}
     * @memberof InputText
     */
    typeAndEnter(keys: string): Promise<void>;
    /**
     *
     * Schedules a command to type a sequence in the element
     * @param {string} keys
     * @return {*}  {Promise<void>}
     * @memberof InputText
     */
    typeAndTab(keys: string): Promise<void>;
}
