UNPKG

@irvanster/react-crossword-x

Version:

forked version from @JaredReisinger/react-crossword, A flexible, responsive, and easy-to-use crossword component for React apps

32 lines (31 loc) 1.56 kB
import type { AnswerTuple, CellData, CluesData, CluesInput, Direction, GridData } from './types'; interface RowColMax { row: number; col: number; } export declare const bothDirections: Direction[]; export declare function isAcross(direction: Direction): boolean; export declare function otherDirection(direction: Direction): "across" | "down"; export declare function calculateExtents(data: CluesInput, direction: Direction): RowColMax; export declare function createEmptyGrid(rows: number, cols: number): GridData; export declare function fillClues(gridData: GridData, clues: CluesData, data: CluesInput, direction: Direction): void; export declare function createGridData(data: CluesInput, allowNonSquare?: boolean): { rows: number; cols: number; gridData: GridData; clues: CluesData; }; interface HasNumber { number: string; } export declare function byNumber(a: HasNumber, b: HasNumber): number; export type GuessData = ({ guess?: string; } | CellData)[][]; export declare function clearGuesses(storageKey: string): void; export declare function saveGuesses(gridData: GuessData, storageKey: string): void; export declare function serializeGuesses(gridData: GuessData): Record<string, string>; export declare function loadGuesses(gridData: GuessData, storageKey: string): void; export declare function deserializeGuesses(gridData: GuessData, guesses: Record<string, string>): void; export declare function findCorrectAnswers(data: CluesInput, gridData: GuessData): AnswerTuple[]; export {};