import type { ParentWakePromptContext, PendingParentWake } from "./parent-wake-dedupe"; import type { ParentWakeNotifierDeps, ParentWakeNotifierOptions } from "./parent-wake-notifier-types"; export type { ParentWakePromptContext, PendingParentWake } from "./parent-wake-dedupe"; export declare class ParentWakeNotifier { private readonly pendingQueue; private readonly dispatchedTracker; private readonly sessionInspector; private readonly flushRunner; private readonly onPendingWakeRequeued?; constructor(deps: ParentWakeNotifierDeps, options: ParentWakeNotifierOptions); getPendingParentWakes(): Map; getPendingParentWakeTimers(): Map>; getDispatchedParentWakes(): Map; getDispatchedParentWakeTimers(): Map>; hasInFlightParentWakeDispatch(sessionID: string): boolean; reserveNotificationPreparation(sessionID: string): void; releaseNotificationPreparation(sessionID: string): void; hasNotificationPreparation(sessionID: string): boolean; recordParentSessionActivity(sessionID: string): void; queuePendingParentWake(sessionID: string, notification: string, promptContext: ParentWakePromptContext, shouldReply: boolean, delayMs?: number): void; flushPendingParentWake(sessionID: string): Promise; clearDispatchedParentWake(sessionID: string): void; requeueDispatchedParentWake(sessionID: string, reason: string): Promise; requeueDispatchedParentWakeAfterEmptyAssistantTurn(sessionID: string): boolean; schedulePendingParentWakeFlush(sessionID: string, delayMs?: number): void; clearPendingParentWakeTimer(sessionID: string): void; shutdown(): void; private requeueWake; private shouldDeferParentWakeForSessionHistory; }