File: D:/HostingSpaces/SBogers10/shop.komma.nl/app/Addresses/AddressServiceInterface.php
<?php declare(strict_types=1);
namespace App\Addresses;
use App\Users\SiteUserInterface;
interface AddressServiceInterface
{
/**
* Uses the input to make and return an address model.
*
* @return AddressInterface
*/
public function getAddressFromInput(): AddressInterface;
/**
* Saves an address for a user if it does not exist already.
*
*
* @throws \InvalidArgumentException
*
* @param SiteUserInterface $user
* @param AddressInterface $address
*
* @return AddressInterface
*/
public function saveAddressForUser(AddressInterface $address, SiteUserInterface $user): AddressInterface;
/**
* @param AddressInterface $addressA
* @param AddressInterface $addressB
*
* @return bool
*/
public function addressesAreEqual(AddressInterface $addressA, AddressInterface $addressB): bool;
}