import type { ScaffoldManifest, ParameterValidationResult } from './types.js';
/**
 * Validate a scaffold manifest
 * @param manifest - The manifest to validate
 * @returns Array of validation error messages (empty if valid)
 */
export declare function validateScaffoldManifest(manifest: unknown): string[];
/**
 * Check if a condition expression is satisfied
 * @param condition - The condition expression (e.g., "paramName=value" or "paramName")
 * @param variables - The current variable values
 * @returns Whether the condition is satisfied
 */
export declare function evaluateCondition(condition: string | undefined, variables: Record<string, string | boolean | string[]>): boolean;
/**
 * Validate parameter values against a manifest
 * @param manifest - The scaffold manifest
 * @param values - The parameter values to validate
 * @returns Validation result
 */
export declare function validateParameters(manifest: ScaffoldManifest, values: Record<string, string | boolean | string[] | undefined>): ParameterValidationResult;
/**
 * Validate that a string is a valid scaffold name (kebab-case)
 * @param name - The name to validate
 * @returns Whether the name is valid
 */
export declare function isValidScaffoldName(name: string): boolean;
/**
 * Validate that a string is a valid parameter name (camelCase)
 * @param name - The name to validate
 * @returns Whether the name is valid
 */
export declare function isValidParameterName(name: string): boolean;
