import { ActionOptions } from './others'; declare const selfIntegration: (global?: boolean) => { exists: () => boolean; ElementActions: { new (): {}; elements: Map; getElement(elementPath: string): any; handleCall(elementPath: string, key: string, args?: any[]): any; handleGet(elementPath: string, key: string): any; handleSet(elementPath: string, key: string, value: any): void; }; getElement: (selectors: string, contextNode?: Element | Document, index?: number) => Element; getElements: (selectors: string, contextNode?: Element | Document) => Element[]; getElementBySelectors: (selectors: string, contextNode?: Element | Document, index?: number) => Element | null; getElementsBySelectors: (selectors: string, contextNode?: Element | Document) => Element[]; getElementByXPath: (expression: string, contextNode?: Element | Document, index?: number) => Node | null; getElementsByXPath: (expression: string, contextNode?: Element | Document) => Element[]; triggerEvent: (element: Element, type: "click" | "input" | "submit" | "keydown" | "keyup" | "keypress" | "change" | "mouseover" | "mouseout" | "focus" | "blur" | "load" | string) => void; triggerPaste: (element: HTMLInputElement | HTMLTextAreaElement) => void; setValue: (element: Element, value: any) => void; isXPath: (expression: string) => RegExpMatchArray | null; filesToFileList: (files: FileList) => FileList; getBlob: (url: string) => Promise; dataUrlToFile: (dataUrl: string, name: string) => File; blobToFile: (blob: Blob, name: string) => File; goto: (url: string) => string; reload: () => void; url: () => string; close: () => void; zoom: (zoomFactor: number) => number; waitFor: (func: Function, args: any[], options?: { tryLimit?: number; delay?: number; }) => Promise; waitForNavigation: (options?: { tryLimit?: number; delay?: number; }) => Promise; waitForElement: (selectors: string, options?: { tryLimit?: number; delay?: number; }, index?: number) => Promise; waitForElementMiss: (selectors: string, options?: { tryLimit?: number; delay?: number; }, index?: number) => Promise; click: (selectors: string, index?: number, { scrollToElementBeforeAction, scrollIntoViewOptions }?: ActionOptions) => boolean; elementExists: (selectors: string, index?: number) => boolean; execPasteTo: (selectors: string, index?: number, { scrollToElementBeforeAction, scrollIntoViewOptions }?: ActionOptions) => boolean; input: (selectors: string, value: any, index?: number, { scrollToElementBeforeAction, scrollIntoViewOptions }?: ActionOptions) => boolean; elementCatcher: { current?: { originalFunc: any; elements: Element[]; tagNames: string[]; }; catch: (tagNames: string[]) => boolean; terminate: () => boolean; }; manualClick: { current?: { element: Element | any; }; enable: Function; disable: Function; }; }; declare const Self: { exists: () => boolean; ElementActions: { new (): {}; elements: Map; getElement(elementPath: string): any; handleCall(elementPath: string, key: string, args?: any[]): any; handleGet(elementPath: string, key: string): any; handleSet(elementPath: string, key: string, value: any): void; }; getElement: (selectors: string, contextNode?: Element | Document, index?: number) => Element; getElements: (selectors: string, contextNode?: Element | Document) => Element[]; getElementBySelectors: (selectors: string, contextNode?: Element | Document, index?: number) => Element | null; getElementsBySelectors: (selectors: string, contextNode?: Element | Document) => Element[]; getElementByXPath: (expression: string, contextNode?: Element | Document, index?: number) => Node | null; getElementsByXPath: (expression: string, contextNode?: Element | Document) => Element[]; triggerEvent: (element: Element, type: "click" | "input" | "submit" | "keydown" | "keyup" | "keypress" | "change" | "mouseover" | "mouseout" | "focus" | "blur" | "load" | string) => void; triggerPaste: (element: HTMLInputElement | HTMLTextAreaElement) => void; setValue: (element: Element, value: any) => void; isXPath: (expression: string) => RegExpMatchArray | null; filesToFileList: (files: FileList) => FileList; getBlob: (url: string) => Promise; dataUrlToFile: (dataUrl: string, name: string) => File; blobToFile: (blob: Blob, name: string) => File; goto: (url: string) => string; reload: () => void; url: () => string; close: () => void; zoom: (zoomFactor: number) => number; waitFor: (func: Function, args: any[], options?: { tryLimit?: number; delay?: number; }) => Promise; waitForNavigation: (options?: { tryLimit?: number; delay?: number; }) => Promise; waitForElement: (selectors: string, options?: { tryLimit?: number; delay?: number; }, index?: number) => Promise; waitForElementMiss: (selectors: string, options?: { tryLimit?: number; delay?: number; }, index?: number) => Promise; click: (selectors: string, index?: number, { scrollToElementBeforeAction, scrollIntoViewOptions }?: ActionOptions) => boolean; elementExists: (selectors: string, index?: number) => boolean; execPasteTo: (selectors: string, index?: number, { scrollToElementBeforeAction, scrollIntoViewOptions }?: ActionOptions) => boolean; input: (selectors: string, value: any, index?: number, { scrollToElementBeforeAction, scrollIntoViewOptions }?: ActionOptions) => boolean; elementCatcher: { current?: { originalFunc: any; elements: Element[]; tagNames: string[]; }; catch: (tagNames: string[]) => boolean; terminate: () => boolean; }; manualClick: { current?: { element: Element | any; }; enable: Function; disable: Function; }; }; export default Self; export { selfIntegration };