import { BaseAccessibilityTest, TestResult, TestContext } from '../base-test';
export interface CoreWebVitalsMetrics {
    lcp: number;
    fid: number;
    cls: number;
    fcp: number;
    tti: number;
    tbt: number;
    fmp: number;
    si: number;
}
export interface CoreWebVitalsResult {
    passed: boolean;
    count: number;
    errors: string[];
    warnings: string[];
    details?: Record<string, any>;
    metrics: CoreWebVitalsMetrics;
    score: number;
    recommendations: string[];
    budgetExceeded: boolean;
    duration?: number;
    url?: string;
    testName?: string;
    description?: string;
    error?: string;
}
export declare class CoreWebVitalsTest extends BaseAccessibilityTest {
    name: string;
    description: string;
    category: string;
    priority: string;
    standards: string[];
    private budget;
    constructor(budget?: Partial<CoreWebVitalsMetrics>);
    run(context: TestContext): Promise<TestResult>;
    private collectCoreWebVitals;
    private calculateScore;
    private checkBudget;
    private generateRecommendations;
    private generateDetails;
    private getStatus;
    private getDefaultMetrics;
    setBudget(budget: Partial<CoreWebVitalsMetrics>): void;
    getBudget(): Partial<CoreWebVitalsMetrics>;
}
//# sourceMappingURL=core-web-vitals-test.d.ts.map