function normalizeRow(row, rowIndex) {
  if (!this._cellClaim) this._cellClaim = new Set();

  let colIndex = 0;
  return row.map((cell) => {
    // Ensure TableCell
    if (cell == null || typeof cell !== 'object') cell = { text: cell };

    // Find the starting column of the cell
    // Skipping over the claimed cells
    while (this._cellClaim.has(`${rowIndex},${colIndex}`)) {
      colIndex++;
    }

    cell = normalizeCell.call(this, cell, rowIndex, colIndex);

    // Claim any spanning cells
    for (let i = 0; i < cell.rowSpan; i++) {
      for (let j = 0; j < cell.colSpan; j++) {
        this._cellClaim.add(`${rowIndex + i},${colIndex + j}`);
      }
    }

    colIndex += cell.colSpan;
    return cell;
  });
}
Normalize a row

@this PDFTable
@memberOf PDFTable
@param {TableCell[]} row
@param {number} rowIndex
@returns {NormalizedTableCellStyle[]}
@private