export function formatMs(valor) {
    if (valor == null || Number.isNaN(valor))
        return '-';
    if (valor < 1)
        return `${valor.toFixed(2)}ms`;
    if (valor < 1000)
        return `${valor.toFixed(1)}ms`;
    const seconds = valor / 1000;
    if (seconds < 60)
        return `${seconds.toFixed(2)}s`;
    const minutes = Math.floor(seconds / 60);
    const remainingSeconds = seconds % 60;
    return `${minutes}m${remainingSeconds.toFixed(0)}s`;
}
export function formatPct(delta) {
    if (delta == null || !isFinite(delta))
        return '0.0%';
    const sign = delta > 0 ? '+' : '';
    return `${sign}${delta.toFixed(1)}%`;
}
export function formatCount(valor) {
    if (valor == null || Number.isNaN(valor))
        return '0';
    if (valor < 1000)
        return `${valor}`;
    if (valor < 1000000)
        return `${(valor / 1000).toFixed(1)}k`;
    return `${(valor / 1000000).toFixed(2)}M`;
}
export function formatDiff(arquivo, base) {
    if (arquivo == null || base == null)
        return '-';
    return `${formatMs(arquivo)} => ${formatMs(base)} (${formatPct((base - arquivo) / (arquivo || 1) * 100)})`;
}
export function calcPctVar(arquivo, base) {
    if (arquivo == null || base == null || arquivo === 0)
        return 0;
    return (base - arquivo) / arquivo * 100;
}
//# sourceMappingURL=format.js.map