/**
 * Composes setup prompts from audit results and project facts.
 * Routes by project state: bare/partial → full setup guide,
 * v0.9/outdated → upgrade redirect, current → audit-driven pass/fail.
 */
import type { AuditReport } from "../audit/types.js";
import type { AgentId, ProjectFacts } from "../types.js";
type DenyMechanismEvidenceLevel = "full" | "static" | "present-only";
type SetupPromptScope = "full" | "harness-card";
/** Options that narrow setup prompt output for a full prompt or dashboard harness card. */
interface ComposeSetupOptions {
    promptScope?: SetupPromptScope;
    denyMechanismEvidenceLevel?: DenyMechanismEvidenceLevel;
}
/**
 * Compose the setup prompt that matches the project's current install state.
 *
 * @param auditReport - current audit result used to select failure/upgrade/full setup copy
 * @param facts - project facts used to derive installed state and prompt paths
 * @param agentId - agent whose setup instructions should be rendered
 * @param options - optional output scope and deny-mechanism evidence hint
 * @returns setup prompt text, or null when no setup action applies
 */
export declare function composeSetup(auditReport: AuditReport, facts: ProjectFacts, agentId: AgentId, options?: ComposeSetupOptions): string | null;
export {};
//# sourceMappingURL=compose-setup.d.ts.map