import { ErrorSummary } from "../../../errors/errorSummary";
import { TSLintConfigurationRules } from "../../../input/findTSLintConfiguration";
import { RuleConverter } from "./ruleConverter";
import { RuleMerger } from "./ruleMerger";
import { ESLintRuleOptions, TSLintRuleOptions } from "./types";
export type ConvertRulesDependencies = {
    ruleConverters: Map<string, RuleConverter>;
    ruleMergers: Map<string, RuleMerger>;
};
export type RuleConversionResults = {
    converted: Map<string, ESLintRuleOptions>;
    failed: ErrorSummary[];
    missing: TSLintRuleOptions[];
    plugins: Set<string>;
    obsolete: Set<string>;
    ruleEquivalents: Map<string, string[]>;
};
/**
 * Converts raw TSLint rules to their ESLint equivalents.
 * @see `/docs/Architecture/Linters.md` for documentation.
 */
export declare const convertRules: (dependencies: ConvertRulesDependencies, rawTslintRules: TSLintConfigurationRules | undefined, ruleEquivalents: Map<string, string[]>) => RuleConversionResults;
