import { PatternCondition } from '../../../types';
export interface ConfigFile {
    path: string;
    type: 'eslint' | 'tsconfig' | 'prettier' | 'editorconfig' | 'package_json';
    rules: Record<string, string>;
}
export interface AttributionResult {
    primaryCondition: PatternCondition;
    allConditions: PatternCondition[];
    sourceFiles: string[];
}
export declare class ConfigAttribution {
    private configCache;
    private projectRoot;
    constructor(projectRoot: string);
    loadConfigs(): ConfigFile[];
    attribute(category: string, from: string, to: string, configs?: ConfigFile[]): AttributionResult;
    getConditionTypes(): string[];
    getStrictnessLevel(configs?: ConfigFile[]): string;
    getLanguage(configs?: ConfigFile[]): string;
    getFramework(configs?: ConfigFile[]): string;
    clearCache(): void;
    private matchConfigToPattern;
    private mapConfigTypeToConditionType;
    private parseESLint;
    private parseTSConfig;
    private parsePrettier;
    private parsePackageJson;
}
//# sourceMappingURL=config-attribution.d.ts.map