import { Browser } from 'browserstack';
import { Logger } from './karma_logger';
import { BrowserStackCredentials } from './browserstack_helpers';
/**
 * Loads and caches the list of browsers supported by BrowserStack
 */
export declare class BrowserStackBrowsers {
    private _credentials;
    private _allBrowsersPromise?;
    constructor(_credentials: BrowserStackCredentials);
    getIOSDevices(osVersion: string | null, deviceType: 'iphone' | 'ipad' | null, browserType: 'safari' | 'chrome' | null, realDevices: boolean | null, log: Logger): Promise<Browser[]>;
    getAndroidDevices(osVersion: string | null, browserType: 'chrome' | 'samsung' | null, realDevices: boolean | null, log: Logger): Promise<Browser[]>;
    private getAllBrowsers;
}
export declare function makeBrowserStackBrowsers(browserStackCredentials: BrowserStackCredentials): BrowserStackBrowsers;
