/**
 * Phase 2 Pipeline — Stage 5: DDD Model Generator
 *
 * Generates a Domain-Driven Design model as markdown + JSON, driven by the
 * SPARC architecture output, ADRs, and research dossier.
 *
 * Produces bounded contexts (one per architecture service), a context map,
 * and a ubiquitous language glossary — all derived from actual SPARC/dossier
 * content rather than noun-extraction heuristics.
 *
 * Primary output: DDD markdown documents
 * Compat output: domain-model.json, context-map.json for downstream consumers
 *
 * Error codes:
 *   ECLI-P2-010  Missing prerequisite stage output (SPARC or ADR)
 */
import type { Phase2Context, Phase2StageOutput, Phase2SPARCOutput, Phase2ADRRecord, ResearchDossier, Phase2DomainModel } from '../types.js';
/**
 * Normalize a raw context/service name into a canonical domain term.
 *
 * Rules:
 * - Strip verb phrases and sentence fragments
 * - Map to domain vocabulary via regex matching
 * - Enforce kebab-case with max 3 words
 * - Reject names longer than 40 characters (truncate to last full word)
 * - Collapse synonymous contexts to the same canonical name
 */
export declare function normalizeContextName(raw: string): string;
export interface ParsedApiMethod {
    methodName: string;
    params: Array<{
        name: string;
        type: string;
    }>;
    returnType: string | null;
}
export declare function parseApiSignature(api: string): ParsedApiMethod | null;
export declare function buildPhase2DDD(sparc: Phase2SPARCOutput, adrs: Phase2ADRRecord[], dossier: ResearchDossier, scenarioQuery?: string): Phase2DomainModel;
export declare function generateDDDModel(context: Phase2Context): Promise<Phase2StageOutput>;
//# sourceMappingURL=ddd-generator.d.ts.map