import type { AgentSessionEvent, GoalContinuationLoopOptions, GoalContinuationLoopResult, PromptOptions } from "../agent-session.ts"; import type { SettingsManager } from "../settings-manager.ts"; import type { GoalRuntimeSnapshot, GoalRuntimeSnapshotSettings } from "./goal-runtime-snapshot.ts"; export interface GoalAutoContinueControllerDeps { isDisposed(): boolean; isGoalToolActive(): boolean; getSettingsManager(): SettingsManager; getGoalRuntimeSnapshot(settings: GoalRuntimeSnapshotSettings): GoalRuntimeSnapshot; hasInFlightLaneForGoal(goalId: string): boolean; continueGoalLoop(options: GoalContinuationLoopOptions): Promise; isForegroundBusy(): boolean; waitForForegroundIdle(): Promise; markGoalToolUnavailable(): void; emit(event: AgentSessionEvent): void; } /** Owns the single-flight goal continuation loop and its foreground-idle timer. */ export declare class GoalAutoContinueController { private _timer; private _isContinuing; private readonly deps; constructor(deps: GoalAutoContinueControllerDeps); clearTimer(): void; scheduleFromIdle(options?: PromptOptions): void; continueExclusive(options: GoalContinuationLoopOptions): Promise; private unavailableResult; private runScheduled; private skippedResult; } //# sourceMappingURL=goal-auto-continue-controller.d.ts.map