import { LintingResult } from '../../domain/LintingResult.js';
export interface SarifFormatOptions {
    /** Tool driver version. Defaults to the version in package.json. */
    toolVersion?: string | undefined;
    /** Tool driver informationUri. Defaults to the package.json homepage. */
    informationUri?: string | undefined;
}
/**
 * Convert a cclint {@link LintingResult} into a SARIF 2.1.0 document.
 *
 * Output is deterministic: rules are sorted by id and results preserve the
 * (already deterministic) violation order, so snapshot tests are reliable.
 */
export declare function formatSarifResult(result: LintingResult, options?: SarifFormatOptions): string;
/**
 * Convert one or more cclint {@link LintingResult}s into a single SARIF 2.1.0
 * document. SARIF represents multiple files natively — each result carries its
 * own artifact URI — so this is how project-wide (`cclint lint <dir>`) output
 * is emitted. The single-file {@link formatSarifResult} is a one-element case
 * of this and produces byte-identical output.
 *
 * Output is deterministic: rule descriptors are sorted by id and results
 * preserve file order then per-file violation order.
 */
export declare function formatSarifResults(results: readonly LintingResult[], options?: SarifFormatOptions): string;
//# sourceMappingURL=sarifFormatter.d.ts.map