code: protected function getDeleteCell(bool $showDeleteLink, ?string $primaryKeyValue): string 
      {
          if ($showDeleteLink && $this->deleteRoute == null) {
              throw new \Exception("Must have deleteRoute");
          }
          if ($showDeleteLink && $primaryKeyValue === null) {
              throw new \Exception("Must have primaryKeyValue to delete");
          }
      
          $cellValue = ($showDeleteLink) ? '<a href="'.$this->router->pathFor($this->deleteRoute, ["primaryKey" => $primaryKeyValue]).'" title="delete" onclick="return confirm(\'Are you sure you want to delete '.$primaryKeyValue.'?\');">X</a>' : '&nbsp;';
  
          return '<td>'.$cellValue.'</td>';
      }
docs: the delete column - either delete link or blank space