UNPKG

n8n-nodes-pdf-accessibility

Version:

AI-powered PDF accessibility automation for N8N - comprehensive WCAG compliance analysis, intelligent remediation, and professional audit reporting with 5 integrated accessibility tools

108 lines (107 loc) 3.36 kB
import { ToolExecutionResult, AccessibilityIssue, AccessibilityFix } from '../tools/AccessibilityToolsManager'; export interface AccessibilityAuditReport { executive_summary: { document_name: string; audit_date: string; wcag_level: string; overall_score: number; total_issues: number; total_fixes: number; compliance_status: 'compliant' | 'partial' | 'non_compliant'; }; document_analysis: { file_info: { name: string; size: number; pages: number; language: string; }; content_analysis: { has_images: boolean; has_tables: boolean; has_links: boolean; text_length: number; }; }; accessibility_findings: { issues_by_severity: { critical: AccessibilityIssue[]; high: AccessibilityIssue[]; medium: AccessibilityIssue[]; low: AccessibilityIssue[]; }; wcag_compliance: { level_a: { total: number; passed: number; failed: number; }; level_aa: { total: number; passed: number; failed: number; }; level_aaa: { total: number; passed: number; failed: number; }; }; }; improvements_applied: { fixes_by_type: Record<string, AccessibilityFix[]>; before_after_comparison: { before_score: number; after_score: number; improvement_percentage: number; }; }; tool_execution_details: ToolExecutionResult[]; recommendations: { immediate_actions: string[]; long_term_improvements: string[]; best_practices: string[]; }; export_formats: { json: string; html: string; markdown: string; csv: string; }; } export declare class AdvancedReportingEngine { /** * Generate comprehensive accessibility audit report */ static generateAuditReport(toolResults: ToolExecutionResult[], documentInfo: any, wcagLevel: string, beforeScore: number, afterScore: number): AccessibilityAuditReport; /** * Generate visual diff representation of changes */ static generateVisualDiff(beforeData: any, _afterData: any): { summary: string; changes: Array<{ category: string; before: string; after: string; improvement_type: string; }>; metrics: { total_changes: number; accessibility_improvements: number; wcag_criteria_addressed: string[]; }; }; /** * Export report in multiple formats */ static exportReport(report: AccessibilityAuditReport, format: 'json' | 'html' | 'markdown' | 'csv'): string; private static groupIssuesBySeverity; private static groupFixesByType; private static calculateWCAGCompliance; private static determineComplianceStatus; private static generateRecommendations; private static generateExportFormats; private static generateHTMLReport; private static generateMarkdownReport; private static generateCSVReport; }