/** * Configuration Loader * * Loads and validates vibe-validate configuration from project root. */ import type { VibeValidateConfig } from '@vibe-validate/config'; /** * Find configuration file by walking up directory tree * * Searches for vibe-validate.config.yaml starting from cwd and walking up * to the root directory, similar to how ESLint/Prettier find their config files. * * @param startDir Directory to start searching from * @returns Path to config file or null if not found */ export declare function findConfigUp(startDir: string): string | null; /** * Load vibe-validate configuration from project root * * Searches for vibe-validate.config.yaml by walking up the directory tree * from the current working directory to the root. * * @param cwd Current working directory (defaults to process.cwd()) * @returns Configuration object or null if not found */ export declare function loadConfig(cwd?: string): Promise; /** * Load configuration and return both config and the directory where it was found * * Useful for features that need to know the project root (like locking). * * @param cwd Current working directory (defaults to process.cwd()) * @returns Object with config and configDir, or null if not found */ export declare function loadConfigWithDir(cwd?: string): Promise<{ config: VibeValidateConfig; configDir: string; } | null>; /** * Check if a config file exists (searches up directory tree) * * @param cwd Current working directory * @returns True if config file exists */ export declare function configExists(cwd?: string): boolean; /** * Find config file path if it exists (searches up directory tree) * * @param cwd Current working directory * @returns Config file path or null if not found */ export declare function findConfigPath(cwd?: string): string | null; /** * Load configuration with detailed validation errors * * When config loading fails, this function attempts to parse the file * and validate it to provide specific error messages. * * @param cwd Current working directory (defaults to process.cwd()) * @returns Object with config, errors, and file path */ export declare function loadConfigWithErrors(cwd?: string): Promise<{ config: VibeValidateConfig | null; errors: string[] | null; filePath: string | null; }>; //# sourceMappingURL=config-loader.d.ts.map