/** * Agentic QE v3 - Visual & Accessibility Domain Plugin * Integrates the visual & accessibility testing domain into the kernel */ import { DomainName, DomainEvent, Result } from '../../shared/types/index.js'; import { EventBus, MemoryBackend, AgentCoordinator } from '../../kernel/interfaces.js'; import { BaseDomainPlugin } from '../domain-interface.js'; import { Viewport, VisualTestReport, AccessibilityAuditReport, AccessibilityViolation, RemediationPlan, VisualTestingStatus, AccessibilityReport, ContrastAnalysis, WCAGValidationResult, KeyboardNavigationReport, Screenshot, CaptureOptions, AuditOptions } from './interfaces.js'; import { IVisualAccessibilityCoordinatorExtended, CoordinatorConfig } from './coordinator.js'; import { VisualTesterService, VisualTesterConfig } from './services/visual-tester.js'; import { AccessibilityTesterService, AccessibilityTesterConfig } from './services/accessibility-tester.js'; import { ResponsiveTesterService, ResponsiveTestConfig, ResponsiveTestResult, BreakpointAnalysis } from './services/responsive-tester.js'; /** * Plugin configuration options */ export interface VisualAccessibilityPluginConfig { coordinator?: Partial; visualTester?: Partial; accessibilityTester?: Partial; responsiveTester?: Partial; } /** * Extended API providing access to all domain capabilities */ export interface VisualAccessibilityAPI { runVisualTests(urls: string[], viewports: Viewport[]): Promise>; runAccessibilityAudit(urls: string[], level: 'A' | 'AA' | 'AAA'): Promise>; approveVisualChanges(diffIds: string[], reason: string): Promise>; generateRemediationPlan(violations: AccessibilityViolation[]): Promise>; getVisualTestingStatus(): Promise>; captureScreenshot(url: string, options?: CaptureOptions): Promise>; captureElement(url: string, selector: string, options?: CaptureOptions): Promise>; auditAccessibility(url: string, options?: AuditOptions): Promise>; checkContrast(url: string): Promise>; validateWCAGLevel(url: string, level: 'A' | 'AA' | 'AAA'): Promise>; checkKeyboardNavigation(url: string): Promise>; testResponsiveness(url: string, options?: Partial): Promise>; analyzeBreakpoints(url: string): Promise>; getCoordinator(): IVisualAccessibilityCoordinatorExtended; getVisualTester(): VisualTesterService; getAccessibilityTester(): AccessibilityTesterService; getResponsiveTester(): ResponsiveTesterService; } /** * Visual & Accessibility Domain Plugin * Provides visual regression, accessibility auditing, and responsive testing */ export declare class VisualAccessibilityPlugin extends BaseDomainPlugin { private readonly agentCoordinator; private coordinator; private visualTester; private accessibilityTester; private responsiveTester; private readonly pluginConfig; constructor(eventBus: EventBus, memory: MemoryBackend, agentCoordinator: AgentCoordinator, config?: VisualAccessibilityPluginConfig); get name(): DomainName; get version(): string; get dependencies(): DomainName[]; /** * Get the domain's public API */ getAPI(): T; protected onInitialize(): Promise; protected onDispose(): Promise; protected subscribeToEvents(): void; protected onEvent(event: DomainEvent): Promise; private runVisualTests; private runAccessibilityAudit; private approveVisualChanges; private generateRemediationPlan; private getVisualTestingStatus; private captureScreenshot; private captureElement; private auditAccessibility; private checkContrast; private validateWCAGLevel; private checkKeyboardNavigation; private testResponsiveness; private analyzeBreakpoints; private handleDeploymentCompleted; private handleFileChanged; private handleQualityGateTriggered; private ensureInitialized; private handleError; private trackSuccessfulTest; private trackFailedTest; } /** * Factory function to create a VisualAccessibilityPlugin */ export declare function createVisualAccessibilityPlugin(eventBus: EventBus, memory: MemoryBackend, agentCoordinator: AgentCoordinator, config?: VisualAccessibilityPluginConfig): VisualAccessibilityPlugin; //# sourceMappingURL=plugin.d.ts.map