Para tu caso específico en mycustomergridpro.php y la adaptación a PHP 8.2 con Symfony, el getContent() en sí mismo es más sobre la interfaz de configuración del módulo. El fragmento que compartiste es solo la parte de carga de CSS/JS para la configuración. Para que este getContent() sea compatible con las strict types de PHP 8.2, deberías tipar la función, y de paso, añadir una comprobación más robusta del controlador:
public function getContent(): string
{
if ($this->context->controller instanceof \AdminController) {
$this->context->controller->addCSS($this->_path . 'views/css/customer_grid_admin.css');
$this->context->controller->addJS($this->_path . 'views/js/customer_grid_admin.js');
}
$output = '';
$activeTab = $this->getActiveConfigurationTab();
He añadido public y el tipo de retorno string, y una comprobación de instancia de AdminController. Si el problema de las llamadas duplicadas a la API en actualizaciones de cliente persiste, te sugiero que consideres una solución para customer grid – columnas dedicada, ya que te ofrecerá una gestión más robusta y sin los dolores de cabeza de las sobreescrituras manuales o hacks que pueden romperse con las actualizaciones.