UNPKG

@seckav/security-sdk

Version:

SecKav Security SDK - Enterprise-grade security platform with AI-powered threat detection, LLM-powered misconfiguration scanning (Gemini/GPT-4/Claude), end-to-end encryption, behavioral analysis, enhanced file scanning, adaptive rate limiting, GDPR/DPDP/C

173 lines 4.96 kB
export interface ComplianceModuleConfig { apiUrl: string; timeout?: number; onError?: (error: any) => void; } export interface ComplianceReport { id: string; organizationId: string; reportType: 'gdpr' | 'dpdp' | 'cert_in'; status: 'pending' | 'completed' | 'failed'; overallScore: number; complianceStatus: 'compliant' | 'non_compliant' | 'partial'; generatedAt: Date; period: { startDate: Date; endDate: Date; }; requirements: Array<{ requirement: string; category: string; status: 'compliant' | 'non_compliant' | 'partial'; score: number; weight: number; details: string; evidence: string[]; }>; recommendations: Array<{ priority: 'high' | 'medium' | 'low'; category: string; title: string; description: string; impact: string; effort: string; }>; standards: string[]; } export interface ApiSecurityScan { id: string; organizationId: string; fileName: string; fileContent: string; scanType: 'openapi' | 'swagger'; status: 'pending' | 'completed' | 'failed'; overallScore: number; riskLevel: 'low' | 'medium' | 'high' | 'critical'; scanResults: { authenticationSecurity: any; inputValidation: any; dataExposure: any; securityVulnerabilities: any; rateLimiting: any; }; recommendations: Array<{ priority: 'high' | 'medium' | 'low'; category: string; issue: string; recommendation: string; impact: string; }>; createdAt: Date; updatedAt: Date; } export interface ComplianceDashboard { organizationId: string; overallCompliance: { score: number; status: 'compliant' | 'non_compliant' | 'partial'; trend: 'improving' | 'declining' | 'stable'; }; recentReports: ComplianceReport[]; complianceByStandard: Array<{ standard: string; score: number; status: string; lastAssessed: Date; }>; criticalIssues: Array<{ category: string; issue: string; impact: string; priority: string; }>; recommendations: Array<{ priority: string; title: string; description: string; category: string; }>; } /** * Compliance Module - GDPR, DPDP, and CERT-IN compliance reporting * Provides comprehensive compliance assessment and reporting capabilities */ export declare class ComplianceModule { private config; constructor(config: ComplianceModuleConfig); /** * Generate a new compliance report */ generateComplianceReport(token: string, reportType: 'gdpr' | 'dpdp' | 'cert_in', period: { startDate: Date; endDate: Date; }): Promise<ComplianceReport>; /** * Get compliance reports with filtering options */ getComplianceReports(token: string, options?: { reportType?: 'gdpr' | 'dpdp' | 'cert_in'; status?: 'pending' | 'completed' | 'failed'; page?: number; limit?: number; }): Promise<{ reports: ComplianceReport[]; pagination: { page: number; limit: number; total: number; pages: number; }; }>; /** * Get a specific compliance report by ID */ getComplianceReport(token: string, reportId: string): Promise<ComplianceReport>; /** * Get compliance dashboard data */ getComplianceDashboard(token: string): Promise<ComplianceDashboard>; /** * Scan OpenAPI/Swagger specification for security issues */ scanApiSpecification(token: string, file: { name: string; content: string; type: 'openapi' | 'swagger'; }): Promise<ApiSecurityScan>; /** * Get API security scans */ getApiSecurityScans(token: string, options?: { scanType?: 'openapi' | 'swagger'; status?: 'pending' | 'completed' | 'failed'; page?: number; limit?: number; }): Promise<{ scans: ApiSecurityScan[]; pagination: { page: number; limit: number; total: number; pages: number; }; }>; /** * Export compliance report in various formats */ exportComplianceReport(token: string, reportId: string, format?: 'pdf' | 'json' | 'csv'): Promise<{ downloadUrl: string; fileName: string; expiresAt: Date; }>; /** * Get compliance status for specific standards */ getComplianceStatus(token: string, standards: Array<'gdpr' | 'dpdp' | 'cert_in'>): Promise<Array<{ standard: string; status: 'compliant' | 'non_compliant' | 'partial' | 'pending'; score: number; lastAssessed: Date | null; nextAssessmentDue: Date | null; }>>; } //# sourceMappingURL=Compliance.d.ts.map