declare type FileSizes = {
    [file: string]: number;
};
/** JS: prioritize entry HTML, but also show total */
interface JSOutput {
    /** breakdown of JS per-file */
    js: FileSizes;
    /** weight of index.html */
    entryHTML?: number;
    /** total bytes of [js], added for convenience */
    total: number;
}
/** HTML: total isn’t important, because those are broken up requests. However, surface any anomalies / bloated HTML */
interface HTMLOutput {
    /** breakdown of HTML per-file */
    html: FileSizes;
    /** biggest HTML file */
    maxSize: number;
}
/** get total HTML size */
export declare function profileHTML({ cwd }: {
    cwd: URL;
}): Promise<HTMLOutput>;
/** get total JS size (note: .wasm counts as JS!) */
export declare function profileJS({ cwd, entryHTML }: {
    cwd: URL;
    entryHTML?: URL;
}): Promise<JSOutput>;
/** b -> kB */
export declare function kb(bytes: number): string;
export {};
