import type { EngineInternals } from './internals.ts'; /** * Synchronous teardown for an {@link Engine}. Moved verbatim from * `Engine[Symbol.dispose]` — the operation order is correctness-sensitive * (abort before clearing waiters, dispose strategies before nulling them) and * is preserved exactly. `Engine[Symbol.dispose]` and `[Symbol.asyncDispose]` * both delegate here. `dispatchEvent` defaults to a no-op so every existing * direct-internals test that calls this with one argument keeps compiling * and running — only `Engine`'s own two call sites pass the real * `engine.dispatchEvent` binding, which is what lets * `disposeSourceResolutionState` fire `workflow-source:load-cancelled`. */ export declare function disposeEngine(internals: EngineInternals, dispatchEvent?: (event: Event) => void): void;