UNPKG

supa-seed

Version:

A constraint-aware, framework-agnostic database seeding framework with deep PostgreSQL business logic discovery and MakerKit integration support

125 lines 3.51 kB
/** * RLS Compliance Validator * Validates and generates detailed RLS compliance reports */ import type { ComplianceEngineResult, ComplianceViolation } from './rls-compliance-engine'; export interface DetailedComplianceReport { timestamp: string; overallScore: number; tableReports: TableComplianceReport[]; summary: ComplianceSummary; recommendations: RecommendationCategory[]; trends?: ComplianceTrend[]; } export interface TableComplianceReport { table: string; score: number; status: 'compliant' | 'partial' | 'non_compliant'; policies: PolicyReport[]; violations: ComplianceViolation[]; lastChecked: string; } export interface PolicyReport { name: string; command: string; roles: string[]; expression: string; isSecure: boolean; issues: string[]; } export interface ComplianceSummary { totalTables: number; compliantTables: number; partiallyCompliantTables: number; nonCompliantTables: number; totalPolicies: number; securityScore: number; } export interface RecommendationCategory { category: 'security' | 'performance' | 'maintenance'; priority: 'high' | 'medium' | 'low'; recommendations: string[]; estimatedEffort: 'low' | 'medium' | 'high'; } export interface ComplianceTrend { date: string; score: number; tablesAnalyzed: number; violations: number; } export interface ComplianceValidationOptions { includeHistoricalTrends: boolean; generateRecommendations: boolean; detailedPolicyAnalysis: boolean; exportFormat: 'json' | 'markdown' | 'html'; } export declare class RLSComplianceValidator { private client; private validationHistory; constructor(client: any); /** * Generate detailed compliance report */ generateDetailedReport(engineResult: ComplianceEngineResult, options?: Partial<ComplianceValidationOptions>): Promise<DetailedComplianceReport>; /** * Generate individual table compliance reports */ private generateTableReports; /** * Get detailed policy reports for a table */ private getTablePolicyReports; /** * Check if a policy is considered secure */ private isPolicySecure; /** * Identify specific issues with a policy */ private identifyPolicyIssues; /** * Calculate compliance score for a table */ private calculateTableScore; /** * Determine compliance status from score */ private determineComplianceStatus; /** * Generate summary from engine result and table reports */ private generateSummary; /** * Generate categorized recommendations */ private generateRecommendations; /** * Get unique table names from violations */ private getUniqueTables; /** * Record compliance trend for historical tracking */ private recordComplianceTrend; /** * Get numeric score from compliance union type */ private getComplianceScore; /** * Get historical compliance trends */ private getHistoricalTrends; /** * Export report in different formats */ exportReport(report: DetailedComplianceReport, format?: 'json' | 'markdown' | 'html'): Promise<string>; /** * Generate markdown format report */ private generateMarkdownReport; /** * Generate HTML format report */ private generateHtmlReport; } //# sourceMappingURL=rls-compliance-validator.d.ts.map