/**
 * LoggingUI — Logging-only implementation for CI mode.
 * No prompts, no TUI, no interactivity. Just console output.
 */
import { type WizardUI, type SpinnerHandle, type EventPlanDecision } from './wizard-ui';
import type { RetryState, PostAgentStep } from '../lib/wizard-session';
export declare class LoggingUI implements WizardUI {
    intro(message: string): void;
    outro(message: string): void;
    cancel(message: string, options?: {
        docsUrl?: string;
    }): Promise<void>;
    setOutroData(data: import('../lib/wizard-session.js').OutroData): void;
    log: {
        info(message: string): void;
        warn(message: string): void;
        error(message: string): void;
        success(message: string): void;
        step(message: string): void;
    };
    note(message: string): void;
    spinner(): SpinnerHandle;
    pushStatus(message: string): void;
    seedPostAgentSteps(steps: PostAgentStep[]): void;
    setPostAgentStep(id: string, patch: {
        status: PostAgentStep['status'];
        reason?: string;
    }): void;
    heartbeat(data: {
        statuses: string[];
        elapsedMs: number;
        attempt?: number;
    }): void;
    setDetectedFramework(label: string): void;
    onEnterScreen(_screen: string, _fn: () => void): void;
    setLoginUrl(url: string | null): void;
    showServiceStatus(data: {
        description: string;
        statusPageUrl: string;
    }): void;
    setRetryState(state: RetryState | null): void;
    startRun(): void;
    setRunError(_error: Error): Promise<boolean>;
    setCredentials(_credentials: {
        accessToken: string;
        projectApiKey: string;
        host: string;
        appId: number;
        orgId?: string | null;
        orgName?: string | null;
        projectId?: string | null;
        projectName?: string | null;
        envName?: string | null;
    }): void;
    setRegion(_region: string): void;
    setProjectHasData(_value: boolean): void;
    promptConfirm(message: string): Promise<boolean>;
    promptChoice(message: string, options: string[]): Promise<string>;
    promptEventPlan(events: Array<{
        name: string;
        description: string;
    }>): Promise<EventPlanDecision>;
    syncTodos(todos: Array<{
        content: string;
        status: string;
        activeForm?: string;
    }>): void;
    applyJourneyTransition(stepId: import('../lib/journey-state.js').JourneyStepId, status: import('../lib/journey-state.js').JourneyStatus): void;
    setEventPlan(_events: Array<{
        name: string;
        description: string;
    }>): void;
    recordFileChangePlanned(data: {
        path: string;
        operation: 'create' | 'modify' | 'delete';
    }): void;
    recordFileChangeApplied(_data: {
        path: string;
        operation: 'create' | 'modify' | 'delete';
        bytes?: number;
    }): void;
    setEventIngestionDetected(_eventNames: string[]): void;
    setDashboardUrl(_url: string): void;
}
