import type { CodeModeToolDefinition } from "../code-mode/types.ts"; import type { NotebookRuntimeOptions } from "../code-mode/shared-runtime.ts"; import { type TsImportOptions } from "./imports.ts"; import type { BindingRecipe, PortableState } from "./portable-state.ts"; import { type TsWorkerInput } from "./worker-protocol.ts"; /** Session compiler and import authority; resetting the heap does not close the compiler. */ export declare class TsSessionCompilation { private readonly options; private readonly importOptions; private readonly liveSourceModules; private compiler; private runtime; constructor(options: NotebookRuntimeOptions); get cwd(): string; beginSession(cwd: string): void; clearSourceModules(): void; closeCompiler(): Promise; removeSessionSources(): Promise; executionImports(isolated: boolean, signal: AbortSignal, usedImports: Set): TsImportOptions; resolveImport(name: string): Promise; compile(source: string, start: PortableState, isolated: boolean, importsOptions: TsImportOptions, tools: CodeModeToolDefinition[], signal: AbortSignal): Promise; workerInput(state: PortableState, bindings: Record, tools: CodeModeToolDefinition[]): TsWorkerInput; private requireCompiler; private compilerFailure; private scanImports; validateCheckpoint(state: PortableState, name: string, checkpoint: NonNullable): Promise; validateDeclarations(state: PortableState): Promise; }