import { GameState, Pot } from "@pokertools/types"; /** * Calculate side pots using iterative subtraction method * * Algorithm: * 1. Combine all player investments (bets + total invested) * 2. Sort by investment amount (ascending) * 3. For each player from smallest to largest: * - Create pot = (player investment - previous) × remaining players * - Add player + all higher investors to eligible list * 4. Return pots array (main + sides) * * @param state Current game state * @returns Array of pots (main pot first, then side pots) */ export declare function calculateSidePots(state: GameState): Pot[]; /** * Calculate uncalled bet (when highest better has no callers) * * @param state Current game state * @returns Tuple of [uncalled amount, seat to return to] */ export declare function calculateUncalledBet(state: GameState): [number, number] | null; /** * Return uncalled bet to player */ export declare function returnUncalledBet(state: GameState): GameState; /** * Recalculate pots after street action completes * This is called before progressing to next street */ export declare function recalculatePots(state: GameState): GameState;