import type { LocalScanResult } from '../integrations/local-scanner.js'; export interface SARIFRule { id: string; name: string; shortDescription: { text: string; }; fullDescription?: { text: string; }; helpUri?: string; defaultConfiguration?: { level: 'none' | 'note' | 'warning' | 'error'; }; properties?: { tags?: string[]; precision?: string; 'security-severity'?: string; }; } export interface SARIFResult { ruleId: string; level: 'none' | 'note' | 'warning' | 'error'; message: { text: string; }; locations?: Array<{ physicalLocation: { artifactLocation: { uri: string; uriBaseId?: string; }; region?: { startLine: number; startColumn?: number; endLine?: number; endColumn?: number; }; }; }>; fixes?: Array<{ description: { text: string; }; }>; properties?: Record; } export interface SARIFRun { tool: { driver: { name: string; informationUri: string; version: string; rules: SARIFRule[]; }; }; results: SARIFResult[]; invocations?: Array<{ executionSuccessful: boolean; endTimeUtc?: string; }>; } export interface SARIFReport { $schema: string; version: '2.1.0'; runs: SARIFRun[]; } export declare function toSARIF(result: LocalScanResult, targetPath?: string): SARIFReport; export declare function toJUnit(result: LocalScanResult): string; export interface GitLabVulnerability { id: string; category: string; name: string; message: string; description: string; severity: 'Critical' | 'High' | 'Medium' | 'Low' | 'Info' | 'Unknown'; confidence?: 'High' | 'Medium' | 'Low' | 'Unknown'; scanner: { id: string; name: string; }; location: { file?: string; start_line?: number; end_line?: number; dependency?: { package: { name: string; }; version: string; }; }; identifiers: Array<{ type: string; name: string; value: string; url?: string; }>; solution?: string; } export interface GitLabSecurityReport { version: string; vulnerabilities: GitLabVulnerability[]; scan: { analyzer: { id: string; name: string; version: string; vendor: { name: string; }; }; scanner: { id: string; name: string; version: string; vendor: { name: string; }; }; type: string; start_time: string; end_time: string; status: 'success' | 'failure'; }; } export declare function toGitLabReport(result: LocalScanResult, reportType: 'sast' | 'dependency_scanning' | 'secret_detection'): GitLabSecurityReport; export interface JSONSummary { scan: { path: string; timestamp: string; duration?: number; tools: string[]; languages: string[]; }; summary: { total: number; critical: number; high: number; medium: number; low: number; }; findings: { secrets: number; vulnerabilities: number; sast: number; iac: number; dockerfile: number; }; exitCode: number; } export declare function toJSONSummary(result: LocalScanResult): JSONSummary;