import { MahjongTile } from "./mahjong-tile.js"; import { WaitType } from "./wait-type.js"; import { GameState } from "./game-state.js"; import { WinningTile } from "./winning-tile.js"; import { Limit, YakuListing } from "./yaku.js"; import { FuListing, TotalFuValue } from "../parsing/parse-fu.js"; import { StandardPair } from "./standard-pair.js"; import { StandardGroup } from "./standard-group.js"; import { SeatPayment } from "../utils/calculate-seat-payments.js"; export interface BaseHandInterpretation { winningTile: WinningTile; waitType: WaitType; gameState: GameState; yaku: YakuListing[]; fuList: FuListing[]; rawFu: number; fu: TotalFuValue; basicPoints: number; han: number; limit?: Limit; seatPayments: SeatPayment[]; totalWinnings: number; isTsumo?: boolean; dora: number; akadora: number; uradora: number; } export interface StandardHandInterpretation extends BaseHandInterpretation { isStandardHand: true; pair: StandardPair; groups: StandardGroup[]; } export interface NonStandardHandInterpretation extends BaseHandInterpretation { isStandardHand?: false; tiles: MahjongTile[]; } export type HandInterpretation = StandardHandInterpretation | NonStandardHandInterpretation; export interface HandInterpretationOptions { isStandardHand: boolean; pair?: StandardPair; groups?: StandardGroup[]; tiles?: MahjongTile[]; winningTile: WinningTile; waitType: WaitType; gameState: GameState; basicPoints?: number; isTsumo?: boolean; yaku?: YakuListing[]; fuList?: FuListing[]; rawFu?: number; fu?: TotalFuValue; han?: number; limit?: Limit; seatPayments?: SeatPayment[]; totalWinnings?: number; dora?: number; akadora?: number; uradora?: number; } export declare function createHandInterpretation(hio: HandInterpretationOptions): HandInterpretation; //# sourceMappingURL=hand-interpretation.d.ts.map