sfcoe-ailabs
Version:
AI-powered code review tool with static analysis integration for comprehensive code quality assessment.
46 lines (45 loc) • 1.41 kB
TypeScript
import { Log } from 'sarif';
export default abstract class SCATProvider {
private readonly scanDirectory;
private readonly configFile;
private readonly sarifFileName;
/**
* Creates a new SCAT provider instance
*
* @param scanDirectory - The directory to scan for code analysis
* @param configFile - The configuration file path for the analyzer
* @param sarifFileName - Optional custom SARIF output file name
*/
constructor(scanDirectory: string, configFile: string, sarifFileName?: string);
/**
* Reads and parses the SARIF results file
*
* @returns Promise that resolves to the parsed SARIF log
*/
protected getSarifFile(): Promise<Log>;
/**
* Gets the SARIF output file name
*
* @returns The SARIF file name
*/
protected getSarifFileName(): string;
/**
* Gets the configuration file path
*
* @returns The configuration file path
*/
protected getConfigFile(): string;
/**
* Gets the scan directory path
*
* @returns The scan directory path
*/
protected getScanDirectory(): string;
/**
* Runs the static code analysis tool
*
* @param scanDirectory - Optional override for the scan directory
* @returns Promise that resolves to the SARIF analysis results
*/
abstract run(scanDirectory?: string): Promise<Log>;
}