import { MaliciousPattern, SeverityLevel, ThreatCategory } from "./patterns.js"; export interface ThreatDetection { patternId: string; category: ThreatCategory; severity: SeverityLevel; lineNumber: number; columnNumber: number; description: string; evidence: string; remediation?: string; } export interface SecurityReport { skillId?: string; fileName?: string; timestamp: string; safetyScore: number; riskLevel: "SAFE" | "LOW_RISK" | "MEDIUM_RISK" | "HIGH_RISK" | "CRITICAL"; totalThreatsFound: number; threatBreakdown: Record; severityBreakdown: Record; threats: ThreatDetection[]; summary: string; overallStatus: "APPROVED" | "REVIEW_REQUIRED" | "BLOCKED"; } export interface ScanOptions { maxSeverity?: SeverityLevel; categories?: ThreatCategory[]; skipPatterns?: string[]; customPatterns?: MaliciousPattern[]; verbose?: boolean; } export declare class SkillGuard { private customPatterns; private patterns; constructor(customPatterns?: MaliciousPattern[]); scanSkill(skillContent: string, skillId?: string, options?: ScanOptions): Promise; scanFile(filePath: string, options?: ScanOptions): Promise; scanClawHubSkill(skillId: string, options?: ScanOptions): Promise; private generateReport; private generateSummary; private getSeverityScore; addCustomPattern(pattern: MaliciousPattern): void; removePattern(patternId: string): boolean; getPatterns(): MaliciousPattern[]; printReport(report: SecurityReport): void; private getSeverityColor; private resetColor; } export declare function scanSkill(skillContent: string, skillId?: string, options?: ScanOptions): Promise; export declare function scanFile(filePath: string, options?: ScanOptions): Promise; export declare function quickScan(skillContent: string): Promise<{ isSafe: boolean; threatCount: number; criticalThreats: number; }>; export default SkillGuard; //# sourceMappingURL=index.d.ts.map