UNPKG

@felixgeelhaar/cclint

Version:

Catch CLAUDE.md drift before Claude misbehaves. Lints CLAUDE.md, skills, subagents, and hooks for Claude Code projects.

34 lines 1.55 kB
import type { CclintConfig } from '../domain/Config.js'; export declare class ConfigLoader { private static readonly CONFIG_FILES; static load(startDir?: string): CclintConfig; private static findConfigFile; private static loadConfigFile; /** * Resolve a user config into a fully merged {@link CclintConfig}. * * @remarks * Layering is defaults ← preset(s) in `extends` order ← user config, so the * user's own settings always win and presets closer to the end of an * `extends` array override earlier ones. `rules` are deep-merged per rule * (enabled/severity/options); other fields (`ignore`, `plugins`) are * replaced by the more specific layer. `extends` is consumed here and never * appears in the resolved result. */ private static resolveConfig; /** * Turn an `extends` value into the ordered list of preset configs to apply. * Only built-in named presets are supported; an unknown name is warned about * and skipped so a typo degrades gracefully rather than aborting the lint. */ private static resolveExtends; /** Merge an override layer over a base config; the override always wins. */ private static mergeConfigs; /** * Deep-merge two rule maps. For each rule present in either layer, the * override's fields win, and `options` are themselves shallow-merged so a * layer can tweak a single option without dropping the others. */ private static mergeRules; } //# sourceMappingURL=ConfigLoader.d.ts.map