HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/shop.komma.nl/app/Addresses/AddressInterface.php
<?php declare(strict_types=1);

namespace App\Addresses;


use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;

/**
 * Interface Address
 *
 * @package App\Users\Models
 * @property int                                                                             $id
 * @property string                                                                          $first_name
 * @property string                                                                          $last_name_prefix
 * @property string                                                                          $last_name
 * @property string                                                                          $street
 * @property string                                                                          $house_number
 * @property string                                                                          $postal_code
 * @property string                                                                          $city
 * @property string                                                                          $country_iso3
 * @property int                                                                             $site_user_id
 * @property \Illuminate\Support\Carbon|null                                                 $created_at
 * @property \Illuminate\Support\Carbon|null                                                 $updated_at
 * @mixin Model
 */
interface AddressInterface
{
    /**
     * Accessor method. Is triggered when you do this: Address->country
     *
     * @return string
     */
    public function getCountryAttribute();

    /**
     * Returns all site users which have this address as their account address
     * This method uses account_address_id on the site_users table
     *
     * @return HasMany
     */
    public function accountAddressSiteUsers(): HasMany;

    /**
     * @return BelongsTo
     */
    public function siteUser(): BelongsTo;

    /**
     * @return HasMany
     */
    public function shippingAddressSiteUsers(): HasMany;

    /**
     * @return HasMany
     */
    public function invoiceAddressSiteUsers(): HasMany;
}