```ts
export function cellCount(grid: number[][], value: number): number {
  if (!Array.isArray(grid) || !grid.every(row => Array.isArray(row))) {
    throw new Error('Invalid input: grid must be an array of arrays');
  }

  return grid.reduce((count, row) => count + row.filter(cell => cell === value).length, 0);
}
```