import * as d from '../../declarations';
import * as pd from './puppeteer-declarations';
import * as puppeteer from 'puppeteer';
import { EventSpy } from './puppeteer-events';
import { MockHTMLElement } from '@mock-doc';
export declare class E2EElement extends MockHTMLElement implements pd.E2EElementInternal {
    private _page;
    private _elmHandle;
    private _queuedActions;
    private _queueAction;
    constructor(_page: pd.E2EPageInternal, _elmHandle: puppeteer.ElementHandle);
    find(selector: string): Promise<E2EElement>;
    findAll(selector: string): Promise<E2EElement[]>;
    callMethod(methodName: string, ...methodArgs: any[]): Promise<any>;
    triggerEvent(eventName: string, eventInitDict?: d.EventInitDict): void;
    spyOnEvent(eventName: string): Promise<EventSpy>;
    click(options?: puppeteer.ClickOptions): Promise<void>;
    focus(): Promise<void>;
    hover(): Promise<void>;
    isVisible(): Promise<boolean>;
    waitForEvent(eventName: string): Promise<any>;
    waitForVisible(): Promise<void>;
    waitForNotVisible(): Promise<void>;
    isIntersectingViewport(): Promise<boolean>;
    press(key: string, options?: {
        text?: string;
        delay?: number;
    }): Promise<void>;
    tap(): Promise<void>;
    type(text: string, options?: {
        delay: number;
    }): Promise<void>;
    getProperty(propertyName: string): Promise<any>;
    setProperty(propertyName: string, value: any): void;
    getAttribute(name: string): any;
    setAttribute(name: string, value: any): void;
    readonly classList: any;
    className: string;
    id: string;
    innerHTML: string;
    innerText: string;
    nodeValue: string;
    outerHTML: any;
    shadowRoot: any;
    tabIndex: number;
    textContent: string;
    title: string;
    getComputedStyle(pseudoElt?: string | null): Promise<any>;
    e2eRunActions(): Promise<any>;
    e2eSync(): Promise<void>;
    private _validate;
    e2eDispose(): Promise<void>;
}
