import type { WizardEventEmitter } from '../../../modules/setup-wizard/services/wizardEventEmitter.js';
import type { StepId } from '../../../modules/setup-wizard/entities/stepId/stepId.schema.js';
import type { StepOutcome } from '../../../modules/setup-wizard/entities/stepOutcome/stepOutcome.schema.js';
import type { PromptKind, PromptOption } from '../../../modules/setup-wizard/entities/promptOption/promptOption.schema.js';
type LineWriter = (line: string) => void;
export declare class JsonWizardEventEmitter implements WizardEventEmitter {
    private readonly write;
    constructor(write: LineWriter);
    private emit;
    emitStepStarted(stepId: StepId, title: string): void;
    emitStepCompleted(stepId: StepId, outcome: StepOutcome): void;
    emitAwaitingInput(stepId: StepId, prompt: string, kind: PromptKind, options: PromptOption[], defaultValue: string | null): void;
    emitInstructions(lines: string[]): void;
    emitWarning(message: string): void;
    emitResumeBanner(stepId: StepId, position: number, total: number): void;
    emitDone(summary: Record<string, unknown>): void;
}
export {};
//# sourceMappingURL=jsonWizardEventEmitter.d.ts.map