export type ScanOptions = {
    /**
     * @default 10
     */
    attempts?: number;
};
type WindowCtx = {
    browser: WebdriverIO.Browser;
    handle: string;
    attempt: number;
    index: number;
};
/**
 * Provides helpers for iterating through all open WebDriver window handles.
 *
 * - `iterate` yields a context object for each window: the browser instance,
 *   its handle, and counters for attempt + index.
 * - Retries up to `attempts` times (default 10) to account for windows
 *   appearing or becoming available asynchronously.
 * - Uses `tryCatch` around `switchToWindow` so that invalid or closed
 *   handles are skipped without breaking iteration.
 *
 * This is the base utility for higher-level helpers like switching to
 * apps or extracting information from IO.Connect windows.
 */
export declare class WdioBrowserHandles {
    static iterate(browser: WebdriverIO.Browser, opts?: ScanOptions): AsyncGenerator<WindowCtx, void, void>;
}
export {};
