flagpole
Version:
Simple and fast DOM integration, headless or headful browser, and REST API testing framework.
51 lines (50 loc) • 1.89 kB
TypeScript
import { ProtoValue, Value, iValue } from './value';
import { Scenario } from './scenario';
import { AssertionContext } from './assertioncontext';
export declare class DOMElement extends ProtoValue implements iValue {
protected _path: string;
readonly path: string;
readonly name: string;
static create(input: any, context: AssertionContext, name?: string | null, path?: string): Promise<DOMElement>;
private constructor();
toString(): string;
getClassName(): Promise<Value>;
hasClassName(className: string): Promise<Value>;
getTagName(): Promise<Value>;
getInnerText(): Promise<Value>;
getInnerHtml(): Promise<Value>;
getOuterHtml(): Promise<Value>;
hasAttribute(key: string): Promise<Value>;
getAttribute(key: string): Promise<Value>;
hasProperty(key: string): Promise<Value>;
getProperty(key: string): Promise<Value>;
hasData(key: string): Promise<Value>;
getData(key: string): Promise<Value>;
getValue(): Promise<Value>;
getText(): Promise<Value>;
fillForm(formData: any): Promise<any>;
submit(): Promise<any>;
submit(callback: Function): Promise<any>;
submit(message: string, callback: Function): Promise<any>;
click(): Promise<any>;
click(callback: Function): Promise<any>;
click(message: string, callback: Function): Promise<any>;
load(): Promise<Scenario>;
load(callback: Function): Promise<Scenario>;
load(message: string, callback: Function): Promise<Scenario>;
private _isFormTag;
private _isButtonTag;
private _isLinkTag;
private _isImageTag;
private _isVideoTag;
private _isAudioTag;
private _isScriptTag;
private _isStylesheetTag;
private _isClickable;
private _getUrl;
private _getLambdaScenarioType;
private _getLink;
private _createLambdaScenario;
private _getTagName;
private _getAttribute;
}