import type { Region, Size } from '@applitools/utils';
import type { DriverInfo } from '../types';
export type Driver = any;
export type Element = any;
export type Selector = string | {
    using: string;
    value: string;
};
type CommonSelector = string | {
    selector: string;
    type?: string;
};
export declare function isDriver(driver: any): driver is Driver;
export declare function isElement(element: any): element is Element;
export declare function isSelector(selector: any): selector is Selector;
export declare function toSelector(selector: Selector | {
    selector: Selector;
}): Selector;
export declare function toSimpleCommonSelector(selector: Selector): CommonSelector | null;
export declare function extractSelector(element: Element): any;
export declare function isStaleElementError(): boolean;
export declare function isEqualElements(_driver: Driver, element1: Element, element2: Element): Promise<boolean>;
export declare function executeScript(driver: Driver, script: ((arg: any) => any) | string, arg: any): Promise<any>;
export declare function findElement(driver: Driver, selector: Selector, parent?: Element): Promise<Element | null>;
export declare function findElements(driver: Driver, selector: Selector, parent?: Element): Promise<Element[]>;
export declare function getElementText(_driver: Driver, element: Element): Promise<string>;
export declare function mainContext(driver: Driver): Promise<Driver>;
export declare function parentContext(driver: Driver): Promise<Driver>;
export declare function childContext(driver: Driver, element: Element): Promise<Driver>;
export declare function takeScreenshot(driver: Driver): Promise<Uint8Array | string>;
export declare function getDriverInfo(driver: Driver): Promise<DriverInfo>;
export declare function getWindowSize(driver: Driver): Promise<Size>;
export declare function setWindowSize(driver: Driver, size: Size): Promise<void>;
export declare function getOrientation(_driver: Driver): Promise<'portrait' | 'landscape'>;
export declare function getUrl(driver: Driver): Promise<string>;
export declare function getTitle(driver: Driver): Promise<string>;
export declare function visit(driver: Driver, url: string): Promise<void>;
export declare function getCurrentWorld(driver: Driver): Promise<any>;
export declare function getElementRegion(_driver: Driver, element: Element): Promise<Region>;
export declare function getElementAttribute(_driver: Driver, element: Element, attr: string): Promise<string>;
export declare function performAction(_driver: Driver, _steps: any[]): Promise<void>;
export declare function getCapabilities(driver: Driver): Promise<Record<string, any>>;
export declare function isUserFunction(_ref: any): Promise<boolean>;
export declare function executeUserFunction(_userFunction: any): Promise<void>;
export {};
