lighthouse
Version:
Automated auditing, performance metrics, and best practices for the web.
63 lines • 2.61 kB
TypeScript
export default OffscreenImages;
export type WasteResult = {
node: LH.Audit.Details.NodeValue;
url: string;
requestStartTime: number;
totalBytes: number;
wastedBytes: number;
wastedPercent: number;
};
/** @typedef {{node: LH.Audit.Details.NodeValue, url: string, requestStartTime: number, totalBytes: number, wastedBytes: number, wastedPercent: number}} WasteResult */
declare class OffscreenImages extends ByteEfficiencyAudit {
/**
* @param {{top: number, bottom: number, left: number, right: number}} imageRect
* @param {{innerWidth: number, innerHeight: number}} viewportDimensions
* @return {number}
*/
static computeVisiblePixels(imageRect: {
top: number;
bottom: number;
left: number;
right: number;
}, viewportDimensions: {
innerWidth: number;
innerHeight: number;
}): number;
/**
* @param {LH.Artifacts.ImageElement} image
* @param {{innerWidth: number, innerHeight: number}} viewportDimensions
* @param {Array<LH.Artifacts.NetworkRequest>} networkRecords
* @return {null|Error|WasteResult}
*/
static computeWaste(image: LH.Artifacts.ImageElement, viewportDimensions: {
innerWidth: number;
innerHeight: number;
}, networkRecords: Array<LH.Artifacts.NetworkRequest>): null | Error | WasteResult;
/**
* Filters out image requests that were requested after the last long task based on lantern timings.
*
* @param {WasteResult[]} images
* @param {LH.Artifacts.LanternMetric} lanternMetricData
*/
static filterLanternResults(images: WasteResult[], lanternMetricData: LH.Artifacts.LanternMetric): WasteResult[];
/**
* Filters out image requests that were requested after TTI.
*
* @param {WasteResult[]} images
* @param {number} interactiveTimestamp
*/
static filterObservedResults(images: WasteResult[], interactiveTimestamp: number): WasteResult[];
/**
* @param {LH.Artifacts} artifacts
* @param {Array<LH.Artifacts.NetworkRequest>} networkRecords
* @param {LH.Audit.Context} context
* @return {Promise<import('./byte-efficiency-audit.js').ByteEfficiencyProduct>}
*/
static audit_(artifacts: LH.Artifacts, networkRecords: Array<LH.Artifacts.NetworkRequest>, context: LH.Audit.Context): Promise<import("./byte-efficiency-audit.js").ByteEfficiencyProduct>;
}
export namespace UIStrings {
let title: string;
let description: string;
}
import { ByteEfficiencyAudit } from './byte-efficiency-audit.js';
//# sourceMappingURL=offscreen-images.d.ts.map