import type { CoreSimulator, InteractsWithApps, LaunchAppOptions } from '../types';
type CoreSimulatorWithApps = CoreSimulator & InteractsWithApps;
/**
 * Install valid .app package on Simulator.
 *
 * @param app The path to the .app package.
 */
export declare function installApp(this: CoreSimulatorWithApps, app: string): Promise<void>;
/**
 * Returns user installed bundle ids which has 'bundleName' in their Info.Plist as 'CFBundleName'
 *
 * @param bundleName The bundle name of the application to be checked.
 * @return The list of bundle ids which have 'bundleName'
 */
export declare function getUserInstalledBundleIdsByBundleName(this: CoreSimulatorWithApps, bundleName: string): Promise<string[]>;
/**
 * Verify whether the particular application is installed on Simulator.
 *
 * @param bundleId The bundle id of the application to be checked.
 * @return True if the given application is installed.
 */
export declare function isAppInstalled(this: CoreSimulatorWithApps, bundleId: string): Promise<boolean>;
/**
 * Uninstall the given application from the current Simulator.
 *
 * @param bundleId The bundle ID of the application to be removed.
 */
export declare function removeApp(this: CoreSimulatorWithApps, bundleId: string): Promise<void>;
/**
 * Starts the given application on Simulator
 *
 * @param bundleId The bundle ID of the application to be launched
 * @param opts Launch options
 */
export declare function launchApp(this: CoreSimulatorWithApps, bundleId: string, opts?: LaunchAppOptions): Promise<void>;
/**
 * Stops the given application on Simulator.
 *
 * @param bundleId The bundle ID of the application to be stopped
 */
export declare function terminateApp(this: CoreSimulatorWithApps, bundleId: string): Promise<void>;
/**
 * Check if app with the given identifier is running.
 *
 * @param bundleId The bundle ID of the application to be checked.
 */
export declare function isAppRunning(this: CoreSimulatorWithApps, bundleId: string): Promise<boolean>;
/**
 * Scrub (delete the preferences and changed files) the particular application on Simulator.
 * The app will be terminated automatically if it is running.
 *
 * @param bundleId Bundle identifier of the application.
 * @throws {Error} if the given app is not installed.
 */
export declare function scrubApp(this: CoreSimulatorWithApps, bundleId: string): Promise<void>;
export {};
//# sourceMappingURL=applications.d.ts.map