/**
 * ChatStateAssembler
 *
 * Pure read-side DTO assembly. Reads messages, session state, usage,
 * turn statuses, pending interaction, and workflow steps from their
 * respective stores and assembles the ChatState DTO.
 *
 * No mutations — every method is a pure projection.
 *
 * Extracted from `InteractiveSessionService` in Phase 6 of the strangler refactor.
 * See `docs/plans/2026-04-14-interactive-session-service-refactor.md`.
 */
import type { ChatState } from '../../../../application/ports/output/services/interactive-session-service.interface.js';
import type { IInteractiveMessageRepository } from '../../../../application/ports/output/repositories/interactive-message-repository.interface.js';
import type { IInteractiveSessionRepository } from '../../../../application/ports/output/repositories/interactive-session-repository.interface.js';
import type { IWorkflowStepRepository } from '../../../../application/ports/output/repositories/workflow-step-repository.interface.js';
import type { SessionRegistry } from '../core/session-registry.js';
export declare class ChatStateAssembler {
    private readonly messageRepo;
    private readonly sessionRepo;
    private readonly workflowStepRepo;
    private readonly registry;
    constructor(messageRepo: IInteractiveMessageRepository, sessionRepo: IInteractiveSessionRepository, workflowStepRepo: IWorkflowStepRepository, registry: SessionRegistry);
    assemble(featureId: string): Promise<ChatState>;
}
//# sourceMappingURL=chat-state.assembler.d.ts.map