/**
 * Deterministic PlanArtifact v1 review engine (A-RUBRIC / PLANNER_REVIEW_RUBRIC.md).
 */
import type { PlanArtifactReviewProfile, PlanArtifactV1 } from "./plan-artifact-v1.js";
export type PlanArtifactReviewSeverity = "blocker" | "warning";
export type PlanArtifactReviewFinding = {
    code: string;
    severity: PlanArtifactReviewSeverity;
    message: string;
    path?: string;
    wbsId?: string;
};
export type PlanArtifactCoverageSliceStatus = "covered" | "missing" | "waived" | "not-applicable";
export type PlanArtifactCoverageMap = {
    goals: {
        covered: string[];
        uncovered: string[];
    };
    userStories: {
        covered: string[];
        uncovered: string[];
    };
    slices: {
        architecture: PlanArtifactCoverageSliceStatus;
        uiUx: PlanArtifactCoverageSliceStatus;
        testing: PlanArtifactCoverageSliceStatus;
        rolloutDocsMigration: PlanArtifactCoverageSliceStatus;
    };
};
export type PlanArtifactReviewWaiver = {
    code: string;
    rationale: string;
};
export type ReviewPlanArtifactOptions = {
    profile?: PlanArtifactReviewProfile;
    waivers?: PlanArtifactReviewWaiver[];
};
export type ReviewPlanArtifactResult = {
    passed: boolean;
    profile: PlanArtifactReviewProfile;
    blockers: PlanArtifactReviewFinding[];
    warnings: PlanArtifactReviewFinding[];
    coverageMap: PlanArtifactCoverageMap;
    sizingFindings: PlanArtifactReviewFinding[];
    openQuestionCount: number;
};
export declare function resolvePlanArtifactReviewProfile(artifact: PlanArtifactV1, explicit?: PlanArtifactReviewProfile): PlanArtifactReviewProfile;
/**
 * Run A-RUBRIC checks on a validated PlanArtifact v1 document.
 */
export declare function reviewPlanArtifact(artifact: PlanArtifactV1, options?: ReviewPlanArtifactOptions): ReviewPlanArtifactResult;
