import type { PersistedSession, PtyAdapter, PtyHistoryCapture, PtyHistoryCaptureOptions, PtyProcess, PtySpawnOptions, PtyTranscriptSource } from './PtyAdapter.js';
type TranscriptCandidate = {
    provider: PtyTranscriptSource['provider'];
    sessionId: string;
    filePath?: string;
};
export declare class TmuxPtyAdapter implements PtyAdapter {
    private readonly configPath;
    private readonly socket;
    constructor(options?: {
        configPath?: string;
        socket?: string;
    });
    static detect(options?: {
        configPath?: string;
    }): TmuxPtyAdapter | null;
    spawn(options: PtySpawnOptions & {
        title?: string;
    }): PtyProcess;
    listExisting(): PersistedSession[];
    destroySession(sessionId: string): boolean;
    pollSessions(): Promise<Map<string, {
        currentCommand: string;
        busy: boolean;
    }>>;
    setSessionTitle(sessionId: string, title: string): void;
    captureHistory(sessionId: string, options: PtyHistoryCaptureOptions): PtyHistoryCapture | null;
    resolveTranscriptSource(sessionId: string): PtyTranscriptSource | null;
    private readPaneMetrics;
    private readPanePid;
}
export declare function normalizeTmuxCurrentCommand(currentCommand: string, descendantArgs: string[][]): string;
export declare function resolveClaudeTranscriptFromProjectFiles(options: {
    cwdCandidates: string[];
    processStartedAtMs?: number | null;
    homeDir?: string;
}): TranscriptCandidate | null;
export {};
