import { CellCollection } from './CellCollection'; import { GridLocation, SudokuPossibleValue } from './ValueTypes'; import { Grid } from './Grid'; /** * Implements a class that represents a row, column and a block that intersect the given * cell in the given Grid. The cell at the given location must have a unique value in the * cells selected but a value can be represented more than once at any other location. */ export declare class IntersectingCells extends CellCollection { /** * Creates a new IntersectingCells object from the specified grid at the specified location. * @param grid A reference to the Grid to extract the IntersectingCells from. * @param location The location from which to get the row, column and block. * @returns An instance of an IntersectingCells object containing copies of the selected cells. */ static fromGridLocation(grid: Grid, location: GridLocation): IntersectingCells; /** * Instantiates a new IntersectigCells object from a CellCollection. * @param cells The cells to initialise the new collection from. * @returns A new IntersectingCells object. */ static fromCellCollection(cells: CellCollection): IntersectingCells; /** * Instantiates a new IntersectingCells object. * @param values An array of 81 Cells */ private constructor(); /** * Removes the values provided from the specified Cell and returns a new IntersectingCell * object with the updated values. * @param location The location at which to remove the potentials. * @param values The values to remove. * @returns A new IntersectingCells object with the updated values. */ removePotentials(location: GridLocation, values: SudokuPossibleValue[]): IntersectingCells; }