import type { CloudProvider, DispatchOptions } from './types.js';
/**
 * Resolve the prompt for a cloud dispatch: the raw value, or the contents of
 * the file it points at (with a dim note on TTY). Dies when empty.
 */
export declare function resolveCloudPrompt(raw: string | undefined, opts: {
    json: boolean;
    hint: string;
}): string;
export interface ExecuteCloudDispatchParams {
    provider: CloudProvider;
    dispatchOptions: DispatchOptions;
    /** Image file paths for vision dispatch (checked against provider capability). */
    imagePaths?: string[];
    /** Raw skill refs (`id` or `id@version`) for ride-along skills. */
    skillIds?: string[];
    /** Stream the task output after dispatch; false = fire-and-forget. */
    follow: boolean;
    json: boolean;
}
/**
 * Dispatch a cloud task and (unless follow=false) stream it to completion.
 * Owns: share-env injection, capability checks, the dispatch spinner +
 * missing-target picker, local persistence, event emission, and the budget
 * kill-switch. Dies on any dispatch failure — callers never see a partial.
 */
export declare function executeCloudDispatch(params: ExecuteCloudDispatchParams): Promise<void>;
