/**
 * Section 22 P2 — Clack-based interactive prompts
 *
 * Provides:
 * - confirm/select/spinner for interactive workflows
 * - Provider selection, model selection, theme selection
 * - Goal input with validation
 * - Progress feedback during long operations
 */
import * as clack from "@clack/prompts";
import type { RuntimeSidecar } from "../../runtime/debloat-nlp.js";
/**
 * Interactive provider selection.
 * Returns selected provider/model string.
 */
export declare function promptProviderSelection(currentProvider?: string, currentModel?: string): Promise<{
    provider: string;
    model: string;
} | null>;
/**
 * Interactive theme selection with preview.
 */
export declare function promptThemeSelection(currentTheme?: string): Promise<string | null>;
/**
 * Interactive goal input with multiline support.
 */
export declare function promptGoalInput(): Promise<string | null>;
/**
 * Interactive confirmation with sidecar summary.
 */
export declare function promptConfirmExecution(sidecar: RuntimeSidecar, goal: string): Promise<boolean>;
/**
 * Spinner wrapper for long-running operations.
 */
export declare function createSpinner(_label: string): ReturnType<typeof clack.spinner>;
/**
 * Interactive MCP server selection from available servers.
 */
export declare function promptMcpSelection(available: string[], required: string[], optional: string[]): Promise<{
    required: string[];
    optional: string[];
} | null>;
/**
 * Progress reporter using clack spinner.
 */
export declare function withSpinner<T>(message: string, fn: () => Promise<T>): Promise<T>;
/**
 * Intro/outro for OMK session.
 */
export declare function omkIntro(version: string): void;
export declare function omkOutro(message: string): void;
