export type RestartSource = 'slash' | 'card'; export type RestartTerminalStatus = 'succeeded' | 'failed' | 'timed_out'; export type RestartObserverStatus = 'in_progress' | RestartTerminalStatus; export interface RestartObserver { source: RestartSource; notify(status: RestartObserverStatus): void | Promise; } export declare class RestartCoordinator { private readonly options; private readonly attempts; private readonly notifications; constructor(options?: { timeoutMs?: number; createAttemptId?: () => string; }); request(sessionId: string, observer: RestartObserver, startPhysicalRestart: (attemptId: string) => void | Promise): { attemptId: string; joined: boolean; }; resolve(sessionId: string, attemptId: string, status: RestartTerminalStatus): boolean; failSession(sessionId: string): boolean; cancelSession(sessionId: string): boolean; activeAttemptId(sessionId: string): string | undefined; reset(): void; private notify; private enqueueNotify; } //# sourceMappingURL=restart-coordinator.d.ts.map