//! SPDX-FileCopyrightText: 2025 Chris Duncan <chris@codecow.com>
//! SPDX-License-Identifier: GPL-3.0-or-later
-import { work_generate, work_validate } from './lib'
import { NanoPowOptions, WorkErrorResponse, WorkGenerateResponse, WorkValidateResponse } from '#types'
+import { generate, validate } from './lib'
export class NanoPow {
/**
* @param {bigint} [options.difficulty=0xfffffff800000000] - Minimum value result of `BLAKE2b(nonce||blockhash)`. Default: 0xFFFFFFF800000000
*/
static async work_generate (hash: bigint | string, options: NanoPowOptions): Promise<WorkGenerateResponse | WorkErrorResponse> {
- return work_generate(hash, options)
+ return generate(hash, options)
}
/**
* @param {bigint} [options.difficulty=0xfffffff800000000] - Minimum value result of `BLAKE2b(nonce||blockhash)`. Default: 0xFFFFFFF800000000
*/
static async work_validate (work: bigint | string, hash: bigint | string, options: NanoPowOptions): Promise<WorkValidateResponse | WorkErrorResponse> {
- return work_validate(work, hash, options)
+ return validate(work, hash, options)
}
}
-export { NanoPow as default }
export { clearCache, stats } from '#utils'
+export { NanoPow as default }
+
//! SPDX-FileCopyrightText: 2025 Chris Duncan <chris@codecow.com>
//! SPDX-License-Identifier: GPL-3.0-or-later
-import { NanoPowValidate } from '#lib/validate'
+import { NanoPowConfig } from '#lib/config'
import { NanoPowCpu, NanoPowWasm, NanoPowWebgl, NanoPowWebgpu } from '#lib/generate'
+import { NanoPowValidate } from '#lib/validate'
import { WorkErrorResponse, WorkGenerateResponse, WorkValidateResponse } from '#types'
import { bigintFrom, Cache, Logger, Queue } from '#utils'
-import { NanoPowConfig } from '#lib/config'
const logger = new Logger()
const q = new Queue()
-export async function work_generate (hash: unknown, options?: unknown): Promise<WorkGenerateResponse | WorkErrorResponse> {
+export async function generate (hash: unknown, options?: unknown): Promise<WorkGenerateResponse | WorkErrorResponse> {
return q.add(async (): Promise<WorkGenerateResponse | WorkErrorResponse> => {
try {
const { api, debug, difficulty, effort } = await NanoPowConfig(options)
})
}
-export async function work_validate (work: unknown, hash: unknown, options?: unknown): Promise<WorkValidateResponse | WorkErrorResponse> {
+export async function validate (work: unknown, hash: unknown, options?: unknown): Promise<WorkValidateResponse | WorkErrorResponse> {
try {
const bigintHash = bigintFrom(hash, 'hex')
const bigintWork = bigintFrom(work, 'hex')