/**
 * Cross-field validation for variable declarations.
 *
 * Zod handles per-field shape (id pattern, label string, etc.) but cannot
 * cleanly express "default's type must match the declared `type` field"
 * because the latter is a discriminator. This module catches:
 *
 *   • id collisions across the array
 *   • default value type/shape mismatching declared `type`
 *   • enum without options[]
 *   • enum default not in options[]
 *
 * Returns a list of issues; an empty list means the declarations are
 * usable.
 */
import type { VariableDeclaration, VariableIssue, VariableValues } from "./types.js";
export declare function validateDeclarations(declarations: ReadonlyArray<VariableDeclaration> | undefined): VariableIssue[];
/**
 * Validate a runtime overrides map against the declarations. Used by the
 * CLI's `--variables` flag and the per-instance `data-variable-values`
 * pathway.
 *
 * Strict mode (the default) reports any unknown keys; lenient mode silently
 * ignores them (useful when a wrapper script passes a superset).
 */
export declare function validateOverrides(declarations: ReadonlyArray<VariableDeclaration>, overrides: VariableValues, opts?: {
    strict?: boolean;
}): VariableIssue[];
//# sourceMappingURL=validate.d.ts.map