Skip to main content

exactHuEquityVsRandomHandAsync

Same as exactHuEquityVsRandomHand: board empty (preflop) or 3–5 cards.

exactHuEquityVsRandomHandAsync(heroHoleCards: CardInput, boardCards: CardInput, options?: AsyncOptions): Promise<number>

Import

const poker = require('poker-calculations');

ESM (Node):

import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const poker = require('poker-calculations');

When to use

Non-blocking exact HU equity (preflop or board 3–5 cards) when enumeration would block the main thread. Optional AsyncOptions cancel via AbortSignal. Board rules match the sync export.

How to use

const poker = require('poker-calculations');

const eq = await poker.exactHuEquityVsRandomHandAsync(['Ah', 'Kd'], ['Qh', 'Jc', '2s']);

const ac = new AbortController();
const pending = poker.exactHuEquityVsRandomHandAsync(['Ah', 'Kd'], ['Qh', 'Jc', '2s'], {
signal: ac.signal,
});
// ac.abort(); // Promise rejects with AbortError

See also

exactHuEquityVsRandomHand · AsyncOptions