import { Change, Changes } from "./Changes";
import { Group } from "./Group";
import { SudokuNumber } from "./SudokuNumber";
export declare class Sudoku {
    numbers: SudokuNumber[];
    groups: Group[];
    constructor(numbers: number[]);
    get(row: number, col: number): SudokuNumber;
    private copy;
    allImmediatelyPossibleSteps(): Changes;
    allStepsUntilSolution(): Changes;
    apply(change: Change): void;
    solve(): void;
    solvedCount(): number;
    unsolvedCount(): number;
    isSolved(): boolean;
    canBeSolved(): boolean;
    isCorrect(): boolean;
    incorrectGroups(): Group[];
    toString(): string;
    toDetailedString(): string;
}
