Files
dzinesco 8ed7ae95d1 feat: comprehensive project completion and documentation
- Enhanced event creation wizard with multi-step validation
- Added advanced QR scanning system with offline support
- Implemented comprehensive territory management features
- Expanded analytics with export functionality and KPIs
- Created complete design token system with theme switching
- Added 25+ Playwright test files for comprehensive coverage
- Implemented enterprise-grade permission system
- Enhanced component library with 80+ React components
- Added Firebase integration for deployment
- Completed Phase 3 development goals substantially

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-26 15:04:37 -06:00

90 lines
1.9 KiB
TypeScript

/// <reference types="@playwright/test" />
// Test-specific window extensions
declare global {
interface Window {
// Battery performance test properties
performanceMetrics?: {
startTime: number;
memoryUsage: Array<{
used: number;
total: number;
limit: number;
timestamp: number;
}>;
frameRates: Array<{
fps: number;
timestamp: number;
}>;
scanCounts: number;
errors: any[];
};
rapidScanMetrics?: {
processedScans: number;
droppedScans: number;
averageProcessingTime: number[];
};
rateLimitTesting?: {
warningsShown: number;
scansBlocked: number;
};
thermalTesting?: {
thermalState: string;
frameReductionActive: boolean;
performanceAdaptations: string[];
};
resourceMonitor?: {
cpuMetrics: Array<{
name: string;
duration: number;
timestamp: number;
}>;
renderMetrics: Array<{
frameDelta: number;
timestamp: number;
}>;
startTime: number;
};
leakDetector?: {
eventListeners: Map<string, number>;
intervals: Set<number>;
timeouts: Set<number>;
};
mediaStreamTracker?: {
createdStreams: number;
activeStreams: number;
cleanedUpStreams: number;
};
// Browser globals that may not be available in all contexts
gc?: () => void;
}
// Extend Performance interface for memory property (Chrome-specific)
interface Performance {
memory?: {
usedJSHeapSize: number;
totalJSHeapSize: number;
jsHeapSizeLimit: number;
};
}
// Extend Navigator interface for battery API
interface Navigator {
getBattery?: () => Promise<{
level: number;
charging: boolean;
chargingTime: number;
dischargingTime: number;
addEventListener?: (type: string, listener: EventListener) => void;
}>;
}
}
export {};