import { Rect } from '@appium/types';
import { SettingsReturn } from '@wdio/protocols';
import { AppiumCapabilities, AppiumAndroidCapabilities } from '@wdio/types/build/Capabilities';
import { Uiautomator2DeviceDetails } from 'appium-uiautomator2-driver/lib/types';
export { AlternativeForkFunction, AlternativeForkProcess, AndroidEmulatorConfiguration, AppiumServerConfig, CloudTrainingConfiguration, MobileAppConfig, MobileRunDeviceInfo, } from '@mablhq-internal/runtime/platform/types/mobile';
import type { MobileEnvConfig as PlainMobileEnvConfig } from '@mablhq-internal/runtime/platform/types/mobile';
export type MablAppiumCapabilities = AppiumCapabilities & SettingsReturn & (AppiumAndroidCapabilities | Uiautomator2DeviceDetails);
export declare enum XCUIElementType {
    button = "XCUIElementTypeButton",
    checkbox = "XCUIElementTypeCheckBox",
    icon = "XCUIElementTypeIcon",
    image = "XCUIElementTypeImage",
    other = "XCUIElementTypeOther",
    searchField = "XCUIElementTypeSearchField",
    secureTextField = "XCUIElementTypeSecureTextField",
    staticText = "XCUIElementTypeStaticText",
    switch = "XCUIElementTypeSwitch",
    textField = "XCUIElementTypeTextField",
    textView = "XCUIElementTypeTextView"
}
export declare enum AndroidElementType {
    autoCompleteTextView = "android.widget.AutoCompleteTextView",
    button = "android.widget.Button",
    editText = "android.widget.EditText",
    multiAutoCompleteTextView = "android.widget.MultiAutoCompleteTextView"
}
export declare enum ClientLogLevel {
    debug = "debug",
    error = "error",
    info = "info",
    silent = "silent",
    trace = "trace",
    warn = "warn"
}
export declare const MOBILE_ELEMENT_IDENTIFIER_PROPERTY = "element-6066-11e4-a52e-4f735466cecf";
export declare const MOBILE_TEXT_FIELD_TYPES: string[];
export type ElementReference = Awaited<ReturnType<WebdriverIO.Browser['findElement']>> & {
    rect?: Rect;
};
export interface AppiumNoSuchElementError {
    error: string;
    message?: string;
    stacktrace?: string;
}
export declare function isElementReference(value: ElementReference | AppiumNoSuchElementError): value is ElementReference;
export declare function isAppiumNoSuchElementError(value: ElementReference | AppiumNoSuchElementError): value is AppiumNoSuchElementError;
export interface MobileDeviceScreenInfo {
    scale: number;
    screenSize: {
        width: number;
        height: number;
    };
    statusBarSize: {
        width: number;
        height: number;
    };
}
export interface MobileEnvConfig extends PlainMobileEnvConfig {
    additionalCapabilities?: MablAppiumCapabilities;
}
export interface LiveViewInfo {
    location: string;
}
//# sourceMappingURL=types.d.ts.map