/**
 * Get Agent Session Use Case
 *
 * Retrieves a single agent provider CLI session by ID, including its
 * conversation messages (up to messageLimit). Throws SessionNotFoundError
 * if the session does not exist.
 */
import type { AgentSession, AgentType } from '../../../domain/generated/output.js';
import type { ISettingsRepository } from '../../ports/output/repositories/settings.repository.interface.js';
import type { IAgentSessionRepositoryRegistry } from '../../ports/output/agents/agent-session-repository-registry.interface.js';
export interface GetAgentSessionInput {
    /** The session ID (provider-native filename without extension) */
    id: string;
    /** Agent type to query; falls back to configured default when omitted */
    agentType?: AgentType;
    /** Maximum number of messages to include (default 20, 0 = all) */
    messageLimit?: number;
}
export declare class GetAgentSessionUseCase {
    private readonly registry;
    private readonly settingsRepository;
    constructor(registry: IAgentSessionRepositoryRegistry, settingsRepository: ISettingsRepository);
    execute(input: GetAgentSessionInput): Promise<AgentSession>;
    private resolveAgentType;
}
//# sourceMappingURL=get-agent-session.use-case.d.ts.map