<?php  namespace App\Services\Orders\InvoicesAndOffers;  use App\Models\Order; use Barryvdh\DomPDF\Facade\Pdf;  abstract class GeneralInvoiceMaker { 	private ?string $company_name = null; 	private ?string $company_address = null; 	private ?string $company_town = null; 	private ?string $company_zip_code = null;  	public function __construct(private Pdf $pdf){}  	public function loadView(Order $order): \Barryvdh\DomPDF\PDF{}  	abstract public function getMediaCollectionName(): string;  	abstract protected function getViewName(): string;{}