import { type LoopEngine, type LoopEngineOptions } from "./loop-engine.js"; import { type LoopRunConfig, type LoopStatus } from "./loop-run.js"; import type { LoopEventHandler, LoopEventName } from "./loop-events.js"; /** Maps supervisor session IDs to loop engines (one loop per session). */ export declare class LoopRegistry { private readonly engines; get(sessionId: string): LoopEngine | undefined; /** * Synchronous snapshot from in-memory state (no pending-question file reads). * Prefer {@link listAsync} for full status including `pendingQuestions`. */ list(): LoopStatus[]; listAsync(): Promise; getOrCreate(config: LoopRunConfig, options: LoopEngineOptions): Promise; start(config: LoopRunConfig, options: LoopEngineOptions): Promise; on(sessionId: string, event: LoopEventName, handler: LoopEventHandler): (() => void) | undefined; remove(sessionId: string): void; dispose(): void; } //# sourceMappingURL=loop-registry.d.ts.map