Files
2026-06-07 01:12:10 +07:00

25 lines
763 B
C#

using System.Collections.Generic;
namespace Minesweeper.Core
{
public interface IBoardService
{
int Width { get; }
int Height { get; }
int MinesCount { get; }
bool IsGenerated { get; }
int OpenedSafeCellsCount { get; }
int FlaggedCellsCount { get; }
int SafeCellsCount { get; }
IReadOnlyList<BoardCellData> LastChangedCells { get; }
void InitializeEmptyBoard();
bool GenerateAfterFirstClick(int safeX, int safeY);
BoardActionResult OpenCell(int x, int y);
BoardActionResult ToggleFlag(int x, int y);
bool IsInside(int x, int y);
bool TryGetCell(int x, int y, out BoardCellData cell);
IReadOnlyList<BoardCellData> GetCells();
}
}