// generated by diplomat-tool import type { NucleationError } from "./NucleationError.mjs" import type { Schematic } from "./Schematic.mjs" import type { Value } from "./Value.mjs" import type { pointer, codepoint } from "./diplomat-runtime.d.ts"; /** * A typed executor bound to a self-describing cell: the schematic's * EMBEDDED contract (autodetected, Insign fallback) supplies the port * names, types and positions; the vanilla-accurate mc-tick engine * supplies the physics. Wraps * {@link crate::simulation::typed_executor::BackendCircuitExecutor}. */ export class CellExecutor { /** @internal */ get ffiValue(): pointer; /** @internal */ constructor(); /** * Bind the schematic's embedded cell contract to the mc-tick * engine (needs the `mc-tick` feature, else errors). Cells deploy * BAKED: the backend trusts saved block states; an unbaked build * sits inert until the first input flip. */ static forSchematic(schematic: Schematic): CellExecutor; /** * Set an input port by name and typed value. */ setInput(name: string, value: Value): void; /** * Run until quiescent within `budget` ticks; true when settled. */ settle(budget: number): boolean; /** * Read an output port by name. */ readOutput(name: string): Value; /** * Rebuild the engine from the original schematic (all inputs back * to their saved states). */ reset(): void; }