import type { AndroidDriver, AndroidDriverCaps } from '../../driver';
import type { UnlockType } from '../types';
/**
 * Locks the device and optionally unlocks it after a specified number of seconds.
 *
 * @param seconds - Optional number of seconds to wait before unlocking. If not provided or invalid, the device remains locked.
 */
export declare function lock(this: AndroidDriver, seconds?: number): Promise<void>;
/**
 * Checks if the device screen is currently locked.
 *
 * @returns True if the screen is locked, false otherwise
 */
export declare function isLocked(this: AndroidDriver): Promise<boolean>;
/**
 * Unlocks the device using the unlock options from session capabilities.
 */
export declare function unlock(this: AndroidDriver): Promise<void>;
/**
 * Unlocks the device with the specified options.
 *
 * @param key - The unlock key. The value of this key depends on the actual unlock type and
 *              could be a pin/password/pattern value or a biometric finger id.
 *              If not provided then the corresponding value from session capabilities is used.
 * @param type - The unlock type. If not provided then the corresponding value from session capabilities is used.
 * @param strategy - Setting it to 'uiautomator' will enforce the driver to avoid using special
 *                  ADB shortcuts in order to speed up the unlock procedure. 'uiautomator' by default.
 * @param timeoutMs - The maximum time in milliseconds to wait until the screen gets unlocked. 2000ms by default.
 */
export declare function mobileUnlock(this: AndroidDriver, key?: string, type?: UnlockType, strategy?: string, timeoutMs?: number): Promise<void>;
/**
 * Unlocks the device with the specified capabilities.
 *
 * @param caps - Optional capabilities to use for unlocking. If not provided, uses session capabilities.
 */
export declare function unlockWithOptions(this: AndroidDriver, caps?: AndroidDriverCaps | null): Promise<void>;
//# sourceMappingURL=exports.d.ts.map