import type { McpCompletionBridge } from '../../../modules/claude-invocation/entities/sessionCompletion/mcpCompletion.gateway.js';
import type { ClaudeSessionGateway } from '../../../modules/claude-invocation/entities/claudeSession/claudeSession.gateway.js';
import type { ClaudeSession } from '../../../modules/claude-invocation/entities/claudeSession/claudeSession.schema.js';
import type { SessionCompletion } from '../../../modules/claude-invocation/entities/sessionCompletion/sessionCompletion.schema.js';
export interface AwaitSessionCompletionInput {
    session: ClaudeSession;
    timeoutMs: number;
    pollIntervalMs: number;
}
export interface AwaitSessionCompletionDependencies {
    sessionGateway: ClaudeSessionGateway;
    completionBridge: McpCompletionBridge;
    now: () => Date;
}
export declare function awaitSessionCompletion(input: AwaitSessionCompletionInput, deps: AwaitSessionCompletionDependencies): Promise<SessionCompletion>;
//# sourceMappingURL=awaitSessionCompletion.usecase.d.ts.map