import type { Artifact, DesignSessionConfig, DesignSessionState, MethodologyProfile } from "./types/index.js";
export interface WorkflowRequest {
    action: "start" | "advance" | "complete" | "reset" | "status";
    sessionId: string;
    phaseId?: string;
    content?: string;
    config?: DesignSessionConfig;
    methodologyProfile?: MethodologyProfile;
}
export interface WorkflowResponse {
    success: boolean;
    sessionState: DesignSessionState;
    currentPhase: string;
    nextPhase?: string;
    recommendations: string[];
    artifacts: Artifact[];
    message: string;
}
declare class DesignPhaseWorkflowImpl {
    private sessions;
    private readonly PHASE_SEQUENCE;
    initialize(): Promise<void>;
    executeWorkflow(request: WorkflowRequest): Promise<WorkflowResponse>;
    private startSession;
    private advancePhase;
    private completePhase;
    private resetSession;
    private getSessionStatus;
    private computeNextPhase;
    getNextPhase(sessionState: DesignSessionState): string | undefined;
    private getPhaseDepedencies;
    generateWorkflowGuide(sessionState: DesignSessionState): Promise<{
        currentPhase: string;
        nextPhase?: string;
        steps: string[];
    }>;
    canTransitionToPhase(sessionState: DesignSessionState, targetPhaseId: string): Promise<boolean>;
    transitionToPhase(sessionState: DesignSessionState, targetPhaseId: string): Promise<{
        success: boolean;
        from: string;
        to?: string;
    }>;
    private updateSessionCoverage;
    private addSessionEvent;
    getSession(sessionId: string): DesignSessionState | undefined;
    listSessions(): string[];
    getPhaseSequence(): string[];
}
export declare const designPhaseWorkflow: DesignPhaseWorkflowImpl;
export declare const IMPLEMENTATION_STATUS: "IMPLEMENTED";
export {};
/**
 * Domain Layer Integration Note:
 *
 * Pure domain logic for session management and phase workflows is now available:
 * - Session CRUD: src/domain/design/session-manager.ts
 * - Phase transitions: src/domain/design/phase-workflow.ts
 *
 * These provide pure, framework-independent functions for:
 * - createSession(), getSession(), updateSessionPhase(), etc.
 * - canTransition(), getNextPhase(), validatePhaseCompletion(), etc.
 *
 * The DesignPhaseWorkflowImpl above is an orchestration layer that adds:
 * - Methodology profile support
 * - Confirmation module integration
 * - Pivot evaluation
 * - Constraint management
 * - Artifact generation
 *
 * Future refactoring can migrate more logic to the domain layer as needed.
 */
//# sourceMappingURL=design-phase-workflow.d.ts.map