import { GameState } from "@pokertools/types"; /** * Audit chip conservation * Formula: ∑(player.stack) + ∑(pot.amount) + ∑(currentBets) = initialChips * * @param state Current game state * @param initialChips Total chips that should be in the game * @throws CriticalStateError if chips don't match */ export declare function auditChipConservation(state: GameState, initialChips: number): void; /** * Calculate total chips in the game */ export declare function calculateTotalChips(state: GameState): number; /** * Calculate total chips in player stacks */ export declare function calculateStackTotal(state: GameState): number; /** * Calculate total chips in pots */ export declare function calculatePotTotal(state: GameState): number; /** * Calculate total chips in current bets */ export declare function calculateBetTotal(state: GameState): number; /** * Get initial chips (sum of all starting stacks) * This calculates total chips in the game, which should remain constant (minus rake). * * - During a hand: stack + totalInvestedThisHand (chips in play + chips invested) * - After hand complete: stack + rake (all chips have been distributed, rake removed) */ export declare function getInitialChips(state: GameState): number; /** * Validate game state integrity * Checks multiple invariants beyond just chip conservation */ export declare function validateGameStateIntegrity(state: GameState): void;