<?php  namespace App\Services\Orders;  use App\Services\Orders\Shipping\ShippingReturnObject; use App\Services\Orders\Discounts\DiscountReturnObject;  class Order { 	private array $products = []; 	private int $numberOfProducts = 0; 	private ?ShippingReturnObject $shipping = null; 	private ?FinalTotals $totals = null; 	private array $discounts = [];  	public function __construct(FinalTotals $totals){}  	public function addProduct(OrderProduct $product): void{}  	public function total(OrderTotalCalc $orderTotalCalc): void{}  	public function getTotalWithDiscounts(): string{}  	public function getProducts(): array{}  	public function setShipping(?ShippingReturnObject $shipping): void{}  	public function setTotalWithShippingAdded(): void{}  	public function getTotalPrice(): string{}  	public function getNumberOfProducts(): int{}  	public function getTotalDiscounts(): string{}  	public function getShipping(): string{}  	public function getTotalNumberOfPackages(): int{}  	public function getTotalWithShippingAdded(): string{}  	public function getTotalTax(): string{}  	public function addAdditionalCostsToShippingPrice(int $amount): void{}  	public function round(string|int|float $amount): string{}  	public function addOrderWiseDiscount(DiscountReturnObject $discount): void{}  	public function getOrderWiseDiscounts(): array{}  	protected function totalOrderWiseDiscounts(): void{} }