/**
 * @module        sessionLiveness
 * @description   会话与进程存活检测工具
 *
 * @author        eddy
 * @organization  wykj
 * @ownership     wykj/eddy
 *
 * @created       2026-03-27
 * @updated       2026-04-03
 *
 * @role          util
 * @layer         core
 * @boundedContext session
 */
import type { ACPSessionRecord } from '@coralai/claude-code-agent';
import type { WorkerSlotState } from './state.js';
import { isProcessAlive } from '../providers/outputParser.js';
export { isProcessAlive };
export declare function isACPBackedSlot(slot: Pick<WorkerSlotState, 'transport' | 'mode'>): boolean;
export declare function extractPersistedSessionPid(session?: Pick<ACPSessionRecord, 'pid' | 'sessionId'> | null): number | null;
export declare function getPersistedRunStatus(slot: Pick<WorkerSlotState, 'remoteStatus'>, session?: Pick<ACPSessionRecord, 'pendingInput' | 'currentRun'> | null): string | null;
export declare function isTerminalRunStatus(status: string | null | undefined): boolean;
export declare function isPersistedSessionAlive(_slot: Pick<WorkerSlotState, 'transport' | 'mode'>, session?: Pick<ACPSessionRecord, 'sessionId' | 'sessionState' | 'pid'> | null): boolean;
export declare function hasPersistedActiveRun(slot: Pick<WorkerSlotState, 'transport' | 'mode' | 'remoteStatus'>, session?: Pick<ACPSessionRecord, 'sessionId' | 'sessionState' | 'pid' | 'pendingInput' | 'currentRun'> | null): boolean;
//# sourceMappingURL=sessionLiveness.d.ts.map