import type { Interface } from "node:readline";
/**
 * Output controller used by the interactive `eve dev` REPL.
 *
 * It keeps the prompt stable by temporarily clearing and restoring it when
 * background server logs write to stdout or stderr.
 */
export interface DevelopmentTerminal {
    commitLive(): void;
    readonly output: NodeJS.WriteStream;
    dispose(): void;
    print(message: string): void;
    printError(message: string): void;
    startPrompt(rl: Interface, prompt: string): void;
    stopPrompt(): void;
    updateLive(message: string): void;
}
/**
 * Creates the terminal surface used by the interactive development REPL.
 */
export declare function createDevelopmentTerminal(): DevelopmentTerminal;
