import { DominoValue } from '../game/DominoValue'; /** * Canonical, order-independent key for a tile. `6-3` and `3-6` are the same * physical domino, so they share a key. Used to enforce tile uniqueness. */ export declare function tileKey(value1: number, value2: number): string; export declare function dominoKey(tile: DominoValue): string; export declare function isDouble(tile: DominoValue): boolean; export declare function tileHasValue(tile: DominoValue, value: number): boolean; /** The pip value on the opposite end from `value`, or null if it doesn't touch. */ export declare function otherEnd(tile: DominoValue, value: number): number | null; /** * Orients a tile so its `value1` is the end that connects to `connectingValue`. * Returns null if the tile has no such end. */ export declare function orientForConnection(tile: DominoValue, connectingValue: number): DominoValue | null; /** Every unique tile in a double-`maxPips` set (e.g. maxPips=12 → 91 tiles). */ export declare function generateDominoSet(maxPips: number): DominoValue[]; /** Count of tiles in a double-`maxPips` set: (n+1)(n+2)/2 where n = maxPips. */ export declare function dominoSetSize(maxPips: number): number;