import type { TCoreOperatorAssignment } from "../types/evaluation.js"; import type { TArgumentEvaluationContext } from "./evaluation/argument-evaluation.js"; export interface TCollectArgumentReferencedClaimsResult { /** Claim IDs in first-occurrence order. */ claimIds: string[]; byId: Record; } /** * Collects every distinct claim referenced by any variable in any premise * of the argument. * * Ordering: supporting premises (in `listSupportingPremises()` order), then * the conclusion premise, then remaining premises (constraints). Within a * premise, claims appear in the order their first-referencing variable * appears in the expression tree (pre-order DFS). A claim shared across * premises is emitted once at its first occurrence. * * Variables without a bound claim (e.g. premise-bound variables) are * skipped silently — not an error. * * @throws {InvalidArgumentStructureError} If two variables in the argument * bind the same `claimId` with different `claimVersion`s. */ export declare function collectArgumentReferencedClaims(ctx: TArgumentEvaluationContext): TCollectArgumentReferencedClaimsResult; export interface TCanonicalizeOperatorAssignmentsInput { premiseScope: Record; expressionOverrides?: Record; } /** * Expands `premiseScope` decisions into per-expression operator * assignments via `TEvaluablePremise.getDecidableOperatorExpressions()`, * then layers `expressionOverrides` on top. * * **Overrides without matching premiseScope**: An override whose parent * premise is not listed in `premiseScope` is still applied verbatim. This * lets the review wizard collect expression-level decisions without * having to decide at premise scope first. * * Output keys are exactly those expression ids that ended up with an * assignment — not every expression in the argument. * * @throws {UnknownExpressionError} For any override id that does not * exist in the argument. * @throws {NotOperatorNotDecidableError} With `reason: "is-not-operator"` * for overrides targeting a `"not"` operator, or with * `reason: "not-an-operator-type"` for overrides targeting a variable * or formula expression. */ export declare function canonicalizeOperatorAssignments(ctx: TArgumentEvaluationContext, input: TCanonicalizeOperatorAssignmentsInput): Record; //# sourceMappingURL=review-helpers.d.ts.map