import type { Options } from '../api/app';
import { spawnSync } from 'node:child_process';
import { getPMAndCommand } from '../utils';
interface SuperOptions extends Options {
    local: boolean;
}
export type RunDeviceCancelHandler = () => Promise<never>;
type PackageManagerInfo = ReturnType<typeof getPMAndCommand>;
export type PlatformChoice = 'ios' | 'android';
export type RunDeviceStepOutcome = {
    args: string[];
    command: string;
} | {
    args: undefined;
    command: string;
};
export interface CapacitorRunTarget {
    name: string;
    api: string | undefined;
    id: string;
}
export declare function runPackageRunnerSync(runner: string, args: string[], options: Parameters<typeof spawnSync>[2]): import("node:child_process").SpawnSyncReturns<string | NonSharedBuffer>;
export declare function parseCapacitorRunTargetList(output: string): CapacitorRunTarget[];
export declare function getPhysicalIosRunTargets(targets: CapacitorRunTarget[]): CapacitorRunTarget[];
export declare function getSimulatorIosRunTargets(targets: CapacitorRunTarget[]): CapacitorRunTarget[];
export declare function resolveRunDeviceCommand(cancelHandler: RunDeviceCancelHandler, pm: PackageManagerInfo, platformName: PlatformChoice): Promise<RunDeviceStepOutcome>;
export declare function normalizeRunDevicePlatform(platformName: string): PlatformChoice;
export declare function initApp(apikeyCommand: string, appId: string, options: SuperOptions): Promise<void>;
export {};
