export interface SarifReport { $schema?: string; version: string; runs: SarifRun[]; } export interface SarifRun { tool: SarifTool; results: SarifResult[]; artifacts?: SarifArtifact[]; } export interface SarifTool { driver: SarifToolComponent; extensions?: SarifToolComponent[]; } export interface SarifToolComponent { name: string; version?: string; informationUri?: string; } export interface SarifResult { ruleId: string; level: 'error' | 'warning' | 'info' | 'note' | 'none'; message: SarifMessage; locations: SarifLocation[]; rule?: SarifReportingDescriptor; } export interface SarifMessage { text: string; markdown?: string; } export interface SarifLocation { physicalLocation: SarifPhysicalLocation; logicalLocations?: SarifLogicalLocation[]; } export interface SarifPhysicalLocation { artifactLocation: SarifArtifactLocation; region: SarifRegion; contextRegion?: SarifRegion; } export interface SarifArtifactLocation { uri: string; uriBaseId?: string; index?: number; } export interface SarifRegion { startLine: number; startColumn?: number; endLine?: number; endColumn?: number; charOffset?: number; charLength?: number; snippet?: SarifArtifactContent; } export interface SarifArtifactContent { text?: string; binary?: string; rendered?: SarifMultiformatMessageString; } export interface SarifMultiformatMessageString { text: string; markdown?: string; } export interface SarifLogicalLocation { fullyQualifiedName?: string; name?: string; index?: number; kind?: string; } export interface SarifReportingDescriptor { id: string; name?: string; shortDescription?: SarifMultiformatMessageString; fullDescription?: SarifMultiformatMessageString; helpUri?: string; help?: SarifMultiformatMessageString; } export interface SarifArtifact { location: SarifArtifactLocation; length?: number; roles?: string[]; mimeType?: string; contents?: SarifArtifactContent; encoding?: string; sourceLanguage?: string; } export interface Violation { ruleId: string; level: 'error' | 'warning' | 'info' | 'note' | 'none'; message: string; line: number; column: number; endLine?: number; endColumn?: number; fileUri: string; snippet?: string; artifactIndex?: number; } export interface FileViolations { [fileUri: string]: Violation[]; } export interface SarifData { files: string[]; fileViolations: FileViolations; totalViolations: number; statistics: { errorCount: number; warningCount: number; infoCount: number; noteCount: number; noneCount: number; averageViolationsPerFile: number; mostCommonRules: [string, number][]; filesWithMostViolations: [string, number][]; totalFiles: number; totalViolations: number; }; } //# sourceMappingURL=sarif.d.ts.map