import { LintCallBack, LintOptions } from "./api";
import { IRuleLoader } from "./ruleLoader";
import { SwaggerInventory } from "./swaggerInventory";
import { OpenApiTypes, LintResultMessage, IRuleSet, RuleScope } from "./types";
export declare class LintRunner<T> {
    private loader;
    private inventory;
    constructor(loader: IRuleLoader, inventory: SwaggerInventory);
    runRules: (document: string, openapiDefinition: any, sendMessage: (m: LintResultMessage) => void, openapiType: OpenApiTypes, ruleset: IRuleSet, inventory: SwaggerInventory, scope?: RuleScope) => Promise<void>;
    execute(swaggerPaths: string[], options: LintOptions, cb?: LintCallBack): Promise<LintResultMessage[]>;
}
