import { DescribeOptions, Engine, EngineRunResults, RuleDescription, RunOptions } from '@salesforce/code-analyzer-engine-api';
import { Clock } from './utils';
import { SfgeEngineConfig } from "./config";
export declare class SfgeEngine extends Engine {
    static readonly NAME: string;
    private readonly config;
    private readonly sfgeWrapper;
    private sfgeRuleInfoListCache;
    private relevantFilesByWorkspaceId;
    constructor(config: SfgeEngineConfig, clock?: Clock);
    getName(): string;
    getEngineVersion(): Promise<string>;
    describeRules(describeOptions: DescribeOptions): Promise<RuleDescription[]>;
    runRules(selectedRuleNames: string[], runOptions: RunOptions): Promise<EngineRunResults>;
    private validateWorkspaceCompleteness;
    private getSfgeRuleInfoList;
    private getRelevantFilesInWorkspace;
}
