import type { AnswerMap, AssessmentDefinition, EvaluationResult, Evaluator } from "./types.ts"; export interface EvaluateOptions { /** Custom evaluator used instead of the definition's declarative scoring. */ evaluator?: Evaluator; } /** * Evaluates answers against an assessment definition. * * Every answer is first validated against the assessment: the question must * exist and the value must belong to its option scale. Then * `options.evaluator` is used when given; otherwise the definition's * declarative `scoring` (`sum`, `subscales`, or `count`) applies, honoring * its missing-data policy. * * @throws PsytoolsError `unknown_question` | `invalid_value` | `incomplete_response` | `no_scoring` */ export declare function evaluate(definition: AssessmentDefinition, answers: AnswerMap, options?: EvaluateOptions): EvaluationResult;