FreeCellTabletype
A game of FreeCell as it stands: the columns, the free cells and the foundations.
Import it
import type { FreeCellTable } from "@johnmorrisdotca/toranpu/freecell";
Definition
type FreeCellTable = {
tableau: readonly (readonly number[])[];
cells: readonly (number | null)[];
foundation: readonly number[];
};
Members
| Name | Type | Description |
|---|---|---|
tableau | readonly (readonly number[])[] | Eight columns, each its cards from the bottom up. Every card is face up. |
cells | readonly (number | null)[] | The free cells, one card or none each: four in the classic game, fewer to make it harder. |
foundation | readonly number[] | How many cards are home on each suit's foundation, in |
Examples
import { dealFreeCell } from "@johnmorrisdotca/toranpu/freecell";
import { dealOfSeed, deckOf } from "@johnmorrisdotca/toranpu/klondike";
import type { FreeCellTable } from "@johnmorrisdotca/toranpu/freecell";
const table = dealFreeCell(deckOf(dealOfSeed(42))!, 4);
const value: FreeCellTable = table;
console.log(value.cells.length);4What it prints (run when this page was built)