]> git.codecow.com Git - nano-pow.git/commitdiff
Define type for result from stats function.
authorChris Duncan <chris@zoso.dev>
Mon, 16 Jun 2025 19:48:43 +0000 (12:48 -0700)
committerChris Duncan <chris@zoso.dev>
Mon, 16 Jun 2025 19:48:43 +0000 (12:48 -0700)
src/utils/index.ts

index 26b66b63bd1c6cf35dc331fe9c4aaa33b55804cd..38f3f86ee8e4bcd4d6ff78b37c64d54db5e55ef6 100644 (file)
@@ -9,8 +9,28 @@ export * from './queue'
 export const SEND = 0xfffffff800000000n
 export const RECEIVE: bigint = 0xfffffe0000000000n
 
-export function stats (times: number[]) {
-       if (times == null || times.length === 0) return {}
+type Averages = {
+       count: number,
+       total: number,
+       rate: number,
+       min: number,
+       max: number,
+       median: number,
+       arithmetic: number,
+       geometric: number,
+       harmonic: number,
+       truncatedCount: number,
+       truncatedTotal: number,
+       truncatedRate: number,
+       truncatedMin: number,
+       truncatedMax: number,
+       truncatedArithmetic: number,
+       truncatedGeometric: number,
+       truncatedHarmonic: number,
+}
+
+export function stats (times: number[]): Averages | null {
+       if (times == null || times.length === 0) return null
 
        const count = times.length
        const truncatedStart = Math.floor(count * 0.1)