import * as crypto from 'node:crypto'; import type * as TTslint from 'tslint'; import type * as TTypescript from 'typescript'; import type { ITerminal } from '@rushstack/terminal'; import type { HeftConfiguration } from '@rushstack/heft'; import { LinterBase, type ILinterBaseOptions } from './LinterBase'; interface ITslintOptions extends ILinterBaseOptions { tslintPackage: typeof TTslint; tslintConfiguration: TTslint.Configuration.IConfigurationFile; } export declare class Tslint extends LinterBase { private readonly _tslintPackage; private readonly _tslintConfiguration; private readonly _linter; private readonly _enabledRules; private readonly _ruleSeverityMap; constructor(options: ITslintOptions); static initializeAsync(options: ILinterBaseOptions): Promise; static resolveTslintConfigFilePathAsync(heftConfiguration: HeftConfiguration): Promise; /** * Returns the sha1 hash of the contents of the config file at the provided path and the * the configs files that the referenced file extends. * * @param previousHash - If supplied, the hash is updated with the contents of the * file's extended configs and itself before being returned. Passing a digested hash to * this parameter will result in an error. */ static getConfigHashAsync(configFilePath: string, terminal: ITerminal, previousHash?: crypto.Hash): Promise; printVersionHeader(): void; protected getCacheVersionAsync(): Promise; protected lintFileAsync(sourceFile: TTypescript.SourceFile): Promise; protected lintingFinishedAsync(failures: TTslint.RuleFailure[]): Promise; protected isFileExcludedAsync(filePath: string): Promise; protected hasLintFailures(lintResults: TTslint.RuleFailure[]): boolean; private _getLintFileError; } export {}; //# sourceMappingURL=Tslint.d.ts.map