///
import { EventEmitter } from "events";
import { JupyterKernel } from "./jupyter";
import { CodeExecutionEmitterInterface, ExecOpts, StdinFunction } from "smc-webapp/jupyter/project-interface";
export declare class CodeExecutionEmitter extends EventEmitter implements CodeExecutionEmitterInterface {
readonly kernel: JupyterKernel;
readonly code: string;
readonly id?: string;
readonly stdin?: StdinFunction;
readonly halt_on_error: boolean;
private iopub_done;
private shell_done;
private state;
private all_output;
private _message;
private _go_cb;
private timeout_ms?;
private timer?;
private killing;
constructor(kernel: JupyterKernel, opts: ExecOpts);
emit_output(output: object): void;
cancel(): void;
close(): void;
throw_error(err: any): void;
_handle_stdin(mesg: any): Promise;
_handle_shell(mesg: any): void;
private set_shell_done;
private set_iopub_done;
_handle_iopub(mesg: any): void;
private handle_closed;
_finish(): void;
_push_mesg(mesg: any): void;
go(): Promise