import { type QuestionnaireError, type QuestionParams } from "./types.js";
export declare const ERROR_NO_QUESTIONS = "Error: At least one question is required";
export declare const ERROR_TOO_MANY_QUESTIONS = "Error: At most 4 questions are allowed per invocation";
export declare const ERROR_DUPLICATE_QUESTION = "Error: Question text must be unique within an invocation";
export declare const ERROR_TOO_FEW_OPTIONS = "Error: Each question requires at least 2 options";
export declare const ERROR_RESERVED_LABEL: string;
export declare const ERROR_DUPLICATE_OPTION_LABEL = "Error: Option labels must be unique within a question";
export type ValidationResult = {
    ok: true;
} | {
    ok: false;
    error: QuestionnaireError;
    message: string;
};
/**
 * Pure runtime validator for `QuestionParams`. Covers every guard except
 * `no_ui` (which depends on `ctx.hasUI` and stays inline at the call site).
 * `reserved_label` MUST short-circuit before `duplicate_option_label`.
 */
export declare function validateQuestionnaire(typed: QuestionParams): ValidationResult;
//# sourceMappingURL=validate-questionnaire.d.ts.map