import Connection from './Connection'; interface IElementOptions { elementId: string; nodeId?: string; videoId?: string; pageId: number; tagName: string; } interface ITouch { identifier?: number; pageX?: number; pageY?: number; clientX?: number; clientY?: number; } interface ITouchEventOptions { touches?: ITouch[]; changedTouches?: ITouch[]; } interface IEventOptions { eventName: string; $?: string; touches?: ITouch[]; changedTouches?: ITouch[]; detail?: { [key: string]: any; }; } export default class Element { tagName: string; protected nodeId: string | null; private videoId; private connection; private id; private pageId; private elementMap; private publicProps; constructor(connection: Connection, options: IElementOptions, elementMap: Map); $(selector: string): Promise; $$(selector: string): Promise; size(): Promise<{ width: string; height: string; }>; offset(): Promise; text(): Promise; attribute(name: string): Promise; value(): Promise; property(name: string): Promise; wxml(): Promise; outerWxml(): Promise; style(name: string): Promise; tap(): Promise; longpress(): Promise; trigger(type: string, detail?: any): Promise; touchstart(options?: ITouchEventOptions): Promise; touchmove(options?: ITouchEventOptions): Promise; touchend(options?: ITouchEventOptions): Promise; dispatchEvent(options: IEventOptions): Promise; private domProperty; protected _property(name: string | string[]): Promise; private getter; protected send(method: string, params?: any): Promise; protected callFunction(functionName: string, ...args: any[]): Promise; static create(connection: Connection, options: IElementOptions, elementMap: Map): Element; } export declare class CustomElement extends Element { setData(data: any): Promise; data(path?: string): Promise; callMethod(method: string, ...args: any[]): Promise; } export declare class InputElement extends Element { input(value: string): Promise; } export declare class TextareaElement extends Element { input(value: string): Promise; } export declare class ScrollViewElement extends Element { scrollTo(x: number, y: number): Promise; property(name: string): Promise; scrollWidth(): Promise; scrollHeight(): Promise; } export declare class SwiperElement extends Element { swipeTo(index: number): Promise; } export declare class MovableViewElement extends Element { moveTo(x: number, y: number): Promise; property(name: string): Promise; } export declare class SwitchElement extends Element { tap(): Promise; } export declare class SliderElement extends Element { slideTo(value: number): Promise; } export declare class ContextElement extends Element { callContextMethod(method: string, ...args: any[]): Promise; } export {};