import { type ExistingProjectDetection } from './init.js'; export interface FirstRunOptions { slug: string; mission: string; goal: string; nonInteractive?: boolean; root?: string; } export interface FirstRunResult { root: string; slug: string; missionPath: string; planPath: string; evidencePath: string; validationIssueCount: number; nextCommands: string[]; } export interface FirstRunRenderMode { style: 'polished' | 'plain'; } export interface FirstRunTargetPreview { root: string; target: string; scaffoldPresent: boolean; willInitializeScaffold: boolean; scaffoldFiles: string[]; project?: ExistingProjectDetection; } export interface FirstRunPreview extends FirstRunTargetPreview { slug: string; missionPath: string; missionAction: 'write' | 'replace-unset' | 'preserve'; planPath: string; evidencePath: string; nextVerificationCommands: string[]; } export declare function runFirstRun(options: FirstRunOptions, start?: string): FirstRunResult; export declare function resolveFirstRunRenderMode(options?: { nonInteractive?: boolean; env?: NodeJS.ProcessEnv; inputIsTTY?: boolean; outputIsTTY?: boolean; }): FirstRunRenderMode; export declare function previewFirstRunTarget(start?: string): FirstRunTargetPreview; export declare function previewFirstRun(options: FirstRunOptions, start?: string, targetPreview?: FirstRunTargetPreview): FirstRunPreview; export declare function formatFirstRunIntro(mode?: FirstRunRenderMode): string; export declare function formatFirstRunPrewrite(preview: FirstRunPreview, mode?: FirstRunRenderMode): string; export declare function askInteractiveFirstRun(targetPreview?: FirstRunTargetPreview, mode?: FirstRunRenderMode): Promise; export declare function formatFirstRunResult(result: FirstRunResult, mode?: FirstRunRenderMode): string;