export interface FrameSample { timestamp: number; durationMs: number; fps: number; isJank: boolean; isFrozen: boolean; } export interface JankEvent { id: string; timestamp: number; timeStr: string; durationMs: number; fps: number; severity: 'moderate' | 'severe' | 'frozen'; } export interface MemoryStats { usedHeapMb: number; totalAllocMb: number; peakHeapMb: number; engine: string; isAvailable: boolean; gcCount?: number; gcTimeMs?: number; } export interface PercentileStats { p50Ms: number; p90Ms: number; p95Ms: number; p99Ms: number; } export interface BucketDistribution { ultraSmoothCount: number; smoothCount: number; degradedCount: number; stutteredCount: number; frozenCount: number; totalSamples: number; } export interface EngineDetails { engineName: string; isHermes: boolean; isFabric: boolean; isTurboModules: boolean; architectureName: string; gcCollections?: number; gcCpuTimeMs?: number; heapUsedMb: number; heapTotalMb: number; peakHeapMb: number; } export interface LivePerformanceData { fps: number; avgFps: number; minFps: number; maxFps: number; frameDurationMs: number; refreshRateHz: number; jankCount: number; frozenCount: number; jankPercent: number; apdexScore: number; apdexStatus: 'EXCELLENT' | 'GOOD' | 'FAIR' | 'POOR'; satisfiedCount: number; toleratingCount: number; frustratedCount: number; longTaskCount: number; percentiles: PercentileStats; budgetUsedPercent: number; budgetHeadroomMs: number; distribution: BucketDistribution; engineDetails: EngineDetails; jsEventLoopLagMs: number; avgJsLagMs: number; peakJsLagMs: number; healthScore: number; healthStatus: 'EXCELLENT' | 'GOOD' | 'FAIR' | 'POOR'; frameHistory: number[]; jsLagHistory: number[]; recentJanks: JankEvent[]; memory: MemoryStats; sessionDurationSec: number; isStressTesting: boolean; runJsStressTest: (durationMs?: number) => void; runRenderStressTest: () => void; triggerGC: () => void; resetStats: () => void; } export declare const usePerformanceMonitor: (active?: boolean) => LivePerformanceData;