/**
 * Browser-safe Omega interpreter facade.
 *
 * Same exports as the Node entry point, but the kernel runtime
 * omits SystemIOBackend (which uses child_process and fs).
 */

export type { Expr } from "../../../src/core/ast";
export type { Val } from "../../../src/core/eval/values";
export type { State, Frame } from "../../../src/core/eval/machine";
export type { Env } from "../../../src/core/eval/env";
export type { Store } from "../../../src/core/eval/store";
export type { Runtime } from "../../../src/core/eval/runtime";
export type { EffectBackend } from "../../../src/core/effects/backend";
export type { OpCall, Resumption } from "../../../src/core/effects/opcall";

export { COWStore } from "../../../src/core/eval/store";
export { compileTextToExpr } from "../../../src/core/pipeline/compileText";
export { stepOnce } from "../../../src/core/eval/machineStep";
export { runToCompletionWithState, runToCompletion } from "../../../src/core/eval/run";
export type { KernelRuntime } from "./kernel.browser";
export { createKernelRuntime, createKernelPrimitives } from "./kernel.browser";
