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>';
    }