import { EventEmitter } from "eventemitter3";
import { Compartment } from "@codemirror/state";
import { EditorView } from "@codemirror/view";
import { type GdExerciseLog } from "../index.mts";
export interface ConsoleControllerEvents {
    ready: () => void;
    log: (entry: GdExerciseLog) => void;
    clear: () => void;
}
export declare class ConsoleController extends EventEmitter<ConsoleControllerEvents> {
    _parent: HTMLElement | null;
    get parent(): HTMLElement | null;
    set parent(value: HTMLElement | null);
    theme: Compartment;
    view: EditorView | null;
    _darkMode: boolean;
    get darkMode(): boolean;
    set darkMode(val: boolean);
    constructor(darkMode?: boolean);
    _initView(): void;
    _clearParent(): void;
    _addNewLine(): void;
    init(): Promise<void>;
    clear(): void;
    log(message: string): void;
    error(message: string): void;
    dispose(): void;
}
//# sourceMappingURL=console.d.mts.map