import type { ComputerClient } from './computer-rpc.js';
export interface AppInfo {
    pid: number;
    name: string;
    bundle_id: string;
    active: boolean;
}
export declare function pickTarget(list: AppInfo[], opts: {
    pid?: number;
    bundle?: string;
}): {
    ok: true;
    app: AppInfo;
} | {
    ok: false;
    error: string;
};
export declare function resolveTargetPidDecision(client: ComputerClient, opts: {
    pid?: number;
    bundle?: string;
}, gate?: {
    verb?: string;
    env?: NodeJS.ProcessEnv;
    nowMs?: number;
}): Promise<{
    ok: true;
    pid: number;
    source: 'pid' | 'list_apps' | 'session_admission';
} | {
    ok: false;
    error: string;
}>;
export declare function emitComputerAction(verb: string, targetPid: number | undefined, opts: {
    bundle?: string;
    device?: string;
}, extra?: Record<string, unknown>): void;
