import type { CommandContext, Domain, Recipe, RunMeta, Stop } from './types.js'; type SignalCommands = { change: (context: CommandContext, recipe: Recipe) => void; }; export interface StateSignal { read(): Readonly; change(recipe: Recipe, meta?: RunMeta): Promise; watch(listener: (state: Readonly, previous: Readonly) => void): Stop; domain(): Domain>; } export declare function forgeSignal(seed: State | (() => State)): StateSignal; export {}; //# sourceMappingURL=signal.d.ts.map