import { Locator } from 'playwright-core';
import { IHTMLElement } from '../interface/controls/html-element';
import { IPageObject } from '../interface/page/page-object';
import { IConfirmation } from '../interface/wallet/confirmation';
import { Frame, Page } from '../types';
export declare class PlaywrightHTMLElement implements IHTMLElement {
    protected page: Page;
    protected frame: Frame;
    protected webElement: Locator;
    private element;
    protected timeout: number;
    constructor(cssLocator: string, timeout?: number, element?: any);
    getWebElement(cssLocator: string): Locator;
    click<TPage>(page?: new () => TPage): Promise<any>;
    clickAndWait(duration: number): Promise<void>;
    clickAndOpensInNewWindow<TPage>(page?: new () => TPage): Promise<any>;
    clickAndOpensInWindow<TPage extends IConfirmation | IPageObject>(page: new () => TPage): Promise<any>;
    clickAndSwitchToMainWindow<TPage>(page?: new () => TPage): Promise<any>;
    getAttribute(attribute: string): Promise<string | null>;
    getCssValue(property: string): Promise<string | null>;
    getText(): Promise<string>;
    hover(): Promise<void>;
    isDisplayed(): Promise<boolean>;
    isEnabled(): Promise<boolean>;
    isVisible(): Promise<boolean>;
    type(keys: string): Promise<void>;
}
