import { useFPSMonitor } from './useFPSMonitor'; import { useRenderProfiler } from './useRenderProfiler'; import { useMemoryMonitor } from './useMemoryMonitor'; import type { BenchmarkResult, ScenarioMetrics, BaselineData, ComparisonResult, BenchmarkScenario } from '../types'; export interface UseBenchmarkComparisonConfig { /** Scenario being tested */ scenario: BenchmarkScenario | string; /** Number of items in the list */ itemCount: number; /** Baseline data for comparison (optional) */ baseline?: BaselineData | null; /** Profiler ID for render tracking */ profilerId?: string; } export interface UseBenchmarkComparisonResult { /** FPS monitor instance */ fpsMonitor: ReturnType; /** Render profiler instance */ renderProfiler: ReturnType; /** Memory monitor instance */ memoryMonitor: ReturnType; /** Start all monitoring */ start: () => void; /** Stop all monitoring */ stop: () => void; /** Reset all metrics */ reset: () => void; /** Get combined benchmark result */ getResult: () => BenchmarkResult; /** Get metrics in ScenarioMetrics format */ getMetrics: () => ScenarioMetrics; /** Compare with baseline (if provided) */ compareWithBaseline: () => ComparisonResult | null; /** Compare with vanilla FlashList (if baseline contains comparison data) */ compareWithVanilla: () => ComparisonResult | null; /** Get formatted markdown report */ getMarkdownReport: () => string | null; /** Whether benchmark is currently running */ isRunning: boolean; } /** * Hook that combines all performance monitors with baseline comparison */ export declare function useBenchmarkComparison(config: UseBenchmarkComparisonConfig): UseBenchmarkComparisonResult; //# sourceMappingURL=useBenchmarkComparison.d.ts.map