import { AuditConfig } from './auditor/configs/types'; import { BrowserConfig } from './browser/types'; import { ReporterConfig } from './reporter/types'; export declare type SyntheticPerformanceConfig = { urls: Record; budgets?: SyntheticPerformanceBudget[]; auditConfig?: AuditConfig; browserConfig?: BrowserConfig; reporterConfig?: ReporterConfig; numberOfAuditRuns?: number; skipBuildProject?: boolean; skipStartProject?: boolean; startProjectCommand?: string; startProjectTimeout?: number; buildProjectCommand?: string; buildProjectTimeout?: number; authenticationScriptPath?: string; commandExecutionContextPath?: string; startProjectCompleteStringPattern?: string; buildProjectCompleteStringPattern?: string; clearReportFilesDirectoryBeforeAudit?: boolean; }; export declare enum SyntheticPerformanceMetrics { speedIndex = "speed-index", firstPaint = "first-paint", firstCpuIdle = "first-cpu-idle", resourceSizes = "resource-sizes", timeToInteractive = "interactive", maxPotentialFid = "max-potential-fid", resourceRequests = "resource-requests", lighthouseScores = "lighthouse-scores", totalBlockingTime = "total-blocking-time", firstMeaningfulPaint = "first-meaningful-paint", firstContentfulPaint = "first-contentful-paint", estimatedInputLatency = "estimated-input-latency", largestContentfulPaint = "largest-contentful-paint" } export declare enum ResourceTypes { font = "font", total = "total", image = "image", media = "media", other = "other", script = "script", document = "document", stylesheet = "stylesheet", thirdParty = "third-party" } export declare enum DeviceTypes { mobile = "mobile", desktop = "desktop" } export declare enum MetricValueTypes { target = "target", current = "current" } export declare type SyntheticPerformanceBudget = { url: string; [SyntheticPerformanceMetrics.speedIndex]: Record>; [SyntheticPerformanceMetrics.firstPaint]: Record>; [SyntheticPerformanceMetrics.firstCpuIdle]: Record>; [SyntheticPerformanceMetrics.resourceSizes]: Record>>; [SyntheticPerformanceMetrics.resourceRequests]: Record>>; [SyntheticPerformanceMetrics.lighthouseScores]: Record>>; [SyntheticPerformanceMetrics.maxPotentialFid]: Record>; [SyntheticPerformanceMetrics.totalBlockingTime]: Record>; [SyntheticPerformanceMetrics.timeToInteractive]: Record>; [SyntheticPerformanceMetrics.firstMeaningfulPaint]: Record>; [SyntheticPerformanceMetrics.firstContentfulPaint]: Record>; [SyntheticPerformanceMetrics.estimatedInputLatency]: Record>; [SyntheticPerformanceMetrics.largestContentfulPaint]: Record>; }; export declare type StopProcessCallbackQueue = Array<() => Promise>; declare enum LighthouseCategories { seo = "seo", pwa = "pwa", performance = "performance", accessibility = "accessibility", bestPractices = "best-practices" } export {};